CN109974659A - 一种基于双目机器视觉的嵌入式测距系统 - Google Patents
一种基于双目机器视觉的嵌入式测距系统 Download PDFInfo
- Publication number
- CN109974659A CN109974659A CN201910254554.7A CN201910254554A CN109974659A CN 109974659 A CN109974659 A CN 109974659A CN 201910254554 A CN201910254554 A CN 201910254554A CN 109974659 A CN109974659 A CN 109974659A
- Authority
- CN
- China
- Prior art keywords
- image
- binocular
- camera
- point
- calibration
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C3/00—Measuring distances in line of sight; Optical rangefinders
- G01C3/10—Measuring distances in line of sight; Optical rangefinders using a parallactic triangle with variable angles and a base of fixed length in the observation station, e.g. in the instrument
- G01C3/18—Measuring distances in line of sight; Optical rangefinders using a parallactic triangle with variable angles and a base of fixed length in the observation station, e.g. in the instrument with one observation point at each end of the base
Abstract
本发明公开了一种基于双目机器视觉的嵌入式测距系统,涉及测距技术领域。通过双目摄像头拍摄差值图像,传输到Raspberry Pi上后通过OpenCV计算机视觉库进行处理,经用户选择区域后显示出测距数值,便捷测量且适用性高。
Description
技术领域
本发明涉及测距技术领域,具体是一种基于双目机器视觉的嵌入式测距系统。
背景技术
在非接触测距系统中,超声波测距的精度较低,且受温度和风向等环境因素的影响较大,所测物体表面必须水平,且多个超声波会相互干扰,不能同时检测。激光测距的检测最小距离过大,难以测量较近距离的物体,且受太阳光线影响较大,受所测物体表面颜色影响较大。传统的双目视觉测距由于需要PC计算支持,适用性较低。
发明内容
为了克服上述现有技术的缺点,本发明提供一种基于双目机器视觉的嵌入式测距系统。
本发明是以如下技术方案实现的:一种基于双目机器视觉的嵌入式测距系统,通过双目摄像头拍摄差值图像,传输到处理器上后通过OpenCV计算机视觉库进行处理,经用户选择区域后显示出测距数值;具体如下:
(1)图像获取单元,用于通过检测相机获取双目图像;
(2)目标区域截取单元,用于从双目图像中截取目标区域,截取的目标区域包括获取模板图像和被测区域图像;
(3)匹配单元,匹配最佳匹配的目标图像;
(31)构造一个3x3的卷积核;
(32)用窗口覆盖左边的图像,选择出窗口覆盖区域内的所有像素点;
(33)同样用窗口覆盖右边的图像并选择出覆盖区域的像素点;
(34)左边覆盖区域减去右边覆盖区域,并求出所有像素点灰度差的绝对值之和;
(35)移动右边图像的窗口,重复步骤(33)-(44)的处理;
(36)找到这个范围内SAD值最小的窗口,即找到了左图锚点的最佳匹配的像素块;
其中SAD值计算如下:
S(x,y)是大小为m*n的搜索图像,T(s,t)是M*N的模板图像,D(i,j)是平均绝对差
(4)视图偏差计算单元,根据最佳匹配的目标图像坐标对应关系获取双目图像之间的视图偏差;
(41)准备标定图片
(42)对每一张标定图片,提取角点信息
(43)对每一张标定图片,进一步提取亚像素角点信息
(44)在棋盘标定图上绘制找到的内角点,
(45)相机标定,建立两个标定矩阵Q
公式如下:其中cx、cy为原点的水平和垂直偏移量,f为焦距,摄像头中心距为Tx
Q为标定矩阵,cx、cy为原点的水平和垂直偏移量,f为焦距,摄像头中心距为Tx
(5)距离测量单元,根据视图偏差、双目相机成像点距离对被测目标距离进行测量;
双目视觉的计算公式如下:
d=x1-x2
其中,d为视差,即双目摄像头对应的点的距离之差,Z为测量的深度,x1、x2为两个摄像头上对应的坐标,f为焦距。
优选的,所述处理器采用Raspberry Pi嵌入式主板作为处理核心,Raspberry Pi一款基于ARM的微型电脑主板,以SD/MicroSD卡为内存硬盘,卡片主板周围有4个USB接口和一个100以太网接口,同时拥有视频模拟信号的电视输出接口和HDMI高清视频输出接口。
本发明的有益效果:该系统通过双目摄像头拍摄差值图像,传输到Raspberry Pi上后通过OpenCV计算机视觉库进行处理,经用户选择区域后显示出测距数值,便捷测量且适用性高。
附图说明
图1是本发明流程框图;
图2是相机直角坐标系
图3是空间直线示意图
图4是双目成像原理简化演示图;
图5是图像坐标系与像素坐标系图;
图6是双目相机左右视图物体所对应的位置图;
图7是图像矫正的模型图。
具体实施方式
双目机器视觉的设计原理
双目检测
双目摄像头的原理与人眼相似。人眼能够感知物体的远近,是因为两只眼睛对观察同一个物体呈现的图像有着一定的差异。物体距离越远,视差越小;反之,视差越大。视差的大小与眼睛之间距离的远近成线性相关。
根据这个原理,双目检测需要用到一对摄像头,称为双目相机。双目相机可安放在环境中的任何位置,故要在环境中选择一个基准坐标系来描述双目相机的位置,在双目相机的成像系统中,存在着四个坐标系,它们分别是:像素坐标系(u,v)、成像平面坐标系(x,y)、相机坐标系(Xc,Yc,Zc)与物理坐标系(Xw,Yw,Zw),如图1所示
用齐次矩阵表示则为:
其逆关系可表示为:
(u0,v0)代表在像素坐标系下的坐标,dx与dy分别表示每个像素在横轴x和纵轴y上的物理尺寸。
光学标定
1.空间坐标轴的建立
建立如图2的相机直角坐标系,令其原点为O。过点O的z轴与像平面相交于点H,则光学中心到像平面的距离f=OH。由此可知,像平面的几何中心就是点H。在像平面坐标系中,在像平面中以H为原点建立像平面的平面坐标系,显示的横坐标长度是1024(像素单位),纵坐标长度768。故在像平面有一个x∈(-512,512),y∈(-384,384)长方形成像范围。对于在这个范围内的任意一点,都可以求出其具体的坐标。
2.求解直线方程
设圆B在像坐标平面上投影的圆心为B′。从投影B′的边线上任意选取四个点P1,P2,P3,P4。每个点的坐标为P1(x1,y1,z1),P2(x2,y2,z2),P3(x3,y3,z3),P4(x4,y4,z4),这些坐标的数值是固定的。
对应的四条直线的方程分别为:
LOP1、LOP2、LOP3、LOP4分别为从O点到四个点P1,P2,P3,P4的直线方程,x,y,z为坐标。
与靶标上的圆平行的圆有很多个,因此要先从所给的四条线中选中一条直线并任意选取其中一个点,保证靶标上的圆平行且过该点的圆是唯一的。为方便计算,这里选直线OP1上的点P1(x1,y1,z1),令参数t1=1,所以点P11与P1重合,是同一个点。如图3所示。
可求出的三个交点的坐标(也就是ΔEFG的定点坐标)依次为:
E(-49.62,-23.49,-417.20)
F(-49.71,-23.59,-417.20)
G(-49.54,-23.57,-417.20)
显然也可由以上条件求出中垂线两两相交的第三个交点G的坐标。如图6所示,三条垂直平分线的交点E、F、G构成三角形ΔEFG,三个点的坐标值都是已知的,那么三条边的长度可由坐标值求出ΔEFG的外接圆圆心B0的坐标是:(-49.628,-23.5788,-417.196)
比较三条边EF、EG、FG的长度大小,选出其中的最大值,放入到集合Γ中去。利用问题一中的算法,可以求得合适范围内的所有过点P11的三角形ΔEFG的三条边的最大值,这样就有集合Γ={l1,l2,l3…li},选出最大值集合Γ中的最小值lmin=MinΓ{l1,l2,l3…li},则得出这个最小值lmin的三角形的中垂线的交点就是所求的圆B0的圆心,即可完成目标点在像平面上的光学标定。
双目成像模型
物理世界对象的三维坐标可用双目立体视觉确定。如图4是双目立体视觉原理图
假设两相机的内部和外部参数完全相同,焦距为f,光心之间的距离(基线)为B,相机共面,即同一时刻空间点P(x,y,z)在两相机上成像点分别为Xeft和Xight。
由三角几何关系有
视差为D,焦距为f,光心之间的距离(基线)为B,相机共面,即同一时刻空间点p(x,y,z)在两相机上成像点分别为Pleft和Pright,Xleft和Xright是Pleft和Pright的x坐标,x,y,z代表世界坐标的水平、垂直、深度信息。根据上述推导,要求得空间点P离相机的距离(深度)z,必须知道:
1、相机焦距f,左右相机的基线b(可以通过先验信息或者相机标定得到)。
2、视差:D=x1-xr,即左相机像素点(xl,yl)和右相机中对应点(xr,yr)的关系,这是双目视觉的核心问题。其中,视差是同一个空间点在两个相机成像坐标系中对应的x坐标的差值,它可以通过编码转换成灰度图来反映出距离的远近,离镜头越近的灰度越亮;
极线约束
在确定左图中的某一个像素点在右图中对应的位置时,因为地毯式搜索的计算量过大,所以我们采用
了极限约束的算法来有效缩减计算时间,提高计算效率。
如上图所示。O1,O2是两个相机,P是空间中的一个点,P和两个相机中心点O1、O2形成了三维空间中的一个平面PO1O2,称为极平面(Epipolar plane)。极平面与两幅图像相交于两条直线,即我们所说的极线(Epipolar line)。
P在相机O1中的成像点为P1,在相机O2中的成像点为P2,不过P的位置是未知的。我们的目标是:利用左图的P1点,寻找它在右图中的对应点P2,以便能确定P点的空间位置。
极线约束(Epipolar Constraint)是指当空间点在两幅图像上分别成像时,已知左图投影点p1,那么对应右图投影点p2一定在相对于p1的极线上,这样可以极大的缩小匹配范围。即P2一定在对应极线上,所以只需要沿着极线搜索便可以找到P1的对应点P2。
图像矫正
上面是两相机共面且光轴平行,参数相同的理想情况,然而有些场景下两个相机需要独立固定,很难保证光心完全水平,即使固定在同一个基板上也会由于装配的原因导致光心不完全水平,如图7所示:两个相机的极线不平行,并且不共面。
而图像矫正是通过分别对两张图片利用单应性矩阵(homography matrix)变换得到,其目的是把两个方向不同的图像平面(下图中灰色平面)重新投影到同一个平面且光轴互相平行(下图中黄色平面),以此来转化为理想情况的模型。
上面的主要工作是在极线上寻找匹配点,但是由于要保证两个相机参数完全一致是不现实的,并且外界光照变化和视角不同的影响,使得单个像素点鲁棒性很差。所以匹配工作是一项很重要的事情,这也关系着双目视觉测距的准确性。
根据上上述说明,一种基于双目机器视觉的嵌入式测距系统,通过双目摄像头拍摄差值图像,传输到Raspberry Pi上后通过OpenCV计算机视觉库进行处理,经用户选择区域后显示出测距数值;具体如下:
(1)图像获取单元,用于通过检测相机获取双目图像;
(2)目标区域截取单元,用于从双目图像中截取目标区域,截取的目标区域包括获取模板图像和被测区域图像;
(3)匹配单元,匹配最佳匹配的目标图像;
(31)构造一个3x3的卷积核;
(32)用窗口覆盖左边的图像,选择出窗口覆盖区域内的所有像素点;
(33)同样用窗口覆盖右边的图像并选择出覆盖区域的像素点;
(34)左边覆盖区域减去右边覆盖区域,并求出所有像素点灰度差的绝对值之和;
(35)移动右边图像的窗口,重复步骤(33)-(44)的处理;
(36)找到这个范围内SAD值最小的窗口,即找到了左图锚点的最佳匹配的像素块;
其中SAD值计算如下:
S(x,y)是大小为m*n的搜索图像,T(x,y)是M*N的模板图像,D(i,j)是平均绝对差
(4)视图偏差计算单元,根据最佳匹配的目标图像坐标对应关系获取双目图像之间的视图偏差;
(41)准备标定图片
(42)对每一张标定图片,提取角点信息
(43)对每一张标定图片,进一步提取亚像素角点信息
(44)在棋盘标定图上绘制找到的内角点,
(45)相机标定,建立两个标定矩阵Q
Q为标定矩阵,cx、cy为原点的水平和垂直偏移量,f为焦距,摄像头中心距为Tx
(5)距离测量单元,根据视图偏差、双目相机成像点距离对被测目标距离进行测量;
双目视觉的计算公式如下:
d=x1-x2
其中,d为视差,即双目摄像头对应的点的距离之差,Z为测量的深度,x1、x2为两个摄像头上对应的坐标,f为焦距,通过将步骤(4)中获得的标定矩阵遍历两张目标图并获得匹配点的水平或垂直偏移量cx、cy后,进行步骤(5),对目标深度进行计算。
嵌入式系统的设计
为了将整个双目视觉系统小型化,本系统采用了Raspberry Pi(下文简称为RPi)嵌入式主板作为处理核心,RPi是一款基于ARM的微型电脑主板,以SD/MicroSD卡为内存硬盘,卡片主板周围有4个USB接口和一个100以太网接口,同时拥有视频模拟信号的电视输出接口和HDMI高清视频输出接口,以上部件全部整合在一张仅比信用卡稍大的主板上,具有比单片机嵌入式系统更加优秀的性能与更好的移植性,只需通过microUSB接口提供一个5V的电压,它即可提供强大的计算能力。
本系统使用RPi编写的Python脚本驱动摄像头以完成测距功能,RPi对于脚本语言Python有着较好的支持。编写的系统环境为Raspbian,作为Linux针对嵌入式系统的发行版之一,它既有更高的运算能力、更好的兼容性,并且它也更加契合RPi的硬件特性。
(1)嵌入式系统。本系统在程序上使用Python脚本语言驱动OpenCV开源库,OpenCV是目前使用最广泛的计算机视觉库,其拥有代码运行效率高、可移植性好等优点。使用Raspberry pi 3处理器将摄像头传来的数据进行接收整理后在液晶显示屏上进行距离显示。使用嵌入式技术,将传统的此系统采用集成度高、单位化的设计方式使得系统更加简洁便利,可以脱离PC使用。
(2)OpenCV开源库。本作品在程序上使用Python脚本语言驱动OpenCV开源库,OpenCV是目前使用最广泛的计算机视觉库,其拥有代码运行效率高、可移植性好等优点。而Python作为高层的脚本语言,其拥有优秀的可扩展性和丰富的第三方库,使用Python-OpenCV写出的程序较之传统开发环境开发出的程序拥有更快的运行速度,代码也更加简洁。
Claims (2)
1.一种基于双目机器视觉的嵌入式测距系统,其特征在于:通过双目摄像头拍摄差值图像,传输到处理器上后通过OpenCV计算机视觉库进行处理,经用户选择区域后显示出测距数值;具体如下:
(1)图像获取单元,用于通过检测相机获取双目图像;
(2)目标区域截取单元,用于从双目图像中截取目标区域,截取的目标区域包括获取模板图像和被测区域图像;
(3)匹配单元,匹配最佳匹配的目标图像;
(31)构造一个3x3的卷积核;
(32)用窗口覆盖左边的图像,选择出窗口覆盖区域内的所有像素点;
(33)同样用窗口覆盖右边的图像并选择出覆盖区域的像素点;
(34)左边覆盖区域减去右边覆盖区域,并求出所有像素点灰度差的绝对值之和;
(35)移动右边图像的窗口,重复步骤(33)-(44)的处理;
(36)找到这个范围内SAD值最小的窗口,即找到了左图锚点的最佳匹配的像素块;
其中SAD值计算如下:
S(x,y)是大小为m*n的搜索图像,T(x,y)是M*N的模板图像,D(i,j)是平均绝对差
(4)视图偏差计算单元,根据最佳匹配的目标图像坐标对应关系获取双目图像之间的视图偏差;
(41)准备标定图片
(42)对每一张标定图片,提取角点信息
(43)对每一张标定图片,进一步提取亚像素角点信息
(44)在棋盘标定图上绘制找到的内角点,
(45)相机标定,建立两个标定矩阵Q
Q为标定矩阵,cx、cy为原点的水平和垂直偏移量,f为焦距,摄像头中心距为Tx
(5)距离测量单元,根据视图偏差、双目相机成像点距离对被测目标距离进行测量;
双目视觉的计算公式如下:
d=x1-x2
其中,d为视差,即双目摄像头对应的点的距离之差,Z为测量的深度,x1、x2为两个摄像头上对应的坐标,f为焦距。
2.根据权利要求1所述的一种基于双目机器视觉的嵌入式测距系统,其特征在于:所述处理器采用Raspberry Pi嵌入式主板作为处理核心,Raspberry Pi一款基于ARM的微型电脑主板,以SD/MicroSD卡为内存硬盘,卡片主板周围有4个USB接口和一个100以太网接口,同时拥有视频模拟信号的电视输出接口和HDMI高清视频输出接口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910254554.7A CN109974659A (zh) | 2019-03-31 | 2019-03-31 | 一种基于双目机器视觉的嵌入式测距系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910254554.7A CN109974659A (zh) | 2019-03-31 | 2019-03-31 | 一种基于双目机器视觉的嵌入式测距系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109974659A true CN109974659A (zh) | 2019-07-05 |
Family
ID=67081970
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910254554.7A Pending CN109974659A (zh) | 2019-03-31 | 2019-03-31 | 一种基于双目机器视觉的嵌入式测距系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109974659A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111551920A (zh) * | 2020-04-16 | 2020-08-18 | 重庆大学 | 基于目标检测与双目匹配的三维目标实时测量系统和方法 |
CN112033352A (zh) * | 2020-09-01 | 2020-12-04 | 珠海市一微半导体有限公司 | 多摄像头测距的机器人及视觉测距方法 |
CN112305524A (zh) * | 2020-10-28 | 2021-02-02 | 五邑大学 | 测距方法、测距系统和计算机可读存储介质 |
CN112489104A (zh) * | 2020-12-03 | 2021-03-12 | 海宁奕斯伟集成电路设计有限公司 | 测距方法、装置、电子设备以及可读存储介质 |
CN112509059A (zh) * | 2020-12-01 | 2021-03-16 | 合肥富煌君达高科信息技术有限公司 | 一种基于共面靶标的大视场双目立体标定与定位方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103868460A (zh) * | 2014-03-13 | 2014-06-18 | 桂林电子科技大学 | 基于视差优化算法的双目立体视觉自动测量方法 |
-
2019
- 2019-03-31 CN CN201910254554.7A patent/CN109974659A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103868460A (zh) * | 2014-03-13 | 2014-06-18 | 桂林电子科技大学 | 基于视差优化算法的双目立体视觉自动测量方法 |
Non-Patent Citations (2)
Title |
---|
张逸航等: "基于双目机器视觉的嵌入式测距系统", 《徐州工程学院学报(自然科学版)》 * |
王浩等: "基于OpenCV的双目测距系统", 《吉林大学学报(信息科学版)》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111551920A (zh) * | 2020-04-16 | 2020-08-18 | 重庆大学 | 基于目标检测与双目匹配的三维目标实时测量系统和方法 |
CN112033352A (zh) * | 2020-09-01 | 2020-12-04 | 珠海市一微半导体有限公司 | 多摄像头测距的机器人及视觉测距方法 |
CN112033352B (zh) * | 2020-09-01 | 2023-11-07 | 珠海一微半导体股份有限公司 | 多摄像头测距的机器人及视觉测距方法 |
CN112305524A (zh) * | 2020-10-28 | 2021-02-02 | 五邑大学 | 测距方法、测距系统和计算机可读存储介质 |
CN112509059A (zh) * | 2020-12-01 | 2021-03-16 | 合肥富煌君达高科信息技术有限公司 | 一种基于共面靶标的大视场双目立体标定与定位方法 |
CN112509059B (zh) * | 2020-12-01 | 2023-04-07 | 合肥中科君达视界技术股份有限公司 | 一种基于共面靶标的大视场双目立体标定与定位方法 |
CN112489104A (zh) * | 2020-12-03 | 2021-03-12 | 海宁奕斯伟集成电路设计有限公司 | 测距方法、装置、电子设备以及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109974659A (zh) | 一种基于双目机器视觉的嵌入式测距系统 | |
CN111060023B (zh) | 一种高精度3d信息采集的设备及方法 | |
CN113379822B (zh) | 一种基于采集设备位姿信息获取目标物3d信息的方法 | |
CN106643699B (zh) | 一种虚拟现实系统中的空间定位装置和定位方法 | |
CN106595519B (zh) | 一种基于激光mems投影的柔性三维轮廓测量方法及装置 | |
JP4245963B2 (ja) | 較正物体を用いて複数のカメラを較正するための方法およびシステム | |
CN106127745B (zh) | 结构光3d视觉系统与线阵相机的联合标定方法及装置 | |
JP6897563B2 (ja) | 画像処理装置と画像処理方法およびプログラム | |
CN110572630B (zh) | 三维图像拍摄系统、方法、装置、设备以及存储介质 | |
US20200134849A1 (en) | Device and method for obtaining depth information from a scene | |
Holzmann et al. | Measuring distance with mobile phones using single-camera stereo vision | |
US20120242795A1 (en) | Digital 3d camera using periodic illumination | |
CN111442721B (zh) | 一种基于多激光测距和测角的标定设备及方法 | |
EP2104365A1 (en) | Method and apparatus for rapid three-dimensional restoration | |
Willi et al. | Robust geometric self-calibration of generic multi-projector camera systems | |
TW201709718A (zh) | 在使用者裝置上顯示光場為基影像之方法及裝置,及對應之電腦程式產品 | |
CN109544628B (zh) | 一种指针式仪表的准确读数识别系统及方法 | |
JP2007192832A (ja) | 魚眼カメラの校正方法。 | |
CN111429523B (zh) | 一种在3d建模中远距离标定方法 | |
JP7300948B2 (ja) | 測量データ処理装置、測量データ処理方法、測量データ処理用プログラム | |
Kunz et al. | Hemispherical refraction and camera calibration in underwater vision | |
CN110146030A (zh) | 基于棋盘格标志法的边坡表面变形监测系统和方法 | |
CN111445529B (zh) | 一种基于多激光测距的标定设备及方法 | |
WO2022078442A1 (zh) | 一种基于光扫描和智能视觉融合的3d信息采集方法 | |
CN110838164A (zh) | 基于物体点深度的单目图像三维重建方法、系统及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190705 |
|
WD01 | Invention patent application deemed withdrawn after publication |