基于双目视觉角度测量的曲面偏转角度检测方法及装置与流程

文档序号:33505915发布日期:2023-03-18 00:32阅读:137来源:国知局
基于双目视觉角度测量的曲面偏转角度检测方法及装置与流程

1.本技术涉及角度测量的技术领域,特别是一种基于双目视觉角度测量的曲面角度检测方法。


背景技术:

2.双目识别检测从左右两相机获取的图像中计算出图像中每个像素点的视差信息,进而获取实际空间中物体的三维信息。在航空航天、舰船制造、资源勘测等领域,双目识别检测技术被广泛的应用于相关领域设备的角度检测。
3.传统的双目识别检测技术在应用于被测面的偏转角度检测时,常使用质心角求解法来识别把靶标号,进而通过标定的靶标空间坐标位置来得到平面的偏转角度。而当被测物的被测面为曲面时,例如检测飞机舵面偏转角时,或是对工业设备的一些带曲面的机械部件进行质检时,都需要涉及曲面条件下对目标面的偏转角度进行测量,以确定目标面的偏转角度符合用户的实际要求。
4.因此,目前亟需一种基于双目视觉角度测量的曲面偏转角度检测方法。


技术实现要素:

5.本技术提供了一种基于双目识别角度测量的曲面偏转角度检测方法及装置,采用双目识别检测技术在涉及曲面条件下对目标面的偏转角度进行测量,以检测目标面的偏转角度是否符合用户的实际要求。
6.本技术第一方面提供一种基于双目识别角度测量的曲面偏转角度检测方法,应用于双目识别角度测量装置中,方法包括:接收用户设备发送的目标面偏转角度测量请求,目标面偏转角度用于表示偏转后的目标面与基准面之间的偏转角度,目标面和基准面均为曲面;使用预设数量的靶标对目标面进行定面标记,预设数量至少为3个,定面标记是指确定目标面上任一点所在的平面,靶标对应有唯一的靶标号;获取目标面的基准双目图像,基准双目图像包括第一基准图像以及第二基准图像;对基准双目图像进行靶标特征检测,得到基准面靶标列表;响应于目标面的偏转动作,获取目标面的偏转双目图像,偏转双目图像包括第一偏转图像以及第二偏转图像;对偏转双目图像进行靶标特征检测,得到偏转面靶标列表;获取基准面靶标列表与偏转面靶标列表中的相同靶标号的靶标,得到左右基准面匹配靶标;获取左右基准面匹配靶标的空间坐标,空间坐标包括在第一基准图像中的第一基准空间坐标、在第二基准图像中的第二基准空间坐标、在第一偏转图像中的第一偏转空间坐标以及在第二偏转图像中的第二偏转空间坐标;根据左右基准面匹配标靶的空间坐标,得到目标面偏转角度;向用户设备发送目标面偏转角度,以便于用户根据目标面偏转角度判断目标面与基准面之间的夹角是否在预定偏转角度范围内。
7.在一种可能的实施方式中,对基准双目图像进行靶标特征检测,得到基准面靶标列表,具体包括:对第一基准图像进行靶标特征检测,得到第一靶标组,第一靶标组包括至少一个靶标;对第二基准图像进行靶标特征检测,得到第二靶标组,第二靶标组包括至少一
个靶标;获取基准面靶标列表,基准面靶标列表为第一靶标组与第二靶标组中的相同靶标号的靶标;对偏转双目图像进行靶标特征检测,得到偏转面靶标列表,具体包括:对第一偏转图像与第二偏转图像进行靶标特征检测,对应得到第三靶标组与第四靶标组,第三靶标组与第四靶标组均包括至少一个靶标;获取偏转面靶标列表,偏转面靶标列表为第三靶标组与第四靶标组中的相同靶标号的靶标。本技术通过上述实施方式,能够匹配出基准面以及偏振面上能够识别出的相同靶标号的靶标。
8.在一种可能的实施方式中,靶标特征检测包括:对第一基准图像与第二基准图像的灰度图进行斑点检测,获取符合预设斑点特征的斑点;对符合预设斑点特征的斑点进行降噪,获取符合预设降噪要求的斑点,以得到第一斑点群;对第一斑点群的轮廓进行椭圆拟合,得到第一椭圆轮廓,第一椭圆轮廓用于限定第一斑点群中各个斑点的轮廓为同一个椭圆;将第一斑点群中各个斑点的轮廓进行修正,得到第一圆形轮廓,第一圆形轮廓用于限定第一斑点群中各个斑点的轮廓为同一个圆形;对第一斑点群中任意一个圆形斑点进行编号,得到带有编号的靶标组。本技术通过上述实施方式,能够获得符合标靶编号的标靶组。
9.在一种可能的实施方式中,对第一斑点群中任意一个圆形斑点进行编号,具体包括:获取圆形斑点的多个扇形图像,多个扇形图像由圆形斑点按照预设第一角度等分得到,圆形斑点以预设基准线进行预设第一角度等分;多个扇形图像中的任意一个扇形图像仅存在白色圆环或非白色圆环;对第一斑点群中任意一个圆形斑点进行编号。本技术通过上述实施方式,能够使得圆形斑点中的多个扇形图像仅存在两种状态,以便于后续靶标的编号。
10.在一种可能的实施方式中,对符合预设斑点特征的斑点进行降噪,获取符合预设降噪要求的斑点,以得到第一斑点群,具体包括:获取符合预设斑点特征的斑点中任意一个斑点的轮廓点数量;构建第一斑点群,第一斑点群中任意一个斑点的轮廓点数量大于或等于预设轮廓点数量阈值,轮廓点数量用于表示斑点的轮廓中数据量的大小。
11.在一种可能的实施方式中,将第一椭圆斑点群中各个斑点的轮廓进行修正,得到第一圆形斑点群,具体包括:获取第一斑点群中各个斑点的轮廓的外接矩形参数;调用getaffinetransform函数获取修正所需的仿射变换矩阵,仿射变换矩阵应用于warpaffine函数中,以得到第一圆形斑点群。
12.在一种可能的实施方式中,根据左右基准面匹配标靶的空间坐标,得到目标面偏转角度,具体包括:获取基准面的近似平面,基准面的近似平面根据第一基准空间坐标以及第二基准空间坐标得到;获取偏转面的近似平面,偏转面的近似平面根据第一偏转空间坐标以及第二偏转空间坐标得到;获取偏转角度,偏转角度为基准面的近似平面与偏转面的近似平面的夹角。
13.在一种可能的实施方式中,对第一基准图像与第二基准图像的灰度图进行斑点检测,具体包括:获取符合面积过滤要求与圆度过滤要求的斑点。
14.本技术第二方面提供一种基于双目视觉角度测量的曲面偏转角度检测装置,装置包括接收模块、定面标记模块、基准图像获取模块、基准图像检测模块、偏转图像获取模块、偏转图像检测模块、靶标匹配模块、空间坐标获取模块、偏转角度计算模块以及输出模块;接收模块,接收用户设备发送的目标面偏转角度测量请求,目标面偏转角度用于表示目标面与基准面之间的偏转角度,目标面和基准面均为曲面;定面标记模块,使用预设数量的靶标对目标面进行定面标记,预设数量至少为3个,定面标记是指确定目标面上任一点所在的
平面,靶标对应有唯一的靶标号;基准图像获取模块,获取目标面的基准双目图像,基准双目图像包括第一基准图像以及第二基准图像;基准图像检测模块,对基准双目图像进行靶标特征检测,得到基准面靶标列表;偏转图像获取模块,响应于目标面的偏转动作,获取目标面的偏转双目图像,偏转双目图像包括第一偏转图像以及第二偏转图像;偏转图像检测模块,对基准双目图像进行靶标特征检测,得到基准面靶标列表;靶标匹配模块,获取基准面靶标列表与偏转面靶标列表中的相同靶标号的靶标,得到左右基准面匹配靶标;空间坐标获取模块,获取左右基准面匹配靶标的空间坐标,空间坐标包括在第一基准图像中的第一基准空间坐标、在第二基准图像中的第二基准空间坐标、在第一偏转图像中的第一偏转空间坐标以及在第二偏转图像中的第二偏转空间坐标;偏转角度计算模块,根据左右基准面匹配标靶的空间坐标,得到目标面偏转角度;输出模块,向用户设备发送目标面偏转角度,以便于用户根据目标面偏转角度判断目标面与基准面之间的夹角是否在预定偏转角度范围内。
15.本技术第三方面提供一种电子设备,包括处理器、存储器和收发器,存储器用于存储指令,收发器用于和其他设备通信,处理器用于执行存储器中存储的指令,以使电子设备执行如上述任意一项的方法。
16.本技术第四方面提供了一种计算机可读存储介质,计算机可读存储介质存储有指令,当指令被执行时,执行上述任意一项的方法。
17.与现有技术相比,本技术的有益效果是:通过采用双目识别检测技术在涉及曲面条件下对目标面的偏转角度进行测量,达到检测目标面的偏转角度是否符合用户的实际要求的效果。
附图说明
18.图1是本技术实施例提供的一种基于双目识别角度测量的曲面偏转角度检测方法的流程示意图;图2是本技术实施例提供的一种基于双目识别角度测量的曲面偏转角度检测方法的流程示意图;图3是本技术实施例提供的一种基于双目识别角度测量的曲面偏转角度检测方法的流程示意图;图4是本技术实施例提供的一种基于双目识别角度测量的曲面偏转角度检测方法的扇形切割原理示意图;图5是本技术实施例提供的一种基于双目识别角度测量的曲面偏转角度检测方法的流程示意图;图6是本技术实施例提供的一种基于双目识别角度测量的曲面偏转角度检测方法的流程示意图;图7是本技术实施例提供的一种基于双目识别角度测量的曲面偏转角度检测方法的流程示意图;图8是本技术实施例提供的一种基于双目识别角度测量的曲面偏转角度检测方法的流程示意图;图9是本技术实施例提供的一种基于双目识别角度测量的曲面偏转角度检测方法
的流程示意图;图10是本技术实施例提供的一种基于双目识别角度测量的曲面偏转角度检测方法的原理示意图;图11是本技术实施例提供的一种基于双目识别角度测量的曲面偏转角度检测装置的结构示意图;图12是本技术实施例提供的一种基于双目识别角度测量的曲面偏转角度检测装置的结构示意图。
具体实施方式
19.为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。
20.此外,本技术说明书中的术语“第一”、“第二”以及“第三”等是用于区别不同对象,而不是用于描述特定顺序,可以明示或者隐含地包括一个或者多个该特征。
21.本技术实施例中的双目视觉角度测量装置用于获取本实施例中的各种图像,圆形靶标用于构建三维空间。本技术中的被测面为曲率较低的曲面,用于粘贴靶标。
22.本技术实施例中的各种函数的执行平台可以为opencv,可以执行图像处理以及函数处理功能。本技术实施例中的椭圆拟合是指:对于给定平面上的一组样本点,寻找一个椭圆,使其尽可能靠近这些样本点。也就是说到,将图像中的一组数据以椭圆方程为模型进行拟合,使某一椭圆方程尽量满足这些数据,并求出该椭圆方程的各个参数。最后确定的最佳椭圆的中心即是搜索要确定的靶心。
23.本技术实施例中的目标面为带有微小曲面的平面,本技术实施例中的偏转曲面是指带有微小曲面的目标面在偏转之后得到的新的曲面。本技术实施例中的曲面、偏转曲面都是指同一目标面。
24.本技术实施例中的空间坐标系可以为相机坐标系,相机坐标系是以相机的聚焦中心为原点,以光轴为z轴建立的三维直角坐标系。
25.本技术实施例中的双目视觉角度测量装置标定完成需十组不同位置的照片,还需要获取双目视觉角度测量装置的设置参数。可选的,双目视觉角度测量完成标定后,图像的重投影误差小于0.5,可参见数传统的双目视觉角度测量装置的标定方法,不对此做赘述。
26.本技术实施例提供一种基于双目视觉角度测量的曲面偏转角度检测方法,如图1所示,包括步骤s101-s106。
27.步骤s101,接收用户设备发送的目标面偏转角度测量请求,目标面偏转角度用于表示偏转后的目标面与基准面之间的偏转角度,目标面和基准面均为曲面。
28.举例来说,目标面可以为应用本技术的任意带有微小曲面的被测物或被测设备的表面。例如,飞机的舵面检测、飞行器相对于对地表面的偏转等存在对曲面偏转角度测量的场景。
29.步骤s102,使用预设数量的靶标对目标面进行定面标记,预设数量至少为3个,定面标记是指确定目标面上任一点所在的平面,靶标对应有唯一的靶标号。
30.举例来说,获取一定数量的靶标,并确定在目标曲面上的空间位置。由于三点定一
个平面,因此最低靶标数量为3。本实施例可适当增加靶标数,增加靶标数可提高可待识别的目标曲面的角度值和容错率。
31.在一种可能的实施方式中,本方法实施例使用靶标数量为12个。
32.步骤s103,获取目标面的基准双目图像,基准双目图像包括第一基准图像以及第二基准图像;对基准双目图像进行靶标特征检测,得到基准面靶标列表。
33.如图2所示,在一种可能的实施方式中,对基准双目图像进行靶标特征检测,得到基准面靶标列表,具体包括步骤s1031-s1033。
34.步骤s1031,对第一基准图像进行靶标特征检测,得到第一靶标组,第一靶标组包括至少一个靶标。
35.步骤s1032,对第二基准图像进行靶标特征检测,得到第二靶标组,第二靶标组包括至少一个靶标。
36.步骤s1033,获取基准面靶标列表,基准面靶标列表为第一靶标组与第二靶标组中的相同靶标号的靶标。
37.举例来说,对于步骤s1033,遍历组成的所有数据,取最低值作为靶标号。若是最低值小于65535(0xffff),则将此靶标号和空间坐标存入对应的数据结构中。识别完所有的斑点之后,得到双目视觉角度测量设备所能识别的所有靶标号。遍历第一靶标组和第二靶标组,若是存在相同的靶标号,则认为该点识别正确,分别将靶标号和空间坐标存入对应的双目视觉角度测量设备的正确靶标号列表,以下简称为基准面靶标列表。
38.在一种可能的实施方式中,当第一靶标组和第二靶标组中的靶标存在以下情况时,将靶标从基准面靶标列表中去除。以下情况包括:当靶标号存在识别失败的情况,若是标准差均过高,则返回错误码0;靶标号大于65535,返回错误码65535。存在相同靶标号的情况,当某个靶标识别错误,与基准面靶标列表内某靶标号一致时。通过上述实施方式提高了基准面靶标列表中靶标的数据精度。
39.步骤s104,响应于目标面的偏转动作,获取目标面的偏转双目图像,偏转双目图像包括第一偏转图像以及第二偏转图像;对偏转双目图像进行靶标特征检测,得到偏转面靶标列表。
40.如图3所示,在一种可能的实施方式中,对偏转双目图像进行靶标特征检测,得到偏转面靶标列表,具体包括步骤s1041-s1042。
41.步骤s1041,对第一偏转图像与第二偏转图像进行靶标特征检测,对应得到第三靶标组与第四靶标组,第三靶标组与第四靶标组均包括至少一个靶标。
42.举例来说,对于步骤s1041,将基准双目图像旋转一定角度(小于
±
60
°
),获得目标面的偏转双目图像。对第一偏转图像与第二偏转图像进行靶标特征检测的方法步骤可参考说明书中对第一基准图像与第二基准图像进行靶标特征检测的方法,在此不再赘述。
43.步骤s1042,获取偏转面靶标列表,偏转面靶标列表为第三靶标组与第四靶标组中的相同靶标号的靶标。
44.步骤s105,获取基准面靶标列表与偏转面靶标列表中的相同靶标号的靶标,得到左右基准面匹配靶标;获取左右基准面匹配靶标的空间坐标,空间坐标包括在第一基准图像中的第一基准空间坐标、在第二基准图像中的第二基准空间坐标、在第一偏转图像中的第一偏转空间坐标以及在第二偏转图像中的第二偏转空间坐标。
45.举例来说,对于步骤s105,由于目标面的测量环境为曲面,且靶标识别受到光照,距离等因素的影响,存在一定识别失败概率。当靶标贴的地方为曲面时,基准面所识别成功的靶标数与动面所识别的靶标数量不一定一致。此时由基准面所有靶标点构造成的平面,与动面所有靶标点构造的平面存在误差。要消除此曲面带来的误差可以使得基准面与动面靶标点一致,即在构建三维平面前将基准面中动面未识别到的靶标点移除,此为基准面靶标匹配。由于光照等因素的影响,可能基准面会有部分靶标无法识别。当基准面运动形成动面之后之前无法识别的靶标又可以成功识别,这部分靶标也需要去除。基准面靶标匹配完成之后,遍历基准面靶标列表,逐一投影到三维的相机空间系内,获取当前投入的左右靶标点的空间坐标,存入基准面空间点列表中,等待后续计算使用。遍历偏转面的二维靶标点,逐一投影到三维的相机空间系内,获取当前投入的左右靶标点的空间坐标,存入动面空间点列表中,等待后续计算使用。
46.步骤s106,根据左右基准面匹配标靶的空间坐标,得到目标面偏转角度;向用户设备发送目标面偏转角度,以便于用户根据目标面偏转角度判断目标面与基准面之间的夹角是否在预定偏转角度范围内。
47.举例来说,对于步骤s106,根据左右基准面匹配标靶的空间坐标,得到目标面偏转角度,具体包括:使用面计算算法,投入基准面空间点列表内所有点,求得基准面的在双目系统空间内的近似平面。对动面进行同样的操作,求得动面在双目系统空间内的近似平面。利用基础三维空间知识可知,两平面夹角计算方法:两平面法向量的点乘为其角度值,叉乘为方向。以此为原理计算基准面和动面之间的夹角。
48.在一种可能的实施方式中,根据左右基准面匹配标靶的空间坐标,得到目标面偏转角度还包括:当测量角度小于-90
°
或大于90
°
时,求其补角做为返回值。(由于平面法向量有两个方向,每次计算时,两个方向的法向量计算所得的夹角互为180
°
补角)本技术实施例中,提供一种基准面与偏转面夹角的计算方法。
49.如下:在被测舵面上粘贴12个编码标识点,在舵面处于零面位置时,先通过前面的原理计算出12个编码标识点的三维空间坐标,通过最小二乘法原理拟合出这12个编码点的最小逼近平面p1:a1x+b1y+c1z+d=0在舵面处于被测位置时,获取此位置时12个编码点的三维空间坐标,然后通过最小二乘法原理拟合出这12个编码点的最小逼近平面pn:anx+bny+cnz+d=0如图4所示,图中p1和pn的夹角为,舵面偏转夹角为,很容易证明:=即求出这两个平面的夹角即为舵面的偏转角度。由几何原理可知两平面的夹角为两平面的法向量夹角,因为p1的法向量为p1(a1,b1,c1),pn的法向量为pn(an,bn,cn),所以:即求出了舵面偏转角度。
50.如图所示,在一种可能的实施方式中,根据左右基准面匹配标靶的空间坐标,得到目标面偏转角度,具体包括步骤s1061-s1063。
51.步骤s1061,获取基准面的近似平面,基准面的近似平面根据第一基准空间坐标以及第二基准空间坐标得到。
52.步骤s1062,获取偏转面的近似平面,偏转面的近似平面根据第一偏转空间坐标以及第二偏转空间坐标得到。
53.步骤s1063,获取偏转角度,偏转角度为基准面的近似平面与偏转面的近似平面的夹角。
54.如图5所示,在一种可能的实施方式中,靶标特征检测包括步骤s401-s406。
55.步骤s401,对第一基准图像与第二基准图像的灰度图进行斑点检测,获取符合预设斑点特征的斑点。
56.举例来说,采用simpleblobdetector对灰度图进行斑点检测,寻找基准双目图像上的斑点。由于靶标为圆形,因此需要设置过滤器。创建结构体simpleblobdetector::params,设置采用面积过滤和圆度过滤。
57.在一种可能的实施方式中,对第一基准图像与第二基准图像的灰度图进行斑点检测,具体包括:获取符合面积过滤要求与圆度过滤要求的斑点。
58.举例来说,面积过滤的最大面积为20000像素,最小面积为1000像素;圆度过滤的最小半径为0.3圆度,最大半径为3圆度;最小阈值为30亮度,最大阈值为150亮度。
59.步骤s402,对符合预设斑点特征的斑点进行降噪,获取符合预设降噪要求的斑点,以得到第一斑点群。
60.如6图所示,在一种可能的实施方式中,对符合预设斑点特征的斑点进行降噪,获取符合预设降噪要求的斑点,以得到第一斑点群,具体包括步骤s4021-s4022。
61.步骤s4021,获取符合预设斑点特征的斑点中任意一个斑点的轮廓点数量。
62.步骤s4022,构建第一斑点群,第一斑点群中任意一个斑点的轮廓点数量大于或等于预设轮廓点数量阈值,轮廓点数量用于表示斑点的轮廓中数据量的大小。
63.举例来说,使用特征检测器对双目视觉角度测量设备获取到的第一基准图像进行检测,识别出所有符合条件的斑点存入vector《cv::keypoint》容器内。遍历vector《cv::keypoint》容器,对于每一个斑点的处理操作如下:以斑点10倍半径为边长,斑点中心为中心,从原图截取一个正方形作为新图像;求取图像平均值,利用平均值作为最低阈值对新图像进行二值化,求得二值化图像。完成上述步骤后,执行步骤s4021-s4022,依次调用函数canny和函数findcontours,canny填入参数50,150。findcontours函数填入参数retr_ccomp,检测所有轮廓,且仅建立两个等级信息;填入参数chain_approx_simple,进行轮廓压缩,仅保留顶点。最终得到的轮廓数据填入数据结构vector《vector《point》》中,轮廓层级信息填入数据vector《vec4i》中;遍历轮廓数据,且为加快计算速度,仅寻找最顶层轮廓。对当前处理的轮廓进行数据量大小测试,如果此轮廓的点数小于30个,那么则抛弃此轮廓;步骤s403,对第一斑点群的轮廓进行椭圆拟合,得到第一椭圆轮廓,第一椭圆轮廓用于限定第一斑点群中各个斑点的轮廓为同一个椭圆。
64.举例来说,对通过数据量大小测试的轮廓使用函数fitellipse进行拟合椭圆,记录下所有的轮廓中心到图像中心的距离,将距离最小的轮廓作为拟合成功的椭圆轮廓,需要说明的是,由于靶标的轮廓为圆形,故而需求出此轮廓的长轴作为准确值长轴。
65.步骤s404,将第一斑点群中各个斑点的轮廓进行修正,得到第一圆形轮廓,第一圆形轮廓用于限定第一斑点群中各个斑点的轮廓为同一个圆形。
66.如图7所示,在一种可能的实施方式中,将第一椭圆斑点群中各个斑点的轮廓进行
修正,得到第一圆形斑点群,具体包括步骤s4041-s4042;步骤s4041,获取第一斑点群中各个斑点的轮廓的外接矩形参数。
67.步骤s4042,调用getaffinetransform函数获取修正所需的仿射变换矩阵,仿射变换矩阵应用于warpaffine函数中,以得到第一圆形斑点群。
68.举例来说,将第一椭圆斑点群中各个斑点的外接矩形投影为圆形,使用getaffinetransform求得转化前和转化后的仿射变换矩阵后,使用warpaffine对此矩阵对图片进行变换,使得第一椭圆斑点群中各个斑点的轮廓变为圆形,以得到第一圆形斑点群。
69.步骤s405,对第一斑点群中任意一个圆形斑点进行编号,得到带有编号的靶标组。
70.如图8所示,在一种可能的实施方式中,对第一斑点群中任意一个圆形斑点进行编号,具体包括步骤s4051-s4052。
71.步骤s4051,获取圆形斑点的多个扇形图像,多个扇形图像由圆形斑点按照预设第一角度等分得到,圆形斑点以预设基准线进行预设第一角度等分,多个扇形图像中的任意一个扇形图像仅存在白色圆环或非白色圆环;步骤s4052,对第一斑点群中任意一个圆形斑点进行编号。
72.针对步骤s4051以及步骤s4052,举例来说,如图9所示,获取圆形斑点的多个扇形图像,多个扇形图像由圆形斑点按照预设第一角度等分得到,预设第一角度为24
°
,一共存在15份扇形图像。最大可识别靶标号为2^15-1=32767。在正确的识别靶标之前,需要先对靶标进行正确的切割。将圆形斑点按照360
°
划分,对每一扇形图像进行分析,若扇形图像中2倍半径到4倍半径之间的白色像素的个数大于0.5倍的半径内白色像素的个数,则认为这一扇形图像内部有存在白色圆环,将此信息记录到vector《int》中。且为使后续数据计算更为简便,复制一份数据(即数据序号0-359与数据360-719数据对应且相同)。当进行正确切割时,每份24
°
内的所有圆环颜色应该一致的,仅存在白色圆环或非白色圆环,不存在中间态。以此规律为原理,遍历所有可能的切割,寻找标准差最低的一次切割,记录下此次切割开始的角度,按照切割开始的角度的圆形斑点的切割线即为预设基准线。
73.在一种可能的实施方式中,步骤s4051,对第一斑点群中任意一个圆形斑点进行编号之前。该方法还包括,将标准差最低的切割组成的数据进行合并,并使用平均值对多个扇形图像中的图形噪声进行过滤,对于平均值小于0.5的图形,则认为此处不存在白色圆环,反之则认为存在白色圆环。
74.本实施例提供一种切割靶标为多个扇形的示意图,如图10所示的圆形靶标1和圆形靶标2。针对靶标1从初始切割线顺时针开始排序的多个扇形,当扇形中不存在阴影时,即为存在白色圆环的扇形。遍历所有可能的扇形排序,该靶标识别方法最多能够识别2^15-1个靶标。
75.本技术实施例通过上述实施方式,可以达到以下有益效果。通过采用双目识别检测技术在涉及曲面条件下对目标面的偏转角度进行测量,实现检测目标面的偏转角度是否符合用户的实际要求的目的。降低了曲面条件下的角度测量结果的误差,提高了测量结果的精度。能够使得圆形斑点中的多个扇形图像仅存在两种状态,以便于后续靶标的编号。采用本方法可以获得更多可使用的靶标及靶标号,便于在得到更多不同的算法方案,来满足不同测量场景的需求。对图形中的斑点进行噪声处理和筛选,提高了最终获得的靶标的精准度。
76.如图11所示,本技术实施例提供一种基于双目视觉角度测量的曲面偏转角度检测装置,装置包括接收模块101、定面标记模块102、基准图像获取模块103、基准图像检测模块104、偏转图像获取模块105、偏转图像检测模块106、靶标匹配模块107、空间坐标获取模块108、偏转角度计算模块109以及输出模块110。其中,定面标记模块102、基准图像获取模块103以及基准图像检测模块104都是用于基准双目图像之中;偏转图像获取模块105、偏转图像检测模块106以及靶标匹配模块107用应用于偏转双目图像之中。
77.接收模块101,接收用户设备发送的目标面偏转角度测量请求,目标面偏转角度用于表示目标面与基准面之间的偏转角度,目标面和基准面均为曲面。
78.定面标记模块102,使用预设数量的靶标对目标面进行定面标记,预设数量至少为3个,定面标记是指确定目标面上任一点所在的平面,靶标对应有唯一的靶标号。
79.基准图像获取模块103,获取目标面的基准双目图像,基准双目图像包括第一基准图像以及第二基准图像。
80.基准图像检测模块104,对基准双目图像进行靶标特征检测,得到基准面靶标列表;偏转图像获取模块105,响应于目标面的偏转动作,获取目标面的偏转双目图像,偏转双目图像包括第一偏转图像以及第二偏转图像,偏转图像检测模块106,对基准双目图像进行靶标特征检测,得到基准面靶标列表;靶标匹配模块107,获取基准面靶标列表与偏转面靶标列表中的相同靶标号的靶标,得到左右基准面匹配靶标;空间坐标获取模块108,获取左右基准面匹配靶标的空间坐标,空间坐标包括在第一基准图像中的第一基准空间坐标、在第二基准图像中的第二基准空间坐标、在第一偏转图像中的第一偏转空间坐标以及在第二偏转图像中的第二偏转空间坐标;偏转角度计算模块109,根据左右基准面匹配标靶的空间坐标,得到目标面偏转角度;输出模块110,向用户设备发送目标面偏转角度,以便于用户根据目标面偏转角度判断目标面与基准面之间的夹角是否在预定偏转角度范围内。
81.在一种可能的实施方式中,基准图像检测模块104,对第一基准图像与第二基准图像的灰度图进行斑点检测,获取符合预设斑点特征的斑点;对符合预设斑点特征的斑点进行降噪,获取符合预设降噪要求的斑点,以得到第一斑点群;对第一斑点群的轮廓进行椭圆拟合,得到第一椭圆轮廓,第一椭圆轮廓用于限定第一斑点群中各个斑点的轮廓为同一个椭圆;将第一斑点群中各个斑点的轮廓进行修正,得到第一圆形轮廓,第一圆形轮廓用于限定第一斑点群中各个斑点的轮廓为同一个圆形;对第一斑点群中任意一个圆形斑点进行编号,得到带有编号的靶标组。
82.在一种可能的实施方式中,基准图像检测模块104,获取圆形斑点的多个扇形图像,多个扇形图像由圆形斑点按照预设第一角度等分得到,圆形斑点以预设基准线进行预设第一角度等分,多个扇形图像中的任意一个扇形图像仅存在白色圆环或非白色圆环;对第一斑点群中任意一个圆形斑点进行编号。
83.在一种可能的实施方式中,基准图像检测模块104,获取符合预设斑点特征的斑点中任意一个斑点的轮廓点数量;构建第一斑点群,第一斑点群中任意一个斑点的轮廓点数
量大于或等于预设轮廓点数量阈值,轮廓点数量用于表示斑点的轮廓中数据量的大小。
84.在一种可能的实施方式中,基准图像检测模块104,获取第一斑点群中各个斑点的轮廓的外接矩形参数;调用getaffinetransform函数获取修正所需的仿射变换矩阵,仿射变换矩阵应用于warpaffine函数中,以得到第一圆形斑点群。
85.在一种可能的实施方式中,偏转角度计算模块109,获取基准面的近似平面,基准面的近似平面根据第一基准空间坐标以及第二基准空间坐标得到;获取偏转面的近似平面,偏转面的近似平面根据第一偏转空间坐标以及第二偏转空间坐标得到;获取偏转角度,偏转角度为基准面的近似平面与偏转面的近似平面的夹角。
86.在一种可能的实施方式中,基准图像检测模块104,获取符合面积过滤要求与圆度过滤要求的斑点。
87.需要说明的是:上述实施例提供的装置在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置和方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
88.请参见图12为本技术实施例提供了一种电子设备的结构示意图。如图12所示,所述电子设备1000可以包括:至少一个处理器1001,至少一个网络接口1004,用户接口1003,存储器1005,至少一个通信总线1002。
89.其中,通信总线1002用于实现这些组件之间的连接通信。
90.其中,用户接口1003可以包括显示屏(display)、摄像头(camera),可选用户接口1003还可以包括标准的有线接口、无线接口。
91.其中,网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。其中,处理器1001可以包括一个或者多个处理核心。处理器1001利用各种借口和线路连接整个服务器1000内的各个部分,通过运行或执行存储在存储器1005内的指令、程序、代码集或指令集,以及调用存储在存储器1005内的数据,执行服务器1000的各种功能和处理数据。可选的,处理器1001可以采用数字信号处理(digital signal processing,dsp)、现场可编程门阵列(field-programmable gate array,fpga)、可编程逻辑阵列(programmable logic array,pla)中的至少一种硬件形式来实现。处理器1001可集成中央处理器(central processing unit,cpu)、图像处理器(graphics processing unit,gpu)和调制解调器等中的一种或几种的组合。其中,cpu主要处理操作系统、用户界面和应用程序等;gpu用于负责显示屏所需要显示的内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器1001中,单独通过一块芯片进行实现。
92.其中,存储器1005可以包括随机存储器(random access memory,ram),也可以包括只读存储器(read-only memory)。可选的,该存储器1005包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器1005可用于存储指令、程序、代码、代码集或指令集。存储器1005可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现上述各个方法实施例的指令等;存储数据区可存储上面各个方法实施例中涉及到的数据等。存储器1005可选的还可以是至少一个位于远离前述处理
器1001的存储装置。如图12所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及一种基于双目视觉角度测量的曲面偏转角度检测方法及装置的程序。
93.在图12所示的电子设备1000中,用户接口1003主要用于为用户提供输入的接口,获取用户输入的数据;而处理器1001可以用于调用存储器1005中存储一种基于双目视觉角度测量的曲面偏转角度检测方法的应用程序,当由一个或多个处理器执行时,使得电子设备执行如上述实施例中一个或多个所述的方法。
94.一种计算机可读存储介质,所述计算机可读存储介质存储有指令。当由一个或多个处理器执行时,使得电子设备执行如上述实施例中一个或多个所述的方法。
95.本领域的技术人员可以清楚地了解到本技术的技术方案可借助软件和/或硬件来实现。本说明书中的“单元”和“模块”是指能够独立完成或与其他部件配合完成特定功能的软件和/或硬件,其中硬件例如可以是现场可编程门阵列(field-programmable gate array,fpga)、集成电路(integrated circuit,ic)等。
96.需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术并不受所描述的动作顺序的限制,因为依据本技术,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本技术所必须的。
97.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
98.在本技术所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些服务接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
99.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
100.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
101.所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储器包括:u盘、只读存储器(read-only memory,rom)、随机存取存储器
(random access memory,ram)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
102.本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通进程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(read-only memory,rom)、随机存取器(random access memory,ram)、磁盘或光盘等。
103.以上者,仅为本公开的示例性实施例,不能以此限定本公开的范围。即但凡依本公开教导所作的等效变化与修饰,皆仍属本公开涵盖的范围内。本领域技术人员在考虑说明书及实践这里的公开后,将容易想到本公开的其它实施方案。本技术旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未记载的本技术领域中的公知常识或惯用技术手段。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1