一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

图像拼接方法及装置与流程

2021-11-25 00:40:00 来源:中国专利 TAG:


1.本发明涉及图像处理技术领域,具体而言,涉及一种图像拼接方法及装置。


背景技术:

2.随着互联网技术的发展以及5g网络的普及,远程操作系统在医疗、军事、工业等各大领域都得到了广泛的应用。为了满足操作员的操作需求,远程操作系统需要确保能够将操作现场的图像实时地传输至远程操作台进行显示。同时为了支持某些高风险远程作业,例如远程驾驶,远程操作系统还需要确保操作员能够获得近似于亲临现场的视觉感知信息。已知人眼的水平视角范围可达180
°
以上,为了达到类似的视野范围,远程操作系统需要实现将多路相机采集到的现场图像拼接成全景图像的功能。
3.相关技术中,一般通过获取各路相机图像的特征点,并直接将相机坐标系下的图像进行特征点匹配,将相同或相似的特征点合并为一个特征点,以实现多路相机图像的拼接。然而,基于图像特征点的图像拼接方法一方面受环境影响(例如光线、雨雾)较大,导致图像拼接算法鲁棒性较差;另一方面算法复杂度较高,难以保证图像拼接的实时性。


技术实现要素:

4.本发明提供了一种图像拼接方法及装置,以简化图像拼接算法的复杂度,提高图像拼接效率,并且简化后的算法受外部环境变化影响小,从而提高了算法的鲁棒性。具体的技术方案如下:
5.第一方面,本发明实施例提供了一种图像拼接方法,所述方法包括:
6.获取第一相机的第一无畸变图像以及第二相机的第二无畸变图像;
7.根据所述第一相机的光心和所述第一相机的焦距确定第一投影柱面,以及根据所述第二相机的光心和所述第二相机的焦距确定第二投影柱面;
8.根据所述第一无畸变图像相对于所述第一相机的相机坐标系中坐标轴的第一旋转修正角度和所述第一相机的原始外参矩阵,确定所述第一相机的相机成像平面与所述第一投影柱面的第一空间关系,以及根据所述第二无畸变图像相对于所述第二相机的相机坐标系中坐标轴的第二旋转修正角度和所述第二相机的原始外参矩阵,确定所述第二相机的相机成像平面与所述第二投影柱面的第二空间关系;
9.根据所述第一空间关系将所述第一无畸变图像映射至所述第一投影柱面,获得第一投影图像,以及根据所述第二空间关系将所述第二无畸变图像映射至所述第二投影柱面,获得第二投影图像;
10.将所述第一投影图像和所述第二投影图像的重叠区域的像素值进行叠加作为拼接后的像素值,获得所述第一投影图像和所述第二投影图像拼接后的投影图像。
11.可选的,根据所述第一相机的光心和所述第一相机的焦距确定第一投影柱面,以及根据所述第二相机的光心和所述第二相机的焦距确定第二投影柱面,包括:
12.将中心轴穿过所述第一相机的光心、半径为所述第一相机的焦距,且垂直于所述
第一相机所在水平面的柱面确定为所述第一投影柱面;
13.将中心轴穿过所述第二相机的光心、半径为所述第二相机的焦距,且垂直于所述第二相机所在水平面的柱面确定为所述第二投影柱面。
14.可选的,根据所述第一无畸变图像相对于所述第一相机的相机坐标系中坐标轴的第一旋转修正角度和所述第一相机的原始外参矩阵,确定所述第一相机的相机成像平面与所述第一投影柱面的第一空间关系,包括:
15.确定所述第一无畸变图像相对于所述第一相机的相机坐标系中坐标轴的第一旋转修正角度;
16.根据所述第一旋转修正角度确定第一旋转矩阵;
17.根据所述第一旋转矩阵对所述第一相机的原始外参矩阵进行修正,获得第一修正外参矩阵;
18.根据所述第一修正外参矩阵,确定所述第一相机的相机成像平面与所述第一投影柱面的第一空间关系。
19.可选的,根据所述第二无畸变图像相对于所述第二相机的相机坐标系中坐标轴的第二旋转修正角度和所述第二相机的原始外参矩阵,确定所述第二相机的相机成像平面与所述第二投影柱面的第二空间关系,包括:
20.确定所述第二无畸变图像相对于所述第二相机的相机坐标系中坐标轴的第二旋转修正角度;
21.根据所述第二旋转修正角度确定第二旋转矩阵;
22.根据所述第二旋转矩阵对所述第二相机的原始外参矩阵进行修正,获得第二修正外参矩阵;
23.根据所述第二修正外参矩阵,确定所述第二相机的相机成像平面与所述第二投影柱面的第二空间关系。
24.可选的,所述旋转矩阵包括针对x轴的旋转矩阵x、针对y轴的旋转矩阵y以及针对z轴的旋转矩阵z;所述旋转矩阵对应的修正外参矩阵m'=m
×
x
×
y
×
z,其中,所述m为原始外参矩阵,
25.所述旋转矩阵x为
[0026][0027]
所述旋转矩阵y为
[0028][0029]
所述旋转矩阵z为
[0030]
[0031]
所述x、所述y、所述z分别为所述旋转矩阵对应的无畸变图像相对于所述旋转矩阵对应的相机坐标系x轴、y轴和z轴的旋转修正角度。
[0032]
可选的,将所述第一投影图像和所述第二投影图像的重叠区域的像素值进行叠加作为拼接后的像素值,获得所述第一投影图像和所述第二投影图像拼接后的投影图像,包括:
[0033]
确定所述第一投影图像和所述第二投影图像的重叠区域;
[0034]
根据所述重叠区域的宽度、所述第一投影图像在所述重叠区域中的像素点相对于目标边界的偏移量,对所述第一投影图像在所述重叠区域中像素点的像素值进行调整,获得第一调整像素值,以及根据所述重叠区域的宽度、所述第二投影图像在所述重叠区域中的像素点相对于所述目标边界的偏移量,对所述第二投影图像在所述重叠区域中像素点的像素值进行调整,获得第二调整像素值,其中,所述目标边界为所述重叠区域中一个表征高度的边界;
[0035]
对于所述重叠区域中的同一个像素点,将所述同一个像素点的第一调整像素值和所述第二调整像素值的和,作为针对所述同一个像素点进行拼接后的像素值,对于所述第一投影图像和所述第二投影图像中的非重叠区域中的像素点,保留原有像素值,以获得所述第一投影图像和所述第二投影图像拼接后的投影图像。
[0036]
可选的,根据所述重叠区域的宽度、所述第一投影图像在所述重叠区域中的像素点相对于目标边界的偏移量,对所述第一投影图像在所述重叠区域中像素点的像素值进行调整,获得第一调整像素值,包括:
[0037]
当所述目标边界为所述第二投影图像中表征高度的边界时,根据第一调整公式计算所述第一调整像素值r1';
[0038]
所述第一调整公式为
[0039][0040]
当所述目标边界为所述第一投影图像中表征高度的边界时,根据第二调整公式计算所述第一调整像素值r1';
[0041]
所述第二调整公式为
[0042][0043]
其中,r1为所述第一投影图像在所述重叠区域中的像素点的像素值,所述c为所述重叠区域的宽度,所述a1为所述第一投影图像在所述重叠区域中的像素点相对于目标边界的偏移量。
[0044]
可选的,根据所述重叠区域的宽度、所述第二投影图像在所述重叠区域中的像素点相对于所述目标边界的偏移量,对所述第二投影图像在所述重叠区域中像素点的像素值
进行调整,获得第二调整像素值,包括:
[0045]
当所述目标边界为所述第二投影图像中表征高度的边界时,根据第三调整公式计算所述第一调整像素值r2',
[0046]
所述第三调整公式为
[0047][0048]
当所述目标边界为所述第一投影图像中表征高度的边界时,根据第四调整公式计算所述第一调整像素值r2',
[0049]
所述第四调整公式为
[0050][0051]
其中,r2为所述第二投影图像在所述重叠区域中的像素点的像素值,所述c为所述重叠区域的宽度,所述a2为所述第二投影图像在所述重叠区域中的像素点相对于目标边界的偏移量。
[0052]
可选的,获取第一相机的第一无畸变图像以及第二相机的第二无畸变图像,包括:
[0053]
获取所述第一相机采集的第一原始图像和所述第二相机采集的第二原始图像;
[0054]
根据相机标定算法分别对所述第一相机和所述第二相机进行标定,获得所述第一相机的内部参数和所述第二相机的内部参数;
[0055]
根据图像去畸变算法和所述第一相机的内部参数,对所述第一原始图像进行去畸变处理,获得所述第一无畸变图像,根据所述图像去畸变算法和所述第二相机的内部参数,对所述第二原始图像进行去畸变处理,获得所述第二无畸变图像。
[0056]
第二方面,本发明实施例提供了一种图像拼接装置,所述装置包括:
[0057]
获取单元,用于获取第一相机的第一无畸变图像以及第二相机的第二无畸变图像;
[0058]
第一确定单元,用于根据所述第一相机的光心和所述第一相机的焦距确定第一投影柱面,以及根据所述第二相机的光心和所述第二相机的焦距确定第二投影柱面;
[0059]
第二确定单元,用于根据所述第一无畸变图像相对于所述第一相机的相机坐标系中坐标轴的第一旋转修正角度和所述第一相机的原始外参矩阵,确定所述第一相机的相机成像平面与所述第一投影柱面的第一空间关系,以及根据所述第二无畸变图像相对于所述第二相机的相机坐标系中坐标轴的第二旋转修正角度和所述第二相机的原始外参矩阵,确定所述第二相机的相机成像平面与所述第二投影柱面的第二空间关系;
[0060]
映射单元,用于根据所述第一空间关系将所述第一无畸变图像映射至所述第一投影柱面,获得第一投影图像,以及根据所述第二空间关系将所述第二无畸变图像映射至所述第二投影柱面,获得第二投影图像;
[0061]
拼接单元,用于将所述第一投影图像和所述第二投影图像的重叠区域的像素值进行叠加作为拼接后的像素值,获得所述第一投影图像和所述第二投影图像拼接后的投影图像。
[0062]
可选的,所述第一确定单元包括:
[0063]
第一确定模块,用于将中心轴穿过所述第一相机的光心、半径为所述第一相机的焦距,且垂直于所述第一相机所在水平面的柱面确定为所述第一投影柱面;
[0064]
第二确定模块,用于将中心轴穿过所述第二相机的光心、半径为所述第二相机的焦距,且垂直于所述第二相机所在水平面的柱面确定为所述第二投影柱面。
[0065]
可选的,所述第二确定单元包括:
[0066]
第三确定模块,用于确定所述第一无畸变图像相对于所述第一相机的相机坐标系中坐标轴的第一旋转修正角度;
[0067]
第四确定模块,用于根据所述第一旋转修正角度确定第一旋转矩阵;
[0068]
第一修正模块,用于根据所述第一旋转矩阵对所述第一相机的原始外参矩阵进行修正,获得第一修正外参矩阵;
[0069]
第五确定模块,用于根据所述第一修正外参矩阵,确定所述第一相机的相机成像平面与所述第一投影柱面的第一空间关系。
[0070]
可选的,所述第二确定单元包括:
[0071]
第六确定模块,用于确定所述第二无畸变图像相对于所述第二相机的相机坐标系中坐标轴的第二旋转修正角度;
[0072]
第七确定模块,用于根据所述第二旋转修正角度确定第二旋转矩阵;
[0073]
第二修正模块,用于根据所述第二旋转矩阵对所述第二相机的原始外参矩阵进行修正,获得第二修正外参矩阵;
[0074]
第八确定模块,用于根据所述第二修正外参矩阵,确定所述第二相机的相机成像平面与所述第二投影柱面的第二空间关系。
[0075]
可选的,所述旋转矩阵包括针对x轴的旋转矩阵x、针对y轴的旋转矩阵y以及针对z轴的旋转矩阵z,所述旋转矩阵对应的修正外参矩阵m'=m
×
x
×
y
×
z,其中,所述m为原始外参矩阵,
[0076]
所述旋转矩阵x为
[0077][0078]
和/或,所述旋转矩阵y为
[0079][0080]
和/或,所述旋转矩阵z为
[0081][0082]
所述x、所述y、所述z分别为所述旋转矩阵对应的无畸变图像相对于所述旋转矩阵对应的相机坐标系x轴、y轴和z轴的旋转修正角度。
[0083]
可选的,所述拼接单元包括:
[0084]
第九确定模块,用于确定所述第一投影图像和所述第二投影图像的重叠区域;
[0085]
第一调整模块,用于根据所述重叠区域的宽度、所述第一投影图像在所述重叠区域中的像素点相对于目标边界的偏移量,对所述第一投影图像在所述重叠区域中像素点的像素值进行调整,获得第一调整像素值;
[0086]
第二调整模块,用于根据所述重叠区域的宽度、所述第二投影图像在所述重叠区域中的像素点相对于所述目标边界的偏移量,对所述第二投影图像在所述重叠区域中像素点的像素值进行调整,获得第二调整像素值;所述目标边界为所述重叠区域中一个表征高度的边界;
[0087]
拼接模块,用于对于所述重叠区域中的同一个像素点,将所述同一个像素点的第一调整像素值和所述第二调整像素值的和,作为针对所述同一个像素点进行拼接后的像素值;对于所述第一投影图像和所述第二投影图像中的非重叠区域中的像素点,保留原有像素值;以获得所述第一投影图像和所述第二投影图像拼接后的投影图像。
[0088]
可选的,第一调整模块,用于
[0089]
当所述目标边界为所述第二投影图像中表征高度的边界时,根据第一调整公式计算所述第一调整像素值r1',
[0090]
所述第一调整公式为
[0091][0092]
当所述目标边界为所述第一投影图像中表征高度的边界时,根据第二调整公式计算所述第一调整像素值r1',
[0093]
所述第二调整公式为
[0094][0095]
其中,r1为所述第一投影图像在所述重叠区域中的像素点的像素值,所述c为所述重叠区域的宽度,所述a1为所述第一投影图像在所述重叠区域中的像素点相对于目标边界的偏移量。
[0096]
可选的,第二调整模块,用于
[0097]
当所述目标边界为所述第二投影图像中表征高度的边界时,根据第三调整公式计
算所述第一调整像素值r2',
[0098]
所述第三调整公式为
[0099][0100]
当所述目标边界为所述第一投影图像中表征高度的边界时,根据第四调整公式计算所述第一调整像素值r2';
[0101]
所述第四调整公式为
[0102][0103]
其中,r2为所述第二投影图像在所述重叠区域中的像素点的像素值,所述c为所述重叠区域的宽度,所述a2为所述第二投影图像在所述重叠区域中的像素点相对于目标边界的偏移量。
[0104]
可选的,所述获取单元包括:
[0105]
获取模块,用于获取所述第一相机采集的第一原始图像和所述第二相机采集的第二原始图像;
[0106]
标定模块,用于根据相机标定算法分别对所述第一相机和所述第二相机进行标定,获得所述第一相机的内部参数和所述第二相机的内部参数;
[0107]
去畸变模块,用于根据图像去畸变算法和所述第一相机的内部参数,对所述第一原始图像进行去畸变处理,获得所述第一无畸变图像,根据所述图像去畸变算法和所述第二相机的内部参数,对所述第二原始图像进行去畸变处理,获得所述第二无畸变图像。
[0108]
第三方面,本发明实施例提供了一种存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器实现第一方面所述的方法。
[0109]
第四方面,本发明实施例提供了一种远程操作系统,所述系统包括:
[0110]
一个或多个处理器;
[0111]
存储装置,用于存储一个或多个程序,
[0112]
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现第一方面所述的方法。
[0113]
由上述内容可知,本发明实施例提供的图像拼接方法及装置,能够先分别建立两路相机的第一投影柱面和第二投影柱面,然后确定第一相机的相机成像平面与第一投影柱面的第一空间关系,第二相机的相机成像平面与第二投影柱面的第二空间关系,再根据第一空间关系将第一相机的第一无畸变图像映射至第一投影柱面得到第一投影图像,根据第二空间关系将第二相机的第二无畸变图像映射至第二投影柱面得到第二投影图像,最后直接通过将两个投影图像重叠区域的像素值叠加来实现图像拼接。由于投影图像的确定过程以及通过像素叠加实现图像拼接都与外界环境无关,且该算法复杂度远远低于寻找特征点
并进行特征点匹配,所以本发明实施例能够提高图像拼接算法的鲁棒性以及图像拼接的效率。
[0114]
此外,本发明实施例还可以实现的技术效果包括:
[0115]
1、在确定相机成像平面与投影柱面的空间关系时,并不是直接根据相机的外参矩阵进行确定,而是先通过根据相机的无畸变图像相对于相机坐标系中坐标轴的旋转修正角度确定的旋转矩阵对相机的外参矩阵进行修正,再利用修正的外参矩阵确定空间关系,从而提高了空间关系的准确性。
[0116]
2、在对两个投影图像进行拼接时,并不是直接将重叠区域的像素值进行加和,而是考虑到图像重叠对原本像素值的影响,先对原始像素值进行调整,再将调整后的像素值进行加和,从而提高了图像拼接的准确性。
[0117]
当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
[0118]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例。对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0119]
图1为本发明实施例提供的一种图像拼接方法的流程示意图;
[0120]
图2为本发明实施例提供的一种两路相机布置示意图;
[0121]
图3为本发明实施例提供的一种投影柱面和相机成像平面的示例图;
[0122]
图4为本发明实施例提供的一种投影图像拼接的示例图;
[0123]
图5为本发明实施例提供的一种图像拼接装置的组成框图;
[0124]
图6为本发明实施例提供的另一种图像拼接装置的组成框图。
具体实施方式
[0125]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0126]
需要说明的是,本发明实施例及附图中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含的一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
[0127]
本发明提供了一种图像拼接方法及装置,用以简化图像拼接算法的复杂度,提高图像拼接效率,并且简化后的算法受外部环境变化影响小,从而提高了算法的鲁棒性。本发明实施例所提供的方法,可以应用于任一具有计算能力的电子设备,该电子设备可以为终端或者服务器。在一种实现中,实现该方法的功能软件可以以单独的客户端软件的形式存在,也可以以目前相关的客户端软件的插件的形式存在。
[0128]
下面对本发明实施例进行详细说明。
[0129]
图1为本发明实施例提供的图像拼接方法的一种流程示意图。该方法可以包括如下步骤:
[0130]
s100:获取第一相机的第一无畸变图像以及第二相机的第二无畸变图像。
[0131]
如图2所示,在本发明实施例中,可以将第一相机(图中为相机1)和第二相机(图中为相机2)安装在车辆上,并将两路相机设置在同一个水平面上,令两路相机的光轴相交于一点,两相机光轴之间的夹角α可以确保两路相机的视野范围存在重合区域,同时尽可能减小两路相机光心之间的间距以获得更好的拼接效果。
[0132]
两路相机启动后,可以实时采集现场图像,并将采集到的图像通过实时图像传输协议(例如jpeg)或实时视频传输协议(例如rtp)传输给远程操作系统。由于透镜制造精度以及组装工艺的偏差等原因可能会导致相机采集的原始图像产生畸变,所以当远程操作系统接收到原始图像后,若原始图像存在畸变,还需要对原始图像进行去畸变处理,才可获得无畸变图像。在这种情况下,本步骤的具体实现方式可以为:获取所述第一相机采集的第一原始图像和所述第二相机采集的第二原始图像;根据相机标定算法分别对所述第一相机和所述第二相机进行标定,获得所述第一相机的内部参数和所述第二相机的内部参数;根据图像去畸变算法和所述第一相机的内部参数,对所述第一原始图像进行去畸变处理,获得所述第一无畸变图像,根据所述图像去畸变算法和所述第二相机的内部参数,对所述第二原始图像进行去畸变处理,获得所述第二无畸变图像。
[0133]
其中,相机标定算法可以为传统相机标定法、主动视觉相机标定方法、相机自标定法、零失真相机标定法等。内部参数包括内参矩阵和畸变参数矩阵,内参矩阵包括焦距、主点坐标、坐标轴倾斜参数等元素,畸变参数矩阵包括畸变参数,畸变参数包括径向畸变系数、切线畸变系数、光学畸变系数等。
[0134]
s110:根据所述第一相机的光心和所述第一相机的焦距确定第一投影柱面,以及根据所述第二相机的光心和所述第二相机的焦距确定第二投影柱面。
[0135]
具体的,可以将中心轴穿过所述第一相机的光心、半径为所述第一相机的焦距,且垂直于所述第一相机所在水平面的柱面确定为所述第一投影柱面;将中心轴穿过所述第二相机的光心、半径为所述第二相机的焦距,且垂直于所述第二相机所在水平面的柱面确定为所述第二投影柱面。其中,如前所述,两路相机在安装时设置在同一个水平面上,所以第一相机所在的水平面与第二相机所在的水平面相同。
[0136]
结合图2可知,图3中的投影柱面的中心轴穿过了相机的光心、半径为相机焦距,且垂直于相机所在平面,图3中还示出了相机成像平面,该成像平面也垂直于相机所在平面。
[0137]
s120:根据所述第一无畸变图像相对于所述第一相机的相机坐标系中坐标轴的第一旋转修正角度和所述第一相机的原始外参矩阵,确定所述第一相机的相机成像平面与所述第一投影柱面的第一空间关系,以及根据所述第二无畸变图像相对于所述第二相机的相机坐标系中坐标轴的第二旋转修正角度和所述第二相机的原始外参矩阵,确定所述第二相机的相机成像平面与所述第二投影柱面的第二空间关系。
[0138]
在具体实施时,针对第一相机而言,可以确定所述第一无畸变图像相对于所述第一相机的相机坐标系中坐标轴的第一旋转修正角度;根据所述第一旋转修正角度确定第一旋转矩阵;根据所述第一旋转矩阵对所述第一相机的原始外参矩阵进行修正,获得第一修
正外参矩阵;根据所述第一修正外参矩阵,确定所述第一相机的相机成像平面与所述第一投影柱面的第一空间关系。同理,针对第二相机而言,可以确定所述第二无畸变图像相对于所述第二相机的相机坐标系中坐标轴的第二旋转修正角度;根据所述第二旋转修正角度确定第二旋转矩阵;根据所述第二旋转矩阵对所述第二相机的原始外参矩阵进行修正,获得第二修正外参矩阵;根据所述第二修正外参矩阵,确定所述第二相机的相机成像平面与所述第二投影柱面的第二空间关系。
[0139]
其中,外参矩阵用于描述世界坐标系下的点,经过平移和旋转变换,转化为相机坐标系下的点。相机的原始外参矩阵可为3x3的单位矩阵或通过棋盘法标定得到的矩阵。所述旋转矩阵(包括第一旋转矩阵或第二旋转矩阵)包括针对x轴的旋转矩阵x、针对y轴的旋转矩阵y以及针对z轴的旋转矩阵z;所述旋转矩阵对应的修正外参矩阵m'=m
×
x
×
y
×
z。
[0140]
其中,所述m为原始外参矩阵;当旋转矩阵为第一旋转矩阵时,第一旋转矩阵对应的修正外参矩阵为第一修正外参矩阵,原始外参矩阵为第一相机的原始外参矩阵,当旋转矩阵为第二旋转矩阵时,第二旋转矩阵对应的修正外参矩阵为第二修正外参矩阵,原始外参矩阵为第二相机的原始外参矩阵;
[0141]
所述旋转矩阵x为
[0142][0143]
所述旋转矩阵y为
[0144][0145]
所述旋转矩阵z为
[0146][0147]
所述x、所述y、所述z分别为所述旋转矩阵对应的无畸变图像相对于所述旋转矩阵对应的相机坐标系x轴、y轴和z轴的旋转修正角度。当旋转矩阵为第一旋转矩阵时,第一旋转矩阵对应的无畸变图像为第一无畸变图像,第一旋转矩阵对应的相机坐标系为第一相机的相机坐标系,x、y、z分别为第一无畸变图像相对于第一相机的相机坐标系x轴、y轴和z轴的第一旋转修正角度;当旋转矩阵为第二旋转矩阵时,第二旋转矩阵对应的无畸变图像为第二无畸变图像,第二旋转矩阵对应的相机坐标系为第二相机的相机坐标系,x、y、z分别为第二无畸变图像相对于第二相机的相机坐标系x轴、y轴和z轴的第二旋转修正角度。
[0148]
具体的,当旋转矩阵为第一旋转矩阵时,第一旋转矩阵包括针对x轴的旋转矩阵x1、针对y轴的旋转矩阵y1以及针对z轴的旋转矩阵z1;第一修正外参矩阵m1'=m1×
x1×
y1×
z1。
[0149]
其中,所述m1为第一相机的原始外参矩阵;
[0150]
所述旋转矩阵x1为
[0151][0152]
所述旋转矩阵y1为
[0153][0154]
所述旋转矩阵z1为
[0155][0156]
所述x1、所述y1、所述z1分别为第一无畸变图像相对于第一相机的相机坐标系x轴、y轴和z轴的第一旋转修正角度。
[0157]
当旋转矩阵为第二旋转矩阵时,第二旋转矩阵包括针对x轴的旋转矩阵x2、针对y轴的旋转矩阵y2以及针对z轴的旋转矩阵z2;第二修正外参矩阵m2'=m2×
x2×
y2×
z2。
[0158]
其中,所述m2为第二相机的原始外参矩阵;
[0159]
所述旋转矩阵x2为
[0160][0161]
所述旋转矩阵y2为
[0162][0163]
所述旋转矩阵z2为
[0164][0165]
所述x2、所述y2、所述z2分别为第二无畸变图像相对于第二相机的相机坐标系x轴、y轴和z轴的第二旋转修正角度。
[0166]
s130:根据所述第一空间关系将所述第一无畸变图像映射至所述第一投影柱面,获得第一投影图像,以及根据所述第二空间关系将所述第二无畸变图像映射至所述第二投影柱面,获得第二投影图像。
[0167]
在获得第一空间关系和第二空间关系后,可以利用柱面投影法,根据第一空间关系将第一无畸变图像映射至第一投影柱面得到第一投影图像。同理,可以利用柱面投影法,根据第二空间关系将第二无畸变图像映射至第二投影柱面得到第二投影图像。
[0168]
s140:将所述第一投影图像和所述第二投影图像的重叠区域的像素值进行叠加作为拼接后的像素值,获得所述第一投影图像和所述第二投影图像拼接后的投影图像。
[0169]
由于在安装相机时,两路相机光心之间的间距会尽量小一些,并且相机光心的间距远远小于相机与所要拍摄的实物之间的距离,所以虽然两路相机分别建立了各自的投影柱面上,但是两个投影柱面之间的差异极小,从而使得获得的两个投影图像可看做在同一个平面上。因此,可以直接对第一投影图像和第二投影图像通过像素值叠加方式实现图像拼接。
[0170]
具体的,可以确定所述第一投影图像和所述第二投影图像的重叠区域;根据所述重叠区域的宽度、所述第一投影图像在所述重叠区域中的像素点相对于目标边界的偏移量,对所述第一投影图像在所述重叠区域中像素点的像素值进行调整,获得第一调整像素值;以及根据所述重叠区域的宽度、所述第二投影图像在所述重叠区域中的像素点相对于所述目标边界的偏移量,对所述第二投影图像在所述重叠区域中像素点的像素值进行调整,获得第二调整像素值,所述目标边界为所述重叠区域中一个表征高度的边界(例如可以为图4中的边ab,也可以为边cd);对于所述重叠区域中的同一个像素点,将所述同一个像素点的第一调整像素值和所述第二调整像素值的和,作为针对所述同一个像素点进行拼接后的像素值;对于所述第一投影图像和所述第二投影图像中的非重叠区域中的像素点,保留原有像素值;以获得所述第一投影图像和所述第二投影图像拼接后的投影图像。
[0171]
其中,对于第一投影图像而言,当所述目标边界为所述第二投影图像中表征高度的边界(例如图4中边ab)时,可以根据第一调整公式计算所述第一调整像素值r1',
[0172]
所述第一调整公式为
[0173][0174]
当所述目标边界为所述第一投影图像中表征高度的边界(例如图4中边cd)时,根据第二调整公式计算所述第一调整像素值r1',
[0175]
所述第二调整公式为
[0176][0177]
其中,r1为所述第一投影图像在所述重叠区域中的像素点的像素值,所述c为所述重叠区域的宽度,所述a1为所述第一投影图像在所述重叠区域中的像素点相对于目标边界的偏移量。
[0178]
对于第二投影图像而言,当所述目标边界为所述第二投影图像中表征高度的边界(例如图4中边ab)时,可以根据第三调整公式计算所述第一调整像素值r2';
[0179]
所述第三调整公式为
[0180][0181]
当所述目标边界为所述第一投影图像中表征高度的边界(例如图4中边cd)时,根据第四调整公式计算所述第一调整像素值r2',
[0182]
所述第四调整公式为
[0183][0184]
其中,r2为所述第二投影图像在所述重叠区域中的像素点的像素值,所述c为所述重叠区域的宽度,所述a2为所述第二投影图像在所述重叠区域中的像素点相对于目标边界的偏移量。
[0185]
综上所述,本发明实施例在对重叠区域中像素点的像素值进行调整时,第一投影图像和第二投影图像中涉及的偏移量是针对同一个目标边界的偏移量,当所要计算的像素点是同一个像素点时,a1=a2。
[0186]
示例性的,如图4所示,对于第一投影图像c1和第二投影图像c2,两者重叠区域为abdc,该重叠区域的宽度是c,高度是m。在进行图像拼接时,像素点计算公式为:
[0187][0188]
其中,r为拼接后投影图像的像素值,拼接后的图像可以为拼接图像p。
[0189]
需要补充的是,在获得拼接后的投影图像后,远程操作人员可以直接在远程操作系统的界面上直观看到拼接后的图像,而不需要再将拼接后的投影图像还原到相机坐标系。
[0190]
本发明实施例提供的图像拼接方法,能够先分别建立两路相机的第一投影柱面和第二投影柱面,然后确定第一相机的相机成像平面与第一投影柱面的第一空间关系,第二相机的相机成像平面与第二投影柱面的第二空间关系,再根据第一空间关系将第一相机的第一无畸变图像映射至第一投影柱面得到第一投影图像,根据第二空间关系将第二相机的第二无畸变图像映射至第二投影柱面得到第二投影图像,最后直接通过将两个投影图像重叠区域的像素值叠加来实现图像拼接。由于投影图像的确定过程以及通过像素叠加实现图像拼接都与外界环境无关,且该算法复杂度远远低于寻找特征点并进行特征点匹配,所以本发明实施例能够提高图像拼接算法的鲁棒性以及图像拼接的效率。
[0191]
基于上述方法实施例,本发明实施例提供了一种图像拼接装置,如图5所示,所述装置可以包括畸变处理模块、柱面投影模块和融合拼接模块。
[0192]
畸变处理模块,用于根据第一相机的内部参数w1,将第一相机采集的第一原始图像o1进行去畸变处理,获得第一无畸变图像u1,以及根据第二相机的内部参数w2,将第二相
机采集的第二原始图像o2进行去畸变处理,获得第二无畸变图像u2;
[0193]
柱面投影模块,用于根据所述第一相机的光心和所述第一相机的焦距确定第一投影柱面,以及根据所述第二相机的光心和所述第二相机的焦距确定第二投影柱面;根据第一相机的第一旋转矩阵(x1,y1,z1)和第一相机的外部参数m1,确定所述第一相机的相机成像平面与所述第一投影柱面的第一空间关系,以及根据第二相机的第二旋转矩阵(x2,y2,z2)和第二相机的外部参数m2,确定所述第二相机的相机成像平面与所述第二投影柱面的第二空间关系;根据所述第一空间关系将所述第一无畸变图像u1映射至所述第一投影柱面,获得第一投影图像c1,以及根据所述第二空间关系将第二无畸变图像u2映射至所述第二投影柱面,获得第二投影图像c2;
[0194]
其中,根据第一相机的第一旋转矩阵(x1,y1,z1)和第一相机的外部参数m1,确定所述第一相机的相机成像平面与所述第一投影柱面的第一空间关系的具体实现方式为:确定所述第一无畸变图像u1相对于所述第一相机的相机坐标系中坐标轴的第一旋转修正角度;根据所述第一旋转修正角度确定第一旋转矩阵(x1,y1,z1);根据第一旋转矩阵(x1,y1,z1)对m1构成的第一相机的原始外参矩阵进行修正,获得第一修正外参矩阵;根据所述第一修正外参矩阵,确定所述第一相机的相机成像平面与所述第一投影柱面的第一空间关系。
[0195]
同理,根据第二相机的第二旋转矩阵(x2,y2,z2)和第二相机的外部参数m2,确定所述第二相机的相机成像平面与所述第二投影柱面的第二空间关系的具体实现方式为:确定所述第二无畸变图像u2相对于所述第二相机的相机坐标系中坐标轴的第二旋转修正角度;根据所述第二旋转修正角度确定第二旋转矩阵(x2,y2,z2);根据第二旋转矩阵(x2,y2,z2)对m2构成的第二相机的原始外参矩阵进行修正,获得第二修正外参矩阵;根据所述第二修正外参矩阵,确定所述第二相机的相机成像平面与所述第二投影柱面的第二空间关系。
[0196]
融合拼接模块,用于将所述第一投影图像c1和所述第二投影图像c2的重叠区域的像素值进行叠加作为拼接后的像素值,获得拼接后的投影图像p(简称拼接图像p)。
[0197]
相应于上述方法实施例,本发明实施例提供了一种图像拼接装置,如图6所示,所述装置可以包括:
[0198]
获取单元60,用于获取第一相机的第一无畸变图像以及第二相机的第二无畸变图像;
[0199]
第一确定单元62,用于根据所述第一相机的光心和所述第一相机的焦距确定第一投影柱面,以及根据所述第二相机的光心和所述第二相机的焦距确定第二投影柱面;
[0200]
第二确定单元64,用于根据所述第一无畸变图像相对于所述第一相机的相机坐标系中坐标轴的第一旋转修正角度和所述第一相机的原始外参矩阵,确定所述第一相机的相机成像平面与所述第一投影柱面的第一空间关系,以及根据所述第二无畸变图像相对于所述第二相机的相机坐标系中坐标轴的第二旋转修正角度和所述第二相机的原始外参矩阵,确定所述第二相机的相机成像平面与所述第二投影柱面的第二空间关系;
[0201]
映射单元66,用于根据所述第一空间关系将所述第一无畸变图像映射至所述第一投影柱面,获得第一投影图像,以及根据所述第二空间关系将所述第二无畸变图像映射至所述第二投影柱面,获得第二投影图像;
[0202]
拼接单元68,用于将所述第一投影图像和所述第二投影图像的重叠区域的像素值进行叠加作为拼接后的像素值,获得所述第一投影图像和所述第二投影图像拼接后的投影
图像。
[0203]
可选的,所述第一确定单元62包括:
[0204]
第一确定模块,用于将中心轴穿过所述第一相机的光心、半径为所述第一相机的焦距,且垂直于所述第一相机所在水平面的柱面确定为所述第一投影柱面;
[0205]
第二确定模块,用于将中心轴穿过所述第二相机的光心、半径为所述第二相机的焦距,且垂直于所述第二相机所在水平面的柱面确定为所述第二投影柱面。
[0206]
可选的,所述第二确定单元64包括:
[0207]
第三确定模块,用于确定所述第一无畸变图像相对于所述第一相机的相机坐标系中坐标轴的第一旋转修正角度;
[0208]
第四确定模块,用于根据所述第一旋转修正角度确定第一旋转矩阵;
[0209]
第一修正模块,用于根据所述第一旋转矩阵对所述第一相机的原始外参矩阵进行修正,获得第一修正外参矩阵;
[0210]
第五确定模块,用于根据所述第一修正外参矩阵,确定所述第一相机的相机成像平面与所述第一投影柱面的第一空间关系。
[0211]
可选的,所述第二确定单元64包括:
[0212]
第六确定模块,用于确定所述第二无畸变图像相对于所述第二相机的相机坐标系中坐标轴的第二旋转修正角度;
[0213]
第七确定模块,用于根据所述第二旋转修正角度确定第二旋转矩阵;
[0214]
第二修正模块,用于根据所述第二旋转矩阵对所述第二相机的原始外参矩阵进行修正,获得第二修正外参矩阵;
[0215]
第八确定模块,用于根据所述第二修正外参矩阵,确定所述第二相机的相机成像平面与所述第二投影柱面的第二空间关系。
[0216]
可选的,所述旋转矩阵包括针对x轴的旋转矩阵x、针对y轴的旋转矩阵y以及针对z轴的旋转矩阵z;所述旋转矩阵对应的修正外参矩阵m'=m
×
x
×
y
×
z,其中,所述m为原始外参矩阵,
[0217]
所述旋转矩阵x为
[0218][0219]
所述旋转矩阵y为
[0220][0221]
所述旋转矩阵z为
[0222][0223]
所述x、所述y、所述z分别为所述旋转矩阵对应的无畸变图像相对于所述旋转矩阵
对应的相机坐标系x轴、y轴和z轴的旋转修正角度。
[0224]
可选的,所述拼接单元68包括:
[0225]
第九确定模块,用于确定所述第一投影图像和所述第二投影图像的重叠区域;
[0226]
第一调整模块,用于根据所述重叠区域的宽度、所述第一投影图像在所述重叠区域中的像素点相对于目标边界的偏移量,对所述第一投影图像在所述重叠区域中像素点的像素值进行调整,获得第一调整像素值;
[0227]
第二调整模块,用于根据所述重叠区域的宽度、所述第二投影图像在所述重叠区域中的像素点相对于所述目标边界的偏移量,对所述第二投影图像在所述重叠区域中像素点的像素值进行调整,获得第二调整像素值,其中,所述目标边界为所述重叠区域中一个表征高度的边界;
[0228]
拼接模块,用于对于所述重叠区域中的同一个像素点,将所述同一个像素点的第一调整像素值和所述第二调整像素值的和,作为针对所述同一个像素点进行拼接后的像素值,对于所述第一投影图像和所述第二投影图像中的非重叠区域中的像素点,保留原有像素值,以获得所述第一投影图像和所述第二投影图像拼接后的投影图像。
[0229]
可选的,第一调整模块,用于
[0230]
当所述目标边界为所述第二投影图像中表征高度的边界时,根据第一调整公式计算所述第一调整像素值r1',
[0231]
所述第一调整公式为
[0232][0233]
当所述目标边界为所述第一投影图像中表征高度的边界时,根据第二调整公式计算所述第一调整像素值r1',
[0234]
所述第二调整公式为
[0235][0236]
其中,r1为所述第一投影图像在所述重叠区域中的像素点的像素值,所述c为所述重叠区域的宽度,所述a1为所述第一投影图像在所述重叠区域中的像素点相对于目标边界的偏移量。
[0237]
可选的,第二调整模块,用于
[0238]
当所述目标边界为所述第二投影图像中表征高度的边界时,根据第三调整公式计算所述第一调整像素值r2',
[0239]
所述第三调整公式为
[0240][0241]
当所述目标边界为所述第一投影图像中表征高度的边界时,根据第四调整公式计算所述第一调整像素值r2';
[0242]
所述第四调整公式为
[0243][0244]
其中,r2为所述第二投影图像在所述重叠区域中的像素点的像素值,所述c为所述重叠区域的宽度,所述a2为所述第二投影图像在所述重叠区域中的像素点相对于目标边界的偏移量。
[0245]
可选的,所述获取单元60包括:
[0246]
获取模块,用于获取所述第一相机采集的第一原始图像和所述第二相机采集的第二原始图像;
[0247]
标定模块,用于根据相机标定算法分别对所述第一相机和所述第二相机进行标定,获得所述第一相机的内部参数和所述第二相机的内部参数;
[0248]
去畸变模块,用于根据图像去畸变算法和所述第一相机的内部参数,对所述第一原始图像进行去畸变处理,获得所述第一无畸变图像,根据所述图像去畸变算法和所述第二相机的内部参数,对所述第二原始图像进行去畸变处理,获得所述第二无畸变图像。
[0249]
本发明实施例提供的图像拼接装置,能够先分别建立两路相机的第一投影柱面和第二投影柱面,然后确定第一相机的相机成像平面与第一投影柱面的第一空间关系,第二相机的相机成像平面与第二投影柱面的第一空间关系,再根据第一空间关系将第一相机的第一无畸变图像映射至第一投影柱面得到第一投影图像,根据第二空间关系将第二相机的第二无畸变图像映射至第二投影柱面得到第二投影图像,最后直接通过将两个投影图像重叠区域的像素值叠加来实现图像拼接。由于投影图像的确定过程以及通过像素叠加实现图像拼接都与外界环境无关,且该算法复杂度远远低于寻找特征点并进行特征点匹配,所以本发明实施例能够提高图像拼接算法的鲁棒性以及图像拼接的效率。
[0250]
基于上述方法实施例,本发明的另一实施例提供了一种存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器实现如上所述的方法。
[0251]
基于上述方法实施例,本发明的另一实施例提供了一种远程操作系统,所述系统包括:
[0252]
一个或多个处理器;
[0253]
存储装置,用于存储一个或多个程序,
[0254]
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上所述的方法。
[0255]
上述系统、装置实施例与方法实施例相对应,与该方法实施例具有同样的技术效果,具体说明参见方法实施例。装置实施例是基于方法实施例得到的,具体的说明可以参见方法实施例部分,此处不再赘述。本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
[0256]
本领域普通技术人员可以理解:实施例中的装置中的模块可以按照实施例描述分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
[0257]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献