本发明属于电气化轨道交通中机车受电弓状态的视频监控领域,特别涉及一种受电弓图像的三维模板自动匹配方法。
背景技术:
电力机车的受电弓是电气化铁路车辆从接触网获取牵引供电的关键,其被设计为机车车体和电力接触网之间接触式的电能传输电气设备。受电弓安装在机车或动车车顶上,通过升弓使受电弓滑板和牵引电网的接触线相接,电力牵引机车从接触网取得电能;反之,通过降弓使受电弓与接触线分离。具体而言,受电弓的升弓和降弓动作实现过程如下:升弓时,压缩空气经电空阀均匀进入传动气缸,气缸活塞压缩气缸内的降弓弹簧,此时升弓弹簧使下臂杆转动,抬起上框架和滑板,受电弓匀速上升,在接近接触线时有一缓慢停滞,然后迅速接触接触线;降弓时,传动气缸内压缩空气经受电弓缓冲阀迅速排向大气,在降弓弹簧作用下,克服升弓弹簧的作用力,使受电弓迅速下降,脱离接触网。为实现升弓和降弓动作,受电弓在机械设计上充分考虑了实际路况的颠簸震动等问题,形式上可分单臂弓和双臂弓两种,均由滑板、上框架、下臂杆、底架、升弓弹簧、传动气缸、支持绝缘子等部件组成。
受电弓的主要任务,即为保障牵引供电受流的可靠性和高质量。负荷电流通过接触线和受电弓滑板接触面的流畅程度,与滑板与接触线间的接触压力、过渡电阻、接触面积有关,取决于受电弓和接触网之间的相互作用。为保证牵引电流的顺利流通,受电弓和接触线之间必须有一定的接触压力。弓网实际接触压力由四部分组成:受电弓升弓系统施加于滑板,使之向上的垂直力为静态接触压力(一般为70n或90n);由于接触悬挂本身存在弹性差异,接触线在受电弓抬升作用下会产生不同程度的上升,从而使受电弓在运行中产生上下振动,使受电弓产生一个与其本身归算质量相关的上下交变的动态接触压力;受电弓在运行中受空气流作用产生的一个随速度增加而迅速增加的气动力;受电弓各关节在升降弓过程中产生的阻尼力。弓网接触压力能直观的反映受电弓滑板和接触线间的接触情况,它符合正态分布规律,在一定范围内波动。如果太小,会增加离线率;如果太大,会使滑板和接触线间产生较大的机械磨耗。
在实际运营中,受电弓容易出现缺陷及故障。这有两方面原因,一是高强度大负载的现实运营条件下,设备磨耗加剧,寿命变短,更有可能出现缺陷和发生故障;二是接触线-受电弓-机车系统之中,接触线和机车的重要性更高,更不允许发生故障。而受电弓相对容易检修和更换,因此受电弓会承受更多的异常应力,其设计思想上即更为容易发生故障,亟待及时状态监测和早期故障的准确辨识。
随着数字影像监控技术的发展,使用视频摄像机对接触网和受电弓进行实时监测是必然发展方向。但当前阶段,受电弓影像仅是完成了数据采集、传输和存储,并未实现智能分析和状态预警,迫切需要利用数字图像识别技术建立监测图像到设备状态语义信息的映射机制,实现自主适应多观测角度复杂背景的受电弓及接触网图像子区域分离和状态识别。可是由于受电弓本身是框架结构,不像一般目标检测对象具有显著的凸型表面,在不同观测角度和不同的环境下,受电弓观测成像具有相当大的差异,使自动提取受电弓图像像素的问题具有较大技术挑战。具体而言,从监视图像中抽取受电弓像素信息的技术难度体现在:1)受电弓的形制为线框形式,受电弓图像中大部分像素实际为背景信息,而背景复杂多变不定,使其本质上称为干扰受电弓目标检测的干扰噪声;目标受电弓对应的像素较少,导致当前主流的目标检测算法皆比较困难。2)更何况,即使完成了目标检测,仍尚不能提取受电弓像素,还需配合图像分割技术,实现逐像素的类型划分。此过程未充分使用受电弓的先验形状知识,且对样本及标注数据量有很高要求,在应用场景未定的开放式全天候自然环境中的效果并不理想。3)基于图像语义分割的方法仍难以实现动态需求下的受电弓零部件图像检索,例如需进一步定位受电弓各个零部件在图像中的位置和范围。简单的需求变更,可能使大量的图像分割标注训练数据失效,是图像分割技术路线下难以进一步提升功能的一大现实障碍。
针对于此,基于受电弓姿态启发式搜索的姿态参数增强学习有望对此提供解决方案。电弓姿态的启发式搜索解决小范围内姿态配准的问题,而增强学习完成宏观姿态调整的问题,两者结合可有效降低客观迫切需求和实际任务难度的差距,促使多角度复杂背景下的受电弓姿态自主辨识的技术路线成后继受电弓状态分析的基础和关键。
在电力铁路设备设施数字化、智能化的发展的大形势下,针对轨道交通受电弓状态识别应用的需求迫在眉睫。据调查,目前,在火车提速之后,受电弓等设备寿命显著降低,在恶劣气候和频有异物侵入的情况下的风险剧增。而在现阶段接触网状态的采集,依然采用传统的人工分析视频帧的方式,而手工分析和标记需要投入大量的成本和时间,不仅抬高了运营成本,而且效率低下,导致设备缺陷和早期故障不能及时发现和排除,影响运营的安全性和高效性。应用智能化接触网图像识别技术后,铁路运营管理单位可以打通视频监测数据和设备语义信息之间的通道,做到近实时的在线分析监测效果,节省了大量的时间和成本,是未来人工智能时代,企业必备的必由选择!
在国内到目前为止,尚未检索到面向电气化轨道交通机车的受电弓图像三维模板匹配相关技术和类似专利。
参考文献
[1]rockafellar,r.tyrrell;wets,rogerj-b(2005).variationalanalysis.springer-verlag.p.117.isbn3-540-62772-3.
[2]simonyan,karen,andandrewzisserman."verydeepconvolutionalnetworksforlarge-scaleimagerecognition."arxivpreprintarxiv:1409.1556(2014).
技术实现要素:
本发明的目的是面向铁路现场环境中任意角度复杂背景下的受电弓图像分割和检索方法,以解决当前受电弓状态自动化分析中像素级定位的基础问题。它能适应适应受电弓观测的位姿变化,从而能够适用于车载监控、车站监控、手持拍摄等多种应用场合,为后续的视觉精确辨识受电弓各零部件工作状态奠定了技术基础,同时降低了铁路机车运维检修工作的负担,可使检修人员集中精力处理算法支撑的高风险对象,从而有望节省大量的人力和劳力,因而更有利于铁路运营空窗期最小化和规范化的应用推广。
为此,本发明提供一种受电弓图像的三维模板自动匹配方法。匹配算子的自监督学习过程按以下步骤进行:
s1用户指定受电弓姿态估计算子的相关学习参数,包括姿态估计算子的学习速率、学习批量个数、循环学习总次数ntmax和单个样本匹配计算的最大次数nmmax;
s2将循环计数器nt设置为1;
s3如果循环计数器nt小于最大计数值ntmax,那么进入s4;否则进入s17;
s4从受电弓观测姿态的先验分布中随机采样,得到相机观测坐标系下受电弓的姿态参数rt;其中,受电弓观测姿态的先验分布根据专家经验事先给定,设置为受电弓沿垂向旋转角范围是正负180°,俯仰角范围为正负40°,位于相机正前方,且距离相机的范围是3到6米,姿态参数rt在设定范围内采用均匀分布;
s5利用受电弓的姿态参数rttt将受电弓三维模型做平移和旋转变换,再根据相机参数将三维模型投影到二维图像平面,生成待估计的受电弓轮廓图像样本d;投影过程的具体做法为,遍历3d模型的每个面片,对面片的顶点x做三维到二维的投影x=ptx,其中x是齐次坐标系下三维点,x是齐次坐标下二维点,而pt是由相机的内参数矩阵c和姿态参数平移量tt和旋转量rt共同决定的3×4的投影矩阵pt=c[rt|tt],其中[rt|tt]代表3×3的旋转矩阵和3×1的平移矢量组合为3×4的矩阵;在图像平面以面片顶点投影做扫描转换,过程遵循计算机光栅图形学的多边形扫描转换标准过程;最后,计算所有面片扫描转换所得像素集的并集,并将其像素灰度值设置为255;即得电弓轮廓影像d;
s6判断受电弓图像是左侧视角还是右侧视角;如果是左侧视角,则水平翻转图像,使其呈现为右侧视角;
s7用预先训练好的姿态分类算法对受电弓样本图像进行分类,划分为受电弓右侧前侧、中部、后侧以及俯视、平视和仰视共9种组合情况,并以每种姿态的均值参数作为当前模型的初始化估计r0t0;
s8以姿态参数的初始化估计r0t0初始化姿态估计算子g;
s9将姿态匹配计数器nm设置为1;
s10以当前受电弓姿态riti对受电弓3d模型进行变换和投影,获取估计姿态下的受电弓轮廓影像i;投影过程的具体做法为,遍历3d模型的每个面片,对面片的顶点x做三维到二维的投影x=pix,其中x是齐次坐标系下三维点,x是齐次坐标下二维点,而pi是尺寸为3×4的投影矩阵;在给定相机的内参数矩阵c和平移ti和旋转ri的姿态参数后,投影矩阵随即确定为pi=c[ri|ti],其中[ri|ti]代表3×3的旋转矩阵和3×1的平移矢量组合为3×4的矩阵;在图像平面以面片顶点投影做扫描转换,过程遵循计算机光栅图形学的多边形扫描转换标准过程;最后,计算所有面片扫描转换所得像素集的并集,并将其像素灰度值设置为255,即为电弓轮廓影像ii;
s11将估计姿态下的受电弓图像ii与样本图像d做差异度比较,用hausdorrf距离比较受电弓图像ii与样本图像d的laplace轮廓间的差异,作为差异度结果d(i,d);
s12如果模型投影ii和目标投影d差异度d(i,d)小于5个像素,则对参数估计算子进行奖励,即向姿态参数估计算子g回馈一个较大的正值分数,否则对姿态参数估计算账进行惩罚,即向参数估计算子回馈一个负值的分数;在本系统中奖励分设置为10,而惩罚分设置为0.1;
s13姿态参数估计算子g利用姿态估计算法模块调整姿态更新值δrt,获取下一步姿态为riti 1=riti δrt;姿态估计算法模块基于vgg16网络实现,其输入当前观测的模型投影ii和目标投影d,其输出为姿态更新值δrt;
s14将匹配计数器nm增加1;
s15若匹配计数器nm超过最大限度nmmax,则进入步骤s16;否则返回步骤s5;
s16将训练计数器nt增加1,返回步骤s3;
s17保存姿态参数估计算子g的姿态估计算法模块的训练权重参数到计算机外部存储器;然后结束。
进一步的,步骤s6和s7中,皆采用主干权重共享的vgg16网络作为基础特征提取网络,在此基础上分别建立左右视角判别的全连通网络和受电弓姿态分类全连同网络,这样的拓扑设计是为了有效利用特征资源,并且简化计算。
进一步的,步骤s11中,hausdorff距离的定义源自文献[1],其差异度计算过程为:
s11-1首先利用laplace运算分别对图像ii和d计算其连通体的轮廓;
s11-2然后根据轮廓图laplace(ii)生成像素距离图fi,该fi是浮点数矩阵,它的每个像素值代表了该像素距离轮廓图ii中最近的非零像素的欧氏距离;在获取fi之后,在下一步计算hausdorff距离值时可直接从矩阵fi中检索,以提升计算效率;
s11-3最后采用hausdorff距离算法比较其轮廓的差异度,即统计d中每个轮廓像素与ii中最近的轮廓像素的距离,并取其最大值作为差异度,d(ii,d)=hausdorff(laplace(d),laplace(ii))。
进一步的,步骤s13中,参数估计算子g调整姿态更新值δrt的过程为:
s13-1用随机数生成算法得到一个取值范围从0到1的随机数,若此随机数小于预先设定的阈值e,则采用姿态估计算法模块中的姿态调节神经网络进行预测,用预测值作为δrt;否则进行lk光流场引导的随机探索δrt=fflow an,其中fflow代表基于笛卡尔变换的lk光流场匹配量,n代表高斯分布的随机数,a是一个较小的标量,取值为0.1;如果待匹配图像ii和目标图像d的差异较小时,其光流场可以作为匹配调节的指导,从而使匹配过程显著快于随机探索。
s13-2将姿态调整和奖惩得分作为整体记录到姿态估计算子g的存储器m中;存储器m存m项姿态调整和相应奖惩得分的记录,作为系统调节的经验;若存储器m已满,则覆盖记录中奖励或惩罚中占少数的最旧记录;本系统中,m的取值为2048;
s13-3随机从存储器m中抽取32条记录,作为一个批次,对姿态估计算子g的姿态估计算法模块中预测网络进行监督训练,使其强化记忆何种情况下更能够有效调节姿态参数,降低匹配度差异;训练过程遵循神经网络的反向回馈规则。
进一步的,离线的自监督训练学习后,使用真实的受电弓图像对受电弓姿态估计算子进行验证,具体验证过程为:首先使用canny算子计算真实的受电弓图像的边缘,然后将边缘图像输入给受电弓姿态估计算子,由受电弓姿态估计算子预测途中受电弓姿态,最后将三维模型的投影轮廓和受电弓图像边缘进行比较,若匹配度小于设定阈值,则该姿态估计可作为正确的预测结果。
本发明综合了数据统计模型和三维成像机理模型,整合了图形和图像处理技术,充分利用了铁路行业的先验知识,有效解决了实际中样本不充分或不完整的数据完备性难题,提供了弱监督模式下铁路检测设备模型训练的技术方案,并可拓展到于多种工业应用。
本发明和传统的受电弓定位方法相比,有益效果在于:
1、人工数据集维护的方式费时费力,具有较高人力成本,而本方法全自动进行,几近零成本,且无需维护。
2、某些极端情况下的数据样本难以获取,比如特殊的早期故障、缺陷样本极少,难以满足模型训练的需求;而本文方法是数值仿真技术,因而不受此限制。
3、本发明可以配置调节以降低数据集的有偏向性;而人工方法难以做到表征完备。
4、本方面也可充分利用已有的数据,进行拓展和增强。并具有一定的弹性适应能力,以适应受电弓不同型号的外形细微改变。
5、本发明可以精确反馈识别模型对数据量级需求的情况,从而简化识别处理的算法负担,从宏观上改进效率;
6、本发明不存在特殊设备需求,可在服务器端部署,并采用适当策略进行模型算法的迭代更新。
附图说明
图1为本发明的裂成示意图;
图2为本发明的技术线路示意图。
具体实施方式
下面结合附图和具体实施方法对本发明做进一步详细说明。
本发明的基本思想如下:针对现有智能辨识方法倚赖海量人工数据标注的缺陷,旨在电力机车受电弓状态分析系统中有效引入受电弓三维模型先验知识,创新性地提出了一种受电弓图像的三维模板智能匹配方法,使模型驱动和数据驱动的范式相结合,以服务于自监督的受电弓模型匹配训练。本发明主要由状态可调的受电弓三维模型可视化模块和受电弓姿态估计算法模块组成。用户通过程序参数指定受电弓姿态的任务训练参数,再利用三维模型可视化模块循环地随机生成待状态辨识的受电弓轮廓影像,随后受电弓姿态估计算法模块对其状态进行估计和评价,动态收集经验和开展学习,实现多样化的学习效果。
本发明的一种受电弓图像的三维模板自动匹配方法流程图如图1所示,实现的技术线路如图2所示。匹配算子的自监督学习过程按以下步骤进行:
s1用户指定受电弓姿态估计算子的相关学习参数,包括姿态估计算子的学习速率、学习批量个数、循环学习总次数ntmax和单个样本匹配计算的最大次数nmmax;
s2将循环计数器nt设置为1;
s3如果循环计数器nt小于最大计数值ntmax,那么进入s4;否则进入s17;
s4从受电弓观测姿态的先验分布中随机采样,得到相机观测坐标系下受电弓的姿态参数rt;其中,受电弓观测姿态的先验分布根据专家经验事先给定,设置为受电弓沿垂向旋转角范围是正负180°,俯仰角范围为正负40°,位于相机正前方,且距离相机的范围是3到6米,姿态参数rt在设定范围内采用均匀分布;
s5利用受电弓的姿态参数rttt将受电弓三维模型做平移和旋转变换,再根据相机参数将三维模型投影到二维图像平面,生成待估计的受电弓轮廓图像样本d;投影过程的具体做法为,遍历3d模型的每个面片,对面片的顶点x做三维到二维的投影x=ptx,其中x是齐次坐标系下三维点,x是齐次坐标下二维点,而pt是由相机的内参数矩阵c和姿态参数平移量tt和旋转量rt共同决定的3×4的投影矩阵pt=c[rt|tt],其中[rt|tt]代表3×3的旋转矩阵和3×1的平移矢量组合为3×4的矩阵;在图像平面以面片顶点投影做扫描转换,过程遵循计算机光栅图形学的多边形扫描转换标准过程;最后,计算所有面片扫描转换所得像素集的并集,并将其像素灰度值设置为255;即得电弓轮廓影像d;
s6判断受电弓图像是左侧视角还是右侧视角;如果是左侧视角,则水平翻转图像,使其呈现为右侧视角;本步骤的基础是在于电力机车及受电弓是以列车中轴左右对称,因此只需对其中一侧视角分析即可。本系统中采用vgg16网络[2]作为受电弓电弓图像是左右视角判别网络。
s7用预先训练好的姿态分类算法对受电弓样本图像进行分类,划分为受电弓右侧前侧、中部、后侧以及俯视、平视和仰视共9种组合情况,并以每种姿态的均值参数作为当前模型的初始化估计r0t0;本系统中采用vgg16网络[2]作为受电弓姿态分类网络,并且和步骤6中的网络共享全卷积部分的权重;利用人工筛选的姿态样本形成数据集,在事先完成姿态分类算法的训练。
s8以姿态参数的初始化估计r0t0初始化姿态估计算子g;
s9将姿态匹配计数器nm设置为1;
s10以当前受电弓姿态riti对受电弓3d模型进行变换和投影,获取估计姿态下的受电弓轮廓影像i;投影过程的具体做法为,遍历3d模型的每个面片,对面片的顶点x做三维到二维的投影x=pix,其中x是齐次坐标系下三维点,x是齐次坐标下二维点,而pi是尺寸为3×4的投影矩阵;在给定相机的内参数矩阵c和平移ti和旋转ri的姿态参数后,投影矩阵随即确定为pi=c[ri|ti],其中[ri|ti]代表3×3的旋转矩阵和3×1的平移矢量组合为3×4的矩阵;在图像平面以面片顶点投影做扫描转换,过程遵循计算机光栅图形学的多边形扫描转换标准过程;最后,计算所有面片扫描转换所得像素集的并集,并将其像素灰度值设置为255,即为电弓轮廓影像ii;
s11将估计姿态下的受电弓图像ii与样本图像d做差异度比较,用hausdorrf距离比较受电弓图像ii与样本图像d的laplace轮廓间的差异,作为差异度结果d(i,d);
s12如果模型投影ii和目标投影d差异度d(i,d)小于5个像素,则对参数估计算子进行奖励,即向姿态参数估计算子g回馈一个较大的正值分数,否则对姿态参数估计算账进行惩罚,即向参数估计算子回馈一个负值的分数;在本系统中奖励分设置为10,而惩罚分设置为0.1;实际应用中,奖惩参数设置包含但不限于本文所用设置。
s13姿态参数估计算子g利用姿态估计算法模块调整姿态更新值δrt,获取下一步姿态为riti 1=riti δrt;姿态估计算法模块基于vgg16网络实现,其输入当前观测的模型投影ii和目标投影d,其输出为姿态更新值δrt;
s14将匹配计数器nm增加1;
s15若匹配计数器nm超过最大限度nmmax,则进入步骤s16;否则返回步骤s5;
s16将训练计数器nt增加1,返回步骤s3;
s17保存姿态参数估计算子g的姿态估计算法模块的训练权重参数到计算机外部存储器;然后结束。
进一步的,步骤s6和s7中,皆采用主干权重共享的vgg16网络作为基础特征提取网络,在此基础上分别建立左右视角判别的全连通网络和受电弓姿态分类全连同网络,这样的拓扑设计是为了有效利用特征资源,并且简化计算。
进一步的,步骤s11中,hausdorff距离的定义源自文献[1],其差异度计算过程为:
s11-1首先利用laplace运算分别对图像ii和d计算其连通体的轮廓;
s11-2然后根据轮廓图laplace(ii)生成像素距离图fi,该fi是浮点数矩阵,它的每个像素值代表了该像素距离轮廓图ii中最近的非零像素的欧氏距离;在获取fi之后,在下一步计算hausdorff距离值时可直接从矩阵fi中检索,以提升计算效率;
s11-3最后采用hausdorff距离算法比较其轮廓的差异度,即统计d中每个轮廓像素与ii中最近的轮廓像素的距离,并取其最大值作为差异度,d(ii,d)=hausdorff(laplace(d),laplace(ii))。
进一步的,步骤s13中,参数估计算子g调整姿态更新值δrt的过程为:
s13-1用随机数生成算法得到一个取值范围从0到1的随机数,若此随机数小于预先设定的阈值e,则采用姿态估计算法模块中的姿态调节神经网络进行预测,用预测值作为δrt;否则进行lk光流场引导的随机探索δrt=fflow an,其中fflow代表基于笛卡尔变换的lk光流场匹配量,n代表高斯分布的随机数,a是一个较小的标量,取值为0.1;如果待匹配图像ii和目标图像d的差异较小时,其光流场可以作为匹配调节的指导,从而使匹配过程显著快于随机探索。
s13-2将姿态调整和奖惩得分作为整体记录到姿态估计算子g的存储器m中;存储器m存m项姿态调整和相应奖惩得分的记录,作为系统调节的经验;若存储器m已满,则覆盖记录中奖励或惩罚中占少数的最旧记录;本系统中,m的取值为2048;
s13-3随机从存储器m中抽取32条记录,作为一个批次,对姿态估计算子g的姿态估计算法模块中预测网络进行监督训练,使其强化记忆何种情况下更能够有效调节姿态参数,降低匹配度差异;训练过程遵循神经网络的反向回馈规则。
进一步的,离线的自监督训练学习后,使用真实的受电弓图像对受电弓姿态估计算子进行验证,具体验证过程为:首先使用canny算子计算真实的受电弓图像的边缘,然后将边缘图像输入给受电弓姿态估计算子,由受电弓姿态估计算子预测途中受电弓姿态,最后将三维模型的投影轮廓和受电弓图像边缘进行比较,若匹配度小于设定阈值,则该姿态估计可作为正确的预测结果。
多种模型姿态生成器可以并行使用,使随机性进一步增强。实际中,我们设置随机姿态生成器的选用一般为4个。每幅字符图像采用相同的干扰参数,因而生成效果具有一致性;但多幅图像间的干扰参数各不相同,因此可以形成海量的效果不重复的受电弓图像样本,形成优越的训练数据集。
由于受电弓图像仿真生成是在高分辨率图像中直接获得的,因此处理结果可以直接用后继的受电弓姿态识别模块进行增量式训练。受电弓姿态识别训练范围在本发明的支持下,具备可调可控的特性,样本复杂度的可表达性大为增强,加速了受电弓姿态辨识的实用化过程。尽管高质量的仿真图像生成过程会适当增加运算量,但由于可以提高性能率,因此从全局看仍然具有非常重要的意义。本发明在dgx2平台上用软件实现并运行,软件环境为ubuntu16.04.4lts,程序开发采用python3.7x64,图像生成、采样和处理的技术实现时调用了pil、opencv和numpy库。
本发明可以集成于专用的受电弓图像分析服务器端,可利用服务器在空闲时段根据分析结果校验通过的数据样本扩充训练数据集,并利用空闲时段自主增量式训练学习,形成受电弓三维模板匹配算法智能化的迭代和更新。
1.一种受电弓图像的三维模板自动匹配方法,其特征在于,匹配算子的自监督学习过程按以下步骤进行:
s1用户指定受电弓姿态估计算子的相关学习参数,包括姿态估计算子的学习速率、学习批量个数、循环学习总次数ntmax和单个样本匹配计算的最大次数nmmax;
s2将循环计数器nt设置为1;
s3如果循环计数器nt小于最大计数值ntmax,那么进入s4;否则进入s17;
s4从受电弓观测姿态的先验分布中随机采样,得到相机观测坐标系下受电弓的姿态参数rt;其中,受电弓观测姿态的先验分布根据专家经验事先给定,设置为受电弓沿垂向旋转角范围是正负180°,俯仰角范围为正负40°,位于相机正前方,且距离相机的范围是3到6米,姿态参数rt在设定范围内采用均匀分布;
s5利用受电弓的姿态参数rttt将受电弓三维模型做平移和旋转变换,再根据相机参数将三维模型投影到二维图像平面,生成待估计的受电弓轮廓图像样本d;投影过程的具体做法为,遍历3d模型的每个面片,对面片的顶点x做三维到二维的投影x=ptx,其中x是齐次坐标系下三维点,x是齐次坐标下二维点,而pt是由相机的内参数矩阵c和姿态参数平移量tt和旋转量rt共同决定的3×4的投影矩阵pt=c[rt|tt],其中[rt|tt]代表3×3的旋转矩阵和3×1的平移矢量组合为3×4的矩阵;在图像平面以面片顶点投影做扫描转换,过程遵循计算机光栅图形学的多边形扫描转换标准过程;最后,计算所有面片扫描转换所得像素集的并集,并将其像素灰度值设置为255;即得电弓轮廓影像d;
s6判断受电弓图像是左侧视角还是右侧视角;如果是左侧视角,则水平翻转图像,使其呈现为右侧视角;
s7用预先训练好的姿态分类算法对受电弓样本图像进行分类,划分为受电弓右侧前侧、中部、后侧以及俯视、平视和仰视共9种组合情况,并以每种姿态的均值参数作为当前模型的初始化估计r0t0;
s8以姿态参数的初始化估计r0t0初始化姿态估计算子g;
s9将姿态匹配计数器nm设置为1;
s10以当前受电弓姿态riti对受电弓3d模型进行变换和投影,获取估计姿态下的受电弓轮廓影像i;投影过程的具体做法为,遍历3d模型的每个面片,对面片的顶点x做三维到二维的投影x=pix,其中x是齐次坐标系下三维点,x是齐次坐标下二维点,而pi是尺寸为3×4的投影矩阵;在给定相机的内参数矩阵c和平移ti和旋转ri的姿态参数后,投影矩阵随即确定为pi=c[ri|ti],其中[ri|ti]代表3×3的旋转矩阵和3×1的平移矢量组合为3×4的矩阵;在图像平面以面片顶点投影做扫描转换,过程遵循计算机光栅图形学的多边形扫描转换标准过程;最后,计算所有面片扫描转换所得像素集的并集,并将其像素灰度值设置为255,即为电弓轮廓影像ii;
s11将估计姿态下的受电弓图像ii与样本图像d做差异度比较,用hausdorrf距离比较受电弓图像ii与样本图像d的laplace轮廓间的差异,作为差异度结果d(i,d);
s12如果模型投影ii和目标投影d差异度d(i,d)小于5个像素,则对参数估计算子进行奖励,即向姿态参数估计算子g回馈一个较大的正值分数,否则对姿态参数估计算账进行惩罚,即向参数估计算子回馈一个负值的分数;在本系统中奖励分设置为10,而惩罚分设置为0.1;
s13姿态参数估计算子g利用姿态估计算法模块调整姿态更新值δrt,获取下一步姿态为riti 1=riti δrt;姿态估计算法模块基于vgg16网络实现,其输入当前观测的模型投影ii和目标投影d,其输出为姿态更新值δrt;
s14将匹配计数器nm增加1;
s15若匹配计数器nm超过最大限度nmmax,则进入步骤s16;否则返回步骤s5;
s16将训练计数器nt增加1,返回步骤s3;
s17保存姿态参数估计算子g的姿态估计算法模块的训练权重参数到计算机外部存储器;然后结束。
2.根据权利要求1所述的一种受电弓图像的三维模板自动匹配方法,其特征在于,所述步骤s6和s7中,皆采用主干权重共享的vgg16网络作为基础特征提取网络,在此基础上分别建立左右视角判别的全连通网络和受电弓姿态分类全连同网络。
3.根据权利要求1所述的一种受电弓图像的三维模板自动匹配方法,其特征在于,所述步骤s11中,hausdorff距离的差异度计算过程为:
s11-1首先利用laplace运算分别对图像ii和d计算其连通体的轮廓;
s11-2然后根据轮廓图laplace(ii)生成像素距离图fi,该fi是浮点数矩阵,它的每个像素值代表了该像素距离轮廓图ii中最近的非零像素的欧氏距离;在获取fi之后,在下一步计算hausdorff距离值时可直接从矩阵fi中检索,以提升计算效率;
s11-3最后采用hausdorff距离算法比较其轮廓的差异度,即统计d中每个轮廓像素与ii中最近的轮廓像素的距离,并取其最大值作为差异度,d(ii,d)=hausdorff(laplace(d),laplace(ii))。
4.根据权利要求1所述的一种受电弓图像的三维模板自动匹配方法,其特征在于,所述步骤s13中,参数估计算子g调整姿态更新值δrt的过程为:
s13-1用随机数生成算法得到一个取值范围从0到1的随机数,若此随机数小于预先设定的阈值e,则采用姿态估计算法模块中的姿态调节神经网络进行预测,用预测值作为δrt;否则进行lk光流场引导的随机探索δrt=fflow an,其中fflow代表基于笛卡尔变换的lk光流场匹配量,n代表高斯分布的随机数,a是一个较小的标量,取值为0.1;
s13-2将姿态调整和奖惩得分作为整体记录到姿态估计算子g的存储器m中;存储器m存m项姿态调整和相应奖惩得分的记录,作为系统调节的经验;若存储器m已满,则覆盖记录中奖励或惩罚中占少数的最旧记录;m的取值为2048;
s13-3随机从存储器m中抽取32条记录,作为一个批次,对姿态估计算子g的姿态估计算法模块中预测网络进行监督训练,使其强化记忆何种情况下更能够有效调节姿态参数,降低匹配度差异;训练过程遵循神经网络的反向回馈规则。
5.根据权利要求1所述的一种受电弓图像的三维模板自动匹配方法,其特征在于,在所述自监督学习中,离线的自监督训练学习后,使用真实的受电弓图像对受电弓姿态估计算子进行验证,具体验证过程为:
首先使用canny算子计算真实的受电弓图像的边缘,然后将边缘图像输入给受电弓姿态估计算子,由受电弓姿态估计算子预测途中受电弓姿态,最后将三维模型的投影轮廓和受电弓图像边缘进行比较,若匹配度小于设定阈值,则该姿态估计可作为正确的预测结果。
技术总结