544|3

530

帖子

4

TA的资源

一粒金砂(高级)

楼主
 

【DigiKey创意大赛】石头剪刀布之AI时代+No3.数据采集、数据标注以及训练初探 [复制链接]

 

数据采集:

通过树莓派,采集数据,参考了:https://blog.csdn.net/black_sneak/article/details/131374492 部分内容,适配最新的树莓派bookworm 64bit-OS;

如果跑AI, 建议下载64bit OS,  新手不建议下载最新的OS, 教程都是用的老的OS, 这里躺了很多坑,但是部署上还是有些问题,因此 后续可能要采用bullseye 64bit-OS;

#!/usr/bin/python3

from picamera2 import Picamera2
import cv2
from threading import Thread
import uuid
import os
import time
count = 0
def image_collect(picam2):
    global count
    while True:
        img = picam2.capture_array()
        file_name = str(uuid.uuid4())+'.jpg'
        cv2.imwrite(os.path.join('images',file_name),img)
        count = count+1
        print("save %d %s"%(count,file_name))
        time.sleep(0.4)
 
if __name__ == "__main__":
    
    os.makedirs("images",exist_ok=True)
    
    # 打开摄像头
    #cap = cv2.VideoCapture(0)
    tuning=Picamera2.load_tuning_file("imx219_noir.json")
    picam2 = Picamera2(tuning=tuning)
    #picam2.set_controls
    picam2.configure(picam2.create_preview_configuration(main={"format": 'XRGB8888', "size": (640, 480)}))
    picam2.start()
 
    m_thread = Thread(target=image_collect, args=([picam2]),daemon=True)
    
    while True:
 
        # 读取一帧图像
 
        #success, img = cap.read()
        img = picam2.capture_array()
 
        cv2.imshow("video",img)
 
        key =  cv2.waitKey(1) & 0xFF   
 
        # 按键 "q" 退出
        if key ==  ord('c'):
            m_thread.start()
            continue
        elif key ==  ord('q'):
            break

    picam2.stop()        
    #cap.release()

 

数据标注:

有手动标注,有自动标注;

手动标注:可使用labelmee软件;

自动标注:Auto LabelImg

链接已隐藏,如需查看请登录或者注册

 

数据训练初探:
因为yolo算法有很多种类,目前尚未确定使用哪种算法,因此首先使用

链接已隐藏,如需查看请登录或者注册
 进行training, 

有很多环境的问题需要解决,因为楼主采用了比较高的python版本。

经过了一系列摸索,终于探究明白,该如何配置环境:

0.如果电脑有NV卡,可去下载cuda,具体安装可搜索网上;Pythorch: https://pytorch.org/get-started/locally/ (这一步不需要) ,cuda下载: https://developer.nvidia.com/cuda-toolkit-archive

1. win环境或者linux下,下载https://www.anaconda.com/download, 配合社区版本pycharm,

2. 在anaconda下创建环境,这个环境用来跑training, python尽量选择符合你选择的AI算法的版本,不要太高.

3. 下载pycharm社区版,创建project, 选择

链接已隐藏,如需查看请登录或者注册
的gitclone目录, 然后选择interpretor, 选择到anaconda刚刚创建的环境;

4. 安装依赖 pip install -r requirements.txt

以下为例子:

Python>=3.6.0 is required with all requirements.txt installed including PyTorch>=1.7:

$ git clone https://github.com/ppogg/YOLOv5-Lite
$ cd YOLOv5-Lite
$ pip install -r requirements.txt

 

 

  pycharm:  

训练成果:

 

 

 

 

PC端训练基本上能跑了,训练应该还有一些坑需要探究,怎么部署还在研究中,感觉东西很多,比较难搞,PI OS用的比较新,下一步尝试用上一版 OS, 看看问题会不会少一些吧

最新回复

需要看芯片的算力吧~   详情 回复 发表于 2023-12-12 16:00
点赞 关注
 
 

回复
举报

6773

帖子

2

TA的资源

版主

沙发
 

石头剪刀布感觉识别还是挺容易的,识别速率怎么样?

点评

还没搞好呢,部署还没搞明白 哈哈,yolo v2 fastest号称可以达到30fps  详情 回复 发表于 2023-12-12 15:35
 
 
 

回复

530

帖子

4

TA的资源

一粒金砂(高级)

板凳
 
wangerxian 发表于 2023-12-12 15:26 石头剪刀布感觉识别还是挺容易的,识别速率怎么样?

还没搞好呢,部署还没搞明白 哈哈,yolo v2 fastest号称可以达到30fps

点评

需要看芯片的算力吧~  详情 回复 发表于 2023-12-12 16:00
 
 
 

回复

6773

帖子

2

TA的资源

版主

4
 
传媒学子 发表于 2023-12-12 15:35 还没搞好呢,部署还没搞明白 哈哈,yolo v2 fastest号称可以达到30fps

需要看芯片的算力吧~

 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表