一种视觉标志点提取方法、装置、设备及存储介质与流程

未命名 08-15 阅读:106 评论:0


1.本发明涉及图像处理技术领域,具体而言,涉及一种视觉标志点提取方法、装置、设备及存储介质。


背景技术:

2.圆形特征广泛应用于机器视觉领域,基于圆孔靶标的摄像机标定、基于圆形特征的机器人自动引导、物体空间位置和姿态测量、视觉导航以及目标对象识别等。为方便圆形特征的寻找,通常采用在物体表面粘贴视觉标志点的方法,这种方法操作方便,计算量少,且更为准确可靠。
3.提取精度与速度是标志点提取中的两个重要问题。众多学者围绕着这两个主要问题展开了研究,提出了大量的提取方法。目前常用方法是在获取图像数据后,再基于cpu、gpu等对提取算法进行改进、优化,对精度、速度都有一定的提升,但基于此种方式,总的耗时等于获取图像数据的时间与提取标志点算法的耗时之和,对速度的提升存在瓶颈,提取效率较低。


技术实现要素:

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.图7为本技术实施例提供的一种处理设备的示意图。
47.图标:601-接收模块、602-获取模块、603-计算模块、604-存储模块、701-处理器、702-存储介质。
具体实施方式
48.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。
49.因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本技术保护的范围。
50.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一
个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
51.此外,若出现术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
52.需要说明的是,在不冲突的情况下,本发明的实施例中的特征可以相互结合。
53.为了提高标志点提取效率,本技术实施例提供了一种视觉标志点提取方法、装置、设备及存储介质。
54.如下通过具体示例对本技术实施例提供的一种视觉标志点提取方法进行解释说明。图1为本技术实施例提供的一种视觉标志点提取方法的流程示意图。该方法的执行主体为处理设备,该处理设备可以为具有计算处理功能的设备,例如,集成有fpga(现场可编程逻辑门阵列,field programmable gate array)的设备。如图1所示,该方法包括:
55.s101、依次接收针对目标物的图像中的多组像素数据。
56.在检测提取目标物的图像中的视觉标志点之前,需要输入图像,具体为:输入图像的像素数据。
57.示例地,一组像素数据可以为一行像素数据,也可以为一列像素数据;可以为多行像素数据,也可以为多列像素数据。像素数据包括:像素坐标。
58.s102、针对接收到的每组像素数据,从每组像素数据中获取每组像素数据中属于至少一个连通域轮廓的像素点。
59.在提取标志点的过程中,为提高提取效率,每接收到一组像素数据,就获取一组像素数据中属于至少一个连通域轮廓的像素点。
60.示例地,每获取一行像素数据,就确定这一行中的属于至少一个连通域轮廓的像素点。通过依次确定多组像素数据中属于同一个连通域轮廓的像素点,可以确定该连通域的轮廓。
61.s103、若至少一个连通域轮廓中目标连通域轮廓的像素点满足预设结束条件,则根据目标连通域轮廓的所有像素点,计算目标连通域轮廓对应视觉标志点的坐标位置。
62.若至少一个连通域轮廓中目标连通域轮廓的像素点满足预设结束条件,则表明该目标连通域轮廓中的所有像素点已经获取完毕。通过目标连通域轮廓中的所有像素点可以确定目标连通域,目标连通域代表着一个视觉标志点。
63.根据目标连通域轮廓的所有像素点,计算目标连通域轮廓对应视觉标志点的坐标位置。提取完成目标连通域轮廓对应视觉标志点。其中,视觉标志点的坐标位置为视觉标志点的中心坐标位置。
64.s104、继续接收针对目标物的图像中的其它像素数据,直至计算出其它视觉标志点的坐标位置。
65.循环步骤s101-步骤s103,继续接收针对目标物的图像中的其它像素数据,只要存在连通域轮廓的像素点满足预设结束条件,就根据该连通域轮廓的所有像素点,计算该连通域轮廓对应视觉标志点的坐标位置。直至计算出目标物的图像中的所有视觉标志点的坐标位置。
66.通过边输入目标物的图像的像素数据,边获取像素数据中的连通域轮廓,进而计算该连通域轮廓对应视觉标志点的坐标位置。使得在图像输入的过程中,也在进行提取视觉标志点,当图像输入完成,视觉标志点也提取完成。不需要再等到整张图像所有像素数据
输入完成后,再进行视觉标志点的提取,缩短了标志点的提取时间,提高了标志点的提取效率,使得基于标志点的视觉识别更加及时、精准。
67.示例地,在视觉标志点提取过程中,可以设置延时处理,具体由fpga的延时模块进行。即,输入目标物的图像的像素数据,与,获取像素数据中的连通域轮廓之间,存在延时。例如,当前正在接收第七组像素数据,当前正在获取像素数据中的连通域轮廓的是第六组像素数据,存在一组延时。此处的延时并不限制,可根据实际需求设置。
68.综上,在本实施例中,依次接收针对目标物的图像中的多组像素数据;针对接收到的每组像素数据,从每组像素数据中获取每组像素数据中属于至少一个连通域轮廓的像素点;若至少一个连通域轮廓中目标连通域轮廓的像素点满足预设结束条件,则根据目标连通域轮廓的所有像素点,计算目标连通域轮廓对应视觉标志点的坐标位置;继续接收针对目标物的图像中的其它像素数据,直至计算出其它视觉标志点的坐标位置。从而,缩短了标志点的提取时间,提高了标志点的提取效率,使得基于标志点的视觉识别更加及时、精准。
69.在上述图1对应的实施例的基础上,本技术还提供了一种获取连通域轮廓的像素点的方法。图2为本技术实施例提供的一种获取连通域轮廓的像素点的方法的流程示意图。如图2所示,在s102中的从每组像素数据中获取每组像素数据中属于至少一个连通域轮廓的像素点,包括:
70.s201、对每组像素数据进行边缘轮廓检测,得到每组像素数据中的轮廓像素点。
71.对每组像素数据进行边缘轮廓检测,先检测得到每组像素数据中的所有轮廓像素点。
72.示例地,可以采用xilinx的xc7a200t,以5阶sobel边缘轮廓检测模块进行边缘轮廓检测。
73.s202、根据每组像素数据之前的一组像素数据中的轮廓像素点,和每组像素数据中的轮廓像素点,进行连通域分类,得到至少一个连通域轮廓的像素点。
74.每组像素数据中的轮廓像素点,可能属于同一连通域轮廓,也可能属于多个连通域轮廓。得到每组像素数据中的轮廓像素点,需要对轮廓像素点分类。
75.示例地,以一组像素数据为一行像素数据为例。在待处理轮廓像素点的同一行前一列像素位置存在轮廓像素点,则确定待处理轮廓像素点与上一行该轮廓像素点为同一连通域轮廓的像素点。
76.若待处理轮廓像素点的同一行前一列像素位置不存在轮廓像素点,若待处理轮廓像素点的上一行的前一列像素位置、上一行的像素位置、上一行的后一列像素位置中的至少一个位置存在轮廓像素点,则确定待处理轮廓像素点与上一行该轮廓像素点为同一连通域轮廓的像素点。
77.若待处理轮廓像素点的同一行前一列像素位置、上一行的前一列像素位置、上一行的像素位置、上一行的后一列像素位置都不存在轮廓像素点,说明待处理轮廓像素点并不属于已经处理过的任何一个连通域,将待处理轮廓像素点分类为新的连通域轮廓的像素点。
78.需要说明的是,处理第一行第一个轮廓像素点时,不需要与其他位置比对,将第一行第一个轮廓像素点直接作为一类连通域轮廓的像素点。
79.综上,在本实施例中,对每组像素数据进行边缘轮廓检测,得到每组像素数据中的
轮廓像素点;根据每组像素数据之前的一组像素数据中的轮廓像素点,和每组像素数据中的轮廓像素点,进行连通域分类,得到至少一个连通域轮廓的像素点。从而,精准地获取了属于至少一个连通域轮廓的像素点。
80.在上述图2对应的实施例的基础上,本技术还提供了一种确定轮廓像素点的方法。图3为本技术实施例提供的一种确定轮廓像素点的方法的流程示意图。如图3所示,在s201中的对每组像素数据进行边缘轮廓检测,得到每组像素数据中的轮廓像素点,包括:
81.s301、计算每组像素数据中每个像素点相对于相邻像素点的变化梯度。
82.像素点的变化梯度表征着图像像素的变化率,包括x轴的变化、y轴的变化。像素点的变化梯度的计算方式如下公式(1)所示:
[0083][0084]
其中,g表示像素点的变化梯度,g
x
表示x轴的变化,gy表示y轴的变化。
[0085]
s302、确定每组像素数据中变化梯度大于或等于预设阈值的像素点为每组像素数据中的轮廓像素点。
[0086]
像素点的变化梯度越大,说明该像素点越可能是轮廓像素点。示例地,预设阈值可以为1600。
[0087]
每组像素数据中变化梯度小于预设阈值的像素点为每组像素数据中的非轮廓像素点。
[0088]
示例地,为便于数据处理,可将轮廓像素点标记为1,将非轮廓像素点标记为0。可以采用two-pass连通域标记子模块进行轮廓像素点标记。
[0089]
综上,在本实施例中,计算每组像素数据中每个像素点相对于相邻像素点的变化梯度;确定每组像素数据中变化梯度大于或等于预设阈值的像素点为每组像素数据中的轮廓像素点。从而,精准地确定了每组像素数据中的轮廓像素点。
[0090]
在上述图1对应的实施例的基础上,本技术还提供了一种存储轮廓像素点的方法。图4为本技术实施例提供的一种存储轮廓像素点的方法的流程示意图。如图4所示,在s103中的若至少一个连通域轮廓中目标连通域轮廓的像素点满足预设结束条件,则根据目标连通域轮廓的所有像素点,计算目标连通域轮廓对应视觉标志点的坐标位置之前,方法还包括:
[0091]
s401、若获取到连续多组像素数据中属于至少一个连通域轮廓的像素点,则将属于至少一个连通域轮廓的已获取像素点分别存储至至少一个存储区域。
[0092]
其中,每一个连通域都对应一个存储区域。存储模块会预设有多个存储区域,以满足存储需求。示例地,根据获取连通域轮廓的先后顺序,确定存储区域。例如,第一个获取到的连通域轮廓的像素点存储至第一个存储区域,第二个获取到的连通域轮廓的像素点存储至第二存储区域。
[0093]
在获取到一组像素数据中属于同一连通域轮廓的像素点时,就将该组像素数据中属于同一连通域轮廓的像素点的像素数据存储至该连通域的存储区域。
[0094]
示例地,在存储过程中,可以设置延时处理。即,输入目标物的图像的像素数据,与,获取像素数据中的连通域轮廓,与,存储已获取像素点之间,存在延时。例如,当前正在接收第七组像素数据,当前正在获取像素数据中的连通域轮廓的是第六组像素数据,当前
正在存储第五组像素数据,存在一组延时。此处的延时并不限制,可根据实际需求设置。
[0095]
需要说明的是,存储像素点时,所存储的像素数据包括:像素坐标数据、像素梯度数据。
[0096]
需要说明的是,分别存储的动作,具体由fpga的分类存储模块进行。示例地,分类存储模块可以为ddr(double data rate,双倍率)内存。
[0097]
s402、若目标物的图像中目标连通域轮廓的像素点已获取完毕,则确定目标连通域轮廓的像素点满足预设结束条件。
[0098]
目标连通域轮廓的像素点已获取完毕,则表明后续获取的像素数据不再会有目标连通域轮廓的像素点,则确定目标连通域轮廓的像素点满足预设结束条件。
[0099]
目标连通域轮廓的像素点已获取完毕时,目标连通域轮廓的像素点全部存储至目标连通域的目标存储区域。
[0100]
进一步地,在s103中的根据目标连通域轮廓的所有像素点,计算目标连通域轮廓对应视觉标志点的坐标位置,包括:
[0101]
s403、从目标连通域轮廓对应的目标存储区域中读取目标连通域轮廓的所有像素点。
[0102]
每当目标连通域轮廓的像素点已获取完毕,则从目标连通域轮廓对应的目标存储区域中读取目标连通域轮廓的所有像素点,用于计算视觉标志点的坐标位置。
[0103]
s404、根据读取到的目标连通域轮廓的所有像素点,计算目标连通域轮廓对应视觉标志点的坐标位置。
[0104]
即,每当一个连通域轮廓的像素点已获取完毕,就从存储区域获取目标连通域轮廓的所有像素点,并计算目标连通域轮廓对应视觉标志点的坐标位置。无需等到图像中所有像素点都被获取,再逐一获取、计算多个视觉标志点的坐标位置。缩短了标志点提取时间,提高了标志点提取效率。
[0105]
综上,在本实施例中,若获取到连续多组像素数据中属于至少一个连通域轮廓的像素点,则将属于至少一个连通域轮廓的已获取像素点分别存储至至少一个存储区域;若目标物的图像中目标连通域轮廓的像素点已获取完毕,则确定目标连通域轮廓的像素点满足预设结束条件;从目标连通域轮廓对应的目标存储区域中读取目标连通域轮廓的所有像素点;根据读取到的目标连通域轮廓的所有像素点,计算目标连通域轮廓对应视觉标志点的坐标位置。从而,缩短了标志点提取时间,提高了标志点提取效率。
[0106]
进一步地,在本技术另一实施例中,在s402中的若目标物的图像中目标连通域轮廓的像素点已获取完毕,则确定目标连通域轮廓的像素点满足预设结束条件之前,该方法还包括:
[0107]
若连续至少一组像素数据中未获取到目标连通域轮廓的像素点,则确定目标物的图像中的目标连通域轮廓的像素点已获取完毕。
[0108]
示例地,以一行像素数据为例,当前行的像素数据中未获取到目标连通域轮廓的像素点,则说明目标连通域轮廓在上一行已经结束,确定目标物的图像中的目标连通域轮廓的像素点已获取完毕。
[0109]
综上,在本实施例中,若连续至少一组像素数据中未获取到目标连通域轮廓的像素点,则确定目标物的图像中的目标连通域轮廓的像素点已获取完毕。从而,精准地确定了
预设结束条件。
[0110]
在上述图4对应的实施例的基础上,本技术还提供了一种标签存储轮廓像素点的方法。图5为本技术实施例提供的一种标签存储轮廓像素点的方法的流程示意图。如图5所示,在s401中的将属于至少一个连通域轮廓的已获取像素点分别存储至至少一个存储区域,包括:
[0111]
s501、为属于每个连通域轮廓的已获取像素点配置同一个连通域标签。
[0112]
通过连通域标签便于存储属于同一个连通域轮廓的已获取像素点。
[0113]
在另一实施例中,也可以在获取每一组像素数据中属于同一连通域轮廓的像素点时,就将为属于每个连通域轮廓的已获取像素点配置同一个连通域标签。便于以连通域标签进行连通域分类。
[0114]
需要说明的是,配置标签的动作,具体由fpga的标记模块进行。
[0115]
s502、将具有同一个连通域标签的像素点存储至同一个连通域标签对应的一个存储区域中。
[0116]
示例地,可以根据标签,采用预设规则进行存储。以(lable-1)*2^13作为每个标签的起始地址依次存储:标签1的第一个像素数据存储于地址0~7,第二个像素数据存储于8~15,
……
;标签2的第一个像素数据存储于地址8192~8199,第二个像素数据存储于8200~8207,
……
,以此类推。
[0117]
综上,在本实施例中,为属于每个连通域轮廓的已获取像素点配置同一个连通域标签;将具有同一个连通域标签的像素点存储至同一个连通域标签对应的一个存储区域中。从而,采用标签进行存储,使得存储更加精准。
[0118]
进一步地,在上述实施例的基础上,在s103中的根据目标连通域轮廓的所有像素点,计算目标连通域轮廓对应视觉标志点的坐标位置,包括:
[0119]
根据目标连通域轮廓的所有像素点,进行曲线拟合运算,得到目标连通域轮廓对应视觉标志点的坐标位置。
[0120]
确定目标连通域轮廓的所有像素点之后,就可以确定目标连通域轮廓。进一步地进行曲线拟合运算,得到目标连通域轮廓对应视觉标志点的坐标位置。
[0121]
示例地,曲线拟合运算的方式可以为:将所有像素点横坐标的算术平均数确定为视觉标志点的坐标位置的横坐标,将所有像素点纵坐标的算术平均数确定为视觉标志点的坐标位置的纵坐标。需要说明的是,所有的视觉标志点的坐标位置的计算方式都在本技术的保护范围内。
[0122]
需要说明的是,曲线拟合运算的动作,具体由fpga的曲线拟合模块进行。
[0123]
在本技术中,fpga中具有多个曲线拟合模块,多个曲线拟合模块可同时用于曲线拟合运算。例如,曲线拟合模块包含16个曲线拟合子模块,每个曲线拟合子模块可独立运行,当接收到延时模块的目标连通域轮廓的像素点满足预设结束条件的指令后,多个曲线拟合子模块中处于空闲的模块从分类存储模块中读取此标连通域轮廓的像素点进行相应的曲线拟合运算。
[0124]
示例地,若多个连通域轮廓中目标连通域轮廓的像素点满足预设结束条件,即,多个目标连通域轮廓中的所有像素点已经获取完毕。可采用多个曲线拟合模块,同时计算目标连通域轮廓对应视觉标志点的坐标位置。若一个曲线拟合模块正在计算一个目标连通域
轮廓对应视觉标志点的坐标位置,另一个目标连通域轮廓中的所有像素点获取完毕,则可以采用另一个曲线拟合模块计算另一个目标连通域轮廓对应视觉标志点的坐标位置,不用等待,即可完成视觉标志点的提取,提高了视觉标志点的提取效率。
[0125]
综上,在本实施例中,根据目标连通域轮廓的所有像素点,进行曲线拟合运算,得到目标连通域轮廓对应视觉标志点的坐标位置。从而,精准地计算得到视觉标志点的坐标位置。
[0126]
下述对用以执行的本技术所提供的一种视觉标志点提取装置、设备及存储介质等进行说明,其具体的实现过程以及技术效果参见上述,下述不再赘述。
[0127]
图6为本技术实施例提供的一种视觉标志点提取装置的示意图,如图6所示,该装置包括:
[0128]
接收模块601,用于依次接收针对目标物的图像中的多组像素数据。
[0129]
获取模块602,用于针对接收到的每组像素数据,从每组像素数据中获取每组像素数据中属于至少一个连通域轮廓的像素点。
[0130]
计算模块603,用于若至少一个连通域轮廓中目标连通域轮廓的像素点满足预设结束条件,则根据目标连通域轮廓的所有像素点,计算目标连通域轮廓对应视觉标志点的坐标位置。
[0131]
接收模块601,还用于继续接收针对目标物的图像中的其它像素数据,直至计算出其它视觉标志点的坐标位置。
[0132]
进一步地,获取模块602,具体用于对每组像素数据进行边缘轮廓检测,得到每组像素数据中的轮廓像素点;根据每组像素数据之前的一组像素数据中的轮廓像素点,和每组像素数据中的轮廓像素点,进行连通域分类,得到至少一个连通域轮廓的像素点。
[0133]
进一步地,获取模块602,具体还用于计算每组像素数据中每个像素点相对于相邻像素点的变化梯度;确定每组像素数据中变化梯度大于或等于预设阈值的像素点为每组像素数据中的轮廓像素点。
[0134]
进一步地,存储模块604,用于若获取到连续多组像素数据中属于至少一个连通域轮廓的像素点,则将属于至少一个连通域轮廓的已获取像素点分别存储至至少一个存储区域;若目标物的图像中目标连通域轮廓的像素点已获取完毕,则确定目标连通域轮廓的像素点满足预设结束条件。
[0135]
进一步地,计算模块603,具体用于从目标连通域轮廓对应的目标存储区域中读取目标连通域轮廓的所有像素点;根据读取到的目标连通域轮廓的所有像素点,计算目标连通域轮廓对应视觉标志点的坐标位置。
[0136]
进一步地,存储模块604,还用于若连续至少一组像素数据中未获取到目标连通域轮廓的像素点,则确定目标物的图像中的目标连通域轮廓的像素点已获取完毕。
[0137]
进一步地,计算模块603,具体还用于为属于每个连通域轮廓的已获取像素点配置同一个连通域标签;将具有同一个连通域标签的像素点存储至同一个连通域标签对应的一个存储区域中。
[0138]
进一步地,计算模块603,具体还用于根据目标连通域轮廓的所有像素点,进行曲线拟合运算,得到目标连通域轮廓对应视觉标志点的坐标位置。
[0139]
图7为本技术实施例提供的一种处理设备的示意图,该处理设备可以是具备计算
处理功能的设备。
[0140]
该处理设备包括:处理器701、存储介质702。处理器701和存储介质702通过总线连接。
[0141]
存储介质702用于存储程序,处理器701调用存储介质702存储的程序,以执行上述方法实施例。具体实现方式和技术效果类似,这里不再赘述。
[0142]
可选地,本发明还提供一种存储介质,包括程序,该程序在被处理器执行时用于执行上述方法实施例。在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0143]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0144]
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0145]
上述以软件功能单元的形式实现的集成的单元,可以存储在一个存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(英文:read-only memory,简称:rom)、随机存取存储器(英文:random access memory,简称:ram)、磁碟或者光盘等各种可以存储程序代码的介质。

技术特征:
1.一种视觉标志点提取方法,其特征在于,所述方法包括:依次接收针对目标物的图像中的多组像素数据;针对接收到的每组像素数据,从所述每组像素数据中获取所述每组像素数据中属于至少一个连通域轮廓的像素点;若所述至少一个连通域轮廓中目标连通域轮廓的像素点满足预设结束条件,则根据所述目标连通域轮廓的所有像素点,计算所述目标连通域轮廓对应视觉标志点的坐标位置;继续接收针对所述目标物的图像中的其它像素数据,直至计算出其它视觉标志点的坐标位置。2.根据权利要求1所述的方法,其特征在于,所述从所述每组像素数据中获取所述每组像素数据中属于至少一个连通域轮廓的像素点,包括:对所述每组像素数据进行边缘轮廓检测,得到所述每组像素数据中的轮廓像素点;根据所述每组像素数据之前的一组像素数据中的轮廓像素点,和所述每组像素数据中的轮廓像素点,进行连通域分类,得到所述至少一个连通域轮廓的像素点。3.根据权利要求2所述的方法,其特征在于,所述对所述每组像素数据进行边缘轮廓检测,得到所述每组像素数据中的轮廓像素点,包括:计算所述每组像素数据中每个像素点相对于相邻像素点的变化梯度;确定所述每组像素数据中变化梯度大于或等于预设阈值的像素点为所述每组像素数据中的轮廓像素点。4.根据权利要求1所述的方法,其特征在于,在所述若所述至少一个连通域轮廓中目标连通域轮廓的像素点满足预设结束条件,则根据所述目标连通域轮廓的所有像素点,计算所述目标连通域轮廓对应视觉标志点的坐标位置之前,所述方法还包括:若获取到连续多组像素数据中属于所述至少一个连通域轮廓的像素点,则将属于所述至少一个连通域轮廓的已获取像素点分别存储至至少一个存储区域;若所述目标物的图像中所述目标连通域轮廓的像素点已获取完毕,则确定所述目标连通域轮廓的像素点满足所述预设结束条件;所述根据所述目标连通域轮廓的所有像素点,计算所述目标连通域轮廓对应视觉标志点的坐标位置,包括:从所述目标连通域轮廓对应的目标存储区域中读取所述目标连通域轮廓的所有像素点;根据读取到的所述目标连通域轮廓的所有像素点,计算所述目标连通域轮廓对应视觉标志点的坐标位置。5.根据权利要求4所述的方法,其特征在于,所述若所述目标物的图像中所述目标连通域轮廓的像素点已获取完毕,则确定所述目标连通域轮廓的像素点满足所述预设结束条件之前,所述方法还包括:若连续至少一组像素数据中未获取到所述目标连通域轮廓的像素点,则确定所述目标物的图像中的所述目标连通域轮廓的像素点已获取完毕。6.根据权利要求4所述的方法,其特征在于,所述将属于所述至少一个连通域轮廓的已获取像素点分别存储至至少一个存储区域,包括:为属于每个连通域轮廓的已获取像素点配置同一个连通域标签;
将具有同一个连通域标签的像素点存储至所述同一个连通域标签对应的一个存储区域中。7.根据权利要求1-6任一所述的方法,其特征在于,所述根据所述目标连通域轮廓的所有像素点,计算所述目标连通域轮廓对应视觉标志点的坐标位置,包括:根据所述目标连通域轮廓的所有像素点,进行曲线拟合运算,得到所述目标连通域轮廓对应视觉标志点的坐标位置。8.一种视觉标志点提取装置,其特征在于,所述装置包括:接收模块,用于依次接收针对目标物的图像中的多组像素数据;获取模块,用于针对接收到的每组像素数据,从所述每组像素数据中获取所述每组像素数据中属于至少一个连通域轮廓的像素点;计算模块,用于若所述至少一个连通域轮廓中目标连通域轮廓的像素点满足预设结束条件,则根据所述目标连通域轮廓的所有像素点,计算所述目标连通域轮廓对应视觉标志点的坐标位置;接收模块,还用于继续接收针对所述目标物的图像中的其它像素数据,直至计算出其它视觉标志点的坐标位置。9.一种处理设备,其特征在于,包括:处理器、存储介质,所述处理器与所述存储介质之间通过总线通信连接,所述存储介质存储有所述处理器可执行的程序指令,所述处理器调用存储介质中存储的程序,以执行如权利要求1至7任一所述的视觉标志点提取方法的步骤。10.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1至7任一所述的视觉标志点提取方法的步骤。

技术总结
本申请提供一种视觉标志点提取方法、装置、设备及存储介质,涉及图像处理技术领域。该方法通过依次接收针对目标物的图像中的多组像素数据;针对接收到的每组像素数据,从每组像素数据中获取每组像素数据中属于至少一个连通域轮廓的像素点;若至少一个连通域轮廓中目标连通域轮廓的像素点满足预设结束条件,则根据目标连通域轮廓的所有像素点,计算目标连通域轮廓对应视觉标志点的坐标位置;继续接收针对目标物的图像中的其它像素数据,直至计算出其它视觉标志点的坐标位置。从而,缩短了标志点的提取时间,提高了标志点的提取效率,使得基于标志点的视觉识别更加及时、精准。精准。精准。


技术研发人员:楚梁 田威 王晓南 王辰
受保护的技术使用者:武汉中观自动化科技有限公司
技术研发日:2023.05.19
技术公布日:2023/8/13
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐