特征点误匹配的处理方法、装置、电子设备和可读介质与流程

未命名 10-19 阅读:112 评论:0


1.本技术涉及图像处理技术领域,尤其涉及特征点误匹配的处理方法、装置、电子设备和可读介质。


背景技术:

2.图像的特征点匹配在slam(simultaneous localization and mapping,同步定位与建图)、sfm(structure from motion,运动恢复结构)等复杂的计算机视觉任务中具有重要的基础作用。
3.然而,特征点误匹配现象广泛存在,不可避免,相关技术中无法有效消除误匹配的特征点,导致降低计算结果的精度。


技术实现要素:

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.本技术提供的技术方案可以包括以下有益效果:
41.本技术提供的方案,针对两张图片的初始特征点进行匹配,得到匹配结果;匹配结果包括多个匹配成功的第一特征点对;计算各个第一特征点对在两张图片中的移动向量;根据各个第一特征点对的移动向量,确定误匹配的目标特征点对;将目标特征点对从匹配结果中剔除。本技术基于移动向量判断是否发生误匹配,再将误匹配的目标特征点对剔除,从而降低特征点误匹配发生的概率,提高匹配精度。
42.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
43.通过结合附图对本技术示例性实施方式进行更详细地描述,本技术的上述以及其他目的、特征和优势将变得更加明显,其中,在本技术示例性实施方式中,相同的参考标号通常代表相同部件。
44.图1是本技术实施例示出的特征点误匹配的处理方法的流程示意图;
45.图2是本技术实施例示出的特征点误匹配的处理方法的另一流程示意图;
46.图3a是相邻的两帧图片中前一时刻(or后一时刻)的示意图;
47.图3b是相邻的两帧图片中前一时刻(or后一时刻)的示意图;
48.图4是本技术实施例示出的特征点误匹配的处理流程图;
49.图5是本技术实施例示出的特征点误匹配的处理装置的结构示意图;
50.图6是本技术实施例示出的电子设备的结构示意图。
具体实施方式
51.下面将参照附图更详细地描述本技术的实施方式。虽然附图中显示了本技术的实施方式,然而应该理解,可以以各种形式实现本技术而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本技术更加透彻和完整,并且能够将本技术的范围完整地传达给本领域的技术人员。
52.在本技术使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本技术。在本技术和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
53.应当理解,尽管在本技术可能采用术语“第一”、“第二”、“第三”等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本技术范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本技术的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
54.相关技术中无法有效消除误匹配的特征点,导致降低计算结果的精度。
55.针对上述问题,本技术实施例提供一种特征点误匹配的处理方法,基于移动向量判断是否发生误匹配,再将误匹配的目标特征点对剔除,从而降低特征点误匹配发生的概率,提高匹配精度。
56.以下结合附图详细描述本技术实施例的技术方案。
57.图1是本技术实施例示出的特征点误匹配的处理方法的流程示意图。
58.参见图1,本技术的特征点误匹配的处理方法,包括:
59.s110,针对两张图片的初始特征点进行匹配,得到匹配结果;匹配结果包括多个匹配成功的第一特征点对。
60.在本技术实施例中,可以应用于图像处理系统,图像处理系统可以获取两张待匹配的图片。其中,每张图片包含有多个初始特征点,初始特征点可以是图片上的像素点。
61.图像处理系统可以通过将两张图片对应的多个初始特征点进行匹配,从而获得匹配结果。其中,匹配结果可以包括多个第一特征点对,每个第一特征点对可以是一对匹配成功的初始特征点。
62.s111,计算各个第一特征点对在两张图片中的移动向量。
63.图像处理系统可以计算每个第一特征点对在两张图片中的移动向量,移动向量可以表征第一特征点对在两张图片上像素位置的移动方向和移动长度。
64.s112,根据各个第一特征点对的移动向量,确定误匹配的目标特征点对。
65.得到每个第一特征点对的移动向量后,图像处理系统可以根据每个第一特征点对的移动向量,判断每个第一特征点对是否发生误匹配,从而将误匹配的第一特征点对确定为目标特征点对。
66.s113,将目标特征点对从匹配结果中剔除。
67.筛选出误匹配的目标特征点对后,图像处理系统可以将目标特征点对从匹配结果中剔除掉,从而可以降低特征点误匹配发生的概率,有效提高匹配精度。
68.需说明的是,slam主要用于解决机器人在未知环境运动时的定位与地图构建问题。sfm的目标是能够利用两个场景或多个场景自动恢复相机运动和场景结构。本技术实施例通过提高特征点匹配精度,在slam中可以提高建图、定位精度,在sfm中可以提高目标物体还原精度。
69.从该示例可以看出,本技术提供的方案,针对两张图片的初始特征点进行匹配,得到匹配结果;匹配结果包括多个匹配成功的第一特征点对;计算各个第一特征点对在两张图片中的移动向量;根据各个第一特征点对的移动向量,确定误匹配的目标特征点对;将目标特征点对从匹配结果中剔除。本技术基于移动向量判断是否发生误匹配,再将误匹配的目标特征点对剔除,从而降低特征点误匹配发生的概率,提高匹配精度。
70.图2是本技术实施例示出的特征点误匹配的处理方法的另一流程示意图。
71.参见图2,本技术的特征点误匹配的处理方法,包括:
72.s210,针对两张图片的初始特征点进行匹配,得到匹配结果;匹配结果包括多个匹配成功的第一特征点对。
73.本技术实施例可以通过图像处理系统针对两张图片的初始特征点进行匹配,从而得到匹配结果。其中,初始特征点可以是图片上的像素点,匹配结果可以包括多个第一特征点对,每个第一特征点对可以是一对匹配成功的初始特征点。
74.在一实施方式中,针对两张图片的初始特征点进行匹配,得到匹配结果,可以包括:
75.从两张图片中分别提取多个初始特征点;将两张图片对应的多个初始特征点进行匹配;确定在两张图片中两两匹配成功的初始特征点;将两两匹配成功的初始特征点确定为第一特征点对,以得到包含多个第一特征点对的匹配结果。
76.两张图片可以是相邻时间采集的两张图片,或在采集视频中抽取的间隔预设帧数的两帧图片,预设帧数是自然数。图3a~图3b是相邻的两帧图片中前一时刻(or后一时刻)的示意图,其中,图3a可以是前一时刻采集的图片,图3b可以是后一时刻采集的图片。图像
处理系统可以从图3a中提取多个初始特征点,以及可以从图3b中提取多个初始特征点。示例性地,在图3a中,深色点a、b、c和浅色点d均可以是初始特征点;在图3b中,深色点e、f、g和浅色点h均可以是初始特征点。
77.图像处理系统可以将两张图片上对应的多个初始特征点进行匹配,然后确定在这两张图片上两两匹配成功的初始特征点,可以将两两匹配成功的初始特征点确定为第一特征点对,从而最终得到多个第一特征点对,图像处理系统可以依据多个第一特征点对生成匹配结果。
78.在一种示例中,从第一张图片中提取出x1个初始特征点,从第二张图片中提取出x2个初始特征点,将x1个初始特征点与x2个初始特征点进行匹配。如果第一张图片上的第p个初始特征点与第二张图片上的第q个初始特征点匹配成功,说明第p个初始特征点和第q个初始特征点是两张图片上共有的特征点,因此可以确定第p个初始特征点和第q个初始特征点是第一特征点对;如果第一张图片上的第p个初始特征点与第二张图片上的第q个初始特征点匹配失败,说明第p个初始特征点和第q个初始特征点不是两张图片上共有的特征点,因此可以确定第p个初始特征点和第q个初始特征点不是第一特征点对。
79.如图3a和图3b所示,图3a的a点与图3b的e点是两两匹配成功的初始特征点,因此可以确定a点和e点是第一特征点对;以及,图3a的b点与图3b的f点是两两匹配成功的初始特征点,因此可以确定b点和f点是第一特征点对;以及,图3a的c点与图3b的g点是两两匹配成功的初始特征点,因此可以确定c点和g点是第一特征点对;而图3a的d点与图3b的h点是两两匹配失败的初始特征点,因此可以确定d点和h点不是第一特征点对。
80.第一特征点对是一对两两匹配成功的初始特征点,为了便于区分,可以将构成第一特征点对的初始特征点确定为匹配点。其中,匹配点可以是由一个圆心和一条线段组成,圆心处表示匹配点在本帧图片上的位置,线段的另一端表示匹配点在上一帧图片的位置。例如,对于图3b的e点,e点的圆心处表示e点在图3b上的位置,e点的线段的另一端表示e点在图3a上的位置。
81.s211,计算各个第一特征点对在两张图片中的移动向量;移动向量包括移动长度和移动方向。
82.图像处理系统可以计算每个第一特征点对在两张图片中的移动向量,移动向量可以表征第一特征点对在两张图片上像素位置的移动方向和移动长度,因此,移动向量包括移动长度和移动方向。
83.在一实施方式中,两张图片为间隔有预设帧数的两张图片;计算各个第一特征点对在所述两张图片中的移动向量,可以包括:
84.获取各个第一特征点对在间隔有预设帧数的两张图片中的像素坐标;采用在间隔有预设帧数的两张图片中的像素坐标,计算各个第一特征点对的移动向量。
85.在具体实现中,图像处理系统可以获取每个第一特征点对在间隔有预设帧数的两张图片中的像素坐标,然后可以采用每个第一特征点对在间隔有预设帧数的两张图片中的像素坐标,计算得到每个第一特征点对在间隔有预设帧数的两张图片中的移动向量。其中,像素坐标可以是二维坐标p(u,v)。
86.在一种示例中,第一张图片和第二张图片是间隔有预设帧数的两张图片。其中,某个第一特征点对i,假设是通过第一张图片上的初始特征点a与第二张图片上的初始特征点
e成功匹配到的,则初始特征点a和初始特征点e是构成第一特征点对i的匹配点。如果匹配点a在第一张图片上的像素坐标为p
i,1
(u
i,1
,v
i,1
),匹配点e在第二张图片上的像素坐标为p
i,2
(u
i,2
,v
i,2
),则获取到的第一特征点对i在间隔有预设帧数的两张图片中的像素坐标分别是p
i,1
和p
i,2
。图像处理系统可以将两个像素坐标p
i,1
、p
i,2
进行作差,得到的差值即是第一特征点对i在间隔有预设帧数的两张图片中的移动向量veci,即veci=p
i,2-p
i,1

87.s212,将各个第一特征点对的移动长度分别与预设长度进行比较。
88.得到每个第一特征点对的移动向量veci后,移动向量veci包括移动长度|veci|和移动方向veci,图像处理系统可以先将每个第一特征点对的移动长度|veci|,分别与预设长度ε进行比较。
89.需说明的是,参数ε可以根据实际情况设定,例如可以设定参数ε=2,本技术实施例对此不作出限定。
90.s213,基于比较结果,将移动长度大于或等于预设长度的第一特征点对确定为第二特征点对。
91.如果某个第一特征点对的移动长度大于或等于预设长度,即|veci|≥ε,则可以将该第一特征点对确定为第二特征点对,以便将第二特征点对纳入到后续本发明算法的考虑范围内,即针对|veci|≥ε的第二特征点对,执行后续根据移动方向确定误匹配的目标特征点对的步骤。
92.在一实施方式中,在将各个第一特征点对的移动长度分别与预设长度进行比较之后,该方法还可以包括:
93.基于比较结果,将移动长度小于预设长度的第一特征点对确定为第三特征点对;判断各个第三特征点对是否具有三维坐标;若不具有三维坐标,则将不具有三维坐标的第三特征点对从匹配结果中剔除。
94.如果某个第一特征点对的移动长度小于预设长度,即|veci|《ε,说明该第一特征点对的移动距离太短,很有可能是两张图片相对移动较小,则会影响后续图像处理系统对其他第二特征点对的判断,因此本技术实施例可以将该第一特征点对确定为第三特征点对,不将第三特征点对纳入到后续本发明算法的考虑范围内,即针对|veci|《ε的第三特征点对,不执行后续根据移动方向确定误匹配的目标特征点对的步骤。
95.在视觉slam、sfm领域中,在初次匹配的时候,每个初始特征点都具有像素坐标,即每个初始特征点都具有二维坐标p(u,v),但是不一定具有三维坐标(x,y,z),而三维坐标(x,y,z)在视觉slam、sfm领域中具有重要作用。因此,本技术实施例针对|veci|《ε的第三特征点对,可以判断每个第三特征点对是否具有三维坐标(x,y,z)。
96.如果某个第三特征点对具有三维坐标(x,y,z),则图像处理系统可以将该具有三维坐标(x,y,z)的第三特征点对确定为匹配正确的有效特征点对,并将该有效特征点对保留至匹配结果中。
97.如果某个第三特征点对不具有三维坐标(x,y,z),由于该第三特征点对在视觉slam、sfm领域中没有实质作用,因此可以直接将该第三特征点对从匹配结果中剔除。
98.此外,如果不是在视觉slam、sfm领域中,只是普通的图片特征点匹配,则本技术实施例可以直接将|veci|《ε的所有第三特征点对从匹配结果中剔除。
99.s214,根据各个第二特征点对的移动方向,确定误匹配的目标特征点对。
100.针对|veci|≥ε的第二特征点对,图像处理系统可以根据每个第二特征点对的移动方向,判断每个第二特征点对是否发生误匹配,从而将误匹配的第二特征点对确定为目标特征点对。
101.在一实施方式中,根据各个第二特征点对的移动方向,确定误匹配的目标特征点对,可以包括:
102.确定各个第二特征点对的邻近区域;针对各个第二特征点对,将所在的邻近区域内的其他第二特征点对确定为对应相邻的第二特征点对;其中,各个第二特征点对的对应相邻的第二特征点对包括多个;计算各个第二特征点对的移动方向与对应相邻的各个第二特征点对的移动方向之间的夹角,以得到各个第二特征点对的多个夹角结果;根据各个第二特征点对的多个夹角结果,确定误匹配的目标特征点对。
103.在具体实现中,可以以第二张图片上的匹配点的像素坐标p
i,2
(u
i,2
,v
i,2
),作为坐标轴的原点坐标,然后可以设定一横坐标范围是(u
i,2-m,u
i,2
+m)、纵坐标范围是(v
i,2-m,v
i,2
+m)的矩形区域,作为该匹配点构成的第二特征点对的邻近区域。
104.如图3b所示,以e点的像素坐标p
i,2
(u
i,2
,v
i,2
)作为坐标轴的原点坐标,建立一横坐标范围是(u
i,2-m,u
i,2
+m)、纵坐标范围是(v
i,2-m,v
i,2
+m)的矩形区域y,区域y即是e点构成的第二特征点对的邻近区域。
105.需说明的是,参数m可以根据图片大小、运动特征、数据特征等条件进行设定,例如可以设定参数m=30,本技术实施例对此不作出限定。
106.在邻近区域内的多个第二特征点对,它们的移动方向是相似的。如图3b所示,区域y是e点的邻近区域,在邻近区域y内的e点、f点和g点,它们的移动方向是相似的。因此,本技术实施例可以依据第二特征点对的移动方向是否与其对应相邻的第二特征点对的移动方向相近来判断是否发生误匹配。
107.基于此,本技术实施例可以先确定每个第二特征点对的对应相邻的第二特征点对。在具体实现中,图像处理系统针对每个第二特征点对,可以将其所在的邻近区域内的其他第二特征点对确定为其对应相邻的第二特征点对。其中,每个第二特征点对的对应相邻的第二特征点对可以包括多个。示例性地,在图3b的区域y中,e点的对应相邻的第二特征点对包括f点和g点。
108.得到每个第二特征点对的对应相邻的多个第二特征点对后,图像处理系统可以计算每个第二特征点对的移动方向veci与其对应相邻的每个第二特征点对的移动方向veck之间的夹角,从而得到每个第二特征点对的多个夹角结果。
109.在一种示例中,假设第二特征点对i的对应相邻的第二特征点对包括n个,n为大于1的正整数。图像处理系统可以将n个相邻的第二特征点对的移动方向veck组成移动方向集合{veck},然后可以计算移动方向集合{veck}中的每个移动方向veck分别与第二特征点对i的移动方向veci之间的夹角anglek,其中,anglek=《veck,veci》,从而得到第二特征点对i的n个夹角结果。
110.具体可以利用夹角余弦公式计算得到每个夹角anglek,例如:
[0111][0112]
得到每个第二特征点对的多个夹角结果后,可以针对每个第二特征点对,基于多
个夹角结果确定是否存在移动异常情况,然后可以将存在移动异常情况的第二特征点对确定为误匹配的目标特征点对。
[0113]
在一实施方式中,根据各个第二特征点对的多个夹角结果,确定误匹配的目标特征点对,可以包括:
[0114]
针对各个第二特征点对,基于多个夹角结果确定夹角小于预设夹角阈值的目标比例;根据各个第二特征点对的目标比例,确定误匹配的目标特征点对。
[0115]
在一种示例中,针对第二特征点对i,基于n个夹角结果确定夹角anglek小于预设夹角阈值α的数量x,即x是满足anglek《α的数量。图像处理系统可以计算x与n的比值,该比值即是第二特征点对i的目标比例p,即p=x/n,从而基于目标比例p确定第二特征点对i是否为误匹配的目标特征点对。
[0116]
按照上述示例,从多个第二特征点对中确定误匹配的目标特征点对。
[0117]
需说明的是,参数α可以根据图片大小、运动特征、数据特征等条件进行设定,例如可以设定参数α=π/4,本技术实施例对此不作出限定。
[0118]
在一实施方式中,根据各个第二特征点对的目标比例,确定误匹配的目标特征点对,可以包括:
[0119]
将目标比例小于预设比例阈值的第二特征点对确定为误匹配的目标特征点对。
[0120]
在一种示例中,针对第二特征点对i,可以将第二特征点对i的目标比例p与预设比例阈值β进行比较。如果目标比例p大于或等于预设比例阈值β,即x/n≥β,则可以确定第二特征点对i不是误匹配的目标特征点对;如果目标比例p小于预设比例阈值β,即x/n<β,则可以确定第二特征点对i是误匹配的目标特征点对。
[0121]
按照上述示例,从多个第二特征点对中将目标比例小于预设比例阈值的第二特征点对确定为误匹配的目标特征点对。
[0122]
此外,图像处理系统可以将目标比例大于或等于预设比例阈值的第二特征点对确定为匹配正确的有效特征点对,并将有效特征点对保留至匹配结果中。
[0123]
需说明的是,参数β可以根据图片大小、运动特征、数据特征等条件进行设定,例如可以设定参数β=0.6,本技术实施例对此不作出限定。
[0124]
s215,将目标特征点对从匹配结果中剔除。
[0125]
筛选出误匹配的目标特征点对后,图像处理系统可以将目标特征点对从匹配结果中剔除掉,从而可以降低特征点误匹配发生的概率,有效提高匹配精度。本技术实施例通过提高特征点匹配精度,在slam中可以提高建图、定位精度,在sfm中可以提高目标物体还原精度。
[0126]
从该示例可以看出,本技术提供的方案,针对两张图片的初始特征点进行匹配,得到匹配结果;匹配结果包括多个匹配成功的第一特征点对;计算各个第一特征点对在两张图片中的移动向量;移动向量包括移动长度和移动方向;将各个第一特征点对的移动长度分别与预设长度进行比较;基于比较结果,将移动长度大于或等于预设长度的第一特征点对确定为第二特征点对;根据各个第二特征点对的移动方向,确定误匹配的目标特征点对。本技术基于移动长度和移动方向判断是否发生误匹配,再将误匹配的目标特征点对剔除,从而降低特征点误匹配发生的概率,提高匹配精度。
[0127]
图4是本技术实施例示出的特征点误匹配的处理流程图,为了使本领域技术人员
能够更好地理解本技术实施例,下面通过以下示例对本技术实施例加以说明。
[0128]
s401,针对间隔有预设帧数的两张图片的初始特征点进行匹配,得到匹配结果;其中,匹配结果包括多个匹配成功的第一特征点对,比如第一特征点对i,下面以第一特征点对i进行说明。
[0129]
s402,计算第一特征点对i在间隔有预设帧数的两张图片中的移动向量veci;其中,移动向量veci包括移动长度和移动方向。
[0130]
s403,判断第一特征点对i的移动长度|veci|是否小于预设长度ε;若是,则跳转到步骤s410;若否,则跳转到步骤s404。
[0131]
s404,如果|veci|≥ε,则将|veci|≥ε的第一特征点对i确定为第二特征点对i;确定第二特征点对i的邻近区域;假设第二特征点对i的邻近区域内包含有其他的n个第二特征点对。
[0132]
s405,将第二特征点对i所在的邻近区域内的n个第二特征点对,确定为第二特征点对i的对应相邻的第二特征点对。
[0133]
s406,计算第二特征点对i的移动方向veci与对应相邻的每个第二特征点对的移动方向veck之间的夹角anglek。
[0134]
s407,统计满足anglek<α的数量x;其中,α是预设夹角阈值。
[0135]
s408,判断第二特征点对i的目标比例p是否小于预设比例阈值β;若是,则跳转到步骤s409a;若否,则跳转到步骤s409b;其中,目标比例p是n个夹角结果中anglek<α的比例,即p=x/n。
[0136]
s409a,如果x/n<β,则确定第二特征点对i是误匹配的目标特征点对,因此将第二特征点对i从匹配结果中剔除,流程结束。
[0137]
s409b,如果x/n≥β,则确定第二特征点对i是匹配正确的有效特征点对,因此将第二特征点对i保留到匹配结果中,流程结束。
[0138]
s410,如果|veci|<ε,则将|veci|<ε的第一特征点对i确定为第三特征点对i。
[0139]
s411,判断第三特征点对i是否具有三维坐标(x,y,z);若是,则跳转到步骤s412a;若否,则跳转到步骤s412b。
[0140]
s412a,如果第三特征点对i具有三维坐标(x,y,z),则确定第三特征点对i是匹配正确的有效特征点对,因此将第三特征点对i保留到匹配结果中,流程结束。
[0141]
s412b,如果第三特征点对i不具有三维坐标(x,y,z),则直接将不具有三维坐标(x,y,z)的第三特征点对i从匹配结果中剔除。
[0142]
与前述应用功能实现方法实施例相对应,本技术还提供了一种特征点误匹配的处理装置、电子设备、计算机可读存储介质及相应的实施例。
[0143]
图5是本技术实施例示出的特征点误匹配的处理装置的结构示意图。
[0144]
参见图5,本技术提供的一种特征点误匹配的处理装置,该装置可以包括:
[0145]
匹配模块501,用于针对两张图片的初始特征点进行匹配,得到匹配结果;匹配结果包括多个匹配成功的第一特征点对;
[0146]
移动向量计算模块502,用于计算各个第一特征点对在两张图片中的移动向量;
[0147]
目标特征点对确定模块503,用于根据各个第一特征点对的移动向量,确定误匹配的目标特征点对;
[0148]
第一剔除模块504,用于将目标特征点对从匹配结果中剔除。
[0149]
在一实施方式中,移动向量包括移动长度和移动方向;目标特征点对确定模块503可以包括:
[0150]
比较子模块,用于将各个第一特征点对的移动长度分别与预设长度进行比较;
[0151]
第二特征点对确定子模块,用于基于比较结果,将移动长度大于或等于预设长度的第一特征点对确定为第二特征点对;
[0152]
目标特征点对确定子模块,用于根据各个第二特征点对的移动方向,确定误匹配的目标特征点对。
[0153]
在一实施方式中,在将各个第一特征点对的移动长度分别与预设长度进行比较之后,该装置还可以包括:
[0154]
第三特征点对确定模块,用于基于比较结果,将移动长度小于预设长度的第一特征点对确定为第三特征点对;
[0155]
判断模块,用于判断各个第三特征点对是否具有三维坐标;
[0156]
第二剔除模块,用于若不具有三维坐标,则将不具有三维坐标的第三特征点对从匹配结果中剔除。
[0157]
在一实施方式中,目标特征点对确定子模块可以包括:
[0158]
邻近区域确定单元,用于确定各个第二特征点对的邻近区域;
[0159]
相邻的第二特征点对确定单元,用于针对各个第二特征点对,将所在的邻近区域内的其他第二特征点对确定为对应相邻的第二特征点对;其中,各个第二特征点对的对应相邻的第二特征点对包括多个;
[0160]
夹角计算单元,用于计算各个第二特征点对的移动方向与对应相邻的各个第二特征点对的移动方向之间的夹角,以得到各个第二特征点对的多个夹角结果;
[0161]
目标特征点对确定单元,用于根据各个第二特征点对的多个夹角结果,确定误匹配的目标特征点对。
[0162]
在一实施方式中,目标特征点对确定单元可以包括:
[0163]
目标比例确定子单元,用于针对各个第二特征点对,基于多个夹角结果确定夹角小于预设夹角阈值的目标比例;
[0164]
目标特征点对确定子单元,用于根据各个第二特征点对的目标比例,确定误匹配的目标特征点对。
[0165]
在一实施方式中,目标特征点对确定子单元具体可以用于:
[0166]
将目标比例小于预设比例阈值的第二特征点对确定为误匹配的目标特征点对。
[0167]
在一实施方式中,两张图片为间隔有预设帧数的两张图片;移动向量计算模块502可以包括:
[0168]
像素坐标获取子模块,用于获取各个第一特征点对在间隔有预设帧数的两张图片中的像素坐标;
[0169]
移动向量计算子模块,用于采用在间隔有预设帧数的两张图片中的像素坐标,计算各个第一特征点对的移动向量。
[0170]
在一实施方式中,匹配模块501可以包括:
[0171]
初始特征点提取子模块,用于从两张图片中分别提取多个初始特征点;
[0172]
匹配子模块,用于将两张图片对应的多个初始特征点进行匹配;
[0173]
匹配成功的确定子模块,用于确定在两张图片中两两匹配成功的初始特征点;
[0174]
第一特征点对确定子模块,用于将两两匹配成功的初始特征点确定为第一特征点对,以得到包含多个第一特征点对的匹配结果。
[0175]
从该示例可以看出,本技术提供的方案,针对两张图片的初始特征点进行匹配,得到匹配结果;匹配结果包括多个匹配成功的第一特征点对;计算各个第一特征点对在两张图片中的移动向量;根据各个第一特征点对的移动向量,确定误匹配的目标特征点对;将目标特征点对从匹配结果中剔除。本技术基于移动向量判断是否发生误匹配,再将误匹配的目标特征点对剔除,从而降低特征点误匹配发生的概率,提高匹配精度。
[0176]
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不再做详细阐述说明。
[0177]
图6是本技术实施例示出的电子设备的结构示意图。
[0178]
参见图6,电子设备600包括存储器610和处理器620。
[0179]
处理器620可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0180]
存储器610可以包括各种类型的存储单元,例如系统内存、只读存储器(rom)和永久存储装置。其中,rom可以存储处理器620或者计算机的其他模块需要的静态数据或者指令。永久存储装置可以是可读写的存储装置。永久存储装置可以是即使计算机断电后也不会失去存储的指令和数据的非易失性存储设备。在一些实施方式中,永久性存储装置采用大容量存储装置(例如磁或光盘、闪存)作为永久存储装置。另外一些实施方式中,永久性存储装置可以是可移除的存储设备(例如软盘、光驱)。系统内存可以是可读写存储设备或者易失性可读写存储设备,例如动态随机访问内存。系统内存可以存储一些或者所有处理器在运行时需要的指令和数据。此外,存储器610可以包括任意计算机可读存储媒介的组合,包括各种类型的半导体存储芯片(例如dram,sram,sdram,闪存,可编程只读存储器),磁盘和/或光盘也可以采用。在一些实施方式中,存储器610可以包括可读和/或写的可移除的存储设备,例如激光唱片(cd)、只读数字多功能光盘(例如dvd-rom,双层dvd-rom)、只读蓝光光盘、超密度光盘、闪存卡(例如sd卡、min sd卡、micro-sd卡等)、磁性软盘等。计算机可读存储媒介不包含载波和通过无线或有线传输的瞬间电子信号。
[0181]
存储器610上存储有可执行代码,当可执行代码被处理器620处理时,可以使处理器620执行上文述及的方法中的部分或全部。
[0182]
此外,根据本技术的方法还可以实现为一种计算机程序或计算机程序产品,该计算机程序或计算机程序产品包括用于执行本技术的上述方法中部分或全部步骤的计算机程序代码指令。
[0183]
或者,本技术还可以实施为一种计算机可读存储介质(或非暂时性机器可读存储介质或机器可读存储介质),其上存储有可执行代码(或计算机程序或计算机指令代码),当
可执行代码(或计算机程序或计算机指令代码)被电子设备(或服务器等)的处理器执行时,使处理器执行根据本技术的上述方法的各个步骤的部分或全部。
[0184]
以上已经描述了本技术的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文披露的各实施例。

技术特征:
1.一种特征点误匹配的处理方法,其特征在于,所述方法包括:针对两张图片的初始特征点进行匹配,得到匹配结果;所述匹配结果包括多个匹配成功的第一特征点对;计算各个第一特征点对在所述两张图片中的移动向量;根据所述各个第一特征点对的移动向量,确定误匹配的目标特征点对;将所述目标特征点对从所述匹配结果中剔除。2.根据权利要求1所述的方法,其特征在于,所述移动向量包括移动长度和移动方向;所述根据所述各个第一特征点对的移动向量,确定误匹配的目标特征点对,包括:将所述各个第一特征点对的移动长度分别与预设长度进行比较;基于比较结果,将所述移动长度大于或等于预设长度的第一特征点对确定为第二特征点对;根据各个第二特征点对的移动方向,确定误匹配的目标特征点对。3.根据权利要求2所述的方法,其特征在于,在所述将所述各个第一特征点对的移动长度分别与预设长度进行比较之后,还包括:基于比较结果,将所述移动长度小于预设长度的第一特征点对确定为第三特征点对;判断各个第三特征点对是否具有三维坐标;若不具有三维坐标,则将所述不具有三维坐标的第三特征点对从所述匹配结果中剔除。4.根据权利要求2所述的方法,其特征在于,所述根据各个第二特征点对的移动方向,确定误匹配的目标特征点对,包括:确定各个第二特征点对的邻近区域;针对所述各个第二特征点对,将所在的所述邻近区域内的其他第二特征点对确定为对应相邻的第二特征点对;其中,所述各个第二特征点对的对应相邻的第二特征点对包括多个;计算所述各个第二特征点对的移动方向与对应相邻的各个第二特征点对的移动方向之间的夹角,以得到所述各个第二特征点对的多个夹角结果;根据所述各个第二特征点对的多个夹角结果,确定误匹配的目标特征点对。5.根据权利要求4所述的方法,其特征在于,所述根据所述各个第二特征点对的多个夹角结果,确定误匹配的目标特征点对,包括:针对所述各个第二特征点对,基于所述多个夹角结果确定夹角小于预设夹角阈值的目标比例;根据所述各个第二特征点对的目标比例,确定误匹配的目标特征点对。6.根据权利要求5所述的方法,其特征在于,所述根据所述各个第二特征点对的目标比例,确定误匹配的目标特征点对,包括:将所述目标比例小于预设比例阈值的第二特征点对确定为误匹配的目标特征点对。7.根据权利要求1所述的方法,其特征在于,所述两张图片为间隔有预设帧数的两张图片;所述计算各个第一特征点对在所述两张图片中的移动向量,包括:获取各个第一特征点对在所述间隔有预设帧数的两张图片中的像素坐标;采用在所述间隔有预设帧数的两张图片中的像素坐标,计算所述各个第一特征点对的
移动向量。8.一种特征点误匹配的处理装置,其特征在于,所述装置包括:匹配模块,用于针对两张图片的初始特征点进行匹配,得到匹配结果;所述匹配结果包括多个匹配成功的第一特征点对;移动向量计算模块,用于计算各个第一特征点对在所述两张图片中的移动向量;目标特征点对确定模块,用于根据所述各个第一特征点对的移动向量,确定误匹配的目标特征点对;第一剔除模块,用于将所述目标特征点对从所述匹配结果中剔除。9.一种电子设备,其特征在于,包括:处理器;以及存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如权利要求1-7中任一项所述的方法。10.一种计算机可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如权利要求1-7中任一项所述的方法。

技术总结
本申请涉及一种特征点误匹配的处理方法、装置、电子设备和可读介质。该方法包括:针对两张图片的初始特征点进行匹配,得到匹配结果;匹配结果包括多个匹配成功的第一特征点对;计算各个第一特征点对在两张图片中的移动向量;根据各个第一特征点对的移动向量,确定误匹配的目标特征点对;将目标特征点对从匹配结果中剔除。本申请提供的方案,能够降低特征点误匹配发生的概率,提高匹配精度。提高匹配精度。提高匹配精度。


技术研发人员:单国航 万如 贾双成 郭杏荣
受保护的技术使用者:智道网联科技(北京)有限公司
技术研发日:2023.07.07
技术公布日:2023/10/15
版权声明

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

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

分享:

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

相关推荐