一种多边形工件定位方法、装置、设备及存储介质与流程
未命名
09-22
阅读:75
评论:0
1.本发明涉及图像处理技术领域,具体而言,涉及一种多边形工件定位方法、装置、设备及存储介质。
背景技术:
2.目前,广泛采用模板匹配方法从工件图像中检测定位工件。模板匹配方法是在源图像中滑动截取多个测试图像,计算各个测试图像与给定的目标图像,即模板图像的相似度,根据与模板图像相似度最高的测试图像来定位目标。但模板匹配方法对轻微的尺度和角度变化不敏感,工件定位精度不高。
技术实现要素:
3.本发明实施例的目的在于提供一种多边形工件定位方法、装置、设备及存储介质,用以实现提高多边形工件定位精度的技术效果。
4.第一方面,本发明实施例提供一种多边形工件定位方法,包括:
5.采用模板匹配算法对工件图像中的参照工件和待检工件进行定位,得到所述参照工件的定位位置和所述待检工件的初次定位位置;
6.根据所述参照工件的定位位置和所述待检工件的初次定位位置,对所述参照工件各条边的基准感兴趣区域图像进行位置修正,对应得到所述待检工件各条边的基准感兴趣区域图像;
7.采用直线检测算法对所述待检工件各条边的基准感兴趣区域图像进行直线检测,得到所述待检工件各条边的定位位置;
8.结合所述待检工件各条边的定位位置,得到所述待检工件的二次定位位置。
9.在上述实现过程中,通过采用模板匹配算法一次定位工件图像中的多边形工件,采用直线检测算法定位多边形工件的各条边,结合多边形工件各条边的定位位置二次定位多边形工件,能够提高多边形工件定位精度。
10.进一步地,在所述采用模板匹配算法对工件图像中的参照工件和待检工件进行定位,得到所述参照工件的定位位置和所述待检工件的初次定位位置之前,还包括:
11.获取原始工件图像,对所述原始工件图像进行图像预处理,得到所述工件图像;其中,所述图像预处理包括图像灰度化。
12.在上述实现过程中,通过先对原始工件图像进行图像预处理得到工件图像,再采用模板匹配算法一次定位工件图像中的多边形工件,能够保证后续快速准确地获取多边形工件的定位位置。
13.进一步地,所述采用模板匹配算法对工件图像中的参照工件和待检工件进行定位,得到所述参照工件的定位位置和所述待检工件的初次定位位置,具体包括:
14.创建参照工件区域图像,从所述参照工件区域图像中提取所述参照工件的特征信息,得到模板特征信息文件;
15.采用模板匹配算法,根据所述模板特征信息文件对所述参照工件进行定位,得到所述参照工件的定位位置;
16.采用模板匹配算法,根据所述模板特征信息文件对所述待检工件进行定位,得到所述待检工件的初次定位位置。
17.在上述实现过程中,通过从创建的多边形工件区域图像中提取多边形工件的所有特征信息,得到模板特征信息文件,采用模板匹配算法,根据模板特征信息文件对多边形工件进行一次定位,能够快速准确地提取多边形工件的所有特征信息进行一次定位。
18.进一步地,所述根据所述参照工件的定位位置和所述待检工件的初次定位位置,对所述参照工件各条边的基准感兴趣区域图像进行位置修正,对应得到所述待检工件各条边的基准感兴趣区域图像,具体包括:
19.在所述工件图像上遍历所述参照工件的每条边,创建所述参照工件当前边的基准感兴趣区域图像,获取所述参照工件当前边的基准感兴趣区域图像的定位位置;
20.结合所述参照工件的定位位置和所述待检工件的初次定位位置,修正所述参照工件当前边的基准感兴趣区域图像的定位位置,得到所述待检工件对应边的基准感兴趣区域图像的定位位置;
21.根据所述待检工件对应边的基准感兴趣区域图像的定位位置,得到所述待检工件对应边的基准感兴趣区域图像。
22.在上述实现过程中,通过根据参照工件的定位位置和待检工件的初次定位位置,修正参照工件各条边的基准感兴趣区域图像的定位位置,得到待检工件各条边的基准感兴趣区域图像,能够快速准确地获取待检工件各条边的基准感兴趣区域图像。
23.进一步地,所述参照工件的定位位置为(x,y,r);
24.其中,x为所述参照工件的中心点的图像x坐标;y为所述参照工件的中心点的图像y坐标;r为所述参照工件的图像旋转角度;
25.所述待检工件的初次定位位置为(x1,y1,r1);
26.其中,x1为所述待检工件的中心点的图像x坐标;y1为所述待检工件的中心点的图像y坐标;r1为所述待检工件的图像旋转角度;
27.所述参照工件当前边的基准感兴趣区域图像的定位位置为(roix,roiy,roiw,roih,roir);
28.其中,roix为所述参照工件当前边的基准感兴趣区域图像的中心点的图像x坐标;roiy为所述参照工件当前边的基准感兴趣区域图像的中心点的图像y坐标;roiw为所述参照工件当前边的基准感兴趣区域图像的图像宽度;roih为所述参照工件当前边的基准感兴趣区域的图像高度;roir为所述参照工件当前边的基准感兴趣区域的图像旋转角度;
29.所述待检工件对应边的基准感兴趣区域图像的定位位置为(roix1,roiy1,roiw,roih,roir1);
30.其中,roix1为所述待检工件对应边的基准感兴趣区域图像的中心点的图像x坐标,roix1=roix+(x
1-x);roiy1为所述待检工件对应边的基准感兴趣区域图像的中心点的图像y坐标,roiy1=roiy+(y
1-y);roir1为所述待检工件对应边的基准感兴趣区域的图像旋转角度,roir1=roir+(r
1-r)。
31.在上述实现过程中,通过根据参照工件的定位位置和待检工件的初次定位位置,
修正参照工件各条边的基准感兴趣区域图像的定位位置,得到待检工件各条边的基准感兴趣区域图像,能够快速准确地获取待检工件各条边的基准感兴趣区域图像。
32.进一步地,所述采用直线检测算法对所述待检工件各条边的基准感兴趣区域图像进行直线检测,得到所述待检工件各条边的定位位置,具体包括:
33.采用一维边缘检测算法,对所述待检工件各条边的基准感兴趣区域图像进行边缘采样,对应得到所述待检工件各条边的所有边缘点;
34.分别根据所述待检工件每条边的所有边缘点进行直线拟合,得到所述待检工件各条边的定位位置。
35.在上述实现过程中,通过采用一维边缘检测算法来提取待检工件各条边的所有边缘点,根据待检工件各条边的所有边缘点进行直线拟合来对应定位待检工件各条边,能够快速准确地获取待检工件各条边的定位位置,进一步提高多边形工件定位精度。
36.进一步地,所述结合所述待检工件各条边的定位位置,得到所述待检工件的二次定位位置,具体包括:
37.结合所述待检工件各条边的定位位置,确定所述待检工件各个顶点的位置和中心点的位置;
38.根据所述待检工件各个顶点的位置和中心点的位置,得到所述待检工件的二次定位位置。
39.在上述实现过程中,通过基于多边形各条边的几何关系,结合多边形工件各条边的定位位置二次定位多边形工件,能够快速准确地定位多边形工件,进一步提高多边形工件定位精度。
40.第二方面,本发明实施例提供一种多边形工件定位装置,包括:
41.模板匹配模块,用于采用模板匹配算法对工件图像中的参照工件和待检工件进行定位,得到所述参照工件的定位位置和所述待检工件的初次定位位置;
42.位置修正模块,用于根据所述参照工件的定位位置和所述待检工件的初次定位位置,对所述参照工件各条边的基准感兴趣区域图像进行位置修正,对应得到所述待检工件各条边的基准感兴趣区域图像;
43.直线检测模块,用于采用直线检测算法对所述待检工件各条边的基准感兴趣区域图像进行直线检测,得到所述待检工件各条边的定位位置;
44.工件定位模块,用于结合所述待检工件各条边的定位位置,得到所述待检工件的二次定位位置。
45.第三方面,本发明实施例提供一种电子设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序;所述存储器与所述处理器耦接,且所述处理器执行所述计算机程序时实现如上所述的多边形工件定位方法。
46.第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序;其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如上所述的多边形工件定位方法。
附图说明
47.为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使
用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
48.图1为本发明第一实施例提供的一种多边形工件定位方法的流程示意图;
49.图2为本发明第一实施例中示例的工件图像的示意图;
50.图3为本发明第一实施例中示例的多边形工件定位方法的数据流图;
51.图4为本发明第二实施例提供的一种多边形工件定位装置的结构示意图;
52.图5为本发明第三实施例提供的一种电子设备的结构示意图。
具体实施方式
53.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
54.应注意到:在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。同时,文中的步骤编号,仅为了方便本发明实施例的解释,不作为限定步骤执行先后顺序的作用。本发明实施例提供的方法可以由相关的终端设备执行,且下文均以处理器作为执行主体为例进行说明。
55.请参看图1,图1为本发明第一实施例提供的一种多边形工件定位方法的流程示意图。本发明第一实施例提供一种多边形工件定位方法,包括步骤s101~s104:
56.s101、采用模板匹配算法对工件图像中的参照工件和待检工件进行定位,得到参照工件的定位位置和待检工件的初次定位位置;
57.s102、根据参照工件的定位位置和待检工件的初次定位位置,对参照工件各条边的基准感兴趣区域图像进行位置修正,对应得到待检工件各条边的基准感兴趣区域图像;
58.s103、采用直线检测算法对待检工件各条边的基准感兴趣区域图像进行直线检测,得到待检工件各条边的定位位置;
59.s104、结合待检工件各条边的定位位置,得到待检工件的二次定位位置。
60.作为示例性地,使用图像采集设备拍摄生产线上的所有多边形工件,获取工件图像。从工件图像中选择一个多边形工件作为参照工件,其余多边形工件均作为待检工件,例如,可以选择尺度为预设尺度,角度为预设角度,比如0
°
的任一多边形工件作为参照工件。采用模板匹配算法对参照工件进行定位,得到参照工件的定位位置,以及采用模板匹配算法对任一待检工件进行定位,得到待检工件的初次定位位置。
61.获取用户在工件图像上创建的参照工件各条边的基准感兴趣区域图像,确定参照工件各条边的基准感兴趣区域图像的定位位置。根据参照工件的定位位置和待检工件的初次定位位置,修正参照工件各条边的基准感兴趣区域图像的定位位置,对应得到待检工件各条边的基准感兴趣区域图像的定位位置。根据待检工件各条边的基准感兴趣区域图像的定位位置,从工件图像中对应截取出待检工件各条边的基准感兴趣区域图像。
62.采用直线检测算法对待检工件各条边的基准感兴趣区域图像进行直线检测,得到待检工件各条边的定位位置。
63.直线检测算法是针对从工件图像中截取的待检工件各条边的基准感兴趣区域图像运行的,相比于模板匹配算法,不仅无需对模板图像进行特征提取,而且对尺度和角度变化较为敏感,可以达到很高的目标定位精度。
64.在得到待检工件各条边的定位位置后,结合待检工件各条边的定位位置,对待检工件整体进行定位,得到待检工件的二次定位位置。
65.本发明实施例通过采用模板匹配算法一次定位工件图像中的多边形工件,采用直线检测算法定位多边形工件的各条边,结合多边形工件各条边的定位位置二次定位多边形工件,能够提高多边形工件定位精度。
66.在可选的实施例当中,在所述采用模板匹配算法对工件图像中的参照工件和待检工件进行定位,得到参照工件的定位位置和待检工件的初次定位位置之前,还包括:获取原始工件图像,对原始工件图像进行图像预处理,得到工件图像;其中,图像预处理包括图像灰度化。
67.作为示例性地,使用图像采集设备拍摄生产线上的所有多边形工件,获取原始工件图像。为了后续可以快速准确地从图像中提取目标特征进行模板匹配,对原始工件图像进行图像灰度化等图像预处理,得到工件图像。
68.本发明实施例通过先对原始工件图像进行图像预处理得到工件图像,再采用模板匹配算法一次定位工件图像中的多边形工件,能够保证后续快速准确地获取多边形工件的定位位置。
69.在可选的实施例当中,所述采用模板匹配算法对工件图像中的参照工件和待检工件进行定位,得到参照工件的定位位置和待检工件的初次定位位置,具体包括:创建参照工件区域图像,从参照工件区域图像中提取参照工件的特征信息,得到模板特征信息文件;采用模板匹配算法,根据模板特征信息文件对参照工件进行定位,得到参照工件的定位位置;采用模板匹配算法,根据模板特征信息文件对待检工件进行定位,得到待检工件的初次定位位置。
70.作为示例性地,用户可以针对工件图像中的多边形工件,在工件图像上框选多边形工件,发起多边形工件区域图像创建请求。
71.在接收到用户针对参照工件发起的多边形工件区域图像创建请求时,响应用户针对参照工件发起的多边形工件区域图像创建请求,在工件图像中截取用户框选的参照工件,得到参照工件区域图像。
72.从参照工件区域图像中提取参照工件的特征信息,例如参照工件的灰度值等特征信息,将参照工件的所有特征信息存储在模板特征信息文件。采用模板匹配算法,根据模板特征信息文件对参照工件进行定位,得到参照工件的定位位置。
73.在对待检工件进行定位时,判断是否已创建模板得到模板特征信息文件,若没有模板特征信息文件,则创建模板生成模板特征信息文件,若有模板特征信息文件,则采用模板匹配算法,根据模板特征信息文件对待检工件进行定位,得到待检工件的初次定位位置。
74.其中,模板匹配算法的运行原理是在工件图像中滑动截取多个测试图像,根据各个测试图像中的所有特征信息和模板特征信息文件中多边形工件的所有特征信息,对应计算各个测试图像与给定的多边形工件区域图像,即模板图像的相似度,根据与模板图像相似度最高的测试图像来定位多边形工件。
75.本发明实施例通过从创建的多边形工件区域图像中提取多边形工件的所有特征信息,得到模板特征信息文件,采用模板匹配算法,根据模板特征信息文件对多边形工件进行一次定位,能够快速准确地提取多边形工件的所有特征信息进行一次定位。
76.在可选的实施例当中,所述根据参照工件的定位位置和待检工件的初次定位位置,对参照工件各条边的基准感兴趣区域图像进行位置修正,对应得到待检工件各条边的基准感兴趣区域图像,具体包括:在工件图像上遍历参照工件的每条边,创建参照工件当前边的基准感兴趣区域图像,获取参照工件当前边的基准感兴趣区域图像的定位位置;结合参照工件的定位位置和待检工件的初次定位位置,修正参照工件当前边的基准感兴趣区域图像的定位位置,得到待检工件对应边的基准感兴趣区域图像的定位位置;根据待检工件对应边的基准感兴趣区域图像的定位位置,得到待检工件对应边的基准感兴趣区域图像。
77.作为示例性地,在得到参照工件的定位位置后,用户可以确定参照工件在工件图像上的大致区域,遍历参照工件的每条边,在工件图像上框选参照工件的当前边,发起基准感兴趣区域图像创建请求。
78.在接收到用户针对参照工件当前边发起的基准感兴趣区域图像创建请求时,响应用户针对参照工件当前边发起的基准感兴趣区域图像创建请求,在工件图像中截取用户框选的参照工件的当前边,得到参照工件当前边的基准感兴趣区域图像,并获取参照工件当前边的基准感兴趣区域图像的定位位置。
79.结合参照工件的定位位置和待检工件的初次定位位置,修正参照工件当前边的基准感兴趣区域图像的定位位置,得到待检工件对应边的基准感兴趣区域图像的定位位置。根据待检工件对应边的基准感兴趣区域图像的定位位置,从工件图像中截取出待检工件对应边的基准感兴趣区域图像。在用户遍历完参照工件的每条边后,得到待检工件各条边的基准感兴趣区域图像。
80.本发明实施例通过根据参照工件的定位位置和待检工件的初次定位位置,修正参照工件各条边的基准感兴趣区域图像的定位位置,得到待检工件各条边的基准感兴趣区域图像,能够快速准确地获取待检工件各条边的基准感兴趣区域图像。
81.在可选的实施例当中,参照工件的定位位置为(x,y,r);其中,x为参照工件的中心点的图像x坐标;y为参照工件的中心点的图像y坐标;r为参照工件的图像旋转角度;待检工件的初次定位位置为(x1,y1,r1);其中,x1为待检工件的中心点的图像x坐标;y1为待检工件的中心点的图像y坐标;r1为待检工件的图像旋转角度;参照工件当前边的基准感兴趣区域图像的定位位置为(roix,roiy,roiw,roih,roir);其中,roix为参照工件当前边的基准感兴趣区域图像的中心点的图像x坐标;roiy为参照工件当前边的基准感兴趣区域图像的中心点的图像y坐标;roiw为参照工件当前边的基准感兴趣区域图像的图像宽度;roih为参照工件当前边的基准感兴趣区域的图像高度;roir为参照工件当前边的基准感兴趣区域的图像旋转角度;待检工件对应边的基准感兴趣区域图像的定位位置为(roix1,roiy1,roiw,roih,roir1);其中,roix1为待检工件对应边的基准感兴趣区域图像的中心点的图像x坐标,roix1=roix+(x
1-x);roiy1为待检工件对应边的基准感兴趣区域图像的中心点的图像y坐标,roiy1=roiy+(y
1-y);roir1为待检工件对应边的基准感兴趣区域的图像旋转角度,roir1=roir+(r
1-r)。
82.作为示例性地,假设获取的工件图像如图2所示,则得到:
83.参照工件的定位位置为(x,y,r);
84.其中,x为参照工件的中心点的图像x坐标;y为参照工件的中心点的图像y坐标;r为参照工件的图像旋转角度;
85.待检工件的初次定位位置为(x1,y1,r1);其中,x1为待检工件的中心点的图像x坐标;y1为待检工件的中心点的图像y坐标;r1为待检工件的图像旋转角度;
86.参照工件当前边的基准感兴趣区域图像的定位位置为(roix,roiy,roiw,roih,roir);
87.其中,roix为参照工件当前边的基准感兴趣区域图像的中心点的图像x坐标;roiy为参照工件当前边的基准感兴趣区域图像的中心点的图像y坐标;roiw为参照工件当前边的基准感兴趣区域图像的图像宽度;roih为参照工件当前边的基准感兴趣区域的图像高度;roir为参照工件当前边的基准感兴趣区域的图像旋转角度。
88.在得到参照工件的定位位置(x,y,r)和待检工件的初次定位位置(x1,y1,r1)后,根据参照工件的定位位置(x,y,r)和待检工件的初次定位位置(x1,y1,r1),对参照工件当前边的基准感兴趣区域图像的定位位置(roix,roiy,roiw,roih,roir)进行修正,得到待检工件对应边的基准感兴趣区域图像的定位位置(roix1,roiy1,roiw,roih,roir1),位置修正过程如下:
89.图像坐标修正包括:
90.roix1=roix+(x
1-x)(1);
91.roiy1=roiy+(y
1-y)(2);
92.线条角度修正包括:
93.roir1=roir+(r
1-r)(3)。
94.将(roix1,roiy1)绕(x1,y1)顺时针旋转(r
1-r)
°
,得到的图像坐标就是待检工件对应边的基准感兴趣区域图像的中心点的图像坐标。
95.本发明实施例通过根据参照工件的定位位置和待检工件的初次定位位置,修正参照工件各条边的基准感兴趣区域图像的定位位置,得到待检工件各条边的基准感兴趣区域图像,能够快速准确地获取待检工件各条边的基准感兴趣区域图像。
96.在可选的实施例当中,所述采用直线检测算法对待检工件各条边的基准感兴趣区域图像进行直线检测,得到待检工件各条边的定位位置,具体包括:采用一维边缘检测算法,对待检工件各条边的基准感兴趣区域图像进行边缘采样,对应得到待检工件各条边的所有边缘点;分别根据待检工件每条边的所有边缘点进行直线拟合,得到待检工件各条边的定位位置。
97.作为示例性地,一维边缘检测算法是一种图像处理算法。采用一维边缘检测算法,分别对待检工件每条边的基准感兴趣区域图像进行边缘采样,得到待检工件每条边的所有边缘点。
98.在得到待检工件每条边的所有边缘点后,分别根据待检工件每条边的所有边缘点进行直线拟合,得到待检工件各条边的定位位置,从而实现检测待检工件的各条边缘线。
99.本发明实施例通过采用一维边缘检测算法来提取待检工件各条边的所有边缘点,根据待检工件各条边的所有边缘点进行直线拟合来对应定位待检工件各条边,能够快速准确地获取待检工件各条边的定位位置,进一步提高多边形工件定位精度。
100.在可选的实施例当中,所述结合待检工件各条边的定位位置,得到待检工件的二次定位位置,具体包括:结合待检工件各条边的定位位置,确定待检工件各个顶点的位置和中心点的位置;根据待检工件各个顶点的位置和中心点的位置,得到待检工件的二次定位
位置。
101.作为示例性地,基于多边形各条边的几何关系,结合待检工件各条边的定位位置,计算待检工件各个顶点的位置和中心点的位置。根据待检工件各个顶点的位置和中心点的位置,对待检工件整体进行定位,得到待检工件的二次定位位置。
102.例如,假设待检工件为矩形工件,在得到待检工件上、下、左、右四条边的定位位置后,首先根据待检工件上、下、左、右四条边的定位位置,两两直线求交点,计算出待检工件左上、左下、右上、右下四个顶点的位置,接着根据待检工件左上、左下、右上、右下四个顶点的位置,连接左上顶点和右下顶点,连接左下顶点与右上顶点,对得到的两条直线求交点,计算出待检工件中心点的位置,最后根据待检工件四个顶点的位置和一个中心点的位置,对待检工件整体进行定位,得到待检工件的二次定位位置。
103.本发明实施例通过基于多边形各条边的几何关系,结合多边形工件各条边的定位位置二次定位多边形工件,能够快速准确地定位多边形工件,进一步提高多边形工件定位精度。
104.作为示例性地,为了更清楚地说明本发明第一实施例提供的多边形工件定位方法,应用所述多边形工件定位方法定位工件图像中的多边形工件,所述多边形工件定位方法的数据流图如图3所示。
105.请参看图4,图4为本发明第二实施例提供的一种多边形工件定位装置的流程示意图。本发明第二实施例提供一种多边形工件定位装置,包括:模板匹配模块201,用于采用模板匹配算法对工件图像中的参照工件和待检工件进行定位,得到参照工件的定位位置和待检工件的初次定位位置;位置修正模块202,用于根据参照工件的定位位置和待检工件的初次定位位置,对参照工件各条边的基准感兴趣区域图像进行位置修正,对应得到待检工件各条边的基准感兴趣区域图像;直线检测模块203,用于采用直线检测算法对待检工件各条边的基准感兴趣区域图像进行直线检测,得到待检工件各条边的定位位置;工件定位模块204,用于结合待检工件各条边的定位位置,得到待检工件的二次定位位置。
106.在可选的实施例当中,模板匹配模块201,还用于在所述采用模板匹配算法对工件图像中的参照工件和待检工件进行定位,得到参照工件的定位位置和待检工件的初次定位位置之前,获取原始工件图像,对原始工件图像进行图像预处理,得到工件图像;其中,图像预处理包括图像灰度化。
107.在可选的实施例当中,所述采用模板匹配算法对工件图像中的参照工件和待检工件进行定位,得到参照工件的定位位置和待检工件的初次定位位置,具体包括:创建参照工件区域图像,从参照工件区域图像中提取参照工件的特征信息,得到模板特征信息文件;采用模板匹配算法,根据模板特征信息文件对参照工件进行定位,得到参照工件的定位位置;采用模板匹配算法,根据模板特征信息文件对待检工件进行定位,得到待检工件的初次定位位置。
108.在可选的实施例当中,所述根据参照工件的定位位置和待检工件的初次定位位置,对参照工件各条边的基准感兴趣区域图像进行位置修正,对应得到待检工件各条边的基准感兴趣区域图像,具体包括:在工件图像上遍历参照工件的每条边,创建参照工件当前边的基准感兴趣区域图像,获取参照工件当前边的基准感兴趣区域图像的定位位置;结合参照工件的定位位置和待检工件的初次定位位置,修正参照工件当前边的基准感兴趣区域
图像的定位位置,得到待检工件对应边的基准感兴趣区域图像的定位位置;根据待检工件对应边的基准感兴趣区域图像的定位位置,得到待检工件对应边的基准感兴趣区域图像。
109.在可选的实施例当中,参照工件的定位位置为(x,y,r);其中,x为参照工件的中心点的图像x坐标;y为参照工件的中心点的图像y坐标;r为参照工件的图像旋转角度;待检工件的初次定位位置为(x1,y1,r1);其中,x1为待检工件的中心点的图像x坐标;y1为待检工件的中心点的图像y坐标;r1为待检工件的图像旋转角度;参照工件当前边的基准感兴趣区域图像的定位位置为(roix,roiy,roiw,roih,roir);其中,roix为参照工件当前边的基准感兴趣区域图像的中心点的图像x坐标;roiy为参照工件当前边的基准感兴趣区域图像的中心点的图像y坐标;roiw为参照工件当前边的基准感兴趣区域图像的图像宽度;roih为参照工件当前边的基准感兴趣区域的图像高度;roir为参照工件当前边的基准感兴趣区域的图像旋转角度;待检工件对应边的基准感兴趣区域图像的定位位置为(roix1,roiy1,roiw,roih,roir1);其中,roix1为待检工件对应边的基准感兴趣区域图像的中心点的图像x坐标,roix1=roix+(x
1-x);roiy1为待检工件对应边的基准感兴趣区域图像的中心点的图像y坐标,roiy1=roiy+(y
1-y);roir1为待检工件对应边的基准感兴趣区域的图像旋转角度,roir1=roir+(r
1-r)。
110.在可选的实施例当中,所述采用直线检测算法对待检工件各条边的基准感兴趣区域图像进行直线检测,得到待检工件各条边的定位位置,具体包括:采用一维边缘检测算法,对待检工件各条边的基准感兴趣区域图像进行边缘采样,对应得到待检工件各条边的所有边缘点;分别根据待检工件每条边的所有边缘点进行直线拟合,得到待检工件各条边的定位位置。
111.在可选的实施例当中,所述结合待检工件各条边的定位位置,得到待检工件的二次定位位置,具体包括:结合待检工件各条边的定位位置,确定待检工件各个顶点的位置和中心点的位置;根据待检工件各个顶点的位置和中心点的位置,得到待检工件的二次定位位置。
112.上述装置中各个模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
113.请参看图5,图5为本发明第三实施例提供的一种电子设备的结构示意图。本发明第三实施例提供一种电子设备30,包括处理器301、存储器302以及存储在存储器302中且被配置为由处理器301执行的计算机程序;存储器302与处理器301耦接,且处理器301执行计算机程序时实现如本发明第一实施例所述的多边形工件定位方法,且能达到与之相同的有益效果。
114.其中,处理器301通过总线303从存储器302读取计算机程序并执行所述计算机程序时可实现如本发明第一实施例所述的多边形工件定位方法包括的任意实施例的方法。
115.处理器301可以处理数字信号,可以包括各种计算结构。例如复杂指令集计算机结构、结构精简指令集计算机结构或者一种实行多种指令集组合的结构。在一些示例中,处理器301可以是微处理器。
116.存储器302可以用于存储由处理器301执行的指令或指令执行过程中相关的数据。这些指令和/或数据可以包括代码,用于实现本发明实施例描述的一个或多个模块的一些功能或者全部功能。本公开实施例的处理器301可以用于执行存储器302中的指令以实现如
本发明第一实施例所述的多边形工件定位方法。存储器302包括动态随机存取存储器、静态随机存取存储器、闪存、光存储器或其它本领域技术人员所熟知的存储器。
117.本发明第四实施例提供一种计算机可读存储介质,计算机可读存储介质包括存储的计算机程序;其中,在计算机程序运行时控制计算机可读存储介质所在设备执行如本发明第一实施例所述的多边形工件定位方法,且能达到与之相同的有益效果。
118.综上所述,本发明实施例提供一种多边形工件定位方法、装置、设备及存储介质,所述多边形工件定位方法包括:采用模板匹配算法对工件图像中的参照工件和待检工件进行定位,得到参照工件的定位位置和待检工件的初次定位位置;根据参照工件的定位位置和待检工件的初次定位位置,对参照工件各条边的基准感兴趣区域图像进行位置修正,对应得到待检工件各条边的基准感兴趣区域图像;采用直线检测算法对待检工件各条边的基准感兴趣区域图像进行直线检测,得到待检工件各条边的定位位置;结合待检工件各条边的定位位置,得到待检工件的二次定位位置。本发明实施例通过采用模板匹配算法一次定位工件图像中的多边形工件,采用直线检测算法定位多边形工件的各条边,结合多边形工件各条边的定位位置二次定位多边形工件,能够提高多边形工件定位精度。
119.在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
120.另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
121.所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
122.以上所述仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
技术特征:
1.一种多边形工件定位方法,其特征在于,包括:采用模板匹配算法对工件图像中的参照工件和待检工件进行定位,得到所述参照工件的定位位置和所述待检工件的初次定位位置;根据所述参照工件的定位位置和所述待检工件的初次定位位置,对所述参照工件各条边的基准感兴趣区域图像进行位置修正,对应得到所述待检工件各条边的基准感兴趣区域图像;采用直线检测算法对所述待检工件各条边的基准感兴趣区域图像进行直线检测,得到所述待检工件各条边的定位位置;结合所述待检工件各条边的定位位置,得到所述待检工件的二次定位位置。2.根据权利要求1所述的多边形工件定位方法,其特征在于,在所述采用模板匹配算法对工件图像中的参照工件和待检工件进行定位,得到所述参照工件的定位位置和所述待检工件的初次定位位置之前,还包括:获取原始工件图像,对所述原始工件图像进行图像预处理,得到所述工件图像;其中,所述图像预处理包括图像灰度化。3.根据权利要求1所述的多边形工件定位方法,其特征在于,所述采用模板匹配算法对工件图像中的参照工件和待检工件进行定位,得到所述参照工件的定位位置和所述待检工件的初次定位位置,具体包括:创建参照工件区域图像,从所述参照工件区域图像中提取所述参照工件的特征信息,得到模板特征信息文件;采用模板匹配算法,根据所述模板特征信息文件对所述参照工件进行定位,得到所述参照工件的定位位置;采用模板匹配算法,根据所述模板特征信息文件对所述待检工件进行定位,得到所述待检工件的初次定位位置。4.根据权利要求1所述的多边形工件定位方法,其特征在于,所述根据所述参照工件的定位位置和所述待检工件的初次定位位置,对所述参照工件各条边的基准感兴趣区域图像进行位置修正,对应得到所述待检工件各条边的基准感兴趣区域图像,具体包括:在所述工件图像上遍历所述参照工件的每条边,创建所述参照工件当前边的基准感兴趣区域图像,获取所述参照工件当前边的基准感兴趣区域图像的定位位置;结合所述参照工件的定位位置和所述待检工件的初次定位位置,修正所述参照工件当前边的基准感兴趣区域图像的定位位置,得到所述待检工件对应边的基准感兴趣区域图像的定位位置;根据所述待检工件对应边的基准感兴趣区域图像的定位位置,得到所述待检工件对应边的基准感兴趣区域图像。5.根据权利要求4所述的多边形工件定位方法,其特征在于,所述参照工件的定位位置为(x,y,r);其中,x为所述参照工件的中心点的图像x坐标;y为所述参照工件的中心点的图像y坐标;r为所述参照工件的图像旋转角度;所述待检工件的初次定位位置为(x1,y1,r1);其中,x1为所述待检工件的中心点的图像x坐标;y1为所述待检工件的中心点的图像y坐
标;r1为所述待检工件的图像旋转角度;所述参照工件当前边的基准感兴趣区域图像的定位位置为(roix,roiy,roiw,roih,roir);其中,roix为所述参照工件当前边的基准感兴趣区域图像的中心点的图像x坐标;roiy为所述参照工件当前边的基准感兴趣区域图像的中心点的图像y坐标;roiw为所述参照工件当前边的基准感兴趣区域图像的图像宽度;roih为所述参照工件当前边的基准感兴趣区域的图像高度;roir为所述参照工件当前边的基准感兴趣区域的图像旋转角度;所述待检工件对应边的基准感兴趣区域图像的定位位置为(roix1,roiy1,roiw,roih,roir1);其中,roix1为所述待检工件对应边的基准感兴趣区域图像的中心点的图像x坐标,roix1=roix+(x
1-x);roiy1为所述待检工件对应边的基准感兴趣区域图像的中心点的图像y坐标,roiy1=roiy+(y
1-y);roir1为所述待检工件对应边的基准感兴趣区域的图像旋转角度,roir1=roir+(r
1-r)。6.根据权利要求1所述的多边形工件定位方法,其特征在于,所述采用直线检测算法对所述待检工件各条边的基准感兴趣区域图像进行直线检测,得到所述待检工件各条边的定位位置,具体包括:采用一维边缘检测算法,对所述待检工件各条边的基准感兴趣区域图像进行边缘采样,对应得到所述待检工件各条边的所有边缘点;分别根据所述待检工件每条边的所有边缘点进行直线拟合,得到所述待检工件各条边的定位位置。7.根据权利要求1所述的多边形工件定位方法,其特征在于,所述结合所述待检工件各条边的定位位置,得到所述待检工件的二次定位位置,具体包括:结合所述待检工件各条边的定位位置,确定所述待检工件各个顶点的位置和中心点的位置;根据所述待检工件各个顶点的位置和中心点的位置,得到所述待检工件的二次定位位置。8.一种多边形工件定位装置,其特征在于,包括:模板匹配模块,用于采用模板匹配算法对工件图像中的参照工件和待检工件进行定位,得到所述参照工件的定位位置和所述待检工件的初次定位位置;位置修正模块,用于根据所述参照工件的定位位置和所述待检工件的初次定位位置,对所述参照工件各条边的基准感兴趣区域图像进行位置修正,对应得到所述待检工件各条边的基准感兴趣区域图像;直线检测模块,用于采用直线检测算法对所述待检工件各条边的基准感兴趣区域图像进行直线检测,得到所述待检工件各条边的定位位置;工件定位模块,用于结合所述待检工件各条边的定位位置,得到所述待检工件的二次定位位置。9.一种电子设备,其特征在于,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序;所述存储器与所述处理器耦接,且所述处理器执行所述计算机程序时实现根据权利要求1至7任一项所述的多边形工件定位方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序;其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行根据权利要求1至7任一项所述的多边形工件定位方法。
技术总结
本发明实施例提供一种多边形工件定位方法、装置、设备及存储介质,涉及图像处理技术领域。所述多边形工件定位方法包括:采用模板匹配算法对工件图像中的参照工件和待检工件进行定位,得到所述参照工件的定位位置和所述待检工件的初次定位位置;根据所述参照工件的定位位置和所述待检工件的初次定位位置,对所述参照工件各条边的基准感兴趣区域图像进行位置修正,对应得到所述待检工件各条边的基准感兴趣区域图像;采用直线检测算法对所述待检工件各条边的基准感兴趣区域图像进行直线检测,得到所述待检工件各条边的定位位置;结合所述待检工件各条边的定位位置,得到所述待检工件的二次定位位置。本发明实施例能够提高多边形工件定位精度。工件定位精度。工件定位精度。
技术研发人员:林国森
受保护的技术使用者:创新奇智(南京)科技有限公司
技术研发日:2023.06.30
技术公布日:2023/9/20
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
航空商城 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/