CN109993826B - 一种结构光三维图像重建方法、设备及系统 - Google Patents
一种结构光三维图像重建方法、设备及系统 Download PDFInfo
- Publication number
- CN109993826B CN109993826B CN201910232488.3A CN201910232488A CN109993826B CN 109993826 B CN109993826 B CN 109993826B CN 201910232488 A CN201910232488 A CN 201910232488A CN 109993826 B CN109993826 B CN 109993826B
- Authority
- CN
- China
- Prior art keywords
- coding
- image
- pattern
- module
- dimensional
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
Abstract
本发明提供了一种结构光三维图像重建方法、结构光三维图像重建系统、计算机设备以及计算机可读存储介质,涉及图像处理技术领域。其中,结构光三维图像重建系统包括:编码图案设计模块,用于设计编码图案;图案逆校正模块,用于根据基础矩阵对所述编码图案进行逆校正,得到参考编码图案;图案极线校正模块,用于根据所述参考编码图案进行极线校正,得到校正图像对;三维重建模块,用于根据所述校正图像对进行三维重建。本发明解决了非平行结构的“投影机+相机”立体视觉系统编码方向和解码方向不一致的难题,实现具有小窗口特性的高密度编码方案,通过沿图像的行方向进行解码,提高了解码的速度、准确度和鲁棒性。
Description
技术领域
本发明关于图像处理技术领域,特别是关于三维图像的重建技术,具体的讲是一种结构光三维图像重建方法、结构光三维图像重建系统、计算机设备以及计算机可读存储介质。
背景技术
本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
结构光技术通过主动控制光源来实现三维重建,具有非接触、高速度、高精度、大数据量、大工作距离、材料适用范围广等特点,与其他三维扫描技术相比具有诸多优点及更高的可靠度,发展潜力巨大。目前在工业自动检测、3D打印、影视特效制作、虚拟现实及文物仿形等领域已经得到了广泛的应用。
编码图案的设计是结构光技术的前提和基础,根据编码策略的不同,主要分为时间编码和空间编码。时间编码法将编码图像连续地投影到物体表面,根据投影图像的时间顺序进行编码,具有测量精度较高、测量分辨率高的优点,但其测量速度较慢,因此适合于静态目标和场景的三维信息获取。空间编码仅需投影一幅编码图案,其编码信息由空间编码特征或其不同的排列组合来生成,编码和解码过程均可在单幅图像内完成,因此测量速度快,实时性好适合于动态目标和场景的三维信息获取。相比较而言,空间编码较时间编码更具实时性。目前空间编码常采用颜色或亮度信息作为编码元素,但两者易受物体表面纹理、颜色等的干扰,鲁棒性较差。
在现有的空间编码技术中,最常用的编码策略是M阵列或PM(perfect maps),两者独特的数学特性保证了局部码字在整个编码阵列中的唯一性,是单张图像中码字唯一性匹配的重要前提。然而,在M阵列或PM编码策略中,编码密度,编码元素数量和编码窗口大小三者之间存在相互制约的矛盾。根据现有的空间编码理论,编码密度、编码元素数量和编码窗口大小三者之间存在相互制约的矛盾。要实现高密度的编码,一般采用如下两种方式:
(1)采用较小的编码窗口
这种方案要求采用更多的编码元素,增加了元素识别和解码的难度。
(2)采用较少的编码元素
这种方案要求采用更大的编码窗口以保证局部编码的唯一性,然而编码窗口增大会降低解码的准确度和鲁棒性,同时场景中的遮挡和不连续等均会造成码字中断,导致相关区域内解码的不准确。
因此,如何提供一种新的结构光三维重建技术,其能够采用尽可能少的编码元素,生成具有小窗口编码特性的高密度编码图案是本领域亟待解决的技术难题。
发明内容
有鉴于此,本发明实施例提供了一种结构光三维图像重建方法、结构光三维图像重建系统、计算机设备以及计算机可读存储介质,通过一种极线逆校正方法,解决了非平行结构的“投影机+相机”立体视觉系统编码方向和解码方向不一致的难题;通过沿图像的行方向采用较少的编码元素进行编码,实现具有小窗口特性的高密度编码方案,通过沿图像的行方向进行解码,提高了解码的速度、准确度和鲁棒性,通过定义编码图案的行数实现总编码容量的可调控。
本发明的目的之一是,提供一种结构光三维图像重建方法,包括:
设计编码图案;
根据基础矩阵对所述编码图案进行逆校正,得到参考编码图案;
根据所述参考编码图案进行极线校正,得到校正图像对;
根据所述校正图像对进行三维重建。
在本发明的优选实施方式中,设计编码图案包括:
获取预先设定的编码图形以及编码窗口;
根据所述编码图像确定编码元素;
根据所述编码窗口以及编码元素基于排列组合原理得到编码序列;
根据测量范围定义所述编码序列的行数;
根据所述行数得到编码图案。
在本发明的优选实施方式中,根据基础矩阵对所述编码图案进行逆校正,得到参考编码图案包括:
标定投影仪和相机的内部参数以及外部参数;
根据所述内部参数以及外部参数确定投影仪图像平面和相机图像平面之间的基础矩阵;
根据所述基础矩阵对所述编码图像进行极线逆校正,得到参考编码图案。
在本发明的优选实施方式中,根据所述参考编码图案进行极线校正,得到校正图像对包括:
将所述参考编码图案作为立体图像中的左图像;
投射所述左图像至待测的物体表面,通过相机采集得到立体图像中的右图像;
根据所述基础矩阵对所述左图像以及右图像进行极线校正,得到极线校正后的左图像以及右图像,所述左图像以及右图像构成校正图像对。
在本发明的优选实施方式中,根据所述校正图像对进行三维重建包括:
沿图像水平方向进行解码;
对所述左图像以及右图像沿行方向进行特征提取和识别,确定出码字并实现匹配;
根据立体标定结果对匹配的特征进行三维重建,得到被测对象表面的三维数据,所述立体标定结果是通过标定投影仪和相机得到的。
本发明的目的之一是,提供一种结构光三维图像重建系统,包括:
编码图案设计模块,用于设计编码图案;
图案逆校正模块,用于根据基础矩阵对所述编码图案进行逆校正,得到参考编码图案;
图案极线校正模块,用于根据所述参考编码图案进行极线校正,得到校正图像对;
三维重建模块,用于根据所述校正图像对进行三维重建。
在本发明的优选实施方式中,所述编码图案设计模块包括:
预设信息获取模块,用于获取预先设定的编码图形以及编码窗口;
编码元素确定模块,用于据所述编码图像确定编码元素;
编码序列确定模块,用于根据所述编码窗口以及编码元素基于排列组合原理得到编码序列;
序列行数定义模块,用于根据测量范围定义所述编码序列的行数;
编码图案确定模块,用于根据所述行数得到编码图案。
在本发明的优选实施方式中,所述图案逆校正模块包括:
参数标定模块,用于标定投影仪和相机的内部参数以及外部参数;
基础矩阵确定模块,用于根据所述内部参数以及外部参数确定投影仪图像平面和相机图像平面之间的基础矩阵;
极线逆校正模块,用于根据所述基础矩阵对所述编码图像进行极线逆校正,得到参考编码图案。
在本发明的优选实施方式中,所述图案极线校正模块包括:
左图像确定模块,用于将所述参考编码图案作为立体图像中的左图像;
右图像确定模块,用于投射所述左图像至待测的物体表面,通过相机采集得到立体图像中的右图像;
校正图像对确定模块,用于根据所述基础矩阵对所述左图像以及右图像进行极线校正,得到极线校正后的左图像以及右图像,所述左图像以及右图像构成校正图像对。
在本发明的优选实施方式中,所述三维重建模块包括:
解码模块,用于沿图像水平方向进行解码;
码字确定模块,用于对所述左图像以及右图像沿行方向进行特征提取和识别,确定出码字并实现匹配;
三维数据确定模块,用于根据立体标定结果对匹配的特征进行三维重建,得到被测对象表面的三维数据,所述立体标定结果是通过标定投影仪和相机得到的。
本发明的目的之一是,提供一种计算机设备,包括:适于实现各指令的处理器以及存储设备,所述存储设备存储有多条指令,所述指令适于由处理器加载并执行一种结构光三维图像重建方法。
本发明的目的之一是,提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序用于执行一种结构光三维图像重建方法。
本发明的有益效果在于,提供了一种结构光三维图像重建方法、结构光三维图像重建系统、计算机设备以及计算机可读存储介质,通过一种极线逆校正方法,解决了非平行结构的“投影机+相机”立体视觉系统编码方向和解码方向不一致的难题;通过沿图像的行方向采用较少的编码元素进行编码,实现具有小窗口特性的高密度编码方案,通过沿图像的行方向进行解码,提高了解码的速度、准确度和鲁棒性,通过定义编码图案的行数实现总编码容量的可调控。
为让本发明的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种结构光三维图像重建系统的实施原理示意图;
图2为本发明提供的具体实施例中8种基本的编码元素示意图;
图3为本发明提供的具体实施例中编码窗口为1×3、行数定义为100的编码图案示意图;
图4(a)为投射水平编码图案示意图;
图4(b)为相机采集到的编码图案示意图;
图4(c)为解码途径一极线校正后沿水平极线解码示意图;
图4(d)为解码途径二不进行极线校正直接沿极线后解码示意图;
图5(a)至图5(f)为本发明提出的基于极线逆校正的编解码方案示意图;
图6(a)至图6(c)为本发明的解码步骤示意图;
图7为本发明实施例提供的一种结构光三维图像重建系统的结构示意图;
图8为本发明实施例提供的一种结构光三维图像重建系统中编码图案设计模块的结构示意图;
图9为本发明实施例提供的一种结构光三维图像重建系统中图案逆校正模块的结构示意图;
图10为本发明实施例提供的一种结构光三维图像重建系统中图案极线校正模块的结构示意图;
图11为本发明实施例提供的一种结构光三维图像重建系统中三维重建模块的结构示意图;
图12为本发明实施例提供的一种结构光三维图像重建方法的流程示意图;
图13为图12中的步骤S101的具体流程示意图;
图14为图12中的步骤S102的具体流程示意图;
图15为图12中的步骤S103的具体流程示意图;
图16为图12中的步骤S104的具体流程示意图。
具体实施方式
下面将结合附图,对本发明实施例中的技术方案进行清楚、完整地描述参考在附图中示出并在以下描述中详述的非限制性示例实施例,更加全面地说明本发明的示例实施例和它们的多种特征及有利细节。应注意的是,图中示出的特征不是必须按照比例绘制。本发明省略了已知材料、组件和工艺技术的描述,从而不使本发明的示例实施例模糊。所给出的示例仅旨在有利于理解本发明示例实施例的实施,以及进一步使本领域技术人员能够实施示例实施例。因而,这些示例不应被理解为对本发明的实施例的范围的限制。
除非另外特别定义,本发明使用的技术术语或者科学术语应当为本发明所属领域内具有一般技能的人士所理解的通常意义。本发明中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。此外,在本发明各个实施例中,相同或类似的参考标号表示相同或类似的构件。
在实际的“投影仪+相机”立体视觉系统配置中,很难保证投影仪成像平面和相机成像平面绝对平行,大部分情况下为非平行立体结构,若投影仪投射沿图像行方向水平编码的图案,则相机获取的匹配图像往往无法保证水平(如图4(a)、图4(b)所示)。在这种情况下第一种匹配方案是将投影仪投射的编码图案(参考图像)和相机采集到的编码图案(匹配图像)进行极线校正,沿水平极线进行解码、匹配,如图4(c)所示,第二种匹配方案是不进行极线校正,直接在匹配图像中沿极线搜索对应的匹配模块,如图4(d)所示。然而,这两种方案均存在解码方向并非沿着编码方向进行的问题,造成解码难度上升。
基于此,本发明提出了一种适用于任意结构(平行或非平行)“投影仪+相机”立体系统的编码密度可调结构光三维重建方案,如图1所示,通过一种极线逆校正方法,解决了非平行结构的“投影机+相机”立体视觉系统编码方向和解码方向不一致的难题;通过沿图像的行方向采用较少的编码元素进行编码,实现具有小窗口特性的高密度编码方案;通过沿图像的行方向进行解码,提高了解码的速度、准确度和鲁棒性;通过定义编码图案的行数实现总编码容量的可调控。
下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。图7为本发明实施例提供的一种结构光三维图像重建系统的结构示意图,请参见图7,所述结构光三维图像重建系统包括:
编码图案设计模块100,用于设计编码图案。在本发明中,采用少量编码元素以降低解码难度,为了得到高编码密度,设置尽可能小的编码窗口。
图案逆校正模块200,用于根据基础矩阵对所述编码图案进行逆校正,得到参考编码图案;
图案极线校正模块300,用于根据所述参考编码图案进行极线校正,得到校正图像对;
三维重建模块400,用于根据所述校正图像对进行三维重建。
图8为编码图案设计模块100的结构示意图,请参阅图8,编码图案设计模块100包括:
预设信息获取模块101,用于获取预先设定的编码图形以及编码窗口。
在本发明的一种实施方式中,诸如编码图形为L型,将L型旋转不同的角度得到4种不同的编码图形。
为了得到高编码密度,本发明设置尽可能小的编码窗口,诸如在本发明的一个实施例中,编码窗口为1×3。
需要指出的是,本发明提出的编码密度可调的单张结构光三维重建方案并不仅限于此处提及的L型编码元素,可以轻易拓展应用于任何几何编码图形和颜色、亮度编码结构光。
编码元素确定模块102,用于据所述编码图像确定编码元素。
采用少量编码元素可以降低解码难度。诸如在本发明的一个实施例中,将L型旋转不同的角度得到4种不同的图形,将之分别镶嵌于黑白模块中,从而得到8种基本的编码元素,如图2所示。
编码序列确定模块103,用于根据所述编码窗口以及编码元素基于排列组合原理得到编码序列;
序列行数定义模块104,用于根据测量范围定义所述编码序列的行数;
编码图案确定模块105,用于根据所述行数得到编码图案。
在本发明的一个实施例中,以1×3的编码窗口为例,根据排列组合原理得到具有1×3窗口唯一特性的编码序列,结合8种基本编码元素,可得到长度为65的编码序列。根据实际测量需求定义编码序列的行数,以行数等于100为例,可以得到如图3所示编码图案。
图9为图案逆校正模块200的结构示意图,请参阅图9,图案逆校正模块200包括:
参数标定模块201,用于标定投影仪和相机的内部参数以及外部参数。在本发明的一个实施例中,可利用棋盘法标定投影仪和相机的内部参数以及外部参数。
基础矩阵确定模块202,用于根据所述内部参数以及外部参数确定投影仪图像平面和相机图像平面之间的基础矩阵。在本发明的一个实施例中,估计出的投影仪图像平面和相机图像平面之间的基础矩阵可通过F表示。
极线逆校正模块203,用于根据所述基础矩阵对所述编码图像进行极线逆校正,得到参考编码图案。
也即,本发明提出了一种基于极线逆校正的参考编码图案的生成方案,通过对编码图案进行极线逆校正,得到参考编码图案,将此图案作为待投射的参考编码图案。设空间中某点在世界坐标系中的坐标为w=[x y z 1]T,其在图像平面上的成像坐标为m=[u v1]T,则从w到m存在着透视变换的映射关系,可以用公式(1)表示:
m=λ0P0w (1)
式中λ0为成像比例因子,是一个常数,P0为极线校正前的透视变换矩阵。设图像平面校正后的透视变换矩阵为Pn,成像比例因子为λn,成像坐标为m′=[u′ v′ 1]T,则,
m′=λnPnw (2)
由公式(1)和(2)可以得到校正前后成像平面坐标之间的映射关系:
式中λ=λ0/λn。若已知编码图像上的每一点的图像坐标m′,极线校正后想得到沿图像行方向水平编码的编码图案,可由公式(3)推导出输入图像上每一点的图像坐标m,进而得到完整的输入图像。详细的说明参见图5(a)至图5(f)。若校正后想得到图5(c)所示的参考图像,则根据公式(3)计算出需要投射的参考编码图案,即图5(b)所示的图像。
图10为图案极线校正模块300的结构示意图,请参阅图10,图案极线校正模块300包括:
左图像确定模块301,用于将所述参考编码图案作为立体图像中的左图像;
右图像确定模块302,用于投射所述左图像至待测的物体表面,通过相机采集得到立体图像中的右图像;
校正图像对确定模块303,用于根据所述基础矩阵对所述左图像以及右图像进行极线校正,得到极线校正后的左图像以及右图像,所述左图像以及右图像构成校正图像对。
在本发明的一种实施方式中,将参考编码图案(图5(b))由投影仪投射到物体表面,即为立体图像中的左图像,使用相机采集相应的图像(即立体图像中的右图像),如图5(d)所示,组成立体图像对,利用标定好的F对左、右图像进行极线校正:
式中λ′=λn/λ0。由此得到具有水平极线的校正图像对,如图5(c)、图5(e)所示。
图11为三维重建模块400的结构示意图,请参阅图11,三维重建模块400包括:
解码模块401,用于沿图像水平方向进行解码。由于经过校正后的左图像即为原始设计的图像,因此解码可以沿图像水平方向进行,和编码方向保持一致。
码字确定模块402,用于对所述左图像以及右图像沿行方向进行特征提取和识别,确定出码字并实现匹配。在本发明的一个实施方式中,匹配步骤如下:
1)采用角点探测算子提取匹配图像中的角点特征,并构建特征点拓扑网络,根据拓扑网络提取物体编码图像中包括的所有编码模块。
2)对于参考图像中的每一个编码模块,如图6(a)所示,在匹配图像中沿水平行的方向进行搜索,找到码字相同的全部模块,作为候选匹配模块,如图6(b)所示;
3)对于候选模块,根据1×3的窗口约束获得唯一正确的匹配模块,进而获得了所需的匹配特征,如图6(c)所示。
三维数据确定模块403,用于根据立体标定结果对匹配的特征进行三维重建,得到被测对象表面的三维数据,所述立体标定结果是通过标定投影仪和相机得到的。
如上即为本发明实施例提供的一种结构光三维图像重建系统,通过一种极线逆校正方法,解决了非平行结构的“投影机+相机”立体视觉系统编码方向和解码方向不一致的难题;通过沿图像的行方向采用较少的编码元素进行编码,实现具有小窗口特性的高密度编码方案;通过沿图像的行方向进行解码,提高了解码的速度、准确度和鲁棒性;通过定义编码图案的行数实现总编码容量的可调控。
此外,尽管在上文详细描述中提及了系统的若干单元模块,但是这种划分仅仅并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。同样,上文描述的一个单元的特征和功能也可以进一步划分为由多个单元来具体化。以上所使用的术语“模块”和“单元”,可以是实现预定功能的软件和/或硬件。尽管以下实施例所描述的模块较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
在介绍了本发明示例性实施方式的结构光三维图像重建系统之后,接下来,参考附图对本发明示例性实施方式的方法进行介绍。该方法的实施可以参见上述整体的实施,重复之处不再赘述。
图12为本发明实施例提供的一种结构光三维图像重建方法的流程示意图,请参见图11,所述结构光三维图像重建方法包括:
S101:设计编码图案。在本发明中,采用少量编码元素以降低解码难度,为了得到高编码密度,设置尽可能小的编码窗口。
S102:根据基础矩阵对所述编码图案进行逆校正,得到参考编码图案;
S103:根据所述参考编码图案进行极线校正,得到校正图像对;
S104:根据所述校正图像对进行三维重建。
图13为步骤S101的流程示意图,请参阅图13,该步骤包括:
S201:获取预先设定的编码图形以及编码窗口。
在本发明的一种实施方式中,诸如编码图形为L型,将L型旋转不同的角度得到4种不同的编码图形。
为了得到高编码密度,本发明设置尽可能小的编码窗口,诸如在本发明的一个实施例中,编码窗口为1×3。
需要指出的是,本发明提出的编码密度可调的单张结构光三维重建方案并不仅限于此处提及的L型编码元素,可以轻易拓展应用于任何几何编码图形和颜色、亮度编码结构光。
S202:据所述编码图像确定编码元素。
采用少量编码元素可以降低解码难度。诸如在本发明的一个实施例中,将L型旋转不同的角度得到4种不同的图形,将之分别镶嵌于黑白模块中,从而得到8种基本的编码元素,如图2所示。
S203:根据所述编码窗口以及编码元素基于排列组合原理得到编码序列;
S204:根据测量范围定义所述编码序列的行数;
S205:根据所述行数得到编码图案。
在本发明的一个实施例中,以1×3的编码窗口为例,根据排列组合原理得到具有1×3窗口唯一特性的编码序列,结合8种基本编码元素,可得到长度为65的编码序列。根据实际测量需求定义编码序列的行数,以行数等于100为例,可以得到如图3所示编码图案。
图14为步骤S102的流程示意图,请参阅图14,该步骤括:
S301:标定投影仪和相机的内部参数以及外部参数。在本发明的一个实施例中,可利用棋盘法标定投影仪和相机的内部参数以及外部参数。
S302:根据所述内部参数以及外部参数确定投影仪图像平面和相机图像平面之间的基础矩阵。在本发明的一个实施例中,估计出的投影仪图像平面和相机图像平面之间的基础矩阵可通过F表示。
S303:根据所述基础矩阵对所述编码图像进行极线逆校正,得到参考编码图案。
也即,本发明提出了一种基于极线逆校正的参考编码图案的生成方案,通过对编码图案进行极线逆校正,得到参考编码图案,将此图案作为待投射的参考编码图案。设空间中某点在世界坐标系中的坐标为w=[x y z 1]T,其在图像平面上的成像坐标为m=[u v1]T,则从w到m存在着透视变换的映射关系,可以用公式(1)表示,由公式(1)和(2)可以得到校正前后成像平面坐标之间的映射关系。若已知编码图像上的每一点的图像坐标m′,极线校正后想得到沿图像行方向水平编码的编码图案,可由公式(3)推导出输入图像上每一点的图像坐标m,进而得到完整的输入图像。详细的说明参见图5(a)至图5(f)。若校正后想得到图5(c)所示的参考图像,则根据公式(3)计算出需要投射的参考编码图案,即图5(b)所示的图像。
图15为步骤S103的流程示意图,请参阅图15,该步骤包括:
S401:将所述参考编码图案作为立体图像中的左图像;
S402:投射所述左图像至待测的物体表面,通过相机采集得到立体图像中的右图像;
S403:根据所述基础矩阵对所述左图像以及右图像进行极线校正,得到极线校正后的左图像以及右图像,所述左图像以及右图像构成校正图像对。
在本发明的一种实施方式中,将参考编码图案(图5(b))由投影仪投射到物体表面,即为立体图像中的左图像,使用相机采集相应的图像(即立体图像中的右图像),如图5(d)所示,组成立体图像对,利用标定好的F对左、右图像进行极线校正。
图16为步骤S104的流程示意图,请参阅图16,该步骤包括:
S501:沿图像水平方向进行解码。由于经过校正后的左图像即为原始设计的图像,因此解码可以沿图像水平方向进行,和编码方向保持一致。
S502:对所述左图像以及右图像沿行方向进行特征提取和识别,确定出码字并实现匹配。在本发明的一个实施方式中,匹配步骤如下:
1)采用角点探测算子提取匹配图像中的角点特征,并构建特征点拓扑网络,根据拓扑网络提取物体编码图像中包括的所有编码模块。
2)对于参考图像中的每一个编码模块,如图6(a)所示,在匹配图像中沿水平行的方向进行搜索,找到码字相同的全部模块,作为候选匹配模块,如图6(b)所示;
3)对于候选模块,根据1×3的窗口约束获得唯一正确的匹配模块,进而获得了所需的匹配特征,如图6(c)所示。
S503:根据立体标定结果对匹配的特征进行三维重建,得到被测对象表面的三维数据,所述立体标定结果是通过标定投影仪和相机得到的。
如上即为本发明实施例提供的一种结构光三维图像重建方法,通过一种极线逆校正方法,解决了非平行结构的“投影机+相机”立体视觉系统编码方向和解码方向不一致的难题;通过沿图像的行方向采用较少的编码元素进行编码,实现具有小窗口特性的高密度编码方案;通过沿图像的行方向进行解码,提高了解码的速度、准确度和鲁棒性;通过定义编码图案的行数实现总编码容量的可调控。
此外,在本发明的一种实施方式中,还可增加一个相机,和现有的投影仪额外组成一套“投影仪+相机”系统,通过对该系统实施本发明的结构光三维图像重建方法,可实现3D扫描。
本发明还提供一种计算机设备,包括:适于实现各指令的处理器以及存储设备,所述存储设备存储有多条指令,所述指令适于由处理器加载并执行一种结构光三维图像重建方法。
本发明还提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序用于执行一种结构光三维图像重建方法。
综上所述,本发明实施例提供了一种结构光三维图像重建方法、结构光三维图像重建系统、计算机设备以及计算机可读存储介质,通过一种极线逆校正方法,解决了非平行结构的“投影机+相机”立体视觉系统编码方向和解码方向不一致的难题;通过沿图像的行方向采用较少的编码元素进行编码,实现具有小窗口特性的高密度编码方案;通过沿图像的行方向进行解码,提高了解码的速度、准确度和鲁棒性;通过定义编码图案的行数实现总编码容量的可调控。与传统的空间编码方法相比,本发明具有显著的优势:
1)解决了编码密度可调编码策略在非平行结构“投影仪+相机”结构光立体视觉系统中的应用难题;
2)通过采用一种极线逆校正方法,使得编码和解码均可以沿图像的行方向进行,与其他编码策略相比,简单实用、可操作性更强;
3)由于编码仅需保证沿图像行方向的唯一性,因此可以基于少量的编码元素,采用较小的编码窗口实现高密度编码;
4)通过沿图像行的方向进行解码,可以降低解码难度,增加解码的速度、准确性和鲁棒性;
5)通过定义编码图案的行数可以实现总编码容量的可调控,具有很强的实用性。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog2。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
本领域技术人员也知道,除了以纯计算机可读程序代码方式实现客户端和服务器以外,完全可以通过将方法步骤进行逻辑编程来使得客户端和服务器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种客户端和服务器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施方式或者实施方式的某些部分所述的方法。
本说明书中的各个实施方式均采用递进的方式描述,各个实施方式之间相同相似的部分互相参见即可,每个实施方式重点说明的都是与其他实施方式的不同之处。尤其,针对客户端和服务器的实施方式来说,均可以参照前述方法的实施方式的介绍对照解释。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
虽然通过实施方式描绘了本申请,本领域普通技术人员知道,本申请有许多变形和变化而不脱离本申请的精神,希望所附的权利要求包括这些变形和变化而不脱离本申请的精神。
Claims (4)
1.一种结构光三维图像重建方法,其特征在于,所述方法包括:
设计编码图案;所述编码图案为具有小窗口编码特性的编码图案;
根据基础矩阵对所述编码图案进行逆校正,得到参考编码图案;
根据所述参考编码图案进行极线校正,得到校正图像对;
根据所述校正图像对进行三维重建;
所述设计编码图案包括:
获取预先设定的编码图形以及编码窗口;
根据所述编码图形确定编码元素;
根据所述编码窗口以及编码元素基于排列组合原理得到编码序列;
根据测量范围定义所述编码序列的行数;
根据所述行数得到编码图案;
根据基础矩阵对所述编码图案进行逆校正,得到参考编码图案包括:
标定投影仪和相机的内部参数以及外部参数;
根据所述内部参数以及外部参数确定投影仪图像平面和相机图像平面之间的基础矩阵;
根据所述基础矩阵对所述编码图案进行极线逆校正,得到参考编码图案;
根据所述参考编码图案进行极线校正,得到校正图像对包括:
将所述参考编码图案作为立体图像中的左图像;
投射所述左图像至待测的物体表面,通过相机采集得到立体图像中的右图像;
根据所述基础矩阵对所述左图像以及右图像进行极线校正,得到极线校正后的左图像以及右图像,所述左图像以及右图像构成校正图像对;
根据所述校正图像对进行三维重建包括:
沿图像水平方向进行解码;
对所述左图像以及右图像沿行方向进行特征提取和识别,确定出码字并实现匹配;
根据立体标定结果对匹配的特征进行三维重建,得到被测对象表面的三维数据,所述立体标定结果是通过标定投影仪和相机得到的。
2.一种结构光三维图像重建系统,其特征在于,所述系统包括:
编码图案设计模块,用于设计编码图案;所述编码图案为具有小窗口编码特性的编码图案;
图案逆校正模块,用于根据基础矩阵对所述编码图案进行逆校正,得到参考编码图案;
图案极线校正模块,用于根据所述参考编码图案进行极线校正,得到校正图像对;
三维重建模块,用于根据所述校正图像对进行三维重建;
所述编码图案设计模块包括:
预设信息获取模块,用于获取预先设定的编码图形以及编码窗口;
编码元素确定模块,用于根据所述编码图形确定编码元素;
编码序列确定模块,用于根据所述编码窗口以及编码元素基于排列组合原理得到编码序列;
序列行数定义模块,用于根据测量范围定义所述编码序列的行数;
编码图案确定模块,用于根据所述行数得到编码图案;
所述图案逆校正模块包括:
参数标定模块,用于标定投影仪和相机的内部参数以及外部参数;
基础矩阵确定模块,用于根据所述内部参数以及外部参数确定投影仪图像平面和相机图像平面之间的基础矩阵;
极线逆校正模块,用于根据所述基础矩阵对所述编码图案进行极线逆校正,得到参考编码图案;
所述图案极线校正模块包括:
左图像确定模块,用于将所述参考编码图案作为立体图像中的左图像;
右图像确定模块,用于投射所述左图像至待测的物体表面,通过相机采集得到立体图像中的右图像;
校正图像对确定模块,用于根据所述基础矩阵对所述左图像以及右图像进行极线校正,得到极线校正后的左图像以及右图像,所述左图像以及右图像构成校正图像对;
所述三维重建模块包括:
解码模块,用于沿图像水平方向进行解码;
码字确定模块,用于对所述左图像以及右图像沿行方向进行特征提取和识别,确定出码字并实现匹配;
三维数据确定模块,用于根据立体标定结果对匹配的特征进行三维重建,得到被测对象表面的三维数据,所述立体标定结果是通过标定投影仪和相机得到的。
3.一种计算机设备,其特征在于,包括:适于实现各指令的处理器以及存储设备,所述存储设备存储有多条指令,所述指令适于由处理器加载并执行如权利要求1所述的一种结构光三维图像重建方法。
4.一种计算机可读存储介质,其特征在于,存储有计算机程序,所述计算机程序用于执行如权利要求1所述的一种结构光三维图像重建方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910232488.3A CN109993826B (zh) | 2019-03-26 | 2019-03-26 | 一种结构光三维图像重建方法、设备及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910232488.3A CN109993826B (zh) | 2019-03-26 | 2019-03-26 | 一种结构光三维图像重建方法、设备及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109993826A CN109993826A (zh) | 2019-07-09 |
CN109993826B true CN109993826B (zh) | 2023-06-13 |
Family
ID=67131596
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910232488.3A Active CN109993826B (zh) | 2019-03-26 | 2019-03-26 | 一种结构光三维图像重建方法、设备及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109993826B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111336950B (zh) * | 2020-04-11 | 2023-06-02 | 武汉玄景科技有限公司 | 一种空间编码与线结构光相结合的单帧测量方法与系统 |
CN113706692B (zh) * | 2021-08-25 | 2023-10-24 | 北京百度网讯科技有限公司 | 三维图像重构方法、装置、电子设备以及存储介质 |
CN115082621B (zh) * | 2022-06-21 | 2023-01-31 | 中国科学院半导体研究所 | 一种三维成像方法、装置、系统、电子设备及存储介质 |
CN115379182B (zh) * | 2022-08-19 | 2023-11-24 | 四川大学 | 一种双向结构光编解码方法、装置、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103776392A (zh) * | 2006-11-21 | 2014-05-07 | 曼蒂斯影像有限公司 | 三维几何建模和三维视频内容创建 |
CN108122254A (zh) * | 2017-12-15 | 2018-06-05 | 中国科学院深圳先进技术研究院 | 基于结构光的三维图像重建方法、装置及存储介质 |
CN108592822A (zh) * | 2017-12-04 | 2018-09-28 | 湖南大学 | 一种基于双目相机及结构光编解码的测量系统及方法 |
CN108986177A (zh) * | 2017-05-31 | 2018-12-11 | 华为技术有限公司 | 结构光编码方法、装置及终端设备 |
CN109242957A (zh) * | 2018-08-27 | 2019-01-18 | 深圳积木易搭科技技术有限公司 | 一种基于多重约束的单帧编码结构光三维重建方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3833224B2 (ja) * | 2004-01-30 | 2006-10-11 | キヤノン株式会社 | 符号化方法及び装置、並びにコンピュータプログラム及びコンピュータ可読記憶媒体 |
-
2019
- 2019-03-26 CN CN201910232488.3A patent/CN109993826B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103776392A (zh) * | 2006-11-21 | 2014-05-07 | 曼蒂斯影像有限公司 | 三维几何建模和三维视频内容创建 |
CN108986177A (zh) * | 2017-05-31 | 2018-12-11 | 华为技术有限公司 | 结构光编码方法、装置及终端设备 |
CN108592822A (zh) * | 2017-12-04 | 2018-09-28 | 湖南大学 | 一种基于双目相机及结构光编解码的测量系统及方法 |
CN108122254A (zh) * | 2017-12-15 | 2018-06-05 | 中国科学院深圳先进技术研究院 | 基于结构光的三维图像重建方法、装置及存储介质 |
CN109242957A (zh) * | 2018-08-27 | 2019-01-18 | 深圳积木易搭科技技术有限公司 | 一种基于多重约束的单帧编码结构光三维重建方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109993826A (zh) | 2019-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109993826B (zh) | 一种结构光三维图像重建方法、设备及系统 | |
US11321937B1 (en) | Visual localization method and apparatus based on semantic error image | |
CN110135455B (zh) | 影像匹配方法、装置及计算机可读存储介质 | |
CN113643378B (zh) | 多相机环境中主动式刚体的位姿定位方法及相关设备 | |
US10962355B2 (en) | 3D model reconstruction method, electronic device, and non-transitory computer readable storage medium thereof | |
US8355565B1 (en) | Producing high quality depth maps | |
CN111833393A (zh) | 一种基于边缘信息的双目立体匹配方法 | |
US20090296984A1 (en) | System and Method for Three-Dimensional Object Reconstruction from Two-Dimensional Images | |
Evangelidis et al. | Fusion of range and stereo data for high-resolution scene-modeling | |
CN103900583A (zh) | 用于即时定位与地图构建的设备和方法 | |
JP2016502704A (ja) | 奥行きアーチファクトを除去するための画像処理方法および装置 | |
Lei et al. | Shape from polarization for complex scenes in the wild | |
US11651507B2 (en) | Content-adaptive binocular matching method and apparatus | |
Mihajlovic et al. | Deepsurfels: Learning online appearance fusion | |
Xu et al. | Hrbf-fusion: Accurate 3d reconstruction from rgb-d data using on-the-fly implicits | |
Gao et al. | Marker tracking for video-based augmented reality | |
Muresan et al. | A multi patch warping approach for improved stereo block matching | |
CN113439289A (zh) | 用于确定对象厚度的图像处理 | |
Gomes et al. | Exploring RGB-D cameras for 3D reconstruction of cultural heritage: A new approach applied to Brazilian baroque sculptures | |
Tran et al. | Accurate RGB-D camera based on structured light techniques | |
Schumacher et al. | Extension and FPGA architecture of the Generalized Hough Transform for real-time stereo correspondence | |
KR20060015755A (ko) | 3차원 모델을 사용하는 화상 시퀀스를 표현하는 방법 및 그장치와 신호 | |
Xing et al. | Scale-consistent fusion: from heterogeneous local sampling to global immersive rendering | |
CN110148086B (zh) | 稀疏深度图的深度补齐方法、装置及三维重建方法、装置 | |
CN113327317A (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 |