CN109215077B - 一种相机姿态信息确定的方法及相关装置 - Google Patents

一种相机姿态信息确定的方法及相关装置 Download PDF

Info

Publication number
CN109215077B
CN109215077B CN201710552105.1A CN201710552105A CN109215077B CN 109215077 B CN109215077 B CN 109215077B CN 201710552105 A CN201710552105 A CN 201710552105A CN 109215077 B CN109215077 B CN 109215077B
Authority
CN
China
Prior art keywords
image
feature point
homography matrix
matrix
determining
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
CN201710552105.1A
Other languages
English (en)
Other versions
CN109215077A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910834144.XA priority Critical patent/CN110517319B/zh
Priority to CN201710552105.1A priority patent/CN109215077B/zh
Priority to TW107121953A priority patent/TWI683259B/zh
Priority to KR1020197030212A priority patent/KR102319207B1/ko
Priority to PCT/CN2018/093418 priority patent/WO2019007258A1/zh
Priority to JP2019548070A priority patent/JP6824433B2/ja
Priority to EP18828662.9A priority patent/EP3579192B1/en
Publication of CN109215077A publication Critical patent/CN109215077A/zh
Priority to US16/386,143 priority patent/US10963727B2/en
Priority to US17/183,200 priority patent/US11605214B2/en
Application granted granted Critical
Publication of CN109215077B publication Critical patent/CN109215077B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • 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
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/02Affine transformations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/04Context-preserving transformations, e.g. by using an importance map
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/20Image enhancement or restoration using local operators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • G06T7/248Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/269Analysis of motion using gradient-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition
    • G06V10/17Image acquisition using hand-held instruments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/22Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
    • G06V10/225Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition based on a marking or identifier characterising the area
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/26Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
    • 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
    • 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
    • G06V10/443Local 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 by matching or filtering
    • 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
    • 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
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • 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/20076Probabilistic image processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30204Marker
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30204Marker
    • G06T2207/30208Marker matrix
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Analysis (AREA)
  • Studio Devices (AREA)

Abstract

本发明实施例公开了一种相机姿态信息确定的方法,包括:获取第一图像、第二图像以及模板图像;从模板图像的每个图像层中分别提取第一特征点,并在原始图像层中确定第一特征点;将第一特征点与第二特征点进行匹配,以在原始图像层的每个栅格中确定一个目标特征点,目标特征点用于确定第一单应矩阵;根据第一图像中的第一光流特征点和第二图像的第二光流特征点确定第一目标单应矩阵,并根据第一目标单应矩阵和模板图像中的第三光流特征点确定第二单应矩阵;根据第一单应矩阵与第二单应矩阵确定相机姿态信息。本发明还提供一种相机姿态信息确定装置。本发明实施例可以在保证运行效率的情况下,利用目标特征点可以获取到精度较高的相机姿态信息。

Description

一种相机姿态信息确定的方法及相关装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种相机姿态信息确定的方法及相关装置。
背景技术
增强现实(Augmented Reality,AR)技术,是一种实时地计算摄影机影像的位置及角度并加上相应图像、视频或3D模型的技术,这种技术的目标是在屏幕上把虚拟世界套在现实世界并进行互动。
目前,在AR类的游戏宣传等互动场景中,可以采用自然图像作为用于匹配的模板图像(Marker)并得到相应的相机姿态信息。自然图像即为正常拍摄的图像,Marker图像除了可以是自然图像,还可以是规则图像。即具有非常明显几何特征的图像。在根据Marker图像得到相机姿态信息的过程中,首先需要对Marker图像进行检测,在检测到Marker图像之后依赖于对其特征点的追踪进行相机定位,即得到相机姿态信息。
然而,在当前图像中追踪Marker图像的特征点时,并没有考虑到特征点的变化。在仿射变换明显的情况下,若将Marker图像中一个图像层的特征点与当前图像中的特征点进行匹配,所得到的相机姿态信息精度较低;若获取Marker图像中多个图像层,并将每个图像层的特征点与当前图像中的特征点进行匹配,则需要过多的匹配开销,不利于运行效率。
发明内容
本发明实施例提供了一种相机姿态信息确定的方法及相关装置,将模板图像划分为多个相等的栅格,且一个栅格中仅存在一个目标特征点,因此目标特征点分布较为均匀并具有较高的匹配度和融合度,从而在保证运行效率的情况下,利用目标特征点可以获取到精度较高的相机姿态信息。
有鉴于此,本发明第一方面提供一种相机姿态信息确定的方法,包括:
获取第一图像、第二图像以及模板图像,其中,所述第一图像是所述第二图像的上一帧图像,所述模板图像为待匹配的图像,所述模板图像包含多个图像层;
从所述模板图像的每个图像层中分别提取第一特征点,并在原始图像层中确定所述第一特征点,所述原始图像层为所述模板图像中的一个图像层,所述原始图像层中包含多个栅格;
将所述第一特征点与第二特征点进行匹配,以在所述原始图像层的每个栅格中确定一个目标特征点,其中,所述目标特征点为所述第一特征点与所述第二特征点之间匹配度最大的特征点,所述目标特征点用于确定第一单应矩阵,所述第二特征点是从所述第二图像中提取的特征点;
根据所述第一图像中的第一光流特征点和所述第二图像的第二光流特征点确定第一目标单应矩阵,并根据所述第一目标单应矩阵和第二目标单应矩阵确定第二单应矩阵;
根据所述第一单应矩阵与所述第二单应矩阵确定相机姿态信息。
本发明第二方面提供了一种相机姿态信息确定装置,包括:
第一获取模块,用于获取第一图像、第二图像以及模板图像,其中,所述第一图像是所述第二图像的上一帧图像,所述模板图像为待匹配的图像,所述模板图像包含多个图像层;
第一提取模块,用于从所述第一获取模块获取的所述模板图像的每个图像层中分别提取第一特征点,并在原始图像层中确定所述第一特征点,所述原始图像层为所述模板图像中的一个图像层,所述原始图像层中包含多个栅格;
匹配模块,用于将所述第一提取模块提取的所述第一特征点与第二特征点进行匹配,以在所述原始图像层的每个栅格中确定一个目标特征点,其中,所述目标特征点为所述第一特征点与所述第二特征点之间匹配度最大的特征点,所述目标特征点用于确定第一单应矩阵,所述第二特征点是从所述第二图像中提取的特征点;
第一确定模块,用于根据所述第一图像中的第一光流特征点和所述第二图像的第二光流特征点确定第一目标单应矩阵,并根据所述第一目标单应矩阵和第二目标单应矩阵确定第二单应矩阵;
第二确定模块,用于根据所述第一单应矩阵与所述第一确定模块确定的所述第二单应矩阵确定相机姿态信息。
本发明第三方面提供了一种相机姿态信息确定装置,包括:存储器、收发器、处理器以及总线***;
其中,所述存储器用于存储程序;
所述处理器用于执行所述存储器中的程序,具体包括如下步骤:
获取第一图像、第二图像以及模板图像,其中,所述第一图像是所述第二图像的上一帧图像,所述模板图像为待匹配的图像,所述模板图像包含多个图像层;
从所述模板图像的每个图像层中分别提取第一特征点,并在原始图像层中确定所述第一特征点,所述原始图像层为所述模板图像中的一个图像层,所述原始图像层中包含多个栅格;
将所述第一特征点与第二特征点进行匹配,以在所述原始图像层的每个栅格中确定一个目标特征点,其中,所述目标特征点为所述第一特征点与所述第二特征点之间匹配度最大的特征点,所述目标特征点用于确定第一单应矩阵,所述第二特征点是从所述第二图像中提取的特征点;
根据所述第一图像中的第一光流特征点和所述第二图像的第二光流特征点确定第一目标单应矩阵,并根据所述第一目标单应矩阵和第二目标单应矩阵确定第二单应矩阵;
根据所述第一单应矩阵与所述第二单应矩阵确定相机姿态信息;
所述总线***用于连接所述存储器、所述收发器以及所述处理器,以使所述存储器、所述收发器以及所述处理器进行通信。
本发明的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
从以上技术方案可以看出,本发明实施例具有以下优点:
本发明实施例中,提供一种相机姿态信息确定的方法,相机姿态信息确定装置首选获取第一图像、第二图像以及模板图像,然后从模板图像的每个图像层中分别提取第一特征点,并在原始图像层中确定第一特征点,原始图像层为模板图像中的一个图像层,原始图像层中包含多个栅格,相机姿态信息确定装置再将第一特征点与第二特征点进行匹配,以在原始图像层的每个栅格中确定一个目标特征点,其中,所述目标特征点为所述第一特征点与所述第二特征点之间匹配度最大的特征点,目标特征点用于确定第一单应矩阵,而第二特征点是从第二图像中提取的特征点,接下来,相机姿态信息确定装置可以根据第一图像中的第一光流特征点和第二图像的第二光流特征点确定第一目标单应矩阵,并根据第一目标单应矩阵和第二目标单应矩阵确定第二单应矩阵,最后根据第一单应矩阵与第二单应矩阵确定相机姿态信息。通过上述方式,将模板图像划分为多个相等的栅格,且一个栅格中仅存在一个目标特征点,因此目标特征点分布较为均匀并具有较高的匹配度和融合度,从而在保证运行效率的情况下,利用目标特征点可以获取到精度较高的相机姿态信息。
附图说明
图1为本发明实施例中Marker图像的示意图;
图2为本发明实施例中在当前图像中检测到Marker图像的示意图;
图3为本发明实施例中确定相机姿态信息的一个流程示意图;
图4为本发明实施例中相机姿态信息确定的方法一个实施例示意图;
图5为本发明实施例中模板图像的示意图;
图6为本发明实施例中在原始图像层上确定目标特征点的实施例示意图;
图7为本发明实施例中对第一旋转平移矩阵和第二旋转平移矩阵进行滤波处理的实施例示意图;
图8为本发明实施例中相机姿态信息确定装置一个实施例示意图;
图9为本发明实施例中相机姿态信息确定装置另一个实施例示意图;
图10为本发明实施例中相机姿态信息确定装置另一个实施例示意图;
图11为本发明实施例中相机姿态信息确定装置另一个实施例示意图;
图12为本发明实施例中相机姿态信息确定装置另一个实施例示意图;
图13为本发明实施例中相机姿态信息确定装置另一个实施例示意图;
图14为本发明实施例中相机姿态信息确定装置另一个实施例示意图;
图15为本发明实施例中相机姿态信息确定装置另一个实施例示意图;
图16为本发明实施例中相机姿态信息确定装置另一个实施例示意图;
图17为本发明实施例中相机姿态信息确定装置一个结构示意图。
具体实施方式
本发明实施例提供了一种相机姿态信息确定的方法及相关装置,将模板图像划分为多个相等的栅格,且一个栅格中仅存在一个目标特征点,因此目标特征点分布较为均匀并具有较高的匹配度和融合度,从而在保证运行效率的情况下,利用目标特征点可以获取到精度较高的相机姿态信息。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应理解,本发明针对移动设备运算能力低的特点,本方案利用互补滤波算法准确地融合对用户储存的自然图像的检测结果及图像帧间追踪的结果,从而实现了一套稳定的、快速的且鲁棒性强的相机姿态信息确定方法。该方法可以应用于AR场景,如AR类的游戏宣传等互动场景。基于Marker图像的相机定位及姿态矫正等应用中。本发明中的模板图像即为Marker图像。
Marker图像包括某种规则图像或者正常拍摄的自然图像,自然图像是指正常的一张拍摄图像,规则图像是具有非常明显几何特征的图像,如一个黑色矩形框,棋盘格等。
下面将介绍一个具体场景,假设用户希望能够直接在某一个指定的场景(如给定一个图像)上进行交互操作,这样可以便于引导用户体验。请参阅图1,图1为本发明实施例中Marker图像的示意图,如图所示,在智能手机的AR游戏中,用户可以通过一张给定的自然图像,或者用手机现场拍摄一张图作为Marker图像,之后手机将在当前图像中检测该Marker部分,并在Marker坐标系上绘制一个虚拟物体,如图2所示,图2为本发明实施例中在当前图像中检测到Marker图像的示意图,从而完成和用户的互动。
为了便于理解,请参阅图3,图3为本发明实施例中确定相机姿态信息的一个流程示意图,如图所示,在101模块中首先加载新的一帧图像,然后通过103模块的检测器检测出模板图像到当前图像(即第二图像)的第一单应矩阵,进而在105模块判断是否得到第一单应矩阵,如果是,则到达107模块。在102模块中判断追踪器是否已经初始化,若是,则进入模块104,若否,则跳转至101模块。
模块104中将追踪模板图像,并更新第二单应矩阵。于是可以在模块107中将第一单应矩阵和第二单应矩阵进行融合,在模块108中输出融合后得到的相机姿态信息。如果105模块判断出检测有结果且109模块判断追踪器没有初始化,则初始化追踪器,追踪器从下一帧开始工作。
可以理解的是,检测器和追踪器属于相机姿态信息确定装置。
下面将从相机姿态信息确定装置的角度,对本发明中相机姿态信息确定的方法进行介绍,请参阅图4,本发明实施例中相机姿态信息确定的方法一个实施例包括:
201、获取第一图像、第二图像以及模板图像,其中,第一图像是第二图像的上一帧图像,模板图像为待匹配的图像,模板图像包含多个图像层;
本实施例中,相机姿态信息确定装置获取第一图像、第二图像以及模板图像,其中,第一图像是第二图像的上一帧图像,第二图像可以理解为是当前拍摄到的图像。而模板图像为待匹配的图像,也可以称为Marker图像,模板图像包含多个图像层。
相机姿态信息确定装置可以终端设备,例如手机、平板电脑、个人数字助理(Personal Digital Assistant,PDA)、销售终端(Point of Sales,POS)或者车载电脑等任意终端设备。
202、从模板图像的每个图像层中分别提取第一特征点,并在原始图像层中确定第一特征点,原始图像层为模板图像中的一个图像层,原始图像层中包含多个栅格;
本实施例中,由于模板图像包含了多个图像层,通常情况下,这些图像层的尺寸大小不一致。对于原始的模板图像降采样生成金字塔,对于每一层都提取第一特征点,故得到了多个尺度下的模板图像的多层特征描述子(即第一特征点),同时放缩这些第一特征点,把所有第一特征点的位置放缩到原始图像层的大小,并制作一个原始图像层大小的掩膜(即掩膜的尺寸和原始图形层的尺寸一致),将掩膜均匀划分成多个小栅格备用。
需要说明的是,第一特征点可以是尺度不变特征变换(scale-invariant featuretransform,SIFT),或者加速稳健特征(speeded-up robust features,SURF),或者快速提取和描述(oriented fast and rotated brief,ORB)特征点,或者方向梯度直方图(histogram of oriented gradient,HOG)特征,或者局部二值模式(local binarypatterns,LBP),为了保证实时性,我们在本方案中采用ORB特征点作为第一特征点,然而这并不构成对本方案的限定。
ORB特征点是加速算法的描述子,添加了旋转不变性,速度很快。
203、将第一特征点与第二特征点进行匹配,以在原始图像层的每个栅格中确定一个目标特征点,其中,目标特征点为第一特征点与第二特征点之间匹配度最大的特征点,目标特征点用于确定第一单应矩阵,第二特征点是从第二图像中提取的特征点;
本实施例中,由于第一特征点没有尺度不变性,而我们的应用中模板图像尺度变化很明显,用户可能在不同的尺度下拍摄到模板图像,故必须解决尺度问题。于是需要通过对模板图像生成金字塔,每一层都提取第一特征点,然后和第二图像中的第二特征点进行匹配。
相机姿态信息确定装置检测当前拍摄的第二图像中可能存在的模板图像,原理是将第二图像上提取的第二特征点与原始图像层上的第一特征点进行匹配,匹配规则为在原始图像层中的每个栅格上选择一个特征点作为目标特征点,然后利用这些目标特征点计算第一单应矩阵。
204、根据第一图像中的第一光流特征点和第二图像的第二光流特征点确定第一目标单应矩阵,并根据第一目标单应矩阵和第二目标单应矩阵确定第二单应矩阵;
本实施例中,步骤202至步骤203是完成了模板图像的检测工作,在步骤204中相机姿态信息确定装置需要追踪图像。具体地,在追踪图像时主要采用光流Lucas-Kanade算法,从新图像来时利用上一帧图像(即第一图像)提取的第一光流特征点进行光流,从而找到两帧之间的匹配点,从而计算出第一图像到第二图像的第一目标单应矩阵,以及模板图像到第一图像的第二目标单应矩阵,进而得到模板图像到第二图像的第二单应矩阵。
205、根据第一单应矩阵与第二单应矩阵确定相机姿态信息。
本实施例中,相机姿态信息确定装置根据第一单应矩阵和第二单应矩阵可以计算得到相机姿态信息。
本发明实施例中,提供一种相机姿态信息确定的方法,相机姿态信息确定装置首选获取第一图像、第二图像以及模板图像,然后从模板图像的每个图像层中分别提取第一特征点,并在原始图像层中确定第一特征点,原始图像层为模板图像中的一个图像层,原始图像层中包含多个栅格,相机姿态信息确定装置再将第一特征点与第二特征点进行匹配,以在原始图像层的每个栅格中确定一个目标特征点,其中,所述目标特征点为所述第一特征点与所述第二特征点之间匹配度最大的特征点,目标特征点用于确定第一单应矩阵,而第二特征点是从第二图像中提取的特征点,接下来,相机姿态信息确定装置可以根据第一图像中的第一光流特征点和第二图像的第二光流特征点确定第一目标单应矩阵,并根据第一目标单应矩阵和第二目标单应矩阵确定第二单应矩阵,最后根据第一单应矩阵与第二单应矩阵确定相机姿态信息。通过上述方式,将模板图像划分为多个相等的栅格,且一个栅格中仅存在一个目标特征点,因此目标特征点分布较为均匀并具有较高的匹配度和融合度,从而在保证运行效率的情况下,利用目标特征点可以获取到精度较高的相机姿态信息。
可选地,在上述图4对应的实施例的基础上,本发明实施例提供的相机姿态信息确定的方法第一个可选实施例中,从模板图像的每个图像层中分别提取第一特征点,并在原始图像层中确定第一特征点,可以包括:
从模板图像的第一图像层中提取第一特征点;
从模板图像的第二图像层中提取第一特征点,其中,第一图像层与第二图像层具有不同的尺寸大小;
对第一图像层的中的第一特征点以及第二图像层中的第一特征点进行缩放处理,并投影至原始图像层。
本实施例中,将介绍在原始图像层中确定第一特征点的方式。首先在模板图像中提取多层图像,且这些图像的尺寸呈金字塔型,即图像的尺寸从小到大排序。假设第一图像层在第二图像层之上,那么可以认为第一图像层比第二图像层的尺寸小一些。然后相机姿态信息确定装置分别从第一图像层和第二图像层中提取第一特征点,再将所有的第一特征点进行缩放,以投影到原始图像层上。
可以理解的是,原始图像层的尺寸可以根据实际情况进行设计,此处不作限定。
其次,本发明实施例中,相机姿态信息确定装置首先从模板图像的第一图像层中提取第一特征点,从模板图像的第二图像层中提取第一特征点,其中,第一图像层与第二图像层具有不同的尺寸大小,然后对第一图像层的中的第一特征点以及第二图像层中的第一特征点进行缩放处理,并投影至原始图像层。通过上述方式,可以在模板图像对应的原始图形层上融合每个图形层提取出来的所有第一特征点,从而得到尽可能多的第一特征点以便于对这些第一特征点进行进一步的筛选,由此提升筛选的准确度。同时增强了匹配性能,保证了在大尺度变化下也能检测到物体。
可选地,在上述图4对应的第一个实施例的基础上,本发明实施例提供的相机姿态信息确定的方法第二个可选实施例中,将第一特征点与第二特征点进行匹配之前,还可以包括:
从第二图像中提取第二特征点;
将第一特征点与第二特征点进行匹配,以在原始图像层的每个栅格中确定一个目标特征点,可以包括:
在原始图像层的每个栅格中,将第一特征点与第二特征点进行匹配,并得到至少一个待选择特征点,其中,每个待选择特征点对应一个匹配分值;
在原始图像层的每个栅格中,从至少一个待选择特征点中选择匹配分值最高的特征点作为目标特征点。
本实施例中,假设模板图像倾斜很严重,如图5所示,图5为本发明实施例中模板图像的示意图,这种情况下左半部分尺度很小,而右半部分尺度很大,单一一层的金字塔空间无法准确描述这种情况。因此,可以采用如下方式描述这类特征。
具体地,请参阅图6,图6为本发明实施例中在原始图像层上确定目标特征点的实施例示意图,对于原始的模板图像降采样生成金字塔,对于每一层都提取第一特征点,故得到了多个尺度下的模板图像的多层第一特征点。同时放缩特征点,把所有特征点的位置放缩统一到原始图像层大小,并制作一个原始图像层大小的掩膜,均匀划分成多个小栅格备用。
对于新读取的每一张图像,只提取一次第二特征点,然后分别与原始图像层上的第一特征点进行匹配,即可得到多个尺度下特征匹配。对于上述的每一个匹配,都包括有一个当前图像上的点和一个模板图像上的点,对于模板图像上的点而言,由于每个点有多个尺度且都放缩到了原始图像层大小,故会有多个匹配上的特征点聚集在同一个栅格区域内。对于每一个栅格内,只选取一个匹配分数最高的点作为代表。通过网格过滤器的筛选,就可以得到一组栅格筛选后的模板图像到第二图像的匹配。
在这样的模板图像的栅格里,可能融合了不止一层的特征点。我们的栅格筛选法就相当于平滑了相邻的两层特征点,按照比例利用了两层的匹配信息,因此可以大大降低需要的金字塔层数。栅格筛选自动的选择对应尺度,在左半部分选择了低尺度,在右半部分选择了高尺度,从而可以匹配的更好。
再次,本发明实施例中,相机姿态信息确定装置先从第二图像中提取第二特征点,然后在原始图像层的每个栅格中,将第一特征点与第二特征点进行匹配,并得到至少一个待选择特征点,其中,每个待选择特征点对应一个匹配分值,最后在原始图像层的每个栅格中,从至少一个待选择特征点中选择匹配分值最高的特征点作为目标特征点。通过上述方式,采用栅格限制了匹配的最大数量,保证了计算第一单应矩阵的稳定性,且在运行是只对第二图像提取一次第二特征点,增加的特征匹配耗时较小,并不会影响运行速度,从而加快了匹配效率。
可选地,在上述图4对应的实施例的基础上,本发明实施例提供的相机姿态信息确定的方法第三个可选实施例中,根据第一图像中的第一光流特征点和第二图像的第二光流特征点确定第一目标单应矩阵,可以包括:
在第一图像的预设区域中获取第一光流特征点;
根据所述第一光流特征点获取第二光流特征点;
根据第一光流特征点与第二光流特征点,计算从第一图像到第二图像的第一目标单应矩阵。
本实施例中,相机姿态信息确定装置在确定第一目标单应矩阵的过程中,需要在第一图像的预设区域中获取第一光流特征点,预设区域可以包括四个顶点,这四个顶点即初始化一个图像区域,在此区域上提取一些Shi-Tomasi角点作为第一光流特征点。
随着相机移动,之前的光流特征点可能会不那么好,尤其随着旋转和透视投影之前的光流点可能在当前图像上都不能再观测到,因此需要每隔数帧更新光流追踪的光流特征点。利用上一帧计算出来的预设区域的四个顶点(可以参阅图6右下方的图),缩小一圈找一个掩膜,利用光流算法在该掩膜中确定第二光流特征点。可以理解的是,这整个过程都是在后台线程运行,不影响主线程速度。通过上述方法,自动的更新了追踪的光流特征点,保证了光流算法的稳定性。根据第一光流特征点与第二光流特征点,计算从第一图像到第二图像的第一目标单应矩阵,该第一目标单应矩阵作为第一图像到模板图像的递推基础。
掩膜的像素数量小于预设区域的像素数量,这是因为我们需要得到模板图像上的光流特征点,边缘的特征点容易检测错误,所以缩小一圈得到的掩膜像素数量也就少了。
其次,本发明实施例中,相机姿态信息确定装置在在第一图像的预设区域中获取第一光流特征点,并且根据光流算法和第一光流特征点在第二图像的掩膜中获取第二光流特征点。最后根据第一光流特征点与第二光流特征点,计算从第一图像到第二图像的第一目标单应矩阵。通过上述方式,利用上一帧图像计算出来的预设区域顶点缩小一圈,得到掩膜,这样可以减少检测到边缘特征点的情况,从而降低检测的错误率。
可选地,在上述图4对应的第三个实施例的基础上,本发明实施例提供的相机姿态信息确定的方法第四个可选实施例中,根据第一目标单应矩阵和第二目标单应矩阵确定第二单应矩阵,可以包括:
获取模板图像到第一图像的第二目标单应矩阵;
根据第一目标单应矩阵和第二目标单应矩阵,计算从第二图像到模板图像的第二单应矩阵。
本实施例中,相机姿态信息确定装置在确定第二单应矩阵的过程中,需要在模板图像中获取第三光流特征点,然后根据第三光流特征点和第一光流特征点找到模板图像与第一图像的匹配点,从而计算出第三单应矩阵,第三单应矩阵乘以第一目标单应矩阵得到模板图像到第二图像的第二单应矩阵。
其中,当前图像为第二图像,上一帧图像即为第一图像。
再次,本发明实施例中,介绍了相机姿态信息确定确定第二单应矩阵的方式,即先获取获取模板图像到第一图像的第二目标单应矩阵,然后根据第一目标单应矩阵和第二目标单应矩阵,计算从第二图像到模板图像的第二单应矩阵。通过上述方式,可以利用光流特征点得到第二单应矩阵,从而提升方案的可行和实用性。
可选地,在上述图4对应的第三个或第四个实施例的基础上,本发明实施例提供的相机姿态信息确定的方法第五个可选实施例中,还可以包括:
若第二光流特征点的数量小于预设门限,则获取q个光流特征点作为第二光流特征点,以使第二光流特征点的数量达到预设门限,q为正整数。
本实施例中,如果第二图像中从掩膜中获取的第二光流特征点数量小于预设门限,说明剩下的第二光流特征点太少了,不足以表示掩膜的特征,因此需要再次在掩膜中提取q个光流特征点作为第二光流特征点,以使得第二光流特征点的数量达到预设门限。
可以理解的是,预设门限可以是50,或者100,也可以是其他的数值,此处不做限定。
进一步地,本发明实施例中,如果第二光流特征点的数量小于预设门限,则相机姿态信息确定装置从掩膜中获取q个光流特征点作为第二光流特征点,以使第二光流特征点的数量达到预设门限。通过上述方式,在第二光流特征点数量不够的情况下,可以重新提取新的光流特征点来弥补,也就相当于自动更新了追踪的特征点,提升了光流算法的稳定性。
可选地,在上述图4对应的实施例的基础上,本发明实施例提供的相机姿态信息确定的方法第六个可选实施例中,根据第一单应矩阵与第二单应矩阵确定相机姿态信息,可以包括:
根据第一单应矩阵确定第一旋转平移矩阵,并根据第二单应矩阵确定第二旋转平移矩阵,其中,第一单应矩阵和第二单应矩阵为二维信息,第一旋转平移矩阵与第二旋转平移矩阵为三维信息;
对第一旋转平移矩阵和第二旋转平移矩阵进行互补滤波处理,以获取相机姿态信息。
本实施例中,相机姿态信息确定装置在确定相机姿态信息时,需要分为两个步骤,第一个步骤主要为确定两个旋转平移矩阵。第二个步骤主要为对这两个旋转平移矩阵进行互补滤波处理,最后得到相机姿态信息。
将单应矩阵转换为旋转平移矩阵的过程,可以理解为是将二维坐标转换为三维坐标的过程,具体的实现方式可以参阅图4对应的第七个实施例。得到三维坐标即可确定模板图像在当前相机中的位置。
可以理解的是,对于相机姿态信息确定装置而言,耗时的部分主要在于检测上,对于一帧图像而言,追踪器追踪一帧图像最多不超过10毫秒,检测器检测一帧图像接近30毫秒。因此另外一种替代方案是,将第一旋转平移矩阵和第二旋转平移矩阵进行融合并不是在每一帧都做,而是将每一帧图像的检测和融合都放到后端线程,将融合得到的修正增量用于修正后续的相机姿态,这样主线程就只需要追踪的时间,检测和融合就不会阻塞主线程,计算速度就会得以提升。
其次,本发明实施例中,将确定相机姿态信息的过程分为两个部分,一部分为根据第一单应矩阵确定第一旋转平移矩阵,并根据第二单应矩阵确定第二旋转平移矩阵,另一部分为对第一旋转平移矩阵和第二旋转平移矩阵进行互补滤波处理,以获取相机姿态信息。通过上述方式,可以将二维的单应矩形分解成三维的旋转平移矩阵,由于将模板图像上的所有第一特征点都在原始图形层上做了融合,因此可以只得到一组旋转平移矩阵的解,从而提升方案的可操作性。采用互补滤波的方式能够得到更平滑的相机姿态信息。
可选地,在上述图4对应的第六个实施例的基础上,本发明实施例提供的相机姿态信息确定的方法第七个可选实施例中,根据第一单应矩阵确定第一旋转平移矩阵,并根据第二单应矩阵确定第二旋转平移矩阵,可以包括:
根据第一单应矩阵、第二图像的透视投影矩阵以及模板图像的透视投影矩阵计算第一旋转平移矩阵;
根据第二单应矩阵、第二图像的透视投影矩阵以及模板图像的透视投影矩阵计算第二旋转平移矩阵。
本实施例中,当我们有了第一单应矩阵,再结合上相机参数即可分解出第一旋转平移矩阵。同样地,有了第二单应矩阵,再结合上相机参数即可分解出第二旋转平移矩阵。下面将以分解得到第一旋转平移矩阵为例进行介绍,分解出第二旋转平移矩阵的方式与分解出第一旋转平移矩阵的方式类似,此处不做赘述。
利用我们的模板图像上的所有点都在同一个平面上的特性,我们采用如下的方法,可以分解出一组确定的解,根据单应矩阵的定义和相机间旋转平移矩阵的定义,可以有如下的公式:
xc=H*xm;
xc=s*P*(R|T)*P-1*xm;
其中,xc表示是第二图像上的二维坐标齐次表示,xm为模板图像上的二维坐标齐次表示,H表示第一单应矩阵,(R|T)表示第一旋转平移矩阵,P表示透视投影矩阵,s表示尺度因子,这是由于xm反投影出三维点时取z=1,丢失了深度,故需要用尺度因子s进行补偿。
比如2D点[x,y]T的齐次坐标是[x,y,1]T,3D点[x,y,z]T的齐次坐标是[x,y,z,1]T。故可以推出:
Figure BDA0001344728500000151
其中,Pc表示第二图像的透视投影矩阵,Pm表示模板图像的透视投影矩阵。上述公式中xm通过模板图像的相机参数反投影出的三维点全是z=1的点,然而,因为所有的点都在同一个平面上,故可把z=1平移到z=0,上述式子并不会改变,但同时由于z=0,故R|T的第三列均为0,可以删去,从而得到新的等式,如下:
Figure BDA0001344728500000152
因此可以对应的求出sR00,sR10,sR20...,sT0,sT1,sT2
由于R为旋转矩阵,满足列向量为单位矩阵的特性,从而可以求出尺度因子s,通过R0和R1可以算出第三列R2,用S和左式第三列可以算出T。尺度因子s有正负号的选择,可以通过算出RT后计算模板图像在第二图像中的位置,由位置一定在相机前方(Tz<0)可以推断出s的符号,从而得到一组确定的旋转平移矩阵,从而得到确定的相机姿态信息。
再次,本发明实施例中,相机姿态信息确定装置介绍了计算第一旋转平移矩阵和第二旋转平移矩阵的方式,通过上述方式,可以得到更加可靠计算结果,且提升方案的实用性。
可选地,在上述图4对应的第六个实施例的基础上,本发明实施例提供的相机姿态信息确定的方法第八个可选实施例中,对第一旋转平移矩阵和第二旋转平移矩阵进行互补滤波处理,以获取相机姿态信息,可以包括:
将第一旋转平移矩阵输入至低通滤波器,并得到第一滤波结果;
将第二旋转平移矩阵输入是高通滤波器,并得到第二滤波结果;
根据第一滤波结果和第二滤波结果确定相机姿态信息。
本实施例中,获取第一旋转平移矩阵的速度较慢,精度较低,输出的结果在正确值周围波动,具有高频误差但均值较稳定。相比起来,获取第二旋转平移矩阵的速度较快,精度较高,输出的结果更加稳定平滑,不会有高频的抖动,但是随着时间的推移会累计误差从而产生漂移。第一旋转平移矩阵和第二旋转平移矩阵结合正好形成互补,故进行互补滤波,可以得到平滑的输出结果。
需要说明的是,低通滤波器和高通滤波器可以组成互补滤波器,此外,卡尔曼滤波器也可以实现低通滤波器和高通滤波器的功能。卡尔曼滤波器和互补滤波器在性能上相差无几,但互补滤波器更为简洁,且我们应用场景的特性和互补滤波器更为接近,故采用类似的思想实现一个视觉的互补滤波器。
为了便于介绍,请参阅图7,图7为本发明实施例中对第一旋转平移矩阵和第二旋转平移矩阵进行滤波处理的实施例示意图,如图所示,第一单应矩阵表示从检测器中检测出来的单应矩阵,代表着从模板图像到当前相机图像的转换。该第一单应矩阵可以直接分解出第一旋转平移矩阵(R1|T1)。第二单应矩阵代表从追踪器中追踪出来的单应矩阵,代表从上一帧图像(即第一图像)到当前图像(即第二图像)的转换,通过积分运算,即可得到从模板图像到当前图像的转换,该第二单应矩阵可以分解出第一旋转平移矩阵(R2|T2),R1|T1经过一个低通滤波器可以过滤掉高频的噪声,得到第一滤波结果(Rf1|Tf1),R2|T2经过一个高通滤波器过滤掉低频的漂移,得到第二滤波结果(Rf2|Tf2)。
对于平移T具有可加性,故可以直接融合,旋转不直接具有可加性,需要先利用罗德里格旋转公式(Rodrigues)公式转换为四元数,通过球面线性(slerp)插值进行融合,从而得到过滤后的真实数据。该过滤后的真实数据描述了准确的从模板图像到当前相机图像的旋转和平移(R|T)变化。
通过相机参数可以算出模板图像坐标系下四个顶点的真实坐标,乘上上述R|T可以算出对应的当前相机上模板图像的四个顶点的三维坐标,通过透视投影计算出对应二维坐标,从而找到四组模板图像到当前相机图像上二维坐标点的匹配,从而计算出更新后的单应矩阵,用它来更新积分仪,从而消除了追踪器的累积误差。
需要说明的是,本实施例提供的互补滤波是一种框架,能进行滤波的不仅仅局限于检测和光流追踪,而可以是任意两种或者多种不同来源的模板图像,甚至包括外界传感器传入的数据(如惯性测量单元测得的数据),同样的也可以采用卡尔曼滤波器进行对应的处理。
再次,本发明实施例中,采用对第一旋转平移矩阵和第二旋转平移矩阵进行互补滤波处理,即将第一旋转平移矩阵输入至低通滤波器,并得到第一滤波结果,同时将第二旋转平移矩阵输入是高通滤波器,并得到第二滤波结果,最后根据第一滤波结果和所述第二滤波结果确定相机姿态信息。通过上述方式,可以弥补第一旋转平移矩阵精度低,且具有高频误差的缺点,也可以弥补第二旋转平移矩阵因为时间推移累积误差而产生漂移的缺点,采用互补滤波的方式能够得到平滑的输出结果,从而提升方案的可行性。
下面对本发明中的相机姿态信息确定装置进行详细描述,请参阅图8,图8为本发明实施例中相机姿态信息确定装置一个实施例示意图,相机姿态信息确定装置30包括:
第一获取模块301,用于获取第一图像、第二图像以及模板图像,其中,所述第一图像是所述第二图像的上一帧图像,所述模板图像为待匹配的图像,所述模板图像包含多个图像层;
第一提取模块302,用于从所述第一获取模块301获取的所述模板图像的每个图像层中分别提取第一特征点,并在原始图像层中确定所述第一特征点,所述原始图像层为所述模板图像中的一个图像层,所述原始图像层中包含多个栅格;
匹配模块303,用于将所述第一提取模块302提取的所述第一特征点与第二特征点进行匹配,以在所述原始图像层的每个栅格中确定一个目标特征点,其中,所述目标特征点为所述第一特征点与所述第二特征点之间匹配度最大的特征点,所述目标特征点用于确定第一单应矩阵,所述第二特征点是从所述第二图像中提取的特征点;
第一确定模块304,用于根据所述第一图像中的第一光流特征点和所述第二图像的第二光流特征点确定第一目标单应矩阵,并根据所述第一目标单应矩阵和第二目标单应矩阵确定第二单应矩阵;
第二确定模块305,用于根据所述第一单应矩阵与所述第一确定模块304确定的所述第二单应矩阵确定相机姿态信息。
本实施例中,第一获取模块301获取第一图像、第二图像以及模板图像,其中,第一图像是第二图像的上一帧图像,模板图像为待匹配的图像,模板图像包含多个图像层,第一提取模块302从第一获取模块301获取的模板图像的每个图像层中分别提取第一特征点,并在原始图像层中确定第一特征点,原始图像层为模板图像中的一个图像层,原始图像层中包含多个栅格,匹配模块303将第一提取模块302提取的第一特征点与第二特征点进行匹配,以在原始图像层的每个栅格中确定一个目标特征点,其中,目标特征点为第一特征点与第二特征点之间匹配度最大的特征点,目标特征点用于确定第一单应矩阵,第二特征点是从第二图像中提取的特征点,第一确定模块304根据第一图像中的第一光流特征点和第二图像的第二光流特征点确定第一目标单应矩阵,并根据第一目标单应矩阵和第二目标单应矩阵确定第二单应矩阵,第二确定模块305根据第一单应矩阵与第一确定模块304确定的第二单应矩阵确定相机姿态信息。
本发明实施例中,提供一种相机姿态信息确定装置,采用该相机姿态信息确定装置可将模板图像划分为多个相等的栅格,且一个栅格中仅存在一个目标特征点,因此目标特征点分布较为均匀并具有较高的匹配度和融合度,从而在保证运行效率的情况下,利用目标特征点可以获取到精度较高的相机姿态信息。
可选地,在上述图8所对应的实施例的基础上,请参阅图9,本发明实施例提供的相机姿态信息确定装置30的另一实施例中,
所述第一提取模块302包括:
第一提取单元3021,用于从所述第一获取模块301获取的所述模板图像的第一图像层中提取所述第一特征点;
第二提取单元3022,用于从所述第一获取模块301获取的所述模板图像的第二图像层中提取所述第一特征点,其中,所述第一图像层与所述第二图像层具有不同的尺寸大小;
投影单元3023,用于对所述第一提取单元3021提取的所述第一图像层的中的所述第一特征点,以及所述第二提取单元3022提取的所述第二图像层中的所述第一特征点进行缩放处理,并投影至所述原始图像层。
其次,本发明实施例中,相机姿态信息确定装置首先从模板图像的第一图像层中提取第一特征点,从模板图像的第二图像层中提取第一特征点,其中,第一图像层与第二图像层具有不同的尺寸大小,然后对第一图像层的中的第一特征点以及第二图像层中的第一特征点进行缩放处理,并投影至原始图像层。通过上述方式,可以在模板图像对应的原始图形层上融合每个图形层提取出来的所有第一特征点,从而得到尽可能多的第一特征点以便于对这些第一特征点进行进一步的筛选,由此提升筛选的准确度。同时增强了匹配性能,保证了在大尺度变化下也能检测到物体。
可选地,在上述图9所对应的实施例的基础上,请参阅图10,本发明实施例提供的相机姿态信息确定装置30的另一实施例中,所述相机姿态信息确定装置30还包括:
第二提取模块306,用于所述匹配模块303将所述第一特征点与第二特征点进行匹配之前,从所述第二图像中提取第二特征点;
所述匹配模块303包括:
匹配单元3031,用于在所述原始图像层的每个栅格中,将所述第一特征点与第二特征点进行匹配,并得到至少一个待选择特征点,其中,每个待选择特征点对应一个匹配分值;
选择单元3032,用于在所述原始图像层的每个栅格中,从所述匹配单元3031得到的所述至少一个待选择特征点中选择匹配分值最高的特征点作为所述目标特征点。
再次,本发明实施例中,相机姿态信息确定装置先从第二图像中提取第二特征点,然后在原始图像层的每个栅格中,将第一特征点与第二特征点进行匹配,并得到至少一个待选择特征点,其中,每个待选择特征点对应一个匹配分值,最后在原始图像层的每个栅格中,从至少一个待选择特征点中选择匹配分值最高的特征点作为目标特征点。通过上述方式,采用栅格限制了匹配的最大数量,保证了计算第一单应矩阵的稳定性,且在运行是只对第二图像提取一次第二特征点,增加的特征匹配耗时较小,并不会影响运行速度,从而加快了匹配效率。
可选地,在上述图8所对应的实施例的基础上,请参阅图11,本发明实施例提供的相机姿态信息确定装置30的另一实施例中,
所述第一确定模块304包括:
第一获取单元3041,用于在所述第一图像的预设区域中获取第一光流特征点;
第二获取单元3042,用于根据所述第一获取单元3041获取的所述第一光流特征点获取第二光流特征点;
第一计算单元3043,用于根据所述第一获取单元3041获取的所述第一光流特征点与所述第二获取单元3042获取的所述第二光流特征点,计算从所述第一图像到所述第二图像的所述第一目标单应矩阵。
其次,本发明实施例中,相机姿态信息确定装置在在第一图像的预设区域中获取第一光流特征点,并且根据光流算法和第一光流特征点在第二图像的掩膜中获取第二光流特征点。最后根据第一光流特征点与第二光流特征点,计算从第一图像到第二图像的第一目标单应矩阵。通过上述方式,利用上一帧图像计算出来的预设区域顶点缩小一圈,得到掩膜,这样可以减少检测到边缘特征点的情况,从而降低检测的错误率。
可选地,在上述图11所对应的实施例的基础上,请参阅图12,本发明实施例提供的相机姿态信息确定装置30的另一实施例中,
所述第一确定模块304包括:
第三获取单元3044,用于获取所述模板图像到所述第一图像的第二目标单应矩阵;
第二计算单元3045,用于根据所述第一目标单应矩阵和所述第三获取单元3044获取的所述第二目标单应矩阵,计算从所述第二图像到所述模板图像的所述第二单应矩阵。
再次,本发明实施例中,介绍了相机姿态信息确定确定第二单应矩阵的方式,即先获取获取模板图像到第一图像的第二目标单应矩阵,然后根据第一目标单应矩阵和第二目标单应矩阵,计算从第二图像到模板图像的第二单应矩阵。通过上述方式,可以利用光流特征点得到第二单应矩阵,从而提升方案的可行和实用性。
可选地,在上述图11或图12所对应的实施例的基础上,请参阅图13,本发明实施例提供的相机姿态信息确定装置30的另一实施例中,所述相机姿态信息确定装置30还包括:
第二获取模块307,用于若所述第二光流特征点的数量小于预设门限,则从所述掩膜中获取q个光流特征点作为所述第二光流特征点,以使所述第二光流特征点的数量达到所述预设门限,所述q为正整数。
进一步地,本发明实施例中,如果第二光流特征点的数量小于预设门限,则相机姿态信息确定装置从掩膜中获取q个光流特征点作为第二光流特征点,以使第二光流特征点的数量达到预设门限。通过上述方式,在第二光流特征点数量不够的情况下,可以重新提取新的光流特征点来弥补,也就相当于自动更新了追踪的特征点,提升了光流算法的稳定性。
可选地,在上述图8所对应的实施例的基础上,请参阅图14,本发明实施例提供的相机姿态信息确定装置30的另一实施例中,
所述第二确定模块305包括:
确定单元3051,用于根据所述第一单应矩阵确定第一旋转平移矩阵,并根据所述第二单应矩阵确定第二旋转平移矩阵,其中,所述第一单应矩阵和所述第二单应矩阵为二维信息,所述第一旋转平移矩阵与所述第二旋转平移矩阵为三维信息;
处理单元3052,用于对所述确定单元3051确定的所述第一旋转平移矩阵和所述第二旋转平移矩阵进行互补滤波处理,以获取所述相机姿态信息。
其次,本发明实施例中,将确定相机姿态信息的过程分为两个部分,一部分为根据第一单应矩阵确定第一旋转平移矩阵,并根据第二单应矩阵确定第二旋转平移矩阵,另一部分为对第一旋转平移矩阵和第二旋转平移矩阵进行互补滤波处理,以获取相机姿态信息。通过上述方式,可以将二维的单应矩形分解成三维的旋转平移矩阵,由于将模板图像上的所有第一特征点都在原始图形层上做了融合,因此可以只得到一组旋转平移矩阵的解,从而提升方案的可操作性。采用互补滤波的方式能够得到更平滑的相机姿态信息。
可选地,在上述图14所对应的实施例的基础上,请参阅图15,本发明实施例提供的相机姿态信息确定装置30的另一实施例中,
所述确定单元3051包括:
第一计算子单元30511,用于根据所述第一单应矩阵、所述第二图像的透视投影矩阵以及所述模板图像的透视投影矩阵计算所述第一旋转平移矩阵;
第二计算子单元30512,用于根据所述第二单应矩阵、所述第二图像的透视投影矩阵以及所述模板图像的透视投影矩阵计算所述第二旋转平移矩阵。
再次,本发明实施例中,相机姿态信息确定装置介绍了计算第一旋转平移矩阵和第二旋转平移矩阵的方式,通过上述方式,可以得到更加可靠计算结果,且提升方案的实用性。
可选地,在上述图14所对应的实施例的基础上,请参阅图16,本发明实施例提供的相机姿态信息确定装置30的另一实施例中,
所述处理单元3052包括:
第一输入子单元30521,用于将所述第一旋转平移矩阵输入至低通滤波器,并得到第一滤波结果;
第二输入子单元30522,用于将所述第二旋转平移矩阵输入是高通滤波器,并得到第二滤波结果;
确定子单元30523,用于根据所述第一输入子单元30521输入的所述第一滤波结果和所述第二输入子单元30522输入的所述第二滤波结果确定所述相机姿态信息。
再次,本发明实施例中,采用对第一旋转平移矩阵和第二旋转平移矩阵进行互补滤波处理,即将第一旋转平移矩阵输入至低通滤波器,并得到第一滤波结果,同时将第二旋转平移矩阵输入是高通滤波器,并得到第二滤波结果,最后根据第一滤波结果和所述第二滤波结果确定相机姿态信息。通过上述方式,可以弥补第一旋转平移矩阵精度低,且具有高频误差的缺点,也可以弥补第二旋转平移矩阵因为时间推移累积误差而产生漂移的缺点,采用互补滤波的方式能够得到平滑的输出结果,从而提升方案的可行性。
本发明实施例还提供了另一种相机姿态信息确定装置,如图17所示,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该终端可以为包括手机、平板电脑、PDA、POS、车载电脑等任意终端设备,以终端为手机为例:
图17示出的是与本发明实施例提供的终端相关的手机的部分结构的框图。参考图17,手机包括:射频(Radio Frequency,RF)电路410、存储器420、输入单元430、显示单元440、传感器450、音频电路460、无线保真(wireless fidelity,WiFi)模块470、处理器480、以及电源490等部件。本领域技术人员可以理解,图17中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图17对手机的各个构成部件进行具体的介绍:
RF电路410可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器480处理;另外,将设计上行的数据发送给基站。通常,RF电路410包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low NoiseAmplifier,LNA)、双工器等。此外,RF电路410还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯***(GlobalSystem of Mobile communication,GSM)、通用分组无线服务(General Packet RadioService,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE)、电子邮件、短消息服务(Short Messaging Service,SMS)等。
存储器420可用于存储软件程序以及模块,处理器480通过运行存储在存储器420的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器420可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器420可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元430可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元430可包括触控面板431以及其他输入设备432。触控面板431,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板431上或在触控面板431附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板431可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器480,并能接收处理器480发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板431。除了触控面板431,输入单元430还可以包括其他输入设备432。具体地,其他输入设备432可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元440可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元440可包括显示面板441,可选的,可以采用液晶显示器(Liquid CrystalDisplay,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板441。进一步的,触控面板431可覆盖显示面板441,当触控面板431检测到在其上或附近的触摸操作后,传送给处理器480以确定触摸事件的类型,随后处理器480根据触摸事件的类型在显示面板441上提供相应的视觉输出。虽然在图17中,触控面板431与显示面板441是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板431与显示面板441集成而实现手机的输入和输出功能。
手机还可包括至少一种传感器450,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板441的亮度,接近传感器可在手机移动到耳边时,关闭显示面板441和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路460、扬声器461,传声器462可提供用户与手机之间的音频接口。音频电路460可将接收到的音频数据转换后的电信号,传输到扬声器461,由扬声器461转换为声音信号输出;另一方面,传声器462将收集的声音信号转换为电信号,由音频电路460接收后转换为音频数据,再将音频数据输出处理器480处理后,经RF电路410以发送给比如另一手机,或者将音频数据输出至存储器420以便进一步处理。
WiFi属于短距离无线传输技术,手机通过WiFi模块470可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图17示出了WiFi模块470,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器480是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器420内的软件程序和/或模块,以及调用存储在存储器420内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器480可包括一个或多个处理单元;可选的,处理器480可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器480中。
手机还包括给各个部件供电的电源490(比如电池),可选的,电源可以通过电源管理***与处理器480逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
在本发明实施例中,该终端所包括的处理器480还具有以下功能:
获取第一图像、第二图像以及模板图像,其中,所述第一图像是所述第二图像的上一帧图像,所述模板图像为待匹配的图像,所述模板图像包含多个图像层;
从所述模板图像的每个图像层中分别提取第一特征点,并在原始图像层中确定所述第一特征点,所述原始图像层为所述模板图像中的一个图像层,所述原始图像层中包含多个栅格;
将所述第一特征点与第二特征点进行匹配,以在所述原始图像层的每个栅格中确定一个目标特征点,其中,所述目标特征点为所述第一特征点与所述第二特征点之间匹配度最大的特征点,所述目标特征点用于确定第一单应矩阵,所述第二特征点是从所述第二图像中提取的特征点;
根据所述第一图像中的第一光流特征点和所述第二图像的第二光流特征点确定第一目标单应矩阵,并根据所述第一目标单应矩阵和第二目标单应矩阵确定第二单应矩阵;
根据所述第一单应矩阵与所述第二单应矩阵确定相机姿态信息。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的***,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (14)

1.一种相机姿态信息确定的方法,其特征在于,包括:
获取第一图像、第二图像以及模板图像,其中,所述第一图像是所述第二图像的上一帧图像,所述模板图像为待匹配的图像,所述模板图像包含多个图像层;
从所述模板图像的每个图像层中分别提取第一特征点,并在原始图像层中确定所述第一特征点,所述原始图像层为所述模板图像中的一个图像层,所述原始图像层中包含多个栅格;
将所述第一特征点与第二特征点进行匹配,以在所述原始图像层的每个栅格中确定一个目标特征点,其中,所述目标特征点为所述第一特征点与所述第二特征点之间匹配度最大的特征点,所述目标特征点用于确定第一单应矩阵,所述第二特征点是从所述第二图像中提取的特征点;
根据所述第一图像中的第一光流特征点和所述第二图像的第二光流特征点确定第一目标单应矩阵,获取所述模板图像到所述第一图像的第二目标单应矩阵,并根据所述第一目标单应矩阵和所述第二目标单应矩阵确定第二单应矩阵;
根据所述第一单应矩阵与所述第二单应矩阵确定相机姿态信息。
2.根据权利要求1所述的方法,其特征在于,所述从所述模板图像的每个图像层中分别提取第一特征点,并在原始图像层中确定所述第一特征点,包括:
从所述模板图像的第一图像层中提取所述第一特征点;
从所述模板图像的第二图像层中提取所述第一特征点,其中,所述第一图像层与所述第二图像层具有不同的尺寸大小;
对所述第一图像层的中的所述第一特征点以及所述第二图像层中的所述第一特征点进行缩放处理,并投影至所述原始图像层。
3.根据权利要求2所述的方法,其特征在于,所述将所述第一特征点与第二特征点进行匹配之前,所述方法还包括:
从所述第二图像中提取第二特征点;
所述将所述第一特征点与第二特征点进行匹配,以在所述原始图像层的每个栅格中确定一个目标特征点,包括:
在所述原始图像层的每个栅格中,将所述第一特征点与第二特征点进行匹配,并得到至少一个待选择特征点,其中,每个待选择特征点对应一个匹配分值;
在所述原始图像层的每个栅格中,从所述至少一个待选择特征点中选择匹配分值最高的特征点作为所述目标特征点。
4.根据权利要求1所述的方法,其特征在于,所述根据所述第一图像中的第一光流特征点和所述第二图像的第二光流特征点确定第一目标单应矩阵,包括:
在所述第一图像的预设区域中获取第一光流特征点;
根据所述第一光流特征点获取第二光流特征点;
根据所述第一光流特征点与所述第二光流特征点,计算从所述第一图像到所述第二图像的所述第一目标单应矩阵。
5.根据权利要求4所述的方法,其特征在于,所述根据所述第一目标单应矩阵和所述第二目标单应矩阵确定第二单应矩阵,包括:
根据所述第一目标单应矩阵和所述第二目标单应矩阵,计算从所述第二图像到所述模板图像的所述第二单应矩阵。
6.根据权利要求4或5所述的方法,其特征在于,所述方法还包括:
若所述第二光流特征点的数量小于预设门限,则获取q个光流特征点作为所述第二光流特征点,以使所述第二光流特征点的数量达到所述预设门限,所述q为正整数。
7.根据权利要求1所述的方法,其特征在于,所述根据所述第一单应矩阵与所述第二单应矩阵确定相机姿态信息,包括:
根据所述第一单应矩阵确定第一旋转平移矩阵,并根据所述第二单应矩阵确定第二旋转平移矩阵,其中,所述第一单应矩阵和所述第二单应矩阵为二维信息,所述第一旋转平移矩阵与所述第二旋转平移矩阵为三维信息;
对所述第一旋转平移矩阵和所述第二旋转平移矩阵进行互补滤波处理,以获取所述相机姿态信息。
8.根据权利要求7所述的方法,其特征在于,所述根据所述第一单应矩阵确定第一旋转平移矩阵,并根据所述第二单应矩阵确定第二旋转平移矩阵,包括:
根据所述第一单应矩阵、所述第二图像的透视投影矩阵以及所述模板图像的透视投影矩阵计算所述第一旋转平移矩阵;
根据所述第二单应矩阵、所述第二图像的透视投影矩阵以及所述模板图像的透视投影矩阵计算所述第二旋转平移矩阵。
9.一种相机姿态信息确定装置,其特征在于,包括:
第一获取模块,用于获取第一图像、第二图像以及模板图像,其中,所述第一图像是所述第二图像的上一帧图像,所述模板图像为待匹配的图像,所述模板图像包含多个图像层;
第一提取模块,用于从所述第一获取模块获取的所述模板图像的每个图像层中分别提取第一特征点,并在原始图像层中确定所述第一特征点,所述原始图像层为所述模板图像中的一个图像层,所述原始图像层中包含多个栅格;
匹配模块,用于将所述第一提取模块提取的所述第一特征点与第二特征点进行匹配,以在所述原始图像层的每个栅格中确定一个目标特征点,其中,所述目标特征点为所述第一特征点与所述第二特征点之间匹配度最大的特征点,所述目标特征点用于确定第一单应矩阵,所述第二特征点是从所述第二图像中提取的特征点;
第一确定模块,用于根据所述第一图像中的第一光流特征点和所述第二图像的第二光流特征点确定第一目标单应矩阵,获取所述模板图像到所述第一图像的第二目标单应矩阵,并根据所述第一目标单应矩阵和所述第二目标单应矩阵确定第二单应矩阵;
第二确定模块,用于根据所述第一单应矩阵与所述第一确定模块确定的所述第二单应矩阵确定相机姿态信息。
10.根据权利要求9所述的相机姿态信息确定装置,其特征在于,所述第二确定模块包括:
确定单元,用于根据所述第一单应矩阵确定第一旋转平移矩阵,并根据所述第二单应矩阵确定第二旋转平移矩阵,其中,所述第一单应矩阵和所述第二单应矩阵为二维信息,所述第一旋转平移矩阵与所述第二旋转平移矩阵为三维信息;
处理单元,用于对所述确定单元确定的所述第一旋转平移矩阵和所述第二旋转平移矩阵进行互补滤波处理,以获取所述相机姿态信息。
11.一种相机姿态信息确定装置,其特征在于,包括:存储器、收发器、处理器以及总线***;
其中,所述存储器用于存储程序;
所述处理器用于执行所述存储器中的程序,具体包括如下步骤:
获取第一图像、第二图像以及模板图像,其中,所述第一图像是所述第二图像的上一帧图像,所述模板图像为待匹配的图像,所述模板图像包含多个图像层;
从所述模板图像的每个图像层中分别提取第一特征点,并在原始图像层中确定所述第一特征点,所述原始图像层为所述模板图像中的一个图像层,所述原始图像层中包含多个栅格;
将所述第一特征点与第二特征点进行匹配,以在所述原始图像层的每个栅格中确定一个目标特征点,其中,所述目标特征点为所述第一特征点与所述第二特征点之间匹配度最大的特征点,所述目标特征点用于确定第一单应矩阵,所述第二特征点是从所述第二图像中提取的特征点;
根据所述第一图像中的第一光流特征点和所述第二图像的第二光流特征点确定第一目标单应矩阵,获取所述模板图像到所述第一图像的第二目标单应矩阵,并根据所述第一目标单应矩阵和所述第二目标单应矩阵确定第二单应矩阵;
根据所述第一单应矩阵与所述第二单应矩阵确定相机姿态信息;
所述总线***用于连接所述存储器、所述收发器以及所述处理器,以使所述存储器、所述收发器以及所述处理器进行通信。
12.根据权利要求11所述的相机姿态信息确定装置,其特征在于,所述处理器具体用于执行如下步骤:
从所述模板图像的第一图像层中提取所述第一特征点;
从所述模板图像的第二图像层中提取所述第一特征点,其中,所述第一图像层与所述第二图像层具有不同的尺寸大小;
对所述第一图像层的中的所述第一特征点以及所述第二图像层中的所述第一特征点进行缩放处理,并投影至所述原始图像层。
13.根据权利要求11所述的相机姿态信息确定装置,其特征在于,所述处理器具体用于执行如下步骤:
根据所述第一单应矩阵确定第一旋转平移矩阵,并根据所述第二单应矩阵确定第二旋转平移矩阵,其中,所述第一单应矩阵和所述第二单应矩阵为二维信息,所述第一旋转平移矩阵与所述第二旋转平移矩阵为三维信息;
对所述第一旋转平移矩阵和所述第二旋转平移矩阵进行互补滤波处理,以获取所述相机姿态信息。
14.一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1-8任一项所述的方法。
CN201710552105.1A 2017-07-07 2017-07-07 一种相机姿态信息确定的方法及相关装置 Active CN109215077B (zh)

Priority Applications (9)

Application Number Priority Date Filing Date Title
CN201910834144.XA CN110517319B (zh) 2017-07-07 2017-07-07 一种相机姿态信息确定的方法及相关装置
CN201710552105.1A CN109215077B (zh) 2017-07-07 2017-07-07 一种相机姿态信息确定的方法及相关装置
TW107121953A TWI683259B (zh) 2017-07-07 2018-06-26 一種相機姿態資訊確定的方法及相關裝置
PCT/CN2018/093418 WO2019007258A1 (zh) 2017-07-07 2018-06-28 相机姿态信息的确定方法、装置、设备及存储介质
KR1020197030212A KR102319207B1 (ko) 2017-07-07 2018-06-28 카메라 자세 정보를 결정하기 위한 방법, 장치 및 디바이스, 그리고 저장 매체
JP2019548070A JP6824433B2 (ja) 2017-07-07 2018-06-28 カメラ姿勢情報の決定方法、決定装置、モバイル端末及びコンピュータプログラム
EP18828662.9A EP3579192B1 (en) 2017-07-07 2018-06-28 Method, apparatus and device for determining camera posture information, and storage medium
US16/386,143 US10963727B2 (en) 2017-07-07 2019-04-16 Method, device and storage medium for determining camera posture information
US17/183,200 US11605214B2 (en) 2017-07-07 2021-02-23 Method, device and storage medium for determining camera posture information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710552105.1A CN109215077B (zh) 2017-07-07 2017-07-07 一种相机姿态信息确定的方法及相关装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201910834144.XA Division CN110517319B (zh) 2017-07-07 2017-07-07 一种相机姿态信息确定的方法及相关装置

Publications (2)

Publication Number Publication Date
CN109215077A CN109215077A (zh) 2019-01-15
CN109215077B true CN109215077B (zh) 2022-12-06

Family

ID=64797133

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201910834144.XA Active CN110517319B (zh) 2017-07-07 2017-07-07 一种相机姿态信息确定的方法及相关装置
CN201710552105.1A Active CN109215077B (zh) 2017-07-07 2017-07-07 一种相机姿态信息确定的方法及相关装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201910834144.XA Active CN110517319B (zh) 2017-07-07 2017-07-07 一种相机姿态信息确定的方法及相关装置

Country Status (7)

Country Link
US (2) US10963727B2 (zh)
EP (1) EP3579192B1 (zh)
JP (1) JP6824433B2 (zh)
KR (1) KR102319207B1 (zh)
CN (2) CN110517319B (zh)
TW (1) TWI683259B (zh)
WO (1) WO2019007258A1 (zh)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110517319B (zh) * 2017-07-07 2022-03-15 腾讯科技(深圳)有限公司 一种相机姿态信息确定的方法及相关装置
CN107590453B (zh) * 2017-09-04 2019-01-11 腾讯科技(深圳)有限公司 增强现实场景的处理方法、装置及设备、计算机存储介质
US11113837B2 (en) * 2019-10-25 2021-09-07 7-Eleven, Inc. Sensor mapping to a global coordinate system
US11292129B2 (en) * 2018-11-21 2022-04-05 Aivot, Llc Performance recreation system
CN111563840B (zh) * 2019-01-28 2023-09-05 北京魔门塔科技有限公司 分割模型的训练方法、装置、位姿检测方法及车载终端
WO2020170462A1 (ja) * 2019-02-22 2020-08-27 公立大学法人会津大学 動画像距離算出装置および動画像距離算出用プログラムを記録したコンピュータ読み取り可能な記録媒体
CN110503604B (zh) * 2019-07-31 2022-04-29 武汉大学 一种基于高精度pos的航空面阵影像实时正射拼接方法
CN110880160B (zh) * 2019-11-14 2023-04-18 Oppo广东移动通信有限公司 图片帧超分方法、装置、终端设备及计算机可读存储介质
CN111080683B (zh) * 2019-12-09 2023-06-02 Oppo广东移动通信有限公司 图像处理方法、装置、存储介质及电子设备
CN111179309B (zh) * 2019-12-19 2024-05-24 联想(北京)有限公司 一种跟踪方法及设备
CN111178277B (zh) * 2019-12-31 2023-07-14 支付宝实验室(新加坡)有限公司 一种视频流识别方法及装置
CN111598927B (zh) * 2020-05-18 2023-08-01 京东方科技集团股份有限公司 一种定位重建方法和装置
CN111578839B (zh) * 2020-05-25 2022-09-20 阿波罗智联(北京)科技有限公司 障碍物坐标处理方法、装置、电子设备及可读存储介质
CN111681282A (zh) * 2020-06-18 2020-09-18 浙江大华技术股份有限公司 一种栈板识别处理方法及装置
CN111768454B (zh) * 2020-08-05 2023-12-22 腾讯科技(深圳)有限公司 位姿确定方法、装置、设备及存储介质
CN112085789A (zh) * 2020-08-11 2020-12-15 深圳先进技术研究院 位姿估计方法、装置、设备及介质
CN112066988B (zh) * 2020-08-17 2022-07-26 联想(北京)有限公司 定位方法及定位设备
EP3965071A3 (en) * 2020-09-08 2022-06-01 Samsung Electronics Co., Ltd. Method and apparatus for pose identification
CN112150558B (zh) * 2020-09-15 2024-04-12 阿波罗智联(北京)科技有限公司 用于路侧计算设备的障碍物三维位置获取方法及装置
CN113141518B (zh) * 2021-04-20 2022-09-06 北京安博盛赢教育科技有限责任公司 直播课堂中视频帧图像的控制方法、控制装置
US20230031480A1 (en) * 2021-07-28 2023-02-02 Htc Corporation System for tracking camera and control method thereof
CN113628275B (zh) * 2021-08-18 2022-12-02 北京理工大学深圳汽车研究院(电动车辆国家工程实验室深圳研究院) 一种充电口位姿估计方法、***、充电机器人及存储介质
CN113837949B (zh) * 2021-08-19 2024-01-19 广州医软智能科技有限公司 一种图像处理方法和装置
WO2023068527A1 (ko) * 2021-10-18 2023-04-27 삼성전자 주식회사 콘텐트를 식별하기 위한 전자 장치 및 방법
CN114419437A (zh) * 2022-01-12 2022-04-29 湖南视比特机器人有限公司 基于2d视觉的工件分拣***及其控制方法和控制装置
CN114782447B (zh) * 2022-06-22 2022-09-09 小米汽车科技有限公司 路面检测方法、装置、车辆、存储介质及芯片
CN115937305A (zh) * 2022-06-28 2023-04-07 北京字跳网络技术有限公司 图像处理方法、装置及电子设备
CN115861428B (zh) * 2023-02-27 2023-07-14 广东粤港澳大湾区硬科技创新研究院 一种位姿测量方法、装置、终端设备及存储介质
CN116580083B (zh) * 2023-07-13 2023-09-22 深圳创维智慧科技有限公司 摄像设备的位姿估计方法、装置、电子设备及存储介质
CN116645400B (zh) * 2023-07-21 2023-12-08 江西红声技术有限公司 视觉及惯性混合位姿跟踪方法、***、头盔及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103649998A (zh) * 2010-12-21 2014-03-19 Metaio有限公司 确定为确定照相机的姿态和/或为确定至少一个真实对象的三维结构而设计的参数集的方法
CN105261042A (zh) * 2015-10-19 2016-01-20 华为技术有限公司 光流估计的方法及装置

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7403658B2 (en) * 2005-04-15 2008-07-22 Microsoft Corporation Direct homography computation by local linearization
JP5434608B2 (ja) * 2010-01-08 2014-03-05 トヨタ自動車株式会社 測位装置及び測位方法
EP2375376B1 (en) * 2010-03-26 2013-09-11 Alcatel Lucent Method and arrangement for multi-camera calibration
CN102375984B (zh) * 2010-08-06 2014-02-26 夏普株式会社 特征量计算装置、图像连接装置、图像检索装置及特征量计算方法
US8855406B2 (en) * 2010-09-10 2014-10-07 Honda Motor Co., Ltd. Egomotion using assorted features
CN102088569B (zh) * 2010-10-13 2013-06-19 首都师范大学 低空无人飞行器序列图像拼接方法和***
KR101207535B1 (ko) * 2010-12-31 2012-12-03 한양대학교 산학협력단 이동 로봇의 이미지 기반 동시적 위치 인식 및 지도 작성 방법
US9235894B2 (en) * 2011-01-27 2016-01-12 Metaio Gmbh Method for determining correspondences between a first and a second image, and method for determining the pose of a camera
JP2012164188A (ja) * 2011-02-08 2012-08-30 Sony Corp 画像処理装置、画像処理方法およびプログラム
KR101755687B1 (ko) * 2011-04-01 2017-07-07 에스케이 주식회사 촬영화상의 카메라 자세 추정 시스템 및 방법
US9020187B2 (en) * 2011-05-27 2015-04-28 Qualcomm Incorporated Planar mapping and tracking for mobile devices
WO2013079098A1 (en) * 2011-11-29 2013-06-06 Layar B.V. Dynamically configuring an image processing function
US8965057B2 (en) * 2012-03-02 2015-02-24 Qualcomm Incorporated Scene structure-based self-pose estimation
JP5465299B2 (ja) * 2012-09-21 2014-04-09 キヤノン株式会社 情報処理装置、情報処理方法
US9418480B2 (en) * 2012-10-02 2016-08-16 Augmented Reailty Lab LLC Systems and methods for 3D pose estimation
KR20140108828A (ko) * 2013-02-28 2014-09-15 한국전자통신연구원 카메라 트래킹 장치 및 방법
US20140369557A1 (en) * 2013-06-14 2014-12-18 Qualcomm Incorporated Systems and Methods for Feature-Based Tracking
US9336440B2 (en) * 2013-11-25 2016-05-10 Qualcomm Incorporated Power efficient use of a depth sensor on a mobile device
CN104050475A (zh) * 2014-06-19 2014-09-17 樊晓东 基于图像特征匹配的增强现实的***和方法
KR101666959B1 (ko) * 2015-03-25 2016-10-18 ㈜베이다스 카메라로부터 획득한 영상에 대한 자동보정기능을 구비한 영상처리장치 및 그 방법
JP6464934B2 (ja) * 2015-06-11 2019-02-06 富士通株式会社 カメラ姿勢推定装置、カメラ姿勢推定方法およびカメラ姿勢推定プログラム
CN107646126B (zh) * 2015-07-16 2020-12-08 谷歌有限责任公司 用于移动设备的相机姿态估计
CN105043392B (zh) * 2015-08-17 2018-03-02 中国人民解放军63920部队 一种飞行器位姿确定方法及装置
CN105069809B (zh) * 2015-08-31 2017-10-03 中国科学院自动化研究所 一种基于平面混合标识物的相机定位方法及***
JP6602141B2 (ja) * 2015-10-05 2019-11-06 キヤノン株式会社 画像処理装置および方法
CN105512606B (zh) * 2015-11-24 2018-12-21 北京航空航天大学 基于ar模型功率谱的动态场景分类方法及装置
CN105869166B (zh) 2016-03-29 2018-07-10 北方工业大学 一种基于双目视觉的人体动作识别方法及***
CN105953796A (zh) * 2016-05-23 2016-09-21 北京暴风魔镜科技有限公司 智能手机单目和imu融合的稳定运动跟踪方法和装置
CN110517319B (zh) * 2017-07-07 2022-03-15 腾讯科技(深圳)有限公司 一种相机姿态信息确定的方法及相关装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103649998A (zh) * 2010-12-21 2014-03-19 Metaio有限公司 确定为确定照相机的姿态和/或为确定至少一个真实对象的三维结构而设计的参数集的方法
CN105261042A (zh) * 2015-10-19 2016-01-20 华为技术有限公司 光流估计的方法及装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"Visuo-intertial fusion for homography-based filtering and estimation";Alexandre Eudes 等;《2013 IEEE/RSJ》;20131107;全文 *
"一种基于特征点跟踪的多影像匹配算法";贾开开 等;《***仿真学报》;20170531;第29卷(第5期);全文 *
"高精度实时视觉定位的关键技术研究";卢维 等;《中国优秀硕士学位论文全文数据库》;20150515(第5期);全文 *

Also Published As

Publication number Publication date
EP3579192B1 (en) 2023-10-25
KR20190127838A (ko) 2019-11-13
TW201837783A (zh) 2018-10-16
CN109215077A (zh) 2019-01-15
CN110517319A (zh) 2019-11-29
TWI683259B (zh) 2020-01-21
US20210174124A1 (en) 2021-06-10
US10963727B2 (en) 2021-03-30
US11605214B2 (en) 2023-03-14
JP2020509506A (ja) 2020-03-26
WO2019007258A1 (zh) 2019-01-10
EP3579192A4 (en) 2020-11-25
CN110517319B (zh) 2022-03-15
KR102319207B1 (ko) 2021-10-28
JP6824433B2 (ja) 2021-02-03
EP3579192A1 (en) 2019-12-11
US20190244050A1 (en) 2019-08-08

Similar Documents

Publication Publication Date Title
CN109215077B (zh) 一种相机姿态信息确定的方法及相关装置
CN108615248B (zh) 相机姿态追踪过程的重定位方法、装置、设备及存储介质
CN108648235B (zh) 相机姿态追踪过程的重定位方法、装置及存储介质
CN110675420B (zh) 一种图像处理方法和电子设备
CN110599549B (zh) 界面显示方法、装置及存储介质
CN109918975B (zh) 一种增强现实的处理方法、对象识别的方法及终端
CN108682038B (zh) 位姿确定方法、装置及存储介质
WO2019184889A1 (zh) 增强现实模型的调整方法、装置、存储介质和电子设备
CN109101120B (zh) 图像显示的方法和装置
CN109949412B (zh) 一种三维对象重建方法和装置
CN109151442B (zh) 一种图像拍摄方法及终端
CN108776822B (zh) 目标区域检测方法、装置、终端及存储介质
CN108024073B (zh) 视频编辑方法、装置及智能移动终端
CN111986250A (zh) 物体体积测量方法、装置、测量设备及存储介质
CN107516099B (zh) 一种标记图片检测的方法、装置及计算机可读存储介质
CN111199169A (zh) 图像处理方法和装置
CN111556337A (zh) 一种媒体内容植入方法、模型训练方法以及相关装置
CN111258413A (zh) 虚拟对象的控制方法和装置
CN110941327A (zh) 虚拟对象的显示方法和装置
CN114565777A (zh) 数据处理方法和装置
CN111103967A (zh) 虚拟对象的控制方法和装置
CN111981975B (zh) 物体体积测量方法、装置、测量设备及存储介质
CN110941974B (zh) 虚拟对象的控制方法和装置
CN113676718A (zh) 图像处理方法、移动终端及可读存储介质
CN115393427A (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