CN109978911A - 一种图像特征点跟踪方法和相机 - Google Patents
一种图像特征点跟踪方法和相机 Download PDFInfo
- Publication number
- CN109978911A CN109978911A CN201910135271.0A CN201910135271A CN109978911A CN 109978911 A CN109978911 A CN 109978911A CN 201910135271 A CN201910135271 A CN 201910135271A CN 109978911 A CN109978911 A CN 109978911A
- Authority
- CN
- China
- Prior art keywords
- point
- characteristic point
- tracking
- frame
- feature point
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种图像特征点跟踪方法和相机,方法包括:对相机拍摄的图像帧序列中的第一帧进行特征点检测,提取得到需要跟踪的特征点,并记录所述特征点的跟踪次数;根据所述特征点确定出第二帧中对应的候选特征点,其中,第二帧是第一帧的相邻的下一帧;基于跟踪次数以及候选特征点间的距离,对所述候选特征点进行过滤得到基准特征点;获得所述基准特征点的跟踪质量得分,将跟踪质量得分符合质量阈值的基准特征点作为跟踪成功的特征点。本发明实施例依据特征点跟踪次数和距离筛选特征点,通过判断特征点的邻近区域灰度值确定特征点质量,根据质量来切换角点提取方式满足了特征点跟踪的实时性和特征点分布要求。
Description
技术领域
本发明涉及图像处理技术领域,具体涉及一种图像特征点跟踪方法和相机。
背景技术
目前,具有相机的设备,比如机器人或无人机基本都具有视觉定位和导航功能,视觉定位和导航的实现基于图像之间的跟踪,图像跟踪主要采用的是特征点匹配法和光流法。然而,特征点匹配法需要对提取的角点计算特征描述子,并使用特征描述子进行特征点相似性对比,该算法虽然求解严谨,但特征点的匹配需要计算描述子,耗费较多时间。光流法避免了描述子计算这一过程,但光流法对特征点质量要求高,若按照一般情况下使用Harris角点提取将增加特征点提取的耗时。由此可知,上述两种方式都有实时性差,降低系统的性能,难以满足特征点跟踪的实时性要求等不足。此外,现有的特征点跟踪过程中为保证最后解算出的相机位姿的准确性以确保导航精度,往往使用特征点分散策略,导致特征点分布不均。
发明内容
本发明实施例提供了一种图像特征点跟踪方法和相机,本发明实施例使用稀疏直接法实现帧间特征点跟踪避免了计算描述子,并使用特征点提取切换提高跟踪实时性,依据特征点跟踪次数和距离筛选特征点,并根据质量切换角点提取方式,满足了特征点跟踪的实时性和特征点均匀分布要求。
为了达到上述技术目的,本发明实施例的技术方案是这样实现的:
根据本申请的一个实施例,提供了一种图像特征点跟踪方法,包括:
对相机拍摄的图像帧序列中的第一帧进行特征点检测,提取得到需要跟踪的特征点,并记录所述特征点的跟踪次数;
根据所述特征点确定出第二帧中对应的候选特征点,其中,所述第二帧是所述第一帧的相邻的下一帧;
基于所述跟踪次数以及所述候选特征点间的距离,对所述候选特征点进行过滤得到基准特征点;
根据所述基准特征点的相邻区域内像素点的灰度值,获得所述基准特征点的跟踪质量得分,将所述跟踪质量得分符合预设质量阈值的所述基准特征点作为跟踪成功的特征点。
根据本申请的又一个方面,提供了一种相机,包括摄像头模组和图像处理芯片;
所述摄像头模组,用于对环境进行拍摄得到图像帧序列,将所述图像帧序列发送至所述图像处理芯片;
所述图像处理芯片,用于对所述图像帧序列中的第一帧进行特征点检测,提取得到需要跟踪的特征点,并记录所述特征点的跟踪次数;根据所述特征点确定出第二帧中对应的候选特征点,其中,所述第二帧是所述第一帧的相邻的下一帧;基于所述跟踪次数以及所述候选特征点间的距离,对所述候选特征点进行过滤得到基准特征点;根据所述基准特征点的相邻区域内像素点的灰度值,获得所述基准特征点的跟踪质量得分,将所述跟踪质量得分符合预设质量阈值的所述基准特征点作为跟踪成功的特征点。
应用本发明实施例的图像特征点跟踪方法和相机,通过对图像帧序列中的第一帧进行特征点检测提取特征点并记录特征点的跟踪次数,根据特征点确定出第二帧(第二帧是第一帧的相邻的下一帧)中对应的候选特征点,基于跟踪次数以及候选特征点间的距离,对候选特征点进行过滤得到基准特征点,根据基准特征点的相邻区域内像素点的灰度值,获得基准特征点的跟踪质量得分,将跟踪质量得分符合质量阈值的基准特征点作为跟踪成功的特征点。由此,使用第一帧的特征点确定第二帧的候选特征点,避免了计算特征描述子的耗时,提高了特征点提取的效率。并且,根据质量不同切换角点提取方式,提高了跟踪的实时性,保证了跟踪特征在图像中均匀分布。
附图说明
图1是本发明一个实施例的图像特征点跟踪方法的流程图;
图2是本发明另一个实施例的图像特征点跟踪方法的流程示意图;
图3是本发明一个实施例的FAST角点提取的流程图;
图4是本发明一个实施例的Harris角点提取的流程图;
图5是本发明一个实施例的相机的框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的技术方案对连续图像序列持续快速跟踪和相机的相对位姿的求解可以应用于视觉里程计、无人机、AGV(Automated Guided Vehicle)机器人等设备中,这里的相机通过分析处理相关图像序列来确定安安装相机的设备,比如机器人的位置和姿态。
本发明实施例的设计构思在于:使用稀疏直接法实现图像帧间特征点跟踪,避免了计算特征描述子,并依据特征点距离筛选特征点,保证跟踪特征在图像中均匀分布保证跟踪的质量,同时根据跟踪效果使用不同的角点提取方式提取角点补充,保证跟踪点个数。
图1是本发明一个实施例的图像特征点跟踪方法的流程图,参见图1,本实施例的图像特征点跟踪方法包括:
步骤S101,对相机拍摄的图像帧序列中的第一帧进行特征点检测,提取得到需要跟踪的特征点,并记录所述特征点的跟踪次数;
步骤S102,根据所述特征点确定出第二帧中对应的候选特征点,其中,所述第二帧是所述第一帧的相邻的下一帧;
步骤S103,基于所述跟踪次数以及所述候选特征点间的距离,对所述候选特征点进行过滤得到基准特征点;
步骤S104,根据所述基准特征点的相邻区域内像素点的灰度值,获得所述基准特征点的跟踪质量得分,将所述跟踪质量得分符合预设质量阈值的所述基准特征点作为跟踪成功的特征点。
由图1所示可知,本实施例的图像特征点跟踪方法对第一帧进行特征点检测,提取得到需要跟踪的特征点并记录特征点的跟踪次数,根据特征点确定出第二帧中对应的候选特征点,基于跟踪次数以及候选特征点间的距离进行过滤得到基准特征点,根据基准特征点的相邻区域内像素点的灰度值获得基准特征点的跟踪质量得分,并由基准特征点的跟踪质量得分选出高质量的基准特征点作为跟踪成功的特征点,从而在保证跟踪稳定和可靠的情况下,大幅缩短了计算耗时,提高了跟踪的实时性,满足了实际需求。
考虑到实际环境中的复杂性,在进行图像特征点跟踪过程中经常出现跟踪失败的情况,比如,初始图像帧上提取和确定了200个待跟踪的特征点,到第二帧时只有180个点跟踪成功,在第三帧中只有150个点跟踪成功,很明显,如果不加调整将导致跟踪准确性较低和跟踪失败。
对此,本发明实施例中的方法,在将所述跟踪质量得分符合预设质量阈值的所述基准特征点作为跟踪成功的特征点之后,还判断第二帧中跟踪成功的特征点的个数是否小于预设第一阈值,当跟踪成功的特征点的个数小于第一阈值时,提取第二帧中的特征点作为第一特征点,将第一特征点补充到第一特征点集合中,并将第一特征点集合中的跟踪成功的特征点的跟踪次数加1,将第一特征点的跟踪次数设为1。也就是说,对第二帧中跟踪成功的特征点的数目进行判断和调整,如果数目过少,在第二帧中进行特征点提取补充一些特征点来避免跟踪点过少导致跟踪失败。
这里的特征点是指能描述图像本质的像素点,特征点还可以理解为:微小的变化会对图像产生重大的影响的点,而角点就是这样的特征点。特征点检测也称为角点检测,是计算机视觉系统中用来获得图像特征的一种方法。现有技术存在多种特征点检测算法,不同特征点检测算法的效率和耗时不同。比如,FAST(Features from Accelerated SegmentTest)角点检测是一种快速角点特征的检测算法。而Harris算法是另一种角点检测算法其主要思想就是利用图像的自相关性和微分运算来检测图像特征点,Harris的缺点是运算效率低,但由于Harris算法具有较强的鲁棒性和稳定性,所以本实施例中使用Harris响应值来评估跟踪点的好坏。
由于FAST算法和Harris算法的提取效率不同,所以本实施例结合跟踪成功的特征点的质量、特征检测算法的效率综合确定采用的特征检测算法,比如,本实施例中在跟踪成功的特征点的个数小于第一阈值时,提取第二帧中的特征点作为第一特征点包括:判断跟踪成功的特征点的个数是否大于第二阈值,第二阈值小于第一阈值,是则,对第二帧进行角点检测提取预设数目个FAST角点作为第一特征点;否则,对所述第二帧进行角点检测提取预设数目个Harris角点作为第一特征点;其中,预设数目由第一阈值、跟踪成功的特征点的个数确定。这里的第二阈值例如是第一阈值的一半,预设数目例如是第一阈值与跟踪成功的特征点的个数的差值的两倍。
如此,在跟踪成功的特征点的个数大于第二阈值时,即当跟踪效果良好时,继续采用FAST算法提取角点进行跟踪以尽可能的降低跟踪的耗时,提高跟踪效率。当跟踪成功的特征点的个数小于第二阈值时表明跟踪效果较差,此时切换为Harris算法进行角点提取,将提取的角点补充到跟踪成功的特征点集合中,保证跟踪的准确性。
参见图2,下面以一次跟踪过程为例,对本发明实施例的图像特征点的跟踪方法的实现步骤进行说明。可以理解,本实施例是对相机采集得到的图像帧序列的处理是将图像帧序列中的图像作为本发明实施例的方法的输入。
如图2所示,输入图像,执行下列步骤:
步骤一,初始帧使用FAST特征点提取;
由于FAST检测算法的快速、准确特点,这里对图像帧序列中的第一帧比如初始帧,使用FAST特征点检测算法提取FAST特征点,得到需要跟踪的特征点即,对所述初始帧进行FAST角点检测,提取得到符合预设数量条件和预设距离条件的FAST角点,其中,所述预设数量条件为提取的FAST角点的个数等于第一阈值,所述预设距离条件为提取的各FAST角点的像素位置之间的最小距离等于第一距离阈值。
使用FAST特征点提取大体上包括下列步骤:参见图3,包括:输入图像,比如输入第一帧然后执行步骤1.1。
步骤1.1,图像分块;
比如这里取图像块block_size=25*25。
步骤1.2,无特征点,FAST-9,阈值20;
本步骤是判断上一步骤的图像块中是否已经提取到特征点,若某分块中存在跟踪成功的特征点(uj,vj),则对该分块舍弃不进行特征点提取。对不存在跟踪成功的特征点的分块进行提取,提取算法具体利用FAST-9,将阈值设置为20。
FAST-9的提取过程如下所示,
1)在一个以像素p为中心,半径为3的圆上,有16个像素点(p1、p2、...、p16)。
2)定义一个阈值。计算p1、p9与中心p的像素差,若它们的绝对值都小于阈值(20),则p点不可能是特征点,直接排除;否则,将p点作为候选点,有待进一步判断。
3)若p是候选点,则计算p1、p9、p5、p13与中心p的像素差,若它们的绝对值有至少3个超过阈值,则当做候选点,再进行下一步判断;否则,直接排除掉。
4)若p是候选点,则计算p1到p16这16个点与中心p的像素差,若它们有至少9个超过阈值,则确定p点是特征点;否则,直接排除掉。
通过FAST-9提高了特征点提取的效率,获得更快的结果。
参见图3,步骤1.3,判断是否提取成功;否则,执行步骤1.4,是则执行步骤1.5;
这里具体是判断步骤1.2中的FAST-9,阈值20的条件下是否提取特征点成功,如果成功则执行步骤1.5,如果没有提取成功,比如没有提取到特征点,则降低提取标准,比如将阈值从20降为10,进行二次提取。
步骤1.4,FAST-9,阈值10;
这里是对当前图像块的特征点提取进行二次尝试,提取算法与前述步骤1.2中相似,不同之处在于前述第2)点中定义一个阈值是将该阈值设为10而非20。因此,这里的提取步骤可参见前述步骤1.2中的说明,此处不再赘述。
步骤1.5,特征点排序;
这里依据特征点比如FAST角点的Harris响应值从高到低排序。由于本实施例中需要的是能够持续跟踪到的点,FAST响应值在这里不适用,所以使用的是Harris响应值进行排序。
步骤1.6,是否无待选特征点;是则提取结束;否则执行步骤1.7加入特征点;
在本步骤中判断是否所有的候选特征点均判断完毕,如果都判断完毕,则确定提取结束,如果有候选特征点,则对排序的特征点按照从高到低的顺序选择特征点作为补充特征点,将候选特征点加入到跟踪成功的特征点集合中。
步骤1.8,去除半径MIN_DIST内的待选特征点。
每次补充特征点后,将该补充特征点的半径MIN_DIST(比如25个像素位置)距离内的待选特征点(或称待定特征点)去除,以此类推直到没有待选特征点。
按照上述步骤使用均匀分布Fast角点提取模块提取满足数量条件和距离条件的角点,同时记录角点跟踪次数track_cnt=1。数量条件是提取的FAST角点的个数等于第一阈值,比如N=200,预设距离条件为提取的各FAST角点的像素位置之间的最小距离等于第一距离阈值,比如角点最小距离MIN_DIST=25。
步骤二,稀疏直接法得到特征点跟踪结果;
在步骤一确定出需要跟踪的特征点之后,本实施例使用稀疏直接法得到特征点跟踪结果,稀疏直接法的整体思路为以特征点的帧间光度误差为优化目标,优化帧间相机位姿的本质矩阵E,最后通过本质矩阵E得到下一帧对应的候选特征点。
本实施例应用的稀疏直接法是根据所述第一帧的特征点的像素位置,所述第一帧与所述第二帧之间指示相机位姿变化的本质矩阵的初始值,所述第二帧对应的候选特征点的像素位置,构造使特征点对之间光度误差最小的目标函数,迭代优化所述目标函数,得到最优本质矩阵,根据所述最优本质矩阵,获得所述第二中对应的所述候选特征点的像素位置。
具体的,根据第一帧的特征点的像素位置(ui,vi),第一帧与第二帧之间指示相机位姿变化的本质矩阵的初始值,第二帧对应的候选特征点的像素位置(uj,vj)构造使特征点对之间光度误差最小的目标函数:
其中,I1为第一帧,I2为第二帧,N为特征点的个数,e为光度误差;
迭代优化所述目标函数使得光度误差e=I1(ui,vi)-I2(uj,vj)最小,从而得到最优本质矩阵,这一步骤包括:
将本质矩阵E变换为变换矩阵T,其中,本质矩阵E=t^R;符号^是矩阵运算符,表示矩阵E是平移向量t和旋转矩阵R的矩阵运算结果,^是矩阵运算符,如a=[x,y,z]则a^为[0,-z,y;z,0,-x;-y,x,0];这里说明的是E可以拆分成t和R。
将变换矩阵T映射到李代数空间上并表示为在李代数空间上优化ξ,使得minξJ(ξ)=minEJ(E),优化公式如下:
其中,令等于表示第一帧的特征点的图像梯度,则上述优化公式中的
优化过程中雅可比矩阵为
使用图优化库g2o或ceres完成求解得到ξ,将ξ投影到李群空间得到变换矩阵T,根据变换矩阵T求解得到最优本质矩阵E;
根据最优本质矩阵,计算第二帧对应的候选特征点的像素位置。比如通过本质矩阵E利用下列公式计算得到(uj,vj):(uj,vj,1)TK-TEK-1(ui,vi,1)=0,其中,K为相机内参矩阵,通过提前相机标定获得,此处为已知数。
步骤三,依据跟踪次数和特征点距离,筛选特征点;
将第二帧中得到的特征点根据跟踪次数track_cnt重新排序,从高到低加入跟踪成功特征点序列,同时保证特征点的最小距离MIN_DIST=25,具体的,通过选中一特征点比如第一候选特征点后,将其半径25(即第一距离阈值)以内的第二候选特征点删除方式实现。
步骤四,计算特征点的质量得分,选取满足阈值的M个点;
对步骤三过滤后剩下的特征点(即基准特征点)使用Shi-Tomasi进行评估,根据基准特征点的相邻区域内像素点的灰度值获得基准特征点的跟踪质量得分,将跟踪质量得分符合质量阈值的基准特征点作为跟踪成功的特征点,实际提取特征点个数记为M。
对于基准特征点,即初步跟踪成功的特征点确定其是否为特征点。例如,设I(u,v)为特征点P坐标(u,v)对应的图像灰度,以P点为中心建立一个N*N的窗口,将窗口平移[△x,△y],则可得该窗口内的灰度变化,并根据灰度变化构建灰度梯度矩阵为:
其中Ix=I(u+x,v)-2I(u,v)+I(u-x,v),Iy=I(u,v+y)-2I(u,y)+I(u,v-y)。通常取x=y=block_size=3。
计算得到灰度梯度矩阵的特征值(λ0,λ1),将第一特征值λ0和所述第二特征值λ1中的较小者作为基准特征点的跟踪质量得分,比如λ0>λ1,则二特征值λ1为跟踪质量得分,统计所有特征点的第二特征值λ1,得到最大值λmax=max(λ1)。依据最大值与预设常数的乘积得到质量阈值λmax*K,K=0.03;如果对应特征点的跟踪质量得分大于预设质量阈值,则该特征点通过筛选,被认为是质量高的特征点,该点跟踪成功。
步骤五,补齐(N-M)*2个特征点;
在步骤四之后,当跟踪成功的特征点数量M小于第一阈值N时,为保证跟踪效果,需要根据跟踪成功的特征的特征点,补齐(N-M)*2个特征点。
参见图2,补齐之前先执行步骤六,判断M是否小于0.5*N,或特征点响应值均值是否小于0.002;
当上一步跟踪成功的特征点数量M小于第二阈值即0.5*N时进行特征点补充,N为第一阈值。本实施例根据整体跟踪特征点的Harris响应值和跟踪个数作为参考,确定应使用FAST角点或Harris角点提取算法进行提取,两种算法提取的个数上限均为(N-M)*2。
也就是说,当跟踪成功的特征点的个数M大于第二阈值时,通过FAST算法对第二帧进行角点检测提取FAST角点将提取的FAST角点作为第一特征点;当跟踪成功的特征点的个数M小于第二阈值时通过Harris算法对第二帧进行角点检测提取Harris角点将提取Harris角点作为第一特征点。或,当跟踪成功的所有特征点的Harris响应值的均值小于预设均值阈值(比如0.002)时,通过Harris算法对第二帧进行角点检测提取Harris角点将提取Harris角点作为第一特征点,其中Harris响应值的计算将在下文说明。
步骤七,FAST特征点提取;
如果步骤六的判断结果为:M大于0.5*N且小于N,或者跟踪成功的所有特征点的Harris响应值的均值大于预设均值阈值0.002则进行FAST特征点提取。需要说明的是,步骤七与步骤一使用FAST特征点提取的步骤相同,步骤七和步骤一的区别在于FAST算法处理的数据对象不同,在步骤一中的数据对象是第一帧,在步骤七中数据对象为第二帧。因此,具体的提取过程参见前述步骤一中的说明,这里不再赘述。
步骤八,Harris特征点提取;
如果步骤六的判断结果为:M小于0.5*N,或者跟踪成功的所有特征点的Harris响应值的均值小于预设均值阈值0.002,则进行Harris特征点提取。
所述的Harris特征点提取包括:将第二帧划分为多个图像块,各图像块的面积等于第一距离阈值的平方;对各图像块,判断当前图像块中是否已经存在跟踪成功的特征点;是则处理下一个图像块,否则,对当前图像块计算所有像素点的灰度梯度矩阵,并计算灰度梯度矩阵的特征值,根据灰度梯度矩阵的特征值求出各像素点的响应值,将当前图像块中像素点按照响应值大小排序,将前3个(不限于3)像素点作为角点;依据各角点的响应值从高到低排序,将排序靠前的角点保留,将位于保留点的半径以内的角点删除,其中保留点的半径等于第一距离阈值。
参见图4,具体实现包括:步骤7.1:计算图像分块,这里取block_size=25*25。
步骤7.2:无特征点,计算各像素点响应值R;
这里是判断分块是否已提取特征点,若某分块中存在跟踪成功的特征点(uj,vj),则该分块舍弃不进行角点提取。
对某分块图像,计算所有像素点的灰度梯度矩阵
计算矩阵M特征值(λ0,λ1),求得各像素点的响应值R=λ0λ1-k(λ0+λ1)2,k∈(0.04,0.06)。
步骤7.3:选择R值较大的3个特征点;
每个分块取响应值较大的3个特征点加入待筛选特征点集合。
步骤7.4:特征点排序;
依据待筛选特征点的Harris响应值R对待选特征点集合中的点排序。
步骤7.5:判断是否无待选特征点;是则提取结束;否则执行步骤7.6;
本步骤具体是判断待筛选特征点集合中是否没有待选特征点,如果否,即还有待选特征点,则执行步骤7.6。
步骤7.6:加入特征点;按照响应值从高到低选择特征点,将选择的特征点加入跟踪成功的特征点集合。
步骤7.7:去除半径MIN_DIST内的待选特征点。
每次将一个特征点加入跟踪成功的特征点集合后,将该特征点的半径MIN_DIST距离内的待选特征点去除,直到没有待选特征点。
步骤九,更新跟踪次数。
在步骤九之后返回前述步骤二循环。将跟踪成功的特征点和新提取的特征点(即第一特征点)汇集在一起,将跟踪成功的特征点的跟踪次数track_cnt加1,第一特征点的跟踪次数对应track_cnt置1,这些特征点作为下一帧的输入。
至此,一次跟踪过程结束。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的对象在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
与前述图像特征点跟踪方法属于同一个技术构思,本发明实施例还提供了一种相机,图5是本发明一个实施例的相机的框图,参见图5,本实施例的相机500包括摄像头模组501和图像处理芯片502;
摄像头模组501,用于对环境进行拍摄得到图像帧序列,将所述图像帧序列发送至图像处理芯片502;
图像处理芯片502,用于对所述图像帧序列中的第一帧进行特征点检测,提取得到需要跟踪的特征点,并记录所述特征点的跟踪次数;根据所述特征点确定出第二帧中对应的候选特征点,其中,所述第二帧是所述第一帧的相邻的下一帧;基于所述跟踪次数以及所述候选特征点间的距离,对所述候选特征点进行过滤得到基准特征点;根据所述基准特征点的相邻区域内像素点的灰度值,获得所述基准特征点的跟踪质量得分,将跟踪质量得分符合质量阈值的基准特征点作为跟踪成功的特征点。
在本发明的一个实施例中,图像处理芯片502还用于,在将跟踪质量得分符合质量阈值的基准特征点作为跟踪成功的特征点之后,判断所述第二帧中跟踪成功的特征点的个数是否小于预设第一阈值,当所述跟踪成功的特征点的个数小于所述第一阈值时,提取所述第二帧中的特征点作为第一特征点,将所述第一特征点补充到第一特征点集合中并将所述第一特征点集合中的跟踪成功的特征点的跟踪次数加1,将所述第一特征点的跟踪次数设为1。
在本发明的一个实施例中,图像处理芯片502具体用于,判断所述跟踪成功的特征点的个数是否大于第二阈值,所述第二阈值小于所述第一阈值,是则,对所述第二帧进行角点检测提取预设数目个FAST角点,将提取的FAST角点作为所述第一特征点;否则,对所述第二帧进行角点检测提取预设数目个Harris角点将提取Harris角点作为所述第一特征点;其中,所述预设数目由所述第一阈值、所述跟踪成功的特征点的个数确定。
在本发明的一个实施例中,图像处理芯片502用于判断所述跟踪成功的特征点的Harris响应值的均值是否小于预设均值阈值,是则,对所述第二帧进行角点检测提取预设数目个Harris角点作为所述第一特征点;否则,对所述第二帧进行角点检测提取预设数目个FAST角点作为所述第一特征点,其中,所述预设数目由所述第一阈值、所述跟踪成功的特征点的个数确定。
在本发明的一个实施例中,第一帧为所述图像帧序列中的初始帧,图像处理芯片502用于对所述初始帧进行FAST角点检测,提取得到符合预设数量条件和预设距离条件的FAST角点,其中,所述预设数量条件为提取的FAST角点的个数等于第一阈值,所述预设距离条件为提取的各FAST角点的像素位置之间的最小距离等于第一距离阈值。
在本发明的一个实施例中,图像处理芯片502具体用于,获取所述候选特征点的跟踪次数,基于所述跟踪次数的大小对所述候选特征点排序,分别计算第二候选特征点与第一候选特征点之间的距离,其中,所述第一候选特征点是排序靠前的候选特征点,所述第二候选特征点是排序靠后的候选特征点;如果所述距离小于所述第一候选特征点的半径,则过滤所述第二候选特征点,其中,所述半径等于第一距离阈值;如果距离大于所述第一候选特征点的半径,则保留所述第二候选特征点,将所述第一候选特征点以及保留的所述第二候选特征点作为得到的基准特征点。
在本发明的一个实施例中,图像处理芯片502具体用于根据各所述基准特征点的灰度,获得所述基准特征点的灰度梯度矩阵,通过所述灰度梯度矩阵获得所述基准特征点的第一特征值和第二特征值,将所述第一特征值和所述第二特征值中的较小者作为所述基准特征点的跟踪质量得分;确定各所述基准特征点的跟踪质量得分中的最大值,并依据所述最大值与预设常数的乘积得到质量阈值;将各所述基准特征点的所述跟踪质量得分与所述质量阈值比较,若所述跟踪质量得分大于所述质量阈值,则确定跟踪质量得分符合所述质量阈值并将跟踪质量得分符合所述质量阈值的基准特征点作为跟踪成功的特征点。
需要说明的是,关于图5所示相机的各部件所执行的各步骤的举例解释说明,与前述方法实施例中的举例解释说明一致,这里不再一一赘述。
本发明的另一个实施例提供一种计算机可读存储介质,计算机可读存储介质存储计算机指令,计算机指令使所述计算机执行上述的方法。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图的一个流程或多个流程和/或方框图的一个方框或多个方框中指定的功能的装置。
需要说明的是术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本发明的说明书中,说明了大量具体细节。然而能够理解的是,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。类似地,应当理解,为了精简本发明公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,正如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
以上所述,仅为本发明的具体实施方式,在本发明的上述教导下,本领域技术人员可以在上述实施例的基础上进行其他的改进或变形。本领域技术人员应该明白,上述的具体描述只是更好的解释本发明的目的,本发明的保护范围以权利要求的保护范围为准。
Claims (10)
1.一种图像特征点跟踪方法,其特征在于,包括:
对相机拍摄的图像帧序列中的第一帧进行特征点检测,提取得到需要跟踪的特征点,并记录所述特征点的跟踪次数;
根据所述特征点确定出第二帧中对应的候选特征点,其中,所述第二帧是所述第一帧的相邻的下一帧;
基于所述跟踪次数以及所述候选特征点间的距离,对所述候选特征点进行过滤得到基准特征点;
根据所述基准特征点的相邻区域内像素点的灰度值,获得所述基准特征点的跟踪质量得分,将所述跟踪质量得分符合预设质量阈值的所述基准特征点作为跟踪成功的特征点。
2.根据权利要求1所述的方法,其特征在于,在所述将所述跟踪质量得分符合预设质量阈值的所述基准特征点作为跟踪成功的特征点之后,该方法还包括:
判断所述第二帧中跟踪成功的特征点的个数是否小于预设第一阈值,
当所述跟踪成功的特征点的个数小于所述第一阈值时,提取所述第二帧中的特征点作为第一特征点,将所述第一特征点补充到第一特征点集合中,并将所述第一特征点集合中的跟踪成功的特征点的跟踪次数加1,将所述第一特征点的跟踪次数设为1。
3.根据权利要求2所述的方法,其特征在于,所述当所述跟踪成功的特征点的个数小于所述第一阈值时,提取所述第二帧中的特征点作为第一特征点包括:
判断所述跟踪成功的特征点的个数是否大于第二阈值,所述第二阈值小于所述第一阈值,
是则,对所述第二帧进行角点检测提取预设数目个FAST角点作为所述第一特征点;
否则,对所述第二帧进行角点检测提取预设数目个Harris角点作为所述第一特征点;
其中,所述预设数目由所述第一阈值、所述跟踪成功的特征点的个数确定。
4.根据权利要求2所述的方法,其特征在于,所述当所述跟踪成功的特征点的个数小于所述第一阈值时,提取所述第二帧中的特征点作为第一特征点包括:
判断所述跟踪成功的特征点的Harris响应值的均值是否小于预设均值阈值,是则,对所述第二帧进行角点检测提取预设数目个Harris角点作为所述第一特征点;
否则,对所述第二帧进行角点检测提取预设数目个FAST角点作为所述第一特征点;
其中,所述预设数目由所述第一阈值、所述跟踪成功的特征点的个数确定。
5.根据权利要求1所述的方法,其特征在于,所述第一帧为所述图像帧序列中的初始帧,
所述对相机拍摄的图像帧序列中的第一帧进行特征点检测,提取得到需要跟踪的特征点包括:
对所述初始帧进行FAST角点检测,提取得到符合预设数量条件和预设距离条件的FAST角点,其中,所述预设数量条件为提取的FAST角点的个数等于第一阈值,所述预设距离条件为提取的各FAST角点的像素位置之间的最小距离等于第一距离阈值。
6.根据权利要求1所述的方法,其特征在于,所述基于所述跟踪次数以及所述候选特征点间的距离,对所述候选特征点进行过滤得到基准特征点包括:
获取所述候选特征点的跟踪次数,基于所述跟踪次数的大小对所述候选特征点排序,
分别计算第二候选特征点与第一候选特征点之间的距离,其中,所述第一候选特征点是排序靠前的候选特征点,所述第二候选特征点是排序靠后的候选特征点;
如果所述距离小于所述第一候选特征点的半径,则过滤所述第二候选特征点,其中,所述半径等于第一距离阈值;
如果距离大于所述第一候选特征点的半径,则保留所述第二候选特征点,
将所述第一候选特征点以及保留的所述第二候选特征点作为得到的基准特征点。
7.根据权利要求1所述的方法,其特征在于,所述根据所述基准特征点的相邻区域内像素点的灰度值,获得所述基准特征点的跟踪质量得分,将所述跟踪质量得分符合预设质量阈值的所述基准特征点作为跟踪成功的特征点包括:
根据各所述基准特征点的相邻区域内像素点的灰度值,获得所述基准特征点的灰度梯度矩阵,所述相邻区域是指以所述基准特征点为中心的区域相邻的区域,
通过所述灰度梯度矩阵获得所述基准特征点的第一特征值和第二特征值,将所述第一特征值和所述第二特征值中的较小者作为所述基准特征点的跟踪质量得分;
确定各所述基准特征点的跟踪质量得分中的最大值,并依据所述最大值与预设常数的乘积得到预设质量阈值;
将各所述基准特征点的所述跟踪质量得分与所述预设质量阈值比较,若所述跟踪质量得分大于所述预设质量阈值,则确定跟踪质量得分符合所述预设质量阈值,并将所述跟踪质量得分符合所述预设质量阈值的所述基准特征点作为跟踪成功的特征点。
8.一种相机,其特征在于,包括摄像头模组和图像处理芯片,
所述摄像头模组,用于对环境进行拍摄得到图像帧序列,将所述图像帧序列发送至所述图像处理芯片;
所述图像处理芯片,用于对所述图像帧序列中的第一帧进行特征点检测,提取得到需要跟踪的特征点,并记录所述特征点的跟踪次数;根据所述特征点确定出第二帧中对应的候选特征点,其中,所述第二帧是所述第一帧的相邻的下一帧;基于所述跟踪次数以及所述候选特征点间的距离,对所述候选特征点进行过滤得到基准特征点;根据所述基准特征点的相邻区域内像素点的灰度值,获得所述基准特征点的跟踪质量得分,将所述跟踪质量得分符合预设质量阈值的所述基准特征点作为跟踪成功的特征点。
9.根据权利要求8所述的相机,其特征在于,
所述图像处理芯片,还用于在将所述跟踪质量得分符合预设质量阈值的所述基准特征点作为跟踪成功的特征点之后,判断所述第二帧中跟踪成功的特征点的个数是否小于预设第一阈值,当所述跟踪成功的特征点的个数小于所述第一阈值时,提取所述第二帧中的特征点作为第一特征点,将所述第一特征点补充到第一特征点集合中并将所述第一特征点集合中的跟踪成功的特征点的跟踪次数加1,将所述第一特征点的跟踪次数设为1。
10.根据权利要求9所述的相机,其特征在于,
所述图像处理芯片,具体用于判断所述跟踪成功的特征点的个数是否大于第二阈值,所述第二阈值小于所述第一阈值,是则,对所述第二帧进行角点检测提取预设数目个FAST角点,将提取的FAST角点作为所述第一特征点;否则,对所述第二帧进行角点检测提取预设数目个Harris角点将提取Harris角点作为所述第一特征点;其中,所述预设数目由所述第一阈值、所述跟踪成功的特征点的个数确定。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910135271.0A CN109978911B (zh) | 2019-02-22 | 2019-02-22 | 一种图像特征点跟踪方法和相机 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910135271.0A CN109978911B (zh) | 2019-02-22 | 2019-02-22 | 一种图像特征点跟踪方法和相机 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109978911A true CN109978911A (zh) | 2019-07-05 |
CN109978911B CN109978911B (zh) | 2021-05-28 |
Family
ID=67077341
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910135271.0A Active CN109978911B (zh) | 2019-02-22 | 2019-02-22 | 一种图像特征点跟踪方法和相机 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109978911B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110487274A (zh) * | 2019-07-30 | 2019-11-22 | 中国科学院空间应用工程与技术中心 | 用于弱纹理场景的slam方法、系统、导航车及存储介质 |
CN111144483A (zh) * | 2019-12-26 | 2020-05-12 | 歌尔股份有限公司 | 一种图像特征点过滤方法以及终端 |
CN111242975A (zh) * | 2020-01-07 | 2020-06-05 | 影石创新科技股份有限公司 | 自动调整视角的全景视频渲染方法、存储介质及计算机设备 |
WO2021056501A1 (zh) * | 2019-09-29 | 2021-04-01 | 深圳市大疆创新科技有限公司 | 提取特征点的方法、可移动平台及存储介质 |
CN112801980A (zh) * | 2021-01-28 | 2021-05-14 | 浙江聚视信息技术有限公司 | 一种图像的角点检测方法及装置 |
CN112906558A (zh) * | 2021-02-08 | 2021-06-04 | 浙江商汤科技开发有限公司 | 图像特征的提取方法、装置、计算机设备及存储介质 |
CN112927268A (zh) * | 2021-03-17 | 2021-06-08 | 清华大学 | 角点跟踪方法、装置、计算机设备及可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101169827A (zh) * | 2007-12-03 | 2008-04-30 | 北京中星微电子有限公司 | 一种对图像中的特征点进行跟踪的方法及装置 |
US20100280365A1 (en) * | 2005-05-23 | 2010-11-04 | The Penn State Research Foundation | Guidance method based on 3d-2d pose estimation and 3d-ct registration with application to live bronchoscopy |
CN102592129A (zh) * | 2012-01-02 | 2012-07-18 | 西安电子科技大学 | 基于场景驱动的智能手机图像特征点选取方法 |
CN104318590A (zh) * | 2014-11-10 | 2015-01-28 | 成都信升斯科技有限公司 | 视频中的目标跟踪方法 |
CN109102524A (zh) * | 2018-07-17 | 2018-12-28 | 广州视源电子科技股份有限公司 | 图像特征点的跟踪方法和跟踪装置 |
CN109272556A (zh) * | 2018-08-31 | 2019-01-25 | 青岛小鸟看看科技有限公司 | 一种飞行时间tof相机的标定方法和装置 |
-
2019
- 2019-02-22 CN CN201910135271.0A patent/CN109978911B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100280365A1 (en) * | 2005-05-23 | 2010-11-04 | The Penn State Research Foundation | Guidance method based on 3d-2d pose estimation and 3d-ct registration with application to live bronchoscopy |
CN101169827A (zh) * | 2007-12-03 | 2008-04-30 | 北京中星微电子有限公司 | 一种对图像中的特征点进行跟踪的方法及装置 |
CN102592129A (zh) * | 2012-01-02 | 2012-07-18 | 西安电子科技大学 | 基于场景驱动的智能手机图像特征点选取方法 |
CN104318590A (zh) * | 2014-11-10 | 2015-01-28 | 成都信升斯科技有限公司 | 视频中的目标跟踪方法 |
CN109102524A (zh) * | 2018-07-17 | 2018-12-28 | 广州视源电子科技股份有限公司 | 图像特征点的跟踪方法和跟踪装置 |
CN109272556A (zh) * | 2018-08-31 | 2019-01-25 | 青岛小鸟看看科技有限公司 | 一种飞行时间tof相机的标定方法和装置 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110487274A (zh) * | 2019-07-30 | 2019-11-22 | 中国科学院空间应用工程与技术中心 | 用于弱纹理场景的slam方法、系统、导航车及存储介质 |
CN110487274B (zh) * | 2019-07-30 | 2021-01-29 | 中国科学院空间应用工程与技术中心 | 用于弱纹理场景的slam方法、系统、导航车及存储介质 |
WO2021056501A1 (zh) * | 2019-09-29 | 2021-04-01 | 深圳市大疆创新科技有限公司 | 提取特征点的方法、可移动平台及存储介质 |
CN111144483A (zh) * | 2019-12-26 | 2020-05-12 | 歌尔股份有限公司 | 一种图像特征点过滤方法以及终端 |
CN111144483B (zh) * | 2019-12-26 | 2023-10-17 | 歌尔股份有限公司 | 一种图像特征点过滤方法以及终端 |
CN111242975A (zh) * | 2020-01-07 | 2020-06-05 | 影石创新科技股份有限公司 | 自动调整视角的全景视频渲染方法、存储介质及计算机设备 |
CN111242975B (zh) * | 2020-01-07 | 2023-08-25 | 影石创新科技股份有限公司 | 自动调整视角的全景视频渲染方法、存储介质及计算机设备 |
CN112801980A (zh) * | 2021-01-28 | 2021-05-14 | 浙江聚视信息技术有限公司 | 一种图像的角点检测方法及装置 |
CN112801980B (zh) * | 2021-01-28 | 2023-08-08 | 浙江聚视信息技术有限公司 | 一种图像的角点检测方法及装置 |
CN112906558A (zh) * | 2021-02-08 | 2021-06-04 | 浙江商汤科技开发有限公司 | 图像特征的提取方法、装置、计算机设备及存储介质 |
CN112927268A (zh) * | 2021-03-17 | 2021-06-08 | 清华大学 | 角点跟踪方法、装置、计算机设备及可读存储介质 |
CN112927268B (zh) * | 2021-03-17 | 2022-08-05 | 清华大学 | 角点跟踪方法、装置、计算机设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109978911B (zh) | 2021-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109978911A (zh) | 一种图像特征点跟踪方法和相机 | |
CN108537876B (zh) | 三维重建方法、装置、设备及存储介质 | |
JP7081140B2 (ja) | 物体認識装置、物体認識方法及び物体認識プログラム | |
CN108932735B (zh) | 一种生成深度学习样本的方法 | |
US11003939B2 (en) | Information processing apparatus, information processing method, and storage medium | |
JP5087264B2 (ja) | 画像処理装置及びその方法 | |
US20110176722A1 (en) | System and method of processing stereo images | |
CN108322724B (zh) | 图像立体匹配方法以及双目视觉设备 | |
EP3654234B1 (en) | Moving object detection system and method | |
CN109974721A (zh) | 一种基于高精度地图的视觉回环检测方法和装置 | |
US11348323B2 (en) | Information processing apparatus for correcting three-dimensional map, information processing method for correcting three-dimensional map, and non-transitory computer-readable storage medium for correcting three-dimensional map | |
CN110956646B (zh) | 目标跟踪方法、装置、设备及存储介质 | |
KR20140088697A (ko) | 깊이 영상 처리 장치 및 방법 | |
WO2018053952A1 (zh) | 一种基于场景样本库的影视图像深度提取方法 | |
JP7479324B2 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
CN106780567B (zh) | 一种融合颜色和梯度直方图的免疫粒子滤波扩展目标跟踪方法 | |
CN110111341B (zh) | 图像前景获取方法、装置及设备 | |
CN106033613B (zh) | 目标跟踪方法及装置 | |
CN111815679A (zh) | 一种基于双目相机的空间目标特征点丢失期间轨迹预测方法 | |
CN109377524B (zh) | 一种单幅图像深度恢复方法和系统 | |
KR101766823B1 (ko) | 불규칙한 조도 변화에 강건한 영상 기반 주행거리 측정 시스템 및 방법 | |
JP2004054947A (ja) | 物体照合システム、物体照合方法および物体照合プログラム | |
CN113031582A (zh) | 机器人、定位方法及计算机可读存储介质 | |
Han et al. | Keyslam: robust RGB-D camera tracking using adaptive VO and optimal key-frame selection | |
CN109785312A (zh) | 一种图像模糊检测方法、系统及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |