CN108154526B - 突发模式图像的图像对准 - Google Patents

突发模式图像的图像对准 Download PDF

Info

Publication number
CN108154526B
CN108154526B CN201710906374.3A CN201710906374A CN108154526B CN 108154526 B CN108154526 B CN 108154526B CN 201710906374 A CN201710906374 A CN 201710906374A CN 108154526 B CN108154526 B CN 108154526B
Authority
CN
China
Prior art keywords
image
feature points
reference image
local region
local
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
CN201710906374.3A
Other languages
English (en)
Other versions
CN108154526A (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.)
Adobe Inc
Original Assignee
Adobe Systems Inc
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 Adobe Systems Inc filed Critical Adobe Systems Inc
Publication of CN108154526A publication Critical patent/CN108154526A/zh
Application granted granted Critical
Publication of CN108154526B publication Critical patent/CN108154526B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/33Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/38Registration of image sequences
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/14Transformations for image registration, e.g. adjusting or mapping for alignment of images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/18Image warping, e.g. rearranging pixels individually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • 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/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
    • G06V10/462Salient features, e.g. scale invariant feature transforms [SIFT]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/757Matching configurations of points or features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/167Detection; Localisation; Normalisation using comparisons between temporally consecutive images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • 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
    • 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/20021Dividing image into blocks, subimages or windows
    • 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/20172Image enhancement details
    • G06T2207/20182Noise reduction or smoothing in the temporal domain; Spatio-temporal filtering
    • 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/20212Image combination
    • G06T2207/20221Image fusion; Image merging
    • 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/62Extraction of image or video features relating to a temporal dimension, e.g. time-based feature extraction; Pattern tracking

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Human Computer Interaction (AREA)
  • Image Analysis (AREA)

Abstract

本公开的各实施例总体上涉及突发模式图像的图像对准。具体地,涉及用于从多个突发图像生成新的对准图像的系统和方法。系统和方法将参考图像细分为多个局部区域并且将后续图像细分为多个相应的局部区域。此外,系统和方法检测参考图像和后续图像中的每个图像中的多个特征点,并且确定参考图像与后续图像之间的匹配的特征点对。基于匹配的特征点对,系统和方法确定参考图像到后续图像的至少一个单应性。基于单应性,系统和方法生成与参考图像逐像素对准的新的对准图像。此外,系统和方法可以细化新的对准图像的局部区域之间的边界。

Description

突发模式图像的图像对准
相关申请的交叉引用
本申请要求于2016年12月6日提交的美国临时专利申请No.62/430,709的优先权和权益,其全部内容通过引用并入本文。
技术领域
本公开的各实施例总体上涉及图像处理。具体地,涉及突发模式图像的图像对准。
背景技术
突发模式图像捕获(例如,在相对较短的时间段内捕获若干连续图像)可用于各种类型的图像捕获设备(例如,数字相机、移动电话等)。传统上,通过在短的时间段内捕获多个图像,用户可以从突发图像中选择具有最高质量或最佳定时的图像。然而,在某些情况下,图像之一将具有最高质量,而另一图像具有最佳定时。在其他情况下,没有一个图像的质量很好。此外,突发图像可以表现出照明的缺陷和显著的模糊。
已经做了一些努力来融合(例如,合并)突发图像中的多个图像,以便从突发图像中去除噪声(即,亮度和/或颜色信息的随机变化)或者形成没有噪声的单个图像。这样的传统系统通常仅在局部运动一致(例如,整个突发图像中的运动一致)时正常操作,并且如果该假设不成立(由于相机形变或3D视图变化),则局部运动估计的精度(用于融合多个图像的必要条件)劣化。结果,图像系统传统上不能产生比突发图像更高质量的图像。已经关于图像对准(例如,将突发图像彼此对准)进行了另外的努力,并且从对准的图像提供新的对准图像。然而,这样的图像系统在传统上在离线状态下操作,并且需要大量的处理能力和存储器。因此,图像系统不适用于实时移动应用(例如,移动电话应用)。
因此,关于传统系统存在这些和其他缺点。
发明内容
下面描述的各种实施例使用用于从具有增强质量的多个突发图像来生成图像的系统和方法来提供益处和/或解决本领域中的前述或其他问题中的一个或多个。特别地,系统和方法提供了从多个突发图像生成捕获突发图像的时刻(即,定时)的单个图像(例如,整体更高质量的图像),同时实现了特定质量等级的典型的非突发模式图像。具体地,系统和方法提供了:有效地补偿可能在多个突发图像中呈现出的平移、旋转和缩放,并且生成比由任何突发图像单独地呈现的质量呈现更高质量的新的对准图像。此外,系统和方法提供了在诸如移动电话等移动设备上有效地生成新的对准图像。
在一个或多个实施例中,系统和方法将突发图像的参考图像和后续图像细分为多个局部区域并且检测每个局部区域中的特征点。此外,系统和方法根据局部区域来匹配参考图像与后续图像之间的特征点。基于匹配的特征点,系统和方法确定使得系统和方法能够使后续图像扭曲的单应性(即,运动变换),并且生成与参考图像逐像素对准的更高质量的新的对准图像。因此,由于系统和方法将参考图像和后续图像细分为局部区域并且基于局部区域来检测特征点,所以系统和方法确定更精确的单应性,这导致与传统系统相比更高质量的新的对准图像。
本公开的一个或多个实施例的附加特征和优点将在下面的描述中阐述,并且部分地将从描述中容易理解,或者可以通过实践这样的示例实施例来了解。
附图说明
将通过使用附图用附加的特征和细节来描述和解释各种实施例,在附图中:
图1示出了根据一个或多个实施例的从多个突发图像生成新的对准图像的顺序流程图;
图2示出了根据一个或多个实施例的多个突发图像的参考图像和后续图像,其中参考图像和后续图像具有多个检测到的特征点;
图3示出了根据一个或多个实施例的用全局检测系统检测到的特征点与用局部区域检测系统检测到的特征点的比较;
图4示出根据一个或多个实施例的参考图像与后续图像之间的匹配的特征点的示意性表示;
图5示出了根据本公开的一个或多个实施例的合并图像的局部区域的示意性表示;
图6示出了根据本公开的一个或多个实施例的图像内的局部区域的层级的不同级别和相关联的单应性的示意性表示;
图7示出了根据本公开的一个或多个实施例的通过将单应性运动模型全局地应用于图像而产生的对准误差与通过将单应性单独地应用于图像的每个局部区域而产生的对准误差的比较;
图8A和图8B示出了根据本公开的一个或多个实施例的对图像内的局部区域的边界进行细化以便减小在使图像扭曲时的形变的示意性表示;
图9示出了根据本公开的一个或多个实施例的扭曲图像的非连续拐角点和非连续拐角点的平均坐标的示意性表示;
图10示出了根据本公开的一个或多个实施例的图像的局部区域的共享边界的示意性表示;
图11示出了根据本公开的一个或多个实施例的图像对准系统可以在其中操作的示例性环境的一个实施例的示意图;
图12示出了根据本公开的一个或多个实施例的用于从多个突发图像生成新的对准图像的示例方法的流程图;
图13示出了根据本公开的一个或多个实施例的用于从多个突发图像生成新的对准图像的另一示例方法的流程图;
图14示出了根据本公开的一个或多个实施例的用于从多个突发图像生成新的对准图像的另一示例方法的流程图;
图15示出了根据本公开的一个或多个实施例的用于执行用于匹配参考图像与后续图像之间的特征点的步骤的算法的图;
图16示出了根据本公开的一个或多个实施例的用于执行用于匹配参考图像与后续图像之间的特征点的步骤的算法的图;以及
图17示出了根据本公开的一个或多个实施例的示例计算设备的框图。
具体实施方式
本文中描述的各种实施例提供了用于从多个突发图像生成新的对准图像的图像对准系统。例如,图像对准系统可以从多个突发图像生成新的对准图像,新的对准图像与多个突发图像中的各个突发图像中的任何突发图像相比具有更高的质量(例如,更高的分辨率、更好的照明、更少的噪声、更少的模糊等)。在一些实施例中,图像对准系统将多个突发图像中的图像细分为多个局部区域,并且将单应性运动模型应用于多个局部区域中的每个局部区域。在另外的实施例中,图像对准系统根据特征点的各自的局部区域来匹配多个突发图像中的图像之间的关键特征点。在一个或多个实施例中,图像对准系统利用自下而上的层级方法来确定图像的单应性。在另外的实施例中,图像对准系统在生成新的对准图像的同时细化图像的局部区域的边界,以便减少由位置运动扭曲不一致引起的图像形变。下面将进一步详细讨论上述各项。
在一些实施例中,图像对准系统将多个突发图像中的图像细分为多个局部区域,并且将单应性运动模型应用于多个局部区域中的每个局部区域。具体地,图像对准系统将多个突发图像的参考图像和后续图像分别细分为多个局部区域和多个相应的局部区域。此外,图像对准系统将单应性运动模型单独地应用于局部区域和各自的相应的局部区域中的每个,以确定参考图像的每个局部区域到其后续图像的各自的相应的局部区域的单应性。另外,如下面将更详细地讨论的,基于所确定的单应性,图像对准系统生成新的更高质量的图像。
由于图像对准系统将参考图像和后续图像细分为局部区域和相应的局部区域,并且将单应性运动模型单独地应用于每个局部区域(例如,确定局部区域的局部运动),与在传统上将全局单应性运动模型应用于整个参考图像和后续图像的传统系统相比,本公开的图像对准系统确定参考图像对后续图像的更精确的总体运动估计(即,更精确的单应性)。具体地,本公开的图像对准系统确定每个局部区域的更精确的单应性,这导致整个图像的更准确的整体单应性。
如上所述,在另外的实施例中,图像对准系统根据特征点的各自的局部区域来匹配多个突发图像中的图像(即,参考图像与后续图像)之间的特征点。具体地,图像对准系统分别检测局部区域和相应的局部区域中的每个区域中的特征点。此外,如果局部区域包括阈值数目的(例如,100个)特征点,则图像对准系统检测每个局部区域和相应的局部区域中的阈值数目的特征点。
另外,图像对准系统通过预测局部区域内的给定特征点的像素位置来匹配给定的局部区域与其相应的局部区域之间的特征点。在预测局部区域内的特征点的像素位置之后,图像对准系统利用k最近过程来选择前几个潜在地匹配的特征点。此外,图像对准系统确定给定特征点与任何潜在地匹配的特征点之间的相似度。在一些实施例中,图像对准系统基于特征点的描述符之间的汉明距离来确定特征点之间的相似度。图像对准系统过滤给定特征点和描述符距离高于预定量(例如,80)的潜在地匹配的特征点的任何对。此外,图像对准系统确定所有剩余的特征点对的中值位移矢量,并且过滤给定特征点和位移偏离中值位移矢量大于预定数目的像素的潜在地匹配的特征点的任何对。
因为图像对准系统单独地检测局部区域和相应的局部区域中的每个区域的特征点,而不是仅全局地检测特征点,所以与通常全局地检测特征点的传统系统相比,本公开的图像对准系统实现了更均匀地分布的多个检测到的特征点。作为上述的结果,图像对准系统确保图像的每个区域(即,参考图像和后续图像)在检测到的特征点中而不是在仅具有高浓度的特征点的区域中被表示。
此外,由于图像对准系统基于局部区域来将参考图像的特征点与后续图像的特征点相匹配,所以与通常全局地匹配特征点的传统系统相比,本公开的图像对准系统产生更少的匹配误差。此外,如本领域普通技术人员将理解的,与传统系统相比,通过实现较少的匹配误差,图像对准系统最终将生成更高质量的新的对准图像。
如上所述,在一个或多个实施例中,图像对准系统利用自下而上的方法来确定图像的单应性。具体地,图像对准系统确定最低级别的层级的给定的局部区域(例如,由细分图像得到的最小局部区域(例如,图像的第1/16部分))是否包括阈值数目(例如,预定数目)的特征点,以确保所应用的(例如,拟合的)单应性运动模型将提供局部区域的精确的单应性。如果图像对准系统确定给定的局部区域不包括阈值数目的(例如,100个)特征点,则图像对准系统可以将给定的局部区域与其他局部区域合并,直到所得到的合并的局部区域包括阈值数目的特征点。在合并局部区域之后,图像对准系统可以对合并的局部区域应用更鲁棒的单应性运动模型。
由于图像对准系统确保图像对准系统应用单应性运动模型的局部区域包括阈值数目的特征点,所以图像对准系统确保参考图像的每个部分在参考图像的所确定的单应性内被表示(例如,被说明)。例如,与确定严重地基于在特征点方面丰富的参考图像的部分的(即,由这些部分确定的)单应性的传统系统相比,本公开的图像对准系统确保参考图像的每个区域(即,局部区域)在所确定的单应性中被同样地表示。因此,与传统系统相比,本公开的图像对准系统在从多个突发图像生成新的对准图像时导致较少的对准误差。
此外,由于本公开的图像对准系统利用自下而上的方法来确定图像的单应性,如上所述,所以图像对准系统提供了计算机系统的性能的改进。例如,由于图像对准系统将特征匹配限制到局部区域和相应的局部区域,同时在突发图像中的图像之间假设相对较少量的运动,所以图像对准系统减少了用于确定多个突发图像中的第一图像(即,参考图像)对多个突发图像中的第二图像(即,后续图像)的单应性所需要的处理能力、存储器和通信资源。此外,由于图像对准系统独立地确定每个局部区域的单应性,所以,与利用已知的联合估计方法的传统系统相比,图像对准系统减少了用于确定第一图像对第二图像的单应性所需要的处理能力、存储器和通信资源,。因此,内容分析系统导致计算机/通信系统的数据传输和数据带宽使用较少。换言之,与传统系统相比,图像对准系统导致较少的处理能力和通信带宽。结果,与传统系统相比,本公开的图像对准系统是用于诸如移动电话等移动设备的更适合的系统。
另外,通过以上述方式融合突发图像(即,参考图像和后续图像),本公开的图像对准系统与传统系统相比能够实现附加的降噪,有利于与图像一起利用高动态范围(“HDR”),并且在图像内移动和/或去除对象。
如上所述,在另外的实施例中,图像对准系统细化图像的局部区域的边界,同时生成新的对准图像,以便减小由位置运动扭曲不一致引起的图像形变。例如,沿着后续图像的局部区域的共享边界,图像对准系统可以调节由接近共享边界的相应的单应性确定的像素的矢量流。此外,图像对准系统可以调节后续图像的连续拐角的位置,以便补偿局部区域之间的不一致的单应性。
图1示出了根据本公开的一个或多个实施例的图像对准系统100可以用于从多个突发图像生成新的对准图像116的顺序流程图。如图所示,图像对准系统100从图像捕获设备102(例如,独立相机、移动设备的相机等)接收多个突发图像。如本文中使用的,术语“突发图像”可以是指在相对短的时间段内捕获的多个连续图像。例如,“突发图像”可以是指在短的时间段(例如,1秒、2秒、5秒、10秒等)内捕获若干(例如,十个、二十个、三十个、四十个等)图像。在一些实施例中,图像对准系统100包括图像捕获设备102和与图像捕获设备102相关联的任何软件。
响应于从图像捕获设备102接收到多个突发图像,图像对准系统100从多个突发图像中选择参考图像104和后续图像106以利用来生成新的对准图像116。例如,图像对准系统100可以选择多个突发图像内的第一图像(即,参考图像104)以及顺序地在第一图像之后的第二图像(即,后续图像106)。在一些实施例中,图像对准系统100可以根据图像的质量来选择参考图像104。例如,图像对准系统100可以选择最高质量图像(例如,具有最高分辨率、最佳照明、较少噪声等)作为参考图像104。在备选实施例中,图像对准系统100可以选择多个突发图像中的第一图像(即,用多个突发图像捕获的第一图像)作为参考图像104。在另外的实施例中,如下面将更详细地讨论的,图像对准系统100可以选择具有最多检测到的特征点108的图像作为参考图像104。此外,图像对准系统100可以选择在所选择的参考图像104的之后的任何图像作为后续图像106。此外,在一些实施例中,图像对准系统100可以选择在所选择的参考图像104之后的具有最高质量的图像作为后续图像106。在一个或多个实施例中,参考图像104和后续图像106可以包括至少大致(例如,至少基本上)相同的场景。
在选择参考图像104和后续图像106之后,图像对准系统100将参考图像104细分为多个局部区域105并且将后续图像106细分为多个相应的局部区域107。具体地,参考图像104和后续图像106中的每个可以限定相应的图像平面,并且图像对准系统100可以将图像平面细分为局部区域105(例如,不同部分)和相应的局部区域107。此外,参考图像104的多个局部区域105中的每个局部区域可以具有(例如,涉及)多个相应的局部区域中的对应的局部区域。为了便于图像对准系统100的解释和图像对准系统100的操作,参考图像104的局部区域105和后续图像106的相应的局部区域107在本文中统称为“局部区域”。
在一些实施例中,图像对准系统100可以利用空间网格来细分参考图像104和后续图像106。特别地,图像对准系统100可以利用例如2×2空间网格、4×4空间网格、8×8空间网格等来细分参考图像104和后续图像106。在这样的实施例中,局部区域和相应区域中的每个可以具有至少大致相同的形状和大小。在备选实施例中,图像对准系统100可以将参考图像104和后续图像106细分为不规则的区域。例如,参考图像104的局部区域105可以具有不一致的大小和随机形状。
除了细分参考图像104和后续图像106之外,图像对准系统还检测参考图像104和后续图像106中的特征点108。例如,图像对准系统100可以检测参考图像104和后续图像106中的每个图像中的多个特征点108。在一些情况下,图像对准系统100检测参考图像104的多个局部区域105中的每个局部区域105中以及后续图像106的多个相应的局部区域107中的每个相应的局部区域107中的多个特征点108。
另外,图像对准系统100针对参考图像104和后续图像106的每个检测到的特征点108提取(即,生成)特征描述符110。例如,图像对准系统100生成每个检测到的特征点108的描述符矢量。每个描述符矢量包括与其相应特征点108相关的信息(例如,强度信息、像素位置信息、局部邻域信息)。例如,每个特征描述符110可以包括数字“指纹”,其可以用于将一个特征点108与另一特征点区分开。下面关于图2和3来更详细地讨论检测特征点108和提取特征描述符110。
响应于检测到参考图像104和后续图像106中的每个图像中的特征点108,图像对准系统100确定参考图像104与后续图像106之间的特征点108的匹配的对112。特别地,图像对准系统100确定在参考图像104中检测到的哪些特征点108对应于在后续图像106中检测到的特征点108。例如,对于在参考图像104中检测到的给定特征点108,图像对准系统100确定与参考图像104的给定特征点相关联的在后续图像106中检测到的特征点(例如,指示与给定特征点相同的特征点)。在一些实施例中,图像对准系统根据特征点108的特征描述符110的相似度来将参考图像104与后续图像106之间的检测到的特征点108相匹配。下面关于图4来更详细地描述将参考图像104与后续图像106之间的特征点108相匹配。
在确定参考图像104与后续图像106之间的特征点108的匹配的对112之后,图像对准系统100基于参考图像104与后续图像106之间的特征点108的匹配的对112来确定(例如,估计)参考图像104到后续图像106的至少一个单应性114(例如,单应性变换、运动估计)。如本文中使用的,术语“单应性”是指从一个平面到另一平面映射对象和/或线的变换。例如,术语“单应性”是指将特征点108从参考图像104(即,参考图像104的限定平面)映射到后续图像106(即,后续图像106的限定平面)的变换。
在一个或多个实施例中,图像对准系统100通过使用传统的优化方法将单应性运动模型应用于(即,拟合到)参考图像104和后续图像106的至少部分来确定单应性114。在一些情况下,图像对准系统100可以将单应性运动模型分别应用于参考图像104的局部区域105和相应的局部区域107中的每个,以确定将参考图像104的不同部分(即,局部区域)映射到后续图像106的多个单应性。此外,如下面将更详细地讨论的,图像对准系统100可以利用自下而上的层级方法将单应性运动模型应用于局部区域105和相应的局部区域107以确定多个单应性。下面参考图5-7来更详细地描述确定参考图像104到后续图像106的单应性。
除了确定参考图像104到后续图像106的多个单应性之外,图像对准系统100调节(例如,细化)基于多个单应性生成的初始的新的图像(例如,扭曲图像)的变换后的局部区域(例如,针对局部区域确定的单应性)之间的边界(例如,拐角点和边界)。例如,在确定多个单应性并且变换后续图像106的相应局部区域107以生成初始的新的图像之后,图像对准系统100可以细化与后续图像106的连续的拐角点相对应的变换后的局部区域的拐角点。特别地,图像对准系统100可以通过得到初始的新的图像的变换后的拐角点的平均位置(例如,位置)并且将后续图像106(即,要变换的图像)的连续的拐角点重新设置到该平均位置并且基于重新设置后的拐角点重新变换后续图像106来细化变换后的拐角点。可以针对后续图像106的每组连续的拐角重复上述过程。
此外,如上所述,图像对准系统100可以在生成新的对准图像的同时细化后续图像的相应的局部区域的边界。例如,当图像对准系统100基于多个单应性变换(即,扭曲)后续图像106以生成新的对准图像116时,通过对接近于由后续图像106的相应的局部区域107中的两个或更多个局部区域共享的边界1002的单应性的单应性流矢量进行插值,图像对准系统100可以细化新的对准图像116的局部区域的边界。特别地,对于在距相应的局部区域107的给定的共享边界1002预定义的距离内的后续图像106的每个像素位置,图像对准系统100基于共享给定边界的相应的局部区域107的所确定的单应性来确定多个运动矢量。此外,图像对准系统100确定在预定义的距离内的每个像素位置的权重。特别地,对于给定的像素位置,其权重与给定的像素位置距各自的相应的局部区域107的距离成反比。此外,基于所确定的多个运动矢量和所确定的像素位置的权重,图像对准系统100用权重对运动矢量求平均,以确定像素位置的新的单应性流动矢量。下面将参考图8A至图10来更详细地描述调节新的对准图像116的变换后的局部区域之间的边界。
在确定对边界的调节之后,图像对准系统100根据所确定的多个单应性和所确定的调节来使后续图像106扭曲以生成新的对准图像116(即,最终的新的图像)。新的对准图像可以与参考图像104逐像素对准。如本文中使用的,术语“逐像素”可以是指新的对准图像116根据参考图像104的像素与参考图像104对准。例如,当与参考图像104逐像素对准时,新的对准图像116的像素被对准以匹配参考图像104的像素的对准。此外,因为图像对准系统100基于多个单应性和所确定的调节来使后续图像扭曲,所以与传统系统生成的图像相比,对准系统100可以生成具有更少的模糊和更高的质量的新的对准图像116。
图2示出了根据一个或多个实施例的本发明的图像对准系统100可以检测特征点108并且可以提取特征描述符110的多个突发图像的示例参考图像104和示例后续图像106。如图2所示,参考图像104和后续图像106中的每个图像分别通过2×2空间网格被细分为四个局部区域105和四个相应的局部区域107。此外,如上所述,图像对准系统100可以检测参考图像104的每个局部区域105中和后续图像106的每个相应的位置区域107中的多个特征点108a、108b。
在一些实施例中,图像对准系统100利用特征点检测器和描述符来检测特征点108并且确定检测到的特征点108的特征描述符110。特别地,特征点检测器可以分析图像(例如,参考图像104),并且可以输出图像的显著区域(即,兴趣点)的位置(即,像素位置)。例如,特征点检测器可以输出在图像中描绘的对象和/或元素的拐角、边缘、脊部、纹理和斑点的位置。另外,描述符可以分析检测到的特征点108,并且可以输出(例如,生成)对与其各自的特征点有关的信息(例如,强度信息、像素位置信息、本地邻域信息)进行编码的每个检测到的特征点的描述符矢量。例如,每个描述符可以包括二进制描述符矢量。在一些实施例中,每个描述符可以包括用于32字节二进制特征点108的为256的维度。
在一个或多个实施例中,图像对准系统100可以利用定向FAST和旋转BRIEF(“ORB”)关键点检测器和描述符来检测特征点108并且确定特征描述符110。特别地,图像对准系统100可以利用在Rublee,Ethan,et al.,ORB:An Efficient alternative to SIFTor SURF,International Conference on Computer Vision,pp.2564-2571(2011)中描述的ORB关键点检测器和描述符,其公开内容通过引用整体并入本文。在另外的实施例中,图像对准系统100可以利用其他关键点检测器和描述符,诸如例如尺度不变特征变换(SIFT)关键点检测器和描述符、加速稳健特征(SURF)关键点检测器和描述符、和/或定向梯度直方图(HOG)关键点检测器和描述符。
如上所述,在一些情况下,图像对准系统100可以检测参考图像104的每个局部区域105内的特征点108和后续图像106的每个相应的局部区域107内的特征点108。另外,图像对准系统100可以从每个局部区域105和从每个相应的局部区域107中选择具有最高响应(即,最高置信度)的顶部的预定数目的特征点108,以包括作为(例如,指定为)检测到的特征点108。因此,通过从每个局部区域105和相应的局部区域107中选择预定数目的特征点108,检测到的特征点108均匀地分布在参考图像104的局部区域105中并且均匀分布在后续图像106的相应的局部区域107中。特征点108的示例性的预定数目包括50、100、200、300或任何其他数目的特征点108。例如,预定数目的特征点108可以取决于图像的大小、质量和/或分辨率。如果图像对准系统100没有检测到特定的局部区域105(或相应的局部区域107)内的至少预定数目(即,阈值数目)的特征点108,则图像对准系统100选择在该特定的局部区域105中检测到的所有特征点108。
作为非限制性示例,诸如图2所示的示例,参考图像104的四个局部区域105中的每个可以包括100个检测到的特征点108,使得参考图像104总体上包括400个检测到的特征点108。因此,图像对准系统100可以确保检测到特征点108在每个局部区域105(和相应的局部区域107)中而不仅仅是在特征点丰富的局部区域中被检测到。结果,图像对准系统100可以确保与利用全局特征检测而不是单独地检测每个局部区域105内的特征点的传统系统相比,由图像(例如,参考图像104)描绘的对象和/或元素能够用检测到的特征点108更好地表示。
例如,图3示出了由全局检测系统和局部检测系统(即,本公开的图像对准系统100)检测到(并且选择)的特征点108(例如,对象)的比较。在框202和204中以灰色和/或黑色描绘由两个系统未检测到的残余特征点108(未检测到和/或选择的特征点)。如图所示,与本文中描述的局部检测系统相比,全局检测系统检测到显著更少的特征点108。换言之,与全局检测系统相比,局部检测系统(即,图像对准系统100)检测到更多的特征点108。
如以上简要地提及的,关于图4来更详细地描述参考图像104与后续图像106之间的特征点108的匹配。具体地,图4示出了参考图像104的局部区域105和后续图像106的相应的局部区域107。为了匹配参考图像104与后续图像106之间的特征点108,图像对准系统100选择在参考图像104中的检测到的特征点R,并且将特征点R与后续图像106中的最相似点相匹配。在一些实施例中,图像对准系统100通过评估两个给定特征点108的描述符110之间的汉明距离来确定特征点108的相似度。如本领域已知的,两个矢量(例如,描述符110)之间的汉明距离是不同的两个矢量的相应位置(例如,值)的数目。例如,汉明距离测量将两个矢量中的第一矢量改变为两个矢量中的第二矢量所需要的最小替换数目。如本领域普通技术人员将理解的,汉明距离测量可以将第一矢量变换为第二矢量的最小误差目。
在一个或多个实施例中,对于参考图像104中的给定特征点(例如,特征点R),图像对准系统100确定(即,预测)后续图像106中的相应位置。此外,图像对准系统100仅搜索后续图像106的各自的相应的局部区域107中的与参考图像104的局部区域105的给定特征点R相匹配的特征点P,如图4所示。例如,对于具有像素位置XR的给定特征点R,图像对准系统100将匹配的特征点的像素位置预测为XR+dXR。在一些实施例中,dXR是从运动传感器(例如,图像捕获设备102的运动传感器)估计的先验运动偏移。在另外的实施例中,dXR是使用自回归模型从先前的对准结果(例如,先前生成的新的图像)估计的先验运动偏移。例如,先验运动偏移通过根据对附加的后续图像和参考图像104执行的分析而确定的先前的先验运动偏移来回归。
基于预测的匹配的特征点的像素位置(XR+dXR),图像对准系统100将特征点R的特征描述符110与像素位置XP接近于XR+dXR的任何特征点P的特征描述符110相比较。例如,图像对准系统100可以将特征点R的特征描述符110与像素位置在XR+dXR的预定数目的像素(例如,50个像素、75个像素、100个像素、200个像素等)内的任何候选特征点{P}(即,潜在地匹配的特征点集合108中的任何特征点)的特征描述符110相比较。例如,图像对准系统100可以将特征点R的特征描述符100与在XR+dXR周围延伸的圆内的任何候选特征点{P}的特征描述符110相比较,其中XR+dXR为圆的中心并且圆的半径为预定数目的像素。
除了将特征点R的特征描述符110与任何候选特征点{P}的特征描述符110相比较之外,图像对准系统100根据候选特征点{P}的特征描述符110与特征点R的特征描述符110的相似度来对候选特征点{P}排列(例如,排序和/或优先级排序)。如以上简要地提及的,在一些实施例中,图像对准系统100通过评估特征点108的特征描述符110之间的汉明距离来确定两个给定特征点108的相似度。
在根据其与特征点R的相似度来对候选特征点{P}进行排列之后,图像对准系统100滤除将除了预定的顶部数目的(即,预定数目的)候选特征点{P}之外的所有特征点考虑作为匹配的特征点。例如,图像对准系统100可以过滤除了与特征点R最相似的前3、6或10个候选特征点{P}之外的所有特征点。换言之,图像对准系统100保持顶部的候选特征点{P}被考虑作为特征点R的匹配。例如,图像对准系统100保持潜在地匹配的特征点集合108被考虑作为特征点R的匹配。图像对准系统100保持比顶部的候选特征点P更多的特征点,因为顶部匹配仍然可能是假匹配,并且将在稍后的处理中被滤除(例如,去除)被考虑作为候选特征点。此外,对于参考图像104的每个给定特征点R保持多于顶部匹配,导致参考图像104的更多特征点108正确匹配后续图像106的候选特征点{P}。例如,当多于一个顶部候选特征点P被保留时,图像对准系统100确定更匹配的特征点对108。
响应于确定特征点R的顶部候选特征点{P},图像对准系统100过滤(从潜在地匹配的特征点集合108)描述符距离高于距特征点R的阈值距离的任何候选特征点{P}。在一些实施例中,描述符距离是特征点R的特征描述符110与给定的候选特征点P的特征描述符之间的汉明距离。在另外的实施例中,描述符距离为特征点R的特征描述符110与给定的候选特征点P之间的欧几里德距离。在某些情况下,在确定特征点R与候选特征点{P}之间的描述符距离之后,图像对准系统100滤除(例如,去除)考虑距特征点R的描述符距离高于例如50、80、100、150或200的任何候选特征点{P}(潜在地匹配的特征点集合108)中的)。
除了基于描述符距离来过滤候选特征点{P}之外,图像对准系统基于特征点108的潜在地匹配的对112的位移(即,XP-XR)来滤除考虑候选特征点{P}。具体地,对于在参考图像104中检测到的所有检测到的特征点108{R}(例如,从参考图像104与后续图像106之间的所有潜在地匹配的特征点对112),从所有剩余候选特征点{P}(潜在地匹配的特征点集合108中的),图像对准系统100将中值位移矢量D确定为特征位移的中值{XP-XR}。如本领域普通技术人员将理解的,中值位移矢量D是参考图像104与后续图像106之间的全局平移的鲁棒逼近。在确定中值位移矢量D之后,图像对准系统100过滤与位移(XP-XR)偏离中值位移矢量D预定数目的像素的潜在地匹配的对112相对应的任何候选特征点{P}。例如,图像对准系统100可以过滤与位移(XP-XR)偏离中值位移矢量D多于10、20、30、40、50或100个像素的潜在地匹配的对112相对应的任何候选特征点{P}。
在一些情况下,在基于预测的像素位置、描述符距离和相对位移对候选特征点{P}进行过滤之后,特征点108的多个潜在地匹配的对112可以保留用于相同的特征点R。在这样的情况下,图像对准系统100选择与特征点R具有最高相似度的候选特征点P。所得到的对(R,P)是最终匹配的特征点对112,其如下面将更详细地讨论地,由图像对准系统100利用以确定参考图像104到后续图像106的运动估计(即,单应性)。此外,图像对准系统100可以对于参考图像104的每个检测到的特征点108执行上述过程以确定参考图像104与后续图像106之间的特征点108的多个匹配的对112。
如以上简要地提及的,下面关于图5和图6来更详细地描述确定参考图像104到后续图像106的单应性。此外,在一个或多个实施例中,关于图5和图6示出和描述的动作可以在用于确定多个局部区域105中的每个局部区域105的单应性的步骤中执行。如上所述,当确定参考图像104到后续图像106的单应性时,图像对准系统100将单应性运动模型应用于参考图像104的每个局部区域105。具体地,图像对准系统100可以在使用传统的优化方法的同时向每个局部区域105应用传统的单应性运动模型。例如,图像对准系统100可以应用在Liu,Ziwei et al.,Fast Burst Images Denoising,ACM Transaction on Graphics 33,No 6:232(2014)中描述的单应性运动模型和传统的优化方法,其公开内容通过引用整体并入本文。
此外,可以关于由计算设备(例如,服务器)执行的算法、等式或伪代码来描述图像对准系统100将传统的单应性运动模型应用于多个局部区域105中的每个局部区域105的操作。更具体地,将传统的单应性运动模型应用于每个局部区域105可以涉及以下算法和等式。
为了估计单应性H,图像对准系统100从以下等式开始:
x2~Hx1
其表示两个图像平面中的点之间的直接映射。此外,当利用均匀坐标时,图像对准系统100利用以下约束:
当利用诸如(x′2=x2/z2和y′2=y2/z2)等非均匀坐标时,图像对准系统100利用以下约束:
另外,在不失一般性的情况下,图像对准系统100定义z1=1,并且将先前的等式重新排列为:
x′2(H31x1+H32y1+H33)=H11x1+H12y1+H13
y′2(H31x1+H32Y1+H33)=H21x1+H122y1+H23
即使上述非均匀等式非线性地涉及坐标,H的系数呈线性。因此,为了求解H,图像对准系统100将先前的两个等式重新排列为:
其中
h=(H11,H12,H13,H21,H22,H23,H31,H32,H33)T
ax=(-x1,-y1,-1,0,0,0,x′2x1,x′2y1,x′2)
ay=(0,0,0,-x1,-y1,-1,y′2x1,y′2y1,y′2)T
此外,基于以上关于图4描述的所确定的匹配的特征点108(即,对应关系),图像对准系统100可以形成以下线性等式组:
Ah=0
其中
图像对准系统100可以使用本领域已知的均匀线性最小二乘法来求解以上等式。因此,在一些实施例中,图像对准系统100可以利用以上等式来确定局部区域105的单应性。
仍然参考图5,在一些实施例中,在应用上述单应性运动模型之前,图像对准系统100可以确定参考图像104的给定的局部区域105是否包括阈值(即,预定)数目的检测到的特征点108。阈值数目可以包括50、75、100、200、500、1000个或任何其他数目的检测到的特征点108。例如,阈值数目的检测到的特征点108可以取决于图像的大小、质量和/或分辨率。
此外,取决于给定的局部区域105是否包括阈值数目的检测到的特征点108,图像对准系统100可以应用单应性流的自底向上的分层估计。例如,如果图像对准系统100确定给定的局部区域105包括阈值数目的检测到的特征点108,则图像对准系统100将单应性运动模型应用于给定的局部区域105,如上所述。另一方面,如果图像对准系统100确定给定的局部区域105不包括阈值数目的检测到的特征点108,则图像对准系统100将给定的局部区域105与具有相同层级级别的另一局部区域并且与下一层级级别的局部区域(即,较大的局部区域)合并,并且将单应性运动模型应用于合并的局部区域。例如,图5将参考图像104示出为最初被细分为多个局部区域,并且局部区域105a和局部区域105b彼此接近(即,共享边界),并且在一些实施例中可以不包括大量的特征点108。因此,在确定局部区域105a和105b中的一个或多个不包括阈值(即,预定)数目的特征点108之后,图像对准系统100可以将局部区域105a和局部区域105b合并以形成局部区域105g。然而,如图所示,图像对准系统100将局部区域105a和局部区域105b合并在局部区域505内(例如,下一层级级别)。
在一些实施例中,层级的级别由局部区域的局部象限集合来定义。例如,如图5所示,局部区域105c、105d、105e和105f在同一象限集合(2×2象限集合)内,并且因此处于相同的层级级别内。下一层级级别(即,在局部区域105c、105d、105e和105f上方的层级级别)是局部区域(和相关联的局部区域),例如,局部区域507,其被划分为限定局部区域105c、105d、105e和105f的象限集合。此外,如果图像对准系统100确定局部区域105c、105d、105e和105f中的一个或多个不包括阈值数目的检测到的特征点108,则图像对准系统100将缺少的局部区域与同一象限集合内的另一局部区域合并。例如,图像对准系统100将缺少的局部区域与同一层级级别的另一局部区域合并,并且共享相同的下一层级级别(例如,在局部区域507内的另一局部区域)。例如,图像对准系统100不会将缺少的局部区域与局部区域105c合并,因为即使局部区域105c具有相同的层级级别,局部区域105c也不共享相同的下一层级级别。此外,如果在将所有局部区域105c、105d、105e和105f合并在一起之后,图像对准系统100确定合并的局部区域(现在的局部区域507)不包括阈值数目的特征点108,则图像对准系统将局部区域507与同一层级级别的另一局部区域(例如,局部区域505)合并,并且共享相同的下一层级级别(例如,在这种情况下为整个图像)。
在一个或多个实施例中,在确定给定的局部区域不包括阈值数目的特征点108之后,图像对准系统100可以将局部区域与其他局部区域合并,直到所得到的合并的局部区域包括阈值数目的特征点108。在一些实施例中,图像对准系统100可以将局部区域合并多达三个级别的层级,例如从图像的十六分之一到图像的象限到整个图像。另外,在一个或多个实施例中,图像对准系统100可以将缺少阈值数目的特征点108的局部区域与具有最少数目的检测到的特征点108的相同级别层级的另一局部区域合并。具体地,图像对准系统100可以从检测到数目最少的特征点108的局部区域开始,按照每个其他局部区域中的检测到的特征点的数目的顺序,将缺少阈值数目的特征点108的局部区域与相同级别层级的其他局部区域合并。下面关于图6来另外详细地描述层级的级别。
具体地,图6示出了根据一个或多个实施例的层级的级别的另一表示。如图所示,图像对准系统100可以将参考图像104细分为四个象限,并且可以将每个象限细分为四个象限,这导致参考图像104被细分为十六个局部区域。此外,通过具有十六个局部区域,参考图像104包括至少三个级别的层级。最低级别(即,底部级别)(l)是十六个局部区域中的每个单独的局部区域的级别,并且表示第一级别的层级。此外,在最低级别(l),图像对准系统100分别考虑十六个局部区域中的每个。此外,如图所示,在最低级别(l),最低级别(l)的局部区域(i)的单应性可以被定义为此外,如图所示,单应性/>可以表示最低级别(l)的局部区域(i)的单应性流。
从最低级别(l)的第一向上级别(l-1)是整个图像的四个象限的级别,并且表示第二级别的层级。第一向上级别(l-1)的局部区域(即,象限)的单应性可以被定义为此外,如上所述,如果图像对准系统100将第一层级级别的局部区域之一与第一层级级别的相邻的局部区域(例如,共享边界的局部区域)合并,则图像对准系统100将局部区域与相邻的局部区域在第二层级级别的其相应象限内合并。
从最低级别(l)的第二向上级别(1-2)是包括整个参考图像104的级别,并且表示第三级别的层级。第二向上级别(l-2)的整个参考图像104的单应性可以定义为此外,如上所述,如果图像对准系统100将第二层级级别的局部区域之一与第二层级级别的相邻的局部区域(例如,共享边界的局部区域)合并,则图像对准系统100将局部区域与相邻的局部区域在其相应的第三层级级别内合并(例如,在所示实施例中的整个图像)。
尽管关于图6描述了仅三个层级级别,但是本领域普通技术人员将容易地认识到,取决于参考图像104的大小和质量,本公开的图像对准系统100可以利用任何数目的层级级别。例如,图像对准系统100可以利用4、5、10或12个层级级别。
一起参考图5和图6,鉴于上述情况,图像对准系统100可以个性化图像对准系统100如何将单应性运动模型应用于参考图像104的每个区域。具体地,如图5所示的实施例所示,图像对准系统100可以将局部区域105c、105d、105e和105f合并在一起直到象限层级级别(即,第二层级级别),以形成局部区域105m,以便包括阈值数目的特征点108。另外,图像对准系统100可以将局部区域105a和105b合并在一起,以形成作为参考图像104的象限的左半部分的局部区域105g。此外,如图所示,图像对准系统100可以合并局部区域105n和105o,以形成作为参考图像104的象限的上半部分的局部区域105r。同样地,图像对准系统100可以合并局部区域105p和105q,以形成作为参考图像104的象限的下半部分的局部区域105s。此外,如图所示,由于局部区域105h、105i、105j和105k包括阈值数目的特征点108而没有合并,所以图像对准系统100可以不合并局部区域105h、105i、105j和105k。在一些实施例中,图像对准系统100可以将更加鲁棒(例如,更强大)的运动模型应用于包括显著地多于阈值数目的检测到的特征点108的合并的局部区域。因此,图像对准系统100可以自定义如何基于特征点108(例如,特征点108的浓度)位于参考图像104内的位置来将单应性运动模型应用于参考图像104。结果,与利用已知的联合优化方法的传统的图像系统相比,图像对准系统100在计算上更有效率并且导致具有较少残余对准误差的扭曲图像(即,新的对准图像116)。
例如,图7示出了通过利用全局(即,单个)单应性以及通过利用根据以上关于图5和图6描述的层级级别合并的局部单应性而产生的残余对准误差的比较。由传统系统和图像对准系统100产生的残余对准误差(即,对准/扭曲图像的误差)分别在框702和704中以灰色和/或黑色示出。如图所示,传统的图像系统产生了比本公开的图像对准系统100显著更多的对准误差。
尽管以上关于图5至图7描述的处理关于参考图像104来描述,但是将容易地认识到,可以关于后续图像106执行相同的处理。此外,在一个或多个实施例中,关于图5至图7所示和描述的动作可以被执行作为用于确定多个局部区域105中的每个局部区域105的单应性的步骤。
如以上简要地讨论的,关于图8A至图10来更详细地描述调节扭曲图像的变换后的局部区域之间的边界。例如,图8A示出了可以由不一致的位置运动扭曲引起的新的对准图像(即,新的对准图像116)内的图像形变802(例如,当相邻的单应性具有不同(例如,显著不同)的单应性流)时。图8B示出了在图像对准系统100调节变换后的局部区域之间的边界之后的新的对准图像。在一个或多个实施例中,因为局部区域的单应性被独立地确定,如以上关于图5至图7所讨论的,在局部区域的边界附近,单应性(即,估计的运动)可以是不一致的。结果,从单应性生成的图像(即,新的对准图像116)在局部区域的边界处可能不一致。在一些实施例中,图像对准系统100通过细化变换后的局部区域的拐角点来减少和/或消除扭曲图像中的不一致。在另外的实施例中,图像对准系统100通过细化变换后的局部区域的共享边界来减少和/或消除扭曲图像中的不一致。下面更详细地描述前述内容中的每个。
如上所述,为了减少和/或消除扭曲图像中的不一致性,图像对准系统100细化变换后的局部区域的拐角点。图9示出了具有在变换之后没有对准(例如,不连续)的变换后的拐角点902a、902b、902c、902d(本文中统称为“902”)的初始扭曲图像900的示例实施例。在操作中,在根据所确定的单应性对后续图像106的相应的局部区域107进行初始变换之后,图像对准系统100确定与后续图像106的相应的局部区域107的连续的拐角点相对应的变换后的局部区域的变换后的拐角点902在扭曲图像内是否连续。如果图像对准系统100确定变换后的拐角点902不连续,则图像对准系统100确定每个变换后的拐角点902在初始扭曲图像900内的坐标(例如,像素位置)。此外,基于每个变换后的拐角点902的坐标,图像对准系统100确定变换后的拐角点902在初始扭曲图像900内的平均坐标904。
在确定变换后的拐角点902的平均坐标904之后,图像对准系统100将后续图像106(即,被变换的图像)的连续的拐角点的坐标重新设置为平均坐标904。图像对准系统100对于与另一拐角点连续的后续图像106的相应的局部区域107的所有拐角点(例如,由两个或更多个相应的局部区域107共享的拐角点)重复关于图9描述的以上过程。此外,在重新设置后续图像106的所有拐角点的坐标之后,图像对准系统100基于重新设置的拐角点来将单应性运动模型重新应用于后续图像106的每个相应的局部区域107(例如,重新变换)以生成与参考图像104逐像素对准的新的对准图像116(例如,新的对准图像116)。
图10示出了具有两个相应的局部区域107的部分后续图像106,其中两个局部区域中的每个具有所确定的单应性(H1和H2)。如上所述,为了减少和/或消除扭曲图像中的不一致,图像对准系统100细化变换后的局部区域的共享边界。具体地,当图像对准系统100基于多个单应性来变换(即,扭曲)后续图像106以生成新的对准图像(例如,新的对准图像116(图1))时,图像对准系统100可以通过对接近于共享边界1002的单应性的单应性流矢量进行插值来细化后续图像106的相应的局部区域的共享边界1002。例如,图像对准系统100可以在相应的局部区域107的共享边界1002附近细化后续图像106的变换。特别地,对于在距给定的共享边界1002的预定义的距离(d)内的后续图像106的每个像素位置,图像对准系统100基于共享给定的共享边界1002的相应的局部区域的所确定的单应性(H1和H2)来确定多个运动矢量。此外,图像对准系统100确定在预定义的距离(d)内的每个像素位置的权重。特别地,对于给定的像素位置(P1),其权重与给定的像素位置距各自的局部区域的中心1004和1006的距离(w1和w2)成反比。此外,基于所确定的多个运动矢量以及像素位置的所确定的权重,图像对准系统100用权重对运动矢量求平均,以确定像素位置(P1)的新的单应性流矢量(HP)。例如,像素位置(P1)的新的单应性流矢量(HP)可以被定义如下:
HP=w1×P1(H1)+w2×P1(H2)
此外,图像对准系统100可以确定在后续图像106的相应的局部区域的共享边界1002的预定义的距离(d)内的每个像素位置的新的单应性流矢量。基于在后续图像106的相应的局部区域的共享边界1002的预定义的距离(d)内的每个像素位置的所确定的新的单应性流矢量,图像对准系统100可以使后续图像106扭曲以生成具有细化后的边界的新的对准图像116(例如,新的对准图像116)。
图11示出了图像对准系统100可以在其中操作的示例性环境1100的一个实施例的示意图。在一个或多个实施例中,示例性环境1100包括一个或多个客户端设备1102、网络1106和服务器1104。客户端设备1102和服务器1104经由网络1106进行通信。网络1106可以是计算设备可以通过其来通信的任何适合的网络。下面关于图17来更详细地讨论示例网络。尽管图11示出了客户端设备1102、服务器1104和网络1106的特定布置,但是各种附加布置是可能的。例如,服务器1104可以绕过网络1106直接与客户端设备1102通信。
客户端设备1102和服务器1104都可以表示用户可以与之交互的各种类型的计算设备。例如,客户端设备1102可以是移动设备(例如,手机、智能电话、PDA、平板计算机、膝上型计算机、手表、可穿戴设备等)。然而,在一些实施例中,客户端设备1102可以是非移动设备(例如,台式计算机或服务器)。另外,服务器1104可以是任何类型的服务器计算设备。在一个或多个实施例中,图像对准系统100在客户端设备102上操作。因此,图像对准系统100可以根据下面描述的原理来执行在线或离线工作流程。此外,客户端设备1102包括可以向图像对准系统100提供突发图像的图像捕获设备102。在备选实施例中,如图所示,图像对准系统100可以在服务器1104上操作。下面关于图17来讨论关于客户端设备1102和服务器1104的附加细节。
如上所述,在一个或多个实施例中,服务器1104可以包括图像对准系统100的全部或部分。特别地,图像对准系统100可以包括在服务器1104上运行的应用或可以从服务器1104下载的软件应用的部分。例如,图像对准系统100可以包括使得客户端设备1102能够与被托管在服务器1104处的内容交互的网络托管应用。为了说明,在示例性环境1100的一个或多个实施例中,客户端设备1102可以访问由服务器1104支持的网页。具体地,客户端设备1102可以运行应用以使得用户能够访问、查看和/或与被托管在服务器1104处的网页或网站交互。
在一个或多个实施例中,服务器1104包括图像处理系统,包括但不限于软件、/>软件。图像处理系统可以访问或包括图像对准系统100。
类似地,尽管图11的环境1100被示出为具有各种部件,但是环境1100可以具有附加的或备选的部件。例如,图像对准系统100可以在单个计算设备上实现。特别地,图像对准系统100可以由客户端设备1102整体实现,或者图像对准系统100可以由服务器1104整体实现。或者,图像对准系统100可以跨多个设备或部件(例如,利用客户端设备1102和服务器1104)来实现。
作为示例,在一个或多个实施例中,客户端设备1102可以向服务器1104发送请求以对准来自多个突发图像的图像。服务器1104可以向客户端设备1102提供对图像对准系统100的访问。响应于请求,图像对准系统100可以如以上关于图1至图10讨论地确定新的对准图像116(例如,新的对准图像116),并且服务器1104可以将新对准的图像116发送到客户端设备1102。
图12示出了用于从多个突发图像生成新的对准图像116的示例方法1200的流程图。方法1200可以由上述图像对准系统100来实现。方法1200包括细分参考图像104和后续图像106的动作1210。例如,动作1210可以包括将参考图像104和后续图像106中的每个图像细分为多个局部区域。另外,动作1210可以包括将参考图像104细分为至少四个局部区域,并且将后续图像106细分为至少四个相应的局部区域。此外,动作1210可以包括使用2×2空间网格来细分参考图像104和后续图像106。同样地,动作1210可以包括使用4×4空间网格来细分参考图像104和后续图像106。此外,动作1210可以包括以上关于图5和图6描述的任何动作。
方法1200还可以包括检测参考图像104和后续图像106内的特征点108的动作1220。具体地,动作1220可以包括检测参考图像104和后续图像106两者的多个局部区域中的每个局部区域中的多个特征点108。在一些情况下,动作1220可以包括检测多个特征点108包括利用定向FAST和旋转BRIEF特征点检测器和描述符来检测多个特征点108。此外,动作1220可以包括从多个局部区域中的每个局部区域检测具有最高置信度的前100个特征点。此外,动作1220可以包括以上关于FI描述的任何动作。
另外,方法1200包括确定特征点108的匹配的对112的动作1230。特别地,动作1230可以包括确定参考图像104与后续图像106之间的特征点108的匹配的对112。一些实施例,动作1230可以至少部分地基于特征点108的特征描述符110之间的汉明距离来确定彼此最相似的特征点。另外,动作1230可以包括以上关于图2-4描述的任何动作。
此外,方法1200包括确定参考图像104到后续图像106的至少一个单应性的动作1240。例如,动作1240可以基于特征点108的匹配的对112来执行用于确定多个局部区域中的每个局部区域的单应性的步骤,每个局部区域的单应性将特征点108从参考图像104的局部区域映射到后续图像106的相应的局部区域。另外,动作1240可以包括以上关于图5和6描述的任何动作。
此外,方法1200包括使后续图像106扭曲的动作1250。例如,动作1250可以包括基于多个局部区域中的每个局部区域的单应性来使后续图像106扭曲以生成与参考图像104逐像素对准的新的对准图像116。
在一些实施例中,方法1200还可以包括确定多个特征点108中的每个特征点的特征描述符110的动作。另外,方法1200可以包括以上关于图1至图10描述的任何动作。
图13示出了用于从多个突发图像生成新的对准图像116的示例方法1300的流程图。方法1300可以由上述图像对准系统100来实现。方法1300包括检测参考图像104和后续图像106内的特征点108以及各自的特征描述符110的动作1310。例如,动作1310可以包括检测参考图像104和后续图像106中的多个特征点108。
方法1300还包括确定每个特征点的特征描述符的动作1320。例如,动作1320可以包括分析检测到的特征点并且生成每个检测到的特征点的描述符矢量,描述符矢量用于对与其各自的特征点相关的强度信息、像素位置信息和局部邻域信息进行编码。
另外,方法1300包括确定匹配的特征点108对的动作1330。例如,动作1330可以包括基于每个特征点108的特征描述符110来确定参考图像104与后续图像106之间的匹配的特征点108。此外,动作1330可以包括从潜在地匹配的特征点集合中确定距给定特征点的像素位置的中值位移矢量,并且从潜在地匹配的特征点集合108中过滤位移偏离中值位移矢量大于预定数目的像素的特征点108。另外,动作1330可以包括以上关于图4描述的任何动作。
另外,动作1330可以包括预测给定特征的像素位置。特别地,动作1330可以包括对在参考图像104中具有像素位置的给定特征点预测后续图像106中的相应的像素位置。此外,在一些实施例中,动作1330可以标识潜在地匹配的特征点集合108。例如,动作1330可以包括将给定特征点的特征描述符与后续图像106中像素位置在预测的相应的像素位置的预定数目的像素内的特征点108的特征描述符110相比较,以标识潜在地匹配的特征点集合108。此外,动作1330可以包括根据特征点与给定特征点的相似度来对在预测的相应的像素位置的预定数目的像素内的特征点108进行排序,并且从排序后的特征点108中过滤除了预定数目的最相似特征点108之外的所有特征点。另外,动作1330可以包括从排序后的特征点108中过滤除了三个最相似特征点108之外的所有特征点,和/或根据特定点108的特征描述符110与给定特征点的特征描述符之间的汉明距离来对特征点108进行排序。
另外,在一些实施例中,动作1330可以包括从潜在地匹配的特征点集合108中过滤特征点108。例如,动作1330可以包括从潜在地匹配的特征点集合108中过滤描述符距离高于距给定特征点的阈值距离的在后续图像106中在预测的相应的像素位置的预定数目的像素内的任何特征点。同样地,动作1330可以包括选择匹配的特征点。特别地,动作1360可以包括从潜在地匹配的特征点集合108中选择具有最高相似度得分的匹配的特征点作为给定特征点的匹配。
方法1300还可以包括确定参考图像104到后续图像106的单应性的动作1340。例如,动作1340可以包括确定映射参考图像104与后续图像106之间的匹配的特征点108的至少一个单应性。另外,动作1340可以包括以上关于图5和6描述的任何动作。
同样地,方法1300可以包括使参考图像104扭曲的动作1350。例如,动作1350可以包括基于至少一个单应性来使后续图像106扭曲以生成与参考图像104逐像素对准的新的对准图像116。
图14示出了用于从多个突发图像生成新的对准图像116的示例方法1400的流程图。方法1400可以由上述图像对准系统100来实现。方法1400包括细分参考图像104和后续图像106的动作1410。例如,动作1410可以包括将参考图像104细分为多个局部区域并且将后续图像106细分为多个相应的局部区域。在一些情况下,动作1410可以包括将参考图像104细分为至少四个局部区域,并且将后续图像106细分为至少四个相应的局部区域。另外,动作1410可以包括使用2×2空间网格来细分参考图像104和后续图像106,和/或使用4×4空间网格来细分参考图像104和后续图像106。此外,动作1410可以包括以上关于图5和图6描述的任何动作。
方法1400还包括在参考图像104和后续图像106二者中检测特征点108的动作1420。例如,动作1420可以包括检测参考图像104的多个局部区域中的每个局部区域中以及后续图像106的多个相应的局部区域中的每个相应的局部区域中的多个特征点108。另外,动作1420可以包括以上关于图2和3描述的任何动作。
另外,方法1400包括确定匹配的特征点108的动作1430。特别地,动作1430可以包括确定参考图像104与后续图像106之间的匹配的特征点108。在一些实施例中,动作1430可以至少部分地基于特征点108的特征描述符110之间的汉明距离来确定彼此最相似的特征点。另外,动作1430可以包括以上关于图2-4描述的任何动作。
此外,方法1400包括合并不包括阈值数目的特征点的位置区域的动作1440。另外,动作1440可以包括确定参考图像104的多个局部区域中的每个局部区域是否包括至少预定数目的特征点108。同样地,动作1440可以包括:如果参考图像104的多个局部区域中的局部区域不包括至少预定数目的特征点108,则将局部区域与多个局部区域中的的附加的局部区域合并以形成合并的局部区域。
此外,方法1400包括确定每个局部区域的单应性的动作1450。例如,动作1450可以基于参考图像104与后续图像106之间的匹配的特征点108来确定参考图像104的多个局部区域中的每个局部区域的单应性,每个局部区域的单应性将特征点108从参考图像104的各自的局部区域映射到后续图像106的各自的相应的局部区域。此外,动作1450可以包括:如果参考图像104的多个局部区域中的局部或合并的局部区域包括至少预定数目的特征点108,则确定局部区域的单应性。在一些实施例中,动作1440可以包括将鲁棒的单应性运动模型拟合到合并的局部区域。另外,动作1440可以包括以上关于图5和6描述的任何动作。
方法1400还可以包括使后续图像106扭曲的动作1460。例如,动作1460可以包括基于每个局部区域和合并的局部区域的单应性来使后续图像106扭曲以生成与参考图像104逐像素对准的新的对准图像116。
在一些实施例中,方法1400还可以包括确定与参考图像104的多个局部区域的连续的拐角相对应的新的对准图像116的拐角是否连续。如果新的对准图像116的拐角不连续,则确定新的对准图像116的非连续拐角的平均坐标904,并且利用所确定的平均坐标904作为连续拐角的坐标来确定参考图像104的多个局部区域中的每个局部区域的单应性。此外,方法1400可以包括基于参考图像104的每个局部区域的所确定的单应性以及每个像素的相关联的流矢量来对接近于由多个局部区域中的多个局部区域共享的边界的像素的流矢量进行插值。
图15示出了根据本公开的一个或多个实施例的用于执行用于匹配1500参考图像104与后续图像106之间的特征点108的步骤的算法的图。此外,用于匹配1500的步骤可以包括以下关于框1502-1516描述的任何动作。如框1502所示,算法包括选择参考图像104中的特征点。特别地,图像对准系统100可以检测参考图像104和后续图像106中的每个中的多个特征点108。此外,算法可以包括以上关于图2和3描述的任何动作。
另外,算法包括预测后续图像106中的参考图像104的所选择的特征点的匹配的特征点的相应的像素位置,如框1504所示。例如,对于像素位置为XR的参考图像104的给定特征点,图像对准系统100将匹配的特征点的像素位置预测为后续图像106中的XR+dXR,其中dXR是先验运动偏移,如以上关于图4所述。预测相应的像素位置可以包括以上关于图4描述的任何动作。
此外,如框1506所示,算法包括确定后续图像106的潜在地匹配的特征点(即,候选特征点)是否在预测的匹配的特征点的像素位置的特定数目的像素内。具体地,图像对准系统100可以确定潜在地匹配的特征点是否在例如预测的匹配的特征点的像素位置的50个像素内。确定后续图像106的潜在地匹配的特征点是否在预测的匹配的特征点的像素位置的特定数目的像素内可以包括以上关于图4描述的任何动作。
如果图像对准系统100确定后续图像106的潜在地匹配的特征点的给定特征点不在预定数目的像素内,则算法可以包括从潜在地匹配的特征点集合中过滤给定特征点,如框1518所示。例如,图像对准系统100从潜在地匹配的特征点集合中过滤给定特征点(例如,图像对准系统100去除将给定特征点考虑作为匹配的特征点。
如果图像对准系统100确定后续图像106的给定特征点在预定数目的像素内,则算法包括将给定特征点添加到潜在地匹配的特征点集合,如框1508所示。例如,图像对准系统100将给定特征点添加到潜在地匹配的特征点集合。此外,在将给定特征点添加到潜在地匹配的特征点集合之后,图像对准系统100确定特征点的描述符距离是否高于阈值距离,如框1510所示。例如,图像对准系统100通过评估特征点的描述符之间的汉明距离来确定两个给定特征点的相似度。
如果图像对准系统100确定特征点的描述符距离高于阈值距离,则图像对准系统100从潜在地匹配的特征点集合中过滤给定特征点,如框1518所示。另一方面,如果图像对准系统100确定特征点的描述符距离没有高于阈值距离,则图像对准系统100确定参考图像104和后续图像106的所有潜在地匹配的特征点对的中值位移矢量,如框1512所示。具体地,从参考图像104中的所有检测到的特征点的所有剩余的潜在地匹配的特征点,图像对准系统100将中值位移矢量D确定为中值特征位移{XP-XR}。
在确定中值特征位移{XP-XR}之后,图像对准系统100确定剩余的潜在地匹配的特征点的位移是否偏离中值位移矢量超过预定数目的像素,如框1514所示。此外,如果图像对准系统100确定剩余的潜在地匹配的特征点的位移偏离中值位移矢量超过预定数目的像素,则图像对准系统100从潜在地匹配的特征点集合中过滤给定特征点,如框1518所示。另一方面,如果图像对准系统100确定剩余的潜在地匹配的特征点的位移没有偏离中位移矢量超过预定数目的像素,则图像对准系统100从剩余的潜在地匹配的特征点(即,候选特征点)中选择与参考图像104的特征点具有最高相似度的匹配的特征点,如框1516所示。如上所述,后续图像106的匹配的特征点和参考图像104的给定特征点形成匹配的特征点对。
图16示出了根据本公开的一个或多个实施例的用于执行用于匹配1600参考图像104与后续图像106之间的特征点的步骤的算法的图。例如,用于匹配1600的步骤可以包括以下关于框1602-1622描述的任何动作。如框1602所示,算法包括确定局部区域(或相应的局部区域)是否包括至少阈值数目的特征点。具体地,图像对准系统100可以确定参考图像104的局部区域是否包括阈值数目的检测到的特征点。如上所述,阈值数目可以包括50、75、100、200、500、1000个或任何其他数目的检测到的特征点。此外,算法可以包括以上关于图5和6描述的任何动作。
例如,一方面,如框1622所示,如果图像对准系统100确定局部区域确实包括阈值数目的检测到的特征点,则算法可以包括将单应性运动模型应用于局部区域。例如,图像对准系统100可以用以上关于图5至图7描述的任何方法来将单应性运动模型应用于局部区域。
另一方面,如框1604所示,如果图像对准系统100确定局部区域不包括阈值数目的检测到的特征点,则算法可以包括将局部区域与具有相同的层级级别的另一局部区域合并。例如,图像对准系统100可以将局部区域与具有相同的层级级别的另一局部区域合并。以上关于图5和图6详细地描述了层级的级别。此外,将局部区域与具有相同的层级级别的另一局部区域合并可以包括以上关于图5和6描述的任何动作。
如框1608所示,在将局部区域与另一局部区域合并之后,算法包括确定所得到的合并的局部区域是否包括至少阈值数目的特征点。例如,图像对准系统100确定所得到的合并的局部区域是否包括至少阈值数目的特征点。如果图像对准系统100确定合并的局部区域至少包括阈值数目的特征点,则算法包括将单应性运动模型应用于合并的局部区域,如框1622所示。例如,图像对准系统100可以用以上关于图5-至图7描述的任何方法来将单应性运动模型应用于合并的局部区域。
或者,如果图像对准系统100确定合并的局部区域不包括至少阈值数目的特征点,则算法包括将合并的局部区域与具有相同的层级级别的附加的局部区域合并,如框1610所示。具体地,图像对准系统100将合并的局部区域与具有相同的层级级别的附加的局部区域合并。如上所述,层级的级别在以上关于图5和图6来描述。
如框1612所示,在将合并的局部区域与附加的局部区域合并之后,算法包括确定所得到的新的合并的局部区域是否包括至少阈值数目的特征点。例如,图像对准系统100确定所得到的新的合并的局部区域是否包括至少阈值数目的特征点。如果图像对准系统100确定新的合并的局部区域包括至少阈值数目的特征点,则算法包括将单应性运动模型应用于新的合并的局部区域,如框1622所示。例如,图像对准系统100可以用以上关于图5至图7描述的任何方法来将单应性运动模型应用于合并的局部区域。
或者,如果图像对准系统100确定所得到的合并的局部区域不包括至少阈值数目的特征点,则算法包括确定是否已经将具有相同的层级级别的所有局部区域与新的合并的局部区域合并,如框1614所示。具体地,图像对准系统100确定是否已经将具有相同的层级级别的所有局部区域与新的合并的局部区域合并。如果图像对准系统100并非已经将具有相同的层级级别的所有局部区域与新的合并的局部区域合并,则算法包括将合并的局部区域与具有相同的层级级别(例如,最低级别(图6))的附加的局部区域合并,如框1610所示。具体地,图像对准系统100将新的合并的局部区域与具有相同层级级别的附加的局部区域合并。如上所述,层级的级别在以上关于图5和图6来描述。
另一方面,如果图像对准系统100确定已经将具有相同的层级级别的所有局部区域与新的合并的局部区域合并,则算法包括将新的合并的局部区域与具有下一层级级别的(例如,第一向上级别(图6))局部区域合并,如框1620所示。具体地,图像对准系统100将新的合并的局部区域与下一层级级别的局部区域合并。如上所述,层级的级别在以上关于图5和6来描述。
如框1618所示,在将新的合并的局部区域与下一层级级别的局部区域合并之后,算法包括确定所得到的合并的局部区域是否包括至少阈值数目的检测到的特征点。例如,图像对准系统100确定所得到的合并的局部区域是否包括至少阈值数目的检测到的特征点。如果图像对准系统100确定所得到的合并的局部区域包括至少阈值数目的特征点,则算法包括将单应性运动模型应用于所得到的合并的局部区域,如框1622所示。例如,图像对准系统100可以用以上关于图5至图7描述的任何方式来将单应性运动模型应用于所得到的合并的局部区域。
或者,如果图像对准系统100确定所得到的合并的局部区域不包括至少阈值数目的特征点,则算法包括确定是否已经将具有相同的层级级别(例如,第一向上级别(图6))的所有局部区域与所得到的合并的局部区域合并,如框1616所示。具体地,图像对准系统100确定是否已经将具有相同的层级级别的所有局部区域与所得到的合并的局部区域合并。如果图像对准系统100确定并非已经将具有相同的层级级别的所有局部区域与所得到的合并的局部区域合并,则算法包括将所得到的合并的局部区域与具有相同的层级级别(例如,第一向上级别(图6))的附加的局部区域合并,如框1610所示。具体地,图像对准系统100将所得到的合并的局部区域与具有相同层级级别的附加的局部区域合并。如上所述,层级的级别在以上关于图5和图6来描述。
另一方面,如果图像对准系统100确定已经将具有相同的层级级别的所有局部区域与所得到的合并的局部区域合并,则算法包括将所得到的合并的局部区域与具有下一层级级别(例如,第二向上级别(图6))的局部区域合并,如框1620所示。具体地,图像对准系统100将所得到的合并的局部区域与下一层级级别的局部区域合并。如上所述,层级的级别在以上关于图5和图6来描述。
本公开的实施例可以包括或利用包括诸如例如一个或多个处理器和系统存储器等计算机硬件的专用或通用计算机,如下面更详细地讨论的。在本公开的范围内的实施例还包括用于携带或存储计算机可执行指令和/或数据结构的物理和其他计算机可读介质。特别地,本文中描述的过程中的一个或多个可以至少部分地被实现为在非状态计算机可读介质中实施并且由一个或多个计算设备(例如,本文中描述的任何媒体内容访问设备)可执行的指令。通常,处理器(例如,微处理器)从非暂态计算机可读介质(例如,存储器等)接收指令,并且执行这些指令,从而执行一个或多个处理,包括本文中描述的一个或多个处理。
计算机可读介质可以是可以由通用或专用计算机系统访问的任何可用介质。存储计算机可执行指令的计算机可读介质是非暂态计算机可读存储介质(设备)。携带计算机可执行指令的计算机可读介质是传输介质。因此,作为示例而非限制,本公开的实施例可以包括至少两种明显不同种类的计算机可读介质:非暂态计算机可读存储介质(设备)和传输介质。
非暂态计算机可读存储介质(设备)包括RAM、ROM、EEPROM、CD-ROM、固态驱动器(“SSD”)(例如,基于RAM)、闪存、相变存储器(“PCM”)、其他类型的存储器、其他光盘存储装置、磁盘存储装置或其他磁存储设备、或者可以用于以计算机可执行指令或数据结构的形式存储期望的程序代码装置并且可以由通用或专用计算机访问的任何其他介质。
此外,在到达各种计算机系统部件时,计算机可执行指令或数据结构形式的程序代码装置可以自动地从传输介质转移到非暂态计算机可读存储介质(设备)(或反之亦然)。例如,通过网络或数据链路接收的计算机可执行指令或数据结构可以被缓冲在网络接口模块(例如,“NIC”)内的RAM中,并且然后最终被传送到计算机系统RAM和/或计算机系统中的更少易失性计算机存储介质(设备)。因此,应当理解,也(甚至主要地)利用传输介质的计算机系统部件中可以包括非暂态计算机可读存储介质(设备)。
计算机可执行指令包括例如当在处理器处执行时引起通用计算机、专用计算机或专用处理设备执行某些功能或功能组的指令和数据。在一些实施例中,在通用计算机上执行计算机可执行指令以将通用计算机转变成实现本公开内容的元素的专用计算机。计算机可执行指令可以是例如二进制文件、诸如汇编语言等中间格式指令、或者甚至源代码。尽管已经以结构特征和/或方法动作特定的语言描述了主题,但是应当理解,所附权利要求中限定的主题不一定限于易失描述的特征或动作。相反,所描述的特征和动作被公开作为实现权利要求的示例形式。
本领域技术人员将理解,本公开可以在具有很多类型的计算机系统配置的网络计算环境中实践,包括个人计算机、台式计算机、膝上型计算机、消息处理器、手持设备、多处理器系统、基于微处理器或可编程消费电子产品、网络PC、小型计算机、大型计算机、移动电话、PDA、平板计算机、寻呼机、路由器、交换机等。本公开还可以在分布式系统环境中实践,其中通过网络链接(通过硬连线数据链路、无线数据链路或通过硬连线和无线数据链路的组合)的本地和远程计算机系统都执行任务。在分布式系统环境中,程序模块可以位于本地和远程存储器存储设备中。
本公开的实施例还可以在云计算环境中实现。在本说明书中,“云计算”被定义为用于启用对可配置计算资源的共享池的按需网络访问的模型。例如,云计算可以在市场中使用,以为共享的可配置计算资源池提供无处不在且方便的按需访问。共享的可配置计算资源池可以经由虚拟化来快速地提供,并且以较低的管理工作量或服务提供商交互被发布,并且然后被相应地缩放。
云计算模型可以由各种特征组成,诸如例如按需自助服务、广泛的网络访问、资源池、快速弹性、所测量的服务等。云计算模型还可以公开各种服务模型,诸如例如软件即服务(SaaS)、平台即服务(PaaS)以及基础架构即服务(“IaaS”)。还可以使用不同的部署模式(诸如私有云、社区云、公共云、混合云等)来部署云计算模型。在本说明书和权利要求书中,“云计算环境”是其中采用云计算的环境。
图17示出了可以被配置为执行上述过程中的一个或多个过程的示例计算设备1700的框图。将会理解,诸如计算设备1700等一个或多个计算设备可以实现图像对准系统100和/或客户端设备102。如图17所示,计算设备1700可以包括处理器1702、存储器1704、存储设备1706、I/O接口1708和通信接口1710,其可以通过通信基础设施通信地耦合。尽管图17中示出了示例计算设备1700,但是图17所示的部件不意图限制。在其他实施例中可以使用附加的或备选的部件。此外,在某些实施例中,计算设备1700可以包括比图17所示的更少的部件。现在将更加详细地描述图17所示的计算设备1700的部件。
在一个或多个实施例中,处理器1702包括用于执行诸如构成计算机程序的指令等指令的硬件。作为示例而非限制,为了执行指令,处理器1702可以从内部寄存器、内部高速缓存、存储器1704或存储设备1706检索(或取回)指令并且对其进行解码和执行。在一个或多个实施例中,处理器1702可以包括用于数据、指令或地址的一个或多个内部高速缓存。作为示例而非限制,处理器1702可以包括一个或多个指令高速缓存、一个或多个数据高速缓存以及一个或多个翻译后援缓冲器(TLB)。指令高速缓存中的指令可以是存储器1704或存储设备1706中的指令的副本。
计算设备1700包括耦合到处理器1702的存储器1704。存储器1704可以用于存储由处理器执行的数据、元数据和程序。存储器1704可以包括易失性和非易失性存储器中的一个或多个,诸如随机存取存储器(“RAM”)、只读存储器(“ROM”)、固态盘(“SSD”)、闪存、相位变化内存(“PCM”)或其他类型的数据存储装置。存储器1704可以是内部或分布式存储器。
计算设备1700包括存储设备1706,存储设备1706包括用于存储数据或指令的存储器。作为示例而非限制,存储设备1706可以包括上述非状态存储介质。存储设备1706可以包括硬盘驱动器(HDD)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(USB)驱动器、或者这些中的两个或更多个的组合。在适当的情况下,存储设备1706可以包括可拆卸或不可移除(或固定)的介质。存储设备1706可以在计算设备1700内部或外部。在一个或多个实施例中,存储设备1706是非易失性固态存储器。在其他实施例中,存储设备1706包括只读存储器(ROM)。在适当的情况下,该ROM可以是掩模编程的ROM、可编程ROM(PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、电可更改ROM(EAROM)或闪存、或者这些中的两个或更多个的组合。
计算设备1700还包括一个或多个输入或输出(“I/O”)设备/接口1708,其被提供以使得用户能够向计算设备1700提供输入,从计算设备1700接收输出,并且以其他方式向计算设备1700传送数据和从计算设备1700接收数据。I/O设备/接口1708可以包括鼠标、小键盘或键盘、触摸屏、相机、光学扫描器、网络接口、调制解调器、其他已知的I/O设备、或者这样的I/O设备/接口的组合。触摸屏可以用触笔或手指来激活。
I/O设备/接口1708可以包括用于向用户呈现输出的一个或多个设备,包括但不限于图形引擎、显示器(例如,显示屏幕)、一个或多个输出驱动器(例如,显示器驱动器)、一个或多个音频扬声器以及一个或多个音频驱动器。在某些实施例中,I/O接口1708被配置为向显示器提供图形数据以呈现给用户。图形数据可以代表可以用于特定实现的一个或多个图形用户界面和/或任何其他图形内容。
计算设备1700还可以包括通信接口1710。通信接口1710可以包括硬件、软件或两者。通信接口1710可以在计算设备1700与一个或多个其他计算设备或网络之间提供用于通信(诸如例如,基于分组的通信)的一个或多个接口。作为示例而非限制,通信接口1710可以包括用于与以太网或其他有线网络通信的网络接口控制器(NIC)或网络适配器、或者用于与无线网络通信的无线NIC(WNIC)或无线适配器,诸如WI-FI。计算设备1700还可以包括总线1712。总线1712可以包括将计算设备1700的部件彼此耦合的硬件、软件或二者。
已经参考其具体示例实施例描述了前面的说明书。本公开的各种实施例和方面参考本文中讨论的细节来描述,并且附图示出了各种实施例。上面的描述和附图是说明,而不应当被解释为限制。描述了很多具体细节以提供对各种实施例的透彻理解。
在不脱离本发明的精神或基本特征的情况下,附加的或备选的实施例可以以其他具体形式来实施。所描述的实施例仅在所有方面被认为是说明性的而非限制性的。因此,本发明的范围由所附权利要求而不是前面的描述来指示。在权利要求的等同方案的含义和范围内的所有变化将被包括在其范围内。
以上描述并且在附图中示出的本公开的实施例不限制本发明的范围,因为这些实施例仅是由所附权利要求及其合法等效物限定的本发明的实施例的示例。任何等同的实施例都旨在在本发明的范围内。实际上,除了本文中示出的和描述的那些之外,本公开的各种修改(诸如所描述的内容特征的备选的有用组合)对于本领域技术人员来说可以从描述中变得容易理解。这样的修改和实施例也旨在落入所附权利要求和法定等同物的范围内。

Claims (19)

1.一种从突发图像生成对准图像的计算机实现的方法,所述方法包括:
检测参考图像和后续图像中的多个特征点;
确定所述多个特征点中的每个特征点的特征描述符;
基于每个特征点的所述特征描述符,确定所述参考图像与所述后续图像之间的匹配的特征点,其中确定所述参考图像与所述后续图像之间的匹配的特征点包括:
对于在所述参考图像中具有像素位置的给定特征点,预测在所述后续图像中的相应像素位置;
基于所述后续图像中的相应像素位置从所述后续图像中标识潜在地匹配的特征点集合;
从所述潜在地匹配的特征点集合中过滤描述符距离高于距所述给定特征点的阈值距离的任何特征点;以及
从所述潜在地匹配的特征点集合中选择具有最高相似度得分的匹配的特征点作为所述给定特征点的匹配;
确定映射所述参考图像与所述后续图像之间的匹配的特征点的至少一个单应性;以及
基于所述至少一个单应性使所述后续图像扭曲以生成与所述参考图像对准的新的对准图像。
2.根据权利要求1所述的计算机实现的方法,其中确定所述多个特征点中的每个特征点的特征描述符包括:分析检测到的特征点,并且生成每个检测到的特征点的描述符矢量,所述描述符矢量对与所述描述符矢量各自的特征点相关的强度信息、像素位置信息和局部邻域信息进行编码。
3.根据权利要求1所述的计算机实现的方法,其中从所述后续图像中标识所述潜在地匹配的特征点集合包括将所述给定特征点的特征描述符与所述后续图像中像素位置在预测的相应的像素位置的预定数目的像素内的特征点的特征描述符相比较。
4.根据权利要求3所述的计算机实现的方法,其中标识所述潜在地匹配的特征点集合包括:
根据所述特征点与所述给定特征点的相似度来对在预测的相应的像素位置的预定数目的像素内的特征点进行排序;以及
从排序后的特征点中过滤除了预定数目的最相似特征点之外的所有特征点。
5.根据权利要求4所述的计算机实现的方法,其中从排序后的特征点中过滤除了预定数目的最相似特征点之外的所有特征点包括从排序后的特征点中过滤除了三个最相似特征点之外的所有特征点。
6.根据权利要求4所述的计算机实现的方法,其中根据所述特征点与所述给定特征点的相似度来对在预测的相应的像素位置的预定数目的像素内的特征点进行排序包括:根据所述特征点的特征描述符与所述给定特征点的特征描述符之间的汉明距离来对所述特征点进行排序。
7.根据权利要求1所述的计算机实现的方法,确定所述参考图像与所述后续图像之间的匹配的特征点还包括:
从所述潜在地匹配的特征点集合中确定距所述给定特征点的像素位置的中值位移矢量;以及
从所述潜在地匹配的特征点集合中过滤位移偏离所述中值位移矢量大于预定数目的像素的特征点。
8.根据权利要求1所述的计算机实现的方法,其中确定映射所述参考图像与所述后续图像之间的匹配的特征点的至少一个单应性包括:向多个局部区域中的每个局部区域单独地应用单应性运动模型,以确定将所述参考图像的局部区域中的特征点映射到所述后续图像的相应局部区域中的特征点的每个局部区域的单应性。
9.根据权利要求7所述的计算机实现的方法,其中基于所述至少一个单应性使所述后续图像扭曲以生成与所述参考图像对准的新的对准图像包括基于每个局部区域的所述单应性来使所述后续图像扭曲。
10.一种用于从突发图像生成对准图像的系统,包括:
存储器,所述存储器包括参考图像和后续图像;
至少一个处理器,所述至少一个处理器通信地耦合到所述存储器并且存储有指令,所述指令在由所述至少一个处理器执行时引起所述系统:
将所述参考图像细分为多个局部区域;
将所述后续图像细分为多个相应的局部区域;
检测所述参考图像的局部区域中的多个特征点;
检测所述后续图像的相应的局部区域中的多个特征点;
确定所述参考图像与所述后续图像之间的匹配的特征点;
将不包括阈值数目的特征点的所述参考图像的局部区域与所述参考图像的另一局部区域合并;
基于所述参考图像与所述后续图像之间的所述匹配的特征点,确定所述参考图像的每个局部区域和合并区域的单应性,每个局部区域的所述单应性将特征点从所述参考图像的各自的局部区域映射到所述后续图像的各自的相应的局部区域,以及
基于每个局部区域和合并的局部区域的所述单应性来使所述后续图像扭曲,以生成与所述参考图像对准的新的对准图像。
11.根据权利要求10所述的系统,其中所述指令在由所述至少一个处理器执行时引起所述系统通过执行包括以下各项的步骤来确定所述参考图像的每个局部区域的单应性:
确定所述参考图像的所述多个局部区域中的每个局部区域是否包括至少所述阈值数目的特征点;
如果所述参考图像的给定的局部区域包括至少所述阈值数目的特征点,则确定所述给定的局部区域的单应性;以及
如果所述参考图像的给定的局部区域不包括至少所述阈值数目的特征点,则将所述给定的局部区域与所述参考图像的附加局部区域合并以形成合并的局部区域,并且确定所述合并的局部区域的所述单应性。
12.根据权利要求11所述的系统,其中所述指令在由所述至少一个处理器执行时引起所述系统通过执行包括将鲁棒的单应性运动模型拟合到所述合并的局部区域的步骤来确定所述合并的局部区域的所述单应性。
13.根据权利要求11所述的系统,其中所述指令在由所述至少一个处理器执行时引起所述系统通过对接近于由所述后续图像的相应的局部区域中的两个或更多个局部区域共享的边界的所述单应性的单应性流矢量进行插值来使所述后续图像扭曲。
14.根据权利要求10所述的系统,还包括在由所述至少一个处理器执行时引起所述系统进行以下操作的指令:
确定与所述后续图像的所述多个局部区域的连续拐角相对应的所述新的对准图像的拐角是否连续;
如果所述新的对准图像的所述拐角不连续,则确定所述新的对准图像的非连续拐角的平均坐标;以及
利用所述平均坐标作为所述连续拐角的坐标来确定所述参考图像的所述多个局部区域中的每个局部区域的单应性。
15.一种从突发图像生成对准图像的计算机实现的方法,所述方法包括:
将参考图像和后续图像细分为多个局部区域;
检测所述参考图像和所述后续图像的所述局部区域中的多个特征点;
确定所述参考图像与所述后续图像之间的匹配的特征点对;
将所述参考图像的未包括阈值数目的特征点的局部区域与所述特征图像的另一局部区域合并;
基于所述匹配的特征点对,执行用于确定所述参考图像的每个局部区域和合并的局部区域的单应性的步骤,每个局部区域的所述单应性将特征点从所述参考图像的局部区域映射到所述后续图像的相应的局部区域;以及
基于所述参考图像的每个局部区域和合并的局部区域的所述单应性来使所述后续图像扭曲,以生成与所述参考图像对准的新的对准图像。
16.权利要求15所述的计算机实现的方法,其中确定所述参考图像与所述后续图像之间的匹配的特征点对包括至少部分地基于所述特征点的特征描述符之间的汉明距离来确定彼此最相似的特征点。
17.根据权利要求15所述的计算机实现的方法,其中细分参考图像和后续图像中的每个图像包括将所述参考图像细分为至少四个局部区域并且将所述后续图像细分为至少四个相应的局部区域。
18.根据权利要求17所述的计算机实现的方法,其中将所述参考图像细分为至少四个局部区域并且将所述后续图像细分为至少四个相应的局部区域包括使用2×2空间网格来细分所述参考图像和所述后续图像。
19.根据权利要求15所述的计算机实现的方法,其中检测多个特征点包括从所述多个局部区域中的每个局部区域中选择具有最高置信度的顶部数目的特征点。
CN201710906374.3A 2016-12-06 2017-09-29 突发模式图像的图像对准 Active CN108154526B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201662430709P 2016-12-06 2016-12-06
US62/430,709 2016-12-06
US15/676,903 2017-08-14
US15/676,903 US10453204B2 (en) 2016-12-06 2017-08-14 Image alignment for burst mode images

Publications (2)

Publication Number Publication Date
CN108154526A CN108154526A (zh) 2018-06-12
CN108154526B true CN108154526B (zh) 2023-09-22

Family

ID=62243967

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710906374.3A Active CN108154526B (zh) 2016-12-06 2017-09-29 突发模式图像的图像对准

Country Status (3)

Country Link
US (1) US10453204B2 (zh)
CN (1) CN108154526B (zh)
AU (1) AU2017232186B2 (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10560666B2 (en) * 2017-01-21 2020-02-11 Microsoft Technology Licensing, Llc Low-cost, long-term aerial imagery
CN107633526B (zh) * 2017-09-04 2022-10-14 腾讯科技(深圳)有限公司 一种图像跟踪点获取方法及设备、存储介质
US10977811B2 (en) * 2017-12-20 2021-04-13 AI Analysis, Inc. Methods and systems that normalize images, generate quantitative enhancement maps, and generate synthetically enhanced images
JP7067812B2 (ja) * 2018-03-20 2022-05-16 日本電気株式会社 情報処理装置、及び制御方法
CN109242894B (zh) * 2018-08-06 2021-04-09 广州视源电子科技股份有限公司 一种基于移动最小二乘法的图像对齐方法及系统
US10783649B2 (en) * 2018-09-17 2020-09-22 Adobe Inc. Aligning digital images by selectively applying pixel-adjusted-gyroscope alignment and feature-based alignment models
CN112823375A (zh) * 2018-11-09 2021-05-18 三星电子株式会社 使用前向扭曲、间隙鉴别器和基于坐标的修复的图像再合成
US10896493B2 (en) * 2018-11-13 2021-01-19 Adobe Inc. Intelligent identification of replacement regions for mixing and replacing of persons in group portraits
US20200160560A1 (en) * 2018-11-19 2020-05-21 Canon Kabushiki Kaisha Method, system and apparatus for stabilising frames of a captured video sequence
CN110097015B (zh) * 2019-05-08 2020-05-26 杭州视在科技有限公司 一种基于稠密特征点匹配的球机预置位偏移自动识别方法
IT201900007815A1 (it) * 2019-06-03 2020-12-03 The Edge Company S R L Metodo per il rilevamento di oggetti in movimento
DE102019116381A1 (de) * 2019-06-17 2020-12-17 Schölly Fiberoptic GmbH Verfahren zur Bestimmung der Bildposition eines Markierungspunktes in einem Bild einer Bildsequenz
CN110413813B (zh) * 2019-06-25 2023-05-12 宁波图达信息技术有限公司 一种相同或相似图像搜索方法
CN111028276A (zh) * 2019-12-09 2020-04-17 Oppo广东移动通信有限公司 图像对齐方法、装置、存储介质及电子设备
US11354883B2 (en) 2019-12-30 2022-06-07 Sensetime International Pte. Ltd. Image processing method and apparatus, and electronic device
SG10201913798WA (en) * 2019-12-30 2021-07-29 Sensetime Int Pte Ltd Image processing method and apparatus, and electronic device
CN111476780B (zh) * 2020-04-07 2023-04-07 腾讯科技(深圳)有限公司 一种图像检测方法、装置、电子设备以及存储介质
JP7253573B2 (ja) 2020-04-09 2023-04-06 センスタイム インターナショナル ピーティーイー.リミテッド マッチング方法、装置、電子機器及びコンピュータ可読記憶媒体
SG10202003292XA (en) * 2020-04-09 2021-11-29 Sensetime Int Pte Ltd Matching method and apparatus, electronic device, computer-readable storage medium, and computer program
KR20210133472A (ko) * 2020-04-29 2021-11-08 삼성전자주식회사 이미지 병합 방법 및 이를 수행하는 데이터 처리 장치
US11625843B2 (en) * 2020-06-24 2023-04-11 Bluebeam, Inc. Systems and methods for automatic alignment of drawings
CN112348863B (zh) * 2020-11-09 2022-06-21 Oppo广东移动通信有限公司 图像对齐方法、图像对齐装置及终端设备
US11922666B2 (en) * 2021-04-13 2024-03-05 Pixart Imaging Inc. Object presence detection using raw images
US11676314B2 (en) * 2021-11-08 2023-06-13 Adobe Inc. Boundary correspondence determination for digital objects

Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6658168B1 (en) * 1999-05-29 2003-12-02 Lg Electronics Inc. Method for retrieving image by using multiple features per image subregion
KR20040061223A (ko) * 2002-12-30 2004-07-07 엘지산전 주식회사 카메라 캘리브레이션을 이용한 교통정보 추출 방법 및 장치
US6785427B1 (en) * 2000-09-20 2004-08-31 Arcsoft, Inc. Image matching using resolution pyramids with geometric constraints
CN102714697A (zh) * 2010-11-11 2012-10-03 松下电器产业株式会社 图像处理装置、图像处理方法及程序
CN103971400A (zh) * 2013-02-06 2014-08-06 阿里巴巴集团控股有限公司 一种基于标识码的三维交互的方法和系统
CN104115189A (zh) * 2011-11-18 2014-10-22 日本电气株式会社 局部特征量提取装置、用于提取局部特征量的方法和程序
CN104272344A (zh) * 2012-10-24 2015-01-07 株式会社摩如富 图像处理装置、图像处理方法、图像处理程序以及记录介质
CN104574347A (zh) * 2013-10-24 2015-04-29 南京理工大学 基于多源遥感数据的在轨卫星图像几何定位精度评价方法
CN104599258A (zh) * 2014-12-23 2015-05-06 大连理工大学 一种基于各向异性特征描述符的图像拼接方法
CN104778682A (zh) * 2014-01-14 2015-07-15 三星泰科威株式会社 对特征点采样的方法、图像匹配方法和图像匹配设备
US9177224B1 (en) * 2013-03-14 2015-11-03 Amazon Technologies, Inc. Object recognition and tracking
GB201603665D0 (en) * 2016-03-02 2016-04-13 Holition Ltd Augmenting object features in images
CN105518709A (zh) * 2015-03-26 2016-04-20 北京旷视科技有限公司 用于识别人脸的方法、系统和计算机程序产品
CA2967804A1 (en) * 2014-11-14 2016-05-19 Schlumberger Canada Limited Image feature alignment
CN105635719A (zh) * 2014-11-20 2016-06-01 三星电子株式会社 用于校准图像的方法和设备
CN105809619A (zh) * 2015-01-19 2016-07-27 株式会社理光 用于线性全景图像拼接的图像获取用户界面
CN106023230A (zh) * 2016-06-02 2016-10-12 辽宁工程技术大学 一种适合变形图像的稠密匹配方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6211913B1 (en) * 1998-03-23 2001-04-03 Sarnoff Corporation Apparatus and method for removing blank areas from real-time stabilized images by inserting background information
WO2012096163A1 (ja) * 2011-01-13 2012-07-19 パナソニック株式会社 画像処理装置、画像処理方法、及びそのプログラム
WO2013029675A1 (en) * 2011-08-31 2013-03-07 Metaio Gmbh Method for estimating a camera motion and for determining a three-dimensional model of a real environment
US8699819B1 (en) 2012-05-10 2014-04-15 Google Inc. Mosaicing documents for translation using video streams
US20140037189A1 (en) * 2012-08-02 2014-02-06 Qualcomm Incorporated Fast 3-D point cloud generation on mobile devices
US9384551B2 (en) * 2013-04-08 2016-07-05 Amazon Technologies, Inc. Automatic rectification of stereo imaging cameras
US9693076B2 (en) * 2014-01-07 2017-06-27 Samsung Electronics Co., Ltd. Video encoding and decoding methods based on scale and angle variation information, and video encoding and decoding apparatuses for performing the methods
US10210427B2 (en) * 2014-07-09 2019-02-19 Slyce Acquisition Inc. Systems, methods, and devices for image matching and object recognition in images
US9508151B2 (en) * 2014-07-10 2016-11-29 Ditto Labs, Inc. Systems, methods, and devices for image matching and object recognition in images using image regions
US9443164B2 (en) * 2014-12-02 2016-09-13 Xerox Corporation System and method for product identification
US9965861B2 (en) * 2014-12-29 2018-05-08 Intel Corporation Method and system of feature matching for multiple images
US10290111B2 (en) 2016-07-26 2019-05-14 Qualcomm Incorporated Systems and methods for compositing images

Patent Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6658168B1 (en) * 1999-05-29 2003-12-02 Lg Electronics Inc. Method for retrieving image by using multiple features per image subregion
US6785427B1 (en) * 2000-09-20 2004-08-31 Arcsoft, Inc. Image matching using resolution pyramids with geometric constraints
KR20040061223A (ko) * 2002-12-30 2004-07-07 엘지산전 주식회사 카메라 캘리브레이션을 이용한 교통정보 추출 방법 및 장치
CN102714697A (zh) * 2010-11-11 2012-10-03 松下电器产业株式会社 图像处理装置、图像处理方法及程序
CN104115189A (zh) * 2011-11-18 2014-10-22 日本电气株式会社 局部特征量提取装置、用于提取局部特征量的方法和程序
CN104272344A (zh) * 2012-10-24 2015-01-07 株式会社摩如富 图像处理装置、图像处理方法、图像处理程序以及记录介质
CN103971400A (zh) * 2013-02-06 2014-08-06 阿里巴巴集团控股有限公司 一种基于标识码的三维交互的方法和系统
US9177224B1 (en) * 2013-03-14 2015-11-03 Amazon Technologies, Inc. Object recognition and tracking
CN104574347A (zh) * 2013-10-24 2015-04-29 南京理工大学 基于多源遥感数据的在轨卫星图像几何定位精度评价方法
CN104778682A (zh) * 2014-01-14 2015-07-15 三星泰科威株式会社 对特征点采样的方法、图像匹配方法和图像匹配设备
CA2967804A1 (en) * 2014-11-14 2016-05-19 Schlumberger Canada Limited Image feature alignment
CN105635719A (zh) * 2014-11-20 2016-06-01 三星电子株式会社 用于校准图像的方法和设备
CN104599258A (zh) * 2014-12-23 2015-05-06 大连理工大学 一种基于各向异性特征描述符的图像拼接方法
CN105809619A (zh) * 2015-01-19 2016-07-27 株式会社理光 用于线性全景图像拼接的图像获取用户界面
CN105518709A (zh) * 2015-03-26 2016-04-20 北京旷视科技有限公司 用于识别人脸的方法、系统和计算机程序产品
GB201603665D0 (en) * 2016-03-02 2016-04-13 Holition Ltd Augmenting object features in images
CN106023230A (zh) * 2016-06-02 2016-10-12 辽宁工程技术大学 一种适合变形图像的稠密匹配方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Image Forgery Detection Using Adaptive Oversegmentation and Feature Point Matching;Chi-Man Pun等;《IEEE Transactions on Information Forensics and Security》;20150415;1705 - 1716 *
图像配准中基于特征提取和匹配的方法研究;陈磊;《中国优秀硕士学位论文电子期刊》;27-53页 *

Also Published As

Publication number Publication date
AU2017232186B2 (en) 2021-07-08
CN108154526A (zh) 2018-06-12
US10453204B2 (en) 2019-10-22
AU2017232186A1 (en) 2018-06-21
US20180158199A1 (en) 2018-06-07

Similar Documents

Publication Publication Date Title
CN108154526B (zh) 突发模式图像的图像对准
US10187546B2 (en) Method and device for correcting document image captured by image pick-up device
EP3175427B1 (en) System and method of pose estimation
US11727707B2 (en) Automatic image capture system based on a determination and verification of a physical object size in a captured image
WO2019042419A1 (zh) 图像跟踪点获取方法、设备及存储介质
US11908183B2 (en) Image analysis and processing pipeline with real-time feedback and autocapture capabilities, and visualization and configuration system
CN111489396A (zh) 利用临界边缘检测神经网络和几何模型确定相机参数
US10122912B2 (en) Device and method for detecting regions in an image
JPWO2013089265A1 (ja) 辞書作成装置、画像処理装置、画像処理システム、辞書作成方法、画像処理方法及びプログラム
CN114298902A (zh) 一种图像对齐方法、装置、电子设备和存储介质
US9077926B2 (en) Image processing method and image processing apparatus
GB2557417A (en) Image alignment for burst mode images
KR102665603B1 (ko) 스테레오 매칭을 위한 하드웨어 디스패러티 평가
JPWO2013089261A1 (ja) 画像処理システム及び画像処理方法
US11216961B2 (en) Aligning digital images by selectively applying pixel-adjusted-gyroscope alignment and feature-based alignment models
WO2019184719A1 (zh) 一种拍照的方法和装置
CN110827194A (zh) 图像处理的方法、装置及计算机存储介质
JP2017162179A (ja) 情報処理装置、情報処理方法、及びプログラム
CN110619597A (zh) 一种半透明水印去除方法、装置、电子设备及存储介质
US9361540B2 (en) Fast image processing for recognition objectives system
JP2009193576A (ja) 対象物の方向性を算出する方法、対象物の方向性を算出する装置およびコンピューター可読媒体
JP2014029677A (ja) 画像処理装置、画像処理方法および画像処理プログラム
KR20240059328A (ko) 주요 객체 정보를 활용한 영상 구도 분석 및 개선을 위한 방법, 컴퓨터 장치, 및 컴퓨터 프로그램
CN116503448A (zh) 一种自适应分块估算位移的多曝光图像配准方法、装置及设备
CN114820672A (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