1.本发明涉及图像处理技术领域,尤其涉及一种位姿确定方法、装置及作业机械。
背景技术:
2.随着科技的发展,智能化的无人设备逐渐得到广泛应用,用以替代工作人员在危险环境中进行作业。
3.在无人设备的应用过程中,对无人设备的位姿信息的掌握至关重要。现有技术中,通常在无人设备上配置有相机,通过确定相机的位姿信息进而确定无人设备的位姿信息。目前,在确定相机的位姿信息时,通常采用同时定位与绘图(simultaneous location and mapping,slam)技术实现。主流的视觉slam通过对图像提取特征点以及特征线,利用相邻图像之间的点线特征匹配,求解相机的轨迹和三维地图。
4.但是,上述方法在确定相机位姿时,通常采用给定的点线特征匹配权重,这将导致匹配过程收敛缓慢,降低位姿确定效率。而且,由于没有考虑点线特征各自匹配的特点,也降低了确定的位姿的准确性。
技术实现要素:
5.本发明提供一种位姿确定方法、装置及作业机械,用以解决现有技术中存在的缺陷。
6.本发明提供一种位姿确定方法,包括:
7.获取图像采集单元采集的相邻两帧图像,并确定所述相邻两帧图像中的特征点以及特征线段,基于所述特征点以及所述特征线段,确定所述相邻两帧图像中相匹配的特征点对以及特征线段对;
8.基于所述特征点对以及所述特征线段对,对所述图像采集单元的位姿优化模型进行求解,得到所述图像采集单元的位姿参数的取值;所述位姿参数用于表征所述图像采集单元的位姿信息;
9.其中,所述位姿优化模型基于所述相邻两帧图像的特征点匹配误差项以及特征线段匹配误差项构建,所述特征点匹配误差项对应的第一权重以及所述特征线段匹配误差项对应的第二权重均基于匹配误差动态调整,所述匹配误差为特征线段匹配误差或特征点匹配误差,所述匹配误差基于所述位姿参数表示。
10.根据本发明提供的位姿确定方法,所述相邻两帧图像包括第一图像和第二图像;所述方法还包括:
11.基于所述特征点对中位于所述第一图像中的第一特征点在所述第二图像中的重投影位置信息以及第二特征点在所述第二图像中的位置信息,确定所述特征点对的重投影误差;其中,所述第二特征点的重投影位置信息基于所述位姿参数表示;
12.基于所述特征点对的重投影误差,确定所述特征点匹配误差。
13.根据本发明提供的位姿确定方法,所述相邻两帧图像包括第一图像和第二图像;
所述方法还包括:
14.基于所述特征线段对中第一特征线段的角度信息以及第二特征线段的角度信息,确定所述特征线段对的角度变化信息,并基于所述第一特征线段在所述第一图像中的位置信息以及所述第二特征线段在所述第二图像中的位置信息,确定所述特征线段对的位置变化信息;
15.基于所述特征线段对的角度变化信息以及位置变化信息,确定所述第二图像相对于所述第一图像的位姿参数,并基于所述位姿参数,确定所述特征线段匹配误差。
16.根据本发明提供的位姿确定方法,所述位姿优化模型以所述位姿参数为优化参数,以所述特征点匹配误差项与所述特征线段匹配误差项之和最小为优化目标;
17.相应地,所述基于所述特征点对以及所述特征线段对,对所述图像采集单元的位姿优化模型进行求解,得到所述图像采集单元的位姿参数的取值,包括:
18.将所述特征点对以及所述特征线段对均代入至所述位姿优化模型,确定所述位姿优化模型在满足优化目标时的优化参数的取值,并确定所述优化参数的取值为所述位姿参数的取值。
19.根据本发明提供的位姿确定方法,所述方法还包括:
20.计算所述特征线段匹配误差与所述特征点匹配误差的求和结果;
21.基于所述特征线段匹配误差以及所述求和结果,确定所述第一权重。
22.根据本发明提供的位姿确定方法,所述方法还包括:
23.基于所述特征点匹配误差以及所述求和结果,确定所述第二权重。
24.根据本发明提供的位姿确定方法,所述基于所述特征点对以及所述特征线段对,对所述图像采集单元的位姿优化模型进行求解,得到所述图像采集单元的位姿参数的取值,之后还包括:
25.基于所述图像采集单元的位姿参数的取值,确定所述图像采集单元所处的设备的位姿参数的取值,所述设备的位姿参数用于表征所述设备的位姿信息。
26.根据本发明提供的位姿确定方法,所述基于所述特征点对以及所述特征线段对,对所述图像采集单元的位姿优化模型进行求解,得到所述图像采集单元的位姿信息,之前包括:
27.基于误匹配剔除算法,对所述特征点对以及所述特征线段对进行筛选。
28.本发明还提供一种位姿确定装置,包括:
29.匹配模块,用于获取图像采集单元采集的相邻两帧图像,并确定所述相邻两帧图像中的特征点以及特征线段,基于所述特征点以及所述特征线段,确定所述相邻两帧图像中相匹配的特征点对以及特征线段对;
30.确定模块,用于基于所述特征点对以及所述特征线段对,对所述图像采集单元的位姿优化模型进行求解,得到所述图像采集单元的位姿参数的取值;所述位姿参数用于表征所述图像采集单元的位姿信息;
31.其中,所述位姿优化模型基于所述相邻两帧图像的特征点匹配误差项以及特征线段匹配误差项构建,所述特征点匹配误差项对应的第一权重以及所述特征线段匹配误差项对应的第二权重均基于匹配误差动态调整,所述匹配误差为特征线段匹配误差或特征点匹配误差,所述匹配误差基于所述位姿参数表示。
32.本发明还提供一种作业机械,包括作业机械本体、安装于所述作业机械本体上的图像采集单元以及上述的位姿确定装置,所述图像采集单元与所述位姿确定装置通信连接。
33.本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述位姿确定方法。
34.本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述位姿确定方法。
35.本发明提供的位姿确定方法、装置及作业机械,首先获取图像采集单元采集的相邻两帧图像,并确定相邻两帧图像中的特征点以及特征线段,基于特征点以及特征线段,确定相邻两帧图像中相匹配的特征点对以及特征线段对;然后通过特征点对以及特征线段对,对图像采集单元的位姿优化模型进行求解,得到图像采集单元的位姿参数的取值。该方法引入了特征线段的确定和匹配,并且采用的位姿优化模型引入了相邻两帧图像的特征点匹配误差项以及特征线段匹配误差项,如此可以提升位姿精度和地图重建效果。而且,位姿优化模型中特征点匹配误差项对应的第一权重以及特征线段匹配误差项对应的第二权重均基于匹配误差动态调整,如此可以加速匹配过程的收敛,提高位姿信息的确定效率。而且,由于第一权重与第二权重基于匹配误差动态调整,考虑了点线特征各自匹配的特点,提高了位姿信息求解的准确性。
附图说明
36.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
37.图1是本发明提供的位姿确定方法的流程示意图之一;
38.图2是本发明提供的位姿确定方法的流程示意图之二;
39.图3是本发明提供的位姿确定装置的结构示意图;
40.图4是本发明提供的电子设备的结构示意图。
具体实施方式
41.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
42.由于现有技术中在采用视觉slam求解相机的轨迹和三维地图时,仅仅利用了特征点计算视觉里程计,生成的三维地图也是稀疏的,这将导致得到的相机位姿信息易受外部光照的影响。尤其当相机在大范围空间内移动或旋转时,特征点无法准确匹配,进而影响相机位姿信息的准确求解。
43.视觉slam还可以通过对图像提取特征点以及特征线,利用相邻图像之间的点线特
征匹配,求解相机的轨迹和三维地图。但是,上述方法在确定相机位姿时,通常采用给定的点线特征匹配权重,这将导致匹配过程收敛缓慢,降低位姿确定效率。而且,由于没有考虑点线特征各自匹配的特点,也降低了确定的位姿的准确性。为此,本发明实施例中提供了一种位姿确定方法。
44.图1为本发明实施例中提供的一种位姿确定方法的流程示意图,如图1所示,该方法包括:
45.s1,获取图像采集单元采集的相邻两帧图像,并确定所述相邻两帧图像中的特征点以及特征线段,基于所述特征点以及所述特征线段,确定所述相邻两帧图像中相匹配的特征点对以及特征线段对;
46.s2,基于所述特征点对以及所述特征线段对,对所述图像采集单元的位姿优化模型进行求解,得到所述图像采集单元的位姿参数的取值;所述位姿参数用于表征所述图像采集单元的位姿信息;
47.其中,所述位姿优化模型基于所述相邻两帧图像的特征点匹配误差项以及特征线段匹配误差项构建,所述特征点匹配误差项对应的第一权重以及所述特征线段匹配误差项对应的第二权重均基于匹配误差动态调整,所述匹配误差为特征线段匹配误差或特征点匹配误差,所述匹配误差基于所述位姿参数表示。
48.具体地,本发明实施例中提供的位姿确定方法,其执行主体为位姿确定装置,该装置可以配置于服务器内,该服务器可以是本地服务器,也可以是云端服务器,本地服务器具体可以是计算机以及平板电脑等,本发明实施例中对此不作具体限定。
49.首先执行步骤s1,获取图像采集单元采集的相邻两帧图像。该图像采集单元是指能够采集图像的设备,例如可以是相机或摄像头等,此处不作具体限定。图像采集单元可以安装在可移动的设备上,该设备可以是人工驾驶的设备,也可以是智能化的无人设备等。
50.该图像采集单元可以用于采集图像采集单元或设备周围环境的一段视频或多帧图像,该段视频中可以包括多帧图像。本发明实施例中,位姿确定装置可以获取该图像采集单元采集的任意相邻两帧图像,例如第i帧图像和第j帧图像。然后确定这两帧图像中的特征点以及特征线段,即分别确定第i帧图像中的特征点和特征线段,以及第j帧图像中的特征点和特征线段。
51.图像中的特征点可以通过快速特征点提取和描述的算法(oriented fast and rotated brief,orb)进行确定。确定图像中的特征点的过程可以包括特征点提取和特征点描述,特征点提取可以是通过fast(features from accelerated segment test)算法确定fast角点实现,提取的特征点即为fast角点。特征点描述可以是通过brief(binary robust independent elementary features)算法来计算特征点的描述子,通过该描述子描述特征点的属性,即特征点周围的特征。
52.在进行特征点提取时,先从图像中选取任一像素点p,该像素点p的像素值可以表示为ip。若图像为灰度图像,则像素值为灰度值,若图像为彩色图像,则像素值为亮度值。
53.选取以像素点p为圆心、半径为预设半径的目标圆周上的n个像素点,计算像素点p与n个像素点中每个像素点之间的像素值的差值绝对值,并计算n各像素点中满足差值绝对值大于给定阈值的像素点数量。如果像素点数量大于给定数量,则可以确定像素点p为特征点,即fast角点。
54.像素点数量可以通过如下公式计算得到:
[0055][0056]
其中,n为像素点数量,i
x
为n个像素点中第x个像素点的像素值,ε
p
为给定阈值。
[0057]
可以理解的是,预设半径可以根据需要进行选取,例如可以选取3mm、4mm等,n的取值也可以根据需要进行设定,例如可以设定为16、25等。给定阈值可以根据允许的误差精度确定,此处不作具体限定。给定数量可以根据需要进行设定,例如可以设定为12。
[0058]
在进行特征点描述时,可以先以特征点为中心,对邻域内的多个特征点进行高斯平滑处理,并转换为二进制码,即得到符合高斯分布的二进制字符串,并将该二进制字符串作为初始描述子。然后确定特征点的质心方向信息,并将质心方向信息添加至初始描述子中,得到特征点的描述子。
[0059]
可以理解的是,质心方向信息可以通过如下公式计算得到:
[0060][0061]
其中,θ为特征点的质心方向信息,也即特征点处y轴与x轴的夹角。i(x,y)为特征点的邻域内各特征点的平均像素值,邻域的尺寸可以是5
×
5。
[0062]
图像中的特征线段可以通过直线提取(line segment detector,lsd)算法实现,lsd算法首先对图像f(x,y)利用高斯核函数g(x,y,σ)进行降采样处理,降采样处理后得到的图像为l(x,y,σ),即有:
[0063]
l(x,y,σ)=g(x,y,σ)f(x,y)
[0064]
其中,σ为降采样比例,为减缓或解决图像中出现的混叠与量化伪像问题,σ的取值范围可以是区间[0.7,1]。
[0065]
然后,利用每个像素点g(x,y)的右边四个像素进行lsd梯度计算,可以减少对梯度的依赖性,这样对有噪声的图像更具有鲁棒性。
[0066]
其中,x和y方向的梯度计算公式为:
[0067][0068][0069]
其中,i(x,y)为像素点g(x,y)的像素值,则像素点g(x,y)的梯度为:
[0070][0071]
计算完梯度之后,会发现,如果图像中有些小梯度区域表现非常均匀,由于像素值的量化,那里的像素就会表现出更高的误差。因此引入梯度阈值,如果某一像素点的梯度小于梯度阈值,则确定该像素点不能用于线段的构建。本发明实施例中,梯度阈值的取值范围可以设定为[15
°‑
35
°
],例如梯度阈值可以取值为20
°
、22.5
°
、25
°
、30
°
等。
[0072]
此后,进行矩形近似计算,以求得一个较为规整的直线区域,一个直线区域对应一个矩形,本发明实施例中,可以利用公式计算矩形的中心(c
x
,cy):
[0073][0074]
其中,g(j)为像素点j的梯度值,像素点j可以是直线区域r内的每一像素点,x(j)和y(j)分别是像素点j的横坐标值和纵坐标值。矩形的角度由特征向量m计算得到:
[0075][0076][0077][0078][0079]
至此,将检测到的在矩形区域内的像素点整合为线段,即得到特征线段。
[0080]
然后,可以根据特征点以及特征线段,确定相邻两帧图像中相匹配的特征点对以及特征线段对。即分别对相邻两帧图像进行特征点匹配以及特征线段匹配,得到相匹配的特征点对以及特征线段对。
[0081]
可以理解的是,特征点匹配可以通过快速最近邻算法确定相匹配的特征点对,特征线段匹配可以通过外观一致性验证和几何一致性验证确定相匹配的特征线段对,此处不作具体限定。相邻两帧图像中相匹配的特征点对的数量以及相匹配的特征线段对的数量均可以为一个或多个,根据实际情况确定。
[0082]
特征点匹配后,第i帧图像和第j帧图像之间可以具有特征点匹配误差,可以表示为e
orb
(i,j),同样地,特征线段匹配后,第i帧图像和第j帧图像之间可以具有特征线段匹配误差,可以表示为e
lsd
(i,j)。
[0083]
此后,执行步骤s2,通过匹配得到的特征点对以及特征线段对,对图像采集单元的位姿优化模型进行求解,得到图像采集单元的位姿参数的取值。此处,位姿参数可以用于表征图像采集单元的位姿信息,位姿参数通常可以用旋转矩阵r和平移矩阵t进行表示。位姿信息可以包括图像采集单元的位置信息和姿态信息,图像采集单元当前时刻的位姿信息可以通过图像采集单元前一时刻的位姿信息结合这两个时刻图像采集单元的位姿参数确定,此处不作具体限定。
[0084]
可以理解的是,图像采集单元的位姿优化模型可以通过相邻两帧图像的特征点匹配误差项以及特征线段匹配误差项构建,特征点匹配误差项是涉及特征点匹配误差的误差
项,特征线段匹配误差项是涉及特征线段匹配误差的误差项。特征点匹配误差以及特征线段匹配误差均可以通过图像采集单元的位姿参数进行表示。进而,图像采集单元的位姿优化模型可以将图像采集单元的位姿参数作为优化参数,将特征点匹配误差项与特征线段匹配误差项之和最小作为优化目标。即,图像采集单元的位姿优化模型可以表示为:
[0085]
φ=arg min
θ
(a b)
[0086]
其中,φ表示优化目标,θ表示图像采集单元的位姿参数,a为特征点匹配误差项,b为特征线段匹配误差项。
[0087]
此处,特征点匹配误差项可以包括特征点匹配误差以及第一权重,特征线段匹配误差项可以包括特征线段匹配误差以及第二权重。即有:
[0088]
a=λe
orb
(i,j)
[0089]
b=μe
lsd
(i,j)
[0090]
其中,e
orb
(i,j)表示特征点匹配误差,λ表示第一权重,e
lsd
(i,j)表示特征线段匹配误差,μ表示第二权重。e
orb
(i,j)以及e
lsd
(i,j)均可以通过θ进行表示,即二者均以θ为自变量。
[0091]
第一权重以及第二权重均可以通过匹配误差进行动态调节,即第一权重以及第二权重均可以通过匹配误差进行确定,此处匹配误差可以是特征点匹配误差,也可以是特征线段匹配误差。由于匹配误差与特征点或特征线段相关,即针对于不同帧图像均是动态变化的,因此通过匹配误差确定的第一权重以及第二权重也是动态变化的,进而可以保证匹配精度以及匹配收敛效率。
[0092]
第一权重既可以通过特征点匹配误差确定,也可以通过特征线段匹配误差确定,同样地,第二权重也可以通过特征点匹配误差或特征线段匹配误差确定。
[0093]
进而,通过步骤s1匹配得到的特征点对以及特征线段对,可以实现对图像采集单元的位姿优化模型的求解,即得到满足优化目标的θ的取值,通过得到的θ的取值可以表征图像采集单元的位姿信息的具体内容。
[0094]
本发明实施例中提供的位姿确定方法,该方法引入了特征线段的确定和匹配,并且采用的位姿优化模型引入了相邻两帧图像的特征点匹配误差项以及特征线段匹配误差项,如此可以提升位姿精度和地图重建效果。而且,位姿优化模型中特征点匹配误差项对应的第一权重以及特征线段匹配误差项对应的第二权重均基于匹配误差动态调整,如此可以加速匹配过程的收敛,提高位姿信息的确定效率。而且,由于第一权重与第二权重基于匹配误差动态调整,考虑了点线特征各自匹配的特点,提高了位姿信息求解的准确性。
[0095]
在上述实施例的基础上,本发明实施例中提供的位姿确定方法,所述相邻两帧图像包括第一图像和第二图像;
[0096]
所述方法还包括:
[0097]
基于所述特征点对中位于第一图像中的第一特征点在第二图像中的重投影位置信息以及第二特征点在所述第二图像中的位置信息,确定所述特征点对的重投影误差;其中,所述第二特征点的重投影位置信息基于所述位姿参数表示;
[0098]
基于所述特征点对的重投影误差,确定所述特征点匹配误差。
[0099]
具体地,本发明实施例中,特征点匹配误差是针对于相邻两帧图像而言,在确定特征点匹配误差时,可以先确定相邻两帧图像中相匹配的每个特征点对的重投影误差,每个
特征点对均包括两个特征点,即第一特征点以及第二特征点,二者分别位于相邻两帧图像中。此处,相邻两帧图像包括第一图像和第二图像,可以分别记为第i帧图像以及第j帧图像,且第j帧图像的拍摄时刻在后,第i帧图像的拍摄时刻在前,则第一特征点位于第i帧图像中,第二特征点位于第j帧图像中。
[0100]
对于相邻两帧图像的各特征点对中的任一特征点对,通过其中第一特征点在第二图像中的重投影位置信息以及第二特征点在第二图像中的位置信息,确定出该任一特征点对的重投影误差。假设第一特征点k在第i帧图像中的位置信息为xi,第一特征点k在第j帧图像中的匹配特征点为第二特征点k’,第二特征点k’的位置信息为xj。第一特征点k在第j帧图像中的重投影位置信息可以是xi经由图像采集单元的位姿参数转换得到的位置信息,可以表示为xi′
,则该任一特征点对的重投影误差可以表示为:
[0101]eorb
(xi)=||xi′‑
xj||=||(rjxi tj)-xj||
[0102]
其中,rj和tj分别为第j帧图像的旋转矩阵和平移矩阵,均为图像采集单元在第j帧图像的拍摄时刻的位姿参数。
[0103]
然后,通过相邻两帧图像中特征点对的重投影误差,则可以确定相邻两帧图像的特征点匹配误差。例如,可以通过将相邻两帧图像中各特征点对的重投影误差进行求和,并将得到的求和结果作为相邻两帧图像的特征点匹配误差。
[0104]
此处,可以如下公式计算相邻两帧图像的特征点匹配误差:
[0105][0106]
其中,k为第i帧图像中包含的所有特征点的数量,m为特征点匹配系数,当第i帧图像中的某一特征点在第j帧图像中存在匹配的特征点时对应的m取值为1,否则对应的m取值为0。由此可知,m取值为1的次数即为第i帧图像与第j帧图像中相匹配的特征点对的数量。
[0107]
本发明实施例中,通过相邻两帧图像中相匹配的特征点对的重投影误差确定出相邻两帧图像的特征点匹配误差,如此可以考虑相邻两帧图像的整体特征点匹配情况,便于后续通过位姿优化模型对位姿参数的求解。
[0108]
在上述实施例的基础上,本发明实施例中提供的位姿确定方法,所述相邻两帧图像包括第一图像和第二图像;
[0109]
所述方法还包括:
[0110]
基于所述特征线段对中第一特征线段的角度信息以及第二特征线段的角度信息,确定所述特征线段对的角度变化信息,并基于所述第一特征线段在所述第一图像中的位置信息以及所述第二特征线段在所述第二图像中的位置信息,确定所述特征线段对的位置变化信息;
[0111]
基于所述特征线段对的角度变化信息以及位置变化信息,确定所述第二图像相对于所述第一图像的位姿参数,并基于所述位姿参数,确定所述特征线段匹配误差。
[0112]
具体地,本发明实施例中,特征线段匹配误差是针对于相邻两帧图像而言,在确定特征线段匹配误差时,可以先确定相邻两帧图像中相匹配的每个特征线段对的角度变化信息以及位置变化信息,每个特征线段对均包括两个特征线段,即第一特征线段以及第二特征线段,二者分别位于相邻两帧图像中。此处,相邻两帧图像包括第一图像和第二图像,可
以分别记为第i帧图像以及第j帧图像,且第j帧图像的拍摄时刻在后,第i帧图像的拍摄时刻在前,则第一特征线段位于第i帧图像中,第二特征线段位于第j帧图像中。
[0113]
对于相邻两帧图像的各特征线段对中的任一特征线段对,由于该任一特征线段对中的第一特征线段li以及第二特征线段lj自身均具有角度信息,则通过比对第一特征线段li以及第二特征线段lj,可以得到相邻两帧图像中该特征线段对的角度变化信息。
[0114]
第一特征线段li在第i帧图像中的位置信息可以通过中心坐标表示,即为(xi,yi),第二特征线段lj在第j帧图像中的位置信息可以通过中心坐标表示,即为(xj,yj)。则第一特征线段li与第二特征线段lj之间的中心坐标对应关系可以表示为:
[0115][0116]
其中,t
ij
为该任一特征线段对的位置变化信息,也即第二特征线段lj相对于第一特征线段li的平移矩阵。
[0117]
进而,对相邻两帧图像中各特征线段对的角度变化信息进行平均加权,可以得到相邻两帧图像的旋转角度,即得到第j帧图像相对于第i帧图像的旋转矩阵rj。对相邻两帧图像中各特征线段对的位置变化信息进行平均加权,可以得到相邻两帧图像的平移矩阵,即得到第j帧图像相对于第i帧图像的平移矩阵tj。旋转矩阵rj以及平移矩阵tj即构成第j帧图像相对于第i帧图像的位姿参数。
[0118]
最后,可以通过第j帧图像相对于第i帧图像的位姿参数,确定相邻两帧图像的特征线段匹配误差。例如,可以通过第j帧图像相对于第i帧图像的位姿参数,确定第i帧图像中各第一特征线段li在第j帧图像中的重投影线段,并计算各重投影线段与对应的第二特征线段lj之间的差值绝对值,并将所有差值绝对值进行求和,将得到的求和结果作为相邻两帧图像的特征线段匹配误差。
[0119]
此处,可以如下公式计算相邻两帧图像的特征线段匹配误差:
[0120][0121]
其中,d为第i帧图像中包含的所有特征线段的数量,s为特征线段匹配系数,当第i帧图像中的某一特征线段在第j帧图像中存在匹配的特征点时对应的s取值为1,否则对应的s取值为0。由此可知,s取值为1的次数即为第i帧图像与第j帧图像中相匹配的特征线段对的数量。
[0122]
本发明实施例中,通过相邻两帧图像中相匹配的特征线段对的角度变化信息以及位置变化信息,确定出第二图像相对于第一图像的位姿参数,并结合位姿参数,确定出特征线段匹配误差,如此可以考虑相邻两帧图像的整体特征线段匹配情况,便于后续通过位姿优化模型对位姿参数的求解。
[0123]
在上述实施例的基础上,本发明实施例中提供的位姿确定方法,所述位姿优化模型以所述位姿参数为优化参数,以所述特征点匹配误差项与所述特征线段匹配误差项之和最小为优化目标;
[0124]
所述基于所述各特征点对以及所述各特征线段对,对所述图像采集单元的位姿优化模型进行求解,得到所述图像采集单元的位姿参数的取值,包括:
[0125]
将所述特征点对以及所述特征线段对均代入至所述位姿优化模型,确定所述位姿优化模型在满足优化目标时的优化参数的取值,并确定所述优化参数的取值为所述位姿参数的取值。
[0126]
具体地,本发明实施例中,位姿优化模型可以是将位姿参数作为优化参数,将特征点匹配误差项与特征线段匹配误差项之和最小作为优化目标。此时,在求解位姿优化模型时,可以将相邻两帧图像的各特征点对以及各特征线段对均代入至位姿优化模型,则可以确定出位姿优化模型在满足优化目标时的优化参数的取值,此时,优化参数的取值即为图像采集单元的位姿参数的取值,可以用于表征当前时刻图像采集单元的位姿信息。
[0127]
本发明实施例中,通过相邻两帧图像的各特征点对以及各特征线段对,对图像采集单元的位姿优化模型进行求解,可以使求解得到的图像采集单元的位姿参数的取值更加准确,进而保证图像采集单元的位姿信息的准确性。
[0128]
在上述实施例的基础上,本发明实施例中提供的位姿确定方法,所述方法还包括:
[0129]
计算所述特征线段匹配误差与所述特征点匹配误差的求和结果;
[0130]
基于所述特征线段匹配误差以及所述求和结果,确定所述第一权重。
[0131]
具体地,本发明实施例中,在确定第一权重时,可以先计算特征线段匹配误差与特征点匹配误差的求和结果,即有e
orb
(i,j) e
lsd
(i,j)。
[0132]
然后,可以根据特征线段匹配误差以及上述求和结果,确定出第一权重,例如可以将特征线段匹配误差与上述求和结果的比值作为第一权重,即有:
[0133][0134]
本发明实施例中,通过将特征线段匹配误差引入第一权重,可以使特征线段匹配误差对特征点匹配误差进行补偿,给予较小的误差项以较大的权重,进而可以提高计算效率和精度。
[0135]
在上述实施例的基础上,本发明实施例中提供的位姿确定方法,所述方法还包括:
[0136]
基于所述特征点匹配误差以及所述求和结果,确定所述第二权重。
[0137]
具体地,本发明实施例中,在确定第二权重时,也可以先计算特征线段匹配误差与特征点匹配误差的求和结果,即有e
orb
(i,j) e
lsd
(i,j)。
[0138]
然后,可以根据特征点匹配误差以及上述求和结果,确定出第二权重,例如可以将特征线段匹配误差与上述求和结果的比值作为第二权重,即有:
[0139][0140]
本发明实施例中,通过将特征点匹配误差引入第二权重,可以使特征点匹配误差对特征线段匹配误差进行补偿,给予较小的误差项以较大的权重,进而可以提高计算效率和精度。
[0141]
在上述实施例的基础上,本发明实施例中提供的位姿确定方法,所述基于所述各特征点对以及所述各特征线段对,对所述图像采集单元的位姿优化模型进行求解,得到所述图像采集单元的位姿参数的取值,之后还包括:
[0142]
基于所述图像采集单元的位姿参数的取值,确定所述图像采集单元所处的设备的
位姿参数的取值,所述设备的位姿参数用于表征所述设备的位姿信息。
[0143]
具体地,本发明实施例中,在确定出图像采集单元的位姿参数的取值之后,还可以根据图像采集单元的位姿参数的取值,确定出图像采集单元所处的设备的位姿参数的取值。可以理解的是,图像采集单元的位姿参数是在图像采集单元坐标系下得到的,而图像采集单元是固定安装于所处的设备上,进而图像采集单元与所处的设备之间的相对位置关系是固定的。因此,要确定设备的位姿参数,即世界坐标系下设备的位姿参数,可以结合图像采集单元与所处的设备之间的相对位置关系,将图像采集单元坐标系下图像采集单元的位姿参数转换为世界坐标系下设备的位姿参数。此处,转换过程可以通过常规的标定算法实现,此处不再赘述。
[0144]
设备的位姿参数则可以用于表征设备的位姿信息。
[0145]
本发明实施例中,可以将得到的图像采集单元的位姿参数应用于确定设备的位姿参数,进而确定设备的位姿信息,可以有助于设备的无人驾驶。增加设备的应用场景。
[0146]
在上述实施例的基础上,本发明实施例中提供的位姿确定方法,所述基于所述特征点对以及所述特征线段对,对所述图像采集单元的位姿优化模型进行求解,得到所述图像采集单元的位姿信息,之前包括:
[0147]
基于误匹配剔除算法,对所述特征点对以及所述特征线段对进行筛选。
[0148]
具体地,本发明实施例中,在利用特征点匹配得到的各特征点对以及特征线段匹配得到的各特征线段对,对图像采集单元的位姿优化模型进行求解得到图像采集单元的位姿信息之前,可以利用误匹配剔除算法,对各特征点对以及各特征线段对进行筛选。误匹配剔除算法可以采用随机采样一致性(random sample consensus,ransac)算法或渐进样本一致性(progressive sampling consensus,prosac)算法剔除错误匹配的特征点对以及特征线段对,直至匹配精度达到给定阈值。该给定阈值可以根据需要进行设置,例如其取值范围可以设置为大于0.9,可以优选0.96等值。
[0149]
进而,可以利用剔除错误匹配的特征点对以及特征线段对之后的剩余特征点对以及特征线段对,对图像采集单元的位姿优化模型进行求解,得到所述图像采集单元的位姿参数的取值。如此可以加快图像采集单元的位姿优化模型的收敛速度,提高图像采集单元的位姿优化模型的求解效率。
[0150]
图2为本发明实施例中提供的位姿确定方法的完整流程示意图,如图2所示,该方法包括:
[0151]
获取图像采集单元采集的相邻两帧图像;
[0152]
提取相邻两帧图像中的特征点以及特征线段;
[0153]
对相邻两帧图像中的特征点进行匹配,得到相匹配的特征点对;
[0154]
对相邻两帧图像中的特征线段进行匹配,得到相匹配的特征线段对;
[0155]
采用ransac算法等误匹配剔除算法对特征点对以及特征线段对进行筛选;
[0156]
通过筛选后的特征点对以及特征线段对图像采集单元的位姿优化模型进行求解,得到图像采集单元的位姿参数的取值。
[0157]
至此,图像采集单元的位姿信息的确定流程结束。
[0158]
如图3所示,在上述实施例的基础上,本发明实施例中提供了一种位姿确定装置,包括:
[0159]
匹配模块31,用于获取图像采集单元采集的相邻两帧图像,并确定所述相邻两帧图像中的特征点以及特征线段,基于所述特征点以及所述特征线段,确定所述相邻两帧图像中相匹配的特征点对以及特征线段对;
[0160]
确定模块32,用于基于所述特征点对以及所述特征线段对,对所述图像采集单元的位姿优化模型进行求解,得到所述图像采集单元的位姿参数的取值;所述位姿参数用于表征所述图像采集单元的位姿信息;
[0161]
其中,所述位姿优化模型基于所述相邻两帧图像的特征点匹配误差项以及特征线段匹配误差项构建,所述特征点匹配误差项对应的第一权重以及所述特征线段匹配误差项对应的第二权重均基于匹配误差动态调整,所述匹配误差为特征线段匹配误差或特征点匹配误差,所述匹配误差基于所述位姿参数表示。
[0162]
在上述实施例的基础上,本发明实施例中提供的位姿确定装置,所述相邻两帧图像包括第一图像和第二图像;
[0163]
所述装置包括特征点匹配误差确定模块,用于:
[0164]
基于所述特征点对中位于所述第一图像中的第一特征点在所述第二图像中的重投影位置信息以及第二特征点在所述第二图像中的位置信息,确定所述特征点对的重投影误差;其中,所述第二特征点的重投影位置信息基于所述位姿参数表示;
[0165]
基于所述特征点对的重投影误差,确定所述特征点匹配误差。
[0166]
在上述实施例的基础上,本发明实施例中提供的位姿确定装置,所述相邻两帧图像包括第一图像和第二图像;
[0167]
所述装置包括特征线段匹配误差确定模块,用于:
[0168]
基于所述特征线段对中第一特征线段的角度信息以及第二特征线段的角度信息,确定所述特征线段对的角度变化信息,并基于所述第一特征线段在所述第一图像中的位置信息以及所述第二特征线段在所述第二图像中的位置信息,确定所述特征线段对的位置变化信息;
[0169]
基于所述特征线段对的角度变化信息以及位置变化信息,确定所述第二图像相对于所述第一图像的位姿参数,并基于所述位姿参数,确定所述特征线段匹配误差。
[0170]
在上述实施例的基础上,本发明实施例中提供的位姿确定装置,所述位姿优化模型以所述位姿参数为优化参数,以所述特征点匹配误差项与所述特征线段匹配误差项之和最小为优化目标;
[0171]
所述确定模块,用于:
[0172]
将所述特征点对以及所述特征线段对均代入至所述位姿优化模型,确定所述位姿优化模型在满足优化目标时的优化参数的取值,并确定所述优化参数的取值为所述位姿参数的取值。
[0173]
在上述实施例的基础上,本发明实施例中提供的位姿确定装置,还包括第一权重确定模块,用于:
[0174]
计算所述特征线段匹配误差与所述特征点匹配误差的求和结果;
[0175]
基于所述特征线段匹配误差以及所述求和结果,确定所述第一权重。
[0176]
在上述实施例的基础上,本发明实施例中提供的位姿确定装置,还包括第二权重确定模块,用于:
[0177]
基于所述特征点匹配误差以及所述求和结果,确定所述第二权重。
[0178]
在上述实施例的基础上,本发明实施例中提供的位姿确定装置,还包括应用模块,用于:
[0179]
基于所述图像采集单元的位姿参数的取值,确定所述图像采集单元所处的设备的位姿参数的取值,所述设备的位姿参数用于表征所述设备的位姿信息。
[0180]
在上述实施例的基础上,本发明实施例中提供的位姿确定装置,还包括筛选模块,用于:
[0181]
基于误匹配剔除算法,对所述特征点对以及所述特征线段对进行筛选。
[0182]
具体地,本发明实施例中提供的位姿确定装置中各模块的作用与上述方法类实施例中各步骤的操作流程是一一对应的,实现的效果也是一致的,具体参见上述实施例,本发明实施例中对此不再赘述。
[0183]
在上述实施例的基础上,本发明实施例中提供了一种作业机械,包括作业机械本体、安装于所述作业机械本体上的图像采集单元以及上述各实施例中提供的位姿确定装置,所述图像采集单元与所述位姿确定装置通信连接。
[0184]
具体地,本发明实施例中提供的作业机械,包括作业机械本体,该作业机械本体可以是现有技术中存在的作业机械的本身,可以包括:钻探机械、挖掘机械、装载机械、运载机械、市政机械、破碎机、以及驾驶员驾驶的车辆中的至少一种。挖掘机械是用于挖掘矿山的作业机械。装载机械是用于将货物装载到运载机械中的作业机械。装载机械包括液压挖掘机、电动挖掘机和轮式装载机中的至少一种。运载机械是用于运载货物的作业机械。市政机械是用于城市道路清扫美化的作业机械,例如清扫车、洒水车和吸尘车。破碎机是对从运载机械投入的土石进行破碎的作业机械。
[0185]
本发明实施例中提供的作业机械还包括安装于作业机械本体上的图像采集单元,该图像采集单元可以安装于作业机械本体的外顶部。图像采集单元的数量可以根据需要进行设置,可以为一个或多个。
[0186]
除此之外,本发明实施例中提供的作业机械还包括上述各实施例中提供的位姿确定装置,该位姿确定装置与安装于作业机械本体上的图像采集单元通信连接。该位姿确定装置可以通过图像采集单元采集的相邻两帧图像确定出图像采集单元的位姿参数的取值,进而确定出图像采集单元的位姿信息。进一步地,通过图像采集单元的位姿参数的取值,可以换算得到作业机械的位姿参数的取值,进而确定出作业机械的位姿信息。
[0187]
本发明实施例中,在作业机械中引入图像采集单元以及位姿确定装置,可以实现对自身的位姿信息的确定,以便于作业机械的无人化控制,使作业机械在无人驾驶时,也能够自行感知周围环境,监测目标物料状态,并在极端条件下检测杂质和障碍物,同时避免与障碍物发生碰撞,还可以处理多种环境和材料,并在不同的天气条件下正常工作。
[0188]
图4示例了一种电子设备的实体结构示意图,如图4所示,该电子设备可以包括:处理器(processor)410、通信接口(communications interface)420、存储器(memory)430和通信总线440,其中,处理器410,通信接口420,存储器430通过通信总线440完成相互间的通信。处理器410可以调用存储器430中的逻辑指令,以执行上述各实施例中提供的位姿确定方法,该方法包括:获取图像采集单元采集的相邻两帧图像,并确定所述相邻两帧图像中的特征点以及特征线段,基于所述特征点以及所述特征线段,确定所述相邻两帧图像中相匹
配的特征点对以及特征线段对;基于所述特征点对以及所述特征线段对,对所述图像采集单元的位姿优化模型进行求解,得到所述图像采集单元的位姿参数的取值;所述位姿参数用于表征所述图像采集单元的位姿信息;其中,所述位姿优化模型基于所述相邻两帧图像的特征点匹配误差项以及特征线段匹配误差项构建,所述特征点匹配误差项对应的第一权重以及所述特征线段匹配误差项对应的第二权重均基于匹配误差动态调整,所述匹配误差为特征线段匹配误差或特征点匹配误差,所述匹配误差基于所述位姿参数表示。
[0189]
此外,上述的存储器430中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0190]
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各实施例中提供的位姿确定方法,该方法包括:获取图像采集单元采集的相邻两帧图像,并确定所述相邻两帧图像中的特征点以及特征线段,基于所述特征点以及所述特征线段,确定所述相邻两帧图像中相匹配的特征点对以及特征线段对;基于所述特征点对以及所述特征线段对,对所述图像采集单元的位姿优化模型进行求解,得到所述图像采集单元的位姿参数的取值;所述位姿参数用于表征所述图像采集单元的位姿信息;其中,所述位姿优化模型基于所述相邻两帧图像的特征点匹配误差项以及特征线段匹配误差项构建,所述特征点匹配误差项对应的第一权重以及所述特征线段匹配误差项对应的第二权重均基于匹配误差动态调整,所述匹配误差为特征线段匹配误差或特征点匹配误差,所述匹配误差基于所述位姿参数表示。
[0191]
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例中提供的位姿确定方法,该方法包括:获取图像采集单元采集的相邻两帧图像,并确定所述相邻两帧图像中的特征点以及特征线段,基于所述特征点以及所述特征线段,确定所述相邻两帧图像中相匹配的特征点对以及特征线段对;基于所述特征点对以及所述特征线段对,对所述图像采集单元的位姿优化模型进行求解,得到所述图像采集单元的位姿参数的取值;所述位姿参数用于表征所述图像采集单元的位姿信息;其中,所述位姿优化模型基于所述相邻两帧图像的特征点匹配误差项以及特征线段匹配误差项构建,所述特征点匹配误差项对应的第一权重以及所述特征线段匹配误差项对应的第二权重均基于匹配误差动态调整,所述匹配误差为特征线段匹配误差或特征点匹配误差,所述匹配误差基于所述位姿参数表示。
[0192]
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性
的劳动的情况下,即可以理解并实施。
[0193]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0194]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
转载请注明原文地址:https://tc.8miu.com/read-3089.html