一种基于三目视觉的三维重建方法和装置与流程

文档序号:19144843发布日期:2019-11-15 23:23阅读:465来源:国知局
一种基于三目视觉的三维重建方法和装置与流程

本发明实施例涉及人工智能、立体视觉技术领域,具体涉及一种基于三目视觉的三维重建方法和装置。



背景技术:

三维重建技术是计算机视觉领域的一个重要的问题,在无损检测,距离测量等很多方面具有广泛地应用。传统的三维重建技术是基于双目的,主要出发点是模仿人的眼睛。它采用两个视觉传感器,通过图像采集、标定、立体匹配、等获得丰富的三维场景信息确定场景中不同物体的距离。但是,上述方法存在准确性低的问题,为了提高上述方法的准确性,就需要借助于雷达,然而这样却大大的提高了成本。



技术实现要素:

为此,本发明实施例提供一种基于三目视觉的三维重建方法和装置,以解决现有技术中三维重建准确性低以及成本高的问题。

为了实现上述目的,本发明实施例提供如下技术方案:

根据本发明实施例的第一方面提供了一种基于三目视觉的三维重建方法,包括三个相机,还包括:

获取每个所述相机的内部结构参数和畸变参数;

两两匹配不同图像中对应控制点,滤除匹配错误的控制点,确定所述相机的外部参数,校正所述相机的极线;

依据所述控制点,采用光束平差参数优化方法,对内部结构参数、外部参数和畸变参数优化;

根据优化后的内部结构参数、外部参数和畸变参数,标定每个所述相机的内部结构参数、外部参数和畸变参数;

基于标定后的每个所述相机所采集的图像构建三维深度点云图,通过融合三维深度点云图得到重建后的深度图。

进一步地,所述的基于三目视觉的三维重建方法中,所述两两匹配不同图像中的对应控制点,包括:

标注每个所述相机采集的图像中的控制点;

获取每个所述控制点的sift特征描述子;

根据每个所述控制点的sift特征描述子,采用hamming距离方法,两两匹配不同图像中对应控制点。

进一步地,所述的基于三目视觉的三维重建方法中,所述滤除匹配错误的控制点,包括:

采用ransac算法滤除匹配错误的控制点。

进一步地,所述的基于三目视觉的三维重建方法中,

所述内部参数包括:焦距参数和相机中心参数,所述外部参数包括:相机的空间位置参数、旋转矩阵和平移矩阵,所述畸变参数包括:径向畸变和切向畸变。

进一步地,所述的基于三目视觉的三维重建方法中,所述基于标定后的每个所述相机所采集的图像构建三维深度点云图,通过融合三维深度点云图得到重建后的深度图,包括:

计算每个标定后所述相机采集的图像中的各个点成为场景中物体的概率,得到三张概率图;

采用半全局代价空间优化方法,去除每张概率图中的不连续的噪点;

基于去除噪点后的三张概率图构建三维深度点云图,融合三维深度点云图得到重建后的深度图。

进一步地,所述的基于三目视觉的三维重建方法中,所述基于去除噪点后的三张概率图构建三维深度点云图,融合三维深度点云图得到重建后的深度图,包括:

以所述相机的采集位置为原点,通过射线的方式遍历去除噪点后的三张所述概率图,筛选出每条射线的上概率最大的点,获取概率最大的点对应的深度值,得到三维深度点云图;

融合三张所述三维深度点云图,得到重建后的深度图。

进一步地,所述的基于三目视觉的三维重建方法中,所述融合三张所述三维深度点云图,得到重建后的深度图,包括:

将三张所述三维深度点云图上的概率最大的点映射到三维世界坐标系中,得到重建后的深度图。

进一步地,所述的基于三目视觉的三维重建方法中,还包括:

任一映射到所述三维世界坐标系中的概率最大的点对应的三个深度值大于等于预设值时,则滤除该点。

根据本发明实施例的第二方面提供了一种基于三目视觉的三维重建装置,包括三个相机,包括:

相机参数获取模块,用于获取每个所述相机的内部结构参数和畸变参数;

控制点匹配模块,用于两两匹配不同图像中对应控制点,滤除匹配错误的控制点,确定外部参数,校正所述相机的极线;

相机参数优化模块,用于依据所述控制点,采用光束平差参数优化方法,对内部结构参数、外部参数和畸变参数优化;

相机参数标定模块,用于根据优化后的内部结构参数、外部参数和畸变参数,标定每个所述相机的内部结构参数、外部参数和畸变参数;

图像融合模块,用于基于标定后的每个所述相机所采集的图像构建三维深度点云图,通过融合三维深度点云图得到重建后的深度图。

根据本发明实施例的第三方面提供了一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至8任一所述的基于三目视觉的三维重建方法的步骤。

本发明实施例具有如下优点:

本发明实施例公开了一种基于三目视觉的三维重建方法,包括三个相机,获取每个所述相机的内部结构参数和畸变参数;两两匹配不同图像中对应控制点,滤除匹配错误的控制点,确定所述相机的外部参数,校正所述相机的极线;依据所述控制点,采用光束平差参数优化方法,对内部结构参数、外部参数和畸变参数优化;根据优化后的内部结构参数、外部参数和畸变参数,标定每个所述相机的内部结构参数、外部参数和畸变参数;基于标定后的每个所述相机所采集的图像构建三维深度点云图,通过融合三维深度点云图得到重建后的深度图。一方面,本申请基于三目视觉技术的三维重建技术,相比于常见的基于双目视觉的三维重建,通过多设置一个相机,得到更多的信息,可以更好的检测噪声点等异常点,更好的判断三维点的重建是否正确,实现高精度的场景重建。另一方面,本申请采用基于三目视觉的三维重建技术,可以准确的重建出实际的三维场景,满足自动驾驶、电力系统等多个领域的实际需求,为人工智能的落地提供技术支撑,具有良好的社会效益,同时相对于雷达,其成本较低,具有较好的经济效果。

附图说明

为了更清楚地说明本发明的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引伸获得其它的实施附图。

本说明书所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明可实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容能涵盖的范围内。

图1为本发明本实施例提供的基于三目视觉的三维重建方法的流程图;

图2为本发明本实施例提供的基于三目视觉的三维重建装置的结构示意图;

图3为本发明本实施例提供的一种计算机设备的结构示意图。

具体实施方式

以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本发明的其他优点及功效,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为便于对本实施例进行理解,首先对本申请实施例所公开的一种裸眼3d成像方法进行详细介绍。

实施例一

参见图1,本实施例公开了一种基于三目视觉的三维重建方法,包括步骤s101~s105:

本实施例中,在场景中物体周围布置三台相机,用于对场景中物体进行图像采集,这里了的相机可以为市场上所售卖的相机,例如双目相机、三目相机等;本实施例中以双目相机为例,但本发明公开的方法并不限于此;

s101:获取每个所述相机的内部结构参数和畸变参数;

示例性地,采用张氏标定法,标定相机的摄像头的内部和畸变等参数;

具体的,采用张氏标定法基于棋盘格图像确定相机的摄像头的内部参数和畸变参数;内部参数是相机的摄像头的内部结构参数,包括焦距参数和相机中心参数;畸变参数是径向畸变和切向畸变。

s102:两两匹配不同图像中对应控制点,滤除匹配错误的控制点,确定所述相机的外部参数,校正所述相机的极线;

具体的,外部参数是指相机的摄像头的旋转矩阵、平移矩阵以及相机的空间位置参数;

标注每个所述相机采集的图像中的控制点;

控制点是图像中在某方面属性特别突出的像素点,是在某些属性上强度最大或者最小的孤立点、线段的终点等;例如直线的两个端点、两条或多条直线的或平面等的交叉点等;

获取每个所述控制点的sift(尺度不变特征变换,scaleinvariantfeaturetransform)特征描述子;

根据每个所述控制点的sift特征描述子,采用hamming距离(汉明距离)方法,两两匹配不同图像中对应控制点;

采用ransac(随机采样一致性,randomsampleconsensus)算法滤除匹配错误的控制点。

根据上述匹配结果,建立两个相机的姿态关系;

相机需要标定出左右相机坐标系之间的相对关系。采用旋转矩阵r和平移矩阵t来描述左右两个相机坐标系的相对关系,具体为:在相机1上建立世界坐标系。假设空间中有一点q,其在世界坐标系下的坐标为qw,其在相机1和相机2坐标系下的坐标可以表示为:

q1=r1qw+t1

q2=r2qw+t2

进一步可得到

q2=r2r1-1(q1-t1)+t2=r2r1-1q1+t2-r2r1-1t1

综合上式,可知:

r=r2r1-1

t=t2-r2r1-1t1

其中r1,t1为相机1经过单目标定得到的相对标定物的旋转矩阵和平移向量,r2,t2为相机2经过单目标定得到的相对标定物的旋转矩阵和平移向量;

s103:依据所述控制点,采用光束平差参数优化方法,对内部结构参数、外部参数和畸变参数优化;

s104:根据优化后的内部结构参数、外部参数和畸变参数,标定每个所述相机的内部结构参数、外部参数和畸变参数;

具体的,

三个相机安装在同一个水平线上,相机的光轴也都是水平的,并且中间的相机和左右两边的相机等间隔;光束平差参数优化是下述公式的一个最小化问题:

其中,m是3,代表三个相机拍到的三个图像,n是在三个图像中共同可见的控制点的数量,xij是图像j上的第i个控制点的坐标,vij是一个开关量,如果点i在图像j上有映射,则vij=1,否则vij=0,每个图像j由向量aj参数化表示,每个控制点由bi参数化表示,q(aj,bi)表示点i在图像j上的通过内部参数、外部参数和计算得到的坐标的函数,d(x,y)表示向量x,y的欧式距离。公式可以最小化n个控制点在三张图像上投影的误差,通过求得上述公式的最小值,进而反推出q(aj,bi)的函数,从而对三个相机的内部结构参数、外部结构参数以及畸变参数进行标定;

s105:基于标定后的每个所述相机所采集的图像构建三维深度点云图,通过融合三维深度点云图得到重建后的深度图;

具体的,

计算每个标定后所述相机采集的图像中的各个点成为场景中物体的概率,得到三张概率图;

其中,使用标定好的三个相机采集三个图像,通过多视点平面扫描技术依次为三个相机计算其所对应的三维空间中的各点成为场景中物体的概率,得到三个概率图;

每个相机可拍摄三维空间中的一个锥形空间,通过前面的相机标定,上述锥形空间和各个相机的图像空间之间建立了对应的映射关系。利用这些映射关系,可以将三个图像映射到上述的锥形空间,得到三个映射后的图像mk(k=1,2,3)。接着,在锥形空间中任选一个点p,并以该点为中心在每个映射后的图像上取一个局部窗口wp,k(k=1,2,3),计算三个图像上的上述三个局部窗口上熟知的互信息,得到的互信息的值作为该点成为场景中物体的概率;

采用半全局代价空间优化方法,去除每张概率图中的不连续的噪点;

其中,由于单幅图像中的上述概率在估算过程中是在每个点(像素)上独立进行的,没有考虑到点(像素)间的制约关系,且上述的三张图像之间可能会有尺度、光照上的差异,这些不确定因素都会引起初始相邻(像素)间的概率相差过大,进而导致所得到的概率图不具有连续性。因此,采用半全局代价空间优化方法,去除不连续的噪点;

半全局代价空间优化方法在待匹配点(像素)处沿多个(通常为8或4个)方向作动态规划,并基于各个方向计算匹配代价的和,保证概率图的连续性;

以所述相机的采集位置为原点,通过射线的方式遍历去除噪点后的三张所述概率图,筛选出每条射线的上概率最大的点,获取概率最大的点对应的深度值,得到三维深度点云图;

其中,以相机采集图像的位置为原点,发出多条射线,筛选出每条射线的上概率最大的点,这点到原点的距离就是该点的深度值;

将三张所述三维深度点云图上的概率最大的点映射到三维世界坐标系中,得到重建后的深度图;任一映射到所述三维世界坐标系中的概率最大的点对应的三个深度值大于等于预设值时,则滤除该点;

其中,将三个深度点云上的点映射到三维世界坐标系中,在三维世界坐标系中的点对应三个深度值dk(k=1,2,3)。如果同一个点对应的三个深度值差别较大,就滤出这个点;否则就将三个深度值dk(k=1,2,3)取中值作为最终的深度值d。这样,就得到了重建后的深度图,完成三维重建。

在三维世界坐标系中,如果每个点对应三个深度值的差距|d1-d2|/[(d1+d2)/2],|d2-d3|/[(d2+d3)/2],|d1-d3|/[(d1+d3)/2]大于阈值a(比如,1%)就认为该点在三个深度点云图像上没有对应点,滤掉这个点。

一方面,本申请基于三目视觉技术的三维重建技术,相比于常见的基于双目视觉的三维重建,通过多设置一个相机,得到更多的信息,可以更好的检测噪声点等异常点,更好的判断三维点的重建是否正确,实现高精度的场景重建。另一方面,本申请采用基于三目视觉的三维重建技术,可以准确的重建出实际的三维场景,满足自动驾驶、电力系统等多个领域的实际需求,为人工智能的落地提供技术支撑,具有良好的社会效益,同时相对于雷达,其成本较低,具有较好的经济效果。

实施例二

基于同一发明构思,本申请实施例中还提供了与基于三目视觉的三维重建方法对应的基于三目视觉的三维重建装置,由于本申请实施例中的装置解决问题的原理与本申请实施例上述基于三目视觉的三维重建方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。

参见图2所示,本申请实施例所提供一种基于三目视觉的三维重建装置,包括三个相机,包括:

相机参数获取模块201,用于获取每个所述相机的内部结构参数和畸变参数;

控制点匹配模块202,用于两两匹配不同图像中对应控制点,滤除匹配错误的控制点,确定外部参数,校正所述相机的极线;

相机参数优化模块203,用于依据所述控制点,采用光束平差参数优化方法,对内部结构参数、外部参数和畸变参数优化;

相机参数标定模块204,用于根据优化后的内部结构参数、外部参数和畸变参数,标定每个所述相机的内部结构参数、外部参数和畸变参数;

图像融合模块205,用于基于标定后的每个所述相机所采集的图像构建三维深度点云图,通过融合三维深度点云图得到重建后的深度图。

本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述基于三目视觉的三维重建方法的步骤。

具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述基于三目视觉的三维重建方法。

对应于图1中的基于三目视觉的三维重建方法,本申请实施例还提供了一种计算机设备,如图3所示,该设备包括存储器1000、处理器2000及存储在该存储器1000上并可在该处理器2000上运行的计算机程序,其中,上述处理器2000执行上述计算机程序时实现上述基于三目视觉的三维重建方法的步骤。

具体地,上述存储器1000和处理器2000能够为通用的存储器和处理器,这里不做具体限定,当处理器2000运行存储器1000存储的计算机程序时,能够执行上述基于三目视觉的三维重建方法。

本申请实施例所提供的基于三目视觉的三维重建方法和装置的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。

在这里示出和描述的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制,因此,示例性实施例的其他示例可以具有不同的值。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

虽然,上文中已经用一般性说明及具体实施例对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1