CN111307069B - 一种密集平行线结构光三维扫描方法与*** - Google Patents

一种密集平行线结构光三维扫描方法与*** Download PDF

Info

Publication number
CN111307069B
CN111307069B CN202010282081.4A CN202010282081A CN111307069B CN 111307069 B CN111307069 B CN 111307069B CN 202010282081 A CN202010282081 A CN 202010282081A CN 111307069 B CN111307069 B CN 111307069B
Authority
CN
China
Prior art keywords
point
line
line segment
projector
camera
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.)
Active
Application number
CN202010282081.4A
Other languages
English (en)
Other versions
CN111307069A (zh
Inventor
黄文超
刘改
龚静
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan Xuanjing Technology Co ltd
Original Assignee
Wuhan Xuanjing Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wuhan Xuanjing Technology Co ltd filed Critical Wuhan Xuanjing Technology Co ltd
Priority to CN202010282081.4A priority Critical patent/CN111307069B/zh
Publication of CN111307069A publication Critical patent/CN111307069A/zh
Application granted granted Critical
Publication of CN111307069B publication Critical patent/CN111307069B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/24Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures
    • G01B11/25Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures by projecting a pattern, e.g. one or more lines, moiré fringes on the object
    • G01B11/254Projection of a pattern, viewing through a pattern, e.g. moiré
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/24Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures
    • G01B11/25Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures by projecting a pattern, e.g. one or more lines, moiré fringes on the object
    • G01B11/2545Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures by projecting a pattern, e.g. one or more lines, moiré fringes on the object with one projection direction and several detection directions, e.g. stereo

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

本发明提供一种密集平行线结构光三维扫描方法与***,包括设计密集平行线单帧图案;通过投影仪将预先设计好的单帧密集平行线投射到被测物体表面;双目相机拍摄经调制的密集平行线图案,进行高精度线提取和分段;利用双目相机与密集平行线形成的空间平面的相对关系确定分段线段上每个提取点的候选投影仪列号值;利用同一线段上的提取点投影仪列号的一致性删选候选投影仪列号值;利用相邻线段列号的连续性验证候选投影仪列号值有效性;根据线段上的像点坐标和对应的投影仪列号逐点重建点云。本发明解决了传统多线结构光扫描重建结果稀疏、分布不均、需要标志点辅助定位、多线交叉影响重建结果等问题。

Description

一种密集平行线结构光三维扫描方法与***
技术领域
本发明涉及三维测量领域,尤其涉及一种密集平行线结构光三维扫描方法与***。
背景技术
普通的影像建模中,光源是环境光或者白光这种没有经过编码的光源,图像识别完全取决于被拍摄物体本身的特征点,因此匹配一直是影像建模的一个难点。而结构光法的不同在于对投射光源进行了编码,拍摄的是被编码的光源投影到物体上被物体表面的深度调制过的图像。因为结构光光源带有很多的编码特征,可以很方便的进行特征点的匹配,即结构光法主动提供了很多特征点进行匹配,而不再需要使用被摄物体本身具有的特征点,因此可以提供更好的匹配结果。另外,由于普通的影像建模中拍摄物体多种多样,每一次影像匹配都面对不同的图像,需要重新提取特征点;而结构光法投影的是相同的图案,特征是固定的,不需要根据场景的变化而有变化,降低匹配的难度,提高了匹配的效率。
结构光法中最重要的是对于编码的设计和识别,如图1所示,按照编码方式的不同,大致可以分为空间编码、时间编码、时空编码、多波长复合编码、直接编码和线结构光扫描六类。空间编码技术将编码信息隐藏在单帧投影图像空间中;时间编码技术将多个不同的编码图案按时序投射,将对应的编码图像序列组合起来进行解码;时空编码技术融合了时间编码方案和空间编码方案,通过时间编码技术解决编码容量问题,利用空间编码技术解决重建问题;多波长复合编码技术是一种在同一时间,不同波段上获取不同编码信息用于重建的技术;直接编码方法利用投射光线特性(比如颜色变化、灰度变化等),直接为编码图案的每个像素设定一个码字;线结构光扫描技术往被测物体表面投射多道线激光,算法提取图像中线结构特征实现匹配和重建。
多线结构光扫描不进行任何编码,目前多采用互为交叉的两列平行结构光线,通过双相机来区分结构光线,从而完成匹配,如图2所示。多线结构光法的优点是1)不易被物体表面形状、颜色和材质破坏;2)重建需要极其小的图像空间,几何细节恢复能力较强;3)结构光线不容易受到噪声干扰,基本不会互相干扰;4)不需要解码,采用双相机校验,且结构光线有利于高精度提取;5)可以采用结构光线内部点的连接关系提高重建质量。但是目前传统的多线结构光扫描仍具有如下的缺点1)只能采用稀疏的多线结构光,得到稀疏且分布非常不均匀的结构信息;2)必须在物体上贴标志点来辅助定位,不利于设备使用;3)多线交叉位置附近重建的结果不准,需要进行判断和删除,浪费了重建信息。
发明内容
本发明针对传统多线结构光扫描重建结果稀疏、分布不均、需要标志点辅助定位、多线交叉影响重建结果等问题,提供一种密集平行线结构光三维扫描方法,该方法既保留了传统多线结构光的优点,同时又解决了传统多线结构光的问题,包括以下步骤:
S1,设计密集平行线单帧图案;
S2,通过投影仪将预先设计好的单帧密集平行线投射到被测物体表面;
S3,双目相机拍摄经调制的密集平行线图案,进行高精度线提取和分段;
S4,利用双目相机与密集平行线形成的空间平面的相对关系确定分段线段上每个提取点的候选投影仪列号值;
S5,利用同一线段上提取点的投影仪列号的一致性删选候选投影仪列号值;
S6,利用相邻线段列号的连续性验证候选投影仪列号值的有效性;
S7,根据线段上的像点坐标和对应的投影仪列号逐点重建点云。
在以上技术方案的基础上,优选的S1的实施方式为:采用密集平行线图案模式、平行线沿着列方向并列,平行线列间距Grid=8像素,对于1800×1360像素的投影图案,总共产生num=224条平行线。
在以上技术方案的基础上,优选的S2的实施方式为:最终图案光刻得到,然后通过LED投影***投射到物体表面,也可以采用多线激光作为光源,以减少背景光对投影图案采集的影响。
在以上技术方案的基础上,优选的S3具体包括以下步骤:
S31,双目相机从不同角度拍摄经物体调制的平行线图案。以其中一个相机作为左相机,另一个相机作为右相机,其分别采集得到的调制平行线图像记为I1,I2
S32,高斯滤波。采用3×3窗口大小的高斯滤波核模板分别对I1,I2进行滤波操作,得到经过滤波后的影像I1',I2'。
S33,生成二维高斯函数关于列向一阶偏导数卷积核模板。二维高斯函数为
Figure BDA0002446995320000031
其中(x,y)为像点行列坐标值,σ为高斯核的标准差,本发明设为0.75。对二维高斯函数x求一阶偏导得到关于二维高斯函数的列向一阶偏导卷积核模板为/>
Figure BDA0002446995320000032
S34,用一阶偏导数卷积核模板对影像卷积得到梯度影像。用一阶偏导卷积核模板
Figure BDA0002446995320000033
分别对I1',I2'进行卷积操作,得到梯度影像G1,G2
S35,进行峰值检测,并进行列坐标精提取。分配标记矩阵M1,大小与I1'一致,初值设为False,沿着行逐像素搜索,对于左相机I1'上的整像素点P1(x,y),其中(x,y)是其整像素坐标,从滤波影像I1'、梯度影像G1得到P1灰度值为i1,梯度值为g1,P1左右2像素远的点灰度值分别为i-,i+,P1左右1像素远的点梯度值分别为g-,g+,当同时满足下面三个条件时,峰值检测成功,将标记矩阵元素M1(x,y)置为True:①i1大于50;②
Figure BDA0002446995320000034
③g+×g-<0。对于峰值检测成功的点P1(x,y),对其x坐标进行修正得到u,当g+×g1<0时,
Figure BDA0002446995320000035
当g_×g1<0时,/>
Figure BDA0002446995320000036
y坐标无需修正,但记为v,因此可以将I1'检测得到的峰值点记为P1(x,y,u,v),其中(u,v)是其亚像素坐标。设I1'总共检测到p1个峰值点,记为Pi 1(x,y,u,v),0≤i≤p1。同理可以对右相机I2'进行相同操作得到对应的峰值点Pi 2(x,y,u,v),0≤i≤p2及其标记矩阵M2,其中p2为右相机检测到的峰值点个数。/>
S36,检测峰值点的八邻域关系,相邻峰值点构成线段。对于Pi 1(x,y,u,v),0≤i≤p1,分配标记数组B1,数组大小为p1,初值设为True,取Pi 1(x,y,u,v),0≤i≤p1第一个元素P1 1,将此元素所对应的标记数组
Figure BDA0002446995320000037
置为False,根据此元素的整像素坐标(x,y)在标记矩阵M1上搜索其八邻域,如果搜索到八邻域点的M1值为True,将此邻域点信息保存在线段链表L1 1中,并将对应M1值置为False,以此作为新的搜索点,继续搜索,直至没有搜索点,此时得到第一段线段L1 1,线段L1 1的第j个点记为Q1j 1(x,y,u,v),/>
Figure BDA0002446995320000038
其中l1 1为线段L1 1所具有的点个数。重新从Pi 1(x,y,u,v),0≤i≤p1取出标记数组B1为True的元素,将其标记数组B1置为False,从此点开始进行八邻域增长,得到新的新段,此过程不断重复,直至B1所有元素都为False,记此线段数为l1,线段集合L1,第i条线段Li 1的第j个点为Qij 1(x,y,u,v),0≤i≤l1,
Figure BDA0002446995320000041
同理,可以得到Pi 2(x,y,u,v),0≤i≤p2所对应的线段集合为L2,第i条线段Li 2的第j个点为Qij 2(x,y,u,v),0≤i≤l2,/>
Figure BDA0002446995320000042
在以上技术方案的基础上,优选的S4具体包括以下步骤:
S41,根据左相机与投影仪平行线的标定参数,求左相机点与所有平行线的物方交点坐标。对于左相机上提取的线段点Qij 1(x,y,u,v),0≤i≤l1,
Figure BDA0002446995320000043
根据预先标定好的左相机与投影仪平行线的标定参数,采用线面求交的方式,将线段点Qij 1与所有投影仪平行线形成的平面都求交,得到一系列物方坐标点,记为Sijk 1(X,Y,Z),0≤i≤l1,/>
Figure BDA0002446995320000044
0≤k≤num,其中(X,Y,Z)为对应的物方点坐标,k为投影仪平行线的列号编号。对左相机所有线段点都进行此步操作,得到所有左相机的线段点的物方点坐标。
S42,根据右相机标定参数,将物方交点坐标投影到右相机,得到右相机的反投影坐标。根据预先标定好的右相机标定参数,将Sijk 1(X,Y,Z),0≤i≤l1,
Figure BDA0002446995320000045
0≤k≤num反投影到右相机,得到在右相机上像点坐标,记为Tijk 1(u,v),0≤i≤l1,/>
Figure BDA0002446995320000046
0≤k≤num,其中,(u,v)为反投影得到的右相机像方坐标值。对左相机所有线段点都进行此步操作,得到所有左相机的线段点在右相机上的反投影坐标。
S43,反投影坐标与右相机线段的最近距离差在一定阈值范围内,所对应的列号作为左相机点的候选投影仪列号。对于Tijk 1,在右相机线段点Qij 2(x,y,u,v),0≤i≤l2,0≤j≤li 2中寻找距离最近的线段点,并求取Tijk 1到此线段点所在线段的最短像素距离值Dis,当Dis<Thre时,则将k值作为Qij 1的其中一个备选投影仪列号保存,本发明中设Thre=0.5,记Qij 1点的所有候选投影仪列号为CANDij(c1,…,cm)序列,其中m为Qij 1点的候选投影仪列号个数。对左相机所有线段点都进行此步操作,得到所有左相机的线段点的候选投影仪列号序列。
在以上技术方案的基础上,优选的S5的实施方式为:遍历左相机的线段序列,对于第i条线段Li 1,将线段点的候选投影仪列号CANDij(c1,…,cm)序列合并为序列
Figure BDA0002446995320000054
对UCANDi中相同的投影仪列号进行合并和计数,按照列号所具有的统计数进行排序,如果数目最多的列号的统计数大于两倍以上第二多的列号统计数,则将最多的列号值c赋予此线段及其所关联的点,分别记为L1 1(c)和Qij 1(x,y,u,v,c),0≤i≤l1,/>
Figure BDA0002446995320000051
否则删除当前直线;对左相机所有线段都进行此步操作,得到所有左相机的线段的列号值。
在以上技术方案的基础上,优选的S6的实施方式为:采用行扫描方法,对每条线段都分配一个统计数组R,大小l1,对同一行上的点Qij 1(x,y,u,v,c),0≤i≤l1,
Figure BDA0002446995320000052
进行列坐标排序,判断这些点的列号序列是否是按照顺序排列的,如果判断存在突变点,则说明此点所在的线段Li 1(c)的列号值有误,其对应的统计数组值R累加1。对左影像的所有行完成扫描后,对第i条线段,判断此线段的线段点个数li 1与此线段的R的比值,当比值小于4时,舍弃此条线段,否则保留。
在以上技术方案的基础上,优选的S7的实施方式为:对于提取得到的左影像线段点Qij 1(x,y,u,v,c),0≤i≤l1,
Figure BDA0002446995320000053
根据预先标定好的左相机和投影仪的标定参数,利用影像点的像点亚像素坐标(u,v)和投影仪的列号c,采用线面求交的方法,交会出物方点坐标,完成单帧影像的点云重建。
而且,本发明还提供一种密集平行线结构光三维扫描***,用于上述密集平行线结构光三维扫描方法。
本发明一种密集平行线结构光三维扫描方法与***,相对于现有技术具有以下有益效果:
1)采用密集平行线结构光,得到密集且分布均匀的结构信息;
2)可以采用几何特征进行定位,解决传统方法依赖标志点定位的问题;
3)采用平行线结构光,不存在线交叉处对重建结果的判断和影响。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为结构光法分类示意图;
图2为多线结构光扫描图案示意图;
图3为本发明一种密集平行线结构光三维扫描方法流程图;
图4为密集平行线局部示意图;
图5为设计的单帧图案示意图;
图6为平行线图案高精度提取与分段流程图;
图7为线段点候选投影仪列号获取流程图。
具体实施方式
以下结合附图和实施例详细说明本发明的技术方案,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅仅是本发明一部分实施方式,而不是全部的实施方式。基于本发明中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。
本发明针对传统多线结构光扫描重建结果稀疏、分布不均、需要标志点辅助定位、多线交叉影响重建结果等问题,提供一种密集平行线结构光三维扫描方法,该方法既保留了传统多线结构光的优点,同时又解决了传统多线结构光的问题,如图3所示,包括以下步骤:
S1,设计密集平行线单帧图案。相较于传统多线交叉的图案模式,本发明采用密集平行线图案模式、平行线沿着列方向并列,避免了多线交叉位置附近重建的结果不准的问题。在设计密集平行线时候,本发明采用平行线列间距Grid=8像素,对于1800×1360像素的投影图案,总共可以产生num=224条平行线,是传统多线交叉结构光2×7=14根线模式容量的16倍。如图4所示为密集平行线单帧图案的局部示意图。
S2,通过投影仪将预先设计好的单帧密集平行线投射到被测物体表面。如图5所示,将最终图案光刻得到,然后通过LED投影***投射到物体表面,也可以采用多线激光作为光源,以减少背景光对投影图案采集的影响。
S3,双目相机拍摄经调制的密集平行线图案,进行高精度线提取和分段。具体流程如图6所示。
S31,双目相机从不同角度拍摄经物体调制的平行线图案。以其中一个相机作为左相机,另一个相机作为右相机,其分别采集得到的调制平行线图像记为I1,I2
S32,高斯滤波。采用3×3窗口大小的高斯滤波核模板分别对I1,I2进行滤波操作,得到经过滤波后的影像I1',I2'。
S33,生成二维高斯函数关于列向一阶偏导数卷积核模板。二维高斯函数为
Figure BDA0002446995320000071
其中(x,y)为像点行列坐标值,σ为高斯核的标准差,本发明设为0.75;对二维高斯函数x求一阶偏导得到关于二维高斯函数的列向一阶偏导卷积核模板为/>
Figure BDA0002446995320000072
S34,用一阶偏导数卷积核模板对影像卷积得到梯度影像。用一阶偏导卷积核模板
Figure BDA0002446995320000073
分别对I1',I2'进行卷积操作,得到梯度影像G1,G2
S35,进行峰值检测,并进行列坐标精提取。分配标记矩阵M1,大小与I1'一致,初值设为False,沿着行逐像素搜索,对于左相机I1'上的整像素点P1(x,y),其中(x,y)是其整像素坐标,从滤波影像I1'、梯度影像G1得到P1灰度值为i1,梯度值为g1,P1左右2像素远的点灰度值分别为i-,i+,P1左右1像素远的点梯度值分别为g-,g+,当同时满足下面三个条件时,峰值检测成功,将标记矩阵元素M1(x,y)置为True:①i1大于50;②
Figure BDA0002446995320000074
③g+×g-<0。对于峰值检测成功的点P1(x,y),对其x坐标进行修正得到u,当g+×g1<0时,
Figure BDA0002446995320000075
当g-×g1<0时,/>
Figure BDA0002446995320000076
y坐标无需修正,但记为v,因此可以将I1'检测得到的峰值点记为P1(x,y,u,v),其中(u,v)是其亚像素坐标。设I1'总共检测到p1个峰值点,记为Pi 1(x,y,u,v),0≤i≤p1。同理可以对右相机I2'进行相同操作得到对应的峰值点Pi 2(x,y,u,v),0≤i≤p2及其标记矩阵M2,其中p2为右相机检测到的峰值点个数。/>
S36,检测峰值点的八邻域关系,相邻峰值点构成线段。对于Pi 1(x,y,u,v),0≤i≤p1,分配标记数组B1,数组大小为p1,初值设为True,取Pi 1(x,y,u,v),0≤i≤p1第一个元素P1 1,将此元素所对应的标记数组B1 1置为False,根据此元素的整像素坐标(x,y)在标记矩阵M1上搜索其八邻域,如果搜索到八邻域点的M1值为True,说明存在连接关系,将此邻域点信息保存在线段链表L1 1中,并将对应M1值置为False,以此作为新的搜索点,继续搜索,直至没有搜索点,此时得到第一段线段L1 1,线段L1 1的第j个点记为Q1j 1(x,y,u,v),
Figure BDA0002446995320000081
其中l1 1为线段L1 1所具有的点个数。重新从Pi 1(x,y,u,v),0≤i≤p1取出标记数组B1为True的元素,将其标记数组B1置为False,从此点开始进行八邻域增长,得到新的新段,此过程不断重复,直至B1所有元素都为False,此时记得到的线段数为l1,线段集合L1,第i条线段Li 1的第j个点为Qij 1(x,y,u,v),0≤i≤l1,/>
Figure BDA0002446995320000082
同理,可以得到Pi 2(x,y,u,v),0≤i≤p2所对应的线段集合为L2,第i条线段Li 2的第j个点为Qij 2(x,y,u,v),0≤i≤l2,/>
Figure BDA0002446995320000083
S4,利用双目相机与密集平行线形成的空间平面的相对关系确定分段线段上每个提取点的候选投影仪列号值。具体流程如图7所示。
S41,根据左相机与投影仪平行线的标定参数,求左相机点与所有平行线的物方交点坐标。对于左相机上提取的线段点Qij 1(x,y,u,v),0≤i≤l1,
Figure BDA0002446995320000084
根据预先标定好的左相机与投影仪平行线的标定参数,采用线面求交的方式,将线段点Qij 1与所有投影仪平行线形成的平面都求交,得到一系列物方坐标点,记为Sijk 1(X,Y,Z),0≤i≤l1,/>
Figure BDA0002446995320000085
0≤k≤num,其中(X,Y,Z)为对应的物方点坐标,k为投影仪平行线的列号编号。对左相机所有线段点都进行此步操作,得到所有左相机的线段点的物方点坐标。
S42,根据右相机标定参数,将物方交点坐标投影到右相机,得到右相机的反投影坐标。根据预先标定好的右相机标定参数,将Sijk 1(X,Y,Z),0≤i≤l1,
Figure BDA0002446995320000086
0≤k≤num反投影到右相机,得到在右相机上像点坐标,记为Tijk 1(u,v),0≤i≤l1,/>
Figure BDA0002446995320000087
0≤k≤num,其中,(u,v)为反投影得到的右相机像方坐标值。对左相机所有线段点都进行此步操作,得到所有左相机的线段点在右相机上的反投影坐标。
S43,反投影坐标与右相机线段的最近距离差在一定阈值范围内,所对应的列号作为左相机点的候选投影仪列号。对于Tijk 1,在右相机线段点Qij 2(x,y,u,v),0≤i≤l2,0≤j≤li 2中寻找距离最近的线段点,并求取Tijk 1到此线段点所在线段的最短像素距离值Dis,当Dis<Thre时,则将k值作为Qij 1的其中一个备选投影仪列号保存,本发明中设Thre=0.5,记Qij 1点的所有候选投影仪列号为CANDij(c1,…,cm)序列,其中m为Qij 1点的候选投影仪列号个数。对左相机所有线段点都进行此步操作,得到所有左相机的线段点的候选投影仪列号序列。
S5,利用同一线段上提取点的投影仪列号的一致性删选候选投影仪列号值。由于同一线段上的提取点投影仪列号是一致的,所以遍历左相机的线段序列,对于第i条线段Li 1,将线段点的候选投影仪列号CANDij(c1,…,cm)序列合并为序列
Figure BDA0002446995320000091
对UCANDi中相同的投影仪列号进行合并和计数,按照列号所具有的统计数进行排序,如果数目最多的列号的统计数大于两倍以上第二多的列号统计数,则将最多的列号值c赋予此线段及其所关联的点,分别记为L1 1(c)和Qij 1(x,y,u,v,c),0≤i≤l1,/>
Figure BDA0002446995320000092
否则删除当前直线。对左相机所有线段都进行此步操作,得到所有左相机的线段的列号值。
S6,利用相邻线段列号的连续性验证候选投影仪列号值的有效性。相邻线段左右排列时具有列号的连续性,此连续性不会因为不同的视差而改变,因此,采用行扫描方法,对每条线段都分配一个统计数组R,大小l1,对同一行上的点Qij 1(x,y,u,v,c),0≤i≤l1,
Figure BDA0002446995320000093
进行列坐标排序,判断这些点的列号序列是否是按照顺序排列的,如果判断存在突变点,则说明此点所在的线段Li 1(c)的列号值有误,其对应的统计数组值R累加1。对左影像的所有行完成扫描后,对第i条线段,判断此线段的线段点个数li 1与此线段的R的比值,当比值小于4时,舍弃此条线段,否则保留。
S7,根据线段上的像点坐标和对应的投影仪列号逐点重建点云。对于提取得到的左影像线段点Qij 1(x,y,u,v,c),0≤i≤l1,
Figure BDA0002446995320000094
根据预先标定好的左相机和投影仪的标定参数,利用影像点的像点亚像素坐标(u,v)和投影仪的列号c,采用线面求交的方法,交会出物方点坐标,完成单帧影像的点云重建。
从上述实施步骤可以看出,较传统方法,本发明拥有如下显著优势:
1)采用密集平行线结构光,得到密集且分布均匀的结构信息;
2)可以采用几何特征进行定位,解决传统方法依赖标志点定位的问题;
3)采用平行线结构光,不存在线交叉处对重建结果的判断和影响。
另外,本发明既适用于双相机结构光三维测量***,也适用于多相机结构光三维测量***。具体实施时,以上流程可采用计算机软件方式实现自动运行,运行本方法的***装置也应当在保护范围内。
本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。

Claims (7)

1.一种密集平行线结构光三维扫描方法,其特征在于,密集平行线结构光三维扫描方法包括以下步骤:
S1,设计密集平行线单帧图案;
S2,通过投影仪将预先设计好的单帧密集平行线投射到被测物体表面;
S3,双目相机拍摄经调制的密集平行线图案,进行高精度线提取和分段,具体包括如下步骤:
S31,双目相机从不同角度拍摄经物体调制的平行线图案;以其中一个相机作为左相机,另一个相机作为右相机,分别采集得到的调制平行线图像记为I1,I2
S32,高斯滤波;采用3×3窗口大小的高斯滤波核模板分别对I1,I2进行滤波操作,得到经过滤波后的影像I1',I2';
S33,生成二维高斯函数关于列向一阶偏导数卷积核模板;二维高斯函数为
Figure FDA0004065798420000011
其中(x,y)为像点行列坐标值,σ为高斯核的标准差,对二维高斯函数x求一阶偏导得到关于二维高斯函数的列向一阶偏导卷积核模板为/>
Figure FDA0004065798420000012
S34,用一阶偏导数卷积核模板对影像卷积得到梯度影像;用一阶偏导卷积核模板
Figure FDA0004065798420000013
分别对I1',I2'进行卷积操作,得到梯度影像G1,G2
S35,进行峰值检测,并进行列坐标精提取;分配标记矩阵M1,大小与I1'一致,初值设为False,沿着行逐像素搜索,对于左相机I1'上的整像素点P1(x,y),其中(x,y)是其整像素坐标,从滤波影像I1'、梯度影像G1得到P1灰度值为i1,梯度值为g1,P1左右2像素远的点灰度值分别为i-,i+,P1左右1像素远的点梯度值分别为g-,g+,当同时满足下面三个条件时,峰值检测成功,将标记矩阵元素M1(x,y)置为True:①i1大于50;②
Figure FDA0004065798420000014
③g+×g-<0;对于峰值检测成功的点P1(x,y),对其x坐标进行修正得到u,当g+×g1<0时,
Figure FDA0004065798420000021
当g-×g1<0时,/>
Figure FDA0004065798420000022
y坐标无需修正,但记为v,因此可以将I1'检测得到的峰值点记为P1(x,y,u,v),其中(u,v)是其亚像素坐标;设I1'总共检测到p1个峰值点,记为Pi 1(x,y,u,v),0≤i≤p1;同理可以对右相机I2'进行相同操作得到对应的峰值点Pi 2(x,y,u,v),0≤i≤p2及其标记矩阵M2,其中p2为右相机检测到的峰值点个数;
S36,检测峰值点的八邻域关系,相邻峰值点构成线段;对于Pi 1(x,y,u,v),0≤i≤p1,分配标记数组B1,数组大小为p1,初值设为True,取Pi 1(x,y,u,v),0≤i≤p1第一个元素P1 1,将此元素所对应的标记数组
Figure FDA0004065798420000023
置为False,根据此元素的整像素坐标(x,y)在标记矩阵M1上搜索其八邻域,如果搜索到八邻域点的M1值为True,将此邻域点信息保存在线段链表L1 1中,并将对应M1值置为False,以此作为新的搜索点,继续搜索,直至没有搜索点,此时得到第一段线段L1 1,线段L1 1的第j个点记为Q1j 1(x,y,u,v),/>
Figure FDA0004065798420000024
其中l1 1为线段L1 1所具有的点个数;重新从Pi 1(x,y,u,v),0≤i≤p1取出标记数组B1为True的元素,将其标记数组B1置为False,从此点开始进行八邻域增长,得到新的新段,此过程不断重复,直至B1所有元素都为False,记此线段数为l1,线段集合L1,第i条线段Li 1的第j个点为Qij 1(x,y,u,v),0≤i≤l1,
Figure FDA0004065798420000025
同理,可以得到Pi 2(x,y,u,v),0≤i≤p2所对应的线段集合为L2,第i条线段Li 2的第j个点为Qij 2(x,y,u,v),0≤i≤l2,/>
Figure FDA0004065798420000026
S4,利用双目相机与密集平行线形成的空间平面的相对关系确定分段线段上每个提取点的候选投影仪列号值;
S5,利用同一线段上提取点的投影仪列号的一致性删选候选投影仪列号值;
S6,利用相邻线段列号的连续性验证候选投影仪列号值的有效性;
S7,根据线段上的像点坐标和对应的投影仪列号逐点重建点云。
2.如权利要求1所述的一种密集平行线结构光三维扫描方法,其特征在于,所述S1的实施方式为:采用密集平行线图案模式、平行线沿着列方向并列,平行线列间距Grid=8像素,对于1800×1360像素的投影图案,总共产生num=224条平行线。
3.如权利要求1所述的一种密集平行线结构光三维扫描方法,其特征在于,所述S2的实施方式为:将最终图案光刻得到,然后通过LED投影***投射到物体表面,也可以采用多线激光作为光源,以减少背景光对投影图案采集的影响。
4.如权利要求1所述的一种密集平行线结构光三维扫描方法,其特征在于,所述S4的实施方式如下:
S41,根据左相机与投影仪平行线的标定参数,求左相机点与所有平行线的物方交点坐标;对于左相机上提取的线段点Qij 1(x,y,u,v),0≤i≤l1,
Figure FDA0004065798420000031
根据预先标定好的左相机与投影仪平行线的标定参数,采用线面求交的方式,将线段点Qij 1与所有投影仪平行线形成的平面都求交,得到一系列物方坐标点,记为Sijk 1(X,Y,Z),0≤i≤l1,/>
Figure FDA0004065798420000032
0≤k≤num,其中(X,Y,Z)为对应的物方点坐标,k为投影仪平行线的列号编号;对左相机所有线段点都进行此步操作,得到所有左相机的线段点的物方点坐标;
S42,根据右相机标定参数,将物方交点坐标投影到右相机,得到右相机的反投影坐标;根据预先标定好的右相机标定参数,将Sijk 1(X,Y,Z),0≤i≤l1,
Figure FDA0004065798420000033
0≤k≤num反投影到右相机,得到在右相机上像点坐标,记为Tijk 1(u,v),0≤i≤l1,/>
Figure FDA0004065798420000034
0≤k≤num,其中,(u,v)为反投影得到的右相机像方坐标值;对左相机所有线段点都进行此步操作,得到所有左相机的线段点在右相机上的反投影坐标;
S43,反投影坐标与右相机线段的最近距离差在一定阈值范围内,所对应的列号作为左相机点的候选投影仪列号;对于Tijk 1,在右相机线段点Qij 2(x,y,u,v),0≤i≤l2,
Figure FDA0004065798420000035
中寻找距离最近的线段点,并求取Tijk 1到此线段点所在线段的最短像素距离值Dis,当Dis<Thre时,则将k值作为Qij 1的其中一个备选投影仪列号保存,记Qij 1点的所有候选投影仪列号为CANDij(c1,…,cm)序列,其中m为Qij 1点的候选投影仪列号个数;对左相机所有线段点都进行此步操作,得到所有左相机的线段点的候选投影仪列号序列。
5.如权利要求1所述的一种密集平行线结构光三维扫描方法,其特征在于,所述S5的实施方式为:遍历左相机的线段序列,对于第i条线段Li 1,将线段点的候选投影仪列号CANDij(c1,…,cm)序列合并为序列
Figure FDA0004065798420000036
对UCANDi中相同的投影仪列号进行合并和计数,按照列号所具有的统计数进行排序,如果数目最多的列号的统计数大于两倍以上第二多的列号统计数,则将最多的列号值c赋予此线段及其所关联的点,分别记为L1 1(c)和Qij 1(x,y,u,v,c),0≤i≤l1,/>
Figure FDA0004065798420000041
否则删除当前直线;对左相机所有线段都进行此步操作,得到所有左相机的线段的列号值。
6.如权利要求1所述的一种密集平行线结构光三维扫描方法,其特征在于,所述S6的实施方式为:采用行扫描方法,对每条线段都分配一个统计数组R,大小l1,对同一行上的点Qij 1(x,y,u,v,c),0≤i≤l1,
Figure FDA0004065798420000042
进行列坐标排序,判断这些点的列号序列是否是按照顺序排列的,如果判断存在突变点,则说明此点所在的线段Li 1(c)的列号值有误,其对应的统计数组值R累加1;对左影像的所有行完成扫描后,对第i条线段,判断此线段的线段点个数li 1与此线段的R的比值,当比值小于4时,舍弃此条线段,否则保留。
7.如权利要求1所述的一种密集平行线结构光三维扫描方法,其特征在于,所述S7的实施方式为:对于提取得到的左影像线段点Qij 1(x,y,u,v,c),0≤i≤l1,
Figure FDA0004065798420000043
根据预先标定好的左相机和投影仪的标定参数,利用影像点的像点亚像素坐标(u,v)和投影仪的列号c,采用线面求交的方法,交会出物方点坐标,完成单帧影像的点云重建。/>
CN202010282081.4A 2020-04-11 2020-04-11 一种密集平行线结构光三维扫描方法与*** Active CN111307069B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010282081.4A CN111307069B (zh) 2020-04-11 2020-04-11 一种密集平行线结构光三维扫描方法与***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010282081.4A CN111307069B (zh) 2020-04-11 2020-04-11 一种密集平行线结构光三维扫描方法与***

Publications (2)

Publication Number Publication Date
CN111307069A CN111307069A (zh) 2020-06-19
CN111307069B true CN111307069B (zh) 2023-06-02

Family

ID=71152050

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010282081.4A Active CN111307069B (zh) 2020-04-11 2020-04-11 一种密集平行线结构光三维扫描方法与***

Country Status (1)

Country Link
CN (1) CN111307069B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112833816A (zh) * 2020-12-31 2021-05-25 武汉中观自动化科技有限公司 一种标志点定位与智能反向定位混合的定位方法和***

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10812694B2 (en) * 2013-08-21 2020-10-20 Faro Technologies, Inc. Real-time inspection guidance of triangulation scanner
CN103796004B (zh) * 2014-02-13 2015-09-30 西安交通大学 一种主动结构光的双目深度感知方法
CN106524943B (zh) * 2016-11-10 2019-12-10 华南理工大学 一种双旋转激光的三维重构装置及方法
CA3022442C (en) * 2017-10-24 2019-08-27 Shining 3D Tech Co., Ltd. Three-dimensional reconstruction method and device based on monocular three-dimensional scanning system

Also Published As

Publication number Publication date
CN111307069A (zh) 2020-06-19

Similar Documents

Publication Publication Date Title
US10902668B2 (en) 3D geometric modeling and 3D video content creation
EP2568253B1 (en) Structured-light measuring method and system
CN104574393B (zh) 一种三维路面裂缝图像生成***和方法
CN104021588B (zh) 一种实时恢复车辆三维真实模型的***及方法
EP3382645B1 (en) Method for generation of a 3d model based on structure from motion and photometric stereo of 2d sparse images
CN110580481B (zh) 一种基于epi的光场图像关键位置检测方法
CN109559324A (zh) 一种线阵图像中的目标轮廓检测方法
CN111046843A (zh) 一种智能驾驶环境下的单目测距方法
CN112489193B (zh) 一种基于结构光的三维重建方法
CN110533774A (zh) 一种基于智能手机的三维模型重建方法
CN111968079B (zh) 基于断面局部极值及分段稀疏的三维路面裂缝提取方法
CN111307069B (zh) 一种密集平行线结构光三维扫描方法与***
US20130287293A1 (en) Active Lighting For Stereo Reconstruction Of Edges
CN115330684A (zh) 基于双目视觉与线结构光的水下构筑物表观缺陷检测方法
CN116758163B (zh) 光学信息提取方法及装置、球形显示屏校正方法及装置
Teixeira et al. Epipolar based light field key-location detector
CN110363806B (zh) 一种利用不可见光投射特征进行三维空间建模的方法
CN115880643B (zh) 一种基于目标检测算法的社交距离监测方法和装置
CN111738936A (zh) 基于图像处理的多株水稻穗长的测量方法
CN116597016A (zh) 一种光纤内窥镜图像标定方法
JPH05215547A (ja) ステレオ画像間対応点決定方法
CN116934826A (zh) 一种基于自定义窗口迭代的多线激光条纹聚类及匹配的方法
CN109458929A (zh) 一种圆筒测量现场快速标定装置及方法
KR102217215B1 (ko) 스케일바를 이용한 3차원 모델 제작 서버 및 방법
CN113689397A (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
GR01 Patent grant
GR01 Patent grant