yolov5 图片识别
本案例使用 eye-to-hand 的模式,使用摄像头进行拍摄图片,通过 OpenCV 加载 yolov5 模型数据,识别图像物块并定位图像物块在识别区域中的位置。通过相关点位,计算出物块相对于机械臂的空间坐标位置。为机械臂设置一套相关动作,将识别的物体放入对应区域中。
1 摄像头调整
首先,需要使用python运行aikit_V2包下的OpenVideo.py。若开启的摄像头为电脑摄像头则需要修改cap_num,具体可参考:注意事项。确保摄像头完全包含整个识别区域,且识别区域在视频中是正正方方的,如下图所示。若识别区域在视频中不符合要求,则需要调整摄像头的位置。
树莓派版本:
- 打开一个控制台终端(快捷键Ctrl+Alt+T),进入目标文件夹
cd ~/aikit_V2/myArm_300PI/
- 输入以下命令,打开摄像头进行调整
python scripts/OpenVideo.py
2 案例重现
树莓派版本:
- 打开一个控制台终端(快捷键Ctrl+Alt+T),输入以下命令进入目标文件夹:
cd ~/aikit_V2/myArm_300PI
- 再输入以下命令,启动yolov5识别程序。
python scripts/yolov5_img.py
- 摄像头窗口能正常开启时,说明程序运行成功,此时可将可识别的物体放置识别区域中,根据终端提示进行拍照、截取,当命令终端出现ok时,说明yolov5正在识别抓取,机械臂完成单次抓取后,请按空格键进行下一次图像识别。
注意事项
若命令终端没有出现ok,且无法识别图片时,需要将摄像头稍微向后或向前移动一下,当命令终端出现ok时程序即可正常运行。
为了更好的识别图片需要将物体反放在识别区域。