单目摄像头精确测距技术及实现方法
2016-07-15樊露
樊露
(广西大学,广西 南宁530004)
单目摄像头精确测距技术及实现方法
樊露
(广西大学,广西 南宁530004)
摘要:利用手机摄像头,通过改变摄像设备的焦距,对比两幅不同焦距下图片的模糊度,精确计算目标物体的距离,该方法同样适用于立体物体的距离测距。该方法将被测区域的图片量化为81个小图片,对每个图片采用边沿提取模糊测距技术来计算距离大小。利用高斯融合算法将该81个子图片的计算结果进行融合,最终得到被测立体物体到摄像头的距离。
关键词:散焦测距;单目视觉;边缘提取;高斯融合算法
机器人视觉是指使机器人具有视觉感知功能的系统,是机器人系统组成的重要部分之一。机器人视觉[1-3]可以通过视觉传感器获取环境的二维图像,并通过视觉处理器进行分析和解释,进而转换为符号,机器人据此辨识物体,并确定其位置。目前机器视觉行业已经进入高速发展的时期,机器视觉产品在下游行业,尤其是工业控制领域实现了广泛的应用,机器视觉技术已逐步走向成熟。目前机器视觉技术主要用于产品质量检测、分类、机器人定位、包装等,一方面替代人工视觉,另一方面用于提高生产的柔性和自动化程度。在大批量工业生产中,用机器视觉检测方法可以大大提高生产效率,减少人工风险。比如在药品生产中,采用机器视觉产品不仅可以提高药品质量检测的准确度和生产效率,还可以避免人眼长时间工作而造成的视觉疲劳。另外,将机器视觉应用于机器人的引导中,可以实现生产的柔性化,使生产线很容易适应产品的变化,这成为未来发展趋势之一。
如何精准的测量被测物体的距离,一直是机器人视觉技术的研究热点,目前在测距算法方面大家都广泛使用基于单目视觉系统的散焦测距的方法,该方法通过镜头不同参数下所拍摄的两幅图像就可以计算出物体到摄像头的距离信息。本文将对目前广泛应用的散焦测距算法提出改进,达到可以精准测距的效果。
1 现有技术
目前的单目测距算法主要在Subbarao提出的散焦测距算法[4,5]发展而来的,该算法通过两幅或者多幅照片,利用不同图片的模糊程度来提取距离信息。Ens和Lawrence为了提高算法的精度提出了散焦测距矩阵迭代法[6]将一幅图片数据信息考虑成另一幅图片的数据信息与一个矩阵卷积的结果,该矩阵为两幅图片的扩散函数如公式(1),(2)所示。该方法在应用在立体物体的测距时采用动态参照技术(dynamic reference technique)并通过高斯卷积准模糊处理后,按照平面测距来处理,这种处理方法存在一定的误差。
公式1中F(x,y)与F'(x,y)分别表示2幅图片数据信息,G为两幅图片的扩散函数。
2 算法改进
散焦三维测量直接利用物体深度、摄像镜头参数和图像模糊度之间的关系来测量物体的深度。图1是散焦物体测距的原理图。由图1可知物体表面发射的光通过半径为D/2的孔径光栏后,根据几何光学的物像关系有:
其中:u是物体表面的物距,v是像距,f为焦距。
当像点和摄像平面不重合时,物点在摄像面上形成不是清晰的像点,而是与孔径光栏形状相同的模糊光斑,对一般的散焦测距系统,孔径光栏具有圆对称性,所以这个模糊光斑是一个圆形光斑,其光斑半径R1、R2与光学系统的光学参数(透镜孔径D、摄像面距透镜的距离s1、s2)及物点的物距u之间有如下关系:s1、s2为两次摄像平面到摄像透镜的距离,从公式(4),(5)知道,在已知系统的光学参数的情况下,只要测量出物体上某点模糊光斑的半径,就能计算出该点的物距u.
图1 散焦成像
图像边缘的对应为图像中灰度发生急剧变化的区域边界,它是图像的基本特征,边缘检测[7-8]是采用一定的算法提取出图像中物体与背景的交界线。人们通过相邻点像素灰度分布的梯度来反应这一急剧变化。根据这一特点,前人提出了多种检测算子,Robert算子、Sobel算子等。本文提出的改进算法利用水平和垂直两个方向的Sobel算子提取图像的边沿。然后通过计算显示屏的像素即可求解R1、R2.
Sobel算子包含两组3×3的矩阵,分别为横向及纵向,将之与图像作平面卷积,即可分别得出横向及纵向的亮度差分近似值。如果以F代表原始图像,Gx及Gy分别代表经纵向及横向边缘检测的图像,则有
另外该改进算法将拍摄得到的2幅图片分别量化为81个子图片如图2所示,针对每个子图片分别采用Sobel算子提取图像边缘,计算每个子图片的距离,通过公式(8)利用9阶高斯算子将每个子图片的计算结果融合在一起作为最终的测试结果,有利于提高计算精度。
图2 量化过程
3 实验及结果分析
仿真实验:本实验选取的样品为毛绒公仔,采用华为荣耀6进行拍摄,像素为1300万像素,将毛绒公仔放置镜头前500 mm处,拍摄两幅散焦程度不同的图片如图3所示。改变目标样本到镜头的距离,每隔500 mm拍摄一组散焦程度不同的照片,采用本改进算法计算目标物体的距离,结果如表1所示。
图3 散焦程度不同的图片
表1 误差比对表
根据实验结果,可以得到计算值与实际值的对比曲线如图4所示,以及被测物体在不同距离下计算出的距离误差如图5所示,根据该改进算法在2 m~3 m之间可以比较精致的计算出目标物体的距离,超过这个范围后,计算误差较大。
图4 仿真曲线
图5 误差曲线
4 结束语
改进算法通过对图片分解成81个子图片,对每个子图片采用边沿提取模糊测距计算被测物体的距离,最后将这81个子图片的结果进行高斯融合得到最终的测试结果,有利于提高测试精度。
参考文献:
[1]杨延西,刘丁,辛菁,等.MOTOMAN-SV3XL机器人手眼视觉立体定位系统[J].计算机工程与应用.2003,(22):38-41.
[2]熊春山,黄心汉,王敏.手眼立体视觉的算法与实现[J].机器人,2001,(02):113-117.
[3]孙尧,张强,万磊.基于自适应UKF算法的小型水下机器人导航系统[J].自动化学报,2011,(03):342-353.
[4]Subbarao,M.,Gurumoorthy,N.,Depth Recovery from Blurred Edges[R].CVPR88.1988:498-503.
[5]Subbarao M.,Parallel depth recovery by changing camera Parameters[R].Second International Conference on Computer Vision,Florida,USA,December,1988:149-155.
[6]Ens J.Lawrence P.,A matrix based method for determining depth from focus[R].Proc.of IEEE Conf.On Computer Vision and Pattern Recognition,June,1991:600-609.
[7]高梁,刘晓云,廖志武,等.一种基于多信息融合的模糊边界检测算法[J].仪器仪表学报,2011,(11):2506-2514.
[8]赵振兵,金思新,刘亚春.基于NSCT的航拍绝缘子图像边缘提取方法[J].仪器仪表学报,2012,(09):2045-2052.
Monocular Camera Precise Distance Measurement Technology Research and Implementation
FAN Lu
(Guangxi University,Nanning Guangxi 530004,China)
Abstract:This paper based on mobile phone camera,by changing the focal length of the camera device,compared to two picture under different focal length of ambiguity,the precise distance of target object,this method also could apply to the 3D object distance range.This method to quantify measured area of pictures as 81 small images,for each image edge extraction of fuzzy distance measuring technology is used to calculate the distance.Using Gaussian fusion algorithm to the 81 child image fusion,the calculated results of the resulting measured 3D objects to the distance of the camera.
Key words:range of defocusing;monocular vision;edge detection;gaussian fusion algorithm
中图分类号:TP242
文献标识码:A
文章编号:1672-545X(2016)03-0185-03
收稿日期:2015-12-16
作者简介:樊露(1984-),女,湖南邵阳人,工学硕士,工程师,研究方向:计算机应用,无线网络协议。