CN116635894A - 用于管理摄像头系统的方法和装置 - Google Patents
用于管理摄像头系统的方法和装置 Download PDFInfo
- Publication number
- CN116635894A CN116635894A CN202080107709.5A CN202080107709A CN116635894A CN 116635894 A CN116635894 A CN 116635894A CN 202080107709 A CN202080107709 A CN 202080107709A CN 116635894 A CN116635894 A CN 116635894A
- Authority
- CN
- China
- Prior art keywords
- camera
- relative
- unit configured
- camera system
- obtaining
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 60
- 239000011159 matrix material Substances 0.000 claims description 24
- 230000009466 transformation Effects 0.000 claims description 14
- 238000012544 monitoring process Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 20
- 238000004519 manufacturing process Methods 0.000 description 14
- 238000012545 processing Methods 0.000 description 7
- 238000003860 storage Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000005520 cutting process Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000000853 adhesive Substances 0.000 description 1
- 230000001070 adhesive effect Effects 0.000 description 1
- 230000001364 causal effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000002994 raw material Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
Classifications
-
- 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
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Studio Devices (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
本公开的实施例提供了用于管理摄像头系统(160)的方法、装置、系统(100)和计算机可读介质。摄像头系统(160)至少包括第一摄像头(110)和第二摄像头(120)。在该方法中,用于第一对象和(310)第二对象(320)的第一位置和第二位置分别从第一摄像头(110)和第二摄像头(120)中获得。第一对象(310)和第二对象(320)用于校准摄像头系统。在第一对象(310)和第二对象(320)的移动之后,用于第一对象(310)和第二对象(320)的第三位置和第四位置分别从第一摄像头(110)和第二摄像头(120)获得。这里,第一对象(310)与第二对象(320)之间的相对对象位置在移动期间保持不变。基于第一位置、第二位置、第三位置和第四位置,在第一摄像头与第二摄像头之间的相对摄像头位置被确定。利用这些实施例,可以以精确和有效的方式利用分离的第一对象(310)和第二对象(320)来管理摄像头系统。
Description
技术领域
本公开的示例实施例总体上涉及摄像头管理,更具体地,涉及用于管理部署在机器人系统中的摄像头系统的方法、装置、系统和计算机可读介质。
背景技术
随着计算机和自动控制的发展,机器人系统在制造业中已经被广泛用于处理各种类型的对象。例如,工具可以配备在机器人系统的尖端用于切割、抓取和其它操作的。典型地,机器人系统可以具有多个机械臂,机械臂中的每一者可以通过相应的接头在臂的一端处旋转。摄像头系统可以部署在机器人系统中,用于监测机器人系统的操作。通常,单个摄像头的视野不能覆盖机器人系统的整个工作空间,因此在摄像头系统中提供多个摄像头以收集工作空间中各个区域的图像。此外,可以合并这些图像以监测机器人系统。在机器人系统的初始阶段,摄像头系统应当被校准,使得由这些摄像头收集的图像可以被适当地合并用于进一步处理。
已经提出了若干用于基于校准板来校准摄像头系统的解决方案。然而,随着工作空间的规模的增加,摄像头可以跨过广阔的区域分布。因此,校准板的尺寸也增加。应当理解,校准板需要以非常高的精度制造,并且即使精度中的微小误差也可能导致校准中的巨大偏差。然而,与小的校准板相比,对于巨大的校准板更难以确保高的制造精度。因此,期望提出一种用于校准摄像头系统的更有效的解决方案。
发明内容
本公开的示例实施例提供了用于管理摄像头系统的解决方案。
在第一方面,本公开的示例实施例提供了一种用于管理摄像头系统的方法,该摄像头系统至少包括第一摄像头和第二摄像头。这里,该方法包括:分别从第一摄像头和第二摄像头获得用于第一对象和第二对象的第一位置和第二位置,第一对象和第二对象被用于校准摄像头系统;在第一对象和第二对象的移动之后,分别从第一摄像头和第二摄像头获得用于第一对象和第二对象的第三位置和第四位置,第一对象和第二对象之间的相对对象位置在移动期间保持不变;以及基于第一位置、第二位置、第三位置和第四位置来确定第一摄像头和第二摄像头之间的相对摄像头位置。利用这些实施例,摄像头系统中的第一摄像头和第二摄像头可以由两个单独的校准对象来校准。两个对象可以具有高精度的小尺寸,并且唯一的要求是在两个对象之间的相对对象位置在移动期间保持不变。在这一点上,校准过程不需要覆盖所有摄像头的视野的巨大校准板,而是可以使用两个单独的校准对象来代替巨大的校准板,只要相对对象位置是固定的。与巨大的校准板相比,两个校准对象可以是小的并且具有高制造精度。因此,可以以更方便和有效的方式实施校准过程。
在一些实施例中,确定相对摄像头位置包括:基于第一对象和第二对象与第一摄像头和第二摄像头之间的几何关系生成与相对摄像头位置、第一位置、第二位置、第三位置和第四位置相关联的方程式;以及通过求解方程式来确定相对摄像头位置。由于第一位置、第二位置、第三位置和第四位置容易被检测,因此可以将用于确定相对摄像头位置的问题转换为求解该方程式的问题。与通过巨大的物理校准板来校准摄像头系统相比,具有高精度的两个小校准对象提供了基于数学运算的更有效的校准方式。
在一些实施例中,求解该方程式包括:通过包括多个未知参数的变换矩阵表示相对摄像头位置;基于方程式生成包括多个未知参数的方程式组;以及通过求解方程式组来确定多个未知参数。利用这些实施例,相对摄像头位置可以通过包括十二个未知参数的RT变换矩阵来表示。此外,基于矩阵乘法的数学关系,一个方程式可以扩展到与十二个未知参数相关联的方程式组。此外,可以基于数学运算容易地确定十二个未知参数,从而可以获得相对摄像头位置。
在一些实施例中,第一对象和第二对象使用固定连接来连接,使得相对对象位置在移动期间保持不变。在这些实施例中,第一对象和第二对象可以是各种形状,只要这些对象中的特征点可以反映对象的自由度(DOF)。利用这些实施例,第一对象和第二对象可以用各种类型的连接来连接,只要第一对象和第二对象可以一起移动并且它们的相对对象位置保持不变。与制造具有高精度的巨大校准板相比,用固定连接方式连接两个单独的对象简单方便得多。
在一些实施例中,第一对象被放置在第一摄像头的第一视野内,并且第二对象被放置在第二摄像头的第二视野内。这里,本公开的实施例不需要巨大的校准对象来覆盖所有摄像头的视野。相反,本公开的校准对象可以是小尺寸的,从而可以以更容易的方式确保校准对象的制造精度。
在一些实施方案中,获得第一位置包括:从第一摄像头获得用于第一对象的第一图像;以及从第一图像确定第一位置,第一位置表示第一对象与第一摄像头之间的相对位置。如今,各种类型的摄像头能够提供距离测量。例如,一些摄像头配备有可以直接检测对象的位置的激光设备。在另一示例中,可基于处理对象的图像来计算对象的位置。利用这些实施例,可以以有效和方便的方式收集用于确定相对摄像头位置的所有输入。
在一些实施例中,摄像头系统还包括一个第三摄像头,并且该方法还包括:从第三摄像头获得用于第三对象的第五位置,第三对象用于校准摄像头系统;在第三对象与第一对象和第二对象一起移动之后,从第三摄像头获得用于第三对象的第六位置,第三对象与第一对象和第二对象中的任一个对象之间的相对对象位置在移动期间保持不变;以及基于第一位置、第五位置、第三位置和第六位置来确定第一摄像头和第三摄像头之间的相对摄像头位置。上述实施例可以容易地扩展用于管理多个摄像头。具体地,基于要校准的摄像头的数目可以确定校准对象的数目。通过将第三对象连接到第一对象或第二对象并将这些对象一起移动,可以以简单有效的方式校准所有三个摄像头。因此,可以将更多的摄像头添加到摄像头系统中,并且可以以容易且有效的方式用其它现有摄像头来校准所添加的摄像头。
在一些实施例中,方法还包括:基于相对摄像头位置来校准摄像头系统。由于小校准对象可以容易地以高精度来制造,因此高制造精度可以确保相对摄像头位置的高精度。因此,可以基于精确的相对摄像头位置来校准第一摄像头和第二摄像头。
在一些实施例中,摄像头系统被部署在机器人系统中,并且该方法还包括:基于经校准的摄像头系统来监测机器人系统的操作。机器人系统可以包括以高速移动的多个机器人臂。为了增加这些机器人臂的移动的精度,可以在机器人系统中部署更多的摄像头。例如,可以在远离其他摄像头的位置部署新的摄像头。此时,可以通过将新对象添加到现有对象来校准整个摄像头系统,进而可以相应地提高机器人系统的精度。
在第二方面,本公开的示范性实施例提供了用于管理摄像头系统的装置,该摄像头系统至少包括第一摄像头和第二摄像头,该装置包括:第一获得单元,被配置为分别从第一摄像头和第二摄像头获得用于第一对象和第二对象的第一位置和第二位置,第一对象和第二对象用于校准摄像头系统;第二获得单元,被配置为在第一对象和第二对象的移动之后,分别从第一摄像头和第二摄像头获得用于第一对象和第二对象的第三位置和第四位置,第一对象和第二对象之间的相对对象位置在移动期间保持不变;以及确定单元,被配置为基于第一位置、第二位置、第三位置和第四位置来确定第一摄像头和第二摄像头之间的相对摄像头位置。
在一些实施例中,确定单元包括:生成单元,被配置为基于第一对象和第二对象与第一摄像头和第二摄像头之间的几何关系来生成与相对摄像头位置、第一位置、第二位置、第三位置和第四位置相关联的方程式;以及求解单元,被配置为通过求解方程式来确定相对摄像头位置。
在一些实施例中,求解单元包括:表示单元,被配置为通过包括多个未知参数的变换矩阵来表示相对摄像头位置;以及方程式生成单元,被配置为基于方程式生成包括多个未知参数的方程式组;以及参数确定单元,被配置为通过求解方程式组来确定多个未知参数。
在一些实施例中,第一对象和第二对象用固定连接来连接,使得相对对象位置在移动期间保持不变。
在一些实施例中,第一对象被放置在第一摄像头的第一视野内,而第二对象被放置在第二摄像头的第二视野内。
在一些实施方式中,第一获得单元包括:图像获得单元,被配置为从第一摄像头获得用于第一对象的第一图像;以及位置确定单元,被配置为从第一图像确定第一位置,第一位置表示第一对象与第一摄像头之间的相对位置。
在一些实施例中,该摄像头系统还包括第三摄像头,并且第一获得单元还被配置成从第三摄像头获得用于第三对象的第五位置,第三对象用于校准摄像头系统;第二获得单元还被配置为在第三对象与第一对象一起移动之后,从第三摄像头获得用于第三对象的第六位置,第三对象与第一对象和第二对象中的任一个对象之间的相对对象位置在移动期间保持不变;以及确定单元还被配置为基于第一位置、第五位置、第三位置和第六位置来确定第一摄像头和第三摄像头之间的相对摄像头位置。
在一些实施例中,装置还包括:校准单元,被配置为基于相对摄像头位置校准摄像头系统。
在一些实施例中,摄像头系统被部署在机器人系统中并且装置还包括:监测单元,被配置为基于经校准的摄像头系统来监测机器人系统的操作。
在第三方面,本公开的示例实施例提供了用于管理摄像头系统的系统。系统包括:耦合到计算机可读存储器单元的计算机处理器,存储器单元包括当由计算机处理器执行时实现用于管理摄像头系统的方法的指令。
在第四方面中,本发明的示范性实施例提供了其上存储有指令的计算机可读媒体,指令在至少一个处理器上执行时导致至少一个处理器执行用于管理摄像头系统的方法。
附图说明
图1示出了其中可以实施本公开的实施例的用于机器人系统的示意图;
图2示出了用于基于校准板校准摄像头系统的过程的示意图;
图3示出了根据本公开的实施例的用于管理摄像头系统的过程的示意图;
图4示出了根据本公开的实施例的用于管理摄像头系统的方法的示意图;
图5示出了根据本公开的实施例的在第一对象、第二对象、第一摄像头和第二摄像头之间的几何关系的示意图;
图6示出了根据本公开的实施例的第一对象和第二对象与第一摄像头和第二摄像头之间的几何关系的示意图;
图7示出了根据本公开的实施例的用于校准摄像头系统的过程的示意图;
图8示出了根据本公开的实施例的用于校准摄像头系统的装置的示意图;以及
图9示出了根据本公开的实施例的用于校准摄像头系统的系统的示意图。
在整个附图中,相同或相似的附图标记用于表示相同或相似的元件。
具体实施方式
现在将参考附图中示出的几个示例实施例来描述本公开的原理。尽管在附图中示出了本公开的示例实施例,但是应当理解,描述这些实施例仅是为了便于本领域技术人员更好地理解并由此实现本公开,而不是以任何方式限制本公开的范围。
为了描述的目的,将参考图1来提供本公开的环境的一般描述。图1示出了其中可以实施本公开的实施例的机器人系统100的示意图。在图1中,机器人系统100可以包括用于监测机器人系统100的操作的摄像头系统160。如图所示,摄像头系统可以包括用于收集目标对象150的图像的第一摄像头110和第二摄像头120。机器人系统100可以包括至少一个臂140、142…和144。
端臂144的尖端可配备有用于处理目标对象150(诸如待由机器人系统100塑形的原材料)的工具130。这里,工具可以包括例如用于将目标对象150塑形为期望形状的切割工具。在机器人系统100的正常操作之前,摄像头系统应当首先被校准,使得由第一摄像头110和第二摄像头120收集的图像可以被合并用于进一步处理。
已经提出了用于校准机器人系统的摄像头系统的解决方案。在一些解决方案中,校准板用于校准,并且将参考图2来简要描述校准过程。图2示出了用于基于校准板校准摄像头系统的过程的示意图200。在图2中,校准板210朝向第一摄像头110和第二摄像头120放置。这里,校准板210可以包括可以识别用于校准摄像头系统的各种DOF的多个特征。例如,特征212可以包括立方体、长方体或其它形状。尽管校准板210是三维的,但是校准板210可以是二维形状,诸如棋盘。
通常,基于第一摄像头110和第二摄像头120之间的距离来选择校准板210。距离越远,校准板210的尺寸就越大。如果第一摄像头110和第二摄像头120彼此远离,则应该选择巨大的校准板用于校准过程。然而,校准板需要高制造精度,并且校准板越大,制造越困难。因此,难以制造巨大的校准板,并且难以确保巨大的校准板的制造精度。此外,机器人系统100可以包括具有不同摄像头距离的多个摄像头系统,因此应当准备具有不同尺寸的多个校准板。
为了至少部分地解决上述和其他潜在问题,根据本公开的实施例提供了用于管理摄像头系统的新方法。通常,根据本公开的实施例,为校准过程提供多个校准对象。将参照图3来简要描述本发明。图3示出了根据本公开的实施例的用于管理摄像头系统的过程的示意图300。在图3中,第一对象310和第二对象320分别部署在第一摄像头110和第二摄像头120的视野内。这里,第一对象310和第二对象320可以是小形状的单独的对象,并且这两个单独的对象可以经由固定连接330连接。为了校准第一摄像头110和第二摄像头120,应该首先确定相对摄像头位置。
在图3中,可以在第一对象310和第二对象320移动之前和之后确定第一对象310和第二对象320的位置。例如,第一对象310和第二对象320可以在移动之前被放置在位置340中,并且可以分别从第一摄像头和第二摄像头为第一对象和第二对象确定第一位置和第二位置。然后,第一对象310和第二对象320可以移动到位置350。在移动期间,第一对象310和第二对象320之间的相对对象位置保持不变。用于第一对象310和第二对象320的第三位置和第四位置可以分别从第一摄像头110和第二摄像头120确定。此外,可以基于第一位置、第二位置、第三位置和第四位置来确定相对摄像头位置。
利用这些实施例,可以通过两个单独的校准对象来确定相对摄像头位置。因此,校准过程不需要覆盖所有摄像头的视野的巨大校准板。相反,两个校准对象可以以任何方式连接,只要它们的相对位置是固定的。与巨大的校准板相比,第一对象310和第二对象320的尺寸可以较小,并具有较高的制造精度。因此,可以以更方便和有效的方式实施相对摄像头位置。
关于本公开的更多细节将参考图4。图4示出了根据本公开的实施例的用于校准摄像头系统的方法的示意图400。在框410,分别从第一摄像头110和第二摄像头120获得用于第一对象310和第二对象320的第一位置和第二位置。这里,第一对象310和第二对象320用于校准摄像头系统。在下文中,获得第一位置和第二位置的更多细节将参考图5。
图5示出了根据本公开的实施例的在第一对象310、第二对象320、第一摄像头110和第二摄像头120之间的几何关系的示意图500。在图5中,第一对象310可以被放置在第一摄像头110的第一视野内,并且第二对象320可以被放置在第二摄像头120的第二视野内。这里,本公开的实施例不需要一个单独的校准对象来覆盖所有摄像头的视野。换句话说,一个摄像头仅需要捕获一个对象,因此第一对象310和第二对象320都可以相对较小,从而可以容易地确保两个校准对象的制造精度。在这些实施例中,第一对象和第二对象可以是各种形状,只要在这些对象中的特征点可以反映对象的DOF的多个方面。
虽然上述段落描述了第一对象310被放置在第一摄像头110的视野中,但是它不排除第二对象320的部分或全部也在第一摄像头110的视野内的情况。因此,可以以因果方式选择第一对象310和第二对象320的大小。例如,第一对象310和第二对象320可以具有相同的尺寸、不同的尺寸、相同的形状或不同的形状。在这些实施例中,唯一的要求是第一对象310和第二对象320以固定的方式连接,使得两个对象一起移动,并且它们之间的相对对象位置在移动期间保持不变。
如图5所示,最初,可以将第一对象310和第二对象320放置在位置340中,然后可以获得第一对象310的第一位置510(由表示),并且可以获得第二对象320的第二位置520(由/>表示)。这里,用于获得第一位置510和第二位置520的步骤是类似的,并且下面的段落将描述如何获得第一位置510。在一些实施例中,可由第一摄像头110为第一对象310收集第一图像,且第一位置510表示第一对象310与第一摄像头110之间的相对位置。
如今,各种类型的摄像头具有用于距离测量的功能。例如,一些摄像头配备有可以直接检测对象位置的激光设备。具体地,激光束可以从摄像头中的收发器发射到对象,然后可以基于激光束发射的时间点和反射光束返回到收发器的时间点来确定对象的位置。在另一示例中,对于不具有激光设备的一些摄像头,可基于处理对象的图像来计算对象的位置。例如,可以从图像中标识特征(例如立方体对象中的角)的像素,然后可以确定对象的位置。利用这些实施例,可以以有效和方便的方式收集第一对象310和第二对象320的位置。已经描述了第一位置510的确定,可以以类似的方式确定其他位置。例如,可以从由第二摄像头120捕获的第二对象320的图像确定第二位置520。
回到图4,在获得第一位置510和第二位置520之后,第一对象310和第二对象320可以移动到位置350。这里,第一对象310和第二对象320用固定连接来连接,使得相对对象位置在移动期间保持不变。可以使用各种方法来连接第一对象310和第二对象320。在一些实施例中,第一对象310和第二对象320可以用诸如杆、销、螺栓等的刚性连接件330连接。在一些实施例中,第一对象310和第二对象320可以用粘合剂等黏合在一起。备选地和/或附加地,第一对象310和第二对象320可以固定到确保在两个对象之间的相对对象位置在移动期间保持不变的刚性框架。
利用这些实施例,第一对象310和第二对象320可以用各种类型的连接来连接,只要两个对象可以一起移动并且相对对象位置保持不变。与制作精度高的巨大校准板相比,用固定连接来连接两个单独的对象简单方便得多。
在图4的框420,在第一对象310和第二对象320移动之后,分别从第一摄像头110和第二摄像头120获得用于第一对象310和第二对象320的第三位置530和第四位置540。在这些实施例中,要求第一对象310和第二对象320在移动之后应当在第一摄像头110和第二摄像头120的视野内,使得两个摄像头仍然可以为两个对象分别捕获图像。再次参考图5,可以从由第一摄像头110捕获的图像获得第三位置530(由表示),并且可以从由第二摄像头130捕获的图像获得第四位置540(由/>表示)。这里,第三位置530表示移动之后在第一对象310和第一摄像头110之间的相对位置,第四位置540表示移动之后在第二对象320和第二摄像头120之间的相对位置。
返回参考图4中的框430,基于第一位置(510)、第二位置(520)、第三位置(530)和第四位置(540)来确定第一摄像头110和第二摄像头120之间的相对摄像头位置。这里,在第一对象310和第二对象320与第一摄像头110和第二摄像头120之间存在几何关系。进一步的细节将参考图6。
图6示出了根据本公开的实施例的在第一对象310和第二对象320与第一摄像头110和第二摄像头120之间的几何关系600的示意图。在图6中,摄像头位置610和摄像头位置612表示第一摄像头110和第二摄像头120在世界坐标系中的位置,而对象位置620和对象位置622表示第一对象310和第二对象320在世界坐标系中的位置。表示第二摄像头120和第一摄像头110之间的相对摄像头位置的变换矩阵,并且/>表示第二对象320和第一对象310之间的相对对象位置的变换矩阵。基于上述位置610至640之间的箭头,可以确定以下方程式1:
其中表示第一对象310和第一摄像头110之间的相对位置,/>表示第二摄像头120和第一摄像头110之间的相对摄像头位置的变换矩阵,/>表示第二对象320和第二摄像头120之间的相对位置,以及/>表示第二对象320和第一对象310之间的相对对象位置的变换矩阵。
应当理解,上述方程式1可以总是在第一对象310和第二对象320的移动期间起作用。因此,在第一对象和第二对象与第一摄像头和第二摄像头之间的上述几何关系可用于生成与相对摄像头位置、第一位置(510)、第二位置(520)、第三位置(530)和第四位置(540)相关联的方程式。具体地,对于在移动之后获得的那些位置,可以获得另一个方程式2。
其中表示移动之后在第一对象310和第一摄像头110之间的相对位置,表示第二摄像头120和第一摄像头110之间的相对摄像头位置的变换矩阵,/>表示移动之后在第二对象320和第二摄像头120之间的相对位置,以及/>表示第二对象320和第一对象310之间的相对对象位置的变换矩阵。
应当注意,第一摄像头110和第二摄像头120的位置不变,因此在方程式1和2中的相对摄像头位置具有相同的值。此外,第一对象310和第二对象320一起移动,因此在方程式1和2中的相对对象位置/>具有相同的值。因此,方程式1和2的右侧具有相同的值,因此这两个方程式可以组合成以下方程式3。
方程式3中的符号具有与上述方程式1和2中相同的含义。在方程式3中,和/>具有已知值(即,如图5中确定的第一位置、第二位置、第三位置和第四位置510至540),而/>未知。在这些实施例中,容易检测到上述位置510至540,并且因此对于确定相对摄像头位置的问题可以转换为求解方程式3的问题。与通过具有更高的精度的巨大的物理校准板校准摄像头系统相比,可以基于数学运算以更有效的方式通过多个小校准对象来校准摄像头系统。
在一些实施例中,方程式3中的符号可以以RT矩阵的形式给予,其中R给予3*3旋转矩阵,并且T给予3*1列向量。由于在方程式3中/>和/>具有已知的值,所以RT矩阵中的参数对于/>和/>是已知的。关于唯一的未知值/>可以通过包括十二个未知参数的RT矩阵/>来给予,其中R可以通过/>来给予,T可以通过/>来给予。因此,未知的相对摄像头位置/>可以表示为包括十二个未知参数:r11、r13、r13、r21、r22、r23、r31、r32、r33、t1,、t2和t3的如下变换矩阵:
此外,基于方程式3和4,可以确定以下方程式5:
通过将方程式5中的右侧移动到左侧,方程式5可以转换为方程
式6:
在方程式6中,和/>中的每一个可以由具有16(4*4)个已知参数的单独的RT矩阵来表示。此外,基于矩阵乘法的数学定义,上述方程式6可以扩展到包括多个未知参数的方程式组。具体地,方程式组中的每一个可以与十二个未知参数r11、r12、r13、r21、r22、r23、r31、r32、r33、t1,、t2和t3中的一些相关联。由于RT矩阵是包括十六个参数的4*4矩阵的形式,所以在上述方程式6两侧的相同位置处的参数应当具有相同的值。因此,与十二个未知参数相关联的十六个方程式可以表示如下:
接下来,可以通过求解上述方程式组1来确定多个未知参数。这里,上述方程式组1可以通过常规数学运算求解,并且细节将在下文中省略。利用这些实施例,相对摄像头位置可以由包括十二个未知参数的RT变换矩阵来表示。此外,基于矩阵乘法的数学关系,一个方程式可以被转换成与十二个未知参数相关联的方程式组。此外,基于数学运算可以容易地确定十二个未知参数。
利用上述方法300,工程师仅需要将两个对象朝向两个摄像头放置并收集两个图像。此外,工程师可以移动两个对象,然后再收集两个图像。基于移动之前和之后的四个图像,可以有效地确定相对摄像头位置。
尽管在上述实施例中第一对象310和第二对象320仅移动一次,但是在本公开的其他实施例中,这两个对象可以移动若干次,然后可以获得多个相对摄像头位置。此外,多个相对摄像头位置可用于计算实际相对摄像头位置。例如,可以为多个相对摄像头位置确定平均值,并且因此可以以更可靠的方式确定相对摄像头位置。
在一些实施例中,可以基于相对摄像头位置来校准第一摄像头110和第二摄像头120。由于容易以更高的精度制造小的校准对象,因此高制造精度可能导致精确的相对摄像头位置。因此,可以基于精确的相对摄像头位置来校准第一摄像头和第二摄像头。
尽管以上段落描述了用于校准包括两个摄像头的摄像头系统的方法,但是在一些实施例中,摄像头系统可以包括更多的摄像头。在下文中,将参考图7进行进一步的描述。图7示出了根据本公开的实施例的用于校准摄像头系统的过程700的示意图。如图7所示,除了第一摄像头110和第二摄像头120之外,摄像头系统还可以包括第三摄像头710。为了校准摄像头系统,可以将第三对象720朝向第三摄像头710放置。这里,第三对象720可以连接到第一对象310和第二对象320中的任何一个对象,只要三个对象310、320和720可以一起移动,并且它们之间的相对对象位置在移动期间保持不变。
在一些实施例中,上述方法300可以被实施到多个摄像头中的任何两个摄像头。例如,可以对第一摄像头110和第三摄像头710实施方法300。此时,可以从第三摄像头710为第三对象720获得第五位置。在第三对象710与第一对象310一起移动之后,可以从第三摄像头获得第三对象720的第六位置。这里,在第三对象720与第一对象310和第二对象320中的任何一个之间的相对对象位置在移动期间保持不变。此外,可以基于第一位置、第五位置、第三位置和第六位置来确定第一摄像头110和第三摄像头710之间的相对摄像头位置。
在一些实施例中,上述方法300可以对所有的多个摄像头实施。如图7所示,可以将三个对象放置在位置740中,并且可以分别从三个摄像头为三个对象确定三个对象位置。此外,可以将三个对象移动到位置750,然后可以分别从三个摄像头为三个对象确定其它三个对象位置。基于六个对象位置,可以确定三个摄像头110、120和710之间的相对摄像头位置。
上述实施例可以容易地扩展用于管理多个摄像头。具体地,可以基于要校准的摄像头的数目来确定校准对象的数目。通过将第三对象连接到第一对象或第二对象并将这些对象一起移动,可以以简单有效的方式校准所有三个摄像头。通过这些方式,当更多的摄像头被添加到摄像头系统中时,更多的对象可用于校准摄像头系统。
在一些实施例中,摄像头系统可以部署在机器人系统中,用于监测机器人系统的操作。机器人系统可以包括多个高速移动的机器人臂。为了增加这些机器人臂的移动精度,可以在机器人系统中部署更多的摄像头。例如,可以在远离其他摄像头的位置部署新的摄像头。此时,新对象可与现有对象连接,然后可校准所有摄像头。
在一些实施例中,方法300可以在机器人系统的控制器中实施。备选地和/或附加地,方法300可以在任何计算设备中实施。只要第一位置、第二位置、第三位置和第四位置510至540被输入到计算设备中,可以输出相对摄像头位置用于校准摄像头系统。
前面的段落已经描述了方法300的详细步骤,在本公开的一些实施例中,方法300可以由用于管理摄像头系统的装置800来实施。图8示出了根据本公开的实施例的用于管理摄像头系统的装置800的示意图。这里,摄像头系统至少包括第一摄像头和第二摄像头。如图8所示,装置800可以包括:第一获得单元810,被配置为分别从第一摄像头和第二摄像头获得用于第一对象和第二对象的第一位置和第二位置,第一对象和第二对象用于校准摄像头系统;第二获得单元820,被配置为在第一对象和第二对象移动之后,分别从第一摄像头和第二摄像头获得用于第一对象和第二对象的第三位置和第四位置,第一对象和第二对象之间的相对对象位置在移动期间保持不变;以及确定单元830,被配置为基于第一位置、第二位置、第三位置和第四位置来确定第一摄像头和第二摄像头之间的相对摄像头位置。
在一些实施例中,确定单元830包括:生成单元,被配置为基于第一对象和第二对象与第一摄像头和第二摄像头之间的几何关系来生成与相对摄像头位置、第一位置、第二位置、第三位置和第四位置相关联的方程式;以及求解单元,被配置为通过求解方程式来确定相对摄像头位置。
在一些实施例中,求解单元包括:表示单元,被配置为通过包括多个未知参数的变换矩阵来表示相对摄像头位置;以及方程式生成单元,被配置为基于方程式生成包括多个未知参数的方程式组;以及参数确定单元,被配置为通过求解方程式组来确定多个未知参数。
在一些实施例中,第一对象和第二对象用固定连接来连接,使得相对对象位置在移动期间保持不变。
在一些实施例中,第一对象被放置在第一摄像头的第一视野内,而第二对象被放置在第二摄像头的第二视野内。
在一些实施方式中,第一获得单元810包括:图像获得单元,被配置为从第一摄像头获得用于第一对象的第一图像;以及位置确定单元,被配置为从第一图像确定第一位置,第一位置表示第一对象与第一摄像头之间的相对位置。
在一些实施例中,摄像头系统还包括第三摄像头,并且第一获得单元810还被配置为从第三摄像头获得用于第三对象的第五位置,第三对象用于校准摄像头系统;第二获得单元820还被配置为在第三对象与第一对象一起移动之后,从第三摄像头获得用于第三对象的第六位置,第三对象与第一对象和第二对象中的任何一个之间的相对对象位置在移动期间保持不变;并且确定单元830还被配置为基于第一位置、第五位置、第三位置和位置第六位置来确定第一摄像头和第三摄像头之间的相对摄像头位置。
在一些实施例中,装置800还包括:校准单元,被配置为基于相对摄像头位置校准摄像头系统。
在一些实施例中,摄像头系统被部署在机器人系统中并且装置800还包括:监测单元,被配置为基于经校准的摄像头系统来监测机器人系统的操作。
在本公开的一些实施例中,提供了用于管理摄像头系统的系统900。图9示出了根据本公开的实施例的用于管理摄像头系统的系统900的示意图。如图9所示,系统900可以包括耦合到计算机可读存储器单元920的计算机处理器910,并且存储器单元920包括指令922。当由计算机处理器910执行时,指令922可以实施如前述段落中描述的用于管理摄像头系统的方法,并且细节将在下文中省略。
在本公开的一些实施例中,提供了用于管理摄像头系统的计算机可读介质。计算机可读介质上存储有指令,并且当在至少一个处理器上执行时,指令可导致至少一个处理器执行如前述段落中描述的用于管理摄像头系统的方法,并且细节将在下文中省略。
通常,本公开的各种实施例可以在硬件或专用电路、软件、逻辑或其任何组合中实施。一些方面可以用硬件来实施,而其他方面可以用固件或软件来实施,这些固件或软件可以由控制器、微处理器或其他计算设备来执行。虽然本公开的实施例的各方面被示出并描述为框图、流程图或使用一些其它图形表示,但将理解,本文描述的框、装置、系统、技术或方法可作为非限制性示例在硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其它计算设备或其一些组合中实施。
本公开还提供了有形地存储在非瞬态计算机可读存储介质上的至少一种计算机程序产品。计算机程序产品包括在目标真实或虚拟处理器上的设备中执行的诸如包括在程序模块中的那些计算机可执行指令,以执行如上参考图3的过程或方法。一般而言,程序模块包括执行特定任务或实施特定抽象数据类型的例程、程序、库、对象、类、部件、数据结构等。程序模块的功能可在各实施例中理想地在程序模块之间组合或分开。用于程序模块的机器可执行指令可在本地或分布式设备内执行。在分布式设备中,程序模块可位于本地和远程存储介质中。
用于执行本公开的方法的程序代码可以用一种或多种编程语言的任意组合来编写。这些程序代码可以被提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器或控制器,使得程序代码在被处理器或控制器执行时使得流程图和/或框图中指定的功能/操作被实施。程序代码可以作为独立软件包完全在机器上、部分在机器上、部分在机器上而部分在远程机器上或完全在远程机器或服务器上执行。
上述程序代码可以在机器可读介质上实施,该机器可读介质可以是可以包括或存储由指令执行系统、装置或设备使用或结合指令执行系统、装置或设备使用的程序的任何有形介质。机器可读介质可以是机器可读信号介质或机器可读存储介质。机器可读介质可以包括但不限于电子的、磁的、光的、电磁的、红外的或半导体的系统、装置或设备,或前述的任何合适的组合。机器可读存储介质的更具体的示例将包括具有一条或多条导线的电气连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、光纤、便携式光盘只读存储器(CD-ROM)、光存储设备、磁存储设备或前述的任何合适的组合。
此外,虽然以特定顺序描述了操作,但是这不应被理解为要求以所示的特定顺序或按顺序执行这些操作,或者执行所有示出的操作,以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。同样地,虽然在上述讨论中包含了若干特定实施细节,但是这些细节不应当被解释为对本公开的范围的限制,而应当被解释为对特定实施例所特有的特征的描述。在单独实施例的上下文中描述的某些特征也可以在单个实施例中组合实施。另一方面,在单个实施例的上下文中描述的各种特征也可以在多个实施例中单独地或以任何合适的子组合来实施。
虽然已经用结构特征和/或方法动作专用的语言描述了本主题,但是应当理解,所附权利要求中定义的主题不必限制于上述具体特征或动作。相反,上述具体特征和动作是作为实施权利要求的示例形式而公开的。
Claims (20)
1.一种用于管理摄像头系统的方法,所述摄像头系统至少包括第一摄像头和第二摄像头,所述方法包括:
分别从所述第一摄像头和所述第二摄像头获得用于第一对象和第二对象的第一位置和第二位置,所述第一对象和所述第二对象用于校准所述摄像头系统;
在所述第一对象和所述第二对象移动之后,分别从所述第一摄像头和所述第二摄像头获得用于所述第一对象和所述第二对象的第三位置和第四位置,所述第一对象与所述第二对象之间的相对对象位置在所述移动期间保持不变;以及
基于所述第一位置、所述第二位置、所述第三位置和所述第四位置,来确定所述第一摄像头与所述第二摄像头之间的相对摄像头位置。
2.根据权利要求1所述的方法,其中确定所述相对摄像头位置包括:
基于所述第一对象和所述第二对象与所述第一摄像头和所述第二摄像头之间的几何关系,来生成与所述相对摄像头位置、所述第一位置、所述第二位置、所述第三位置和所述第四位置相关联的方程式;以及
通过求解所述方程式来确定所述相对摄像头位置。
3.根据权利要求2所述的方法,其中求解所述方程式包括:
通过包括多个未知参数的变换矩阵表示所述相对摄像头位置;
基于所述方程式来生成包括所述多个未知参数的方程式组;以及
通过求解所述方程式组来确定所述多个未知参数。
4.根据权利要求1所述的方法,其中所述第一对象和所述第二对象利用固定连接来连接,使得所述相对对象位置在所述移动期间保持不变。
5.根据权利要求1所述的方法,其中所述第一对象被放置在所述第一摄像头的第一视野内,并且所述第二对象被放置在所述第二摄像头的第二视野内。
6.根据权利要求1所述的方法,其中获得所述第一位置包括:
从所述第一摄像头获得用于所述第一对象的第一图像;以及
从所述第一图像确定所述第一位置,所述第一位置表示所述第一对象与所述第一摄像头之间的相对位置。
7.根据权利要求1所述的方法,其中所述摄像头系统还包括第三摄像头,并且所述方法还包括:
从所述第三摄像头获得用于第三对象的第五位置,所述第三对象用于校准所述摄像头系统;
在所述第三对象与所述第一对象和所述第二对象一起移动之后,从所述第三摄像头获得用于所述第三对象的第六位置,第三对象与所述第一对象和所述第二对象中的任一对象之间的相对对象位置在所述移动期间保持不变;以及
基于所述第一位置、所述第五位置、所述第三位置和所述第六位置,来确定所述第一摄像头与所述第三摄像头之间的相对摄像头位置。
8.根据权利要求1所述的方法,还包括:基于所述相对摄像头位置来校准所述摄像头系统。
9.根据权利要求8所述的方法,其中所述摄像头系统被部署在机器人系统中,并且所述方法还包括:基于所校准的摄像头系统来监测所述机器人系统的操作。
10.一种用于管理摄像头系统的装置,所述摄像头系统至少包括第一摄像头和第二摄像头,所述装置包括:
第一获得单元,被配置为分别从所述第一摄像头和所述第二摄像头获得用于第一对象和第二对象的第一位置和第二位置,所述第一对象和所述第二对象用于校准所述摄像头系统;
第二获得单元,被配置为在所述第一对象和所述第二对象移动之后,分别从所述第一摄像头和所述第二摄像头获得用于所述第一对象和所述第二对象的第三位置和第四位置,所述第一对象与所述第二对象之间的相对对象位置在所述移动期间保持不变;以及
确定单元,被配置为基于所述第一位置、所述第二位置、所述第三位置和所述第四位置,来确定所述第一摄像头与所述第二摄像头之间的相对摄像头位置。
11.根据权利要求10所述的装置,其中所述确定单元包括:
生成单元,被配置为基于所述第一对象和所述第二对象与所述第一摄像头和所述第二摄像头之间的几何关系,来生成与所述相对摄像头位置、所述第一位置、所述第二位置、所述第三位置和所述第四位置相关联的方程式;以及
求解单元,被配置为通过求解所述方程式来确定所述相对摄像头位置。
12.根据权利要求11所述的装置,其中所述求解单元包括:
表示单元,被配置为通过包括多个未知参数的变换矩阵来表示所述相对摄像头位置;以及
方程式生成单元,被配置为基于所述方程式生成包括所述多个未知参数的方程式组;以及
参数确定单元,被配置为通过求解所述方程式组来确定所述多个未知参数。
13.根据权利要求10所述的装置,其中所述第一对象和所述第二对象利用固定连接来连接,使得所述相对对象位置在所述移动期间保持不变。
14.根据权利要求10所述的装置,其中所述第一对象被放置在所述第一摄像头的第一视野内,并且所述第二对象被放置在所述第二摄像头的第二视野内。
15.根据权利要求10所述的装置,其中所述第一获得单元包括:
图像获得单元,被配置为从所述第一摄像头获得用于所述第一对象的第一图像;以及
位置确定单元,被配置为从所述第一图像确定所述第一位置,所述第一位置表示所述第一对象与所述第一摄像头之间的相对位置。
16.根据权利要求10所述的装置,其中所述摄像头系统还包括第三摄像头,并且
所述第一获得单元还被配置为从所述第三摄像头获得用于第三对象的第五位置,所述第三对象用于校准所述摄像头系统;
所述第二获得单元还被配置为在所述第三对象与所述第一对象和所述第二对象一起移动之后,从所述第三摄像头获得用于所述第三对象的第六位置,第三对象与所述第一对象和所述第二对象中的任一对象之间的相对对象位置在所述移动期间保持不变;以及
所述确定单元还被配置为基于所述第一位置、所述第五位置、所述第三位置和所述第六位置,来确定所述第一摄像头与所述第三摄像头之间的相对摄像头位置。
17.根据权利要求10所述的装置,还包括:校准单元,被配置为基于所述相对摄像头位置来校准所述摄像头系统。
18.根据权利要求17所述的装置,其中所述摄像头系统被部署在机器人系统中,并且所述装置还包括:监测单元,被配置为基于所校准的摄像头系统来监测所述机器人系统的操作。
19.一种用于管理摄像头系统的系统,包括:耦合到计算机可读存储器单元的计算机处理器,所述存储器单元包括指令,所述指令在由所述计算机处理器执行时实施根据权利要求1至9中任一项所述的方法。
20.一种计算机可读介质,所述计算机可读介质上存储有指令,当在至少一个处理器上执行时,所述指令使得所述至少一个处理器执行根据权利要求1至9中任一项所述的方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2020/140856 WO2022141054A1 (en) | 2020-12-29 | 2020-12-29 | Method and apparatus for managing camera system |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116635894A true CN116635894A (zh) | 2023-08-22 |
Family
ID=82258746
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080107709.5A Pending CN116635894A (zh) | 2020-12-29 | 2020-12-29 | 用于管理摄像头系统的方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240054679A1 (zh) |
EP (1) | EP4272164A1 (zh) |
CN (1) | CN116635894A (zh) |
WO (1) | WO2022141054A1 (zh) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8593524B2 (en) * | 2006-12-18 | 2013-11-26 | Koninklijke Philips N.V. | Calibrating a camera system |
US9188973B2 (en) * | 2011-07-08 | 2015-11-17 | Restoration Robotics, Inc. | Calibration and transformation of a camera system's coordinate system |
CN111373748A (zh) * | 2017-11-15 | 2020-07-03 | 奇跃公司 | 用于外部校准相机和衍射光学元件的系统和方法 |
CN109102546A (zh) * | 2018-07-16 | 2018-12-28 | 珠海市微半导体有限公司 | 一种基于多标定板的机器人相机的标定方法 |
US10399227B1 (en) * | 2019-03-29 | 2019-09-03 | Mujin, Inc. | Method and control system for verifying and updating camera calibration for robot control |
US10565737B1 (en) * | 2019-07-09 | 2020-02-18 | Mujin, Inc. | Method and system for performing automatic camera calibration for a scanning system |
-
2020
- 2020-12-29 CN CN202080107709.5A patent/CN116635894A/zh active Pending
- 2020-12-29 EP EP20967402.7A patent/EP4272164A1/en active Pending
- 2020-12-29 WO PCT/CN2020/140856 patent/WO2022141054A1/en active Application Filing
- 2020-12-29 US US18/266,778 patent/US20240054679A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20240054679A1 (en) | 2024-02-15 |
WO2022141054A1 (en) | 2022-07-07 |
EP4272164A1 (en) | 2023-11-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107871328B (zh) | 机器视觉系统和机器视觉系统实现的校准方法 | |
KR20180120647A (ko) | 가이드된 어셈블리 환경에서 머신비전 좌표공간과 함께 묶기 위한 시스템 및 방법 | |
CN104908038A (zh) | 对工件的取出工序进行仿真的机器人仿真装置 | |
JP2011179907A (ja) | 位置姿勢計測装置、位置姿勢計測方法およびプログラム | |
JP2013187862A (ja) | 画像データ処理装置、画像データ処理方法および画像データ処理用のプログラム | |
CN112907727B (zh) | 相对变换矩阵的标定方法、装置及系统 | |
JP2020053008A (ja) | 位置決め方法、ロボット及びコンピューター記憶媒体 | |
US20180290300A1 (en) | Information processing apparatus, information processing method, storage medium, system, and article manufacturing method | |
WO2023134237A1 (zh) | 用于机器人的坐标系标定方法、装置、系统以及介质 | |
JPWO2020188799A1 (ja) | カメラ校正装置、カメラ校正方法、及びプログラム | |
CN111179351B (zh) | 一种参数标定方法及其装置、处理设备 | |
CN114952856A (zh) | 机械臂手眼标定方法、系统、计算机及可读存储介质 | |
Kinnell et al. | Autonomous metrology for robot mounted 3D vision systems | |
CN113763478A (zh) | 无人车相机标定方法、装置、设备、存储介质及系统 | |
US20210156710A1 (en) | Map processing method, device, and computer-readable storage medium | |
CN114387352A (zh) | 一种外参标定方法、装置、设备及存储介质 | |
Seçil et al. | 3-d visualization system for geometric parts using a laser profile sensor and an industrial robot | |
WO2020047713A1 (en) | Method and apparatus for managing robot system | |
CN116635894A (zh) | 用于管理摄像头系统的方法和装置 | |
WO2021145304A1 (ja) | 画像処理システム | |
JP2005069757A (ja) | 中心窩広視野画像を利用したカメラ位置姿勢推定方法及びシステム | |
CN115063489A (zh) | 一种外参标定方法、装置、设备和存储介质 | |
JP6584139B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP2005186193A (ja) | ロボットのキャリブレーション方法および三次元位置計測方法 | |
EP3767589A1 (en) | Information processing device, information processing method, and program |
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 |