[发明专利]一种基于STM32单片机的双目测距系统及其测距方法有效
申请号: | 201410103469.8 | 申请日: | 2014-03-19 |
公开(公告)号: | CN103913149A | 公开(公告)日: | 2014-07-09 |
发明(设计)人: | 谢巍;黄进钰 | 申请(专利权)人: | 华南理工大学 |
主分类号: | G01C11/36 | 分类号: | G01C11/36;G05B19/042 |
代理公司: | 广州市华学知识产权代理有限公司 44245 | 代理人: | 陈文姬 |
地址: | 510640 广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 stm32 单片机 双目 测距 系统 及其 方法 | ||
技术领域
本发明涉及计算机视觉处理领域,特别涉及一种基于STM32单片机的双目测距系统及其测距方法。
背景技术
人类接收的外部环境信息中,有80%的信息是通过视觉获取的。换言之,视觉是人类感知世界的窗口,使我们更加准确地用大脑去思考和分析这个世界。在20世纪90年代后,计算机的运算速度、各类传感器的精度都有了很大的提升,为计算机的自动控制提供了扎实的硬件基础,于是人工智能的发展便蒸蒸日上,各类工业机器人不断涌现。那么,人工智能机器人感知外部环境信息也需要一双“眼睛”,那就是机器视觉,其实现形式的一个最为关键的就是摄像头,由模拟摄像头到数字摄像头的发展,摄像头的输出图片信号越来越高清,为机器视觉的各类研究应用提供了良好的条件。
发明内容
为了克服现有技术的上述缺点与不足,本发明的目的在于提供一种基于STM32单片机的双目测距系统,大大降低双目定位系统的研发成本。
本发明的另一目的在于提供上述双目测距系统的测距方法。
本发明的目的通过以下技术方案实现:
一种基于STM32单片机的双目测距系统,包括底座、摄像头支撑架,所述摄像头支撑架上设有左摄像头和右摄像头,所述底座上设有位于同一水平面的左红外激光发射管和右红外激光发射管;所述底座上设有STM32F407VGT6控制器,所述STM32F407VGT6控制器通过接口电路分别与左摄像头和右摄像头连接;所述摄像头支撑架通过垂直于底座的固定杆固定于底座上方;所述左摄像头和右摄像头的结构相同,且位于同一水平面。
所述基于STM32单片机的双目测距系统的测距方法,包括以下步骤:
(1)左摄像头和右摄像头采集图样,采用MATLAB软件中的Stereo Calibration工具箱,对采集到的图样进行标定,得到左摄像头的焦距fL和右摄像头的焦距fR,及左摄像头光心和右摄像头光心之间的距离T;其中,fL=fR=f;
(2)获取目标光斑在左摄像头采集的图样中的横坐标值XPL和目标光斑在右摄像头采集的图样中的横坐标值XPR,具体步骤如下:
(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);
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华南理工大学,未经华南理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410103469.8/2.html,转载请声明来源钻瓜专利网。