图像的逆透视变换方法、装置及电子设备、存储介质与流程

文档序号:31788020发布日期:2022-10-12 14:49阅读:51来源:国知局
图像的逆透视变换方法、装置及电子设备、存储介质与流程

1.本技术涉及自动驾驶技术领域,尤其涉及一种图像的逆透视变换方法、装置及电子设备、存储介质。


背景技术:

2.逆透视变换(inverse perspective mapping,简称ipm)是指将图像平面中的二维像素点投影到地面上得到三维空间点的过程。
3.在自动驾驶领域,通常需要利用相机采集的图像中的车道线、箭头、停止线等地面标识进行视觉语义建图或车辆辅助定位,因此ipm在自动驾驶领域发挥了重要作用。在视觉语义建图或车辆辅助定位等场景下,已知相机的内外参,将语义分割图像的二维像素点通过ipm可以得到地面上的三维空间点,基于此可以进一步建立语义地图或者与已有的语义地图进行匹配定位。
4.然而,现有的ipm过程至少存在如下问题:
5.1)ipm依赖相机相对于地面的外参,但是由于道路不平整导致的车辆在行驶过程中的起伏状态会影响ipm效果,如常见的重影问题;
6.2)利用消失点计算车辆起伏状态的方案需要保证实际道路中的车道线相互平行,并且在图像中的直线方程拟合准确,但是实际道路情况并不一定符合要求,并且直线拟合精度也会受到语义分割效果的影响;
7.3)车辆在行驶过程中的起伏状态的变化,不仅会改变相机相对于地面的角度,也会影响相机离地面的高度,因此同样需要考虑相机离地面的高度变化。


技术实现要素:

8.本技术实施例提供了一种图像的逆透视变换方法、装置及电子设备、存储介质,以自适应调整逆透视变换的参数,提高逆透视变换的效果。
9.本技术实施例采用下述技术方案:
10.第一方面,本技术实施例提供一种图像的逆透视变换方法,其中,所述方法包括:
11.获取当前帧的图像数据和上一帧的图像数据,所述图像数据包括原始图像和所述原始图像对应的语义分割图像;
12.获取所述当前帧的图像数据和所述上一帧的图像数据对应时刻的惯导数据,所述惯导数据包括惯导设备相对于地平面的角度和惯导设备输出的车辆位姿;
13.根据所述当前帧的图像数据和所述上一帧的图像数据对应时刻的惯导数据,确定所述惯导设备相对于地面的角度;
14.根据所述当前帧的图像数据和上一帧的图像数据,以及所述惯导设备输出的车辆位姿,确定相机相对于地面的高度;
15.根据所述惯导设备相对于地面的角度以及所述相机相对于地面的高度校正相机相对于地面的外参,并利用校正后的相机相对于地面的外参对当前帧的语义分割图像进行
逆透视变换,得到逆透视变换后的图像。
16.可选地,在获取所述当前帧的图像数据和所述上一帧的图像数据对应时刻的惯导数据之前,所述方法还包括:
17.获取惯导设备的imu测量数据和对应的车辆位姿,所述imu测量数据包括加速度和角速度;
18.利用卡尔曼滤波器对所述imu测量数据进行融合,得到所述惯导设备相对于地平面的角度;
19.将所述惯导设备相对于地平面的角度和对应的车辆位姿作为所述惯导数据。
20.可选地,所述根据所述当前帧的图像数据和所述上一帧的图像数据对应时刻的惯导数据,确定所述惯导设备相对于地面的角度包括:
21.根据所述当前帧的图像数据对应时刻的车辆位姿和所述上一帧的图像数据对应时刻的车辆位姿,确定当前帧与上一帧之间的相对平移;
22.根据所述当前帧与上一帧之间的相对平移确定地平面与地面之间的夹角;
23.根据所述当前帧的图像数据对应时刻的惯导设备相对于地平面的角度和所述地平面与地面之间的夹角,确定所述当前帧的图像数据对应时刻的惯导设备相对于地面的角度。
24.可选地,所述根据所述当前帧的图像数据和上一帧的图像数据,以及所述惯导设备输出的车辆位姿,确定相机相对于地面的高度包括:
25.利用预设跟踪算法对上一帧的原始图像和当前帧的原始图像进行跟踪,得到跟踪结果;
26.根据所述跟踪结果和所述惯导设备输出的车辆位姿,确定所述相机相对于地面的高度。
27.可选地,所述根据所述跟踪结果和所述惯导设备输出的车辆位姿,确定所述相机相对于地面的高度包括:
28.获取相机相对于车辆的外参;
29.基于所述相机相对于车辆的外参,利用所述当前帧的图像数据对应时刻的车辆位姿和所述上一帧的图像数据对应时刻的车辆位姿确定当前帧相机与上一帧相机的相对位姿;
30.根据所述跟踪结果以及所述当前帧相机与上一帧相机的相对位姿,确定所述相机相对于地面的高度。
31.可选地,所述跟踪结果包括相匹配的特征点,所述根据所述跟踪结果以及所述当前帧相机与上一帧相机的相对位姿,确定所述相机相对于地面的高度包括:
32.基于所述当前帧相机与上一帧相机的相对位姿,利用三角化算法对所述相匹配的特征点进行三角化处理,得到当前帧相机所在坐标系下的三维特征点;
33.对所述当前帧相机所在坐标系下的三维特征点进行平面拟合,得到所述相机相对于地面的高度。
34.可选地,所述跟踪结果包括相匹配的特征点,在利用预设跟踪算法对上一帧的原始图像和当前帧的原始图像进行跟踪,得到跟踪结果之后,所述方法还包括:
35.确定所述相匹配的特征点的数量是否小于预设数量阈值;
36.在所述相匹配的特征点的数量小于预设数量阈值的情况下,利用当前帧的分割图像对所述当前帧的原始图像进行特征提取,以使提取出的特征点和所述相匹配的特征点的数量之和不小于所述预设数量阈值。
37.第二方面,本技术实施例还提供一种图像的逆透视变换装置,其中,所述装置包括:
38.第一获取单元,用于获取当前帧的图像数据和上一帧的图像数据,所述图像数据包括原始图像和所述原始图像对应的语义分割图像;
39.第二获取单元,用于获取所述当前帧的图像数据和所述上一帧的图像数据对应时刻的惯导数据,所述惯导数据包括惯导设备相对于地平面的角度和惯导设备输出的车辆位姿;
40.第一确定单元,用于根据所述当前帧的图像数据和所述上一帧的图像数据对应时刻的惯导数据,确定所述惯导设备相对于地面的角度;
41.第二确定单元,用于根据所述当前帧的图像数据和上一帧的图像数据,以及所述惯导设备输出的车辆位姿,确定相机相对于地面的高度;
42.逆透视变换单元,用于根据所述惯导设备相对于地面的角度以及所述相机相对于地面的高度校正相机相对于地面的外参,并利用校正后的相机相对于地面的外参对当前帧的语义分割图像进行逆透视变换,得到逆透视变换后的图像。
43.第三方面,本技术实施例还提供一种电子设备,包括:
44.处理器;以及
45.被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行前述之任一所述方法。
46.第四方面,本技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行前述之任一所述方法。
47.本技术实施例采用的上述至少一个技术方案能够达到以下有益效果:本技术实施例的图像的逆透视变换方法,先获取当前帧的图像数据和上一帧的图像数据,图像数据包括原始图像和原始图像对应的语义分割图像;然后获取当前帧的图像数据和上一帧的图像数据对应时刻的惯导数据,惯导数据包括惯导设备相对于地平面的角度和惯导设备输出的车辆位姿;之后根据当前帧的图像数据和上一帧的图像数据对应时刻的惯导数据,确定惯导设备相对于地面的角度;再根据当前帧的图像数据和上一帧的图像数据,以及惯导设备输出的车辆位姿,确定相机相对于地面的高度;最后根据惯导设备相对于地面的角度以及相机相对于地面的高度校正相机相对于地面的外参,并利用校正后的相机相对于地面的外参对当前帧的语义分割图像进行逆透视变换,得到逆透视变换后的图像。本技术实施例的图像的逆透视变换方法结合惯导数据来确定惯导设备相对于地面的角度以及相机相对于地面的高度,不受外界环境影响,且惯导数据输出频率高,满足实时性要求,基于此进行相机相对于地面的外参的实时校正,提高了逆透视变换效果。
附图说明
48.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本申
请的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
49.图1为本技术实施例中一种图像的逆透视变换方法的流程示意图;
50.图2为本技术实施例中一种图像的逆透视变换装置的结构示意图;
51.图3为本技术实施例中一种电子设备的结构示意图。
具体实施方式
52.为使本技术的目的、技术方案和优点更加清楚,下面将结合本技术具体实施例及相应的附图对本技术技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
53.以下结合附图,详细说明本技术各实施例提供的技术方案。
54.本技术实施例提供了一种图像的逆透视变换方法,如图1所示,提供了本技术实施例中一种图像的逆透视变换方法的流程示意图,所述方法至少包括如下的步骤s110至步骤s150:
55.步骤s110,获取当前帧的图像数据和上一帧的图像数据,所述图像数据包括原始图像和所述原始图像对应的语义分割图像。
56.本技术实施例在对图像进行逆透视变换处理时,需要先获取当前帧的图像数据和上一帧的图像数据,这里的图像数据具体可以包括相机直接输出的原始的道路图像以及经过语义分割处理后输出的语义分割图像,语义分割图像可以利用训练好的语义分割模型来提取原始图像中包含的车道线、箭头、停止线等路面标识,本技术实施例的逆透视变换的对象即为当前帧的语义分割图像,目的是将当前帧的语义分割图像中的路面标识的二维像素点转换为地面坐标系下的三维空间点。
57.上述语义分割模型可以基于现有技术中的卷积神经网络训练得到,例如可以采用u-net或者lanenet网络等,当然具体如何得到语义分割图像,本领域技术人员可以根据实际需求灵活设置,在此不作具体限定。
58.步骤s120,获取所述当前帧的图像数据和所述上一帧的图像数据对应时刻的惯导数据,所述惯导数据包括惯导设备相对于地平面的角度和惯导设备输出的车辆位姿。
59.本技术实施例的惯导设备可以是指由imu(inertial measurement unit,惯性测量单元)和rtk(real-time kinematic,实时动态差分)构成的定位设备,rtk即基于gnss(global navigation satellite system,全球导航卫星系统)实现的动态差分技术,可以实现厘米级别的定位精度。
60.由于逆透视变换过程需要依赖相机相对于地面的外参,在车辆起伏运动的过程中相机相对于地面的外参会发生变化,其中影响较大的外参主要是相机相对于地面的俯仰角(pitch)和翻滚角(roll)以及相机相对于地面的高度,而对于相机相对于地面的偏航角(yaw)影响不大,因此本技术实施例这里获取的惯导设备相对于地平面的角度主要是指惯导设备相对于地平面的俯仰角(pitch)和翻滚角(roll)。
61.惯导设备能够按照一定频率输出惯导设备相对于地平面的角度以及车辆位姿等数据,但由于相机的采样频率与惯导设备的采样频率不同,这里需要获取的是当前帧的图像数据所对应时刻的惯导数据以及上一帧的图像数据所对应时刻的惯导数据。
62.步骤s130,根据所述当前帧的图像数据和所述上一帧的图像数据对应时刻的惯导数据,确定所述惯导设备相对于地面的角度。
63.地平面是与重力方向相垂直的平面,车辆在起伏运动过程中,实际所看到地面和地平面并不是一致的,而逆透视变换的最终目的是要将图像中的像素点转换到地面上,因此本技术实施例需要基于前述步骤得到的当前帧的图像数据和上一帧的图像数据对应时刻的惯导设备相对于地平面的角度以及车辆位姿,将惯导设备相对于地平面的角度转换为惯导设备相对于地面的角度。
64.步骤s140,根据所述当前帧的图像数据和上一帧的图像数据,以及所述惯导设备输出的车辆位姿,确定相机相对于地面的高度。
65.车辆在起伏运动过程中,相机距离地面的高度也会发生变化,因此这里需要利用当前帧的图像数据和上一帧的图像数据,结合惯导设备输出的车辆位姿来实时计算相机相对于地面的高度。
66.由于惯导设备输出的惯导数据相对于现有技术中使用消失点来计算相机相对于地面的俯仰角和翻滚角的方式来说,其不受外界环境影响,准确度和稳定性更高,且输出频率高,能够满足实时校正的需求。
67.需要说明的是,步骤s130与步骤s140之间没有严格的先后顺序之分。
68.步骤s150,根据所述惯导设备相对于地面的角度以及所述相机相对于地面的高度校正相机相对于地面的外参,并利用校正后的相机相对于地面的外参对当前帧的语义分割图像进行逆透视变换,得到逆透视变换后的图像。
69.在得到惯导设备相对于地面的角度之后,由于惯导设备与相机之间属于刚性变换,二者之间的变换关系可以事先标定得到,其受车辆起伏变化的影响较小,因此基于惯导设备相对于地面的角度以及二者之间的变换关系可以转换得到相机相对于地面的角度,从而可以利用相机相对于地面的角度校正当前帧的相机相对于地面的角度,以及利用相机相对于地面的高度校正当前帧的相机相对于地面的高度,进而得到校正后的当前帧相机相对于地面的外参。
70.最后再基于该校正后的当前帧相机相对于地面的外参,利用ipm对当前帧的语义分割图像进行逆透视变换处理,实现将图像中的路面标识的二维像素点转换为地面上的三维空间点,从而用于后续的建图或定位等场景。
71.本技术实施例的图像的逆透视变换方法结合惯导数据来确定惯导设备相对于地面的角度以及相机相对于地面的高度,不受外界环境影响,且惯导数据输出频率高,满足实时性要求,基于此进行相机相对于地面的外参的实时校正,提高了逆透视变换效果。
72.在本技术的一些实施例中,在获取所述当前帧的图像数据和所述上一帧的图像数据对应时刻的惯导数据之前,所述方法还包括:获取惯导设备的imu测量数据和对应的车辆位姿,所述imu测量数据包括加速度和角速度;利用卡尔曼滤波器对所述imu测量数据进行融合,得到所述惯导设备相对于地平面的角度;将所述惯导设备相对于地平面的角度和对应的车辆位姿作为所述惯导数据。
73.本技术实施例的惯导数据可以通过如下方式得到:首先获取惯导设备的imu测量数据,主要包括加速度和角速度的测量值,然后将imu测量数据输入到卡尔曼滤波器中进行融合处理,得到惯导设备相对于地平面的俯仰角和翻滚角。具体融合过程可以基于现有技
术来确定,例如可以先使用惯导设备坐标系下的x轴和y轴的角速度计算俯仰角和翻滚角的先验值,再使用x轴、y轴和z轴的加速度计算俯仰角和翻滚角的测量值,最后利用俯仰角和翻滚角的测量值对先验值进行更新。
74.另外,为了提高融合精度,还可以先使用一阶低通滤波器对imu测量数据进行去噪,再对去噪后的imu测量数据进行融合处理。
75.在本技术的一些实施例中,所述获取所述当前帧的图像数据和所述上一帧的图像数据对应时刻的惯导数据包括:获取预设时间长度内的惯导数据;基于所述当前帧的图像数据和所述上一帧的图像数据,对所述预设时间长度内的惯导数据进行时间同步处理,得到所述当前帧的图像数据和所述上一帧的图像数据对应时刻的惯导数据。
76.由于相机的采样频率与惯导设备的采样频率不同,惯导设备的采样频率往往更高,因此两帧图像之间可能存在多个惯导数据,并且时间戳不一定完全相同,为了保证数据处理的准确性,可以基于当前帧的图像数据和上一帧的图像数据对应的图像时刻,对一段时间内的惯导数据进行时间同步处理,例如可以采用插值法的方式对惯导设备相对于地平面的角度和车辆位姿进行插值,从而得到两帧图像数据所对应时刻的惯导数据。
77.在本技术的一些实施例中,所述根据所述当前帧的图像数据和所述上一帧的图像数据对应时刻的惯导数据,确定所述惯导设备相对于地面的角度包括:根据所述当前帧的图像数据对应时刻的车辆位姿和所述上一帧的图像数据对应时刻的车辆位姿,确定当前帧与上一帧之间的相对平移;根据所述当前帧与上一帧之间的相对平移确定地平面与地面之间的夹角;根据所述当前帧的图像数据对应时刻的惯导设备相对于地平面的角度和所述地平面与地面之间的夹角,确定所述当前帧的图像数据对应时刻的惯导设备相对于地面的角度。
78.相邻两帧图像数据对应时刻的车辆位姿中包含了车辆的具体位置数据,因此基于这两帧图像数据对应时刻的车辆的具体位置,可以计算得到两帧图像之间的相对平移,该相对平移具体可以分解为车体坐标系下的xyz三个方向上的平移量,因此基于这两帧图像之间的相对平移可以计算得到地平面与地面之间的夹角,将当前帧的图像数据对应时刻的惯导设备相对于地平面的角度减去地平面与地面之间的夹角,即可得到当前帧的图像数据对应时刻的惯导设备相对于地面的角度。
79.由于本技术实施例的惯导设备相对于地平面的角度包括惯导设备相对于地平面的俯仰角pitch和惯导设备相对于地平面的翻滚角roll,因此可以分开来计算:
80.1)针对惯导设备相对于地平面的俯仰角计算地平面与地面之间的夹角delta_pitch:
81.delta_pitch=arcsin(delta_z/delta_x);
82.2)针对惯导设备相对于地平面的翻滚角计算地平面与地面之间的夹角delta_roll:
83.delta_roll=arcsin(delta_z/delta_y);
84.最后使用与当前帧的图像数据对应时刻的惯导设备相对于地平面的俯仰角和翻滚角分别减去上述delta_pitch和delta_roll,即可得到当前帧的图像数据对应时刻的惯导设备相对于地面的俯仰角和翻滚角。
85.在本技术的一些实施例中,所述根据所述当前帧的图像数据和上一帧的图像数
据,以及所述惯导设备输出的车辆位姿,确定相机相对于地面的高度包括:利用预设跟踪算法对上一帧的原始图像和当前帧的原始图像进行跟踪,得到跟踪结果;根据所述跟踪结果和所述惯导设备输出的车辆位姿,确定所述相机相对于地面的高度。
86.本技术实施例在计算相机相对于地面的高度时,可以先利用预设跟踪算法对当前帧和前一帧的原始图像进行跟踪匹配,这里的预设跟踪算法例如可以采用光流跟踪法,从而可以得到两帧图像中相匹配的特征点,也即跟踪成功的特征点。当然,具体采用何种跟踪算法,本领域技术人员可以根据实际需求灵活选择,在此不作具体限定。
87.在本技术的一些实施例中,所述根据所述跟踪结果和所述惯导设备输出的车辆位姿,确定所述相机相对于地面的高度包括:获取相机相对于车辆的外参;基于所述相机相对于车辆的外参,利用所述当前帧的图像数据对应时刻的车辆位姿和所述上一帧的图像数据对应时刻的车辆位姿确定当前帧相机与上一帧相机的相对位姿;根据所述跟踪结果以及所述当前帧相机与上一帧相机的相对位姿,确定所述相机相对于地面的高度。
88.相机相对于车辆的外参表征了相机与车辆之间的相对变换关系,其受车辆起伏运动变化的影响也较小,因此同样可以事先标定得到,基于相机与车辆之间的相对变换关系,以及两帧图像数据对应时刻的车辆位姿,可以计算得到当前帧相机与上一帧相机之间的相对位姿,例如可以根据相机与车辆之间的相对变换关系,将两帧图像数据对应时刻的车辆位姿分别转换为两帧图像数据对应时刻的相机位姿,最后再计算两帧图像数据对应时刻的相机位姿之间的相对变换,得到两帧相机之间的相对位姿。
89.在本技术的一些实施例中,所述跟踪结果包括相匹配的特征点,所述根据所述跟踪结果以及所述当前帧相机与上一帧相机的相对位姿,确定所述相机相对于地面的高度包括:基于所述当前帧相机与上一帧相机的相对位姿,利用三角化算法对所述相匹配的特征点进行三角化处理,得到当前帧相机所在坐标系下的三维特征点;对所述当前帧相机所在坐标系下的三维特征点进行平面拟合,得到所述相机相对于地面的高度。
90.在多视几何中,相机在两个位置观测到同一个空间点,通过两次相机位姿和图像观测点坐标可以求得三维空间点坐标,这个过程即称之为三角化(triangulate)。基于此,本技术实施例在得到当前帧相机与上一帧相机的相对位姿后,可以基于两帧相机的相对位姿,对两帧图像中相匹配的特征点进行三角化处理,从而可以得到这些相匹配的特征点在当前帧相机所在坐标系下的三维空间坐标。
91.之后对当前帧相机所在坐标系下的这些三维特征点进行平面拟合,从而可以得到拟合后的平面方程,具体地,平面方程的一般表达式为:
92.ax+by+cz+d=0(c≠0);
93.通过带入当前帧相机所在坐标系下的多个三维特征点的坐标值,即可求得平面方程的各个参数的参数值,其中的参数d即为相机相对于地面的高度。
94.在本技术的一些实施例中,所述跟踪结果包括相匹配的特征点,在利用预设跟踪算法对上一帧的原始图像和当前帧的原始图像进行跟踪,得到跟踪结果之后,所述方法还包括:确定所述相匹配的特征点的数量是否小于预设数量阈值;在所述相匹配的特征点的数量小于预设数量阈值的情况下,利用当前帧的分割图像对所述当前帧的原始图像进行特征提取,以使提取出的特征点和所述相匹配的特征点的数量之和不小于所述预设数量阈值。
95.基于前述实施例可以看出,两帧图像中相匹配的特征点的数量多少会影响平面方程的拟合效果,如果数量过少,拟合不准确,进而会影响相机相对于地面的高度的计算精度。
96.基于此,为了保证每次跟踪匹配均有充足的特征点,本技术实施例在得到当前帧与上一帧之间相匹配的特征点之后,可以先判断相匹配的特征点数量是否小于预设数量阈值,如果小于预设数量阈值,说明在基于当前帧中相匹配的特征点进行下一次跟踪匹配时,能够用于匹配的特征点的数量过少,无法满足匹配精度以及平面拟合精度的要求,因此本技术实施例可以利用当前帧的分割图像中的地面部分作为掩模(mask)对当前帧的原始图像进行特征提取,保证新提取出来的特征点与相匹配的特征点数量之和不小于预设数量阈值即可,从而为下一次跟踪匹配提供支撑。此外,预设数量阈值的大小可以根据实际需求灵活设置,在此不作具体限定。
97.举例说明,假设当前帧的原始图像与上一帧的原始图像中相匹配的特征点有100个,而预设数量阈值为200个,那么此时就可以利用当前帧的分割图像中的地面部分作为mask,从当前帧的原始图像中至少再提取出100个特征点,保证最终的特征点数量不小于200即可。
98.为了便于对本技术上述各实施例的理解,统一定义了本技术中涉及到的各个坐标系,具体包括:
99.1)车体坐标系:定义为前左上-xyz;
100.2)惯导设备(imu+rtk)坐标系:定义为前左上-xyz:
101.3)相机坐标系:定义为右下前-xyz;
102.4)地面坐标系:在相机光心正下方的地面上,定义为前左上-xyz。
103.当然,上述坐标系的定义仅仅是一种示例性描述,本领域技术人员也可以根据实际需求适应性调整,在此不作具体限定。
104.综上所述,本技术实施例的图像的逆透视变换至少取得了如下的技术效果:
105.1)基于惯导数据计算相机相对于地面的俯仰角和翻滚角,相对于使用消失点计算的方式来说,不受外界环境影响,输出频率高,且卡尔曼滤波融合的计算量小,满足了实时性的需求;
106.2)只使用了两帧相机间的原始图像进行光流跟踪,计算量小,满足实时性的要求,且通过带有mask的特征提取,保证了特征点数量的充足,提高了平面拟合效果;
107.3)对于车辆行驶过程中由于车身起伏导致相机相对地面的高度实时改变的问题,利用当前帧相机所在坐标系下的三维空间点进行平面拟合可以准确估计相机相对地面高度,而基于消失点的方案法无法感知高度变化;
108.4)通过对相机相对于地面的俯仰角和翻滚角以及相机相对地面的高度的实时计算,可以实现对相机相对与地面的外参的实时校正,从而实现自适应逆透视变换并有效提高了逆透视变换的精度。
109.本技术实施例还提供了一种图像的逆透视变换装置200,如图2所示,提供了本技术实施例中一种图像的逆透视变换装置的结构示意图,所述装置200至少包括:第一获取单元210、第二获取单元220、第一确定单元230、第二确定单元240以及逆透视变换单元250,其中:
110.第一获取单元210,用于获取当前帧的图像数据和上一帧的图像数据,所述图像数据包括原始图像和所述原始图像对应的语义分割图像;
111.第二获取单元220,用于获取所述当前帧的图像数据和所述上一帧的图像数据对应时刻的惯导数据,所述惯导数据包括惯导设备相对于地平面的角度和惯导设备输出的车辆位姿;
112.第一确定单元230,用于根据所述当前帧的图像数据和所述上一帧的图像数据对应时刻的惯导数据,确定所述惯导设备相对于地面的角度;
113.第二确定单元240,用于根据所述当前帧的图像数据和上一帧的图像数据,以及所述惯导设备输出的车辆位姿,确定相机相对于地面的高度;
114.逆透视变换单元250,用于根据所述惯导设备相对于地面的角度以及所述相机相对于地面的高度校正相机相对于地面的外参,并利用校正后的相机相对于地面的外参对当前帧的语义分割图像进行逆透视变换,得到逆透视变换后的图像。
115.在本技术的一些实施例中,所述装置还包括:第三获取单元,用于获取惯导设备的imu测量数据和对应的车辆位姿,所述imu测量数据包括加速度和角速度;融合单元,用于利用卡尔曼滤波器对所述imu测量数据进行融合,得到所述惯导设备相对于地平面的角度;输出单元,用于将所述惯导设备相对于地平面的角度和对应的车辆位姿作为所述惯导数据。
116.在本技术的一些实施例中,所述第二获取单元220具体用于:获取预设时间长度内的惯导数据;基于所述当前帧的图像数据和所述上一帧的图像数据,对所述预设时间长度内的惯导数据进行时间同步处理,得到所述当前帧的图像数据和所述上一帧的图像数据对应时刻的惯导数据。
117.在本技术的一些实施例中,所述第一确定单元230具体用于:根据所述当前帧的图像数据对应时刻的车辆位姿和所述上一帧的图像数据对应时刻的车辆位姿,确定当前帧与上一帧之间的相对平移;根据所述当前帧与上一帧之间的相对平移确定地平面与地面之间的夹角;根据所述当前帧的图像数据对应时刻的惯导设备相对于地平面的角度和所述地平面与地面之间的夹角,确定所述当前帧的图像数据对应时刻的惯导设备相对于地面的角度。
118.在本技术的一些实施例中,所述第二确定单元240具体用于:利用预设跟踪算法对上一帧的原始图像和当前帧的原始图像进行跟踪,得到跟踪结果;根据所述跟踪结果和所述惯导设备输出的车辆位姿,确定所述相机相对于地面的高度。
119.在本技术的一些实施例中,所述第二确定单元240具体用于:获取相机相对于车辆的外参;基于所述相机相对于车辆的外参,利用所述当前帧的图像数据对应时刻的车辆位姿和所述上一帧的图像数据对应时刻的车辆位姿确定当前帧相机与上一帧相机的相对位姿;根据所述跟踪结果以及所述当前帧相机与上一帧相机的相对位姿,确定所述相机相对于地面的高度。
120.在本技术的一些实施例中,所述跟踪结果包括相匹配的特征点,所述第二确定单元240具体用于:基于所述当前帧相机与上一帧相机的相对位姿,利用三角化算法对所述相匹配的特征点进行三角化处理,得到当前帧相机所在坐标系下的三维特征点;对所述当前帧相机所在坐标系下的三维特征点进行平面拟合,得到所述相机相对于地面的高度。
121.在本技术的一些实施例中,所述跟踪结果包括相匹配的特征点,所述装置还包括:
signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
133.该电子设备还可执行图1中图像的逆透视变换装置执行的方法,并实现图像的逆透视变换装置在图1所示实施例的功能,本技术实施例在此不再赘述。
134.本技术实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的电子设备执行时,能够使该电子设备执行图1所示实施例中图像的逆透视变换装置执行的方法,并具体用于执行:
135.获取当前帧的图像数据和上一帧的图像数据,所述图像数据包括原始图像和所述原始图像对应的语义分割图像;
136.获取所述当前帧的图像数据和所述上一帧的图像数据对应时刻的惯导数据,所述惯导数据包括惯导设备相对于地平面的角度和惯导设备输出的车辆位姿;
137.根据所述当前帧的图像数据和所述上一帧的图像数据对应时刻的惯导数据,确定所述惯导设备相对于地面的角度;
138.根据所述当前帧的图像数据和上一帧的图像数据,以及所述惯导设备输出的车辆位姿,确定相机相对于地面的高度;
139.根据所述惯导设备相对于地面的角度以及所述相机相对于地面的高度校正相机相对于地面的外参,并利用校正后的相机相对于地面的外参对当前帧的语义分割图像进行逆透视变换,得到逆透视变换后的图像。
140.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
141.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
142.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指
令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
143.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
144.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
145.内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
146.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
147.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
148.本领域技术人员应明白,本技术的实施例可提供为方法、系统或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
149.以上所述仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1