1.本技术涉及导航技术领域,尤其涉及一种高精地图路牌的生成方法及装置。
背景技术:2.相关技术存在采用通过识别交通路牌辅助车辆定位的方法。但根据摄像头采集的路牌图像往往不够理想,获取的路牌图像容易存在倾斜、遮蔽等多种状况,因此需要对采集的路牌图像进行进一步处理,通过矫正路牌图像以获取路牌图像的准确信息。基于现有技术,需要在三维场景下对路牌图像进行矫正,以提取路牌图像的高精地图路牌信息。
3.在三维场景下,直接对路牌图像进行矫正和识别,会导致获取路牌图像的计算量较大、路牌矫正效率不高的问题。
技术实现要素: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.本技术提供的技术方案可以包括以下有益效果:一方面,本技术通过通过获取路牌图像的最小外接矩阵,对路牌图像进行矫正,从而提高矫正路牌的效率。另一方面,本技术通过降维思想,将求三维空间的最小外接矩形问题转换为求二维空间的最小外接矩形问题,在二维空间内获取图像的最小外接矩形,再将二维空间内的最小外接矩形投影回三维平面,从而获取三维空间内的最小外接矩形,最后在三维空间内根据三维空间内的最小外接矩形对图像进行矫正,从而减少了矫正三维路牌图像的计算量。
38.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
39.通过结合附图对本技术示例性实施方式进行更详细地描述,本技术的上述以及其它目的、特征和优势将变得更加明显,其中,在本技术示例性实施方式中,相同的参考标号通常代表相同部件。
40.图1是本技术实施例示出的高精地图路牌的生成方法的流程示意图;
41.图2是本技术实施例示出的路牌图像在三维空间下的示意图;
42.图3是本技术实施例示出的获取路牌图像在二维平面上的投影路牌图像的流程示意图;
43.图4是本技术实施例示出的获取多个关键点在二维平面上的多个投影点的流程示意图;
44.图5是本技术实施例示出的种高精地图路牌的生成装置的结构示意图;
45.图6是本技术实施例示出的电子设备的结构示意图。
具体实施方式
46.下面将参照附图更详细地描述本技术的实施方式。虽然附图中显示了本技术的实施方式,然而应该理解,可以以各种形式实现本技术而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本技术更加透彻和完整,并且能够将本技术的范围完整地传达给本领域的技术人员。
47.在本技术使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本技术。在本技术和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
48.应当理解,尽管在本技术可能采用术语“第一”、“第二”、“第三”等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本技术范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本技术的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
49.相关技术的自动驾驶的导航技术大致可以分为两类:一是基于卫星导航信号和惯性测量单元(inertial measurement unit,简称imu)的融合定位系统;二是提取路面特征(包括车道线、路面导向标志和路面纹理)获取定位信息的定位系统。但第一类导航技术多依赖于质量较好的卫星导航信号,但在卫星导航信号不好的情况下,融合定位系统提供的定位信息不够准确。第二类导航技术多依赖地面纹理清晰度,尤其在行车环境较差的情况下,自动驾驶车辆不容易获取路面特征,并对路面特征获取定位信息。因此,现有技术中存在采用通过识别交通路牌辅助车辆定位的方法。但根据摄像头采集的路牌图像往往不够理想,获取的路牌图像容易存在倾斜、遮蔽等多种状况,因此需要对采集的路牌图像进行进一步处理,以获取路牌图像的准确信息。基于现有技术,需要在三维场景下对路牌图像进行矫正,以提取路牌图像的高精地图路牌信息,但在三维场景对路牌图像进行矫正和识别,会导致获取路牌的计算量较大,且识别出的路牌图像不够精准。因此,现有技术中存在三维场景
下识别路牌计算量大且不准确的问题,亟需一种计算量小且准确率高的高精地图路牌的生成方法。
50.针对上述问题,本技术实施例提供一种高精地图路牌的生成方法,能够在三维场景下,解决矫正路牌图像的计算量大且矫正路牌效率低的问题。
51.以下结合附图详细描述本技术实施例的技术方案。
52.图1是本技术实施例示出的高精地图路牌方法的流程示意图,参见图1:
53.步骤s101,获取待处理的路牌图像,将路牌图像从目标三维平面投影到二维平面,以获取路牌图像在二维平面上的投影路牌图像,目标三维平面为路牌图像所在的三维平面。
54.图2为路牌图像在三维空间内的示意图,p1、p2、p3、p4为路牌图像的四个顶点,p1、p2、p3、p4所在的平面为路牌矩形所在的目标三维平面。在矫正矩形路牌图像时,需要将非规则的路牌图像矫正为矩形图像,但在三维空间矫正路牌图像计算量较大且不准确。因此,本发明采用降维思想,即将待处理的路牌图像从三维空间中降维到二维空间,在二维空间对路牌图像进行矫正。
55.图3是本技术实施例示出的获取路牌图像在二维平面上的投影路牌图像的流程示意图,如图3所示,步骤s101,包括:
56.s301、获取路牌图像的多个关键点,将多个关键点从目标三维平面投影到二维平面上,以获取多个关键点在二维平面上的多个投影点;
57.由于,实物路牌是矩形,对于变形后的路牌图像,只需要获取几个多个关键点就可以在三维空间或二维空间中还原路牌图像。因此,只需要获取路牌图像的多个关键点,并将多个关键点投影到二维平面上,就可以在二维平面上获取路牌图像在二维平面上的投影路牌图像。
58.在一种实施例中,多个关键点包括路牌图像的至少三个顶点。在多个关键点为三个顶点时,根据三个顶点和实物路牌为矩形,可以获取路牌图像第四个顶点,并根据四个顶点还原路牌图像。
59.如图4所示,步骤s301中,获取获取多个关键点在二维平面上的多个投影点的流程,包括:
60.s401、根据点云算法,获取多个关键点的三维坐标信息。
61.具体地,步骤s401包括:基于点云算法,获取路牌图像的点云图像,该点云图像的每个像素点对应有三维坐标信息。对点云图像的边缘进行识别,获取点云图像的多个关键点,根据每个像素点对应的三维坐标信息,获取多个关键点的三维坐标。
62.s402、基于罗德里格旋转公式,将多个关键点的三维坐标信息转化为多个关键点的二维坐标信息。
63.罗德里格旋转公式(rodrigues'rotation formula)是计算三维空间中,一个向量绕旋转轴旋转给定角度以后得到的新向量的计算公式。这个公式使用原向量,旋转轴及它们的叉积作为标架表示出旋转以后的向量。可以改写为矩阵形式,被广泛应用于空间解析几何和计算机图形学领域,成为刚体运动的基本计算公式。罗德里格旋转公式有多种表达形式,包括矩阵表达式和向量表达式,本技术为了方便计算采用矩阵表达式。
64.具体地,罗德里格旋转公式的矩阵表达式为公式(1),公式(1)如下:
65.v
rot
=rv,r=i+(1-cosθ)k2+(sinθ)k
ꢀꢀꢀ
公式(1);
66.其中,v
rot
为向量旋转后的表达式,v在右手螺旋定则意义下饶旋转向量k旋转角度θ可以得到v
rot
,k表示由旋转向量k生成的反对称矩阵。
67.旋转矩阵r是作用于向量的,目的就是在不改变向量大小的情况下旋转这个向量,就好比时钟的指针一样绕着中心旋转。而且旋转的空间只能在同一个手性的坐标系中。及左手坐标系的向量不能旋转成右手坐标系的向量,在本技术中,将关键点从目标三维投影平面投影到二维平面采用右手坐标系。
68.因此,在步骤s402中,首先要获取关键点和投影点之间的旋转矩阵。基于罗德里格旋转公式可以获取关键点和投影点之间的旋转矩阵,将多个关键点的三维坐标信息带入旋转矩阵,就可以获取多个关键点的二维坐标信息。
69.具体地,投影的二维平面采用xoy平面,根据多个投影点,可以获取目标三维平面的法向量,获取法向量的垂直向量;根据罗德里格旋转公式和垂直向量,获取多个关键点的旋转矩阵,该旋转矩阵为多个关键点从三维平面到二维平面的转换矩阵。根据多个关键点的三维坐标信息和旋转矩阵,获取多个关键点的二维坐标信息。其中,根据法向量和垂直向量的外积可以获取多个关键点从目标三维平面投影到二维平面的旋转轴k。
70.在一个实施例中,投影的二维平面采用xoy平面,利用四个顶点中的任意三个(计算结果一致),求出目标三维平面的法向量n,利用该向量和单位向量z做外积,得到新向量v
ba
,新向量v
ba
为旋转向量k。然后利用公式(1),求得旋转矩阵rba。利用该旋转矩阵,可以把平面a上的点旋转到与z轴垂直的平面上。
71.在一种实施例中,多个关键点为路牌图像的三个顶点。假设多个顶点的坐标分别为p1、p2、p3,关键点对应的投影点为p
″1、p
″2、p
″3,根据旋转矩阵,可以获取投影点的表达式,使用p
′1=rba*p1;p
′2=rba*p2;p
′3=rba*p3,获取p1、p2、p3的三维空间向量p
′1、p
′2、p
′3。根据p
′1、p
′2、p
′3计算第四个顶点的投影点p
′4。由于p
′1、p
′2、p
′3、p
′4在相同二维平面上,且该二维平面与z轴垂直,即这四个点的z坐标相等。分别取这四个点的x、y坐标,得到p
″1、p
″2、p
″3、p
″4。即p
″1、p
″2、p
″3、p
″4为路牌图像四个顶点经过旋转后,投影到xoy平面的坐标。
72.在一种实施例中,多个关键点为路牌图像的三个顶点。假设多个顶点的坐标分别为p1、p2、p3,关键点对应的投影点为p
″1、p
″2、p
″3,根据旋转矩阵,可以获取p1、p2、p3对应的旋转向量,使用p1′
=rba*p1,p
′2=rba*p2、p
′3=rba*p3,获取获取p1、p2、p3的三维空间向量p
′1、p
′2、p
′3。由于p
′1、p
′2、p
′3在同一二维平面上,且该二维平面与z轴垂直,即这三个点的z坐标相等。分别取这三个点的x、y坐标,得到p
″1、p
″2、p
″3。即p
″1、p
″2、p
″3为路牌图像三个顶点经过旋转后,投影到xoy平面的坐标。在xoy平面上根据即p
″1、p
″2、p
″3,计算p
″4的三维坐标。
73.在一种实施例中,多个关键点为路牌图像的四个顶点。假设多个顶点的坐标分别为p1、p2、p3、p4,关键点对应的投影点为p
″1、p
″2、p
″3、p
″4。根据旋转矩阵,可以获取投影点的表达式,使用p
′1=rba*p1,p
′2=rba*p2、p
′3=rba*p3、p
′4=rba*p4,获取获取p1、p2、p3、p4的三维空间向量p
′1、p
′2、p
′3、p
′4。由于p
′1、p
′2、p
′3、p
′4在同一二维平面上,且该二维平面与z轴垂直,即这三个点的z坐标相等。分别取这三个点的x、y坐标,得到p
″1、p
″2、p
″3、p
″4。即p
″1、p
″2、p
″3、p
″4为路牌图像四个顶点经过旋转后,投影到xoy平面的坐标。
74.s302、根据多个投影点,获取路牌图像在二维平面上的投影路牌图像。
75.在一个实施例中,多个投影点为路牌图像的三个顶点,由于,路牌实物是矩形,根
据多个投影点获取路牌图像的图案也为四边形,根据三个顶点坐标获取第四个顶点,根据第四个顶点获取路牌图像的投影路牌图像。
76.步骤102,获取投影路牌图像在二维平面上的最小外接矩形,并将二维平面上的最小外接矩形投影回目标三维平面,以获取目标三维平面上的最小外接矩形。
77.在获取投影路牌图像后,需要在二维平面上获取投影路牌的矫正矩形,将矫正矩形回目标三维平面,给路牌图像提供矫正参考形状。在本发明中,在二维平面上,对获取投影路牌的矫正矩形采用最小外接矩阵法。
78.最小外接矩形(minimum bounding rectangle,mbr),也有译为最小边界矩形,最小包含矩形,或最小外包矩形。最小外接矩形是指以二维坐标表示的若干二维形状(例如点、直线、多边形)的最大范围,即以给定的二维形状各顶点中的最大横坐标、最小横坐标、最大纵坐标、最小纵坐标定下边界的矩形。这样的一个矩形包含给定的二维形状,且边与坐标轴平行。最小外接矩形是最小外接框(minimum bounding box)的二维形式。
79.具体地,步骤102中,获取投影路牌图像在二维平面上的最小外接矩形,包括:获取投影路牌图像的中心点和投影路牌图像的最小宽高;根据获取投影路牌图像的中心点和投影路牌图像的最小宽高,获取投影图像的最小外接矩形。
80.具体地,根据顶点的二维坐标信息,获取投影路牌图像的中心点,根据中心点和顶点获取投影路牌图像的最小外接矩形旋转角。根据顶点,获取投影路牌图像的最小宽高,基于最小外接矩形旋转角和最小宽高以及中心点,获取最小外接矩形。
81.在步骤s102中,将二维平面上的最小外接矩形投影回目标三维平面,以获取三维平面上的最小外接矩形,包括:获取最小外接矩形的至少三个顶点,将至少三个顶点投影回目标三维平面,以获取至少三个参考顶点;根据至少三个参考顶点,获取三维平面上的最小外接矩形。
82.由于在步骤s102之前,从目标三维平面映射到二维平面上,是根据右手法则进行的。而右手法则决定了叉积不符合交换律,故而步骤s103需要使用反交换律。因此,在步骤s102中,从二维平面映射到目标三维平面采用上述旋转矩阵的转置矩阵,作为顶点的二维坐标信息到顶点三维坐标信息的转换矩阵。具体地,获取旋转矩阵的转置矩阵;根据顶点的二维坐标信息、转置矩阵及法向量,获取多个投影点对应的参考顶点。
83.在一个实施例中,获取步骤s102中的4个新的顶点p
″1、p
″2、p
″3、p
″4,由于这个四个点是二维坐标,添得到加步骤302中的旋转向量k的z坐标,得到新顶点的三维空间坐标p
′1、p
′2、p
′3、p
′4。利用旋转矩阵rab获取旋转矩阵的rab的转置矩阵rba,根据转置矩阵rba将这4个点旋转回目标三维平面,得到参考顶点。p
″1、p
″2、p
″3、p
″4对应的参考顶点为q1、q2、q3、q4,获取参考顶点的方法包括:q1=rba*p
′1,q2=rba*p
′2、q3=rba*p
′3、q4=rba*p
′4。
84.步骤s103,根据目标三维平面上的最小外接矩形,矫正待处理的路牌图像,以获取目标路牌图像。
85.具体地,根据参考顶点矫正待处理的路牌图像,获取目标路牌图像,根据关键点对应的参考顶点,对路牌图像进行倾斜和伸缩处理,以获取目标路牌图像。
86.本技术提供的技术方案可以包括以下有益效果:获取待处理的路牌图像,将路牌图像从目标三维平面投影到二维平面,以获取路牌图像在二维平面上的投影路牌图像,目标三维平面为路牌图像所在的三维平面;获取投影路牌图像在二维平面上的最小外接矩
形,并将二维平面上的最小外接矩形投影回目标三维平面,以获取三维平面上的最小外接矩形;根据三维平面上的最小外接矩形,矫正待处理的路牌图像,以获取目标路牌图像。本技术通过降维思想,减少了三维图像矫正的计算量,提高了三维路牌图像矫正的效率。
87.与前述应用功能实现方法实施例相对应,本技术还提供了一种高精地图路牌装置、电子设备及相应的实施例。
88.图5是本技术实施例示出的一种高精地图路牌的生成装置。
89.参见图5,该装置包括:第一投影单元501、第二投影单元502、图像矫正单元503,具体包括:
90.第一投影单元501,用于获取待处理的路牌图像,将路牌图像从目标三维平面投影到二维平面,以获取路牌图像在二维平面上的投影路牌图像,目标三维平面为路牌图像所在的三维平面;
91.第二投影单元502,用于获取投影路牌图像在二维平面上的最小外接矩形,并将二维平面上的最小外接矩形投影回目标三维平面,以获取三维平面上的最小外接矩形;;
92.图像矫正单元503,用于根据三维平面上的最小外接矩形,矫正待处理的路牌图像,以获取目标路牌图像。
93.关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不再做详细阐述说明。
94.图6是本技术实施例示出的电子设备的结构示意图。
95.参见图6,电子设备600包括存储器610和处理器620。
96.处理器620可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
97.存储器610可以包括各种类型的存储单元,例如系统内存、只读存储器(rom)和永久存储装置。其中,rom可以存储处理器620或者计算机的其他模块需要的静态数据或者指令。永久存储装置可以是可读写的存储装置。永久存储装置可以是即使计算机断电后也不会失去存储的指令和数据的非易失性存储设备。在一些实施方式中,永久性存储装置采用大容量存储装置(例如磁或光盘、闪存)作为永久存储装置。另外一些实施方式中,永久性存储装置可以是可移除的存储设备(例如软盘、光驱)。系统内存可以是可读写存储设备或者易失性可读写存储设备,例如动态随机访问内存。系统内存可以存储一些或者所有处理器在运行时需要的指令和数据。此外,存储器610可以包括任意计算机可读存储媒介的组合,包括各种类型的半导体存储芯片(例如dram,sram,sdram,闪存,可编程只读存储器),磁盘和/或光盘也可以采用。在一些实施方式中,存储器610可以包括可读和/或写的可移除的存储设备,例如激光唱片(cd)、只读数字多功能光盘(例如dvd-rom,双层dvd-rom)、只读蓝光光盘、超密度光盘、闪存卡(例如sd卡、min sd卡、micro-sd卡等)、磁性软盘等。计算机可读存储媒介不包含载波和通过无线或有线传输的瞬间电子信号。
98.存储器610上存储有可执行代码,当可执行代码被处理器620处理时,可以使处理
器620执行上文述及的方法中的部分或全部。
99.此外,根据本技术的方法还可以实现为一种计算机程序或计算机程序产品,该计算机程序或计算机程序产品包括用于执行本技术的上述方法中部分或全部步骤的计算机程序代码指令。
100.或者,本技术还可以实施为一种计算机可读存储介质(或非暂时性机器可读存储介质或机器可读存储介质),其上存储有可执行代码(或计算机程序或计算机指令代码),当可执行代码(或计算机程序或计算机指令代码)被电子设备(或服务器等)的处理器执行时,使处理器执行根据本技术的上述方法的各个步骤的部分或全部。
101.以上已经描述了本技术的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文披露的各实施例。