CN115222826A - 结构光和相机相对位姿可改变的三维重建方法和装置 - Google Patents

结构光和相机相对位姿可改变的三维重建方法和装置 Download PDF

Info

Publication number
CN115222826A
CN115222826A CN202211119990.1A CN202211119990A CN115222826A CN 115222826 A CN115222826 A CN 115222826A CN 202211119990 A CN202211119990 A CN 202211119990A CN 115222826 A CN115222826 A CN 115222826A
Authority
CN
China
Prior art keywords
laser
coordinate system
pose
mechanical arm
camera
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202211119990.1A
Other languages
English (en)
Other versions
CN115222826B (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.)
Shenzhen University
Original Assignee
Shenzhen University
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 Shenzhen University filed Critical Shenzhen University
Priority to CN202211119990.1A priority Critical patent/CN115222826B/zh
Publication of CN115222826A publication Critical patent/CN115222826A/zh
Application granted granted Critical
Publication of CN115222826B publication Critical patent/CN115222826B/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/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/24Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • 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/75Determining position or orientation of objects or cameras using feature-based methods involving models
    • 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/30108Industrial image inspection
    • G06T2207/30164Workpiece; Machine component
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

本申请涉及一种结构光和相机相对位姿可改变的三维重建方法和装置,所述装置包括:通过第一机械臂的第一末端位置以及激光设备的激光平面相对于第一机械臂的第一初始位姿,确定激光平面在世界坐标系的第一位姿,以及通过第二机械臂的第二末端位置以及相机设备相对于第二机械臂的第二初始位姿,确定相机设备在世界坐标系的第二位姿。进一步地,根据相机设备拍摄的第一拍摄图像、第一位姿以及第二位姿,便可实现对被测对象的三维重建。可见,相对于传统技术中的三维重建技术,本申请实施例可以灵活地改变激光设备与相机设备的相对位姿,其场景适用性较强。另外,本申请实施例可以简化三维重建过程,提高了三维重建效率。

Description

结构光和相机相对位姿可改变的三维重建方法和装置
技术领域
本申请涉及三维重建技术领域,特别是涉及一种结构光和相机相对位姿可改变的三维重建方法和装置。
背景技术
随着科技的进步、时代的发展以及工业水平的提高,三维重建技术的应用范围越来越广泛。
传统技术中,通过激光设备和相机设备对被测对象进行三维重建。例如,将激光设备和相机设备进行固定,通过激光设备向被测对象发射激光,同时通过相机设备对被测对象进行拍摄,根据拍摄得到的图像对被测对象进行三维重建。
但传统技术中的三维重建技术的场景适用性较差。
发明内容
基于此,有必要针对上述技术问题,提供一种场景适用性较强的结构光和相机相对位姿可改变的三维重建方法和装置。
第一方面,本申请提供了一种结构光和相机相对位姿可改变的三维重建设备,三维重建设备包括:第一机械臂、第二机械臂和控制器,第一机械臂的第一末端固定有激光设备,第二机械臂的第二末端固定有相机设备,控制器分别与第一机械臂和第二机械臂连接;
控制器,用于根据第一机械臂的第一末端位置以及激光设备的激光平面相对于第一机械臂的第一初始位姿,确定激光平面在世界坐标系的第一位姿;
控制器,用于根据第二机械臂的第二末端位置以及相机设备相对于第二机械臂的第二初始位姿,确定相机设备在世界坐标系的第二位姿;
控制器,用于根据相机设备拍摄的第一拍摄图像、第一位姿以及第二位姿,对被测对象进行三维重建;第一拍摄图像为激光设备发射的激光照射到被测对象时所拍摄的图像,其中,所述激光设备发射的激光为结构光。
第二方面,本申请还提供了一种结构光和相机相对位姿可改变的三维重建方法,方法应用于上述第一方面的三维重建设备,三维重建方法包括:
根据第一机械臂的第一末端位置以及激光设备的激光平面相对于第一机械臂的第一初始位姿,确定激光平面在世界坐标系的第一位姿;
根据第二机械臂的第二末端位置以及相机设备相对于第二机械臂的第二初始位姿,确定相机设备在世界坐标系的第二位姿;
根据相机设备拍摄的第一拍摄图像、第一位姿以及第二位姿,对被测对象进行三维重建;第一拍摄图像为激光设备发射的激光照射到被测对象时所拍摄的图像,其中,所述激光设备发射的激光为结构光。
第三方面,本申请还提供了一种结构光和相机相对位姿可改变的三维重建装置,装置应用于如上述第一方面的三维重建设备,装置包括:
第一确定模块,用于根据第一机械臂的第一末端位置、激光设备的激光平面相对于第一机械臂的第一初始位姿,确定激光平面在世界坐标系的第一位姿;
第二确定模块,用于根据第二机械臂的第二末端位置、相机设备相对于第二机械臂的第二初始位姿,确定相机设备在世界坐标系的第二位姿;
重建模块,用于根据相机设备拍摄的第一拍摄图像、第一位姿、第二位姿,对被测对象进行三维重建;第一拍摄图像为激光设备发射的激光照射到被测对象时所拍摄的图像,其中,所述激光设备发射的激光为结构光。
第四方面,本申请还提供了一种电子设备,电子设备包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述第二方面的方法的步骤。
第五方面,本申请还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述第二方面的方法的步骤。
第六方面,本申请还提供了一种计算机程序产品,计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述第二方面的方法的步骤。
上述结构光和相机相对位姿可改变的三维重建方法和装置,在对被测对象进行三维重建过程中,通过第一机械臂的第一末端位置以及激光设备的激光平面相对于第一机械臂的第一初始位姿,确定激光平面在世界坐标系的第一位姿,以及通过第二机械臂的第二末端位置以及相机设备相对于第二机械臂的第二初始位姿,确定相机设备在世界坐标系的第二位姿。进一步地,根据相机设备拍摄的第一拍摄图像、激光平面在世界坐标系的第一位姿以及相机设备在世界坐标系的第二位姿,便可实现对被测对象的三维重建。可见,相对于传统技术中的三维重建技术,本申请实施例中,可以灵活地改变激光设备与相机设备的相对位姿,从而可以适用多种重建场景,其场景适用性较强。另外,本申请实施例中,通过第一机械臂的第一末端位置以及第一初始位姿确定激光平面在世界坐标系的第一位姿的方式,以及通过第二机械臂的第二末端位置以及第二初始位姿确定相机设备在世界坐标系的第二位姿的方式,可以避免在三维重建过程中因激光设备与相机设备的相对位姿变化导致的标定次数增加的问题,从而简化了三维重建过程,提高了三维重建效率。
附图说明
图1为本申请一个实施例中结构光和相机相对位姿可改变的三维重建设备的结构示意图;
图2为本申请实施例中三维重建过程中激光设备的部分移动过程的示意图;
图3为本申请实施例中相机设备拍摄的多个第一拍摄图像的示意图;
图4为本申请一个实施例中结构光和相机相对位姿可改变的三维重建方法的流程示意图;
图5为本申请另一个实施例中结构光和相机相对位姿可改变的三维重建方法的流程示意图;
图6为本申请另一个实施例中结构光和相机相对位姿可改变的三维重建方法的流程示意图;
图7为本申请实施例提供的线结构光三维重建的模型示意图;
图8为本申请实施例中被测对象的局部点云模型的示意图;
图9为本申请实施例提供的Aruco标定板的结构示意图;
图10为本申请实施例中激光平面的标定原理的示意图;
图11为本申请实施例中第二拍摄图像的第二激光区域的示意图;
图12为本申请另一个实施例中结构光和相机相对位姿可改变的三维重建方法的流程示意图;
图13为相关技术中眼在手上的手眼标定模型的示意图;
图14为相关技术中眼在手外的手眼标定模型的示意图;
图15为本申请实施例中手眼标定的场景示意图;
图16为本申请实施例中多个第三拍摄图像的示意图;
图17为本申请实施例中相机设备在第二机械臂上的位置示意图;
图18为本申请实施例中ROS的可视化工具中显示的相机设备在第二机械臂上的位置示意图;
图19为本申请实施例提供的棋盘格标定板的结构示意图;
图20为本申请实施例中相机设备的内参系数和畸变系数标定的场景示意图;
图21为本申请实施例中多个第四拍摄图像的示意图;
图22为本申请另一个实施例中结构光和相机相对位姿可改变的三维重建方法的流程示意图;
图23为本申请一个实施例中结构光和相机相对位姿可改变的三维重建装置的结构示意图;
图24为本申请一个实施例中电子设备的结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的结构光和相机相对位姿可改变的三维重建方法和装置,可以应用于对被测对象的三维重建应用场景;当然还可以应用于其它场景,本申请实施例中对此并不作限定。
三维重建技术是计算机视觉和机器视觉行业的前沿科技。随着科技的进步、时代的发展以及工业水平的提高,三维重建技术的应用范围越来越广泛。例如,在逆向工程领域,当需要获得已有产品的详细形貌信息时,可以通过对已有产品进行三维重建;在工程测量领域,当需要对一些高温机械零件测量时,可以通过三维重建方式进行测量,可以大大降低工作难度和危险性等;在虚拟现实领域,当需要采集客观世界物体的三维信息时,可以对特定场景下的物体进行三维重建,以获得数字化模型并显示在虚拟环境中;在医学领域,通过对人体器官模型的三维重建,可以对疾病的诊断和治疗起到巨大作用,例如人体假肢或者假牙等模型的建立与生产都需要三维重建技术;在考古研究领域,随着时间的流逝和人为的干扰,文物会受到不同程度的损伤,通过三维重建技术可以用非接触无损的方式将文物的形貌完整永久地以数字化方式保存下来,以便于为人们了解历史奠定基础。
传统技术中,通过将激光设备和相机设备进行固定,其次通过激光设备向被测对象发射激光,同时通过相机设备对被测对象进行拍摄,然后根据拍摄得到的图像对被测对象进行三维重建。
但传统技术中的相机设备与激光设备之间的相对位置为固定的,因此,传统技术中的三维重建技术的场景适用性较差,例如,传统技术中的三维重建技术无法适应因表面材质特性带来的入射光线最佳拍摄视角变化等场景。
应理解,在三维重建过程中,为了适应因表面材质特性带来的入射光线最佳拍摄视角变化的情形,通常需要改变相机设备与激光设备的相对位姿(或者称之为位置)。但每次改变相机设备与激光设备的相对位姿,就需要重新标定相机设备和激光设备外参,因此,在被测对象的三维重建过程中,若为了适应因表面材质特性带来的入射光线最佳拍摄视角变化而多次改变相机设备与激光设备的相对位姿,则需要多次重新标定相机设备和激光设备外参,导致三维重建过程比较繁琐,且效率较低。
在一个实施例中,图1为本申请一个实施例中结构光和相机相对位姿可改变的三维重建设备的结构示意图,如图1所示,本申请实施例的结构光和相机相对位姿可改变的三维重建设备可以包括:第一机械臂101、第二机械臂102和控制器103。可选地,第一机械臂101的第一末端固定有激光设备101E,第二机械臂102的第二末端固定有相机设备102E;其中,激光设备101E用于将发射的激光照射到被测对象或者标定板(例如,第一标定板或者第二标定板等);相机设备102E用于拍摄激光设备101E所发射的激光照射到被测对象或者标定板时的图像,其中,激光设备101E发射的激光可以为结构光。
示例性地,激光设备101E可以为线构光传感器;当然,还可以为具有发射线激光功能的其它设备,本申请实施例中对此并不作限定。
示例性地,相机设备102E可以为工业相机;当然,还可以为具有摄像功能的其它设备,本申请实施例中对此并不作限定。
可选地,控制器103分别与第一机械臂101和第二机械臂102连接,以便于控制器103可以控制第一机械臂101移动和/或第二机械臂102移动,从而带动激光设备101E和/或相机设备102E移动。例如,当为了适应因表面材质特性带来的入射光线最佳拍摄视角变化的情形时,控制器103可以通过控制第一机械臂101移动和/或第二机械臂102移动的方式,来带动激光设备101E和/或相机设备102E移动,从而可以改变激光设备101E与相机设备102E的相对位姿。
需要说明的是,控制器103还可以与激光设备101E连接,以便于控制激光设备101E发射激光;控制器103还可以与相机设备102E连接,以便于控制相机设备102E拍摄图像。
示例性地,本申请实施例中的控制器105可以为电子设备,或者可以设置于电子设备中。其中,电子设备可以但不限于是各种个人计算机、笔记本电脑、智能手机和平板电脑。
应理解,控制器103可以实时地检测到第一机械臂101的第一末端的移动位置和第二机械臂102的第二末端的移动位置,其中,具体的检测方式可以参考相关技术中的检测方式,本申请实施例中对此并不作限定。
需要说明的是,第一机械臂101的第一末端的移动位置是指第一机械臂101的第一末端在世界坐标系的移动位置,第二机械臂102的第二末端的移动位置是指第二机械臂102的第二末端在世界坐标系的移动位置。其中,本申请实施例中涉及的世界坐标系是指以第一机械臂101和第二机械臂102的底座中心为坐标原点的坐标系。
一方面,控制器103用于根据第一机械臂101的第一末端位置以及激光设备101E的激光平面相对于第一机械臂101的第一初始位姿,确定激光平面在世界坐标系的第一位姿(即激光设备外参)。其中,第一机械臂101的第一末端位置是指在对被测对象进行三维重建时,第一机械臂101的第一末端在世界坐标系的位置(或者位姿)。
本申请实施例中的激光设备101E的激光平面相对于第一机械臂101的第一初始位姿可以包括但不限于:激光设备101E的激光平面(即激光设备101E所发射的激光所在的平面)在第一机械臂101的第一末端坐标系的第一平面方程。其中,本申请实施例中涉及的第一机械臂101的第一末端坐标系是指以第一机械臂101的第一末端为坐标原点的坐标系。
应理解,由于激光设备101E固定设置在第一机械臂101的第一末端,因此,激光设备101E的激光平面相对于第一机械臂101的第一初始位姿为固定的。
本申请实施例中的激光平面在世界坐标系的第一位姿可以包括但不限于:激光平面在世界坐标系的第二平面方程。
本申请实施例中,在对被测对象进行三维重建过程中,控制器可以实时地检测到第一机械臂101的第一末端位置;需要说明的是,控制器在获知第一机械臂101的第一末端位置时,便可获知第一末端坐标系与世界坐标系之间的关系。进一步地,控制器103可以根据第一机械臂101的第一末端位置将激光设备101E的激光平面相对于第一机械臂101的第一初始位姿转化为世界坐标系,便可确定激光平面在世界坐标系的第一位姿,从而可以避免在三维重建过程中因激光设备的位姿变化导致的标定次数增加的问题。
另一方面,控制器103用于根据第二机械臂102的第二末端位置以及相机设备102E相对于第二机械臂102的第二初始位姿,确定相机设备102E在世界坐标系的第二位姿(即相机设备外参)。其中,第二机械臂102的第二末端位置是指在对被测对象进行三维重建时,第二机械臂102的第二末端在世界坐标系的位置;相机设备102E在世界坐标系的第二位姿是指相机设备102E在世界坐标系的位置(或者称之为相机设备102E的外部参数)。
本申请实施例中的相机设备102E相对于第二机械臂102的第二初始位姿可以包括但不限于:相机设备102E在第二机械臂102的第二末端坐标系的位姿(或者位置)。其中,本申请实施例中涉及的第二机械臂102的第二末端坐标系是指以第二机械臂102的第二末端为坐标原点的坐标系。
应理解,由于相机设备102E固定设置在第二机械臂102的第二末端,因此,相机设备102E相对于第二机械臂102的第二初始位姿为固定的。
需要说明的是,相机设备102E相对于第二机械臂102的第二初始位姿也可以用于表示相机设备坐标系与第二机械臂102的第二末端坐标系之间的关系。
本申请实施例中,在对被测对象进行三维重建过程中,控制器可以实时地检测到第二机械臂102的第二末端位置;需要说明的是,控制器在获知第二机械臂102的第二末端位置时,便可获知第二末端坐标系与世界坐标系之间的关系。进一步地,控制器103可以根据第二机械臂102的第二末端位置将相机设备102E相对于第二机械臂102的第二初始位姿转化为世界坐标,便可得到相机设备102E在世界坐标系的第二位姿,从而可以避免在三维重建过程中因相机设备的位姿变化导致的标定次数增加的问题。
进一步地,控制器103用于根据相机设备102E拍摄的第一拍摄图像、激光平面在世界坐标系的第一位姿以及相机设备102E在世界坐标系的第二位姿,便可实现对被测对象的三维重建,其中,第一拍摄图像为激光设备101E发射的激光照射到被测对象时所拍摄的图像。
本申请实施例提供的结构光和相机相对位姿可改变的三维重建设备,在对被测对象进行三维重建过程中,通过第一机械臂101的第一末端位置以及激光设备101E的激光平面相对于第一机械臂101的第一初始位姿,确定激光平面在世界坐标系的第一位姿,以及通过第二机械臂102的第二末端位置以及相机设备102E相对于第二机械臂102的第二初始位姿,确定相机设备102E在世界坐标系的第二位姿。进一步地,根据相机设备102E拍摄的第一拍摄图像、激光平面在世界坐标系的第一位姿以及相机设备102E在世界坐标系的第二位姿,便可实现对被测对象的三维重建。可见,相对于传统技术中的三维重建技术,本申请实施例中,可以灵活地改变激光设备101E与相机设备102E的相对位姿,从而可以适用多种重建场景,其场景适用性较强。另外,本申请实施例中,通过第一机械臂101的第一末端位置以及第一初始位姿确定激光平面在世界坐标系的第一位姿的方式,以及通过第二机械臂102的第二末端位置以及第二初始位姿确定相机设备102E在世界坐标系的第二位姿的方式,可以避免在三维重建过程中因激光设备101E与相机设备102E的相对位姿变化导致的标定次数增加的问题,从而简化了三维重建过程,提高了三维重建效率。
图2为本申请实施例中三维重建过程中激光设备的部分移动过程的示意图,如图2所示,对被测对象(例如图2中的小黄鸭)的局部进行三维重建过程中,控制器可以控制固定相机设备的第二机械臂保持不动,并控制第一机械臂沿Y轴负方向移动,从而带动固定在第一机械臂的末端的激光设备移动,使得激光设备发射的激光照射到被测对象上的位置移动。
图3为本申请实施例中相机设备拍摄的多个第一拍摄图像的示意图,如图3所示,虽然相机设备的位姿没有变化,但激光设备的位姿发生变化,使得激光设备发射的激光照射到被测对象上的位置发生变化,因此,激光设备与相机设备的相对位姿发生了变化,但通过本申请实施例提供的三维重建方式,可以避免在三维重建过程中因激光设备与相机设备的相对位姿变化导致的标定次数增加的问题,从而有利于简化三维重建过程。
在一个实施例中,图4为本申请一个实施例中结构光和相机相对位姿可改变的三维重建方法的流程示意图,如图4所示,在上述实施例的基础上,本申请实施例的三维重建方法可以应用于本申请上述实施例的三维重建设备中的控制器,方法可以包括:
步骤S401、根据第一机械臂的第一末端位置以及激光设备的激光平面相对于第一机械臂的第一初始位姿,确定激光平面在世界坐标系的第一位姿。
步骤S402、根据第二机械臂的第二末端位置以及相机设备相对于第二机械臂的第二初始位姿,确定相机设备在世界坐标系的第二位姿。
步骤S403、根据相机设备拍摄的第一拍摄图像、第一位姿以及第二位姿,对被测对象进行三维重建。
其中,第一拍摄图像为激光设备发射的激光照射到被测对象时所拍摄的图像。
本申请实施例中各步骤的可实现方式,可以参考本申请上述结构光和相机相对位姿可改变的三维重建设备实施例中的相关内容,此处不再赘述。
本申请实施例的结构光和相机相对位姿可改变的三维重建方法,在对被测对象进行三维重建过程中,通过第一机械臂101的第一末端位置以及激光设备101E的激光平面相对于第一机械臂101的第一初始位姿,确定激光平面在世界坐标系的第一位姿,以及通过第二机械臂102的第二末端位置以及相机设备102E相对于第二机械臂102的第二初始位姿,确定相机设备102E在世界坐标系的第二位姿。进一步地,根据相机设备102E拍摄的第一拍摄图像、激光平面在世界坐标系的第一位姿以及相机设备102E在世界坐标系的第二位姿,便可实现对被测对象的三维重建。可见,相对于传统技术中的三维重建技术,本申请实施例中,可以灵活地改变激光设备101E与相机设备102E的相对位姿,从而可以适用多种重建场景,其场景适用性较强。另外,本申请实施例中,通过第一末端位置以及第一初始位姿确定激光平面在世界坐标系的第一位姿的方式,以及通过第二末端位置以及第二初始位姿确定相机设备102E在世界坐标系的第二位姿的方式,可以避免在三维重建过程中因激光设备101E与相机设备102E的相对位姿变化导致的标定次数增加的问题,从而简化了三维重建过程,提高了三维重建效率。
在一个实施例中,图5为本申请另一个实施例中结构光和相机相对位姿可改变的三维重建方法的流程示意图,在上述实施例的基础上,本申请实施例中对上述步骤S401中“根据第一机械臂的第一末端位置以及激光设备的激光平面相对于第一机械臂的第一初始位姿,确定激光平面在世界坐标系的第一位姿”的相关内容进行介绍说明。如图5所示,本申请实施例的方法可以包括:
步骤S501、根据第一初始位姿确定激光平面在第一机械臂的第一末端坐标系的第一法向量,以及激光平面中的第一激光点在第一机械臂的第一末端坐标系的第一激光点位置。
本申请实施例中的激光设备101E的激光平面相对于第一机械臂101的第一初始位姿可以包括但不限于:激光设备101E的激光平面在第一机械臂101的第一末端坐标系的第一平面方程。示例性地,激光设备101E的激光平面在第一机械臂101的第一末端坐标系的第一平面方程可以表示为如下公式(1)。
Figure 491038DEST_PATH_IMAGE002
公式(1)
其中,
Figure 647213DEST_PATH_IMAGE004
代表第一平面方程的第一法向量,
Figure 726158DEST_PATH_IMAGE006
代表第一平面方程与第一机械臂的第一末端之间的距离,
Figure 131732DEST_PATH_IMAGE008
代表激光平面中任意激光点在第一机械臂的第一末端坐标系的位置。
当然,第一平面方程还可以表示为上述公式(1)的其它变形或者等效公式,本申请实施例中对此并不作限定。
本步骤中,控制器可以根据激光平面相对于第一机械臂101的第一初始位姿确定激光平面在第一机械臂的第一末端坐标系的第一平面方程对应的第一法向量
Figure 570804DEST_PATH_IMAGE009
,以及激光平面中任意的第一激光点在第一机械臂的第一末端坐标系的第一激光点位置
Figure 863376DEST_PATH_IMAGE011
步骤S502、根据第一末端位置、第一法向量,以及第一激光点位置,得到激光平面在世界坐标系的第一位姿。
本申请实施例中的第一机械臂101的第一末端位置是指在对被测对象进行三维重建时,第一机械臂101的第一末端在世界坐标系的位置(或者位姿),其中,第一末端位置还可以用于指示第一末端坐标系与世界坐标系之间的关系。
本步骤中,控制器可以根据第一末端位置将第一法向量以及第一激光点位置均转化为世界坐标系,从而便可得到激光平面在世界坐标系的第一位姿,其中,激光平面在世界坐标系的第一位姿可以包括但不限于:激光平面在世界坐标系的第二平面方程。
可选地,控制器可以根据第一末端位置以及第一法向量,得到激光平面在世界坐标系的第二法向量。
示例性地,控制器根据第一末端位置以及第一法向量,可以通过如下公式(2)得到激光平面在世界坐标系的第二法向量。
Figure DEST_PATH_IMAGE013_33A
公式(2)
其中,
Figure DEST_PATH_IMAGE015_28A
代表第二法向量,
Figure 237857DEST_PATH_IMAGE017
代表第一末端位置(或者位姿)。
当然,控制器根据第一末端位置以及第一法向量,可以通过上述公式(2)的其它变形或者等效公式得到激光平面在世界坐标系的第二法向量,本申请实施例中对此并不作限定。
进一步地,控制器可以根据第一末端位置以及第一激光点位置,得到第一激光点在世界坐标系的第二激光点位置。
示例性地,控制器根据第一末端位置以及第一激光点位置,可以通过如下公式(3)得到第一激光点在世界坐标系的第二激光点位置。
Figure 865147DEST_PATH_IMAGE019
公式(3)
其中,
Figure 576751DEST_PATH_IMAGE021
代表第一激光点在世界坐标系的第二激光点位置。
当然,控制器根据第一末端位置以及第一激光点位置,还可以通过上述公式(3)的其它变形或者等效公式得到第一激光点在世界坐标系的第二激光点位置,本申请实施例中对此并不作限定。
进一步地,控制器可以根据第二法向量和第二激光点位置,得到第一位姿。
示例性地,控制器根据第二法向量和第二激光点位置,可以通过如下公式(4)得到第二平面方程与第一机械臂的第一末端之间的距离D,从而得到了第二平面方程的所有参数,即得到了激光平面在世界坐标系的第二平面方程(或者称之为第一位姿)。
Figure 973097DEST_PATH_IMAGE023
公式(4)
当然,控制器根据第二法向量和第二激光点位置,还可以通过上述公式(4)的其它变形或者等效公式得到第二平面方程的与第一机械臂的第一末端之间的距离D,本申请实施例中对此并不作限定。
示例性地,本申请实施例的第二平面方程可以表示为如下公式(5)。
Figure 643113DEST_PATH_IMAGE025
公式(5)
其中,
Figure 505502DEST_PATH_IMAGE027
代表激光平面中任意激光点在世界坐标系的位置。
当然,本申请实施例的第二平面方程还可以表示为上述公式(5)的其它变形或者等效公式,本申请实施例中对此并不作限定。
本实施例中,根据激光平面相对于第一机械臂101的第一初始位姿确定激光平面在第一机械臂的第一末端坐标系的第一法向量,以及激光平面中的第一激光点在第一机械臂的第一末端坐标系的第一激光点位置;进一步地,根据第一末端位置、第一法向量,以及第一激光点位置,得到激光平面在世界坐标系的第一位姿。可见,本申请实施例中,通过根据第一机械臂101的第一末端位置以及激光平面相对于第一机械臂101的第一初始位姿,便可确定激光平面在世界坐标系的第一位姿,可以避免在三维重建过程中因激光设备与相机设备的相对位姿变化导致的标定次数增加的问题,从而有利于简化三维重建过程,提高三维重建效率。
在一个实施例中,图6为本申请另一个实施例中结构光和相机相对位姿可改变的三维重建方法的流程示意图,在上述实施例的基础上,本申请实施例中的第一拍摄图像中的被测对象上包含有上述激光设备的激光照射的第一激光区域,本申请实施例中对上述步骤S403中“根据相机设备拍摄的第一拍摄图像、第一位姿以及第二位姿,对被测对象进行三维重建”的相关内容进行介绍说明。如图6所示,本申请实施例的方法可以包括:
步骤S601、对于第一激光区域的各第一像素点,根据第一像素点在第一拍摄图像坐标系的第一像素点位置、第一位姿以及第二位姿,得到被测对象的被照射点在世界坐标系的位置。
图7为本申请实施例提供的线结构光三维重建的模型示意图,如图7所示,第一拍摄图像中的被测对象上包含有上述激光设备的线结构激光照射的第一激光区域,其中,第一激光区域可以包括多个第一像素点。
本步骤中,对于第一激光区域的各第一像素点(例如,如图7所示的像素点q),控制器可以根据第一像素点在第一拍摄图像坐标系的第一像素点位置、激光设备101E的激光平面在世界坐标系的第一位姿以及相机设备102E在世界坐标系的第二位姿,便可得到被测对象的被照射点在世界坐标系的位置,其中,被照射点为第一像素点(例如,如图7所示的像素点q)对应的激光点照射到被测对象上的点(例如,如图7所示的点q’)。
本申请实施例中涉及的第一拍摄图像坐标系是指以第一拍摄图像的中心点或者任意顶点为坐标原点的坐标系。
需要说明的是,控制器可以通过相关技术中的线结构光条纹提取算法,确定第一拍摄图像中的第一激光区域,其中,线结构光条纹提取算法可以包括但不限于灰度重心法、极值法、阈值法和Steger算法中的任一项。其中,灰度重心法的速度快以及实时性高,但当线结构光投射在复杂物体表面时,光条纹形状变化较大,使得光条纹截面不服从高斯分布,会导致提取到的线结构光条纹中心不精确。极值法在图像灰度分布为理想高斯分布时的提取效果好以及速度快,但易受噪声影响。阈值法的速度快,但也容易受噪声影响。Steger算法通过利用Hessian矩阵,可以实现光条纹中心像素精度定位,但速度较慢,无法做到实时提取。
本申请下述实施例中,对“根据第一像素点位置、第一位姿以及第二位姿,得到被测对象的被照射点在世界坐标系的位置”的可实现方式进行介绍。
1)控制器可以根据第一像素点在第一拍摄图像坐标系的第一像素点位置,以及相机设备102E在世界坐标系的第二位姿,得到相机设备的中心穿过第一像素点的第一光线方程。
可选地,控制器可以根据第一像素点位置,以及相机设备102E的内参矩阵,得到第一像素点在相机设备坐标系的第二像素点位置。
示例性地,相机设备102E的内参矩阵可以包括但不限于相机设备102E的内参系数和畸变系数。通常情况下,相机设备102E的内参系数和畸变系数在相机设备102E出厂时固定的参数,因此,只需对相机设备102E的内参系数和畸变系数标定一次即可,无需每次使用前都标定(本申请后续实施例中会对关于标定内参系数和畸变系数的相关内容进行介绍)。
本申请实施例中的相机设备坐标系可以是指以相机设备的镜头位置或者其它预设位置为坐标原点的坐标系。
示例性地,控制器可以根据第一像素点在第一拍摄图像坐标系的第一像素点位置确定第一像素点在归一化平面的像素点位置,然后根据第一像素点在归一化平面的像素点位置,以及相机设备102E的内参矩阵,可以通过如下公式(6)得到第一像素点在相机设备坐标系的第二像素点位置。
Figure 20797DEST_PATH_IMAGE029
公式(6)
其中,
Figure 537229DEST_PATH_IMAGE031
代表第一像素点在相机设备坐标系的第二像素点位置,K代表相机设备的内参矩阵,
Figure 378146DEST_PATH_IMAGE033
代表第一像素点在归一化平面的像素点位置。
当然,控制器根据第一像素点在归一化平面的像素点位置,以及相机设备的内参矩阵,还可以通过上述公式(6)的其它变形或者等效公式得到第一像素点在相机设备坐标系的第二像素点位置,本申请实施例中对此并不作限定。
进一步地,控制器可以根据第二像素点位置,以及第二位姿,得到第一像素点在世界坐标系的位置。
示例性地,控制器根据第二像素点位置,以及相机设备102E在世界坐标系的第二位姿,可以通过如下公式(7)得到第一像素点在世界坐标系的位置。
Figure 183291DEST_PATH_IMAGE035
公式(7)
其中,
Figure 502277DEST_PATH_IMAGE037
代表第一像素点在世界坐标系的位置,
Figure 623948DEST_PATH_IMAGE039
代表相机设备在世界坐标系的旋转矩阵,
Figure 901346DEST_PATH_IMAGE041
代表相机设备在世界坐标系的平移矩阵。
当然,控制器根据第二像素点位置,以及第二位姿,还可以通过上述公式(7)的其它变形或者等效公式得到第一像素点在世界坐标系的位置,本申请实施例中对此并不作限定。
进一步地,控制器可以根据第一像素点在世界坐标系的位置以及第二位姿,得到第一光线方程。
示例性地,控制器根据第一像素点在世界坐标系的位置以及相机设备在世界坐标系的第二位姿,可以通过如下公式(8)得到第一光线方程。
Figure 990524DEST_PATH_IMAGE043
公式(8)
其中,
Figure 582043DEST_PATH_IMAGE045
代表相机设备的中心穿过第一像素点的光线(或者第一像素点对应的激光点)照射到被测对象上的点在世界坐标系的位置,
Figure 823799DEST_PATH_IMAGE047
代表相机设备在世界坐标系的第二位姿,
Figure 740940DEST_PATH_IMAGE049
代表光线方向,t代表沿着方向
Figure 51835DEST_PATH_IMAGE049
移动的距离。
需要说明的是,控制器可以通过将第一像素点在世界坐标系的位置与相机设备在世界坐标系的第二位姿相减的方式,确定光线方向
Figure 447045DEST_PATH_IMAGE049
。例如,假设第一像素点在世界坐标系的位置表示为
Figure 58155DEST_PATH_IMAGE051
,相机设备在世界坐标系的第二位姿表示为
Figure 162508DEST_PATH_IMAGE053
,控制器可以通过将第一像素点在世界坐标系的x轴位置坐标
Figure 960700DEST_PATH_IMAGE055
与相机设备在世界坐标系的x轴位姿坐标
Figure 690758DEST_PATH_IMAGE057
相减得到a、将第一像素点在世界坐标系的y轴位置坐标
Figure 625216DEST_PATH_IMAGE059
与相机设备在世界坐标系的y轴位姿坐标
Figure 149738DEST_PATH_IMAGE061
相减得到b,以及将第一像素点在世界坐标系的z轴位置坐标
Figure 904068DEST_PATH_IMAGE063
与相机设备在世界坐标系的z轴位姿坐标
Figure 457059DEST_PATH_IMAGE065
相减得到c。
当然,控制器根据第一像素点在世界坐标系的位置和相机设备在世界坐标系的第二位姿,还可以通过其它方式确定光线方向
Figure 511602DEST_PATH_IMAGE049
,本申请实施例中对此并不作限定。
当然,控制器根据第一像素点在世界坐标系的位置以及相机设备在世界坐标系的第二位姿,还可以通过上述公式(8)的其它变形或者等效公式得到第一光线方程,本申请实施例中对此并不作限定。
2)控制器可以根据第一光线方程以及激光平面在世界坐标系的第一位姿,得到被测对象的被照射点在世界坐标系的位置。其中,被照射点为上述第一像素点对应的激光点照射到被测对象上的点。
示例性的,控制器根据第一光线方程以及激光平面在世界坐标系的第一位姿,可以结合上述公式(8)和上述公式(5)得到第一光线方程中的参数t,其中,参数t可以表示为如下公式(9)所示:
Figure 207026DEST_PATH_IMAGE067
公式(9)
进一步地,控制器可以将参数t带入上述公式(8),便可得到被测对象的被照射点在世界坐标系的位置。
当然,控制器根据第一像素点位置、第一位姿以及第二位姿,还可以通过其它方式得到被测对象的被照射点在世界坐标系的位置,本申请实施例中对此并不作限定。
步骤S602、根据被测对象的各被照射点在世界坐标系的位置,得到被测对象对应的三维数据。
本步骤中,控制器根据被测对象的各被照射点在世界坐标系的位置便得到了被测对象对应的三维数据,从而便可以构建被测对象的点云模型,实现对被测对象的三维重建。
图8为本申请实施例中被测对象的局部点云模型的示意图,如图8所示,通过激光设备对被测对象的各部分依次进行激光照射,以及控制器根据相机设备所拍摄的各个图像进行分析,便可得到被测对象的完整点云模型。
本申请实施例中,对于第一激光区域的各第一像素点,根据第一像素点在第一拍摄图像坐标系的第一像素点位置、第一位姿以及第二位姿,得到被测对象的被照射点在世界坐标系的位置;进一步地,根据被测对象的各被照射点在世界坐标系的位置,便可得到被测对象对应的三维数据,从而实现了对被测对象的三维重建。由于本申请实施例中的第一位姿为根据第一机械臂101的第一末端位置以及激光平面相对于第一机械臂101的第一初始位姿确定的,第二位姿为根据第二机械臂102的第二末端位置以及相机设备相对于第二机械臂的第二初始位姿确定的,因此,本申请实施例不仅可以实现灵活地改变激光设备与相机设备的相对位姿,从而可以适用多种重建场景,还可以避免在三维重建过程中因激光设备与相机设备的相对位姿变化导致的标定次数增加的问题,从而简化了三维重建过程,提高了三维重建效率。
在一个实施例中,在上述实施例的基础上,本申请实施例中对关于上述“激光平面相对于第一机械臂的第一初始位姿”的相关内容进行介绍说明。本申请实施例的方法可以包括:
根据第一机械臂的第三末端位置、第二机械臂的第四末端位置,以及相机设备拍摄的至少两个第二拍摄图像,得到激光平面相对于第一机械臂的第一初始位姿。
本申请实施例中的第一机械臂的第三末端位置是指在获取激光平面相对于第一机械臂的第一初始位姿时,第一机械臂的第一末端在世界坐标系的位置;第二机械臂的第四末端位置是指在获取激光平面相对于第一机械臂的第一初始位姿时,第二机械臂的第二末端在世界坐标系的位置。
本申请实施例中的激光平面相对于第一机械臂的第一初始位姿可以包括但不限于:激光平面在第一机械臂的第一末端坐标系的第一平面方程。
本申请实施例中的第二拍摄图像可以为激光设备发射的激光照射到第一标定板时所拍摄的图像,不同第二拍摄图像中的第一标定板的位姿不同。
示例性地,本申请实施例中的第一标定板可以包括但不限于Aruco标定板, Aruco标定板是一个合成方形标记,由宽的黑色边框和确定标识符 (ID))的内部二进制矩阵(或者称之为二进制编码)组成。其中,黑色边框有助于Aruco标定板在图像中的快速检测,二进制编码有助于Aruco标定板的识别、错误检测和校正。
图9为本申请实施例提供的Aruco标定板的结构示意图,如图9所示,Aruco标定板的标识符ID可以为564,字典可以为Original,边长可以为5厘米。
本申请实施例中,控制器可以根据获取的第一机械臂的第三末端位置、第二机械臂的第四末端位置,以及相机设备拍摄的至少两个第二拍摄图像,得到激光平面相对于第一机械臂的第一初始位姿,以便于后续在对任意被测对象进行三维重建时可以根据获取到的第一机械臂的第一末端位置,以及激光平面相对于第一机械臂的第一初始位姿,便可确定激光平面在世界坐标系的第一位姿,从而可以避免在三维重建过程中因激光设备与相机设备的相对位姿变化导致的标定次数增加的问题。
应理解,在根据线结构光三维重建时,通过激光平面与相机设备的光线相交,计算二者的交点位置,便得到了被测对象表面在三维空间中的坐标,因此,需要获得激光平面的平面方程,其中,获得激光平面的平面方程的过程就是激光平面的标定过程。
本申请下述实施例中首先对激光平面的标定原理进行介绍。
图10为本申请实施例中激光平面的标定原理的示意图,如图10所示,通过控制激光设备将线结构光照射在第一标定板上,以及控制相机设备拍摄激光设备发射的线结构光照射到第一标定板时的多个第二拍摄图像,其中,不同第二拍摄图像中的第一标定板的位姿不同(例如,保持拍摄设备的位姿和激光设备的位姿不变,而旋转第一标定板或者上下移动第一标定板等),第二拍摄图像中的第一标定板上包含有激光设备的线结构光照射的第二激光区域。图11为本申请实施例中第二拍摄图像的第二激光区域的示意图,如图11所示,通过保持拍摄设备的位姿和激光设备的位姿不变,多次变化第一标定板的位姿所拍摄的不同第二拍摄图像中的第二激光区域不同。
应理解,图10中的坐标系XcYcZc为相机设备坐标系,其坐标原点为Oc;坐标系XeYeZe为第一机械臂的第一末端坐标系,其坐标原点为Oe。
1)对于各第二拍摄图像的第二激光区域的任意第二像素点,控制器可以根据第二像素点在第二拍摄图像坐标系的像素点位置,以及相机设备的内参矩阵,得到第二像素点在相机设备坐标系的像素点位置。
需要说明的是,具体的过程可以参考上述“根据第一像素点位置,以及相机设备的内参矩阵,得到第一像素点在相机设备坐标系的第二像素点位置”的相关内容,此处不再赘述。
2)控制器可以根据第二像素点在相机设备坐标系的像素点位置,以及相机设备在世界坐标系的第二位姿,得到第二像素点在世界坐标系的位置。
需要说明的是,具体的过程可以参考上述“根据第二像素点位置,以及第二位姿,得到第一像素点在世界坐标系的位置”的相关内容,此处不再赘述。
3)控制器可以根据第二像素点在世界坐标系的位置以及相机设备在世界坐标系的第二位姿,得到对应的光线方程。
示例性地,控制器根据第二像素点在世界坐标系的位置以及相机设备在世界坐标系的第二位姿,可以通过如下公式(10)得到对应的光线方程。
Figure 714231DEST_PATH_IMAGE069
公式(10)
其中,
Figure 254933DEST_PATH_IMAGE071
代表相机设备发出的穿过第二像素点(例如,如图10中所示的r)的光线所对应的光线方程,
Figure 914716DEST_PATH_IMAGE073
代表相机设备在世界坐标系的第二位姿,
Figure 312199DEST_PATH_IMAGE075
代表第二像素点在相机设备坐标系的位置。
当然,控制器根据第二像素点在世界坐标系的位置以及相机设备在世界坐标系的第二位姿,还可以通过上述公式(10)的其它变形或者等效公式得到对应的光线方程,本申请实施例中对此并不作限定。
4)控制器可以根据上述光线方程与上述第二拍摄图像中的第一标定板在世界坐标系的标定板平面相交,便可以得到上述第二像素点对应的激光点照射到第一标定板上的点在世界坐标系的位置。应理解,上述第二拍摄图像中的第一标定板在世界坐标系的标定板平面可以通过对上述第二拍摄图像进行处理得到第一标定板在相机设备坐标系的位姿,然后根据第一标定板在相机设备坐标系的位姿以及相机设备在在世界坐标系的第二位姿得到的。
5)控制器可以根据多个第二拍摄图像中的第二像素点分别对应的激光点(均位于激光平面上)在世界坐标系的位置,便可以拟合得到激光平面的平面方程。
在一个实施例中,图12为本申请另一个实施例中结构光和相机相对位姿可改变的三维重建方法的流程示意图,在上述实施例的基础上,本申请实施例的第二拍摄图像中的第一标定板上包含有上述激光设备的激光照射的第二激光区域,本申请实施例中对上述“根据第一机械臂的第三末端位置、第二机械臂的第四末端位置,以及相机设备拍摄的至少两个第二拍摄图像,得到激光平面相对于第一机械臂的第一初始位姿”的相关内容进行介绍说明。如图12所示,本申请实施例的方法可以包括:
步骤S1201、对于各第二拍摄图像,获取第二拍摄图像中的第一标定板在相机设备坐标系的位姿,以及相机设备在第一标定板坐标系的位姿。
本步骤中,对于各第二拍摄图像,控制器可以先获取第二拍摄图像中的第一标定板在相机设备坐标系的位姿,然后根据第一标定板在相机设备坐标系的位姿便可确定相机设备在第一标定板坐标系的位姿。
可选地,控制器可以通过对第二拍摄图像进行图像处理,便可得到第一标定板在相机设备坐标系的位姿,其中,第一标定板在相机设备坐标系的位姿可以包括但不限于第一标定板在相机设备坐标系的旋转矩阵
Figure 306700DEST_PATH_IMAGE077
和第一标定板在相机设备坐标系的平移矩阵
Figure 932985DEST_PATH_IMAGE079
。进一步地,控制器可以通过对第一标定板在相机设备坐标系的位姿进行求逆处理,便可得到相机设备在第一标定板坐标系的位姿,其中,相机设备在第一标定板坐标系的位姿可以包括但不限于相机设备在第一标定板坐标系的旋转矩阵
Figure 165383DEST_PATH_IMAGE081
和相机设备在第一标定板坐标系的平移矩阵
Figure 468188DEST_PATH_IMAGE083
步骤S1202、对于第二拍摄图像的第二激光区域的任意第二像素点,根据第二像素点在第二拍摄图像坐标系的第三像素点位置,以及相机设备在第一标定板坐标系的位姿,得到相机设备的中心穿过第二像素点的第二光线方程。
本申请实施例中涉及的第二拍摄图像坐标系是指以第二拍摄图像的中心点或者任意顶点为坐标原点的坐标系。
本步骤中,对于各第二拍摄图像的第二激光区域的任意第二像素点,控制器可以根据第二像素点在第二拍摄图像坐标系的第三像素点位置、相机设备的内参矩阵以及相机设备在第一标定板坐标系的位姿,得到第二像素点在第一标定板坐标系的第五像素点位置。进一步地,控制器可以根据第五像素点位置以及相机设备在第一标定板坐标系的位姿,得到相机设备的中心穿过第二像素点的第二光线方程。
可选地,控制器可以根据第二像素点在第二拍摄图像坐标系的第三像素点位置,以及相机设备的内参矩阵,得到第二像素点在相机设备坐标系的第四像素点位置。
需要说明的是,具体的过程可以参考上述“根据第一像素点位置,以及相机设备的内参矩阵,得到第一像素点在相机设备坐标系的第二像素点位置”的相关内容,此处不再赘述。
进一步地,控制器可以根据第四像素点位置,以及相机设备在第一标定板坐标系的位姿,便可得到第二像素点在第一标定板坐标系的第五像素点位置。需要说明的是,控制器在获知相机设备在第一标定板坐标系的位姿时,便可获知相机设备坐标系与第一标定板坐标系之间的关系。
例如,控制器可以根据相机设备在第一标定板坐标系的位姿将第四像素点位置转化为第一标定板坐标系,便可得到第二像素点在第一标定板坐标系的第五像素点位置。
进一步地,控制器可以根据第五像素点位置,以及相机设备在第一标定板坐标系的位姿,得到第二光线方程。
示例性地,控制器根据第五像素点位置,以及相机设备在第一标定板坐标系的位姿,可以通过如下公式(11)得到第二光线方程。
Figure 684406DEST_PATH_IMAGE085
公式(11)
其中,
Figure 363649DEST_PATH_IMAGE087
代表相机设备发出的穿过第二像素点(例如,如图10中所示的r)的光线所对应的光线方程,
Figure 716133DEST_PATH_IMAGE089
代表相机设备在第一标定板坐标系的位姿,
Figure 940572DEST_PATH_IMAGE091
代表第二像素点在第一标定板坐标系的第五像素点位置。
当然,控制器根据第五像素点位置,以及相机设备在第一标定板坐标系的位姿,还可以通过上述公式(11)的其它变形或者等效公式得到第二光线方程,本申请实施例中对此并不作限定。
步骤S1203、根据第二光线方程、第一标定板平面在第一标定板坐标系的平面方程,以及第一标定板在相机设备坐标系的位姿,得到第一标定板的被照射点在相机设备坐标系的位置,其中,被照射点为第二像素点对应的激光点照射到第一标定板上的点。
可选地,控制器可以根据第二光线方程以及第一标定板平面在第一标定板坐标系的平面方程,得到第一标定板的被照射点在第一标定板坐标系的位置。应理解,第一标定板平面在第一标定板坐标系的平面方程可以表示为如下公式(12)。
Figure 909665DEST_PATH_IMAGE093
公式(12)
当然,第一标定板平面在第一标定板坐标系的平面方程还可以表示为上述公式(12)的其它变形或者等效公式,本申请实施例中对此并不作限定。
例如,控制器可以根据第二光线方程与第一标定板平面在第一标定板坐标系的平面方程相交,便可得到第一标定板的被照射点在第一标定板坐标系的位置。
进一步地,控制器可以根据第一标定板的被照射点在第一标定板坐标系的位置,以及第一标定板在相机设备坐标系的位姿,得到第一标定板的被照射点在相机设备坐标系的位置。需要说明的是,控制器在获知第一标定板在相机设备坐标系的位姿时,便可获知第一标定板与相机设备坐标系之间的关系。
例如,控制器可以根据第一标定板在相机设备坐标系的位姿将第一标定板的被照射点在第一标定板坐标系的位置转化为相机设备坐标系,便可得到第一标定板的被照射点在相机设备坐标系的位置。
步骤S1204、根据第一标定板的被照射点在相机设备坐标系的位置、相机设备相对于第二机械臂的第二初始位姿,以及第四末端位置,得到第一标定板的被照射点在世界坐标系的位置。
本步骤中,控制器可以根据相机设备相对于第二机械臂的第二初始位姿,以及第二机械臂的第四末端位置,对第一标定板的被照射点在相机设备坐标系的位置转化得到第一标定板的被照射点在世界坐标系的位置。
可选地,控制器可以根据第一标定板的被照射点在相机设备坐标系的位置,以及相机设备相对于第二机械臂的第二初始位姿,得到第一标定板的被照射点在第二机械臂的第二末端坐标系的位置。需要说明的是,相机设备相对于第二机械臂的第二初始位姿也可以用于表示相机设备坐标系与第二机械臂的第二末端坐标系之间的关系。
例如,控制器可以根据相机设备相对于第二机械臂的第二初始位姿,将第一标定板的被照射点在相机设备坐标系的位置转化为第二机械臂的第二末端坐标系,便可得到第一标定板的被照射点在第二机械臂的第二末端坐标系的位置。
进一步地,控制器根据第一标定板的被照射点在第二机械臂的第二末端坐标系的位置,以及第二机械臂的第四末端位置,得到第一标定板的被照射点在世界坐标系的位置。需要说明的是,控制器在获知第二机械臂的第四末端位置时,便可获知第二末端坐标系与世界坐标系之间的关系。
例如,控制器可以根据第二机械臂的第四末端位置,将第一标定板的被照射点在第二机械臂的第二末端坐标系的位置转化为世界坐标系,便可得到第一标定板的被照射点在世界坐标系的位置。
步骤S1205、根据各第一标定板的被照射点在世界坐标系的位置,拟合得到激光平面在世界坐标系的平面方程。
本步骤中,考虑到各第二拍摄图像中的各第一标定板的被照射点均位于激光平面上,控制器可以根据各第一标定板的被照射点在世界坐标系的位置,拟合得到激光平面在世界坐标系的平面方程(或者称之为第三平面方程)。
示例性地,控制器根据各第一标定板的被照射点在世界坐标系的位置,可以通过最小二乘法拟合得到激光平面在世界坐标系的第三平面方程;当然,控制器根据各第一标定板的被照射点在世界坐标系的位置,还可以通过其它方式拟合得到激光平面在世界坐标系的第三平面方程,本申请实施例中对此并不作限定。
步骤S1206、根据平面方程以及第三末端位置,得到激光平面相对于第一机械臂的第一初始位姿。
本申请实施例中的激光平面相对于第一机械臂的第一初始位姿可以包括但不限于:激光平面在第一机械臂的第一末端坐标系的第一平面方程。
本申请实施例中的第一机械臂的第三末端位置是指在获取激光设备的激光平面相对于第一机械臂的第一初始位姿时,第一机械臂的第一末端在世界坐标系的位置(或者位姿),其中,第三末端位置还可以用于指示第一末端坐标系与世界坐标系之间的关系。
本步骤中,控制器可以根据第三末端位置将上述第三平面方程转化为第一机械臂的第一末端坐标系,便可得到激光平面相对于第一机械臂的第一初始位姿。
可选地,控制器可以根据上述第三平面方程的第三法向量,以及第三末端位置,得到激光平面在第一机械臂的第一末端坐标系的平面方程所对应的第一法向量。
例如,控制器可以第三末端位置将上述第三平面方程的第三法向量转化为第一机械臂的第一末端坐标系,便可得到激光平面在第一机械臂的第一末端坐标系的平面方程(即上述第一平面方程)所对应的第一法向量
Figure 127020DEST_PATH_IMAGE094
进一步地,控制器根据激光平面中的第二激光点在世界坐标系的第三激光点位置,以及第三末端位置,得到第二激光点在第一机械臂的第一末端坐标系的第四激光点位置。
例如,控制器可以根据第三末端位置将激光平面中的第二激光点在世界坐标系的第三激光点位置转化为第一机械臂的第一末端坐标系,便可得到第二激光点在第一机械臂的第一末端坐标系的第四激光点位置。
进一步地,控制器可以根据第一法向量和第四激光点位置,得到激光平面相对于第一机械臂的第一初始位姿。
示例性地,控制器根据第一法向量和第四激光点位置,可以通过如下公式(13)得到激光平面在第一机械臂的第一末端坐标系的第一平面方程与第一机械臂的第一末端之间的距离
Figure 599589DEST_PATH_IMAGE095
,从而得到了激光平面在第一机械臂的第一末端坐标系的第一平面方程的所有参数,即得到了激光平面在第一机械臂的第一末端坐标系的第一平面方程(或者称之为激光平面相对于第一机械臂的第一初始位姿)。
Figure DEST_PATH_IMAGE097_24A
公式(13)
当然,控制器根据第四法向量和第四激光点位置,还可以通过上述公式(13)的其它变形或者等效公式得到激光平面在第一机械臂的第一末端坐标系的第一平面方程与第一机械臂的第一末端之间的距离
Figure 319896DEST_PATH_IMAGE095
,本申请实施例中对此并不作限定。
本申请实施例中,通过根据第一机械臂的第三末端位置、第二机械臂的第四末端位置,以及相机设备拍摄的至少两个第二拍摄图像,得到激光平面相对于第一机械臂的第一初始位姿,以便于后续在对任意被测对象进行三维重建时可以根据获取到的第一机械臂的第一末端位置,以及激光平面相对于第一机械臂的第一初始位姿,便可确定激光平面在世界坐标系的第一位姿,可以避免在三维重建过程中因激光设备与相机设备的相对位姿变化导致的标定次数增加的问题,从而简化了三维重建过程,提高了三维重建效率。
应理解,为了减小单次计算可能带来的误差,本申请实施例中,可以通过多次重复上述步骤S1201-上述步骤S1206,然后对得到的第一平面方程的各个参数(每个参数对应的值包括多个)分别计算平均值的方式,得到最终的第一平面方程的各个参数。
在一个实施例中,在上述实施例的基础上,本申请实施例中对关于上述“相机设备相对于第二机械臂的第二初始位姿”的相关内容进行介绍说明。本申请实施例的方法可以包括:
根据相机设备拍摄的多个第三拍摄图像、各第三拍摄图像对应的第一机械臂的第五末端位置,以及各第三拍摄图像对应的第二机械臂的第六末端位置,得到相机设备相对于第二机械臂的第二初始位姿。
本申请实施例中的第三拍摄图像可以为激光设备发射的激光照射到第二标定板时所拍摄的图像,其中,不同第三图像中的第二标定板的位姿不同。
本申请实施例中的第三拍摄图像对应的第一机械臂的第五末端位置是指在拍摄第三拍摄图像时,第一机械臂的第一末端在世界坐标系的位置;第三拍摄图像对应的第二机械臂的第六末端位置是指在拍摄第三拍摄图像时,第二机械臂的第二末端在世界坐标系的位置。
本申请实施例中的相机设备相对于第二机械臂的第二初始位姿可以包括但不限于:相机设备在第二机械臂的第二末端坐标系的位姿(或者位置)。
需要说明的是,本申请实施例中获取相机设备相对于第二机械臂的第二初始位姿的过程就是对机械臂手眼标定的过程。通常情况下,手眼标定方式根据相机设备与机械臂末端(或者称之为手)之间的位置关系,分为眼在手上的手眼标定方式以及眼在手外的手眼标定方式。
图13为相关技术中眼在手上的手眼标定模型的示意图,如图13所示,眼在手上的手眼标定模型中,相机设备设置在机械臂末端。图14为相关技术中眼在手外的手眼标定模型的示意图,如图14所示,眼在手外的手眼标定模型中,标定板设置在机械臂末端,而相机设备设置在其它地方。应理解,本申请实施例中采用的是眼在手上的手眼标定方式。
本申请实施例中,通过使用二进制方形基准标记方法,其主要优势是通过单个标记就可以提供足够的对应关系以便于可以获得相机设备姿势。示例性地,本申请实施例中的第二标定板可以包括但不限于上述Aruco标定板。
图15为本申请实施例中手眼标定的场景示意图,如图15所示,通过控制激光设备将线结构光照射在第二标定板上,以及控制相机设备拍摄激光设备发射的线结构光照射到第二标定板时的多个第三拍摄图像,其中,不同第三拍摄图像中的第二标定板的位姿不同。例如,通过保持第二标定板与机械臂底座之间的位置不变,控制拍摄设备的位姿和激光设备的位姿改变的方式,使得不同第三拍摄图像中的第二标定板的位姿不同。图16为本申请实施例中多个第三拍摄图像的示意图,如图16所示,不同第三拍摄图像中的第二标定板的位姿不同。
可选地,对于各第三拍摄图像,控制器通过对第三拍摄图像进行图像处理,便可得到第三拍摄图像中的第二标定板在拍摄设备坐标系的位置(或者位姿)。进一步地,控制器根据第三拍摄图像中的第二标定板在拍摄设备坐标系的位置(或者位姿)、各第三拍摄图像对应的第一机械臂的第五末端位置,以及各第三拍摄图像对应的第二机械臂的第六末端位置,可以通过Tsai-Lenz两步法便可得到相机设备相对于第二机械臂的第二初始位姿,其中,相机设备相对于第二机械臂的第二初始位姿可以包括但不限于:相机设备相对于第二机械臂的末端的相对平移矩阵和相对旋转矩阵。
当然,控制器根据第三拍摄图像中的第二标定板在拍摄设备坐标系的位置、各第三拍摄图像对应的第一机械臂的第五末端位置,以及各第三拍摄图像对应的第二机械臂的第六末端位置,还可以通过其它方式得到相机设备相对于第二机械臂的第二初始位姿,本申请实施例中对此并不作限定。
图17为本申请实施例中相机设备在第二机械臂上的位置示意图,图18为本申请实施例中机器人操作系统(Robot Operating System,ROS)的可视化工具中显示的相机设备在第二机械臂上的位置示意图,如图17和图18所示,通过将获取的相机设备相对于第二机械臂的第二初始位姿发布到机器人的话题中,就可以直接获取相机设备在世界坐标系的位姿,在ROS对应的3D可视化工具(例如RViz)中便可以显示相机设备在第二机械臂上的位置。
本申请实施例中,控制器可以根据相机设备拍摄的多个第三拍摄图像、各第三拍摄图像对应的第一机械臂的第五末端位置,以及各第三拍摄图像对应的第二机械臂的第六末端位置,得到相机设备相对于第二机械臂的第二初始位姿,以便于后续在对任意被测对象进行三维重建时可以根据获取到的第一机械臂的第一末端位置,以及激光平面相对于第一机械臂的第一初始位姿,便可确定激光平面在世界坐标系的第一位姿,从而可以避免在三维重建过程中因激光设备与相机设备的相对位姿变化导致的标定次数增加的问题,从而简化了三维重建过程,提高了三维重建效率。
在一个实施例中,在上述实施例的基础上,本申请实施例中对相机设备的内参系数和畸变系数标定过程进行介绍。
可选地,控制器可以根据第一机械臂的第七末端位置、第二机械臂的第八末端位置,以及相机设备拍摄的至少两个第四拍摄图像,得到相机设备的内参系数和畸变系数。
本申请实施例中的第四拍摄图像可以为激光设备发射的激光照射到第三标定板时所拍摄的图像,其中,不同第四图像中的第三标定板的位姿不同。
示例性地,本申请实施例中的第三标定板可以包括但不限于棋盘格标定板。图19为本申请实施例提供的棋盘格标定板的结构示意图,如图19所示,根据相机设备的焦距和机械臂工作空间限制选择的棋盘格标定板的尺寸可以为7厘米*5厘米*0.01厘米,内部有7条横线和5条竖线,包含8行6列的黑白相间正方形格子,每个格子的边长为1厘米。
本申请实施例中的第一机械臂的第七末端位置是指在获取相机设备的内参系数和畸变系数时,第一机械臂的第一末端在世界坐标系的位置;第二机械臂的第八末端位置是指在获取相机设备的内参系数和畸变系数时,第二机械臂的第二末端在世界坐标系的位置。
图20为本申请实施例中相机设备的内参系数和畸变系数标定的场景示意图,如图20所示,通过控制激光设备将线结构光照射在第三标定板上,以及控制相机设备拍摄激光设备发射的线结构光照射到第三标定板时的多个第四拍摄图像,其中,不同第四拍摄图像中的第三标定板的位姿不同。例如,通过保持拍摄设备的位姿和激光设备的位姿不变,而变换第三标定板的位置与角度的方式,使得不同第四拍摄图像中的第三标定板的位姿不同。图21为本申请实施例中多个第四拍摄图像的示意图,如图21所示,不同第四拍摄图像中的第三标定板的位姿不同。
本申请实施例中,控制器根据第一机械臂的第七末端位置、第二机械臂的第八末端位置,以及相机设备拍摄的至少两个第四拍摄图像,可以通过张正友标定法得到相机设备的内参系数和畸变系数;当然,还可以通过其它方式得到相机设备的内参系数和畸变系数,本申请实施例中对此并不作限定。
本申请实施例中,控制器根据第一机械臂的第七末端位置、第二机械臂的第八末端位置,以及相机设备拍摄的至少两个第四拍摄图像,得到相机设备的内参系数和畸变系数,以便于后续在对任意被测对象进行三维重建时,可以根据相机设备的内参系数和畸变系数确定拍摄图像中的像素点在相机设备坐标系的位置,以便于后续的图像分析,从而有利于准确且快速地实现对被测对象的三维重建。
在一个实施例中,图22为本申请另一个实施例中结构光和相机相对位姿可改变的三维重建方法的流程示意图,在上述实施例的基础上,本申请实施例中结合上述相机设备的内参系数和畸变系数标定过程、机械臂手眼标定过程、激光平面相对于第一机械臂的第一初始位姿获取过程,以及对被测对象进行三维重建等过程,对本申请实施例的结构光和相机相对位姿可改变的三维重建方法进行说明。如图22所示,本申请实施例中的结构光和相机相对位姿可改变的三维重建设备(或者系统)通过在双臂机器人上搭配视觉系统,将激光设备和相机设备分别固定在第一机械臂和第二机械臂的末端,以便于通过操作第一机械臂上的激光设备将激光投射在被测对象的表面,以及第二机械臂上的相机设备进行拍摄图像。
1)在准备阶段
一方面需要进行相机设备的内参系数和畸变系数标定过程,然后进行机械臂手眼标定过程得到相机设备相对于第二机械臂的第二初始位姿;另一方面需要进行激光平面相对于第一机械臂的第一初始位姿获取过程。
2)三维重建阶段
一方面,控制器可以根据获取的第一机械臂的第一末端位置以及激光设备的激光平面相对于第一机械臂的第一初始位姿,便可确定激光平面在世界坐标系的第一位姿。另一方面,控制器可以根据获取的第二机械臂的第二末端位置以及相机设备相对于第二机械臂的第二初始位姿,便可确定相机设备在世界坐标系的第二位姿。进一步地,控制器根据相机设备拍摄的第一拍摄图像、激光平面在世界坐标系的第一位姿以及相机设备在世界坐标系的第二位姿,便可实现对被测对象的三维重建。
综上所述,本申请实施例中,通过在双臂机器人上搭配视觉系统进行三维重建,可以借助机械臂的末端位置获得相机设备在世界坐标系的位姿,以及激光平面在世界坐标系的第二平面方程,因此,本申请实施例可以灵活地改变相机设备与激光设备之间的相对位姿,其场景适用性较强,另外还可以避免在三维重建过程中因激光设备与相机设备的相对位姿变化导致的标定次数增加的问题,从而简化了三维重建过程,提高了三维重建效率。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的结构光和相机相对位姿可改变的三维重建方法的三维重建装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个三维重建装置实施例中的具体限定可以参见上文中对于结构光和相机相对位姿可改变的三维重建方法的限定,在此不再赘述。
在一个实施例中,图23为本申请一个实施例中结构光和相机相对位姿可改变的三维重建装置的结构示意图,本申请实施例提供的三维重建装置可以应用于上述三维重建设备中的控制器。如图23所示,本申请实施例的三维重建装置,可以包括:第一确定模块2301、第二确定模块2302和重建模块2303。
其中,第一确定模块2301,用于根据第一机械臂的第一末端位置、激光设备的激光平面相对于第一机械臂的第一初始位姿,确定激光平面在世界坐标系的第一位姿;
第二确定模块2302,用于根据第二机械臂的第二末端位置、相机设备相对于第二机械臂的第二初始位姿,确定相机设备在世界坐标系的第二位姿;
重建模块2303,用于根据相机设备拍摄的第一拍摄图像、第一位姿、第二位姿,对被测对象进行三维重建;第一拍摄图像为激光设备发射的激光照射到被测对象时所拍摄的图像,其中,激光设备发射的激光为结构光。
在一个实施例中,第一确定模块2301,包括:
第一确定单元,用于根据第一初始位姿确定激光平面在第一机械臂的第一末端坐标系的第一法向量,以及激光平面中的第一激光点在第一机械臂的第一末端坐标系的第一激光点位置;
第二确定单元,用于根据第一末端位置、第一法向量,以及第一激光点位置,得到激光平面在世界坐标系的第一位姿。
在一个实施例中,第二确定单元具体用于:
根据第一末端位置以及第一法向量,得到激光平面在世界坐标系的第二法向量;
根据第一末端位置以及第一激光点位置,得到第一激光点在世界坐标系的第二激光点位置;
根据第二法向量和第二激光点位置,得到第一位姿。
在一个实施例中,第一拍摄图像中的被测对象上包含有激光照射的第一激光区域,重建模块2303,包括:
第一重建单元,用于对于第一激光区域的各第一像素点,根据第一像素点在第一拍摄图像坐标系的第一像素点位置、第一位姿以及第二位姿,得到被测对象的被照射点在世界坐标系的位置,其中,被照射点为第一像素点对应的激光点照射到被测对象上的点;
第二重建单元,用于根据被测对象的各被照射点在世界坐标系的位置,得到被测对象对应的三维数据。
在一个实施例中,第一重建单元具体用于:
根据第一像素点位置,以及第二位姿,得到相机设备的中心穿过第一像素点的第一光线方程;
根据第一光线方程以及第一位姿,得到被测对象的被照射点在世界坐标系的位置。
在一个实施例中,第一重建单元具体用于:
根据第一像素点位置,以及相机设备的内参矩阵,得到第一像素点在相机设备坐标系的第二像素点位置;
根据第二像素点位置,以及第二位姿,得到第一像素点在世界坐标系的位置;
根据第一像素点在世界坐标系的位置以及第二位姿,得到第一光线方程。
在一个实施例中,装置还包括:
第三确定模块,用于根据第一机械臂的第三末端位置、第二机械臂的第四末端位置,以及相机设备拍摄的至少两个第二拍摄图像,得到激光平面相对于第一机械臂的第一初始位姿;其中,第二拍摄图像为激光设备发射的激光照射到第一标定板时所拍摄的图像,其中,不同第二拍摄图像中的第一标定板的位姿不同。
在一个实施例中,第二拍摄图像中的第一标定板上包含有激光照射的第二激光区域,第三确定模块,包括:
第一获取单元,用于对于各第二拍摄图像,获取第二拍摄图像中的第一标定板在相机设备坐标系的位姿,以及相机设备在第一标定板坐标系的位姿;
第二获取单元,用于对于第二拍摄图像的第二激光区域的任意第二像素点,根据第二像素点在第二拍摄图像坐标系的第三像素点位置,以及相机设备在第一标定板坐标系的位姿,得到相机设备的中心穿过第二像素点的第二光线方程;
第三获取单元,用于根据第二光线方程、第一标定板平面在第一标定板坐标系的平面方程,以及第一标定板在相机设备坐标系的位姿,得到第一标定板的被照射点在相机设备坐标系的位置,其中,被照射点为第二像素点对应的激光点照射到第一标定板上的点;
第四获取单元,用于根据第一标定板的被照射点在相机设备坐标系的位置、相机设备相对于第二机械臂的第二初始位姿,以及第四末端位置,得到第一标定板的被照射点在世界坐标系的位置;
拟合单元,用于根据各第一标定板的被照射点在世界坐标系的位置,拟合得到激光平面在世界坐标系的平面方程;
第五获取单元,用于根据平面方程以及第三末端位置,得到激光平面相对于第一机械臂的第一初始位姿。
在一个实施例中,第一获取单元具体用于:
对第二拍摄图像进行图像处理,得到第一标定板在相机设备坐标系的位姿;
对第一标定板在相机设备坐标系的位姿进行求逆处理,得到相机设备在第一标定板坐标系的位姿。
在一个实施例中,第二获取单元具体用于:
根据第二像素点在第二拍摄图像坐标系的第三像素点位置,以及相机设备的内参矩阵,得到第二像素点在相机设备坐标系的第四像素点位置;
根据第四像素点位置,以及相机设备在第一标定板坐标系的位姿,得到第二像素点在第一标定板坐标系的第五像素点位置;
根据第五像素点位置,以及相机设备在第一标定板坐标系的位姿,得到第二光线方程。
在一个实施例中,第三获取单元具体用于:
根据第二光线方程以及第一标定板平面在第一标定板坐标系的平面方程,得到第一标定板的被照射点在第一标定板坐标系的位置;
根据第一标定板的被照射点在第一标定板坐标系的位置,以及第一标定板在相机设备坐标系的位姿,得到第一标定板的被照射点在相机设备坐标系的位置。
在一个实施例中,第四获取单元具体用于:
根据第一标定板的被照射点在相机设备坐标系的位置,以及第二初始位姿,得到第一标定板的被照射点在第二机械臂的第二末端坐标系的位置;
根据第一标定板的被照射点在第二机械臂的第二末端坐标系的位置,以及第四末端位置,得到第一标定板的被照射点在世界坐标系的位置。
在一个实施例中,第五获取单元具体用于:
根据平面方程的第三法向量,以及第三末端位置,得到激光平面在第一机械臂的第一末端坐标系的平面方程所对应的第一法向量;
根据激光平面中的第二激光点在世界坐标系的第三激光点位置,以及第三末端位置,得到第二激光点在第一机械臂的第一末端坐标系的第四激光点位置;
根据第一法向量和第四激光点位置,得到激光平面相对于第一机械臂的第一初始位姿。
在一个实施例中,装置还包括:
第四确定模块,用于根据相机设备拍摄的多个第三拍摄图像、各第三拍摄图像对应的第一机械臂的第五末端位置,以及各第三拍摄图像对应的第二机械臂的第六末端位置,得到相机设备相对于第二机械臂的第二初始位姿;其中,第三拍摄图像为激光设备发射的激光照射到第二标定板时所拍摄的图像,其中,不同第三图像中的第二标定板的位姿不同。
本申请实施例提供的结构光和相机相对位姿可改变的三维重建装置可以用于执行本申请上述三维重建方法实施例中的技术方案,其实现原理和技术效果类似,此处不再赘述。
上述结构光和相机相对位姿可改变的三维重建装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于电子设备中的处理器中,也可以以软件形式存储于电子设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,图24为本申请一个实施例中电子设备的结构示意图,如图24所示,本申请实施例提供的电子设备可以包括通过系统总线连接的处理器、存储器和通信接口。其中,该电子设备的处理器用于提供计算和控制能力。该电子设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该电子设备的通信接口用于与外部的设备进行有线或无线方式的通信。该计算机程序被处理器执行时以实现本申请上述三维重建方法实施例中的技术方案,其实现原理和技术效果类似,此处不再赘述。
示例性地,该电子设备还可以包括显示屏和输入装置,该显示屏可以是液晶显示屏或者电子墨水显示屏,该输入装置可以是显示屏上覆盖的触摸层,也可以是电子设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图24中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的电子设备的限定,具体的电子设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种电子设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现本申请上述三维重建方法实施例中的技术方案,其实现原理和技术效果类似,此处不再赘述。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现本申请上述三维重建方法实施例中的技术方案,其实现原理和技术效果类似,此处不再赘述。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现本申请上述三维重建方法实施例中的技术方案,其实现原理和技术效果类似,此处不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (10)

1.一种结构光和相机相对位姿可改变的三维重建设备,其特征在于,所述三维重建设备包括:第一机械臂、第二机械臂和控制器,所述第一机械臂的第一末端固定有激光设备,所述第二机械臂的第二末端固定有相机设备,所述控制器分别与所述第一机械臂和所述第二机械臂连接;
所述控制器,用于根据所述第一机械臂的第一末端位置以及所述激光设备的激光平面相对于所述第一机械臂的第一初始位姿,确定所述激光平面在世界坐标系的第一位姿;
所述控制器,用于根据所述第二机械臂的第二末端位置以及所述相机设备相对于所述第二机械臂的第二初始位姿,确定所述相机设备在世界坐标系的第二位姿;
所述控制器,用于根据所述相机设备拍摄的第一拍摄图像、所述第一位姿以及所述第二位姿,对被测对象进行三维重建;所述第一拍摄图像为所述激光设备发射的激光照射到所述被测对象时所拍摄的图像,其中,所述激光设备发射的激光为结构光。
2.一种结构光和相机相对位姿可改变的三维重建方法,其特征在于,所述方法应用于如权利要求1所述的结构光和相机相对位姿可改变的三维重建设备,所述三维重建方法包括:
根据所述第一机械臂的第一末端位置以及所述激光设备的激光平面相对于所述第一机械臂的第一初始位姿,确定所述激光平面在世界坐标系的第一位姿;
根据所述第二机械臂的第二末端位置以及所述相机设备相对于所述第二机械臂的第二初始位姿,确定所述相机设备在世界坐标系的第二位姿;
根据所述相机设备拍摄的第一拍摄图像、所述第一位姿以及所述第二位姿,对被测对象进行三维重建;所述第一拍摄图像为所述激光设备发射的激光照射到所述被测对象时所拍摄的图像,其中,所述激光设备发射的激光为结构光。
3.根据权利要求2所述的方法,其特征在于,所述根据所述第一机械臂的第一末端位置以及所述激光设备的激光平面相对于所述第一机械臂的第一初始位姿,确定所述激光平面在世界坐标系的第一位姿,包括:
根据所述第一初始位姿确定所述激光平面在所述第一机械臂的第一末端坐标系的第一法向量,以及所述激光平面中的第一激光点在所述第一机械臂的第一末端坐标系的第一激光点位置;
根据所述第一末端位置、所述第一法向量,以及所述第一激光点位置,得到所述激光平面在世界坐标系的第一位姿。
4.根据权利要求3所述的方法,其特征在于,所述根据所述第一末端位置、所述第一法向量,以及所述第一激光点位置,得到所述激光平面在世界坐标系的第一位姿,包括:
根据所述第一末端位置以及所述第一法向量,得到所述激光平面在世界坐标系的第二法向量;
根据所述第一末端位置以及所述第一激光点位置,得到所述第一激光点在世界坐标系的第二激光点位置;
根据所述第二法向量和所述第二激光点位置,得到所述第一位姿。
5.根据权利要求2-4中任一项所述的方法,其特征在于,所述第一拍摄图像中的所述被测对象上包含有所述激光照射的第一激光区域,所述根据所述相机设备拍摄的第一拍摄图像、所述第一位姿以及所述第二位姿,对被测对象进行三维重建,包括:
对于所述第一激光区域的各第一像素点,根据所述第一像素点在第一拍摄图像坐标系的第一像素点位置、所述第一位姿以及所述第二位姿,得到所述被测对象的被照射点在世界坐标系的位置,其中,所述被照射点为所述第一像素点对应的激光点照射到所述被测对象上的点;
根据所述被测对象的各所述被照射点在世界坐标系的位置,得到所述被测对象对应的三维数据。
6.根据权利要求2-4中任一项所述的方法,其特征在于,所述方法还包括:
根据所述第一机械臂的第三末端位置、所述第二机械臂的第四末端位置,以及所述相机设备拍摄的至少两个第二拍摄图像,得到所述激光平面相对于所述第一机械臂的第一初始位姿;其中,所述第二拍摄图像为所述激光设备发射的激光照射到第一标定板时所拍摄的图像,其中,不同所述第二拍摄图像中的所述第一标定板的位姿不同。
7.一种结构光和相机相对位姿可改变的三维重建装置,其特征在于,所述装置应用于如权利要求1所述的结构光和相机相对位姿可改变的三维重建设备,所述装置包括:
第一确定模块,用于根据所述第一机械臂的第一末端位置、所述激光设备的激光平面相对于所述第一机械臂的第一初始位姿,确定所述激光平面在世界坐标系的第一位姿;
第二确定模块,用于根据所述第二机械臂的第二末端位置、所述相机设备相对于所述第二机械臂的第二初始位姿,确定所述相机设备在世界坐标系的第二位姿;
重建模块,用于根据所述相机设备拍摄的第一拍摄图像、所述第一位姿、所述第二位姿,对被测对象进行三维重建;所述第一拍摄图像为所述激光设备发射的激光照射到所述被测对象时所拍摄的图像,其中,所述激光设备发射的激光为结构光。
8.一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求2-6中任一项所述的方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求2-6中任一项所述的方法的步骤。
10.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求2-6中任一项所述的方法的步骤。
CN202211119990.1A 2022-09-15 2022-09-15 结构光和相机相对位姿可改变的三维重建方法和装置 Active CN115222826B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211119990.1A CN115222826B (zh) 2022-09-15 2022-09-15 结构光和相机相对位姿可改变的三维重建方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211119990.1A CN115222826B (zh) 2022-09-15 2022-09-15 结构光和相机相对位姿可改变的三维重建方法和装置

Publications (2)

Publication Number Publication Date
CN115222826A true CN115222826A (zh) 2022-10-21
CN115222826B CN115222826B (zh) 2022-12-27

Family

ID=83617277

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211119990.1A Active CN115222826B (zh) 2022-09-15 2022-09-15 结构光和相机相对位姿可改变的三维重建方法和装置

Country Status (1)

Country Link
CN (1) CN115222826B (zh)

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102794763A (zh) * 2012-08-31 2012-11-28 江南大学 基于线结构光视觉传感器引导的焊接机器人系统标定方法
CN104626206A (zh) * 2014-12-17 2015-05-20 西南科技大学 一种非结构环境下机器人作业的位姿信息测量方法
CN107578464A (zh) * 2017-06-30 2018-01-12 长沙湘计海盾科技有限公司 一种基于线激光扫描的传送带工件三维轮廓测量方法
CN109215108A (zh) * 2017-06-30 2019-01-15 深圳先进技术研究院 基于激光扫描的全景三维重建系统及方法
CN111345898A (zh) * 2020-03-18 2020-06-30 上海交通大学医学院附属第九人民医院 激光手术路径引导方法、及其计算机设备和系统
CN111505606A (zh) * 2020-04-14 2020-08-07 武汉大学 多相机与激光雷达系统相对位姿检校方法及装置
CN111965624A (zh) * 2020-08-06 2020-11-20 北京百度网讯科技有限公司 激光雷达与相机的标定方法、装置、设备和可读存储介质
CN112122840A (zh) * 2020-09-23 2020-12-25 西安知象光电科技有限公司 一种基于机器人焊接的视觉定位焊接系统及焊接方法
CN112581451A (zh) * 2020-12-21 2021-03-30 北京科技大学 一种基于激光雷达的仓库线卷位置检测系统及方法
CN112862904A (zh) * 2021-03-04 2021-05-28 天棣智能科技(广州)有限公司 基于机械臂的双目相机标定方法
US20210255328A1 (en) * 2019-08-02 2021-08-19 Arvind Sanjeev Methods and systems of a handheld spatially aware mixed-reality projection platform
CN114022414A (zh) * 2021-10-15 2022-02-08 北方工业大学 一种基于双目感知学习的加油加电智能动作的执行方法
CN114078163A (zh) * 2020-08-10 2022-02-22 中国科学院宁波材料技术与工程研究所 激光雷达与可见光相机的精确标定方法
CN114305688A (zh) * 2021-12-22 2022-04-12 杭州键嘉机器人有限公司 一种基于柔性法兰的髋关节置换手术导航定位方法
CN114378808A (zh) * 2020-10-22 2022-04-22 上海大界机器人科技有限公司 一种多目相机和线激光辅助机械臂跟踪目标的方法和装置
CN114820817A (zh) * 2022-05-07 2022-07-29 广州艾视维智能科技有限公司 基于高精度线激光3d相机的标定方法和三维重建方法

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102794763A (zh) * 2012-08-31 2012-11-28 江南大学 基于线结构光视觉传感器引导的焊接机器人系统标定方法
CN104626206A (zh) * 2014-12-17 2015-05-20 西南科技大学 一种非结构环境下机器人作业的位姿信息测量方法
CN107578464A (zh) * 2017-06-30 2018-01-12 长沙湘计海盾科技有限公司 一种基于线激光扫描的传送带工件三维轮廓测量方法
CN109215108A (zh) * 2017-06-30 2019-01-15 深圳先进技术研究院 基于激光扫描的全景三维重建系统及方法
US20210255328A1 (en) * 2019-08-02 2021-08-19 Arvind Sanjeev Methods and systems of a handheld spatially aware mixed-reality projection platform
CN111345898A (zh) * 2020-03-18 2020-06-30 上海交通大学医学院附属第九人民医院 激光手术路径引导方法、及其计算机设备和系统
CN111505606A (zh) * 2020-04-14 2020-08-07 武汉大学 多相机与激光雷达系统相对位姿检校方法及装置
CN111965624A (zh) * 2020-08-06 2020-11-20 北京百度网讯科技有限公司 激光雷达与相机的标定方法、装置、设备和可读存储介质
CN114078163A (zh) * 2020-08-10 2022-02-22 中国科学院宁波材料技术与工程研究所 激光雷达与可见光相机的精确标定方法
CN112122840A (zh) * 2020-09-23 2020-12-25 西安知象光电科技有限公司 一种基于机器人焊接的视觉定位焊接系统及焊接方法
CN114378808A (zh) * 2020-10-22 2022-04-22 上海大界机器人科技有限公司 一种多目相机和线激光辅助机械臂跟踪目标的方法和装置
CN112581451A (zh) * 2020-12-21 2021-03-30 北京科技大学 一种基于激光雷达的仓库线卷位置检测系统及方法
CN112862904A (zh) * 2021-03-04 2021-05-28 天棣智能科技(广州)有限公司 基于机械臂的双目相机标定方法
CN114022414A (zh) * 2021-10-15 2022-02-08 北方工业大学 一种基于双目感知学习的加油加电智能动作的执行方法
CN114305688A (zh) * 2021-12-22 2022-04-12 杭州键嘉机器人有限公司 一种基于柔性法兰的髋关节置换手术导航定位方法
CN114820817A (zh) * 2022-05-07 2022-07-29 广州艾视维智能科技有限公司 基于高精度线激光3d相机的标定方法和三维重建方法

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
BONE G M等: "Automated modeling and robotic grasping of unknown three-dimensional objects", 《2008 IEEE INTERNATIONAL CONFERENCE ON ROBOTICS AND AUTOMATION》 *
IDROBO-PIZO G A等: "A calibration method for a laser triangulation scanner mounted on a robot arm for surface mapping", 《SENSORS》 *
LIN W等: "Online quality monitoring in material extrusion additive manufacturing processes based on laser scanning technology", 《PRECISION ENGINEERING》 *
STEPANOVA K等: "Automatic self-contained calibration of an industrial dual-arm robot with cameras using self-contact, planar constraints, and self-observation", 《ROBOTICS AND COMPUTER-INTEGRATED MANUFACTURING》 *
崔云鹏等: "面向复杂动态场景的多无人机协同摄影", 《计算机辅助设计与图形学学报》 *
王艺诗: "三维激光雷达与光学相机融合的空间非合作目标相对位姿测量", 《中国优秀硕士学位论文全文数据库 工程科技Ⅱ辑》 *

Also Published As

Publication number Publication date
CN115222826B (zh) 2022-12-27

Similar Documents

Publication Publication Date Title
CN108369643B (zh) 用于3d手部骨架跟踪的方法和系统
CN111968235B (zh) 一种物体姿态估计方法、装置、系统和计算机设备
KR102002745B1 (ko) 비행 파라미터 측정 장치 및 비행 파라미터 측정 방법
CN101697233B (zh) 一种基于结构光的三维物体表面重建方法
US10810718B2 (en) Method and device for three-dimensional reconstruction
CN113601503B (zh) 手眼标定方法、装置、计算机设备和存储介质
Takimoto et al. 3D reconstruction and multiple point cloud registration using a low precision RGB-D sensor
JP2012128661A (ja) 情報処理装置、情報処理方法及びプログラム
ES2626301T3 (es) Procedimiento y equipo de procesamiento de imágenes para determinar los parámetros de una cámara
Vogiatzis et al. Self-calibrated, multi-spectral photometric stereo for 3D face capture
CN113689578A (zh) 一种人体数据集生成方法及装置
CN115375842A (zh) 一种植株三维重建方法、终端及存储介质
CN113614735A (zh) 稠密6-DoF姿态对象检测器
CN113223078A (zh) 标志点的匹配方法、装置、计算机设备和存储介质
CN109272572A (zh) 一种基于双Kinect相机的建模方法及装置
Li et al. A vision-based navigation system with markerless image registration and position-sensing localization for oral and maxillofacial surgery
Xiong et al. Automatic three-dimensional reconstruction based on four-view stereo vision using checkerboard pattern
JP6044052B2 (ja) 魚眼画像データ作成プログラム及びlai算出プログラム
CN115222826B (zh) 结构光和相机相对位姿可改变的三维重建方法和装置
JP6486083B2 (ja) 情報処理装置、情報処理方法及びプログラム
CN116402904A (zh) 一种基于激光雷达间和单目相机的联合标定方法
Huang et al. Line laser based researches on a three-dimensional measuring system
CN115049744A (zh) 机器人手眼坐标转换方法、装置、计算机设备和存储介质
JP2022128087A (ja) 計測システム及び計測プログラム
CN114511894A (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