文章目录
一、用usb摄像头采集图像数据
采集制作和训练自己的数据集所需的图像数据
# -*- coding: utf-8 -*-
import cv2
cap = cv2.VideoCapture(0)
# 先设置分辨率,宽:640 长:480
cap.set(3, 640)
cap.set(4, 480)
# 图像计数 从1开始
img_count = 1
while (1):
# get a frame
ret, frame = cap.read()
if ret:
# show a frame
cv2.imshow("capture", frame)
# 等待按键事件发生 等待1ms
key = cv2.waitKey(1)
if key == ord('q'):
# 如果按键为q 代表quit 退出程序
print("程序正常退出..")
break
elif key == ord('s'):
## 如果s键按下,则进行图片保存
# 写入图片 并命名图片为 图片序号.png
cv2.imwrite("{}.png".format(img_count), frame)
print("保存图片,名字为 {}.png".format(img_count))
# 图片编号计数自增1
img_count += 1
else:
print("图像数据获取失败!!")
break
cap.release()
cv2.destroyAllWindows()
二、制作数据集
Roboflow是yolov5项目推荐的数据集制作工具,在网站注册登录后便可在线使用
创建目标检测项目:
上传图片并对图片进行标注:
数据集导出:
三、使用数据集
1.创建mydata文件夹
2.修改data.yaml路径和检测种类,修改data.yaml检测种类
3.修改train.py test.py detect.py
4.进行训练、测试、检测