CN114536399A - 基于多个位姿标识的误差检测方法及机器人*** - Google Patents
基于多个位姿标识的误差检测方法及机器人*** Download PDFInfo
- Publication number
- CN114536399A CN114536399A CN202210015088.9A CN202210015088A CN114536399A CN 114536399 A CN114536399 A CN 114536399A CN 202210015088 A CN202210015088 A CN 202210015088A CN 114536399 A CN114536399 A CN 114536399A
- Authority
- CN
- China
- Prior art keywords
- pose
- coordinate system
- arm
- determining
- identification
- 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
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 73
- 239000012636 effector Substances 0.000 claims abstract description 63
- 230000004044 response Effects 0.000 claims abstract description 15
- 238000000034 method Methods 0.000 claims description 139
- 230000008859 change Effects 0.000 claims description 34
- 238000009826 distribution Methods 0.000 claims description 28
- 230000009466 transformation Effects 0.000 claims description 28
- 238000003860 storage Methods 0.000 claims description 21
- 230000015654 memory Effects 0.000 claims description 19
- 239000003550 marker Substances 0.000 description 42
- 238000010586 diagram Methods 0.000 description 27
- 238000012545 processing Methods 0.000 description 15
- 238000004422 calculation algorithm Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000003384 imaging method Methods 0.000 description 5
- 206010034719 Personality change Diseases 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000002591 computed tomography Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 description 1
- 238000007476 Maximum Likelihood Methods 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000012887 quadratic function Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003238 somatosensory effect Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/1653—Programme controls characterised by the control loop parameters identification, estimation, stiffness, accuracy, error analysis
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
- B25J9/1692—Calibration of manipulator
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/0095—Means or methods for testing manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/08—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1674—Programme controls characterised by safety, monitoring, diagnostic
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
- B25J9/1697—Vision controlled systems
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39017—Forward calibration, find actual pose world space for given joint configuration
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Human Computer Interaction (AREA)
- Manipulator (AREA)
Abstract
本公开涉及误差检测技术领域,公开一种误差检测方法。误差检测方法包括:获得执行臂的末端的目标位姿;获取定位图像;在定位图像中,识别位于执行臂的末端上的多个位姿标识,多个位姿标识包括不同的位姿标识图案;基于多个位姿标识,确定执行臂的末端的实际位姿;以及响应于目标位姿与实际位姿满足误差检测条件,生成与故障相关的控制信号。
Description
技术领域
本公开涉及误差检测技术领域,尤其涉及一种基于多个位姿标识的误差检测方法及机器人***。
背景技术
通常,用于遥操作的机器人***包括用于执行操作的执行臂及用于控制执行臂运动的主操作器。在实际场景中,执行臂被设置成能够进入操作区域,操作者通过遥操作主操作器而控制执行臂在操作区域中的运动,进而通过设置在执行臂末端(执行器)进行操作。这种机器人通过主操作器与执行臂之间的运动转换实现主操作器对执行臂的运动控制。
机器人对操作精度和人机交互体验要求很高。遥操作过程中,需要实时检测执行臂的位姿误差,以确定执行臂有否正确地按照操作者的意愿移动到与主操作器的操作对应的位置和姿态,进而实时把握机器人***的工作状况。
发明内容
在一些实施例中,本公开提供了一种误差检测方法。该方法可以包括:获得执行臂的末端的目标位姿;获取定位图像;在定位图像中,识别位于执行臂的末端上的多个位姿标识,多个位姿标识包括不同的位姿标识图案;基于多个位姿标识,确定执行臂的末端的实际位姿;以及响应于目标位姿与实际位姿满足误差检测条件,生成与故障相关的控制信号。
在一些实施例中,本公开提供了一种计算机设备,包括:存储器,用于存储至少一条指令;以及处理器,与存储器耦合并且用于执行至少一条指令以执行本公开一些实施例中任一项的方法。
在一些实施例中,本公开提供了一种计算机可读存储介质,用于存储至少一条指令,至少一条指令由计算机执行时致使计算机执行本公开一些实施例中任一项的方法。
在一些实施例中,本公开提供了一种机器人***,包括:主操作器,包括机械臂、设置在机械臂上的手柄以及设置在机械臂上的至少一个关节处的至少一个主操作器传感器,至少一个主操作器传感器用于获得至少一个关节的关节信息;执行臂,执行臂的末端设置有多个位姿标识,多个位姿标识包括不同的位姿标识图案;至少一个驱动装置,用于驱动执行臂;至少一个驱动装置传感器,与至少一个驱动装置耦合并且用于获得至少一个驱动装置的状态信息;图像采集设备,用于采集执行臂的定位图像;以及控制装置,被配置为与主操作器、至少一个驱动装置、至少一个驱动装置传感器、图像采集设备连接,执行本公开一些实施例中任一项的方法。
附图说明
图1示出根据本公开一些实施例的机器人***的结构示意图;
图2示出根据本公开一些实施例的误差检测***的示意图;
图3示出根据本公开一些实施例的误差检测方法的流程图;
图4示出根据本公开一些实施例的确定执行臂的末端的目标位姿的方法的流程图;
图5示出根据本公开一些实施例的主从运动映射中的坐标系示意图;
图6示出根据本公开一些实施例的包括多个位姿标识的标签的示意图;
图7示出根据本公开一些实施例的设置在执行臂末端周侧并形成圆筒形的标签的示意图;
图8示出根据本公开一些实施例的确定多个位姿标识相对执行臂的末端坐标系的三维坐标的方法的流程图;
图9示出根据本公开另一些实施例的确定多个位姿标识相对执行臂的末端坐标系的三维坐标的方法的流程图;
图10示出根据本公开一些实施例的识别位姿标识的方法的流程图;
图11示出根据本公开一些实施例的位姿标识图案的示意图;
图12示出根据本公开一些实施例的用于搜索位姿标识的方法的流程图;
图13示出根据本公开一些实施例的搜索位姿标识的示意图;
图14示出根据本公开一些实施例的用于搜索第二位姿标识的方法的流程图;
图15示出根据本公开一些实施例的用于搜索位姿标识的方法的流程图;
图16示出根据本公开一些实施例的计算机设备的示意框图;
图17示出根据本公开一些实施例的机器人***的示意图。
具体实施方式
为使本公开解决的技术问题、采用的技术方案和达到的技术效果更加清楚,下面将结合附图详细说明本公开实施例的技术方案作。本领域技术人员可以理解,所描述的实施例应视为在所有方面都是示例性的而非限制性的,仅仅是本公开示例性实施例,而不是全部的实施例。
在本公开的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本公开和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本公开的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明公开的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“耦合”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连;可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明公开中的具体含义。在本发明公开中,定义靠近操作者的一端为近端、近部或后端、后部,靠近作业对象的一端为远端、末端、远部或前端、前部。本领域技术人员可以理解,本公开的实施例可以适用于包括但不限于在地表、地下、水下、太空和生物体内等多种环境中作业的机械装置上设置的执行臂。
在本公开中,术语“位置”指物体或物体的一部分在三维空间中的定位(例如,可使用笛卡尔X、Y和Z坐标方面的变化描述三个平移自由度,例如分别沿笛卡尔X轴、Y轴和Z轴的三个平移自由度)。在本公开中,术语“姿态”指物体或物体的一部分的旋转设置(例如,三个旋转自由度,可使用滚转、俯仰和偏转来描述这三个旋转自由度)。在本公开中,术语“位姿”指物体或物体的一部分的位置和姿态的组合,例如可使用以上提到的六个自由度中的六个参数来描述。在本公开中,主操作器的手柄的位姿可由主操作器关节的关节信息的集合(例如由这些关节信息组成的一维矩阵)来表示。执行臂的位姿可由执行臂的驱动信息来确定。在本公开中,关节的关节信息可以包括相应关节相对于相应的关节轴所旋转的角度或者相对初始位置移动的距离。
在本公开中,参考坐标系可以理解为能够描述物***姿的坐标系。根据实际的定位需求,参考坐标系可以选择以虚拟参照物的原点或实体参照物的原点为坐标系原点。在一些实施例中,参考坐标系可以为世界坐标系或者主操作器、执行臂、相机所在空间的坐标系或者操作人员自身的感知坐标系等等。
在本公开中,物体可以理解为需要被定位的对象或目标,例如执行臂或者执行臂的末端。执行臂或其一部分(例如末端)的位姿可以是指执行臂或其一部分定义的坐标系相对参考坐标系的位姿。
图1示出根据本公开一些实施例的机器人***100的结构示意图。在一些实施例中,如图1所示,机器人***100可以包括主控台车110、从动台车130及控制装置120。控制装置120可以与主控台车110和从动台车130通信连接,例如可通过线缆连接、也可以通过无线连接,以实现与主控台车110和从动台车130之间的通信。主控台车110包括供操作者遥操作的主操作器,从动台车130包括用于执行作业的至少一个执行臂。通过控制装置120实现主控台车110中的主操作器与从动台车130中的执行臂之间的主从映射,实现主操作器对执行臂的运动控制。在一些实施例中,执行臂被设置成能够通过管套、鞘套等进入操作区域,其中,管套、鞘套可以固定在墙体壁面、动物躯体等上形成开口(例如人工开口或自然开口)处,操作区域可以是进行作业的区域。执行臂可以是连续体可形变臂,在执行臂的远端可以设置有末端器械(例如,执行器),该末端可以包括但不限于挖掘器械、水下作业器械、分拣器械、手术器械等。本领域技术人员可以理解,主控台车110和从动台车130可以采用其他结构或者形式,例如基座、支架或建筑物等。
在一些实施例中,除作业工具以外,执行臂也可以作为视觉工具使用,视觉工具的末端器械可以包括但不限于图像采集设备或照明设备等。在一些实施例中,主控台车可以包括主操作器和用于显示操作区域的图像的显示器。图像采集设备可以用于采集操作区域的图像,并将采集到的图像传送至从动台车。图像经从动台车中的视频处理模块处理后,显示在从动台车的显示器上。操作者通过显示器中的图像实时获得执行臂的末端相对参考坐标系的位姿。主操作器相对参考坐标系的位姿是操作者真实感知到的姿态。操作者通过遥操作主操作器所感受到的位姿变化与操作者在显示器中感知到的执行臂的末端的姿态变化之间符合预设的位姿关系,这样,通过远程遥操作主操作器,基于预设的位姿关系将主操作器的位姿变换转换为执行臂的末端的位姿变化,进而实现对执行臂的末端的位姿控制。这样,当操作者握住主操作器的手柄运动以操作执行臂时,基于直观性操作的原则,操作者感受到的执行臂的末端器械的姿态变化量与操作者感受到的主操作器的姿态变化量保持一致,有助于改善操作者的遥操作感受以及遥操作精度。
在遥操作过程中,有时执行臂会无法按照操作者的期望准确地移动到与主操作器的操作对应的位置和姿态。本公开中,在遥操作的过程中检测执行臂的位姿误差,确定执行臂有否正确地按照操作者的意愿进行移动,进而实时把握机器人***的工作状况。本领域技术人员可以理解,根据本公开一些实施例的位姿误差检测方法也可以在非遥操作过程中执行。
图2示出根据本公开一些实施例的误差检测***200的示意图。如图2所示,***200可以包括主操作器210、控制装置220、执行臂230、以及图像采集设备250。执行臂230可以由可形变臂或刚性臂实现。在一些实施例中,执行臂230在末端或远端处可以包括执行臂末端231,执行臂末端231上可以设置有末端器械240。
控制装置220可以与至少一个驱动装置通信连接,向驱动装置发送驱动信息,控制执行臂230运动,以使执行臂末端231运动至期望的位置和姿态。例如,控制执行臂230运动的至少一个驱动装置可以为伺服电机,可以接受控制装置的指令以控制执行臂230运动。在一些实施例中,控制装置220可以基于主操作器210的位姿和主操作器210与执行臂230之间的映射关系,确定执行臂末端231的目标位姿。
图像采集设备250与控制装置220通信连接。在一些实施例中,图像采集设备250可以用于采集定位图像,图像采集设备250可以包括但不限于双镜头图像采集设备或单镜头图像采集设备,例如双目或单目相机。定位图像中可以包括位于操作区域内的执行臂230的部分或全部的图像。在一些实施例中,图像采集设备250可以用于采集执行臂末端231的图像。执行臂末端231上可以设置有多个不同的位姿标识,这些位姿标识包括不同的位姿标识图案。例如,执行臂末端231上可以设置有定位标签232(定位标签232例如可以是图6所示的标签600)。定位标签232可以包括多个位姿标识,多个位姿标识包括不同的位姿标识图案(如下详述)。
如图2所示,执行臂末端231处于图像采集设备250的观测视野251之内,则采集的定位图像中可以包括执行臂末端231的图像。根据不同的应用场景,图像采集设备250可以是工业相机、水下相机、微型电子相机、内窥镜相机等。在一些实施例中,图像采集设备250可以是位置固定的或者位置变化的,例如,固定在监控位置的工业相机或者位置或姿态可调节的内窥镜相机。在一些实施例中,图像采集设备250可以实现可见光波段成像、红外波段成像、CT(Computed Tomography,电子计算机断层扫描)成像和声波成像等中的至少一种。根据采集的图像的种类不同,本领域技术人员可以选择不同的图像采集设备作为图像采集设备250。
在一些实施例中,控制装置220可以接收来自图像采集设备250的定位图像,并且对定位图像进行处理。例如,控制装置220可以在定位图像中,识别位于执行臂末端231上的多个位姿标识,并且确定执行臂末端231相对参考坐标系(例如世界坐标系)的位姿,作为执行臂末端231的实际位姿。
在本公开中,控制装置220可以基于执行臂末端231的目标位姿和实际位姿对执行臂230进行误差检测,确定执行臂末端231是否准确移动到了与主操作器210的操作对应的位置和姿态,进而判断执行臂230是否发生故障并生成相应的控制信号。在一些实施例中,控制装置220还可以以预定周期确定执行臂末端231的目标位姿和实际位姿,以通过多个检测循环实时对执行臂230进行误差检测。本领域技术人员应理解,***200可以应用于多个领域(例如,医疗、工业制造等等)的专用或通用机器人***,例如图1所示的机器人***100,或图17所示的机器人***1700。作为一个示例,***200可以应用于例如手术机器人等机器人***,执行臂末端231的远端处设置的末端器械240例如可以是手术执行器。
本公开的一些实施例提供了一种用于机器人***的执行臂的误差检测方法。图3示出根据本公开一些实施例的误差检测方法300(以下也简称“方法300”)的流程图。方法300可以由硬件、软件或者固件实现或执行。在一些实施例中,方法300可以由机器人***(例如,图1所示的机器人***100,或图17所示的机器人***1700)执行。在一些实施例中,方法300可以实现为计算机可读的指令。这些指令可以由通用处理器或专用处理器(例如,图1所示的控制装置120、图2所示的控制装置220或图17所示的控制装置1720)读取并执行。例如,用于机器人***的控制装置可以包括处理器,被配置为执行方法300。在一些实施例中,这些指令可以存储在计算机可读介质上。
参看图3,在步骤301,获得执行臂的末端的目标位姿。在一些实施例中,可以基于主操作器的位姿与执行臂的末端的位姿之间的主从运动映射关系,根据主操作器的位姿确定执行臂的末端的目标位姿。获得执行臂的末端的目标位姿的示例性方法包括如图4所示的方法。
图4示出根据本公开一些实施例的确定执行臂的末端的目标位姿的方法400的流程图。如图4所示,该方法400中的部分或全部步骤可以由控制装置(例如,图1所示的控制装置120、图2所示的控制装置220或图17所示的控制装置1720)来执行。方法400中的部分或全部步骤可以由软件、固件和/或硬件来实现。在一些实施例中,方法400可以由机器人***(例如,图1所示的机器人***100或图17所示的机器人***1700)执行。在一些实施例中,方法400可以实现为计算机可读的指令。这些指令可以由通用处理器或专用处理器(例如,图17所示的控制装置1720)读取并执行。在一些实施例中,这些指令可以存储在计算机可读介质上。
图5示出根据本公开一些实施例的主从运动映射中的坐标系示意图。在图5中各坐标系的定义如下:执行臂基坐标系{Tb},原点位于执行臂的基座或者入鞘套出口,与基座延长线或者入鞘套轴向方向一致,方向如图5所示。相机坐标系{lens},原点位于相机中心,相机轴线方向为方向,视野摆正后上方为方向。执行臂的末端坐标系{wm},原点位于执行臂的末端,与末端的轴线方向一致,方向如图5所示。参考坐标系{w},可以是主操作器或执行臂或相机所在空间的坐标系,例如执行臂基坐标系{Tb},或者世界坐标系,如图5所示。在一些实施例中,可以以操作者的体感为基准,当操作者端坐于主控台之前时,体感向上为方向,体感向前方向为方向。显示器坐标系{Screen},原点位于显示器中心,垂直屏幕画面向内方向为正方向,屏幕画面上方为方向。主操作器基坐标系{CombX},坐标轴方向如图5所示。主操作器的手柄坐标系{H},坐标轴方向如图5所示。
下面以图5所示的坐标系为例,对确定执行臂的末端的目标位姿的方法400进行描述。但是,本领域技术人员可以理解,可以采用其他坐标系定义实现确定执行臂的末端的目标位姿的方法400。
参看图4,在步骤401,可以确定主操作器的当前位姿,当前位姿包括当前位置和当前姿态。在一些实施例中,主操作器的当前位姿是相对主操作器基坐标系{CombX}的位姿。例如,主操作器的位姿是主操作器的手柄或其一部分定义的坐标系相对主操作器基坐标系{CombX}(例如,主操作器所在的支架或基座定义的坐标系、或世界坐标系)的位姿。在一些实施例中,确定主操作器的当前位置包括确定主操作器的手柄相对主操作器基坐标系{CombX}的当前位置,确定主操作器的当前姿态包括确定主操作器的手柄相对主操作器基坐标系{CombX}的当前姿态。
在一些实施例中,可以基于坐标变换确定主操作器的当前位姿。例如,可以基于主操作器的手柄的坐标系{H}与主操作器基坐标系{CombX}之间的变换关系确定手柄的当前位姿。通常情况下,主操作器基坐标系{CombX}可以设置在主操作器所在的支架或基座上,且在遥操作过程中,主操作器基坐标系{CombX}保持不变。
在一些实施例中,可以基于主操作器传感器确定主操作器的当前位姿。在一些实施例中,接收主操作器的至少一个关节的当前关节信息,并且基于至少一个关节的当前关节信息,确定主操作器的当前位姿。例如,主操作器的当前位姿是基于主操作器传感器获得的至少一个关节的当前关节信息确定的。主操作器传感器设置在主操作器的至少一个关节位置处。例如,主操作器包括至少一个的关节,在至少一个关节处设置至少一个主操作器传感器。基于主操作器传感器获取对应关节的关节信息(位置或者角度),计算主操作器的当前位姿。例如,基于正向运动学算法计算主操作器的当前位置和当前姿态。
在一些实施例中,主操作器包括用于控制手柄的姿态的至少一个姿态关节。确定主操作器的手柄的当前姿态包括:获得至少一个姿态关节的关节信息,并且基于至少一个姿态关节的关节信息,确定主操作器的当前姿态。主操作器包括机械臂,机械臂包括位置关节以及姿态关节。姿态关节调整主操作器的姿态,通过一个或者多个姿态关节控制主操作器达到目标姿态。位置关节调整主操作器的位置,通过一个或者多个的位置关节控制主操作器达到目标位置。主操作器传感器设置在度机械臂的姿态关节以及位置关节处,用于获取姿态关节以及位置关节对应的关节信息(位置或者角度)。根据获取到的关节信息,可以确定主操作器的手柄相对主操作器基坐标系{CombX}的当前位姿。例如,主操作器可以包括7个关节,其中,关节5、关节6和关节7为姿态关节,用于调整主操作器的手柄的姿态。基于姿态关节的主操作器传感器获取的关节信息(如角度)以及正向运动学算法,计算主操作器的当前姿态。关节1、关节2、关节3为位置关节,用于调整主操作器的手柄的位置。基于位置关节的主操作器传感器获取的关节信息(如位置)以及正向运动学算法,计算主操作器的当前位置。
在步骤403,可以基于主操作器的当前位姿及主操作器与执行臂的末端的位姿关系,确定执行臂的末端的目标位姿。例如,建立主操作器与执行臂的末端的主从映射关系,通过遥操作主操作器以控制执行臂的末端的位姿。位姿关系包括执行臂的末端相对参考坐标系{w}的位姿与主操作器相对参考坐标系{w}的位姿之间的关系。参考坐标系{w}包括主操作器或执行臂或相机所在空间的坐标系或者世界坐标系。
在一些实施例中,主操作器与执行臂的末端之间的位姿关系可以包括主操作器的位姿变化量与执行臂的末端的位姿变化量之间的关系,例如相等或者成比例。确定执行臂的末端的目标位姿包括:确定主操作器的先前位姿,确定执行臂的末端的起始位姿,并且基于主操作器的先前位姿和当前位姿以及执行臂的末端的起始位姿,确定执行臂的末端的目标位姿。主操作器的先前位姿以及当前位姿可以是主操作器的手柄相对主操作器基坐标系{CombX}的位姿。执行臂的末端的起始位姿以及目标位姿可以是执行臂的末端相对执行臂基坐标系{Tb}的位姿。
执行臂的末端的位姿可以包括执行臂的末端坐标系{wm}相对执行臂基坐标系{Tb}的位姿。执行臂的基坐标系{Tb}可以是执行臂所安装的基座的坐标系、执行臂的末端所穿过的鞘套的坐标系(例如,鞘套出口的坐标系)、执行臂的近端运动中心点(RemoteCenter of Motion,RCM)的坐标系等。例如,执行臂的基坐标系{Tb}可以设置在鞘套出口位置处,且在遥操作过程中,执行臂的基坐标系{Tb}保持不变。可以对执行臂的末端的起始位姿进行坐标系变换,得到相对其他坐标系(例如,参考坐标系)的位姿。
在一些实施例中,可以接收主操作器的至少一个关节的先前关节信息,并且基于至少一个关节的先前关节信息,确定主操作器的先前位姿。例如,基于主操作器传感器读取主操作器在先前时间以及当前时间的关节信息,确定主操作器的手柄的先前位姿和当前位姿。基于手柄相对主操作器基坐标系{CombX}的先前位置以及当前位置,确定主操作器的手柄的位置变化量。基于手柄相对主操作器基坐标系{CombX}的先前姿态以及当前姿态,确定主操作器的手柄的姿态变化量。
在一些实施例中,可以接收上一轮检测循环获得的执行臂的末端的实际位姿,作为本轮检测循环中执行臂的末端的起始位姿。例如,在每一轮检测循环中,相机可以对执行臂的末端拍摄定位图像,通过定位图像可以识别位于执行臂的末端上的多个位姿标识,进而确定执行臂的末端的实际位姿(在后详述),该实际位姿可以作为下一轮检测循环中执行臂的末端的起始位姿。例如,对于第一轮检测循环,则可以采用执行臂的末端的初始位姿(例如,执行臂的零位)作为第一轮检测循环的起始位姿。
在一些实施例中,可以基于主操作器的先前位姿以及当前位姿,确定主操作器的位姿变化量。可以基于主操作器的位姿变化量及主操作器与执行臂的末端的位姿关系,确定执行臂的末端的位姿变化量。可以基于执行臂的末端的起始位姿以及执行臂的末端的位姿变化量,确定执行臂的末端的目标位姿。
位姿关系可以包括位置关系以及姿态关系。主操作器与执行臂的末端之间的位置关系可以包括主操作器的位置变化量与执行臂的末端的位置变化量之间的关系,例如相等或成比例。主操作器与执行臂的末端之间的姿态关系可以包括主操作器的姿态变化量与执行臂的末端的姿态变化量之间的关系,例如相等或成比例。
在一些实施例中,方法400还包括:确定主操作器的手柄相对主操作器基坐标系的当前位置,确定手柄相对主操作器基坐标系的先前位置,确定执行臂的末端相对执行臂基坐标系的起始位置,以及基于手柄相对主操作器基坐标系的先前位置和当前位置、执行臂基坐标系与主操作器基坐标系的变换关系、执行臂的末端相对执行臂基坐标系的起始位置,确定执行臂的末端相对执行臂基坐标系的目标位置。例如,基于主操作器传感器读取的主操作器在先前时间对应的关节信息确定主操作器的先前位置,基于主操作器传感器读取的主操作器在当前时间对应的关节信息确定主操作器的当前位置。基于手柄相对主操作器基坐标系{CombX}的先前位置以及当前位置确定主操作器的位置变化量。基于上一轮检测循环获得的执行臂的末端的实际位姿确定执行臂的末端的起始位置。基于主操作器的位置变化量及主操作器与执行臂的末端的位姿关系确定执行臂的末端的位置变化量。基于执行臂的末端的起始位置以及执行臂的末端的位置变化量确定执行臂的末端的目标位置。
在一些实施例中,方法400还包括:确定主操作器的手柄相对主操作器基坐标系的当前姿态,确定手柄相对主操作器基坐标系的先前姿态,确定执行臂的末端相对执行臂基坐标系的起始姿态,以及基于手柄相对主操作器基坐标系的先前姿态和当前姿态、执行臂基坐标系与主操作器基坐标系的变换关系、执行臂的末端相对执行臂基坐标系的起始姿态,确定执行臂的末端相对执行臂基坐标系的目标姿态。例如,基于主操作器传感器读取的主操作器在先前时间对应的关节信息确定主操作器的先前姿态,基于主操作器传感器读取的主操作器在当前时间对应的关节信息确定主操作器的当前姿态。基于手柄相对主操作器基坐标系{CombX}的先前姿态以及当前姿态确定主操作器的姿态变化量。基于上一轮检测循环获得的执行臂的末端的实际位姿确定执行臂的末端的起始姿态。基于主操作器的姿态变化量及主操作器与执行臂的末端的位姿关系确定执行臂的末端的姿态变化量。基于执行臂的末端的起始姿态以及执行臂的末端的姿态变化量确定执行臂的末端的目标姿态。
在一些实施例中,位姿关系包括:执行臂的末端在参考坐标系{w}中的位置变化量与主操作器在参考坐标系{w}中的位置变化量成比例,可以表示为:
wΔPwm=k·wΔPH (1)
在公式(1)中,左侧的wΔPwm表示执行臂的末端相对参考坐标系{w}的位置变化量,右侧的wΔPH表示主操作器相对参考坐标系{w}的位置变化量。并且,wΔPwm与wΔPH呈比例关系,比例系数为k。
在一些实施例中,可以基于主操作器相对参考坐标系{w}的先前位置wPH(t0)及当前位置wPH确定主操作器的位置变化量wΔPH。例如,在遥操作中的t0时刻,可以基于主操作器传感器获取到的主操作器的关节信息,确定主操作器的手柄相对参考坐标系{w}的先前位置wPH(t0)。在遥操作中的t1时刻,可以基于主操作器传感器获取到的主操作器的关节信息,确定主操作器的手柄相对参考坐标系{w}的当前位置wPH。基于主操作器在t0时刻的先前位置wPH(t0)以及主操作器在t1时刻的当前位置wPH,得到主操作器的位置变化量wΔPH。在一些实施例中,t0时刻至t1时刻之间可以包括执行臂的多个控制循环,t0时刻可以是遥操作指令被触发的时刻或者多个控制循环开始的时刻,t1时刻可以是遥操作指令结束的时刻或者多个控制循环完成的时刻。
在一些实施例中,可以基于执行臂的末端相对参考坐标系{w}的起始位置wPwmS及目标位置wPwmT,确定执行臂的末端的位置变化量wΔPwm。在一些实施例中,执行臂的检测循环(例如,t0至t1)可以涵盖执行臂的多个控制循环。例如,执行臂的上一轮检测循环可以在t0时刻结束,执行臂的本轮检测循环可以在t0时刻开始,在t1时刻结束。在一些实施例中,可以将上一轮检测循环(例如,t0时刻)获得的执行臂的末端的实际位姿中的实际位置wPwmR(t0),确定为当前检测循环中执行臂的末端相对参考坐标系{w}的起始位置wPwmS。可以基于手柄的位置变化量wΔPH以及执行臂的末端相对参考坐标系{w}的起始位置wPwmS,确定执行臂的末端相对参考坐标系{w}的目标位置wPwmT。
在公式(1)中,执行臂的末端相对参考坐标系{w}的位置变化量wΔPwm可以由执行臂的末端相对参考坐标系{w}的目标位置wPwmT以及执行臂的末端(例如,在t0时刻)相对参考坐标系{w}的起始位置wPwmS的差值表示,如公式(2)所示,
wΔPwm=wPwmT-wPwmS (2)
在公式(1)中,主操作器相对参考坐标系{w}的位置变化量wΔPH可以由主操作器(例如,在t1时刻)相对参考坐标系{w}的当前位置wPH以及主操作器(例如,在t0时刻)相对参考坐标系{w}的先前位置wPH(t0)的差值表示,如公式(3)所示,
wΔPH=wPH-wPH(t0) (3)
在一些实施例中,在公式(1)的左右两侧分别乘以相同的矩阵TbRw,基于公式(1)至公式(3)得到公式(4),
TbRw(wPwmT-wPwmS)=k·TbRw(wPH-wPH(t0)) (4)
基于公式(4)的左侧得到公式(5),
TbRw(wPwmT-wPwmS)=TbPwmT-TbPwmS (5)
基于公式(4)的右侧得到公式(6),
k·TbRw(wPH-wPH(t0))=k·TbRCombX(CombXPH-CombXPH(t0)) (6)
基于公式(5)及公式(6)得到公式(7),
TbPwmT=k·TbRCombX(CombXPH-CombXPH(t0))+TbPwmS (7)
基于公式(7),在一些实施例中,可以基于手柄相对主操作器基坐标系{CombX}的先前位置CombXPH(t0)和当前位置CombXPH、执行臂的末端相对执行臂基坐标系{Tb}的当前位置TbPwmS、主操作器基坐标系{CombX}与执行臂基坐标系{Tb}的变换关系TbRCombX,确定执行臂的末端相对执行臂基坐标系{Tb}的目标位置TbPwmT。
在一些实施例中,执行臂的末端在参考坐标系{w}中的姿态与主操作器在参考坐标系{w}中的姿态一致。在一些实施例中,执行臂的末端相对参考坐标系{w}的姿态变化量与主操作器相对参考坐标系{w}的姿态变化量一致,可以表示为:
wRwmS-wmT=wRH(t0)-H (8)
在公式(8)中,左侧的wRwmS-wmT表示执行臂的末端的姿态相对参考坐标系{w}的姿态变化量,右侧的wRH(t0)-H表示主操作器相对参考坐标系{w}的姿态变化量。
在一些实施例中,可以基于主操作器相对参考坐标系{w}的先前姿态wRH(t0)及当前姿态wRH确定主操作器的姿态变化量wRH(t0)-H。例如,在遥操作中的t0时刻,可以基于主操作器传感器获取到的主操作器的关节信息,确定主操作器的手柄相对参考坐标系{w}的先前姿态wRH(t0)。在遥操作中的t1时刻,可以基于主操作器传感器获取到的主操作器的关节信息,确定主操作器的手柄相对参考坐标系{w}的当前姿态wRH。可以基于主操作器在t0时刻的先前姿态wRH(t0)以及主操作器在t1时刻的当前姿态wRH,得到主操作器的姿态变化量wRH(t0)-H。类似地,在一些实施例中,t0时刻至t1时刻可以对应于单个检测循环,可以包括执行臂的多个控制循环,t0时刻可以是遥操作指令被触发的时刻或者检测循环开始的时刻,t1时刻可以是遥操作指令结束的时刻或者检测循环完成的时刻。
在一些实施例中,可以基于执行臂的末端相对参考坐标系{w}的起始姿态wRwmS及目标姿态wRwmT,确定执行臂的末端的姿态变化量wRwmS-wmT。同样地,在一些实施例中,执行臂的检测循环(例如,t0至t1)可以涵盖执行臂的多个控制循环。例如,执行臂的上一轮检测循环可以在t0时刻结束,执行臂的本轮检测循环可以在t0时刻开始,在t1时刻结束。在一些实施例中,可以将上一轮检测循环(例如,t0时刻)获得的执行臂的末端的实际位姿中的实际姿态wRwmR(t0),确定为当前检测循环中执行臂的末端相对参考坐标系{w}的起始姿态wRwmS。可以基于手柄的姿态变化量wRH(t0)-H以及执行臂的末端相对参考坐标系{w}的起始姿态wRwmS,确定执行臂的末端相对参考坐标系{w}的目标姿态wRwmT。
在公式(8)中,执行臂的末端的姿态相对参考坐标系{w}的姿态变化量wRwmS-wmT可以基于执行臂的末端相对参考坐标系{w}的起始姿态wPwmS以及执行臂的末端相对参考坐标系{w}的目标姿态wRwmT确定。主操作器相对参考坐标系{w}的姿态变化量wRH(t0)-H可以基于手柄(例如,在t0时刻)相对参考坐标系{w}的先前姿态wRH(t0)以及手柄在(例如,在t1时刻)相对参考坐标系{w}的当前姿态wRH确定。
具体参见公式(9),
wRwmT(wRwmS)T=wRH(wRH(t0))T (9)
在一些实施例中,在公式(9)的左右两侧分别乘以相同的矩阵TbRw(TbRw)T,基于公式(9)得到公式(10),
TbRw wRwmT(wRwmS)T(TbRw)T=TbRw wRH(wRH(t0))T(TbRw)T (10)
基于公式(10)的左侧得到公式(11),
TbRw wRwmT(wRwmS)T(TbRw)T=(TbRw wRwmT)(TbRw wRwmS)T=TbRwmT(TbRwmS)T (11)
基于公式(10)的右侧得到公式(12),
TbRw wRH(wRH(t0))T(TbRw)T=TbRH(TbRH(t0))T=(TbRCombX CombXRH)(TbRCombX CombXRH(t0))T (12)
综合公式(8)至公式(12),可得出执行臂的末端在遥操作过程中的目标姿态TbRwmT表达式如公式(13),
TbRwmT=TbRCombX(CombXRH(CombXRH(t0))T)CombXRTb TbRwmS (13)
基于公式(13),在一些实施例中,可以基于手柄相对主操作器基坐标系{CombX}的先前姿态CombXRH(t0)和当前姿态CombXRH、执行臂的末端相对执行臂基坐标系{Tb}的起始姿态wRwmS及执行臂基坐标系{Tb}与主操作器基坐标系{CombX}的变换关系CombXRTb,确定执行臂的末端相对执行臂基坐标系{Tb}的目标姿态TbRwmT。
在一些实施例中,执行臂基坐标系{Tb}与主操作器基坐标系{CombX}的变换关系CombXRTb可以是基于执行臂基坐标系{Tb}与相机坐标系{lens}的变换关系lensRTb、相机坐标系{lens}与显示器坐标系{Screen}的变换关系ScreenRlens、显示器坐标系{Screen}与主操作器基坐标系{CombX}的变换关系CombXRScreen确定。
在一些实施例中,主操作器与显示器的变换关系可以预先确定,例如主操作器与显示器可以分别固定设置在主控台车上,显示器坐标系{Screen}与主操作器基坐标系{CombX}具有预定的变换关系。一些实施例中,执行臂基坐标系{Tb}与相机坐标系{lens}具有预定的变换关系。在一些实施例中,相机可以设置在视觉工具的末端,在操作者进行作业之前,视觉工具已经运动结束,执行臂基坐标系{Tb}与相机坐标系{lens}的变换关系lensRTb不再变化。
在一些实施例中,显示器坐标系{Screen}与相机坐标系{lens}对于视野方向的定义一致。因此执行臂的末端在显示器中的图像相对于显示器坐标系{Screen}的位置变化量与执行臂的末端相对于相机坐标系{lens}的位置变化量一致。这样,当操作者握住主操作器的手柄操作时,操作者感受到的执行臂末端的执行器的图像的位姿变化与操作者感受到的主操作器的手柄的位姿变化保持预设的变换关系。
在一些实施例中,执行臂的末端相对参考坐标系{w}的目标位姿可以基于执行臂的末端相对执行臂基坐标系{Tb}的目标位姿以及执行臂基坐标系{Tb}与参考坐标系{w}的变换关系wRTb确定。在一些实施例中,执行臂基坐标系{Tb}与参考坐标系{w}具有预定的变换关系。具体如公式(14),
本领域技术人员可以理解,执行臂基坐标系{Tb}可以作为参考坐标系{w}。
在一些实施例中,执行臂上(例如,执行臂末端231上)分布有多个位姿标识。在一些实施例中,多个位姿标识设置在执行臂230的柱状部分的外表面上。例如,多个位姿标识沿周向分布在执行臂末端231上,例如沿周向设置在执行臂末端231的柱状部分的外表面上。在一些实施例中,执行臂末端231的柱状部分的外表面上设置有包括多个位姿标识的定位标签232,多个位姿标识包括沿柱状部分的周向分布在定位标签上的多个不同的位姿标识图案以及在位姿标识图案中的位姿标识图案角点。
在一些实施例中,位姿标识可以包括位姿标识图案和在位姿标识图案中的位姿标识图案角点。在一些实施例中,位姿标识图案可以设置在执行臂末端上的标签上,或者可以印刷在执行臂末端上,或者可以是由执行臂末端自身的物理构造形成的图案,例如,可以包括凹陷或凸起及其组合。在一些实施例中,位姿标识图案可以包括以亮度、灰度、色彩等形成的图案。在一些实施例中,位姿标识图案可以包括主动(例如,自发光)或被动(例如,反射光线)提供被图像采集设备探测的信息的图案。本领域技术人员可以理解,在一些实施例中,位姿标识的位姿或者位姿标识图案的位姿可以由位姿标识图案角点坐标系的位姿来表示。在一些实施例中,位姿标识图案设置在执行臂末端上适于被图像采集设备采集图像的区域,例如,在工作过程中可以被图像采集设备的视场覆盖的区域或者在工作过程中不容易被干扰或遮挡的区域。
图6示出根据一些实施例的包括多个位姿标识的标签600的示意图。图7示出设置在执行臂末端周侧并形成圆筒形的标签700的示意图。可以理解,简单起见,标签600可以与标签700包括相同的位姿标识图案。
参看图6,多个位姿标识可以包括多个不同的位姿标识图案610。多个位姿标识还可以包括在多个不同的位姿标识图案610中的多个位姿标识图案角点P6,在本公开中以“〇”符号表示位姿标识图案角点。在一些实施例中,可以通过识别位姿标识图案610或其中的位姿标识图案角点P6确定位姿标识。
参看图7,在周向设置状态下,标签600变为空间构造为圆筒形的标签700。在一些实施例中,位姿标识的绕轴角度或者滚转角可以通过位姿标识图案或位姿标识图案角点的绕轴角度表示。每个位姿标识图案或位姿标识图案角点标识的绕轴角度是已知的或预先确定的。在一些实施例中,基于多个位姿标识(例如位姿标识图案或位姿标识图案角点)的分布,可以确定每个位姿标识所标识的绕轴角度。在一些实施例中,多个位姿标识可以均匀分布(例如,标签600中的位姿标识图案角点等间距分布,标签700中的位姿标识图案角点等分布角分布)。另一些实施例中,多个位姿标识可以非均匀分布。在一些实施例中,基于多个位姿标识的分布,每个位姿标识图案可以用于标识特定的绕轴角度,每个位姿标识图案与所标识的绕轴角度具有一一对应关系。在本公开中,绕轴角度或者滚转角是指绕Z轴(例如,执行臂的末端坐标系{wm}的Z轴)的角度。在一些实施例中,Z轴可以是沿执行臂末端的切线方向。
如图7所示,标签700中多个不同的位姿标识图案710沿圆柱形结构周向均匀分布,多个位姿标识图案角点均匀分布在执行臂的末端坐标系{wm}的XY平面的截面圆720上,则任意相邻的位姿标识图案角点的分布角(例如,角度α0)相等。设定X轴指向的位姿标识图案角点P7,P7作为标识0°绕轴角度的参照角点(位姿标识图案角点P7所在的位姿标识图案作为参照图案),则可以根据任意位姿标识图案角点与位姿标识图案角点P7的位置关系确定该位姿标识图案角点标识的绕轴角度。在一些实施例中,位姿标识图案角点标识的绕轴角度可以基于以下公式(15)确定:
αm=α0(m-1) (15)
其中,αm为以位姿标识图案角点P7作为第一个位姿标识图案角点,按照截面圆720的顺时针方向,第m个位姿标识图案角点的绕轴角度。
参看图3,在步骤303,获取定位图像。在一些实施例中,定位图像中包含执行臂的末端上的多个位姿标识。在一些实施例中,可以从如图2所示的图像采集设备250接收定位图像。例如,控制装置220可以接收图像采集设备250主动发送的定位图像。或者,控制装置220可以向图像采集设备250发送图像请求指令,图像采集设备250响应图像请求指令向控制装置220发送定位图像。
继续参看图3,在步骤305,在定位图像中,识别位于执行臂的末端上的多个位姿标识,多个位姿标识包括不同的位姿标识图案。例如,识别位于执行臂的末端上的多个位姿标识的示例性方法可以包括如图10、图12、图14和图15所示的方法。在一些实施例中,控制装置220可以通过图像处理算法识别定位图像中的部分或全部的位姿标识。在一些实施例中,图像处理算法可以包括特征识别算法,图像处理算法可以提取或识别位姿标识的特征。例如,图像处理算法可以包括角点检测算法,用于检测位姿标识图案角点。该角点检测算法可以是包括但不限于基于灰度图的角点检测、基于二值图像的角点检测、基于轮廓曲线的角点检测中的一种。例如,图像处理算法可以是颜色特征提取算法,用于检测位姿标识图案中的颜色特征。再例如,图像处理算法可以是轮廓检测算法,用于检测位姿标识图案的轮廓特征。在一些实施例中,控制装置可以通过识别模型识别定位图像中的部分或全部的位姿标识。
继续参看图3,在步骤307,基于多个位姿标识,确定执行臂的末端的实际位姿。在一些实施例中,方法300还包括:确定多个位姿标识在定位图像中的二维坐标;以及基于多个位姿标识在定位图像中的二维坐标和多个位姿标识相对执行臂的末端坐标系的三维坐标,确定执行臂的末端坐标系相对参考坐标系的位姿,作为执行臂的末端的实际位姿。在一些实施例中,位姿标识的坐标可以通过位姿标识图案角点的坐标表示。例如,位姿标识在定位图像中的二维坐标和在执行臂的末端坐标系中的三维坐标可以通过位姿标识图案角点的坐标表示。在一些实施例中,可以基于多个位姿标识图案角点在定位图像中的二维坐标和在执行臂的末端坐标系中的三维坐标,确定执行臂的末端坐标系相对参考坐标系的位姿,作为执行臂的末端的实际位姿。
在一些实施例中,方法300还可以包括:基于多个位姿标识图案角点在定位图像中的二维坐标、多个位姿标识图案角点在执行臂的末端坐标系中的三维坐标和相机坐标系相对参考坐标系的变换关系,确定执行臂的末端坐标系相对参考坐标系的位姿。
在一些实施例中,相机坐标系相对参考坐标系的变换关系可以是已知的。例如,参考坐标系为世界坐标系,相机坐标系相对世界坐标系的变换关系可以根据相机摆放的位姿确定。另一些实施例中,根据实际的需求,参考坐标系也可以是相机坐标系本身。
在一些实施例中,基于相机成像原理与投影模型,基于多个位姿标识图案角点在定位图像中的二维坐标和多个位姿标识图案角点在执行臂的末端坐标系中的三维坐标,确定执行臂的末端坐标系相对相机坐标系的位姿。基于执行臂的末端坐标系相对相机坐标系的位姿和相机坐标系相对参考坐标系的变换关系,可以得到执行臂的末端坐标系相对参考坐标系的位姿。在一些实施例中,还可以考虑相机的内参。例如,相机的内参可以是如图2所示的图像采集设备250的相机内参。相机的内参可以是已知的或者经过标定而得到的。在一些实施例中,相机坐标系可以理解为以相机原点建立的坐标系。例如,以相机的光心为原点建立的坐标系或者以相机的镜头中心为原点建立的坐标系。当相机为双目相机时,相机坐标系的原点可以是相机左镜头的中心,或者右镜头的中心,或者左右镜头中心连线上的任意一点(例如该连线的中点)。
在一些实施例中,执行臂的末端坐标系{wm}相对参考坐标系(例如,世界坐标系){w}的位姿可以基于以下公式(16)确定:
其中,wRwm为执行臂的末端坐标系相对参考坐标系的姿态,wPwm为执行臂的末端坐标系相对参考坐标系的位置,wRlens为相机坐标系相对参考坐标系的姿态,wPlens为相机坐标系相对参考坐标系的位置,lensRwm为执行臂的末端坐标系相对相机坐标系的姿态,lensPwm为执行臂的末端坐标系相对相机坐标系的位置。
本公开一些实施例提供了确定多个位姿标识相对执行臂的末端坐标系的三维坐标的方法。在一些实施例中,基于多个位姿标识的分布,确定多个位姿标识相对执行臂的末端坐标系的三维坐标。例如,基于多个位姿标识图案角点的分布,确定多个位姿标识图案角点在执行臂的末端坐标系中的三维坐标。
图8示出根据本公开一些实施例的确定多个位姿标识相对执行臂的末端坐标系的三维坐标的方法800的流程图。如图8所示,该方法800中的部分或全部步骤可以由控制装置(例如,图1所示的控制装置120,图2所示的控制装置220,或图17所示的控制装置1720)来执行。方法800中的部分或全部步骤可以由软件、固件和/或硬件来实现。在一些实施例中,方法800可以由机器人***(例如,图1所示的机器人***100或图17所示的机器人***1700)执行。在一些实施例中,方法800可以实现为计算机可读的指令。这些指令可以由通用处理器或专用处理器(例如,图17所示的控制装置1720)读取并执行。在一些实施例中,这些指令可以存储在计算机可读介质上。
参看图8,在步骤801,基于多个位姿标识的分布,确定多个位姿标识相对执行臂的末端坐标系的Z轴的绕轴角度。在一些实施例中,可以基于多个位姿标识图案,确定多个位姿标识相对执行臂的末端坐标系的Z轴的绕轴角度。例如,每个位姿标识图案可以标识特定的绕轴角度,不同的位姿标识图案与所标识的绕轴角度一一对应。基于识别出位姿标识图案以及位姿标识图案与绕轴角度的对应关系,可以确定被识别出的位姿标识图案所标识的绕轴角度。应理解,每个位姿标识图案的分布是已知的或预先确定的。在一些实施例中,多个位姿标识图案或者多个位姿标识图案角点的分布可以是如图6所示的分布。在一些实施例中,每个位姿标识图案角点标识的绕轴角度还可以基于公式(15)确定。
参看图8,在步骤803,基于多个位姿标识的绕轴角度,确定多个位姿标识相对执行臂的末端坐标系的三维坐标。在一些实施例中,如图7所示,每个位姿标识图案角点均位于在截面圆720的圆周上,截面圆720的圆心与半径r均是已知的。以位姿标识图案角点P7作为参照角点,位姿标识图案角点P7在执行臂的末端坐标系{wm}的三维坐标为(r,0,0)。在一些实施例中,每个位姿标识图案角点在执行臂的末端坐标系{wm}中的三维坐标可以基于以下公式(17)确定:
Cm=[r·cosαm r·sinαm 0]T (17)
其中,Cm为以位姿标识图案角点P7作为第一个位姿标识图案角点,按照截面圆720的顺时针方向,第m个位姿标识图案角点标识的特定的绕轴角度可以基于多个位姿标识在执行臂的末端坐标系{wm}中的三维坐标。
在一些实施例中,基于公式(15)确定第m个位姿标识图案角点标识的绕轴角度αm,之后基于公式(15)确定的绕轴角度αm和公式(17)确定三维坐标Cm。
图9示出根据本公开另一些实施例的确定多个位姿标识相对执行臂的末端坐标系的三维坐标的方法900的流程图。方法900可以是图8所示方法800的替换实施例。如图9所示,该方法900中的部分或全部步骤可以由控制装置(例如,图1所示的控制装置120,图2所示的控制装置220,或图17所示的控制装置1720)来执行。方法900中的部分或全部步骤可以由软件、固件和/或硬件来实现。在一些实施例中,方法900可以由机器人***(例如,图1所示的机器人***100或图17所示的机器人***1700)执行。在一些实施例中,方法900可以实现为计算机可读的指令。这些指令可以由通用处理器或专用处理器(例如,图17所示的控制装置1720)读取并执行。在一些实施例中,这些指令可以存储在计算机可读介质上。
参看图9,在步骤901,基于多个位姿标识中的至少两个,确定多个位姿标识的排布顺序。在一些实施例中,多个位姿标识的排布顺序可以通过多个位姿标识图案的排布顺序表示。在一些实施例中,通过识别任意两个位姿标识图案确定多个位姿标识的排布顺序。应理解,多个位姿标识包括不同的位姿标识图案,在已知任意两个位姿标识图案的情况下,可以基于多个位姿标识图案已知的分布(例如,图6所示标签600中不同位姿标识图案的分布,或者图7所示标签700中不同位姿标识图案的分布),确定定位图像中多个位姿标识的排布顺序,例如顺时针排布或逆时针排布。
参看图9,在步骤903,基于多个位姿标识的排布顺序,确定多个位姿标识相对执行臂的末端坐标系的三维坐标。在一些实施例中,基于多个位姿标识已知的分布,可以确定每个位姿标识在执行臂的末端坐标系中的三维坐标,每个位姿标识的三维坐标可以通过位姿标识图案角点在执行臂的末端坐标系中的三维坐标表示,每个位姿标识图案对应执行臂的末端坐标系中的一个坐标点。在确定多个位姿标识图案的排布顺序的之后,基于识别出的位姿标识图案可以确定其余的位姿标识图案,进而可以确定每个位姿标识图案在执行臂的末端坐标系中的三维坐标。在一些实施例中,识别定位图像中的多个位姿标识角点,确定多个位姿标识角点中的任意两个对应的位姿标识图案。基于识别出的两个位姿标识图案确定多个位姿标识图案角点的排布顺序,进而可以确定每个位姿标识图案角点在执行臂的末端坐标系中的三维坐标。此外,基于排布顺序,可以确定所有位姿标识图案的分布,从而以特定位姿图案匹配模板与定位图像上对应位置处的位姿标识图案进行匹配,提高了数据处理速度。在一些实施例中,位姿图案匹配模板与位姿标识图案角点处的图案匹配可以与方法1000中的步骤1003类似地实现。
本公开一些实施例提供了识别位姿标识的方法。图10示出根据本公开一些实施例的识别位姿标识的方法1000的流程图。如图10所示,该方法1000中的部分或全部步骤可以由控制装置(例如,图1所示的控制装置120,图2所示的控制装置220,或图17所示的控制装置1720)来执行。方法1000中的部分或全部步骤可以由软件、固件和/或硬件来实现。在一些实施例中,方法1000可以由机器人***(例如,图1所示的机器人***100或图17所示的机器人***1700)执行。在一些实施例中,方法1000可以实现为计算机可读的指令。这些指令可以由通用处理器或专用处理器(例如,图17所示的控制装置1720)读取并执行。在一些实施例中,这些指令可以存储在计算机可读介质上。
参考图10,在步骤1001,从定位图像中确定多个候选位姿标识。在一些实施例中,位姿标识可以包括在位姿标识图案中的位姿标识图案角点。候选位姿标识的坐标或坐标系原点可以通过候选位姿标识图案角点表示。在一些实施例中,候选位姿标识图案角点可以是指经过对定位图像进行初步处理或者初步识别得到的可能的位姿标识图案角点。
在一些实施例中,方法1000还可以包括在定位图像中确定感兴趣区域(Region ofInterest,ROI)。例如,可以先从定位图像中截取ROI,从ROI中确定多个候选位姿标识。其中,ROI可以是定位图像的全图像,也可以是部分区域。例如,可以基于上一帧图像(例如,上一图像处理周期的定位图像)确定的多个位姿标识图案角点一定范围内的区域截取当前帧的ROI。对非第一帧的定位图像,ROI可以为上一图像处理周期的多个位姿标识图案角点的坐标构成的虚点为中心的一定距离范围内的区域。一定距离范围可以是位姿标识图案角点平均间隔距离的固定倍数,例如两倍。应理解,预定倍数还可以是上一图像处理周期中多个候选位姿标识图案角点平均间隔距离的可变倍数。
在一些实施例中,方法1000还可以包括确定定位图像中各像素点的角点似然值(Corner Likelihood,CL)。在一些实施例中,像素点的角点似然值可以是表征像素点作为特征点(例如,角点)的可能性的数值。在一些实施例中,在计算各像素点的角点似然值之前可以对定位图像进行预处理,之后确定预处理之后的图像中各像素点的角点似然值。图像的预处理例如可以包括:图像灰度化、图像去噪、图像增强中的至少一种。例如,图像预处理可以包括:从定位图像中截取ROI,将ROI转为相应的灰度图像。
在一些实施例中,确定ROI中的每个像素点的角点似然值的方式例如可以包括对ROI范围内每一个像素点进行卷积操作,得到每个像素点的一阶和/或二阶导数。利用ROI范围内每个像素点的一阶和/或二阶导数求出每个像素点的角点似然值。示例性地,各像素的角点似然值可以基于以下公式(18)确定:
其中,τ为设定的常数,例如设定为2;Ix、I45、Iy、In45分别是像素点在0、π/4、π/2、-π/4四个方向的一阶导数;Ixy和I45_45分别是像素点在0,π/2和π/4,-π/4方向的二阶导数。
在一些实施例中,方法1000还可以包括将ROI划分成多个子区域。例如,可以采用非极大抑制法在一个ROI范围中平均分割出多个子图像。在一些实施例中,可以将ROI平均分割成5×5像素的多个子图像。上述实施例为示例性的,并非限制性的,应当理解,还可以将定位图像或ROI分割成其他尺寸大小的多个子图像,例如,分割成9×9像素的多个子图像。
在一些实施例中,方法1000还可以包括确定每个子区域中角点似然值最大的像素以形成像素集合。在一些实施例中,像素集合作为从定位图像中确定的多个候选标识。例如,可以确定每个子图像中的CL值最大的像素点,将每个子图像中的CL值最大的像素点与第一阈值进行比较,确定CL值大于第一阈值的像素的集合。在一些实施例中,第一阈值可以设定为0.06。应当理解,第一阈值还可以设定为其他值。
参看图10,步骤1003,基于多个不同的位姿图案匹配模板,从多个候选位姿标识中识别第一位姿标识。在一些实施例中,将多个不同的位姿图案匹配模板分别与候选位姿标识图案角点处的图案进行匹配,以识别第一位姿标识。例如,确定达到预设位姿图案匹配度标准的候选位姿标识图案角点为第一位姿标识图案角点。在一些实施例中,位姿图案匹配模板与位姿标识图案角点附近区域的图案具有相同或相似的特征。若位姿图案匹配模板与候选位姿标识图案角点附近区域的图案的匹配度达到预设位姿图案匹配度标准(例如,匹配度高于阈值),则可以认为候选位姿标识图案角点附近区域的图案与位姿图案匹配模板具有相同或相似的特征,进而可认为当前的候选位姿标识图案角点为位姿标识图案角点。
在一些实施例中,确定像素集合中CL值最大的像素点,作为候选位姿标识图案角点。例如,可以将该像素集合中的所有像素按CL值从大到小的顺序排序,并将CL值最大的像素作为候选位姿标识图案角点。在一些实施例中,在确定了候选位姿标识图案角点之后,将位姿图案匹配模板与候选位姿标识图案角点处的图案进行匹配,如果达到了预设位姿图案匹配度标准,则确定候选位姿标识图案角点为识别出的第一位姿标识图案角点。
在一些实施例中,方法1000还可以包括响应于匹配失败,确定像素集合中剩余像素的角点似然值最大的像素作为候选位姿标识图案角点。例如,如果候选位姿标识图案角点未达到预设的匹配度标准,则选择次级CL值的像素点(CL值第二大的像素点)作为候选位姿标识图案角点,将位姿图案匹配模板与该候选位姿标识图案角点处的图案进行匹配,依次类推,直至识别出第一位姿标识图案角点。
在一些实施例中,位姿标识图案可以为黑白相间的图形(例如,棋盘格图形),因此位姿图案匹配模板可以为相同的图形,利用位姿图案匹配模板的灰度分布GM与候选位姿标识图案角点对应的像素点的像素邻域灰度分布Gimage间的相关性系数(CorrelationCoefficient,CC)来进行匹配。像素点的像素邻域灰度分布Gimage为以该像素点为中心一定范围内(例如,10×10像素)像的像素的灰度分布。相关性系数可以基于以下公式(19)确定:
其中,Var()为方差函数,Cov()为协方差函数。在一些实施例中,当相关性系数小于0.8时,像素领域内的灰度分布与位姿图案匹配模板相关性较低,则判定该角点似然值最大的候选位姿标识图案角点不是位姿标识图案角点,否则认为该角点似然值最大的候选位姿标识图案角点是位姿标识图案角点。
在一些实施例中,方法1000还可以包括确定候选位姿标识图案角点的边缘方向。例如,如图11所示,候选位姿标识图案角点为位姿标识图案1100中的角点P11,角点P11的边缘方向可以是指形成角点P11的边缘的方向,如图11中虚线箭头示意的方向。
在一些实施例中,边缘方向可以通过对以候选位姿标识图案角点为中心的一定范围邻域(例如10×10像素)的每个像素在平面坐标系的X方向和Y方向的一阶导数值(Ix和Iy)确定。例如,边缘方向可以基于以下公式(20)进行计算:
其中,一阶导数(Ix和Iy)可以通过对一定范围邻域范围内每一个像素点进行卷积操作得到。一些实施例中,通过对每个范围邻域内的像素点的边缘方向Iangle和对应的权重Iweight进行聚类计算获得该像素点的边缘方向,选择权重Iweight占比最大的类对应的Iangle作为边缘方向。需要说明的是,如果存在多个边缘方向,则选择权重Iweight占比最大的多个类对应的Iangle作为边缘方向。
在一些实施例中,聚类计算所用的方法可以是K均值方法、BIRCH(BalancedIterative Reducing and Clustering using Hierarchies,基于层次结构的平衡迭代聚类方法)方法、DBSCAN(Density-Based Spatial Clustering of Applications withNoise,具有噪声的基于密度的聚类方法)方法、GMM(Gaussian Mixed Model,高斯混合模型)方法中的任意一种。
在一些实施例中,方法1000还可以包括基于边缘方向旋转位姿图案匹配模板。根据边缘方向旋转位姿图案匹配模板,可以将位姿图案匹配模板与候选位姿标识图案角点处的图像对齐。候选位姿标识图案角点的边缘方向可以用于确定该候选标识图案角点处的图像在定位图像中的设置方向。在一些实施例中,根据边缘方向旋转位姿图案匹配模板,可以将位姿图案匹配模板调整至与候选位姿标识图案角点处的图像方向相同或接近相同以便于进行图像匹配。
参看图10,步骤1005,以第一位姿标识作为起点,搜索位姿标识。例如,图12示出根据本公开一些实施例的用于搜索位姿标识的方法1200的流程图。如图12所示,该方法1200中的部分或全部步骤可以由控制装置(例如,图1所示的控制装置120,图2所示的控制装置220,或图17所示的控制装置1720)来执行。方法1200中的部分或全部步骤可以由软件、固件和/或硬件来实现。在一些实施例中,方法1200可以由机器人***(例如,图1所示的机器人***100或图17所示的机器人***1700)执行。在一些实施例中,方法1200可以实现为计算机可读的指令。这些指令可以由通用处理器或专用处理器(例如,图17所示的控制装置1720)读取并执行。在一些实施例中,这些指令可以存储在计算机可读介质上。
参看图12,在步骤1201,以第一位姿标识作为起点,搜索第二位姿标识。在一些实施例中,以第一位姿标识图案角点作为起点,在设定的搜索方向上搜索第二位姿标识图案角点。在一些实施例中,设定的搜索方向可以包括:第一位姿标识图案角点的正前方(对应0°角度方向)、正后方(对应120°角度方向)、正上方(90°角度方向)、正下方(-90°角度方向)和斜向(例如±45°角度方向)中的至少一个方向。
在一些实施例中,设定的搜索方向为n个,例如在8个方向进行搜索,每个搜索方向vsn可以基于以下公式(21)确定:
vsn=[cos(n·π/4)sin(n·π/4)],(n=1,2,…,8) (21)
在一些实施例中,当前步骤中设定的搜索方向可以根据上一帧确定的多个位姿标识图案角点中相邻位姿标识图案角点之间的偏差角度确定。示例性地,预定的搜索方向基于以下公式(22)确定:
其中,(xj,yj)为上一帧(或者上个图像处理周期)确定的多个位姿标识图案角点的二维坐标;nlast为上一帧确定的多个位姿标识图案角点的个数;vs1为第一个设定的搜索方向;vs2为第二个设定的搜索方向。
在一些实施例中,如图13所示,以第一位姿标识图案角点P1301的坐标位置作为搜索起点,在设定的搜索方向上搜索第二位姿标识图案角点P1302的坐标位置具体可以包括:以第一位姿标识图案角点P1301的坐标位置作为搜索起点,通过搜索框(例如,图13中的虚线框)以一定的搜索步长在设定的搜索方向V1301上搜索位姿标识图案角点。若搜索框内存在至少一个候选位姿标识图案角点,则优先选择搜索框内角点似然值最大的候选位姿标识图案角点为第二位姿标识图案角点P1302。在搜索框限制在合适的大小情况下,以第一位姿标识图案角点P1301的坐标位置作为搜索起点进行第二位姿标识图案角点P1302搜索时,搜索框内出现的候选位姿标识图案角点中角点似然值最大的候选位姿标识图案角点为位姿标识图案角点的可能性较大。因此,可以认为搜索框内角点似然值最大的候选位姿标识图案角点为第二位姿标识图案角点P1302,以便提高数据处理速度。其他实施方式中,为了提高位姿标识图案角点识别的准确度,选择搜索框内出现的候选位姿标识图案角点中角点似然值最大的候选位姿标识图案角点进行角点的识别,以确定该角点似然值最大的候选位姿标识图案角点是否为位姿标识图案角点。例如,将位姿图案匹配模板与该角点似然值最大的候选位姿标识图案角点处一定范围内的图像进行匹配,满足预设位姿图案匹配度标准的候选位姿标识图案角点可以认为是搜索到的第二位姿标识图案角点P1302。
在一些实施例中,继续参看图13,搜索框的大小可以逐步增大,从而搜索范围逐步增大。搜索步长可与搜索框的边长同步变化。其他实施方式中,搜索框的大小也可以为固定的大小。
在一些实施例中,位姿标识图案可以为黑白相间的棋盘格图形,可以基于公式(19)中的相关性系数来进行图案匹配。如果相关性系数大于阈值,则认为该角点似然值最大的候选位姿标识图案角点是位姿标识图案角点,记为第二位姿标识图案角点。
图14示出根据本公开一些实施例的用于搜索第二位姿标识的方法1400的流程图。如图14所示,该方法1400中的部分或全部步骤可以由控制装置(例如,图1所示的控制装置120,图2所示的控制装置220,或图17所示的控制装置1720)来执行。方法1400中的部分或全部步骤可以由软件、固件和/或硬件来实现。在一些实施例中,方法1400可以由机器人***(例如,图1所示的机器人***100或图17所示的机器人***1700)执行。在一些实施例中,方法1400可以实现为计算机可读的指令。这些指令可以由通用处理器或专用处理器(例如,图17所示的控制装置1720)读取并执行。在一些实施例中,这些指令可以存储在计算机可读介质上。在一些实施例中,方法1200中的步骤1201可以与方法1400类似地实现。
参看图14,在步骤1401,以第一位姿标识作为起点,搜索第二位姿标识的候选位姿标识图案角点。在一些实施例中,搜索第二位姿标识的候选位姿标识图案角点可以与图13所示搜索第二位姿标识图案角点P1302类似地实现。
在步骤1403,基于多个位姿标识的分布,确定第一位姿图案匹配模板和第二位姿图案匹配模板,第一位姿图案匹配模板和第二位姿图案匹配模板对应于与第一位姿标识相邻的位姿标识。在一些实施例中,步骤1403可以在步骤1401之前或者之后执行,步骤1403也可以与步骤1401同步执行。在一些实施例中,可以基于第一位姿标识包括的位姿标识图案以及多个位姿标识图案的分布,确定第一位姿标识相邻的位姿标识包括的位姿标识图案,进而确定第一位姿图案匹配模板和第二位姿图案匹配模板。
在步骤1405,将第一位姿图案匹配模板和/或第二位姿图案匹配模板与第二位姿标识的候选位姿标识图案角点位置处的图案进行匹配,以识别第二位姿标识。在一些实施例中,可以基于公式(19)中的相关性系数将第一位姿图案匹配模板和/或第二位姿图案匹配模板与第二位姿标识的候选位姿标识图案角点位置处的图案进行匹配。如果相关性系数大于阈值,则确定第二位姿标识的候选位姿标识图案角点作为第二位姿标识的位姿标识图案角点,并且确定相关性系数大于阈值的位姿图案匹配模板(第一位姿图案匹配模板或第二位姿图案匹配模板)对应的图案为第二位姿标识的位姿标识图案。
参看图12,在步骤1203,基于第一位姿标识、第二位姿标识,确定搜索方向。在一些实施例中,搜索方向包括:第一搜索方向和第二搜索方向。第一搜索方向可以是以第一位姿标识图案角点的坐标位置为起点,且远离第二位姿标识图案角点的方向。第二搜索方向可以是以第二位姿标识图案角点的坐标位置为起点,且远离第一位姿标识图案角点的方向。例如,图13中所示的搜索方向V1302。
参看图12,在步骤1205,以第一位姿标识或第二位姿标识作为起点,在搜索方向上搜索位姿标识。在一些实施例中,若以第一位姿标识图案角点为新的起点,则可以以上述实施例中的第一搜索方向作为搜索方向进行位姿标识图案角点的搜索。若以第二位姿标识图案角点为新的搜索起点,则可以以上述实施例中的第二搜索方向作为搜索方向进行位姿标识图案角点的搜索。在一些实施例中,搜索新的位姿标识图案角点(例如,图13中的第三位姿标识图案角点P1303)可以与方法1200中的步骤1201或者方法1500类似地执行。在一些实施例中,搜索步长可以是第一位姿标识图案角点P1301和第二位姿标识图案角点P1302之间的距离L1。
图15示出根据本公开一些实施例的用于搜索位姿标识的方法1500的流程图。如图15所示,该方法1500中的部分或全部步骤可以由控制装置(例如,图1所示的控制装置120,图2所示的控制装置220,或图17所示的控制装置1720)来执行。方法1500中的部分或全部步骤可以由软件、固件和/或硬件来实现。在一些实施例中,方法1500可以由机器人***(例如,图1所示的机器人***100或图17所示的机器人***1700)执行。在一些实施例中,方法1500可以实现为计算机可读的指令。这些指令可以由通用处理器或专用处理器(例如,图17所示的控制装置1720)读取并执行。在一些实施例中,这些指令可以存储在计算机可读介质上。在一些实施例中,方法1200中的步骤1205可以与方法1500类似地实现。
参看图15,在步骤1501,以第一位姿标识或第二位姿标识作为起点,搜索第三位姿标识的候选位姿标识图案角点。在一些实施例中,搜索第三位姿标识的候选位姿标识图案角点可以与图13所示搜索第三位姿标识图案角点P1303类似地实现。
在步骤1503,基于多个位姿标识的分布,确定第三位姿图案匹配模板,第三位姿图案匹配模板对应于与第一位姿标识相邻或与第二位姿标识相邻的位姿标识。在一些实施例中,可以基于第一位姿标识或第二位姿标识包括的位姿标识图案以及多个位姿标识图案的分布,确定第一位姿标识或第二位姿标识相邻的位姿标识包括的位姿标识图案,进而确定第三位姿图案匹配模板。
在步骤1505,将第三位姿图案匹配模板与第三位姿标识的候选位姿标识图案角点位置处的图案进行匹配,以识别第三位姿标识。在一些实施例中,步骤1505可以与步骤1405类似地实现。
在一些实施例中,响应于搜索距离大于搜索距离阈值,确定像素集合中剩余像素的角点似然值最大的像素作为候选位姿标识图案角点;以及将多个不同的位姿图案匹配模板分别与候选位姿标识图案角点位置处的图案进行匹配,以识别第一位姿标识。在一些实施例中,在确定像素集合中剩余像素的角点似然值最大的像素作为新的候选位姿标识图案角点之后,可以基于与步骤1003类似地方法识别新的第一位姿标识。在一些实施例中,搜索距离大于搜索距离阈值可以理解为在部分或者全部的搜索方向上的搜索距离大于搜索距离阈值。在一些实施例中,搜索距离阈值可以包括第N-1个位姿标识图案角点和第N-2个位姿标识图案角点的距离的设定倍数,其中N≥3。
例如,搜索距离阈值为两倍的前两个位姿标识图案角点的距离。这样,搜索第三个位姿标识图案角点的最大搜索距离是第一位姿标识图案角点和第二位姿标识图案角点的距离的两倍,若在搜索方向上达到该搜索距离还未搜索到位姿标识图案角点,则确定像素集合中剩余像素的角点似然值最大的像素作为新的候选位姿标识图案角点,以及识别新的第一位姿标识,并且当前搜索过程也相应停止。在一些实施例中,与方法1000类似,可以重新确定新的第一位姿标识图案角点,并且与方法1200类似,可以以新的位姿标识图案角点为搜索起点,搜索其余的位姿标识图案角点。
在一些实施例中,响应于识别到的位姿标识图案角点数量大于或等于位姿标识数量阈值,可以基于搜索到的位姿标识的搜索,确定执行臂的末端相对参考坐标系的位姿,对位姿标识图案角点的搜索也相应停止。例如,当识别到四个位姿标识图案角点,停止对位姿标识图案角点的搜索。
在一些实施例中,响应于识别到的位姿标识数量小于位姿标识数量阈值,确定像素集合中剩余像素的角点似然值最大的像素作为候选位姿标识图案角点;以及将多个不同的位姿图案匹配模板分别与候选位姿标识图案角点位置处的图案进行匹配,以识别第一位姿标识。在一些实施例中,若识别到的位姿标识(例如,位姿标识图案角点)总数小于设定的位姿标识数量阈值,则认为上述步骤中基于第一位姿标识的搜索失败。在一些实施例中,在搜索失败的情况下,确定像素集合中剩余像素的角点似然值最大的像素作为新的候选位姿标识图案角点,之后可以基于与步骤1003类似地方法识别新的第一位姿标识。在一些实施例中,与方法1000类似,可以重新确定新的第一位姿标识图案角点,并且与方法1200类似,可以以新的位姿标识图案角点为搜索起点,搜索其余的位姿标识图案角点。
在一些实施例中,在搜索到或者识别到位姿标识图案角点之后,还可以对已确定的位姿标识图案角点进行亚像素定位,以提高位姿标识图案角点的位置精度。
在一些实施例中,可以对像素点的CL值基于模型进行拟合,以确定经亚像素定位后的位姿标识图案角点的坐标。例如,ROI中每个像素点的CL值的拟合函数可以为二次曲面函数,该函数的极值点为亚像素点。拟合函数可以基于以下公式(23)和(24)确定:
S(x,y)=ax2+by2+cx+dy+exy+f (23)
其中,S(x,y)为每个ROI中的所有像素点的CL值拟合函数,a、b、c、d、e、f为系数;xc为位姿标识的x坐标,yc为位姿标识的y坐标。
继续参看图3,在步骤309,响应于目标位姿与实际位姿满足误差检测条件,生成与故障相关的控制信号。在获得执行臂的末端的目标位姿与实际位姿之后,控制装置确定执行臂的末端的位姿误差,以判断执行臂是否正确地进行到了操作者期望的位置与姿态,进而判断机器人***是否出现故障。在一些实施例中,当执行臂的目标位姿与实际位姿满足误差检测条件(例如大于等于误差阈值)时,控制装置判断执行臂没有正确移动到与主操作器对应的位置与姿态,发出与故障相关的控制信号。例如,控制装置可以发出第一报警信号,该第一报警信号指示执行臂的控制发生故障。
在一些实施例中,控制装置可以在遥操作中实时获取执行臂的多组目标位姿和实际位姿,基于该多组目标位姿和实际位姿综合判断执行臂的运行状况。在一些实施例中,控制装置可以以预定周期确定执行臂末端的目标位姿和实际位姿,通过多个检测循环对执行臂进行误差检测,并应用数理统计方法对多组误差进行分析,在满足误差检测条件时发出与故障相关的控制信号。
例如,在第k次误差检测循环中,位姿差可以表示如下:
其中,为第k次误差检测循环时执行臂的位置差,为第k次误差检测循环时执行臂的角度差,Pt k为第k次误差检测循环时执行臂的目标位置,Rt k为第k次误差检测循环时执行臂的目标姿态,为第k次误差检测循环时执行臂的实际位置,Rr k为第k次误差检测循环时执行臂的实际姿态,表示与之间的转角。
在一些实施例中,控制装置可以将多个检测循环中获得的误差储存至存储器,并对这些误差进行累计,当误差的累计值满足误差检测条件(例如,超过阈值)时,发出与故障相关的控制信号。
在一些实施例中,方法300还包括响应于目标位姿与实际位姿满足误差检测条件,接收用于驱动执行臂的至少一个驱动装置的状态信息,以及响应于状态信息与至少一个驱动装置的驱动信息满足故障检测条件,发出第二报警信号,第二报警信号指示执行臂的驱动装置发生故障。
在一些实施例中,驱动装置设置有驱动装置传感器,驱动装置传感器与驱动装置耦合并且用于获得驱动装置的状态信息。例如,驱动装置可以包括至少一个驱动电机,驱动装置传感器可以包括电位计或者编码器,驱动装置传感器与驱动电机耦合以记录和输出电机的状态信息。控制装置基于执行臂的末端的目标位姿向至少一个驱动装置发送驱动信息,并通过驱动装置传感器接收用于驱动执行臂的至少一个驱动装置的状态信息,在状态信息与驱动信息满足故障检测条件(例如大于等于误差阈值)时,发出用于指示驱动执行臂的至少一个驱动装置发生故障的第二报警信号。
本公开一些实施例中,本公开还提供了一种计算机设备,计算机设备包括存储器和处理器。存储器可以用于存储有至少一条指令,处理器与存储器耦合,用于执行至少一条指令以执行本公开的方法中的部分步骤或全部步骤,如图3、图4、图8、图9、图10、图12、图14和图15中公开的方法中的部分步骤或全部步骤。
图16示出根据本公开一些实施例的计算机设备1600的示意框图。参看图16,该计算机设备1600可以包括中央处理单元(CPU)1601、包括随机存取存储器(RAM)1602和只读存储器(ROM)1603的***存储器1604,以及连接各部件的***总线1605。计算机设备1600还可以包括输入/输出***,和用于存储操作***1613、应用程序1614和其他程序模块1615的大容量存储设备1607。输入/输出设备包括主要由显示器1608和输入设备1609组成的输入/输出控制器1610。
大容量存储设备1607通过连接到***总线1605的大容量存储控制器(未示出)连接到中央处理单元1601。大容量存储设备1607或者计算机可读介质为计算机设备提供非易失性存储。大容量存储设备1607可以包括诸如硬盘或者光盘只读存储器(Compact DiscRead-Only Memory,CD-ROM)驱动器之类的计算机可读介质(未示出)。
不失一般性,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、闪存或其他固态存储其技术,CD-ROM、或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知计算机存储介质不局限于上述几种。上述的***存储器和大容量存储设备可以统称为存储器。
计算机设备1600可以通过连接在***总线1605上的网络接口单元1611连接到网络1612。
***存储器1604或大容量存储设备1607还用于存储一个或者一个以上的指令。中央处理器1601通过执行该一个或一个以上指令来实现本公开一些实施例中的方法的全部或者部分步骤。
本公开一些实施例中,本公开还提供一种计算机可读存储介质,存储介质中存储有至少一条指令,该至少一条指令由处理器执行以使计算机执行本公开一些实施例的方法中的部分步骤或全部步骤,如图3、图4、图8、图9、图10、图12、图14和图15中公开的方法中的部分步骤或全部步骤。计算机可读存储介质的示例包括计算机程序(指令)的存储器,例如,只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)、磁带、软盘和光数据存储设备等。
图17示出根据本公开一些实施例的机器人***的示意图1700。如图17所示,机器人***1700,包括:主操作器1710、控制装置1720、驱动装置1760、从动工具1750、和图像采集设备1770。主操作器1710包括机械臂、设置在机械臂上的手柄以及设置在机械臂上的至少一个关节处的至少一个主操作器传感器,至少一个主操作器传感器用于获得至少一个关节的关节信息。在一些实施例中,主操作器1710包括六自由度机械臂,六自由度机械臂上的每一个关节处设置一个主操作器传感器,通过每个关节的主操作器传感器生成关节信息(如关节角度数据)。在一些实施例中,主操作器传感器采用电位计和/或编码器。在从动工具1750上设置有执行臂1740,在一些实施例中,执行臂1740包括多构节连续体可形变臂。在执行臂1740的末端1730上可以形成有或设置有多个位姿标识,多个位姿标识包括不同的位姿标识图案,在末端1730的远端可以设置有执行器。图像采集设备1770可以用于采集执行臂1740的定位图像。驱动装置1760用于驱动执行臂1740,至少一个驱动装置传感器与至少一个驱动装置耦合并且用于获得驱动信息。控制装置1720与主操作器1710、至少一个驱动装置1760以及图像采集设备1770通信连接,被配置为执行本公开一些实施例的方法中的部分步骤或全部步骤,如图3、图4、图8、图9、图10、图12、图14和图15中公开的方法中的部分步骤或全部步骤。
机器人对操作精度和人机交互体验要求很高。在机器人***操作过程中,执行臂如果无法准确、快递地移动目标位置和姿态,会降低操作者的操作体验,甚至会导致操作失败,产生不必要的风险。在本公开的实施例中,通过对执行臂的实际位姿进行检测,并与操作者所期望的执行臂的目标位姿进行实时比较,可以发现所存在的故障风险。本公开的实施例可以改善机器人***的操作性和安全性,降低机器人***操作过程中执行臂的位姿误差而带来的操作风险。
注意,上述仅为本公开的示例性实施例及所运用技术原理。本领域技术人员会理解,本公开不限于这里的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本公开的保护范围。因此,虽然通过以上实施例对本公开进行了较为详细的说明,但是本公开不仅仅限于以上实施例,在不脱离本公开构思的情况下,还可以包括更多其他等效实施例,而本公开的范围由所附的权利要求范围决定。
Claims (28)
1.一种误差检测方法,其特征在于,包括:
获得执行臂的末端的目标位姿;
获取定位图像;
在所述定位图像中,识别位于所述执行臂的末端上的多个位姿标识,所述多个位姿标识包括不同的位姿标识图案;
基于所述多个位姿标识,确定所述执行臂的末端的实际位姿;以及
响应于所述目标位姿与所述实际位姿满足误差检测条件,生成与故障相关的控制信号。
2.根据权利要求1所述的方法,其特征在于,获得执行臂的末端的目标位姿包括:
确定主操作器的当前位姿;以及
基于所述主操作器的当前位姿及所述主操作器与执行臂的末端的位姿关系,确定所述执行臂的末端的目标位姿。
3.根据权利要求2所述的方法,其特征在于,所述位姿关系包括以下中的至少一项:
所述执行臂的末端在参考坐标系中的位置变化量与所述主操作器在所述参考坐标系中的位置变化量成比例;或者
所述执行臂的末端在所述参考坐标系中的姿态变化量与所述主操作器在所述参考坐标系中的姿态变化量一致;或者
所述执行臂的末端在所述参考坐标系中的姿态与所述主操作器在所述参考坐标系中的姿态一致。
4.根据权利要求2所述的方法,其特征在于,还包括:
确定所述主操作器的先前位姿;
确定所述执行臂的末端的起始位姿;以及
基于所述主操作器的先前位姿和当前位姿以及所述执行臂的末端的起始位姿,确定所述目标位姿。
5.根据权利要求2所述的方法,其特征在于,还包括:
确定所述主操作器的手柄相对主操作器基坐标系的当前位置;
确定所述手柄相对主操作器基坐标系的先前位置;
确定所述执行臂的末端相对执行臂基坐标系的起始位置;以及
基于所述手柄相对所述主操作器基坐标系的先前位置和当前位置、所述执行臂基坐标系与所述主操作器基坐标系的变换关系、所述执行臂的末端相对所述执行臂基坐标系的起始位置,确定所述执行臂的末端相对所述执行臂基坐标系的目标位置。
6.根据权利要求2所述的方法,其特征在于,还包括:
确定所述主操作器的手柄相对所述主操作器基坐标系的当前姿态;
确定所述手柄相对所述主操作器基坐标系的先前姿态;
确定所述执行臂的末端相对所述执行臂基坐标系的起始姿态;以及
基于所述手柄相对所述主操作器基坐标系的先前姿态和当前姿态、所述执行臂基坐标系与所述主操作器基坐标系的变换关系、所述执行臂的末端相对所述执行臂基坐标系的起始姿态,确定所述执行臂的末端相对所述执行臂基坐标系的目标姿态。
7.根据权利要求5或6所述的方法,其特征在于,还包括:
基于所述执行臂基坐标系与相机坐标系的变换关系、所述相机坐标系与显示器坐标系的变换关系、所述显示器坐标系与所述主操作器基坐标系的变换关系,确定所述执行臂基坐标系与所述主操作器基坐标系的变换关系。
8.根据权利要求7所述的方法,其特征在于,
所述执行臂基坐标系与所述相机坐标系具有预定的变换关系。
9.根据权利要求2所述的方法,其特征在于,还包括:
接收所述主操作器的至少一个关节的当前关节信息;以及
基于所述主操作器的至少一个关节的当前关节信息,确定所述主操作器的当前位姿。
10.根据权利要求5所述的方法,其特征在于,还包括:
接收所述主操作器的至少一个关节的先前关节信息;
基于所述主操作器的至少一个关节的先前关节信息,确定所述主操作器的先前位姿;以及
接收上一轮检测循环获得的所述执行臂的末端的实际位姿,作为所述执行臂的末端的起始位姿。
11.根据权利要求1所述的方法,其特征在于,还包括:
基于所述多个位姿标识的分布,确定所述多个位姿标识相对执行臂的末端坐标系的Z轴的绕轴角度;以及
基于所述多个位姿标识的绕轴角度,确定所述多个位姿标识相对所述执行臂的末端坐标系的三维坐标。
12.根据权利要求11所述的方法,其特征在于,还包括:
确定所述多个位姿标识在所述定位图像中的二维坐标;以及
基于所述多个位姿标识在所述定位图像中的二维坐标和所述多个位姿标识相对所述执行臂的末端坐标系的三维坐标,确定所述执行臂的末端坐标系相对所述参考坐标系的位姿,作为所述实际位姿。
13.根据权利要求1所述的方法,其特征在于,还包括:
从所述定位图像中确定多个候选位姿标识;
基于多个不同的位姿图案匹配模板,从所述多个候选位姿标识中识别第一位姿标识;以及
以所述第一位姿标识作为起点,搜索位姿标识。
14.根据权利要求13所述的方法,其特征在于,所述位姿标识包括在所述位姿标识图案中的位姿标识图案角点,所述方法包括:
在所述定位图像中确定感兴趣区域;
将所述感兴趣区域划分为多个子区域;
确定每个所述子区域中角点似然值最大的像素以形成像素集合;
确定所述像素集合中角点似然值最大的像素作为候选位姿标识图案角点;以及
将所述多个不同的位姿图案匹配模板分别与所述候选位姿标识图案角点位置处的图案进行匹配,以识别所述第一位姿标识。
15.根据权利要求14所述的方法,其特征在于,包括:
响应于匹配失败,确定所述像素集合中剩余像素的角点似然值最大的像素作为候选位姿标识图案角点。
16.根据权利要求13-15中任一项所述的方法,其特征在于,还包括:
以所述第一位姿标识作为起点,搜索第二位姿标识;
基于所述第一位姿标识、所述第二位姿标识,确定搜索方向;以及
以所述第一位姿标识或所述第二位姿标识作为起点,在所述搜索方向上搜索位姿标识。
17.根据权利要求16所述的方法,其特征在于,以所述第一位姿标识作为起点搜索第二位姿标识包括:
以所述第一位姿标识作为起点,搜索所述第二位姿标识的候选位姿标识图案角点;
基于所述多个位姿标识的分布,确定第一位姿图案匹配模板和第二位姿图案匹配模板,所述第一位姿图案匹配模板和第二位姿图案匹配模板对应于与所述第一位姿标识相邻的位姿标识;以及
将所述第一位姿图案匹配模板和/或所述第二位姿图案匹配模板与所述第二位姿标识的候选位姿标识图案角点位置处的图案进行匹配,以识别所述第二位姿标识。
18.根据权利要求16所述的方法,其特征在于,以所述第一位姿标识或所述第二位姿标识作为起点在所述搜索方向上搜索位姿标识包括:
以所述第一位姿标识或所述第二位姿标识作为起点,搜索第三位姿标识的候选位姿标识图案角点;
基于所述多个位姿标识的分布,确定第三位姿图案匹配模板,所述第三位姿图案匹配模板对应于与所述第一位姿标识相邻或与所述第二位姿标识相邻的位姿标识;以及
将所述第三位姿图案匹配模板与所述第三位姿标识的候选位姿标识图案角点位置处的图案进行匹配,以识别所述第三位姿标识。
19.根据权利要求16所述的方法,其特征在于,还包括:
响应于搜索距离大于搜索距离阈值,确定所述像素集合中剩余像素的角点似然值最大的像素作为候选位姿标识图案角点;以及
将所述多个不同的位姿图案匹配模板分别与所述候选位姿标识图案角点位置处的图案进行匹配,以识别第一位姿标识。
20.根据权利要求16所述的方法,其特征在于,还包括:
响应于识别到的位姿标识数量小于位姿标识数量阈值,确定所述像素集合中剩余像素的角点似然值最大的像素作为候选位姿标识图案角点;以及
将所述多个不同的位姿图案匹配模板分别与所述候选位姿标识图案角点位置处的图案进行匹配,以识别第一位姿标识。
21.根据权利要求13-15中任一项所述的方法,其特征在于,还包括:
基于所述多个位姿标识中的至少两个,确定所述多个位姿标识的排布顺序;以及
基于所述多个位姿标识的排布顺序,确定所述多个位姿标识相对执行臂的末端坐标系的三维坐标。
22.根据权利要求1、11-15中任一项所述的方法,其特征在于,
所述多个位姿标识设置在所述执行臂的末端的柱状部分的外表面上。
23.根据权利要求1所述的方法,其特征在于,所述与故障相关的控制信号包括第一报警信号,所述第一报警信号指示所述执行臂的控制发生故障。
24.根据权利要求1所述的方法,其特征在于,还包括:
响应于所述目标位姿与所述实际位姿满足误差检测条件,接收用于驱动所述执行臂的至少一个驱动装置的状态信息;以及
响应于所述状态信息与所述至少一个驱动装置的驱动信息满足故障检测条件,发出第二报警信号,所述第二报警信号指示所述执行臂的驱动装置发生故障。
25.根据权利要求1-6、8-15、17-20、23-24中任一项所述的方法,其特征在于,还包括:以预定周期确定所述执行臂的末端的目标位姿和实际位姿,以通过多个检测循环实时对所述执行臂进行误差检测。
26.一种计算机设备,包括:
存储器,用于存储至少一条指令;以及
处理器,与所述存储器耦合并且用于执行所述至少一条指令以执行根据权利要求1-25中任一项所述的误差检测方法。
27.一种计算机可读存储介质,用于存储至少一条指令,所述至少一条指令由计算机执行时致使所述计算机执行根据权利要求1-25中任一项所述的误差检测方法。
28.一种机器人***,包括:
主操作器,包括机械臂、设置在所述机械臂上的手柄以及设置在所述机械臂上的至少一个关节处的至少一个主操作器传感器,所述至少一个主操作器传感器用于获得所述至少一个关节的关节信息;
执行臂,所述执行臂的末端设置有多个位姿标识,所述多个位姿标识包括不同的位姿标识图案;
至少一个驱动装置,用于驱动所述执行臂;
至少一个驱动装置传感器,与所述至少一个驱动装置耦合并且用于获得所述至少一个驱动装置的状态信息;
图像采集设备,用于采集所述执行臂的定位图像;以及
控制装置,被配置为与所述主操作器、所述至少一个驱动装置、所述至少一个驱动装置传感器、所述图像采集设备连接,执行根据权利要求1-25中任一项所述的误差检测方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210015088.9A CN114536399B (zh) | 2022-01-07 | 2022-01-07 | 基于多个位姿标识的误差检测方法及机器人*** |
US18/091,962 US20230219221A1 (en) | 2022-01-07 | 2022-12-30 | Error detection method and robot system based on a plurality of pose identifications |
EP23150367.3A EP4209313A1 (en) | 2022-01-07 | 2023-01-04 | Error detection method and robot system based on a plurality of pose identifications |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210015088.9A CN114536399B (zh) | 2022-01-07 | 2022-01-07 | 基于多个位姿标识的误差检测方法及机器人*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114536399A true CN114536399A (zh) | 2022-05-27 |
CN114536399B CN114536399B (zh) | 2023-04-25 |
Family
ID=81669967
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210015088.9A Active CN114536399B (zh) | 2022-01-07 | 2022-01-07 | 基于多个位姿标识的误差检测方法及机器人*** |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230219221A1 (zh) |
EP (1) | EP4209313A1 (zh) |
CN (1) | CN114536399B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114536401A (zh) * | 2022-02-16 | 2022-05-27 | 中国医学科学院北京协和医院 | 基于多个位姿标识的机器人***故障检测处理方法及机器人*** |
CN117067222A (zh) * | 2023-10-16 | 2023-11-17 | 苏州康多机器人有限公司 | 手术机器人的位姿预警方法、装置、手术机器人及介质 |
Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020013675A1 (en) * | 1998-11-12 | 2002-01-31 | Alois Knoll | Method and device for the improvement of the pose accuracy of effectors on mechanisms and for the measurement of objects in a workspace |
CN102207369A (zh) * | 2010-03-29 | 2011-10-05 | 富士施乐株式会社 | 物品识别装置以及使用该物品识别装置的物品处理装置 |
CN204584869U (zh) * | 2015-04-10 | 2015-08-26 | 深圳市圆梦精密技术研究院 | 曲面零件的加工设备 |
CN106471548A (zh) * | 2014-07-10 | 2017-03-01 | 高通股份有限公司 | 使用***信息的加速模板匹配 |
CN106875431A (zh) * | 2017-02-10 | 2017-06-20 | 深圳前海大造科技有限公司 | 具有移动预测的图像追踪方法及扩增实境实现方法 |
US20180071914A1 (en) * | 2016-09-14 | 2018-03-15 | Faro Technologies, Inc. | Noncontact safety sensor and method of operation |
JP2018144165A (ja) * | 2017-03-03 | 2018-09-20 | 株式会社キーエンス | 画像処理装置、画像処理方法、画像処理プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器 |
CN109623815A (zh) * | 2018-12-19 | 2019-04-16 | 江苏科技大学 | 一种用于无人打捞船的波浪补偿双机器人***及方法 |
CN111091062A (zh) * | 2019-11-21 | 2020-05-01 | 东南大学 | 一种基于3d视觉聚类和匹配的机器人乱序目标分拣方法 |
CN111161348A (zh) * | 2018-11-08 | 2020-05-15 | 深圳市优必选科技有限公司 | 一种基于单目相机的物***姿估计方法、装置及设备 |
CN111300484A (zh) * | 2020-03-13 | 2020-06-19 | 达闼科技成都有限公司 | 确定机器人的关节定位误差的方法、机器人及存储介质 |
CN112465960A (zh) * | 2020-12-18 | 2021-03-09 | 天目爱视(北京)科技有限公司 | 一种三维模型的尺寸标定装置及方法 |
CN112792814A (zh) * | 2021-01-21 | 2021-05-14 | 珞石(北京)科技有限公司 | 基于视觉标志的机械臂零点标定方法 |
CN112836558A (zh) * | 2019-11-25 | 2021-05-25 | 杭州海康机器人技术有限公司 | 机械臂末端调整方法、装置、***、设备及介质 |
WO2021128787A1 (zh) * | 2019-12-23 | 2021-07-01 | ***股份有限公司 | 一种定位的方法及装置 |
CN113538574A (zh) * | 2021-01-04 | 2021-10-22 | 腾讯科技(深圳)有限公司 | 位姿定位方法、装置、设备及计算机可读存储介质 |
CN113876433A (zh) * | 2020-07-01 | 2022-01-04 | 北京术锐技术有限公司 | 机器人***以及控制方法 |
CN113876436A (zh) * | 2020-07-01 | 2022-01-04 | 北京术锐技术有限公司 | 主从运动的控制方法、机器人***、设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2581843B (en) * | 2019-03-01 | 2021-06-02 | Arrival Ltd | Calibration system and method for robotic cells |
-
2022
- 2022-01-07 CN CN202210015088.9A patent/CN114536399B/zh active Active
- 2022-12-30 US US18/091,962 patent/US20230219221A1/en active Pending
-
2023
- 2023-01-04 EP EP23150367.3A patent/EP4209313A1/en active Pending
Patent Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020013675A1 (en) * | 1998-11-12 | 2002-01-31 | Alois Knoll | Method and device for the improvement of the pose accuracy of effectors on mechanisms and for the measurement of objects in a workspace |
CN102207369A (zh) * | 2010-03-29 | 2011-10-05 | 富士施乐株式会社 | 物品识别装置以及使用该物品识别装置的物品处理装置 |
CN106471548A (zh) * | 2014-07-10 | 2017-03-01 | 高通股份有限公司 | 使用***信息的加速模板匹配 |
CN204584869U (zh) * | 2015-04-10 | 2015-08-26 | 深圳市圆梦精密技术研究院 | 曲面零件的加工设备 |
US20180071914A1 (en) * | 2016-09-14 | 2018-03-15 | Faro Technologies, Inc. | Noncontact safety sensor and method of operation |
CN106875431A (zh) * | 2017-02-10 | 2017-06-20 | 深圳前海大造科技有限公司 | 具有移动预测的图像追踪方法及扩增实境实现方法 |
JP2018144165A (ja) * | 2017-03-03 | 2018-09-20 | 株式会社キーエンス | 画像処理装置、画像処理方法、画像処理プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器 |
CN111161348A (zh) * | 2018-11-08 | 2020-05-15 | 深圳市优必选科技有限公司 | 一种基于单目相机的物***姿估计方法、装置及设备 |
CN109623815A (zh) * | 2018-12-19 | 2019-04-16 | 江苏科技大学 | 一种用于无人打捞船的波浪补偿双机器人***及方法 |
CN111091062A (zh) * | 2019-11-21 | 2020-05-01 | 东南大学 | 一种基于3d视觉聚类和匹配的机器人乱序目标分拣方法 |
CN112836558A (zh) * | 2019-11-25 | 2021-05-25 | 杭州海康机器人技术有限公司 | 机械臂末端调整方法、装置、***、设备及介质 |
WO2021128787A1 (zh) * | 2019-12-23 | 2021-07-01 | ***股份有限公司 | 一种定位的方法及装置 |
CN111300484A (zh) * | 2020-03-13 | 2020-06-19 | 达闼科技成都有限公司 | 确定机器人的关节定位误差的方法、机器人及存储介质 |
CN113876433A (zh) * | 2020-07-01 | 2022-01-04 | 北京术锐技术有限公司 | 机器人***以及控制方法 |
CN113876436A (zh) * | 2020-07-01 | 2022-01-04 | 北京术锐技术有限公司 | 主从运动的控制方法、机器人***、设备及存储介质 |
CN112465960A (zh) * | 2020-12-18 | 2021-03-09 | 天目爱视(北京)科技有限公司 | 一种三维模型的尺寸标定装置及方法 |
CN113538574A (zh) * | 2021-01-04 | 2021-10-22 | 腾讯科技(深圳)有限公司 | 位姿定位方法、装置、设备及计算机可读存储介质 |
CN112792814A (zh) * | 2021-01-21 | 2021-05-14 | 珞石(北京)科技有限公司 | 基于视觉标志的机械臂零点标定方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114536401A (zh) * | 2022-02-16 | 2022-05-27 | 中国医学科学院北京协和医院 | 基于多个位姿标识的机器人***故障检测处理方法及机器人*** |
CN114536401B (zh) * | 2022-02-16 | 2024-03-29 | 中国医学科学院北京协和医院 | 基于多个位姿标识的机器人***故障检测处理方法及机器人*** |
CN117067222A (zh) * | 2023-10-16 | 2023-11-17 | 苏州康多机器人有限公司 | 手术机器人的位姿预警方法、装置、手术机器人及介质 |
Also Published As
Publication number | Publication date |
---|---|
US20230219221A1 (en) | 2023-07-13 |
CN114536399B (zh) | 2023-04-25 |
EP4209313A1 (en) | 2023-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114536292A (zh) | 基于复合标识的误差检测方法及机器人*** | |
WO2022012337A1 (zh) | 运动臂***以及控制方法 | |
US20230219221A1 (en) | Error detection method and robot system based on a plurality of pose identifications | |
US20230219220A1 (en) | Error detection method and robot system based on association identification | |
JP6594129B2 (ja) | 情報処理装置、情報処理方法、プログラム | |
JP2010025569A (ja) | カメラパラメータ特定装置および方法ならびにプログラム | |
CN105496556A (zh) | 一种用于手术导航的高精度光学定位*** | |
CN114347037A (zh) | 基于复合标识的机器人***故障检测处理方法及机器人*** | |
JP2006026790A (ja) | 教示モデル生成装置 | |
CN114224489B (zh) | 用于手术机器人的轨迹跟踪***及利用该***的跟踪方法 | |
CN112109069A (zh) | 机器人示教装置以及机器人*** | |
CN116766194A (zh) | 基于双目视觉的盘类工件定位与抓取***和方法 | |
CN114536331B (zh) | 基于关联标识确定可形变机械臂的外部受力的方法及机器人*** | |
CN114536402B (zh) | 基于关联标识的机器人***故障检测处理方法及机器人*** | |
CN116492064A (zh) | 基于位姿标识的主从运动的控制方法及手术机器人*** | |
CN114536329B (zh) | 基于复合标识确定可形变机械臂的外部受力的方法及机器人*** | |
CN115946105A (zh) | 操作臂的控制方法和手术机器人*** | |
CN114536401B (zh) | 基于多个位姿标识的机器人***故障检测处理方法及机器人*** | |
CN114536330B (zh) | 基于多个位姿标识确定可形变机械臂的外部受力的方法及机器人*** | |
CN115957005A (zh) | 用于控制操作臂的方法和手术机器人*** | |
CN115731289A (zh) | 用于确定物体的位姿的方法和手术机器人*** | |
CN116468647A (zh) | 基于多个位姿标识的执行臂检测方法及机器人*** | |
CN116468648A (zh) | 基于关联标识的执行臂检测方法及机器人*** | |
CN116468646A (zh) | 基于复合标识的执行臂检测方法及机器人*** | |
CN115708128A (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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 200433 No. 168 Changhai Road, Shanghai, Yangpu District Applicant after: The First Affiliated Hospital of Navy Military Medical University of PLA Applicant after: Beijing Shurui Robot Co.,Ltd. Address before: 200433 No. 168 Changhai Road, Shanghai, Yangpu District Applicant before: The First Affiliated Hospital of Navy Military Medical University of PLA Applicant before: BEIJING SURGERII TECHNOLOGY Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |