一种基于STM32单片机的双目测距系统及其测距方法技术方案

技术编号:10213145 阅读:341 留言:0更新日期:2014-07-12 22:44
本发明专利技术公开了一种基于STM32单片机的双目测距系统,包括底座、摄像头支撑架,所述摄像头支撑架上设有左摄像头和右摄像头,所述底座上设有同一水平面的左红外激光发射管和右红外激光发射管;所述底座上设有STM32F407VGT6控制器,所述STM32F407VGT6控制器通过接口电路与分别与左摄像头和右摄像头连接;所述摄像头支撑架通过垂直于底座的固定杆固定于底座上方;所述左摄像头和右摄像头的结构相同,且位于同一水平面。本发明专利技术还公开了上述基于STM32单片机的双目测距系统的双目测距方法。本发明专利技术使用价格低廉的STM32单片机作为系统核心,大大降低双目定位系统的研发成本。

【技术实现步骤摘要】
一种基于STM32单片机的双目测距系统及其测距方法
本专利技术涉及计算机视觉处理领域,特别涉及一种基于STM32单片机的双目测距系统及其测距方法。
技术介绍
人类接收的外部环境信息中,有80%的信息是通过视觉获取的。换言之,视觉是人类感知世界的窗口,使我们更加准确地用大脑去思考和分析这个世界。在20世纪90年代后,计算机的运算速度、各类传感器的精度都有了很大的提升,为计算机的自动控制提供了扎实的硬件基础,于是人工智能的发展便蒸蒸日上,各类工业机器人不断涌现。那么,人工智能机器人感知外部环境信息也需要一双“眼睛”,那就是机器视觉,其实现形式的一个最为关键的就是摄像头,由模拟摄像头到数字摄像头的发展,摄像头的输出图片信号越来越高清,为机器视觉的各类研究应用提供了良好的条件。
技术实现思路
为了克服现有技术的上述缺点与不足,本专利技术的目的在于提供一种基于STM32单片机的双目测距系统,大大降低双目定位系统的研发成本。本专利技术的另一目的在于提供上述双目测距系统的测距方法。本专利技术的目的通过以下技术方案实现:一种基于STM32单片机的双目测距系统,包括底座、摄像头支撑架,所述摄像头支撑架上设有左摄像头和右摄像头,所述底座上设有位于同一水平面的左红外激光发射管和右红外激光发射管;所述底座上设有STM32F407VGT6控制器,所述STM32F407VGT6控制器通过接口电路分别与左摄像头和右摄像头连接;所述摄像头支撑架通过垂直于底座的固定杆固定于底座上方;所述左摄像头和右摄像头的结构相同,且位于同一水平面。所述基于STM32单片机的双目测距系统的测距方法,包括以下步骤:(I)左摄像头和右摄像头采集图样,采用MATLAB软件中的Stereo Calibration工具箱,对采集到的图样进行标定,得到左摄像头的焦距4和右摄像头的焦距,及左摄像头光心和右摄像头光心之间的距离T ;其中,fL=fE=f ;(2)获取目标光斑在左摄像头采集的图样中的横坐标值XP^和目标光斑在右摄像头采集的图样中的横坐标值χρκ,具体步骤如下:(2-1)定义当前访问白点的坐标的缓存数组、每个光斑极限点坐标缓存数组、每个光斑的面积缓存数组和每个光斑的周长缓存数组;(2-2)从图样的第一列的最后一行的像素点开始,逐列对每列的每个像素点由下而上地访问; (2-3)当检测到访问的像素点为白点时,将光斑标志位置为true,并使光斑计数器自加1,同时将其坐标存入当前访问的白点坐标的缓存数组中,并将该白点的坐标值认为是暂时的光斑上、下、左、右边缘的坐标值,存入光斑极限点坐标缓存数组中,再往对应的光斑的面积缓存数组中累计面积;(2-4)在光斑标志位置为true后,每当遇到一个白点时,进行第一个边缘判断:判断该白点的正下方一点是否为黑点,并且该白点的纵坐标与步骤(2-3)中保存在当前访问的白点坐标的缓存数组中的白点的纵坐标的差值是否小于设定的像素阈值;如果是,则认为该白点是光斑轮廓上的点;再比较当前白点与前一白点的横坐标和纵坐标,如果前者大于后者,就将当前白点的横坐标认为是暂时的右边缘的横坐标和上边缘的纵坐标,并保存起来;同时,累计该光斑的周长,存入周长缓存数组中;(2-5)进行第二个边缘判断:判断该白点的正上方是否为黑点并且该白点的纵坐标与暂时的光斑上边缘的纵坐标差值是否大于设定的像素阈值,如果是,则认为该白点不属于本光斑,将光斑出现标志位清零;如果不是,进行步骤(2-6);(2-6)进行第三个边缘判断:判断该白点的正上方的点是否为黑点并且该白点的纵坐标与暂时的光斑下边缘的纵坐标的差值是否小于设定的像素阈值;如果是,则比较该白点的纵坐标是否比暂时的光斑下边缘的纵坐标的小,若是,则更新下边缘纵坐标;同时,累计周长;(2-7)进行第四个边缘判断:判断该白点的正上方的点是否为黑点,并且该白点纵坐标与暂时的光斑下边缘点纵坐标的差值是否小于设定的像素阈值;如果是,那么说明该点不属于本光斑,光斑出现标志位清零;(2-8)完成对图样所有的像素点的访问后,得到每个光斑的上、下、左、右4个边缘坐标及每个光斑的面积和周长;(2-9)对得到的每个光斑进行面积滤波:对每个光斑对应的面积的大小进行判断,如果大于设定的上限值或者小于设定的下限值,则将此光斑滤去,记录删除;对满足面积要求的光斑进行步骤(2-10);(2-10)进行圆形度滤波:计算光斑的圆形度σ是否大于设定的阈值,若是,则认为该光斑为有效光斑;其中,圆形度的计算方法如下:本文档来自技高网...

【技术保护点】
一种基于STM32单片机的双目测距系统,其特征在于,包括底座、摄像头支撑架,所述摄像头支撑架上设有左摄像头和右摄像头,所述底座上设有位于同一水平面的左红外激光发射管和右红外激光发射管;所述底座上设有STM32F407VGT6控制器,所述STM32F407VGT6控制器通过接口电路分别与左摄像头和右摄像头连接;所述摄像头支撑架通过垂直于底座的固定杆固定于底座上方;所述左摄像头和右摄像头的结构相同,且位于同一水平面。

【技术特征摘要】
1.一种基于STM32单片机的双目测距系统,其特征在于,包括底座、摄像头支撑架,所述摄像头支撑架上设有左摄像头和右摄像头,所述底座上设有位于同一水平面的左红外激光发射管和右红外激光发射管;所述底座上设有STM32F407VGT6控制器,所述STM32F407VGT6控制器通过接口电路分别与左摄像头和右摄像头连接;所述摄像头支撑架通过垂直于底座的固定杆固定于底座上方;所述左摄像头和右摄像头的结构相同,且位于同一水平面。2.权利要求1所述基于STM32单片机的双目测距系统的测距方法,其特征在于,包括以下步骤: (1)左摄像头和右摄像头采集图样,采用MATLAB软件中的StereoCalibration工具箱,对采集到的图样进行标定,得到左摄像头的焦距4和右摄像头的焦距,及左摄像头光心和右摄像头光心之间的距离T ;其中,fL=fE=f ; (2)获取目标光斑在左摄像头采集的图样中的横坐标值Xh和目标光斑在右摄像头采集的图样中的横坐标值XPK,具体步骤如下: (2-1)定义当前访问白点的坐标的缓存数组、每个光斑极限点坐标缓存数组、每个光斑的面积缓存数组和每个光斑的周长缓存数组; (2-2)从图样的第一列的最后一行的像素点开始,逐列对每列的每个像素点由下而上地访问; (2-3 )当检测 到访问的像素点为白点时,将光斑标志位置为true,并使光斑计数器自加.1,同时将其坐标存入当前访问的白点坐标的缓存数组中,并将该白点的坐标值认为是暂时的光斑上、下、左、右边缘的坐标值,存入光斑极限点坐标缓存数组中,再往对应的光斑的面积缓存数组中累计面积; (2-4)在光斑标志位置为true后,每当遇到一个白点时,进行第一个边缘判断:判断该白点的正下方一点是否为黑点,并且该白点的纵坐标与步骤(2-3)中保存在当前访问的白点坐标的缓存数组中的白点的纵坐标的差值是否小于设定的像素阈值;如果是,则认为该白点是光斑轮廓上的点;再比较当前白点与前一白点的横坐标和纵坐标,如果前者大于后者,就将当前白点的横坐标认为是暂时的右边缘的横坐标和上边缘的纵坐标,并保存起来;同时,累计该光斑的周长,存入周长缓存数组中; (2-5)进...

【专利技术属性】
技术研发人员:谢巍黄进钰
申请(专利权)人:华南理工大学
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1