一、任务目标
在工厂内根据图像检测库位并定位库位位置。
二、硬件设备
2D相机
FPGA板卡
三 、方案
1. 从图像采用YOLOX检测库位的四个小矩形框
2.采用轮廓检测,获取库位的拐点,根据拐点序号,确定库位的四个点
四、效果
1.检测库位四个小矩形
2.裁剪图像并扩充和进行轮廓检测
左上
右上
右下
左下
经过轮廓检测,获取每个轮廓的六个拐点,红色就是我们所需要的像素的点。
方位 | 拐点1 | 拐点2 | 拐点3 | 拐点4 | 拐点5 | 拐点6 |
左下 | (13, 3) | (12, 39) | (45, 41) | (47, 25) | (36, 18) | (36, 3) |
左上 | (13, 15) | (10, 37) | (27, 38) | (27, 28) | (35, 24) | (35, 15) |
右上 | (3, 16) | (3, 25) | (11, 25) | (14, 36) | (34, 34) | (25, 15) |
右下 | (12, 3) | (16, 17) | (3, 19) | (3, 39) | (51, 40) | (37, 3) |
3.获取库位点在整张图像的实际位置
YOLOX检测位置+拐点位置-扩充像素
4.获取像素与实际距离转换矩阵R
像素坐标系与世界坐标系作投影,获取投影矩阵R
5.计算相机距离库位中心偏离距离
1) 计算库位的四个拐点在世界坐标系位置=R*拐点坐标获取实际坐标
2) 求取对角线交点坐标