CN110046623B - 一种图像特征点提取方法和相机 - Google Patents

一种图像特征点提取方法和相机 Download PDF

Info

Publication number
CN110046623B
CN110046623B CN201910161155.6A CN201910161155A CN110046623B CN 110046623 B CN110046623 B CN 110046623B CN 201910161155 A CN201910161155 A CN 201910161155A CN 110046623 B CN110046623 B CN 110046623B
Authority
CN
China
Prior art keywords
image
original
pixel
characteristic
points
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.)
Active
Application number
CN201910161155.6A
Other languages
English (en)
Other versions
CN110046623A (zh
Inventor
周锋宜
吴涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qingdao Xiaoniao Kankan Technology Co Ltd
Original Assignee
Qingdao Xiaoniao Kankan Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Qingdao Xiaoniao Kankan Technology Co Ltd filed Critical Qingdao Xiaoniao Kankan Technology Co Ltd
Priority to CN201910161155.6A priority Critical patent/CN110046623B/zh
Publication of CN110046623A publication Critical patent/CN110046623A/zh
Application granted granted Critical
Publication of CN110046623B publication Critical patent/CN110046623B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/136Segmentation; Edge detection involving thresholding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20016Hierarchical, coarse-to-fine, multiscale or multiresolution image processing; Pyramid transform

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Image Analysis (AREA)

Abstract

本发明公开了一种图像特征点提取方法和相机,方法包括:获取相机采集的原始图像,根据原始图像形成图像金字塔;将图像金字塔的底层图像划分为多个像素块,确定与像素块对应的第一特征点阈值,使用第一特征点阈值对像素块进行特征点检测第一特征点;利用底层图像信息更新第一特征点阈值得到第二特征点阈值,使用第二特征点阈值对第二层图像的相应像素块进行特征点检测,得到第二特征点。根据图像金字塔确定原始图像上分别与第一特征点和第二特征点对应的原始特征点,按照原始特征点的像素位置筛选原始特征点得到提取结果。本发明实施例同时满足了图像特征点提取过程中的特征点离散分布、尺度不变性、实时性要求。

Description

一种图像特征点提取方法和相机
技术领域
本发明涉及图像处理技术领域,具体涉及一种图像特征点提取方法和相机。
背景技术
图像特征提取和匹配是实现图像拼接、图像校准、目标识别和跟踪的关键步骤之一,已经广泛应用在三维重建、视觉导航、SLAM等领域中。国内外学者在特征提取进行了大量研究,但多集中在尺度不变性、旋转不变性等鲁棒性的改进上,而对于提取阈值设置的改进比较简单,例如,对于FAST特征点提取往往采用设定固定阈值或者使用多阈值多次特征提取的方式来实现离散分布效果。采用设定固定阈值的方式在光照变化剧烈情况下容易导致提取的特征点数量不稳定,而使用多阈值多次提取特征点的方式虽然能够解决这一问题,但提取耗时会随着提取次数显著增加。
由此可知,现有技术的图像特征点提取不能同时满足图像特征点离散分布、尺度不变性、实时性要求,这一技术问题亟待解决。
发明内容
本发明提供了一种图像特征点提取方法和相机,同时满足了图像特征点提取过程中的图像特征点离散分布、尺度不变性、实时性要求。
根据本申请的一个方面,提供了一种图像特征点提取方法,包括:
获取相机采集的原始图像,根据所述原始图像形成图像金字塔;
将所述图像金字塔的底层图像划分为多个像素块,确定与所述像素块对应的第一特征点阈值,根据所述第一特征点阈值对所述像素块进行特征点检测,得到第一特征点,其中,所述底层图像为所述原始图像;
根据与当前层图像相邻的下一层图像的信息,获得与所述当前层图像的各像素块对应的第二特征点阈值,根据所述第二特征点阈值对所述当前层图像的相应像素块进行特征点检测,得到第二特征点,其中,所述当前层是所述图像金字塔的第二层至顶层中的任一层;
按照原始特征点的像素位置筛选所述原始特征点,得到图像特征点提取结果,其中,所述原始特征点包括所述第一特征点以及由所述第二特征点投影到原始图像得到的特征点。
根据本申请的另一个方面,提供了一种相机,包括摄像头模组和图像处理芯片,
所述摄像头模组,用于采集原始图像,将所述原始图像发送至所述图像处理芯片;
所述图像处理芯片,用于获取相机采集的原始图像,根据所述原始图像形成图像金字塔;将所述图像金字塔的底层图像划分为多个像素块,确定与所述像素块对应的第一特征点阈值,根据所述第一特征点阈值对所述像素块进行特征点检测,得到第一特征点,其中,所述底层图像为所述原始图像;利用与当前层图像相邻的下一层图像的信息,获得与所述当前层图像的各像素块对应的第二特征点阈值,根据所述第二特征点阈值对所述当前层图像的相应像素块进行特征点检测,得到第二特征点,其中,所述当前层是所述图像金字塔的第二层至顶层中的任一层;按照所述原始特征点的像素位置筛选所述原始特征点,得到图像特征点提取结果,其中,所述原始特征点包括所述第一特征点以及由所述第二特征点投影到原始图像得到的特征点。
有益效果:应用本发明实施例的技术方案,通过构建图像金字塔满足图像尺度不变性要求,通过对原始图像分块计算阈值确定各块的特征点提取阈值,金字塔其他层图像则根据上一层图像信息更新阈值,避免了采用固定阈值导致的特征点数量不稳定的问题,最后对所有的特征点进行筛选保证离散分布。本实施例的方法只用FAST提取一次特征点,实时性得到了保证,且推广性好,特别是在纹理分布不均匀场景(如大量白墙、雪地)和光照剧烈变化情况下,体现出较大的优势。
附图说明
图1是本发明一个实施例的图像特征点提取方法的流程图;
图2是本发明另一个实施例的图像特征点提取方法的流程示意图;
图3是本发明一个实施例的特征点四叉树构建流程图;
图4是本发明一个实施例的相机的框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的设计构思在于:本发明实施例通过图像分块确定阈值、提取特征点,再使用树形结构存储特征点、剔除低响应值特征点,保证特征点数量稳定且离散、均匀分布,防止特征点聚集退化到特征点共面情况的出现,有利于提高不同图像之间特征点的匹配成功率和相对变换矩阵的精度。通过设计阈值自适应算法提取原始图像特征点,使用双线性插值确定图像金字塔高层的阈值后再提取高层图像上的特征点,在保证图像特征点均匀分布、特征点满足尺度不变性的条件下,大大降低了特征点提取的耗时,有很高的应用价值。
图1是本发明一个实施例的图像特征点提取方法的流程图,参见图1,本实施例的图像特征点提取方法包括:
步骤S101,获取相机采集的原始图像,根据所述原始图像形成图像金字塔;
步骤S102,将所述图像金字塔的底层图像划分为多个像素块,确定与所述像素块对应的第一特征点阈值,根据所述第一特征点阈值对所述像素块进行特征点检测,得到第一特征点,其中,所述底层图像为所述原始图像;
步骤S103,根据与当前层图像相邻的下一层图像的信息,获得与所述当前层图像的各像素块对应的第二特征点阈值,根据所述第二特征点阈值对所述当前层图像的相应像素块进行特征点检测,得到第二特征点,其中,所述当前层是所述图像金字塔的第二层至顶层中的任一层;
步骤S104,按照原始特征点的像素位置筛选所述原始特征点,得到图像特征点提取结果,其中,所述原始特征点包括所述第一特征点以及由所述第二特征点投影到原始图像得到的特征点。
由图1所示可知,本实施例的图像特征点提取方法,获取原始图像,根据原始图像形成图像金字塔,通过构建图像金字塔满足图像尺度不变性要求。将图像金字塔的底层图像划分为多个像素块,确定与像素块对应的第一特征点阈值后进行特征点提取,通过对原始图像分块计算阈值确定各块的特征点提取阈值,金字塔其他层图像则根据上一层图像信息更新阈值,避免了采用固定阈值导致的特征点数量不稳定的问题。按照原始特征点的像素位置筛选原始特征点,即对所有的特征点进行筛选保证离散分布。本实施例只用FAST提取一次特征点,实时性得到了保证,且推广性好,特别是在纹理分布不均匀场景(如大量白墙、雪地)和光照剧烈变化情况下。
为了保证图像特征点离散分布、尺度和方向不变性、实时性等要求,本发明实施例提供了基于自适应阈值FAST特征提取和四叉树筛选的离散分布特征点快速提取方法,该方法对原图像分块计算局部均值和方差从而确定各分块图像的FAST特征点提取阈值,金字塔其他层图像则根据上一层局部均值和方差信息更新阈值,最后对所有的特征点利用构建的四叉树进行筛选完成提取。
本实施例的步骤主要包括:
步骤2-1,构建图像金字塔。
为了满足特征点的尺度不变性,本实施例获取相机采集的原始图像,根据原始图像构建图像金字塔,即,以原始图像为金字塔底层,使用高斯卷积和线性缩放后放入下一层,共循环Level次,构建Level层的图像金字塔。
步骤2-2,底层图像自适应阈值计算。
如前述,图像金字塔的底层图像即不经任何处理的原始图像。底层图像的自适应阈值的计算具体的将图像金字塔的底层图像划分为多个像素块,确定与像素块对应的第一特征点阈值,根据所述第一特征点阈值对所述像素块进行特征点检测,得到第一特征点。也就是说先将图像分割成相同大小的分块图像,对各分块图像计算局部均值和均方差,其中均方差可以使用累计积分图方式进行加速。而后依据均值和方差获得FAST特征提取阈值,并设置阈值范围的上下限,适应FAST-9提取特征点。
注:使用累计积分图加速计算均方差具体是利用下式计算均方差:
Figure BDA0001984688350000051
步骤2-3,使用插值处理图像金字塔。
一个实施例中,根据与当前层图像相邻的下一层图像的信息,获得与所述当前层图像的各像素块对应的第二特征点阈值,根据所述第二特征点阈值对所述当前层图像的相应像素块进行特征点检测,得到第二特征点,其中,所述当前层是所述图像金字塔的第二层至顶层中的任一层。也就是说,在计算底层图像的特征提取阈值之后,根据底层图像的信息计算第2层图像的特征提取阈值,以此类推直至图像金字塔的顶层。比如,使用双线性插值算法和特定更新策略顺序更新其他层的局部均值和均方差,并以此确定所有层的各分块图像的FAST-9阈值并完成特征点提取工作。
双线性插值原理如下:设li层基于局部均方差所得n*m分块图像FAST特征提取阈值Tfast[n*m],则li+1层有(n/s)*(m/s)分块。对于li+1层中第(x,y)块图像,将该块分块图像中心投影到li层,坐标为(x0,y0),按照到相邻4块图像中心距离使用双线性插值来计算新的均值μ和方差var。
插值计算过程如下:
步骤231,双线性插值计算阈值。
根据所述底层图像与所述第二层图像的缩放比例,以及所述底层图像的像素块个数,确定所述第二层图像的第二中心点所在像素块的多个邻域块,其中,所述第二中心点由所述底层图像的第一中心点投影得到;根据各所述邻域块的均值,并使用双线性插值对所述第二中心点所在像素块进行插值,获得所述第二中心点所在像素块的第二均值,并由所述第二均值以及各所述邻域块的均值得到第二方差;基于所述第二均值和所述第二方差更新所述第一特征点阈值,得到第二特征点阈值。
比如,坐标为(x0,y0)的点相邻的四块图像均值为μ11=(x1,y1),μ12=(x1,y2),μ21=(x2,y1),μ22=(x2,y2),
先在x方向进行线性插值,得到:
Figure BDA0001984688350000061
Figure BDA0001984688350000062
接着对y方向进行插值,得到:
Figure BDA0001984688350000063
最后更新均方差
Figure BDA0001984688350000064
需要说明的是,前述步骤2-3中的双线性插值可能会出现Tfast=-1,图像均方差Var=0的特殊情况,这时,局部均值更新仍然取平均值。比如,设Var=0的块为块a3,其他块为a0,a1,a2,均值更新与前述插值运算中的均值更新步骤相同,而均方差的区别是用4个分块的均值作为a3的局部均方差计算依据:
Figure BDA0001984688350000065
步骤2-4,FAST特征提取和筛选。
一个实施例中,在提取了底层图像上的第一特征点以及上层图像中每一层的第二特征点之后,确定第二特征点对应的底层图像上的原始特征点,由于底层图像上的第一特征点不需要做高层到底层的特征点映射,所以直接将底层图像上的提取的第一特征点作为原始特征点。即,根据图像金字塔,确定所述原始图像上分别与所述第一特征点和所述第二特征点对应的原始特征点,按照原始特征点的像素位置筛选原始特征点,得到图像特征点提取结果。比如构建特征点四叉树存储结构进行节点***,在***到特征点提取上限后结束构建。对四叉树结构各叶子节点中储存的特征点,依据Harris响应值排序,每个节点只取最大值作为输出结果。如此,保证了最终提取的特征点满足在图像上离散分布的要求,方便用特征点匹配解算相机相对运动,提高精确性。
需要说明的是,前述步骤2-1中在构建图像金字塔时,使用实现图像尺度变换的唯一线性核函数高斯卷积,对于二维图像的尺度空间定义为:
L(x,y,σ)=G(x,y,σ)*I(x,y)
Figure BDA0001984688350000071
这里取高斯核函数σ=2。
设置原始图像为金字塔底层,对每一层图像作高斯卷积和线性缩放后放入下一层,共循环Level次,构建Level=4层,下采样缩放比例s=1.2的图像金字塔。
另外,前述步骤2-2中对图像分块计算阈值时,将底层图像划分为多个大小相同的像素块,根据各所述像素块中像素点的灰度值判断所述像素块是否为异常块;如果所述像素块是异常块,则将所述像素块的方差设为第一常数,将所述第一特征点阈值设为第二常数,并对所述异常块不进行特征点检测;如果所述像素块不是异常块,则根据所述像素块中像素点的灰度值计算均值和方差,并根据所述均值和所述方差,获得所述第一特征点阈值。
比如,首先,按照30×30图像尺寸对图像分块,由于后续提取FAST特征点需要遍历到各像素周围半径为3的圆,因此分块后用作特征提取的图像实际为36*36(扩充边界Border=3)。
其次,对每块36*36大小的灰度图像,用Iij表示(i,j)位置处的像素值,则该图像块内的局部平均值和局部均方差,如下式所示:
Figure BDA0001984688350000081
Figure BDA0001984688350000082
这里的局部是相对于整块图像而言的局部。
再次,由局部平均值和均方差计算出FAST特征提取参考阈值,比如通过公式
Figure BDA0001984688350000083
计算出参考阈值。
本实施例中,在所述确定与所述像素块对应的第一特征点阈值的步骤之后,该方法还包括:将所述第一特征点阈值分别与预设阈值范围的上限值和下限值进行比较得到比较结果;若所述比较结果为所述第一特征点阈值在所述阈值范围内,则不对所述第一特征点阈值进行修改;若所述比较结果为所述第一特征点阈值大于所述上限值,则将所述上限值赋值给所述第一特征点阈值,若所述比较结果为所述第一特征点阈值小于所述下限值,则将所述下限值赋值给所述第一特征点阈值。比如,对计算所得参考阈值T设置上下限T∈[10,30]得到最终阈值Tfast
这里的根据各所述像素块中像素点的灰度值判断所述像素块是否为异常块包括:对所述像素块中像素点的灰度值按照从大到小排序,计算前预设数目个灰度值的均值得到第一均值,并计算后预设数目个灰度值的均值得到第二均值;判断所述第一均值和所述第二均值的差值是否小于预设门限值;是则,确定所述像素块是异常块,否则,确定所述像素块不是异常块。
比如,计算分块图像均值时提取3个灰度值最大值和3个灰度最小值,若最大值均值和最小值均值差值小于5,则记阈值Tfast=-1,图像均方差Var=0,该图像分块不进行特征点提取。如果最大值均值和最小值均值差值小于5表明这块图像可能是纹理分布不均匀的区域,不具有特征点。
另外,需要说明的是,前述步骤2-4,FAST特征提取和筛选中是按照所述原始特征点的像素位置筛选原始特征点的,具体实现时,构建所述原始图像的树形存储结构,将所述原始图像等分为多个像素块,将各所述像素块中的所述原始特征点对应放入所述树形存储结构的节点中;根据所述节点中的原始特征点的个数循环***,得到新增节点,将所述新增节点添加到所述树形存储结构中得到第一节点列表;获取所述第一节点列表的各节点中所述原始特征点的响应值,按照所述响应值大小对所述原始特征点排序,筛选出排在第一位的所述原始特征点。
四叉树的构建和循环过程是:根据初始节点列表的节点中所述原始特征点的个数循环***,具体包括判断所述初始节点列表的第一节点中的所述原始特征点个数是否大于1,是则,生成N个第二节点,并将与所述第一节点对应的像素块等分为N个子区域,将所述N个子区域中的所述原始特征点对应放入所述N个第二节点中,其中,N为偶数;将所述原始特征点个数不为0的所述第二节点作为新增节点,添加到所述初始节点列表中,得到第一节点列表长度;否则,从所述初始节点列表中删除所述第一节点,得到第一节点列表长度;判断所述第一节点列表长度是否大于或等于预设长度阈值,是则,停止***得到所述第一节点列表,否则返回执行根据初始节点列表的节点中所述原始特征点的个数循环***的步骤。
由上可知,本实施例中特征点的筛选使用了四叉树实现,在保证特征点散布的前提下提高了角点稳定性和质量。当四叉树叶子节点到达Nmax时,树形结构停止分叉构建,对四叉树结构各叶子节点储存特征点依据响应值排序,每个节点只取最大的特征点。
一个实施例中,四叉树筛选特征点具体包括以下子步骤:
步骤241,初始化结构体。每一个节点Node包括矩形框信息和图像在该矩形框内的所有特征点,原始图像均分4块放入队列,该队列Q作为初始化入口,初始队列长度L=4。
步骤242,节点循环***。依次从头到尾取队列Q中节点Nodei,将该结构体内矩形等分成4块,与分割后矩形内的特征点构成新节点,若新生成节点内无特征点,则删除该节点,其他放入队列Q的头部,队列长度更新(每次***增加1~3个)。对于新放入头部的结构体Nodei判断其是否继续可分(根据节点内特征点个数判断)。
步骤243,判定是否结束,当所有Q内节点Node都不可再分或者队列节点数L≥Nmax,四叉树构建结束。
步骤244,节点内特征点排序,输出结果。遍历所有Node,取其中特征点响应值最大的特征点作为该节点输出。
图2是本发明另一个实施例的图像特征点提取方法的流程示意图,参见图2对本发明实施例的图像特征点提取方法作进一步说明,
具体实现步骤如下:流程开始,
执行步骤一,获得用于特征提取的图像。
首先,是输入待处理图像,比如从相机中获取原始图像,将原始图像转成灰度图,原始图像例如是一张640*480尺寸的图像。这里的相机用于采集原始图像。
步骤二,图像分块处理;
一个实施例中,将原始图像分块的起始点步长设置为30*30,每次从起始点取36*36大小的分块。即,首先按照30*30图像尺寸分块,由于后续提取FAST特征点需要遍历到各像素周围半径为3的圆,因此分块后用作特征提取的图像实际为36*36(相当于扩充边界Border=3)。
执行步骤210,计算分块图像均值、最大值与最小值之差△;
对每块36×36大小的灰度图像,用Iij表示(i,j)位置处的像素值,遍历分块图像,求取三个最大值μ_maxμ_maxμ_max、三个最小值均值μ_min和局部均值μ。
步骤211,判断△是否小于5;是则确定阈值=-1方差=0,执行步骤212,否则执行步骤213;
这里是计算μ_max与μ_min的差值△,判断△是否小于5,若小于5,确定该分块的均方差Var=0,阈值设置Tfast=-1,不进行特征点提取;若大于5,则计算积分图和方差。
步骤212,FAST-9提取特特征点;
根据上一步骤中的均值和方差计算FAST-9阈值(由于图像金字塔的底层图像为原始图像,所以原始图像的阈值即第一特征点阈值),计算公式为
Figure BDA0001984688350000111
在确定与像素块对应的第一特征点阈值的步骤之后,该方法还包括将所述第一特征点阈值分别与预设阈值范围(比如10-30限定的范围)的上限值和下限值进行比较得到比较结果确定最终阈值,比如,根据调试经验,k1∈[1,2],k2应当根据使用场景的亮度调节,一般设置为k2=1.5,最后限制阈值Tfast=T∈[10,30]。使用OpenCV中的FAST函数提取特征点:FAST(InputImage,KeyPoints,Tfast,true)。
步骤213,用积分图加速计算均方差;
计算积分图
Figure BDA0001984688350000112
并利用积分图计算均方差,公式如下:
Figure BDA0001984688350000113
步骤214,用均值和均方差计算阈值,之后执行步骤212。
步骤三,高斯模糊和下采样构建金字塔;
循环Level=4构建图像金字塔,从底层开始对图像使用OpenCV函数resize和GaussianBlur得到高一层图像。resize(Image[level-1],Image[level],newSize,0,0,INTER_LINEAR)GaussianBlur(Image[level-1],Image[level],Size(5,5),2,2,BORDER_REFLECT_101)。
步骤四,双线性差值更新阈值FAST提取特征点;
对于金字塔某层分块图像中心(x,y),投影到上一层图像中坐标,根据与其相邻的四块图像的均值,先在x方向进行线性插值后在y方向进行线性插值,最后根据均方差。这里的插值顺序不限。即可以先进行y方向插值。另外,在出现相邻分块Var=0时,设分块为a3,其他块为a0,a1,a2,均值更新与正常情况下相同,而均方差计算将a3剔除,不参与计算。其他退化情况与前述均方差计算类似。使用计算所得Var(x0,y0)和μ(x0,y0)更新阈值T=k1*
Figure BDA0001984688350000121
而后使用FAST函数提取特征点。
步骤五,构建特征点四叉树;
参考图3,首先初始化结构体。每一个节点Node包括图像在该矩形框内的所有特征点,本实施例中将原始图像均分4块放入队列,该队列Q作为初始化入口,初始队列长度L=4。
节点循环***。参见图3,依次从头到尾取队列Q中节点Nodei,将该结构体内矩形等分成4块,与分割后矩形内的特征点构成新节点,若新生成节点内无特征点,则删除该节点,其他放入队列Q的头部,队列长度更新(正常***增加3个节点,出现节点删除时则少于3个)。对于新放入头部的节点Nodei判断其是否继续可分(根据节点内特征点个数判断)。
结束标志位为所有Q内节点Node都不可再分或者队列节点数L≥Nmax
循环结束后,节点内特征点排序,只取其中特征点响应值最大的特征点作为该节点输出。
1、本发明提出了一种基于快速离散特征点提取方法,能够在满足提取的特征点离散分布、特征点鲁棒性,能够正常工作在视觉里程计、SLAM前端和视觉跟踪***中。2、本发明采用预处理计算阈值,只用FAST提取一次特征点,实时性得到了保证,且推广性较好,特别是在纹理分布不均匀场景(如大量白墙、雪地)和光照剧烈变化情况下,体现出较大的优势。下面以一个具体的应用场景重点说明本发明实施例的方法的实现步骤。参见图2,一次具体的图像特征点提取对
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的对象在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
图4是本发明一个实施例的相机的框图,参见图4,本实施例的相机400包括:摄像头模组401和图像处理芯片402,
所述摄像头模组401,用于采集原始图像,将所述原始图像发送至所述图像处理芯片402;
所述图像处理芯片402,用于获取相机采集的原始图像,根据所述原始图像形成图像金字塔;将所述图像金字塔的底层图像划分为多个像素块,确定与所述像素块对应的第一特征点阈值,根据所述第一特征点阈值对所述像素块进行特征点检测,得到第一特征点,其中,所述底层图像为所述原始图像;利用与当前层图像相邻的下一层图像的信息,获得与所述当前层图像的各像素块对应的第二特征点阈值,根据所述第二特征点阈值对所述当前层图像的相应像素块进行特征点检测,得到第二特征点,其中,所述当前层是所述图像金字塔的第二层至顶层中的任一层;按照所述原始特征点的像素位置筛选所述原始特征点,得到图像特征点提取结果,其中,所述原始特征点包括所述第一特征点以及由所述第二特征点投影到原始图像得到的特征点。
在本发明的一个实施例中,所述图像处理芯片402具体用于根据所述下一层图像与所述当前层图像的缩放比例,以及所述下一层图像的像素块个数,确定所述当前层图像的第二中心点所在像素块的多个邻域块,其中,所述第二中心点由所述下一层图像的第一中心点投影得到;根据各所述邻域块的均值,并使用双线性插值对所述第二中心点所在像素块进行插值,获得所述第二中心点所在像素块的第二均值,并由所述第二均值以及各所述邻域块的均值得到第二方差;基于所述第二均值和所述第二方差,得到第二特征点阈值。
在本发明的一个实施例中,所述图像处理芯片402具体用于构建所述原始图像的树形存储结构,将所述原始图像等分为多个像素块,将各所述像素块中的所述原始特征点对应放入所述树形存储结构的节点中;根据所述节点中的原始特征点的个数循环***,得到新增节点,将所述新增节点添加到所述树形存储结构中得到第一节点列表;获取所述第一节点列表的各节点中所述原始特征点的响应值,按照所述响应值大小对所述原始特征点排序,筛选出排在第一位的所述原始特征点。
在本发明的一个实施例中,所述图像处理芯片402具体用于,将所述底层图像划分为多个大小相同的像素块,根据各所述像素块中像素点的灰度值判断所述像素块是否为异常块;如果所述像素块是异常块,则将所述像素块的方差设为第一常数,将所述第一特征点阈值设为第二常数,并对所述异常块不进行特征点检测;如果所述像素块不是异常块,则根据所述像素块中像素点的灰度值计算均值和方差,并根据所述均值和所述方差,获得所述第一特征点阈值。
在本发明的一个实施例中,所述图像处理芯片402具体对所述像素块中像素点的灰度值按照从大到小排序,计算前预设数目个灰度值的均值得到第一均值,并计算后预设数目个灰度值的均值得到第二均值;判断所述第一均值和所述第二均值的差值是否小于预设门限值;是则,确定所述像素块是异常块,否则,确定所述像素块不是异常块。
在本发明的一个实施例中,所述图像处理芯片402将所述第一特征点阈值或所述第二特征点阈值分别与预设阈值范围的上限值和下限值进行比较得到比较结果;若所述比较结果为所述第一特征点阈值或所述第二特征点阈值在所述阈值范围内,则不对所述第一特征点阈值或所述第二特征点阈值进行修改;若所述比较结果为所述第一特征点阈值或所述第二特征点阈值大于所述上限值,则将所述上限值赋值给所述第一特征点阈值或所述第二特征点阈值,若所述比较结果为所述第一特征点阈值或所述第二特征点阈值小于所述下限值,则将所述下限值赋值给所述第一特征点阈值或所述第二特征点阈值。
在本发明的一个实施例中,所述图像处理芯片402具体根据初始节点列表的节点中所述原始特征点的个数循环***,具体包括判断所述初始节点列表的第一节点中的所述原始特征点个数是否大于1,是则,生成N个第二节点,并将与所述第一节点对应的像素块等分为N个子区域,将所述N个子区域中的所述原始特征点对应放入所述N个第二节点中,其中,N为偶数;将所述原始特征点个数不为0的所述第二节点作为新增节点,添加到所述初始节点列表中,得到第一节点列表长度;否则,从所述初始节点列表中删除所述第一节点,得到第一节点列表长度;判断所述第一节点列表长度是否大于或等于预设长度阈值,是则,停止***得到所述第一节点列表,否则返回执行根据初始节点列表的节点中所述原始特征点的个数循环***的步骤。
需要说明的是关于图4所示相机中图像处理芯片所执行的各功能的举例解释说明,与前述方法实施例中的举例解释说明一致,这里不再一一赘述。
本发明的一个实施例中还提供一种计算机可读存储介质,计算机可读存储介质存储计算机指令,计算机指令使所述计算机执行上述的方法。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图的一个流程或多个流程和/或方框图的一个方框或多个方框中指定的功能的装置。
需要说明的是术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本发明的说明书中,说明了大量具体细节。然而能够理解的是,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。类似地,应当理解,为了精简本发明公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,正如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
以上所述,仅为本发明的具体实施方式,在本发明的上述教导下,本领域技术人员可以在上述实施例的基础上进行其他的改进或变形。本领域技术人员应该明白,上述的具体描述只是更好的解释本发明的目的,本发明的保护范围以权利要求的保护范围为准。

Claims (10)

1.一种图像特征点提取方法,其特征在于,包括:
获取相机采集的原始图像,根据所述原始图像形成图像金字塔;
将所述图像金字塔的底层图像划分为多个像素块,确定与所述像素块对应的第一特征点阈值,根据所述第一特征点阈值对所述像素块进行特征点检测,得到第一特征点,其中,所述底层图像为所述原始图像;
根据与当前层图像相邻的下一层图像的信息,获得与所述当前层图像的各像素块对应的第二特征点阈值,根据所述第二特征点阈值对所述当前层图像的相应像素块进行特征点检测,得到第二特征点,其中,所述当前层是所述图像金字塔的第二层至顶层中的任一层;
按照原始特征点的像素位置筛选所述原始特征点,得到图像特征点提取结果,其中,所述原始特征点包括所述第一特征点以及由所述第二特征点投影到原始图像得到的特征点。
2.根据权利要求1所述的方法,其特征在于,所述将所述图像金字塔的底层图像划分为多个像素块,确定与所述像素块对应的第一特征点阈值包括:
将所述底层图像划分为多个大小相同的像素块,根据各所述像素块中像素点的灰度值判断所述像素块是否为异常块;
如果所述像素块是异常块,则将所述像素块的方差设为第一常数,将所述第一特征点阈值设为第二常数,并对所述异常块不进行特征点检测;
如果所述像素块不是异常块,则根据所述像素块中像素点的灰度值计算均值和方差,并根据所述均值和所述方差,获得所述第一特征点阈值。
3.根据权利要求2所述的方法,其特征在于,所述根据各所述像素块中像素点的灰度值判断所述像素块是否为异常块包括:
对所述像素块中像素点的灰度值按照从大到小排序,计算前预设数目个灰度值的均值得到第一均值,并计算后预设数目个灰度值的均值得到第二均值;
判断所述第一均值和所述第二均值的差值是否小于预设门限值;
是则,确定所述像素块是异常块,否则,确定所述像素块不是异常块。
4.根据权利要求1所述的方法,其特征在于,所述根据与当前层图像相邻的下一层图像的信息,获得与所述当前层图像的各像素块对应的第二特征点阈值包括:
根据所述下一层图像与所述当前层图像的缩放比例,以及所述下一层图像的像素块个数,确定所述当前层图像的第二中心点所在像素块的多个邻域块,其中,所述第二中心点由所述下一层图像的第一中心点投影得到;
根据各所述邻域块的均值,并使用双线性插值对所述第二中心点所在像素块进行插值,获得所述第二中心点所在像素块的第二均值,并由所述第二均值以及各所述邻域块的均值得到第二方差;
基于所述第二均值和所述第二方差,得到第二特征点阈值。
5.根据权利要求1所述的方法,其特征在于,该方法还包括:
将所述第一特征点阈值或所述第二特征点阈值分别与预设阈值范围的上限值和下限值进行比较得到比较结果;
若所述比较结果为所述第一特征点阈值或所述第二特征点阈值在所述阈值范围内,则不对所述第一特征点阈值或所述第二特征点阈值进行修改;
若所述比较结果为所述第一特征点阈值或所述第二特征点阈值大于所述上限值,则将所述上限值赋值给所述第一特征点阈值或所述第二特征点阈值,
若所述比较结果为所述第一特征点阈值或所述第二特征点阈值小于所述下限值,则将所述下限值赋值给所述第一特征点阈值或所述第二特征点阈值。
6.根据权利要求1所述的方法,其特征在于,所述按照原始特征点的像素位置筛选所述原始特征点包括:
构建所述原始图像的树形存储结构,将所述原始图像等分为多个像素块,将各所述像素块中的所述原始特征点对应放入所述树形存储结构的节点中;
根据所述节点中的原始特征点的个数循环***,得到新增节点,将所述新增节点添加到所述树形存储结构中得到第一节点列表;
获取所述第一节点列表的各节点中所述原始特征点的响应值,按照所述响应值大小对所述原始特征点排序,筛选出排在第一位的所述原始特征点。
7.根据权利要求6所述的方法,其特征在于,所述根据所述节点中的原始特征点的个数循环***,得到新增节点,将所述新增节点添加到所述树形存储结构中得到第一节点列表包括:
根据初始节点列表的节点中所述原始特征点的个数循环***,具体包括判断所述初始节点列表的第一节点中的所述原始特征点个数是否大于1,是则,生成N个第二节点,并将与所述第一节点对应的像素块等分为N个子区域,将所述N个子区域中的所述原始特征点对应放入所述N个第二节点中,其中,N为偶数;将所述原始特征点个数不为0的所述第二节点作为新增节点,添加到所述初始节点列表中,得到第一节点列表长度;否则,从所述初始节点列表中删除所述第一节点,得到第一节点列表长度;
判断所述第一节点列表长度是否大于或等于预设长度阈值,是则,停止***得到所述第一节点列表,否则返回执行根据初始节点列表的节点中所述原始特征点的个数循环***的步骤。
8.一种相机,其特征在于,包括摄像头模组和图像处理芯片,
所述摄像头模组,用于采集原始图像,将所述原始图像发送至所述图像处理芯片;
所述图像处理芯片,用于获取相机采集的原始图像,根据所述原始图像形成图像金字塔;将所述图像金字塔的底层图像划分为多个像素块,确定与所述像素块对应的第一特征点阈值,根据所述第一特征点阈值对所述像素块进行特征点检测,得到第一特征点,其中,所述底层图像为所述原始图像;利用与当前层图像相邻的下一层图像的信息,获得与所述当前层图像的各像素块对应的第二特征点阈值,根据所述第二特征点阈值对所述当前层图像的相应像素块进行特征点检测,得到第二特征点,其中,所述当前层是所述图像金字塔的第二层至顶层中的任一层;按照原始特征点的像素位置筛选所述原始特征点,得到图像特征点提取结果,其中,所述原始特征点包括所述第一特征点以及由所述第二特征点投影到原始图像得到的特征点。
9.根据权利要求8所述的相机,其特征在于,
所述图像处理芯片,具体用于根据所述下一层图像与所述当前层图像的缩放比例,以及所述下一层图像的像素块个数,确定所述当前层图像的第二中心点所在像素块的多个邻域块,其中,所述第二中心点由所述下一层图像的第一中心点投影得到;根据各所述邻域块的均值,并使用双线性插值对所述第二中心点所在像素块进行插值,获得所述第二中心点所在像素块的第二均值,并由所述第二均值以及各所述邻域块的均值得到第二方差;基于所述第二均值和所述第二方差,得到第二特征点阈值。
10.根据权利要求8所述的相机,其特征在于,
所述图像处理芯片,具体用于构建所述原始图像的树形存储结构,将所述原始图像等分为多个像素块,将各所述像素块中的所述原始特征点对应放入所述树形存储结构的节点中;根据所述节点中的原始特征点的个数循环***,得到新增节点,将所述新增节点添加到所述树形存储结构中得到第一节点列表;获取所述第一节点列表的各节点中所述原始特征点的响应值,按照所述响应值大小对所述原始特征点排序,筛选出排在第一位的所述原始特征点。
CN201910161155.6A 2019-03-04 2019-03-04 一种图像特征点提取方法和相机 Active CN110046623B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910161155.6A CN110046623B (zh) 2019-03-04 2019-03-04 一种图像特征点提取方法和相机

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910161155.6A CN110046623B (zh) 2019-03-04 2019-03-04 一种图像特征点提取方法和相机

Publications (2)

Publication Number Publication Date
CN110046623A CN110046623A (zh) 2019-07-23
CN110046623B true CN110046623B (zh) 2021-09-10

Family

ID=67274490

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910161155.6A Active CN110046623B (zh) 2019-03-04 2019-03-04 一种图像特征点提取方法和相机

Country Status (1)

Country Link
CN (1) CN110046623B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110619338B (zh) * 2019-09-18 2022-02-08 成都信息工程大学 一种可长时间依赖的图像特征提取方法
CN113283442B (zh) * 2020-02-19 2024-05-10 北京四维图新科技股份有限公司 特征点的提取方法和装置
CN111915527B (zh) * 2020-08-05 2023-04-07 成都圭目机器人有限公司 基于多模板的自适应光照补偿方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103077527A (zh) * 2013-02-05 2013-05-01 湖北工业大学 一种稳健的多源卫星遥感影像配准方法
CN103886338A (zh) * 2014-02-13 2014-06-25 中国科学院光电研究院 一种多光谱影像匹配方法和***
CN107240126A (zh) * 2016-03-28 2017-10-10 华天科技(昆山)电子有限公司 阵列图像的校准方法
CN108573269A (zh) * 2017-10-24 2018-09-25 北京金山云网络技术有限公司 图像特征点匹配方法、匹配装置、电子设备及存储介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8406507B2 (en) * 2009-01-14 2013-03-26 A9.Com, Inc. Method and system for representing image patches
CN102254144A (zh) * 2011-07-12 2011-11-23 四川大学 一种鲁棒的图像中二维码区域提取方法
CN105844663B (zh) * 2016-03-21 2018-11-27 中国地质大学(武汉) 一种自适应orb目标跟踪方法
CN106960451B (zh) * 2017-03-13 2019-12-31 西安电子科技大学 一种提升图像弱纹理区域特征点数量的方法
CN108010045A (zh) * 2017-12-08 2018-05-08 福州大学 基于orb的视觉图像特征点误匹配提纯方法
CN108830831B (zh) * 2018-05-11 2021-11-30 中南大学 一种基于改进surf匹配的锌浮选泡沫自然速度特征提取方法
CN109284781A (zh) * 2018-09-10 2019-01-29 湖北工业大学 基于流形学习的图像分类算法和***

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103077527A (zh) * 2013-02-05 2013-05-01 湖北工业大学 一种稳健的多源卫星遥感影像配准方法
CN103886338A (zh) * 2014-02-13 2014-06-25 中国科学院光电研究院 一种多光谱影像匹配方法和***
CN107240126A (zh) * 2016-03-28 2017-10-10 华天科技(昆山)电子有限公司 阵列图像的校准方法
CN108573269A (zh) * 2017-10-24 2018-09-25 北京金山云网络技术有限公司 图像特征点匹配方法、匹配装置、电子设备及存储介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
REGION SEGMENTATION AND FEATURE POINT EXTRACTION ON 3D FACES USING A POINT DISTRIBUTION MODEL;Prathap Nair 等;《2007IEEE International Conference on Image Processing》;20071231;第85-88页 *
图像特征点提取角点量阈值自适应选取方法;杨晓晖 等;《光学与光电技术》;20121031;第10卷(第5期);第72-75页 *
自适应变尺度特征点提取方法;屈玉福 等;《光学精密工程》;20170131;第25卷(第1期);第188-197页 *

Also Published As

Publication number Publication date
CN110046623A (zh) 2019-07-23

Similar Documents

Publication Publication Date Title
CN110717489B (zh) Osd的文字区域的识别方法、装置及存储介质
US9245200B2 (en) Method for detecting a straight line in a digital image
CN112016614B (zh) 光学图像目标检测模型的构建方法、目标检测方法及装置
CN110046623B (zh) 一种图像特征点提取方法和相机
CN110990516B (zh) 地图数据的处理方法、装置和服务器
CN112734641A (zh) 目标检测模型的训练方法、装置、计算机设备及介质
DE102016011380A1 (de) Bildsynthese unter Verwendung einer Aktivmaske
CN108399424B (zh) 一种点云分类方法、智能终端及存储介质
JP2016505186A (ja) エッジ保存・ノイズ抑制機能を有するイメージプロセッサ
CN110930503B (zh) 一种服装三维模型建立方法、***、存储介质及电子设备
CN111582054A (zh) 点云数据处理方法及装置、障碍物检测方法及装置
CN111681198A (zh) 一种形态学属性滤波多模融合成像方法、***及介质
KR101549155B1 (ko) 라이다 자료를 활용한 구조물의 직선경계 추출방법
CN114359665A (zh) 全任务人脸识别模型的训练方法及装置、人脸识别方法
CN111881985A (zh) 立体匹配方法、装置、终端和存储介质
CN111563517A (zh) 图像处理方法、装置、电子设备及存储介质
CN113744142B (zh) 图像修复方法、电子设备及存储介质
CN113077477B (zh) 图像矢量化方法、装置及终端设备
CN108986210B (zh) 三维场景重建的方法和设备
CN114782645A (zh) 虚拟数字人制作方法、相关设备及可读存储介质
KR20220123142A (ko) 라벨링 장치 및 학습 장치
CN114511862B (zh) 表格识别方法、装置及电子设备
CN113256484B (zh) 一种对图像进行风格化处理的方法及装置
CN115147442A (zh) 栅格图案的矢量化方法、移动终端、电子设备和介质
CN117296078A (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