挂车角度识别方法及装置与流程

文档序号:24403673发布日期:2021-03-26 16:06阅读:699来源:国知局
挂车角度识别方法及装置与流程

1.本发明涉及数据处理技术领域,特别涉及挂车角度识别方法及装置。


背景技术:

2.如图1所示,当大卡车转弯时,挂车与卡车头形成的角度为挂车角度(车头朝向和挂车中轴线的角度)。
3.带有较长挂车的卡车在自动驾驶转弯过程中需要识别挂车角度:在路口转弯时,卡车转动控制以及速度控制需要获取挂车与车头之间夹角变化情况,得到挂车的摆动姿态,进而根据摆动姿态去避免挂车碰撞到路沿或其他非道路上的障碍物导致损坏。
4.请参见图2,为便于获取挂车角度,在挂车上会设置两二维码,挂车角度可通过二维码的位置信息来推算出来。
5.当前二维码角点检测基于比较繁琐的传统图像处理流程实现,包括梯度计算,边缘检测,分割以及直线拟合等算法;复杂算法流程导致需要多个参数调整使其满足使用场景的需求。而且对于复杂多变的场景需要多个参数来应对不同场景,这样更加增加使用的复杂性。


技术实现要素:

6.有鉴于此,本发明实施例提供挂车角度识别方法及装置,以减少挂车角度检测的复杂性。
7.为实现上述目的,本发明实施例提供如下技术方案:
8.一种挂车角度识别方法,基于神经网络,所述挂车角度识别方法包括:
9.获取实时图像;所述实时图像由用于拍摄挂车上二维码的相机实时拍摄得到;
10.使用所述神经网络对所述实时图像进行角点识别,得到角点识别结果;所述角点识别结果包括二维码的角点位置信息;
11.使用所述神经网络对所述实时图像进行边框识别,得到边框识别结果;所述边框识别结果包括:二维码的边框信息;
12.使用所述神经网络对所述实时图像进行标识id信息识别,得到id信息识别结果;所述id信息识别结果包括:二维码的id信息;
13.根据所述边框识别结果,确定id信息对应的各角点位置信息;
14.根据各id信息对应的角点位置信息,确定挂车角度。
15.可选的,所述神经网络包括编码器、角点预测分支、边框预测分支和id预测分支;其中,所述编码器用于:提取所述实时图像的特征图;所述角点预测分支用于:使用所述特征图计算各特征点的概率,将概率值满足预设条件的特征点作为角点,得到所述角点识别结果;所述边框预测分支用于:使用所述特征图进行边框识别,得到所述边框识别结果;所述id预测分支用于:使用所述特征图进行id信息识别,得到所述id信息识别结果。
16.可选的,所述根据所述边框识别结果,确定id信息对应的各角点位置信息包括:将
属于同一个边框内的角点作为对应同一id的角点,以确定id信息对应的各角点位置信息。
17.可选的,所述二维码的数量为两个;所述根据各id信息对应的角点位置信息,确定挂车角度包括:根据各id信息对应的角点位置信息,计算各二维码的中心点位置信息;计算两二维码中心连线与目标直线之间的夹角;所述目标直线为水平面上与车头朝向相垂直的直线;将计算得到的夹角与预先标定的角度差值相减,得到所述挂车角度。
18.可选的,所述角点位置信息具体为角点在图像坐标系下的位置信息;所述计算各二维码的中心点位置信息包括:根据各id信息对应的角点位置信息,计算各二维码在所述图像坐标系下的中心点位置信息;根据pnp算法和相机的内参矩阵,计算得到图像坐标系至相机坐标系的旋转平移矩阵;根据所述旋转平移矩阵,计算得到中心点在所述相机坐标系下的位置信息。
19.可选的,两二维码的中心点位置分别表示为(x1,y1),(x2,y2);计算两二维码中心连线与目标直线之间的夹角的公式包括:/(x2

x1));所述表示两二维码中心连线与目标直线之间的夹角。
20.可选的,还包括:使用所述挂车角度得到挂车姿态;根据所述挂车姿态进行转动控制及速度控制中的至少一种。
21.一种挂车角度识别装置,包括:
22.摄像头,用于:实时拍摄挂车上的二维码,得到实时图像;
23.识别系统,用于:
24.使用神经网络对所述实时图像进行角点识别,得到角点识别结果;所述角点识别结果包括二维码的角点位置信息;
25.使用所述神经网络对所述实时图像进行边框识别,得到边框识别结果;所述边框识别结果包括:二维码的边框信息;
26.使用所述神经网络对所述实时图像进行标识id信息识别,得到id信息识别结果;所述id信息识别结果包括:二维码的id信息;
27.根据所述边框识别结果,确定id信息对应的各角点位置信息;
28.根据各id信息对应的角点位置信息,确定挂车角度。
29.可选的,所述神经网络包括编码器、角点预测分支、边框预测分支和id预测分支;其中,所述编码器用于:提取所述实时图像的特征图;所述角点预测分支用于:使用所述特征图计算各特征点的概率,将概率值满足预设条件的特征点作为角点,得到所述角点识别结果;所述边框预测分支用于:使用所述特征图进行边框识别,得到所述边框识别结果;所述id预测分支用于:使用所述特征图进行id信息识别,得到所述id信息识别结果。
30.可选的,所述二维码的数量为两个;所述根据各id信息对应的角点位置信息,确定挂车角度包括:根据各id信息对应的角点位置信息,计算各二维码的中心点位置信息;计算两二维码中心连线与目标直线之间的夹角;所述目标直线为水平面上与车头朝向相垂直的直线;将计算得到的夹角与预先标定的角度差值相减,得到所述挂车角度。
31.可见,在本发明实施例中,采用神经网络模型对二维码的角点进行检测,并对二维码的边框和id信息进行识别,简化了部署过程的参数调整。后续可根据边框识别结果,确定每一id信息对应的各角点的位置信息,再进而确定挂车角度,进行转动控制及速度控制。
附图说明
32.图1为本发明实施例提供的挂车角度示意图;
33.图2为本发明实施例提供的挂车上设置二维码的示意图;
34.图3为本发明实施例提供的挂角角度识别装置示例性结构图;
35.图4为本发明实施例提供的挂车角度识别方法的示例性流程;
36.图5为本发明实施例提供的二维码边框携带id信息的示意图;
37.图6为本发明实施例提供的车头朝向和挂车中轴线夹角(挂车角度)示意图;
38.图7为本发明实施例提供的挂车角度识别方法的示例性流程;
39.图8为本发明实施例提供的神经网络的示例性结构图;
40.图9为本发明实施例提供的基于神经网络架构进行挂角角度识别的示例性流程;
41.图10为本发明实施例提供的挂车角度识别方法的另一示例性流程。
具体实施方式
42.本发明提供基于神经网络的挂车角度识别方法和挂车角度识别装置,以减少挂车角度检测的复杂性。
43.上述挂车角度识别装置具体可为安装在车头上的相机,相机的摄像头可拍摄挂车上设置的二维码(如图2所示)。
44.在安装时,摄像头的视场角内区域,应能覆盖二维码的活动区域,以尽可能保证拍摄到的图像中包含两个二维码。
45.请参见图3,上述挂角角度识别装置示例性地包括:摄像头1和识别系统2。
46.请图4,上述挂车角度识别装置所执行的挂车角度识别方法,示例性地包括如下步骤:
47.s1:获取实时图像。
48.实时图像可由前述的摄像头1实时拍摄得到。
49.s2:使用神经网络对实时图像进行角点识别,得到角点识别结果。
50.具体的,角点识别结果可包括二维码的角点位置信息。
51.s3:使用神经网络对实时图像进行边框识别,得到边框识别结果。
52.具体的,边框识别结果可包括:二维码的边框信息。
53.一般情况下,实时图像中会包含两个二维码,则边框识别结果一般情况下包括两个二维码的边框信息。
54.边框信息包括所识别出的矩形的左上角坐标以及矩形的宽和高。
55.s4:使用神经网络对实时图像进行标识(id)信息识别,得到id信息识别结果。
56.请参见图5,黑色区域内的白框携带着id信息,可使用神经网络对其进行id识别,得到二维码的id信息作为id信息识别结果。
57.而通过id信息,可知道该二维码是挂车左边的二维码,还是右边的二维码。
58.s5:根据边框识别结果,确定id信息对应的各角点位置信息;
59.在一个示例中,可将属于同一个边框内的角点作为对应同一id的角点,以确定id信息对应的各角点位置信息。
60.s6:根据各id信息对应的角点位置信息,确定挂车角度。
61.请参见图6,挂车角度为车头朝向和挂车中轴线的角度。当然,也可理解为车头后缘(目标直线)与挂车前缘之间的夹角。
62.在一个示例中,可根据各id信息对应的角点位置信息,计算各二维码的中心点位置信息;
63.再计算两二维码中心连线与目标直线之间的夹角(目标直线为水平面上与车头朝向相垂直的直线);
64.假定两二维码的中心点位置分别表示为(x1,y1),(x2,y2);
65.二维码中心连线与目标直线之间的夹角,公式包括:
[0066][0067]
最后将计算得到的夹角与预先标定的角度差值δθ相减,即可得到挂车角度θ。
[0068]
上述角度差值可由人工测定。
[0069]
步骤s2

s6可由识别系统执行。
[0070]
可见,在本发明实施例中,采用神经网络模型对二维码的角点进行检测,并对二维码的边框和id信息进行识别,简化了部署过程的参数调整。后续可根据边框识别结果,确定每一id信息对应的各角点的位置信息,再进而确定挂车角度,进行转动控制及速度控制。
[0071]
在本发明其他实施例中,请参见图7,在步骤s6之后,还可包括如下步骤:
[0072]
s7:使用挂车角度得到挂车姿态;
[0073]
请参见图6,根据角度θ以及挂车已知的长宽,可得到整个挂车相对于车头位置的相对位置关系(挂车姿态),包括挂车四个角的位置和边界信息等。
[0074]
s8:根据挂车姿态进行转动控制及速度控制中的至少一种。
[0075]
如何根据挂车姿态进行转动控制及速度控制可参见现有方式,在此不作赘述。
[0076]
在本发明其他实施例中,请参见图8,上述神经网络至少可包括编码器(encoder)、角点预测分支(decoder)、边框预测分支和id预测分支。
[0077]
在一个示例中,请参见图9,边框预测分支和id预测分支可共享使用传统的fasterrcnn物体检测网络的rpn(regionproposal network,区域推荐网络)模块。
[0078]
rpn模块主要用于推荐可能是二维码的区域,也可把区域内的id识别出来。
[0079]
下面以图9所示神经网络架构为例,更为详细地介绍挂车角度识别方法。
[0080]
请参见图10,其示例性地包括如下步骤:
[0081]
s101:获取实时图像。
[0082]
此步骤与s1相同,在此不作赘述。
[0083]
s102:提取实时图像的特征图。
[0084]
可由编码器执行步骤s102。
[0085]
特征图可理解为表征图像每个像素的一种编码。
[0086]
可利用多个卷积层构成的神经网络模型中的编码器,提取图像抽象语义特征(特征图)。具体的,可采用现有模型resnet18,densenet等模型作为编码器。
[0087]
s103:使用特征图计算各特征点的概率,将概率值满足条件的作为角点,得到角点识别结果。
[0088]
可由角点预测分支执行步骤s103。
[0089]
具体的,可利用反卷积层构成的具有解码功能的神经网络模块,将编码器输出的特征图大小恢复到输入图大小。这样能保证后续预测的关键点对应到原图二维码的角点位置。
[0090]
计算所恢复特征图中各特征点的概率,概率值满足预设条件(例如大于阈值)的特征点为关键点,在本实施例中即为角点。
[0091]
由于二维码有四个角点,在某一区域内可能有多个特征点满足预设条件,可取最边界的点作为角点,或取该区域最中心的点作为角点。
[0092]
在本步骤中得到的角点位置信息具体为角点在图像坐标系下的位置信息。
[0093]
s104:使用特征图进行边框识别,得到边框识别结果。
[0094]
可由边框预测分支执行步骤s104。
[0095]
s105:使用特征图进行id信息识别,得到id信息识别结果。
[0096]
可由id预测分支执行步s105。
[0097]
可按照卷积神经网络训练的流程,训练模型参数,使卷积神经网络模型具有预测二维码角点和二维码边框与id信息的能力。
[0098]
s106:将检测的角点按照是否所属同一个二维码进行分组。
[0099]
具体过程是根据预测出的二维码边框与对应id,将属于同一个边框内的角点分为一组,最终得到每个id对应的四个角点的位置信息,如:用{id1:[p1,p2,p3,p4],id2:[p5,p6,p7,p8]}形式表示id与位置的对应关系。
[0100]
其中,p1

p8表示角点的像素点位置(x,y)。
[0101]
上述编码器与三个分支(角点预测分支、边框预测分支、id预测分支)是深度学习神经网络的构成部分。
[0102]
需要说明的是,传统角点检测方法对于不同光照条件下,检测精度会有浮动,尤其在低光照和强光照等条件下,会导致漏检和误检增大。而使用基于深度学习的关键点检测,能更加鲁棒,只要数据采集覆盖全面场景,即可实现比较高性能和高鲁棒性的检测效果。
[0103]
s107:根据各id信息对应的角点位置信息,计算各二维码在图像坐标系下的中心点位置信息。
[0104]
在一个示例中,可根据pnp算法和相机的内参矩阵,计算得到图像坐标系至相机坐标系的旋转平移矩阵;再根据旋转平移矩阵,计算得到中心点在相机坐标系下的位置信息。
[0105]
现简单介绍pnp算法:
[0106]
由于z轴对于角度计算无影响,所以只取x轴,y轴的信息。假定两二维码中心点在相机坐标系下的位置信息分别为(x1,y1),(x2,y2)。
[0107]
二维码角点在相机坐标系下的位置信息与在图像坐标系下的位置信息之间的关系如下公式1所示。
[0108][0109]
由于每个二维码有四个角点,对于每个二维码,首先将其中3个角点的位置信息带
入公式1,公式中的s是一个临时表示量,可以被消除;k是内参矩阵,提前标定得出,为已知量,t是旋转平移矩阵,为需要求取的量,左边的(x
i
,y
i
,1)是第i个角点在图像坐标系下的像素位置,是已知的,右边的(x
i
,y
i
,z
i
,1)是角点在相机坐标系下的3d位置;通过3个点的组合,可获取4组解(x,y)以及四组旋转平移矩阵解。
[0110]
将第4个点的像素位置和上面4组解的信息分别代入公式1,取其中误差最小的解,即是最终的解;该解是二维码到相机坐标系的旋转平移矩阵。
[0111]
将求解的唯一旋转平移矩阵和二维码的中心点像素位置带入公式1,即可以获取二维码在图像坐标系下的中心点位置信息。
[0112]
图1示出了挂角角度识别装置的一种示例性结构,其可包括:
[0113]
摄像头1,用于:实时拍摄挂车上的二维码,得到实时图像;
[0114]
识别系统2,用于:
[0115]
使用神经网络对实时图像进行角点识别,得到角点识别结果;角点识别结果包括二维码的角点位置信息;
[0116]
使用神经网络对实时图像进行边框识别,得到边框识别结果;边框识别结果包括:二维码的边框信息;
[0117]
使用神经网络对实时图像进行标识id信息识别,得到id信息识别结果;id信息识别结果包括:二维码的id信息;
[0118]
根据边框识别结果,确定id信息对应的各角点位置信息;
[0119]
根据各id信息对应的角点位置信息,确定挂车角度。
[0120]
在一个示例中,识别系统可进一步包括神经网络和位姿估计模块,位姿估计模块可用于:
[0121]
根据边框识别结果,确定id信息对应的各角点位置信息;
[0122]
根据各id信息对应的角点位置信息,确定挂车角度。
[0123]
在其他实施例中,上述挂角角度识别装置或其他装置可用于:
[0124]
使用挂车角度得到挂车姿态;
[0125]
根据挂车姿态进行转动控制及速度控制中的至少一种。
[0126]
在本发明其他实施例中,请参见图8和图9,上述神经网络可进一步包括编码器、角点预测分支、边框预测分支和id预测分支;
[0127]
其中,编码器用于:提取实时图像的特征图;
[0128]
角点预测分支用于:使用特征图计算各特征点的概率,将概率值满足预设条件的特征点作为角点,得到角点识别结果;
[0129]
边框预测分支用于:使用特征图进行边框识别,得到边框识别结果;
[0130]
id预测分支用于:使用特征图进行id信息识别,得到id信息识别结果。
[0131]
二维码的数量为两个;在本发明其他实施例中,在根据各id信息对应的角点位置信息,确定挂车角度的方面,上述的识别系统或位姿估计模块具体用于:
[0132]
根据各id信息对应的角点位置信息,计算各二维码的中心点位置信息;
[0133]
计算两二维码中心连线与目标直线之间的夹角;目标直线为水平面上与车头朝向相垂直的直线;
[0134]
将计算得到的夹角与预先标定的角度差值相减,得到挂车角度。
[0135]
相关内容请参见本文前述记载,在此不作赘述。
[0136]
在本发明其他实施例中,在根据边框识别结果,确定id信息对应的各角点位置信息的方面,上述的识别系统或神经网络或位姿估计模块具体用于:
[0137]
将属于同一个边框内的角点作为对应同一id的角点,以确定id信息对应的各角点位置信息。
[0138]
相关内容请参见本文前述记载,在此不作赘述。
[0139]
上述角点位置信息具体为角点在图像坐标系下的位置信息;
[0140]
在本发明其他实施例中,在计算各二维码的中心点位置信息的方面,上述的识别系统或位姿估计模块具体用于:
[0141]
根据各id信息对应的角点位置信息,计算各二维码在图像坐标系下的中心点位置信息;
[0142]
根据pnp算法和相机的内参矩阵,计算得到图像坐标系至相机坐标系的旋转平移矩阵;
[0143]
根据旋转平移矩阵,计算得到中心点在相机坐标系下的位置信息。
[0144]
两二维码的中心点位置分别表示为(x1,y1),(x2,y2);在本发明其他实施例中,计算两二维码中心连线与目标直线之间的夹角的公式包括:
[0145][0145]
表示两二维码中心连线与目标直线之间的夹角。
[0146]
相关内容请参见本文前述记载,在此不作赘述。
[0147]
对所公开的实施例的说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1