项目实战——基于计算机视觉的物体位姿定位及机械臂矫正(一)

思路:

经过这几天的资料查找,我逐步有了思路,现整理如下:

抓取物品定为牛奶盒,主要优势在于,质量轻、体积小、棱角分明,便于识别抓取;

工作环境设置在传送带上,人工随机将牛奶盒以不同方向随机放入;

在摄像机的使用上采用双目相机,而非单目相机;

开发环境,VS2015,C++,使用Opencv3(其实我更擅长Matlab,但是这个目前更加普及);

关于标志物,我如下图所示:

之前想的与其识别标志物,不如识别矩形物体,但事实上在工业生产过程中所有物品不可能是规则的,而且也不符合教授的题目要求;

项目的关键在于,利用摄像机确定物体在世界坐标系中的位置,或者说摄像机生成一个深度的图像,关于机械臂的抓取控制目前已经有比较成熟的算法了;

目前先用比较“简单”的方法实现,后面关于图像识别和机械臂的计算我打算优化算法,采用神经网络的算法;

关于硬件,之前想的是全部利用STM32做,但是C++尤其是opencv转32很困难,

改变思路:电脑连接摄像头进行识别,进行机械臂的动作计算,结果通过WIFI发送到32上,32仅执行舵机控制。

利用红外对管,当传送带上物品通过时触发拍照。


首 先需要能够驱动工业相机,并通过硬件触发的方式使相机能 够在 合 适 的时 机 获 取多 张 图 片;其 次,应 能对 相 机 获 取 到 的 图片进行有效的图像处理,需进行一系列的算法设计从而能 够实时获取目标物的图像坐标;

再次,还应进行摄像机标定, 将 获 取 到的 目 标 物图 像 坐 标转 换 成 世界 坐 标 系 也 就 是 机 器 线上的真实坐标;

最后系统要能够与上位机控制部分集成并 能够持续不间断的运作,直到系统要求退出

在文献上找到了如下流程,可以作为参考: 

首先要从相机的标定开始,其次进行图像识别,最后进行机械臂运动求解。

Whatever,从相机标定开始
最后贴上我找的一些文献,仅供参考。

以上就是我的具体思路,可能会有问题,欢迎各路大佬指教。

https://blog.csdn.net/qq_32061503/article/details/83151418?spm=1001.2014.3001.5501