CN110443853B - 基于双目摄像头的标定方法、装置、终端设备及存储介质 - Google Patents
基于双目摄像头的标定方法、装置、终端设备及存储介质 Download PDFInfo
- Publication number
- CN110443853B CN110443853B CN201910656422.7A CN201910656422A CN110443853B CN 110443853 B CN110443853 B CN 110443853B CN 201910656422 A CN201910656422 A CN 201910656422A CN 110443853 B CN110443853 B CN 110443853B
- Authority
- CN
- China
- Prior art keywords
- image
- points
- physical coordinates
- marker
- actual physical
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/08—Indexing scheme for image data processing or generation, in general involving all processing steps from image acquisition to 3D model generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- User Interface Of Digital Computer (AREA)
- Image Analysis (AREA)
Abstract
本申请实施例公开了一种基于双目摄像头的标定方法、装置、终端设备及存储介质。该方法包括:通过第一摄像头采集分布有多个标记物的交互设备的第一图像,同时通过第二摄像头采集交互设备的第二图像,对第一图像和第二图像进行识别,获得在第一图像和第二图像中的每个标记物包含的特征点,计算每个标记物包含的特征点的实际物理坐标,基于每个标记物包含的特征点的实际物理坐标,计算多个标记物之间的相对位置及旋转信息。本申请实施例通过对交互设备上每个特征点的物理位置及标记物之间的相对关系进行标定,提高定位追踪的准确度。
Description
技术领域
本申请涉及标定技术领域,更具体地,涉及一种基于双目摄像头的标定方法、装置、终端设备及存储介质。
背景技术
近年来,随着科技的进步,增强现实(AR,Augmented Reality)和虚拟现实(VR,Virtual Reality)等技术已逐渐成为国内外研究的热点。以增强实现为例,增强现实是通过计算机***提供的信息增加用户对现实世界感知的技术,其将计算机生成的虚拟对象、场景或***提示信息等内容对象叠加到真实场景中,来增强或修改对现实世界环境或表示现实世界环境的数据的感知。在增强现实和虚拟现实中,显示与交互的准确性是影响增强现实应用的一个关键问题。
发明内容
本申请实施例提出了一种基于双目摄像头的标定方法、装置、终端设备及存储介质,以通过对交互设备上每个特征点的物理位置及标记物之间的相对关系进行标定,提高定位追踪的准确度。
第一方面,本申请实施例提供了一种基于双目摄像头的标定方法,应用于终端设备,该方法包括:通过第一摄像头采集分布有多个标记物的交互设备的第一图像,同时通过第二摄像头采集交互设备的第二图像;对第一图像和第二图像进行识别,获得在第一图像和第二图像中的每个标记物包含的特征点;计算每个标记物包含的特征点的实际物理坐标,特征点的实际物理坐标用于表征特征点在交互设备上的真实位置;基于每个标记物包含的特征点的实际物理坐标,计算多个标记物之间的相对位置及旋转信息。
第二方面,本申请实施例提供了一种基于双目摄像头的标定装置,应用于终端设备,该装置包括:图像采集模块,用于通过第一摄像头采集分布有多个标记物的交互设备的第一图像,同时通过第二摄像头采集交互设备的第二图像;图像识别模块,用于对第一图像和第二图像进行识别,获得在第一图像和第二图像中的每个标记物包含的特征点;物理坐标计算模块,用于计算每个标记物包含的特征点的实际物理坐标,特征点的实际物理坐标用于表征特征点在交互设备上的真实位置;相对关系计算模块,用于基于每个标记物包含的特征点的实际物理坐标,计算多个标记物之间的相对位置及旋转信息。
第三方面,本申请实施例提供了一种终端设备,包括:一个或多个处理器;存储器;一个或多个应用程序,其中一个或多个应用程序被存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序配置用于执行上述方法。
第四方面,本申请实施例提供了一种计算机可读取存储介质,计算机可读取存储介质中存储有程序代码,程序代码可被处理器调用执行上述方法。
本申请实施例提供的基于双目摄像头的标定方法、装置、终端设备及存储介质,通过第一摄像头采集分布有多个标记物的交互设备的第一图像,同时通过第二摄像头采集交互设备的第二图像,对第一图像和第二图像进行识别,获得在第一图像和第二图像中的每个标记物包含的特征点,计算每个标记物包含的特征点的实际物理坐标,基于每个标记物包含的特征点的实际物理坐标,计算多个标记物之间的相对位置及旋转信息,从而通过对交互设备上每个特征点的物理位置及标记物之间的相对关系进行标定,提高定位追踪的准确度。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了一种适用于本申请实施例的应用场景的示意图。
图2示出了一种适用于本申请实施例提供的交互设备的示意图;
图3示出了另一种适用于本申请实施例提供的交互设备的示意图;
图4示出了本申请一个实施例提供的基于双目摄像头的标定方法的流程示意图;
图5示出了本申请实施例提供的一种标记物的示意图;
图6示出了本申请实施例提供的另一种标记物的示意图;
图7示出了本申请又一个实施例提供的基于双目摄像头的标定方法的流程示意图;
图8示出了图7所示的基于双目摄像头的标定方法的步骤S208在一个实施例中的流程示意图;
图9示出了图7所示的基于双目摄像头的标定方法的步骤S208在另一个实施例中的流程示意图;
图10示出了图7所示的基于双目摄像头的标定方法的步骤S213在一个实施例中的流程示意图;
图11示出了本申请实施例提供的基于双目摄像头的标定装置的模块框图;
图12是本申请实施例的用于执行根据本申请实施例的基于双目摄像头的标定方法的终端设备的框图;
图13是本申请实施例的用于保存或者携带实现根据本申请实施例的基于双目摄像头的标定方法的程序代码的存储单元。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
发明人经过长期的研究发现,在增强现实或虚拟现实技术中,用户可通过使用交互设备与虚拟内容进行交互。但使用的交互设备在出厂设置或在使用过程中可能会出现定位偏差,从而造成终端设备与交互设备在进行交互时,导致终端设备所获得的交互数据不准确。
本申请实施例提供了一种基于双目摄像头的标定方法、装置、终端设备以及存储介质,通过对交互设备上每个特征点的物理位置及标记物之间的相对关系进行标定,提高定位追踪的准确度。其中,具体的基于双目摄像头的标定方法在后续的实施例中进行详细的说明。
下面对本申请实施例提供的基于双目摄像头的标定方法的应用场景进行介绍。
请参阅图1,示出了本申请实施例提供的基于双目摄像头的标定方法的应用场景图,该应用场景包括基于双目摄像头的标定***10,该基于双目摄像头的标定***10包括:终端设备100以及交互设备200。
终端设备100与交互设备200可以处于连接状态,也可以处于非连接状态,在此不做限定。其中,当终端设备100与交互设备200处于连接状态时,可以通过蓝牙、WiFi(Wireless-Fidelity,无线保真)、ZigBee(紫峰技术)等无线通信方式连接,也可以通过数据线等进行有线通信连接,当然,终端设备100与交互设备200的连接方式在本申请实施例中并不限定。
在本申请实施例中,终端设备100可以是头戴显示装置,也可以是手机、平板等移动设备。终端设备100为头戴显示装置时,头戴显示装置可以为一体式头戴显示装置,也可以为与外置电子设备连接的头戴显示装置。终端设备100也可以是与外接式/接入式头戴显示装置连接的手机等智能终端,即终端设备100可作为头戴显示装置的处理和存储设备,***或者接入外接式头戴显示装置,通过头戴显示装置对虚拟内容进行显示。
在本申请实施例中,交互设备200可以是设置有标记物210的电子设备,在一些实施例中,标记物210可以集成于交互设备200上,也可以粘贴附着于交互设备200上。设置于交互设备200上的标记物210的数量并不限定,其中,标记物210的数量为多个。交互设备200的具体形态结构不受限制,可以为平面与平面相结合的多面体、可以为平面与曲面相结合的多面体,也可以为曲面与曲面相结合的多面体。在一些实施方式中,交互设备200可以是以下结构中的任意一种或多种的组合:棱锥、棱柱、棱台、多面体,也可以是球体,当然,球体可以理解为由无数个面形成的多面体。在一些实施方式中,该交互设备200也可以包括平板状的电子设备、手持控制器、手握控制器等。
在一些实施方式中,标记物210为具有拓扑结构的图案,拓扑结构是指标记物中的子标记物和特征点等之间连通关系。
在使用终端设备100与交互设备200时,可使标记物210位于终端设备100上的图像采集装置的视觉范围内,以采集到包含标记物210的图像,进而通过识别采集到的包含标记物210的图像对标记物210进行识别追踪,得到标记物210相对终端设备100的位置、姿态等空间位置信息,以及标记物210的身份信息等识别结果,进而得到交互设备200相对终端设备100的位置、姿态等空间位置信息,实现对交互设备200的定位追踪。终端设备100可根据与交互设备200之间的相对位置及姿态信息,显示相应的虚拟内容。
请参见图2,图2示出了本申请实施例提供的一种交互设备200的示意图,交互设备200为二十六面体,包括十八个正方形面以及八个三角形面,其中十八个正方形面皆为标记面,且每个标记面上均设置有标记物210,且每个面上的标记物210的图案互不相同。作为一种方式,交互设备200的第一表面220上设置有第一标记物211,第二表面230上设置有区别于第一标记物211的第二标记物212。终端设备100识别第一标记物211及第二标记物212中的任一个或两个,进而获取交互设备200的空间位置信息。
另外,终端设备100可以根据上述标记物210识别出交互设备200的上述空间位置信息的变化,从而检测交互设备200的运动状态(例如,晃动状态、移动状态等)。终端设备100也可以根据交互设备200的惯性测量单元(Inertial measurement unit,IMU)检测的六自由度信息,检测交互设备200的运动状态(例如,晃动状态等)。
请参阅图3,图3示出了可应用于本申请实施例提供的基于双目摄像头的标定方法的另一种交互设备200,图3所示的交互设备200包括定位部,以及可用于供用户握持使用的控制部,定位部包括4个不共面的标记面230,每个标记面230中设置有对应的标记物,每个标记面230设置的标记物不同,各个标记面230之间呈一定的夹角,当定位部处于终端设备的图像采集装置的视觉范围内时,可以较为容易地采集到包含所有标记面230的图像,以对交互设备200进行定位追踪。
请参阅图4,图4示出了本申请一个实施例提供的基于双目摄像头的标定方法的流程示意图。该方法应用于上述终端设备,下面将针对图4所示的流程进行详细的阐述,该基于双目摄像头的标定方法具体可以包括以下步骤:
步骤S101:通过第一摄像头采集分布有多个标记物的交互设备的第一图像,同时通过第二摄像头采集交互设备的第二图像。
在本申请实施例中,终端设备可以通过图像采集装置对位于终端设备的视觉范围内的交互设备以及分布于交互设备的多个标记物进行图像采集,也就是说,可以采集到包含交互设备以及分布于交互设备的多个标记物的图像。其中,终端设备的视觉范围指终端设备的图像采集装置的视觉范围,图像采集装置的视觉范围可以由视场角的大小决定。其中,该图像采集装置可以包括:CMOS(complementary metal oxide semiconductor,互补金属氧化物半导体)、CCD(charge coupled device,电荷耦合元件)等,在此不做限定。
在一些实施方式中,该交互设备可以是平面体、也可以是多面体,例如,可以是四面体、六面体、二十六面体等,在此不做限定。其中,当交互设备为平面体时,多个标记物可以分布于该平面体的一个平面上的多个不同的区域,当交互设备为多面体时,多个标记物可以分别分布于该多面体的多个标记面,该标记面可为曲面,也可以为平面,在此不再赘述。
在一些实施方式中,终端设备的图像采集装置可以为双目摄像头,该双目摄像头包括第一摄像头和第二摄像头。终端设备可以通过双目摄像头对交互设备进行图像采集,以获取包含至少一个标记物的图像后,便可以对当前采集的一帧图像进行识别计算。其中,可以通过双目摄像头中的第一摄像头采集分布有多个标记物的交互设备的第一图像,同时通过双目摄像头中的第二摄像头采集分布有多个标记物的交互设备的第二图像,其中,第一图像和第二图像中至少包括部分相同的对象。例如,第一图像和第二图像中包括相同的标记物、包括相同的特征点等,在此不做限定。
步骤S102:对第一图像和第二图像进行识别,获得在第一图像和第二图像中的每个标记物包含的特征点。
在一些实施方式中,每个标记物可以包括至少一个子标记物,子标记物可以是具有一定形状的图案,每个子标记物可具有一个或多个特征点,其中,特征点的形状不做限定,可以是圆点、圆环,也可以是三角形、其他形状等。例如,如图5所示,标记物210A内包括多个子标记物220A,而每个子标记物220A由一个或多个特征点221A构成,其中,图5中的每个白色圆形图案和每个黑色圆形图案均为特征点221A。又例如,如图6所示,标记物210B内包括多个子标记物220B,而每个子标记物220B由一个或多个特征点221B构成,其中,图6中的每个白色圆形图案为特征点221B。在一些实施方式中,子标记物也可以不包含特征点,例如,假设图6中的子标记物220B不包含白色圆形图案221B,即,子标记物220B为一个实心的黑色圆形图案,可将不包含特征点的子标记物直接作为一个特征点。
作为一种实施方式,标记物的轮廓可以为矩形,当然,标记物的轮廓也可以是其他形状,例如圆形、三角形、六边形等,在此不做限定,矩形的区域以及该区域内的多个子标记物构成一个标记物。需要说明的是,具体的标记物的形状、样式、尺寸、颜色、特征点数量以及分布,在本申请的实施例中并不作为限定,仅需要标记物能被终端设备识别追踪即可。
在一些实施方式中,终端设备在采集到交互设备的一帧第一图像和一帧第二图像后,可以分别对该第一图像和第二图像进行识别,以基于该第一图像和第二图像获取交互设备中的标记物包含的特征点。以此,终端设备可以多次采集交互设备的第一图像和第二图像,并基于每帧第一图像和第二图像中包含的标记物的特征点,获得交互设备上的每个标记物包含的特征点。
步骤S103:计算每个标记物包含的特征点的实际物理坐标,特征点的实际物理坐标用于表征特征点在交互设备上的真实位置。
在一些实施方式中,终端设备获得在第一图像和第二图像中的每个标记物包含的特征点后,计算每个标记物包含的特征点的实际物理坐标,其中,该特征点的实际物理坐标可以用于反应该特征点在交互设备上的真实位置。具体地,在现实空间中,可以以交互设备的中心为原点构建物理坐标系,那么,该特征点的实际物理坐标可以为以交互设备的中心为原点的物理坐标。交互设备的物理坐标系也可以交互设备的其它点作为原点,并不限于此。
在一些实施方式中,该终端设备包括双目摄像头,其中,该双目摄像头设置有双目摄像头参数,双目摄像头参数指的是双目摄像头的相机相关参数,例如焦距、光圈、图像中心、畸变参数等以及两个摄像头之间的相对位置(即右摄像头相对于左摄像头的三维平移和旋转参数)。作为一种实施方式,该终端设备获得的图像可以为通过第一摄像头采集分布有多个标记物的交互设备的第一图像和同时通过第二摄像头采集分布有多个标记物的交互设备的第二图像。终端设备在获得在第一图像和第二图像中的每个标记物所包括的特征点后,可以获得每个特征点在第一图像中的第一像素坐标和在第二图像中的第二像素坐标,其中,第一像素坐标用于反应特征点在第一图像中的位置,第二像素坐标用于反应特征点在第二图像中的位置,再根据同一特征点的第一像素坐标和第二像素坐标,建立每个特征点在第一图像和第二图像中的匹配关系,基于该双目摄像头参数和上述匹配关系,计算特征点的实际物理坐标,进而通过上述方式可以计算获得每个标记物包含的特征点的实际物理坐标。
本申请的实施例中还可以通过其他更多的方式计算每个标记物包含的特征点的实际物理坐标,在此不做限定。
步骤S104:基于每个标记物包含的特征点的实际物理坐标,计算多个标记物之间的相对位置及旋转信息。
在一些实施方式中,在获得每个标记物包含的特征点的实际物理坐标后,可以计算多个标记物之间的相对位置及旋转信息。其中,多个标记物之间的相对关系包括相对位置及旋转关系,相对位置关系可以理解为同一坐标系下的不同坐标之间的相对关系,相对旋转关系可以理解为相对的旋转角度、方向,比如两个标记物之间的相对夹角、相对方向等。例如,可以通过刚体转换原理计算交互设备的各个标记面之间的相对位置及旋转信息,在此不做限定。
本申请一个实施例提供的基于双目摄像头的标定方法、装置、终端设备及存储介质,通过第一摄像头采集分布有多个标记物的交互设备的第一图像,同时通过第二摄像头采集交互设备的第二图像,对第一图像和第二图像进行识别,获得在第一图像和第二图像中的每个标记物包含的特征点,计算每个标记物包含的特征点的实际物理坐标,基于每个标记物包含的特征点的实际物理坐标,计算多个标记物之间的相对位置及旋转信息,从而通过对交互设备上每个特征点的物理位置及标记物之间的相对关系进行标定,提高定位追踪的准确度。
请参阅图7,图7示出了本申请又一个实施例提供的基于双目摄像头的标定方法的流程示意图。该方法应用于上述终端设备,该终端设备包括双目摄像头,双目摄像头设置有摄像头参数。下面将针对图7所示的流程进行详细的阐述,该基于双目摄像头的标定方法具体可以包括以下步骤:
步骤S201:通过第一摄像头采集分布有多个标记物的交互设备的第一图像,同时通过第二摄像头采集交互设备的第二图像。
步骤S202:对第一图像和第二图像进行识别,获得在第一图像和第二图像中的每个标记物包含的特征点。
在一些实施方式中,该基于双目摄像头的标定方法可以用于用户的在线自标定,也就是说,可以由用户自行对交互设备进行标定。具体地,终端设备可以显示引导画面,以引导用户以不同的姿态和/或不同的位置使用该交互设备,也即,使交互设备处于不同的位置和/或不同的姿态,以便终端设备可以采集到所需的图像。例如,该引导画面可以引导用户转动交互设备,以使该交互设备的每个标记面上的标记物都能够被终端设备所采集。其中,引导画面可以是视频引导画面、图片引导画面、文本引导画面等,在此不做限定。
在一些实施方式中,该引导画面可以以游戏引导画面的形式显示,使得用户在玩游戏的过程中,使交互设备处于不同的姿态和/或不同的位置,以方便终端设备对分布于交互设备上的标记物进行采集。例如,该游戏可以设定为闯关类游戏,该游戏引导画面可以是引导用户握持交互设备并转动,直到终端设备已采集到所需的图像时,确定该用户闯关成功。又例如,该游戏可以设定为益智类游戏,该游戏引导画面可以是引导指令,用户可以做出与引导指令相同的动作,如向左转动,向右转动等,其中,该引导指令的集合可以使得终端设备采集所有标记物的图像,以保证对所有标记物进行标定,不会有遗漏,且以引导画面的话让用户感受不到标定的过程,提高趣味性。
在一些实施方式中,终端设备在采集到交互设备在某个姿态和位置下的图像后,可以对交互设备在该某个姿态和位置下的图像进行识别判断,以判断采集到的交互设备在某个姿态和位置下的图像是否满足预设条件,预设条件至少可以包括标记物的完整图像、误差小于指定误差等。其中,当确定采集到的多个标记物的图像均满足预设条件时,可以执行步骤S203,当确定采集到的多个标记物的图像中的任一标记物的图像不满足预设条件时,可以重新采集该任一标记物的图像,知道多个标记物的图像均满足预设条件。
在一些实施方式中,终端设备可以在用户使用交互设备的过程中,实时对交互设备进行图像采集,也就是说,终端设备可以多次采集处于相同姿态和相同位置的交互设备的图像,并对处于相同姿态和相同位置的交互设备的多个图像进行筛选,以从对应某个姿态和位置的多个图像中选取一个图像作为该某个姿态和位置的目标图像,其中,可以从多个图像中选取画质最清晰的图像作为目标图像,也可以从多个图像中选取标记物处于正面的图像作为目标图像等,从而提升图像采集的质量,在此不做限定。
在一些实施方式中,终端设备可以在用户使用交互设备的过程中,选择性地对交互设备进行图像采集,也就是说,终端设备可以对处于相同姿态和相同位置的交互设备进行一次图像采集,从而降低终端设备多次采集相同的图像造成的功耗。例如,当交互设备处于第一姿态和第一位置时,终端设备可以采集交互设备的图像并对交互设备的第一姿态和第一位置进行标记,在之后的引导过程中,引导用户在使用交互设备的过程中,不再将交互设备处于第一姿态和第一位置。
其中,步骤S201-步骤S202的其他描述请参阅步骤S101-步骤S102,在此不再赘述。
步骤S203:获取每个标记物包含的特征点在第一图像的第一像素坐标和在第二图像中的第二像素坐标。
在一些实施方式中,终端设备在获得当前采集的一帧第一图像和一帧第二图像中包含的每个标记物的特征点后,还可以获得每个特征点在第一图像中的第一像素坐标和在第二图像中的第二像素坐标,其中,该第一像素坐标用于表征特征点在第一图像中的位置,第二像素坐标用于表征特征点在第二图像中的位置。
步骤S204:根据同一特征点的第一像素坐标和第二像素坐标,建立每个标记物包含的特征点在第一图像和第二图像中的匹配关系。
在一些实施方式中,在获得每个标记物包含的特征点的第一像素坐标和第二像素坐标后,可以根据同一特征点的第一像素坐标和第二像素坐标,建立每个标记物包含的特征点在第一图像和第二图像中的匹配关系。例如,根据同一特征点的第一像素坐标和第二像素坐标,可以计算该同一特征点在第一图像和第二图像中的位置偏差,基于位置偏差获得该同一特征点的深度信息,并基于深度信息建立该同一特征点在第一图像和第二图像中的匹配关系。例如,可以通过立体对极关系建立统一特征点在第一图像和第二图像中的匹配关系。
步骤S205:基于摄像头参数和匹配关系,获得每个标记物包含的特征点的实际物理坐标。
在一些实施方式中,该摄像头参数可以包括双目摄像头的相机相关参数,例如焦距、光圈、图像中心、畸变参数等以及两个摄像头之间的相对位置,可选地,该摄像头参数保持不变。其中,终端设备可以获取摄像头参数以及每个标记物包含的特征点在第一图像和第二图像中的匹配关系,并基于摄像头参数和匹配关系,获得每个标记物包含的特征点的实际物理坐标。
步骤S206:判断特征点是否满足预设排列规则。
在一些实施方式中,除了标定交互设备上各个特征点的实际物理坐标外,还可标定各个标记物之间的相对位置及旋转信息。终端设备预先设置并存储有每个标记物对应的预设排列规则,该预设排列规则用于作为采集到的标记物包含的特征点的判断依据。因此,在获得标记物包含的特征点后,可以识别该标记物包含的特征点的排列信息,并将该排列信息与预设排列信息进行对比,以判断该特征点是否满足预设排列规则。
在一些实施方式中,该预设排列规则包括标记物包含的多个特征点按照预设规则进行排列,即多个特征点之间的排列是受到预设规则限制的,即每个标记物之间的特征点是对应的,如每个标记物包含的特征点按照一定的行、列进行排列,不同标记物之间特征点排列的行与列是相同的。例如,请再参阅图5,图5中所示的标记物210A包含的多个特征点221A的排列是没有按照一定的行、列进行排列,也就是说,图5中的多个特征点221A没有受到预设规则限制的,则可以确定图5所示的特征点221A不满足预设排列规则。又例如,请再参阅图6,图6所示的标记物210B包含的多个特征点221B按相同列进行排列,是受到预设规则限制的,则可以确定图6所示的特征点221B满足预设排列规则。
步骤S207:当特征点满足预设排列规则时,通过每个标记物包含的特征点的实际物理坐标,计算多个标记物之间的相对位置及旋转信息。
在一些实施方式中,当判断结果表征该标记物包含的特征点满足预设排列规则时,可以基于特征点的身份信息获取该特征点所在的标记面以及该标记面上分布的标记物,进而获取每个标记物包含的特征点的实际物理坐标,基于特征点的实际物理坐标,计算多个标记物之间的相对位置及旋转信息。
在一些实施方式中,可以通过刚体转换原理对特征点的实际物理坐标进行计算,获得多个标记物之间的相对位置及旋转信息,在此不做限定。
步骤S208:当特征点不满足预设排列规则时,计算每个标记物包含的边界点的实际物理坐标,边界点的实际物理坐标用于表征边界点在交互设备上的真实位置。
在一些实施方式中,当判断结果表征该标记物包含的特征点不满足预设排列规则时,可以通过每个标记物的边界点确定多个标记物之间的相对位置及旋转信息。可以获取交互设备的每个标记面上分布的标记物,并识别每个标记物包含的边界点,获得该边界点的实际物理坐标,其中,当标记物为多边形,如标记物为矩形时,该边界点是指多边形的角点,当标记物为环形时,如标记物为圆形时,该边界点是指环形的边缘处的位置点,边界点可用于表征不同标记物之间的对应点,该边界点的实际物理坐标用于表征该边界点在交互设备上的真实位置。例如,如图5所示的标记物221A为矩形,且该标记物221A包含4个边界点,4个边界点分别为边界点P1、边界点P2、边界点P3以及边界点P4、那么,当判断结果表征该标记物包含的特征点不满足预设排列规则时,可以分别获取该边界点P1、边界点P2、边界点P3以及边界点P4的实际物理坐标。
图8示出了图7所示的基于双目摄像头的标定方法的步骤S208在一个实施例中的流程步骤。下面将针对图8所示的流程进行详细的阐述,该方法具体可以包括以下步骤:
步骤S2081A:获取边界点的理论物理坐标和特征点的理论物理坐标,边界点的理论物理坐标用于表征边界点在交互设备上的理论位置,特征点的理论物理坐标用于表征特征点在交互设备上的理论位置。
在一些实施方式中,可以获取标记物包含的边界点的理论物理坐标和该标记物包含的特征点的理论物理坐标,其中,该标记物包含的边界点的理论物理坐标用于表征该边界点在交互设备上的理论位置,该标记物包含的特征点的理论物理坐标用于表征该特征点在交互设备上的理论位置。作为一种方式,终端设备可以预先获取并存储标定文件,该标定文件可以是记录有第一结构设计值的文件,也可以是交互设备在最近一次标定生成的第一文件。其中,该第一结构设计值用于表征在设计该交互设备时,理论上交互设备的标记物包含的各个特征点应该所在的物理坐标和理论上交互设备的标记物包含的各个边界点应该所在的物理坐标。该标定生成的第一文件可用于存储交互设备在最近一次的标定中,标记物包含的各个特征点的实际物理坐标,以及标记物包含的各个边界点的实际物理坐标,并将最近一次标定中得到的特征点的实际物理坐标作为本次标定过程中的特征点的理论物理坐标,将最近一次标定中得到的边界点的实际物理坐标作为本次标定过程中的边界点的理论物理坐标。
步骤S2082A:基于特征点的理论物理坐标和实际物理坐标,获得特征点的理论物理坐标和实际物理坐标的转换关系。
在一些实施方式中,终端设备可以基于特征点的理论物理坐标和本次标定过程中计算得到的实际物理坐标,获得该特征点的理论物理坐标和实际物理坐标的转换关系,例如,获得该特征点的理论物理坐标和实际物理坐标之间的相对位置和旋转关系。根据该转换关系可以得到理论物理坐标与实际物理坐标之间的偏差。
步骤S2083A:基于边界点的理论物理坐标,以及特征点的理论物理坐标和实际物理坐标的转换关系,计算每个标记物包含的边界点的实际物理坐标。
在一些实施方式中,在获得特征点的理论物理坐标和实际物理坐标的转换关系后,可以基于该转换关系对边界点的理论物理坐标进行计算,获得每个标记物包含的边界点的实际物理坐标。
图9示出了图7所示的基于双目摄像头的标定方法的步骤S208在另一个实施例中的流程步骤。下面将针对图9所示的流程进行详细的阐述,该方法具体可以包括以下步骤:
步骤S2081B:获取边界点和特征点的理论位置关系。
在一些实施方式中,可以获取边界点和特征点的理论位置关系,其中,该边界点和特征点的理论位置关系用于表征该边界点在交互设备上的理论位置和特征点在交互设备上的理论位置之间的关系。作为一种方式,终端设备可以预先获取并存储标定文件,该标定文件可以是记录有第二结构设计值的文件,也可以是交互设备在最近一次标定生成的第二文件。其中,该第二结构设计值用于表征在设计该交互设备时,交互设备的标记物包含的边界点和特征点的理论位置关系。该标定生成的第二文件可用于存储交互设备在最近一次标定中,交互设备的标记物包含的边界点和特征点的实际位置关系,并将最近一次标定中得到的边界点和特征点的实际位置关系作为本次标定过程中的边界点和特征点的理论位置关系。
步骤S2082B:基于特征点的实际物理坐标,将特征点投影到拟合平面,获得特征点对应的投影点。
在一些实施方式中,终端设备可以根据标记物内包含的各个特征点的实际物理坐标创建拟合平面,然后基于标记物内各个特征点的实际物理坐标,将特征点投影到该拟合平面,以获得该标记物的各个特征点在拟合平面对应的投影点。其中,同一个标记物的特征点拟合到同一拟合平面。
步骤S2083B:基于理论位置关系和特征点对应的投影点,计算每个标记物包含的边界点的实际物理坐标。
在一些实施方式中,将同一个标记物的特征点拟合到同一拟合平面,可获得标记物的特征点在拟合平面的投影点,同一标记物的各个特征点在该拟合平面的投影点可以用具有一个坐标轴上相同坐标值的三维物理坐标表示,例如,标记物包含4个特征点,该4个特征点的物理坐标分别为(10,10,1),(10,-10,-1),(-10,10,1),(-10,-10,-1),则拟合到同一拟合平面后,上述4个特征点在拟合平面的投影点可以为(10,10,0),(10,-10,0),(-10,10,0),(-10,-10,0)。通过将同一标记物的特征点投影到同一拟合平面,可以优化特征点的实际物理坐标,提高标定的准确度。
可根据该标记物内边界点和特征点的理论位置关系以及标记物内特征点在拟合平面上的投影点的位置,计算该标记物的边界点的实际物理坐标。其中,对于在第一图像和第二图像中的每个标记物而言,均可以采用上述方法进行边界点的实际物理坐标的计算,在此不再赘述。
步骤S209:通过每个标记物包含的边界点的实际物理坐标,计算多个标记物之间的相对位置及旋转信息。
在一些实施方式中,在获得每个标记物包含的边界点的实际物理坐标时,可以基于各个标记物的边界点的实际物理坐标,计算该多个标记物之间的相对位置及旋转信息。
在一些实施方式中,可以通过刚体转换原理对边界点的实际物理坐标进行计算,获得多个标记物之间的相对位置及旋转信息,在此不做限定。
其中,需要说明的是,步骤S206-步骤S209并不严格限定为设置在步骤S205之后,步骤S206-步骤S209也可以设置在步骤S103之后。在上述实施例中,不做限定。
步骤S210:改变采集视角通过第一摄像头采集分布有多个待验证标记物的交互设备的第一待验证图像,同时通过第二摄像头采集分布有多个待验证标记物的交互设备的第二待验证图像。
在一些实施方式中,终端设备以不同于步骤S101或不同于步骤S201中的采集视角,再次通过双目摄像头对交互设备进行图像采集,具体地,再次通过第一摄像头采集分布有多个待验证标记物的交互设备的第一待验证图像,同时通过第二摄像头采集分布有多个待验证标记物的交互设备的第二待验证图像,以获当前采集的一帧第一待验证图像和一帧第二待验证图像。其中,需要说明的是,待验证标记物可以与上述标记物相同,名称仅用于区分描述,并不用于作为限定。在其他实施例中,重新采集的图像,也可与上一次采集的图像是相同视角。
步骤S211:对第一待验证图像和第二待验证图像进行识别,获得在第一待验证图像和第二待验证图像中的每个待验证标记物包含的待验证特征点。
其中,需要说明的是,待验证特征点可以与上述特征点相同,名称仅用于区分描述,并不用于作为限定。
步骤S212:比较特征点和待验证特征点,获得比较结果。
在一些实施方式中,在获得第一待验证图像和第二待验证图像中的每个待验证标记物包含的待验证特征点后,可以将该待验证特征点和之前获得的特征点进行比较,获得比较结果。例如,可以获取待验证特征点的实际物理坐标,并将该待验证特征点的实际物理坐标和特征点的实际物理坐标进行比较,获得比较结果。又例如,可以获取待验证特征点在待验证图像中的像素坐标,并基于该特征点的实际物理坐标将该特征点投影到待验证图像中获得投影坐标,比较待验证特征点的像素坐标和特征点的投影坐标,获得比较结果等,在此不做限定。
图10示出了本申请的图7所示的基于双目摄像头的标定方法的步骤S212在一个实施例中的流程步骤。下面将针对图10所示的流程进行详细的阐述,该方法具体可以包括以下步骤:
步骤S2121:基于特征点的实际物理坐标,将特征点投影到待验证图像,得到特征点对应的投影点。
在一些实施方式中,在获得特征点的实际物理坐标后,可以基于该物理坐标以及摄像头的内外参数将该特征点投影到该待验证图像中,并在待验证图像中得到该特征点对应的投影点,其中,摄像头的内外参数可用于表示从世界坐标转到图像坐标系之间的转换关系。
步骤S2122:基于特征点对应的投影点,以及特征点对应的投影点在待验证图像中对应的待验证特征点,获得重投影误差。
在一些实施方式中,可以分别获取特征点对应的投影点的像素坐标,以及特征点对应的投影点在待验证图像中对应的待验证特征点的像素坐标,然后计算获得投影点的像素坐标和待验证特征点的像素坐标的差值,即获得重投影误差。
步骤S213:判断比较结果是否满足预设要求。
在一些实施方式中,终端设备预先设置并存储有预设要求,该预设要求用于作为特征点和待验证特征点的比较结果的判断依据。因此,在获得特征点和待验证特征点的比较结果时,可以将该特征点和待验证特征点的比较结果和预设要求进行比较,以判断该特征点和待验证特征点的比较结果是否满足预设要求。
在一些实施方式中,终端设备预先获取并存储有预设误差,该预设误差用于作为该重投影误差的判断依据。因此,在获得重投影误差后,可以将该重投影误差和预设误差进行比较,以判断该重投影误差是否小于预设误差。其中,当判断结果表征重投影误差小于预设误差时,表征该特征点和待验证特征点的比较结果满足预设要求,当判断结果表征重投影误差不小于预设误差时,表征该特征点和待验证特征点的比较结果不满足预设要求。
步骤S214:当比较结果满足预设要求时,结束校验。
其中,当判断结果表征特征点和待验证特征点的比较结果满足预设要求时,表征通过上述方式获得的特征点的实际物理坐标以及标定的多个标记物之间的相对位置及旋转信息的精度准确,可以结束校验。
步骤S215:当比较结果不满足预设要求时,将第一待验证图像作为本次采集的第一图像,将第二待验证图像作为本次采集的第二图像,并执行通过第一摄像头采集分布有多个标记物的交互设备的第一图像,同时通过第二摄像头采集交互设备的第二图像的步骤,重新计算得到多个标记物之间的相对位置及旋转信息,直至特征点和待验证特征点的比较结果满足预设要求。
其中,当判断结果表征特征点和待验证特征点的比较结果不满足预设要求时,表征通过上述方式获得的特征点的实际物理坐标及标定的多个标记物之间的相对位置及旋转信息的精度不准确,需要重新进行标定。具体地,可以将第一待验证图像作为本次采集的第一图像,将第二待验证图像作为本次采集的第二图像,并执行步骤S203-步骤S215,以重新计算得到每个标记物上每个特征点的实际物理坐标,以及多个标记物之间的相对位置及旋转信息,直到特征点和待验证特征点的比较结果满足预设要求,即直到标定的特征点的实际物理坐标,以及多个标记物之间的相对位置及旋转信息的精度准确时结束校验。
其中,需要说明的是,步骤S210-步骤S215并不严格限定为设置在步骤S29之后,步骤S210-步骤S215也可以设置在步骤S104之后。在本实施例中,不做限定。
在一些实施方式中,交互设备包括曲面标记面,标记物可设置在曲面标记面上,标记物上的特征点分布在曲面标记面的不同位置,可采用上述实施例中的基于双目摄像头的标定方法计算得到每个特征点在该交互设备上的实际物理坐标,并对计算的实际物理坐标进行校验,当计算得到的实际物理坐标满足预设要求(即预设的误差要求)时,可结束标定过程,完成对曲面标记面上的各个特征点的实际物理坐标的标定。上述实施例中的基于双目摄像头的标定方法不仅仅适用于带有平面标记物的交互设备,也适用于带有曲面标记物的交互设备,例如环形控制器等。
本申请又一个实施例提供的基于双目摄像头的标定方法,通过改变采集视角对交互设备进行图像采集,并对获得的多个标记物之间的相对位置及旋转信息进行校验,以提升标定的准确性。
请参阅图11,图11示出了本申请实施例提供的基于双目摄像头的标定装置300的模块框图。该基于双目摄像头的标定装置300应用于上述终端设备,下面将针对图11所示的框图进行阐述,该基于双目摄像头的标定装置300包括:图像采集模块310、图像识别模块320、物理坐标计算模块330以及相对关系计算模块340,其中:图像采集模块310,用于通过第一摄像头采集分布有多个标记物的交互设备的第一图像,同时通过第二摄像头采集交互设备的第二图像。图像识别模块320,用于对第一图像和第二图像进行识别,获得在第一图像和第二图像中的每个标记物包含的特征点。物理坐标计算模块330,用于计算每个标记物包含的特征点的实际物理坐标,特征点的实际物理坐标用于表征特征点在交互设备上的真实位置。相对关系计算模块340,用于基于每个标记物包含的特征点的实际物理坐标,计算多个标记物之间的相对位置及旋转信息。
在一些实施方式中,相对关系计算模块340还可以具体用于:判断特征点是否满足预设排列规则;当特征点满足预设排列规则时,通过每个标记物包含的特征点的实际物理坐标,计算多个标记物之间的相对位置及旋转信息;当特征点不满足预设排列规则时,计算每个标记物包含的边界点的实际物理坐标,边界点的实际物理坐标用于表征边界点在交互设备上的真实位置;通过每个标记物包含的边界点的实际物理坐标,计算多个标记物之间的相对位置及旋转信息。
在一些实施方式中,相对关系计算模块340还可以具体用于:获取边界点的理论物理坐标和特征点的理论物理坐标,边界点的理论物理坐标用于表征边界点在交互设备上的理论位置,特征点的理论物理坐标用于表征特征点在交互设备上的理论位置;基于特征点的理论物理坐标和实际物理坐标,获得特征点的理论物理坐标和实际物理坐标的转换关系;基于边界点的理论物理坐标,以及特征点的理论物理坐标和实际物理坐标的转换关系,计算每个标记物包含的边界点的实际物理坐标。
在一些实施方式中,相对关系计算模块340还可以具体用于:获取边界点和特征点的理论位置关系;基于特征点的实际物理坐标,将特征点投影到拟合平面,获得特征点对应的投影点;基于理论位置关系和特征点对应的投影点,计算每个标记物包含的边界点的实际物理坐标。
在一些实施方式中,基于双目摄像头的标定装置300还可以包括:待验证图像采集模块、待验证图像识别模块、比较模块、判断模块、校验结束模块以及重复模块,其中:待验证图像采集模块,用于改变采集视角通过第一摄像头采集分布有多个待验证标记物的交互设备的第一待验证图像,同时通过第二摄像头采集分布有多个待验证标记物的交互设备的第二待验证图像。待验证图像识别模块,用于对第一待验证图像和第二待验证图像进行识别,获得在第一待验证图像和第二待验证图像中的每个待验证标记物包含的待验证特征点。比较模块,用于比较特征点和待验证特征点,获得比较结果。判断模块,用于判断比较结果是否满足预设要求。校验结束模块,用于当比较结果满足预设要求时,结束校验。重复模块,用于当比较结果不满足预设要求时,将第一待验证图像作为本次采集的第一图像,将第二待验证图像作为本次采集的第二图像,并执行通过第一摄像头采集分布有多个标记物的交互设备的第一图像,同时通过第二摄像头采集交互设备的第二图像的步骤,重新计算得到多个标记物之间的相对位置及旋转信息,直至特征点和待验证特征点的比较结果满足预设要求。
在一些实施方式中,待验证特征点判断模块还可以具体用于:基于待验证特征点的待验证物理坐标,将待验证特征点投影到待验证图像,得到待验证特征点对应的投影点;基于待验证特征点对应的投影点,以及待验证特征点对应的投影点在待验证图像中对应的待验证特征点,获得重投影误差;判断重投影误差是否小于预设误差。
在一些实施方式中,双目摄像头设置有摄像头参数,物理坐标计算模块330还可以具体用于:获取每个标记物包含的特征点在第一图像的第一像素坐标和在第二图像中的第二像素坐标;根据同一特征点的第一像素坐标和第二像素坐标,建立每个标记物包含的特征点在第一图像和第二图像中的匹配关系;基于摄像头参数和匹配关系,获得每个标记物包含的特征点的实际物理坐标。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本申请所提供的几个实施例中,模块相互之间的耦合可以是电性,机械或其它形式的耦合。另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
综上,本申请实施例提供的方案,通过第一摄像头采集分布有多个标记物的交互设备的第一图像,同时通过第二摄像头采集交互设备的第二图像,对第一图像和第二图像进行识别,获得在第一图像和第二图像中的每个标记物包含的特征点,计算每个标记物包含的特征点的实际物理坐标,基于每个标记物包含的特征点的实际物理坐标,计算多个标记物之间的相对位置及旋转信息,从而通过对交互设备上每个特征点的物理位置及标记物之间的相对关系进行标定,提高定位追踪的准确度。
请参考图12,其示出了本申请实施例提供的一种终端设备的结构框图。该终端设备100可以是智能手机、平板电脑、头戴显示设备等能够运行应用程序的电子设备。本申请中的终端设备100可以包括一个或多个如下部件:处理器110、存储器120、图像采集装置130以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器120中并被配置为由一个或多个处理器110执行,一个或多个程序配置用于执行如前述方法实施例所描述的方法。
处理器110可以包括一个或者多个处理核。处理器110利用各种接口和线路连接整个终端设备100内的各个部分,通过运行或执行存储在存储器120内的指令、程序、代码集或指令集,以及调用存储在存储器120内的数据,执行终端设备100的各种功能和处理数据。可选地,处理器110可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器110可集成中央处理器(CentralProcessing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作***、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器110中,单独通过一块通信芯片进行实现。
存储器120可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器120可用于存储指令、程序、代码、代码集或指令集。存储器120可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作***的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储终端100在使用中所创建的数据等。
在本申请实施例中,图像采集装置130用于采集用户的图像。图像采集装置130可以为红外摄像头,也可以是彩色摄像头,具体的摄像头类型在本申请实施例中并不作为限定。
在一个实施例中,终端设备还可包括如下一个或多个部件:显示模组、光学模组、通信模块以及电源。显示模组可包括显示控制单元,显示控制单元用于接收处理器渲染后的虚拟内容的显示图像,将该显示图像显示并投射至光学模组上,使用户能够通过光学模组观看到虚拟内容。其中,显示模组可以是显示屏或投射装置等,用于显示图像。光学模组可采用离轴光学***或波导光学***,显示模组显示的显示图像经光学模组后,能够被投射至用户的眼睛。用户通过光学模组可看到显示模组投射的显示图像。在一些实施方式中,用户还能够透过光学模组观察到现实环境,感受虚拟内容与现实环境叠加后的视觉效果。通信模块可是蓝牙、WiFi(Wireless-Fidelity,无线保真)、ZigBee(紫峰技术)等模块,终端设备可通过通信模块与交互设备通信连接,以进行信息以及指令的交互。电源可为整个终端设备进行供电,保证终端设备各个部件的正常运行。
请参考图13,其示出了本申请实施例提供的一种计算机可读存储介质的结构框图。该计算机可读介质400中存储有程序代码,程序代码可被处理器调用执行上述方法实施例中所描述的方法。
计算机可读存储介质400可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质400包括非易失性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质400具有执行上述方法中的任何方法步骤的程序代码410的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码410可以例如以适当形式进行压缩。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (8)
1.一种基于双目摄像头的标定方法,其特征在于,应用于终端设备,所述方法包括:
通过第一摄像头采集分布有多个标记物的交互设备的第一图像,同时通过第二摄像头采集所述交互设备的第二图像;
对所述第一图像和所述第二图像进行识别,获得在所述第一图像和所述第二图像中的每个标记物包含的特征点;
计算所述每个标记物包含的特征点的实际物理坐标,所述特征点的实际物理坐标用于表征所述特征点在所述交互设备上的真实位置;
判断所述特征点是否满足预设排列规则;
当所述特征点满足所述预设排列规则时,通过所述每个标记物包含的特征点的实际物理坐标,计算所述多个标记物之间的相对位置及旋转信息;
当所述特征点不满足所述预设排列规则时,计算所述每个标记物包含的边界点的实际物理坐标,所述边界点的实际物理坐标用于表征所述边界点在所述交互设备上的真实位置;
通过所述每个标记物包含的边界点的实际物理坐标,计算所述多个标记物之间的相对位置及旋转信息;
其中,所述通过所述每个标记物包含的边界点的实际物理坐标,计算所述多个标记物之间的相对位置及旋转信息,包括:
获取所述边界点的理论物理坐标和所述特征点的理论物理坐标,所述边界点的理论物理坐标用于表征所述边界点在所述交互设备上的理论位置,所述特征点的理论物理坐标用于表征所述特征点在所述交互设备上的理论位置;
基于所述特征点的理论物理坐标和实际物理坐标,获得所述特征点的理论物理坐标和实际物理坐标的转换关系;
基于所述边界点的理论物理坐标,以及所述特征点的理论物理坐标和实际物理坐标的转换关系,计算所述每个标记物包含的边界点的实际物理坐标;
或者,所述通过所述每个标记物包含的边界点的实际物理坐标,计算所述多个标记物之间的相对位置及旋转信息,包括:
获取所述边界点和所述特征点的理论位置关系;
基于所述特征点的实际物理坐标,将所述特征点投影到拟合平面,获得所述特征点对应的投影点;
基于所述理论位置关系和所述特征点对应的投影点,计算所述每个标记物包含的边界点的实际物理坐标。
2.根据权利要求1所述的方法,其特征在于,所述基于所述每个标记物包含的特征点的实际物理坐标,计算所述多个标记物之间的相对位置及旋转信息之后,还包括:
改变采集视角通过所述第一摄像头采集分布有多个待验证标记物的交互设备的第一待验证图像,同时通过所述第二摄像头采集所述分布有多个待验证标记物的交互设备的第二待验证图像;
对所述第一待验证图像和所述第二待验证图像进行识别,获得在所述第一待验证图像和所述第二待验证图像中的每个待验证标记物包含的待验证特征点;
比较所述特征点和所述待验证特征点,获得比较结果;
判断所述比较结果是否满足预设要求;
当所述比较结果满足所述预设要求时,结束校验。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
当所述比较结果不满足所述预设要求时,将所述第一待验证图像作为本次采集的第一图像,将所述第二待验证图像作为本次采集的第二图像,并执行所述通过第一摄像头采集分布有多个标记物的交互设备的第一图像,同时通过第二摄像头采集所述交互设备的第二图像的步骤,重新计算得到所述多个标记物之间的相对位置及旋转信息,直至所述特征点和所述待验证特征点的比较结果满足所述预设要求。
4.根据权利要求3所述的方法,其特征在于,所述比较所述特征点和所述待验证特征点,获得比较结果,包括:
基于所述特征点的实际物理坐标,将所述特征点投影到所述待验证图像,得到所述特征点对应的投影点;
基于所述特征点对应的投影点,以及所述特征点对应的投影点在所述待验证图像中对应的待验证特征点,获得重投影误差;
所述判断所述比较结果是否满足预设要求,包括:
判断所述重投影误差是否小于预设误差。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述双目摄像头设置有摄像头参数,所述计算所述每个标记物包含的特征点的实际物理坐标,包括:
获取所述每个标记物包含的特征点在所述第一图像的第一像素坐标和在所述第二图像中的第二像素坐标;
根据同一特征点的第一像素坐标和第二像素坐标,建立所述每个标记物包含的特征点在所述第一图像和第二图像中的匹配关系;
基于所述摄像头参数和匹配关系,获得所述每个标记物包含的特征点的实际物理坐标。
6.一种基于双目摄像头的标定装置,其特征在于,应用于终端设备,所述装置包括:
图像采集模块,用于通过第一摄像头采集分布有多个标记物的交互设备的第一图像,同时通过第二摄像头采集所述交互设备的第二图像;
图像识别模块,用于对所述第一图像和所述第二图像进行识别,获得在所述第一图像和所述第二图像中的每个标记物包含的特征点;
物理坐标计算模块,用于计算所述每个标记物包含的特征点的实际物理坐标,所述特征点的实际物理坐标用于表征所述特征点在所述交互设备上的真实位置;
相对关系计算模块,用于判断所述特征点是否满足预设排列规则;当所述特征点满足所述预设排列规则时,通过所述每个标记物包含的特征点的实际物理坐标,计算所述多个标记物之间的相对位置及旋转信息;当所述特征点不满足所述预设排列规则时,计算所述每个标记物包含的边界点的实际物理坐标,所述边界点的实际物理坐标用于表征所述边界点在所述交互设备上的真实位置;通过所述每个标记物包含的边界点的实际物理坐标,计算所述多个标记物之间的相对位置及旋转信息;
相对关系计算模块,还用于获取所述边界点的理论物理坐标和所述特征点的理论物理坐标,所述边界点的理论物理坐标用于表征所述边界点在所述交互设备上的理论位置,所述特征点的理论物理坐标用于表征所述特征点在所述交互设备上的理论位置;基于所述特征点的理论物理坐标和实际物理坐标,获得所述特征点的理论物理坐标和实际物理坐标的转换关系;基于所述边界点的理论物理坐标,以及所述特征点的理论物理坐标和实际物理坐标的转换关系,计算所述每个标记物包含的边界点的实际物理坐标;或者
相对关系计算模块,还用于获取所述边界点和所述特征点的理论位置关系;基于所述特征点的实际物理坐标,将所述特征点投影到拟合平面,获得所述特征点对应的投影点;基于所述理论位置关系和所述特征点对应的投影点,计算所述每个标记物包含的边界点的实际物理坐标。
7.一种终端设备,其特征在于,包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行如权利要求1-5任一项所述的方法。
8.一种计算机可读取存储介质,其特征在于,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行如权利要求1-5任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910656422.7A CN110443853B (zh) | 2019-07-19 | 2019-07-19 | 基于双目摄像头的标定方法、装置、终端设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910656422.7A CN110443853B (zh) | 2019-07-19 | 2019-07-19 | 基于双目摄像头的标定方法、装置、终端设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110443853A CN110443853A (zh) | 2019-11-12 |
CN110443853B true CN110443853B (zh) | 2022-01-28 |
Family
ID=68430976
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910656422.7A Active CN110443853B (zh) | 2019-07-19 | 2019-07-19 | 基于双目摄像头的标定方法、装置、终端设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110443853B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111121818B (zh) * | 2019-12-11 | 2021-10-26 | 中山大学 | 一种无人车中相机与二维码的标定方法 |
CN111176445B (zh) * | 2019-12-23 | 2023-07-14 | 广东虚拟现实科技有限公司 | 交互装置的识别方法、终端设备及可读存储介质 |
CN113191174B (zh) * | 2020-01-14 | 2024-04-09 | 北京京东乾石科技有限公司 | 物品定位方法和装置、机器人及计算机可读存储介质 |
CN113382156A (zh) * | 2020-03-10 | 2021-09-10 | 华为技术有限公司 | 获取位姿的方法及装置 |
CN111429523B (zh) * | 2020-03-16 | 2021-06-15 | 天目爱视(北京)科技有限公司 | 一种在3d建模中远距离标定方法 |
CN113781548B (zh) * | 2020-06-10 | 2024-06-14 | 华为技术有限公司 | 多设备的位姿测量方法、电子设备及*** |
CN112308886A (zh) * | 2020-09-27 | 2021-02-02 | 深圳疆程技术有限公司 | 一种确定hud图像尺寸的方法、装置及*** |
CN112634376B (zh) * | 2020-12-25 | 2024-06-04 | 深圳中科飞测科技股份有限公司 | 标定方法及装置、标定设备和存储介质 |
CN113038031B (zh) * | 2021-03-02 | 2023-05-30 | 天津天地伟业智能安全防范科技有限公司 | 一种枪球联动的标定方法、装置、电子设备及存储介质 |
CN114012736A (zh) * | 2021-12-08 | 2022-02-08 | 北京云迹科技有限公司 | 一种辅助环境定位用定位物及机器人*** |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104933718A (zh) * | 2015-06-23 | 2015-09-23 | 广东省自动化研究所 | 一种基于双目视觉的物理坐标定位方法 |
CN206193685U (zh) * | 2016-07-19 | 2017-05-24 | 北京诺亦腾科技有限公司 | 虚拟现实*** |
WO2018006095A2 (en) * | 2016-07-01 | 2018-01-04 | Digimarc Corporation | Image-based pose determination |
CN108335331A (zh) * | 2018-01-31 | 2018-07-27 | 华中科技大学 | 一种钢卷双目视觉定位方法及设备 |
CN108803861A (zh) * | 2017-04-28 | 2018-11-13 | 广东虚拟现实科技有限公司 | 一种交互方法、设备及*** |
CN109166153A (zh) * | 2018-08-21 | 2019-01-08 | 江苏德丰建设集团有限公司 | 基于双目视觉的塔吊高空作业三维定位方法及定位*** |
CN109903337A (zh) * | 2019-02-28 | 2019-06-18 | 北京百度网讯科技有限公司 | 用于确定挖掘机的铲斗的位姿的方法和装置 |
CN109920004A (zh) * | 2017-12-12 | 2019-06-21 | 广东虚拟现实科技有限公司 | 图像处理方法、装置、标定物组合、终端设备及标定*** |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107809610B (zh) * | 2016-09-08 | 2021-06-11 | 松下知识产权经营株式会社 | 摄像头参数集算出装置、摄像头参数集算出方法以及记录介质 |
CN109389634A (zh) * | 2017-08-02 | 2019-02-26 | 蒲勇飞 | 基于三维重建和增强现实的虚拟购物*** |
-
2019
- 2019-07-19 CN CN201910656422.7A patent/CN110443853B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104933718A (zh) * | 2015-06-23 | 2015-09-23 | 广东省自动化研究所 | 一种基于双目视觉的物理坐标定位方法 |
WO2018006095A2 (en) * | 2016-07-01 | 2018-01-04 | Digimarc Corporation | Image-based pose determination |
CN206193685U (zh) * | 2016-07-19 | 2017-05-24 | 北京诺亦腾科技有限公司 | 虚拟现实*** |
CN108803861A (zh) * | 2017-04-28 | 2018-11-13 | 广东虚拟现实科技有限公司 | 一种交互方法、设备及*** |
CN109920004A (zh) * | 2017-12-12 | 2019-06-21 | 广东虚拟现实科技有限公司 | 图像处理方法、装置、标定物组合、终端设备及标定*** |
CN108335331A (zh) * | 2018-01-31 | 2018-07-27 | 华中科技大学 | 一种钢卷双目视觉定位方法及设备 |
CN109166153A (zh) * | 2018-08-21 | 2019-01-08 | 江苏德丰建设集团有限公司 | 基于双目视觉的塔吊高空作业三维定位方法及定位*** |
CN109903337A (zh) * | 2019-02-28 | 2019-06-18 | 北京百度网讯科技有限公司 | 用于确定挖掘机的铲斗的位姿的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110443853A (zh) | 2019-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110443853B (zh) | 基于双目摄像头的标定方法、装置、终端设备及存储介质 | |
CN107223269B (zh) | 三维场景定位方法和装置 | |
CN107766855B (zh) | 基于机器视觉的棋子定位方法、***、存储介质及机器人 | |
CN104898832B (zh) | 一种基于智能终端的3d实时眼镜试戴方法 | |
KR102354299B1 (ko) | 단일 영상을 이용한 카메라 캘리브레이션 방법 및 이를 위한 장치 | |
US11380016B2 (en) | Fisheye camera calibration system, method and electronic device | |
CN104881114B (zh) | 一种基于3d眼镜试戴的角度转动实时匹配方法 | |
CN110136207B (zh) | 鱼眼相机标定***、方法、装置、电子设备及存储介质 | |
WO2016042926A1 (ja) | 画像処理装置、画像処理方法、及びプログラム | |
CN110276774B (zh) | 物体的绘图方法、装置、终端和计算机可读存储介质 | |
CN111862333A (zh) | 基于增强现实的内容处理方法、装置、终端设备及存储介质 | |
CN109559349A (zh) | 一种用于标定的方法和装置 | |
US11514608B2 (en) | Fisheye camera calibration system, method and electronic device | |
CN110737414B (zh) | 交互显示方法、装置、终端设备及存储介质 | |
CN112686950B (zh) | 位姿估计方法、装置、终端设备及计算机可读存储介质 | |
WO2015054265A1 (en) | Integrated tracking with world modeling | |
CN110737326A (zh) | 虚拟对象的显示方法、装置、终端设备及存储介质 | |
CN110874868A (zh) | 数据处理方法、装置、终端设备及存储介质 | |
CN110163922B (zh) | 鱼眼相机标定***、方法、装置、电子设备及存储介质 | |
CN111179341B (zh) | 一种增强现实设备与移动机器人的配准方法 | |
CN110908508B (zh) | 虚拟画面的控制方法、终端设备及存储介质 | |
CN111913564B (zh) | 虚拟内容的操控方法、装置、***、终端设备及存储介质 | |
CN110134234B (zh) | 一种三维物体定位的方法及装置 | |
CN116524022A (zh) | 偏移数据计算方法、图像融合方法、装置及电子设备 | |
CN111176445B (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 | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right |
Denomination of invention: Calibration methods, devices, terminal devices, and storage media based on binocular cameras Effective date of registration: 20230417 Granted publication date: 20220128 Pledgee: China Merchants Bank Limited by Share Ltd. Guangzhou branch Pledgor: GUANGDONG VIRTUAL REALITY TECHNOLOGY Co.,Ltd. Registration number: Y2023980038285 |