CN114536331B - 基于关联标识确定可形变机械臂的外部受力的方法及机器人*** - Google Patents
基于关联标识确定可形变机械臂的外部受力的方法及机器人*** Download PDFInfo
- Publication number
- CN114536331B CN114536331B CN202210141538.9A CN202210141538A CN114536331B CN 114536331 B CN114536331 B CN 114536331B CN 202210141538 A CN202210141538 A CN 202210141538A CN 114536331 B CN114536331 B CN 114536331B
- Authority
- CN
- China
- Prior art keywords
- pose
- deformable
- coordinate system
- angle
- mechanical arm
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 131
- 230000006355 external stress Effects 0.000 title claims abstract description 38
- 210000000988 bone and bone Anatomy 0.000 claims abstract description 161
- 238000009826 distribution Methods 0.000 claims abstract description 21
- 230000035882 stress Effects 0.000 claims description 36
- 239000011159 matrix material Substances 0.000 claims description 27
- 230000009466 transformation Effects 0.000 claims description 24
- 125000006850 spacer group Chemical group 0.000 claims description 22
- 238000003860 storage Methods 0.000 claims description 20
- 238000003384 imaging method Methods 0.000 claims description 18
- 230000008859 change Effects 0.000 claims description 14
- 230000004807 localization Effects 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 7
- 230000008685 targeting Effects 0.000 claims description 7
- 238000005452 bending Methods 0.000 claims description 6
- 238000007476 Maximum Likelihood Methods 0.000 claims description 5
- 238000004458 analytical method Methods 0.000 claims description 2
- 238000005096 rolling process Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 24
- 238000012545 processing Methods 0.000 description 20
- 239000003550 marker Substances 0.000 description 14
- 230000007246 mechanism Effects 0.000 description 12
- 238000004422 calculation algorithm Methods 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 8
- 230000033001 locomotion Effects 0.000 description 8
- 238000001514 detection method Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 239000000463 material Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000000926 separation method Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000005253 cladding Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000002591 computed tomography Methods 0.000 description 2
- 238000009795 derivation Methods 0.000 description 2
- 239000012636 effector Substances 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000704 physical effect Effects 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 229910045601 alloy Inorganic materials 0.000 description 1
- 239000000956 alloy Substances 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000008602 contraction Effects 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 230000005489 elastic deformation Effects 0.000 description 1
- 239000013013 elastic material Substances 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000001727 in vivo Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000007788 liquid Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 229910001000 nickel titanium Inorganic materials 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 229910001285 shape-memory alloy Inorganic materials 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 210000001519 tissue Anatomy 0.000 description 1
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/1602—Programme controls characterised by the control system, structure, architecture
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J18/00—Arms
- B25J18/005—Arms having a curved shape
-
- 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/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/1605—Simulation of manipulator lay-out, design, modelling of manipulator
-
- 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/1633—Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
-
- 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20112—Image segmentation details
- G06T2207/20164—Salient point detection; Corner detection
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T90/00—Enabling technologies or technologies with a potential or indirect contribution to GHG emissions mitigation
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Manipulator (AREA)
Abstract
本公开涉及机械臂领域,公开一种确定可形变机械臂的外部受力的方法。可形变机械臂包括结构骨、固定盘以及间隔盘,结构骨穿过间隔盘且末端与固定盘固定连接。该方法包括:获取定位图像;在定位图像中,识别位于可形变机械臂的末端上的多个位姿标识;基于多个位姿标识,识别位于可形变机械臂的末端上的角度标识,角度标识与多个位姿标识中的第一位姿标识具有位置关联关系;基于角度标识和多个位姿标识,获得可形变机械臂的末端相对参考坐标系的位姿;获得结构骨的驱动信息;以及基于所获得的位姿、结构骨的驱动信息及可形变机械臂的力学模型,确定可形变机械臂的外部受力,该力学模型基于结构骨的物理特性以及其在可形变机械臂的横截面上的分布。
Description
技术领域
本公开属于机械臂领域,尤其涉及一种基于关联标识确定可形变机械臂的外部受力的方法及机器人***。
背景技术
可形变机械臂可以广泛用于地表、地下、水下、太空和生物体内等多种环境。在执行作业时,操作者需要获取可形变机械臂所受到的外部作用力,以根据可形变机械臂所受到的外部受力进行操作。
通常,可以在可形变机械臂的末端安装力传感器,根据力传感器测量可形变机械臂的外部受力,并将可形变机械臂的外部受力反馈给操作者,指引操作者进行操作。
然而,在可形变机械臂的末端安装力传感器来测量可形变机械臂的外部受力至少存在以下技术问题:1)集成困难。力传感器占用空间较大,且需要使用线缆传输信号,而可形变机械臂及其末端设置的执行器等器械结构复杂、紧凑,在设计的过程中难以留出力传感器的集成空间。2)成本较高。可形变机械臂末端设置的执行器存在多次使用后性能下降而需要丢弃或回收的状况,而力传感器价格较高,因此难以广泛应用。3)布置灵活度较差。力传感器只能测量其所安装位置处的外部作用力,即使根据可形变机械臂的受力情况布置传感器,也难以或者无法覆盖整个执行器上的外部作用力。4)兼容性较差。使用力传感器会造成污染、电磁兼容等问题。
因此,需要提供一种能够满足实际需求的获取可形变机械臂的外部受力的方法,以辅助操作者的操作,提高操作的准确性并降低操作的成本。
发明内容
在一些实施例中,本公开提供了一种确定可形变机械臂的外部受力的方法。可形变机械臂包括至少一根结构骨、固定盘以及至少一个间隔盘,至少一根结构骨穿过至少一个间隔盘并且末端与固定盘固定连接。该方法可以包括:获取定位图像;在定位图像中,识别位于可形变机械臂的末端上的多个位姿标识;基于多个位姿标识,识别位于可形变机械臂的末端上的角度标识,角度标识与多个位姿标识中的第一位姿标识具有位置关联关系;基于角度标识和多个位姿标识,获得可形变机械臂的末端相对参考坐标系的位姿;获得可形变机械臂的至少一根结构骨的驱动信息;以及基于所获得的位姿、至少一根结构骨的驱动信息及可形变机械臂的力学模型,确定可形变机械臂的外部受力,其中,力学模型基于可形变机械臂的至少一根结构骨在可形变机械臂的横截面上的分布以及至少一根结构骨的物理特性。
在一些实施例中,本公开提供了一种计算机设备,包括:存储器,用于存储至少一条指令;以及处理器,与存储器耦合并且用于执行至少一条指令以执行本公开一些实施例中任一项的方法。
在一些实施例中,本公开提供了一种计算机可读存储介质,用于存储至少一条指令,至少一条指令由计算机执行时致使计算机执行本公开一些实施例中任一项的方法。
在一些实施例中,本公开提供了一种机器人***,包括:至少一个可形变机械臂,可形变机械臂包括至少一根结构骨、固定盘、至少一个间隔盘以及设置在可形变机械臂的末端上的至少一个角度标识和多个位姿标识,至少一根结构骨穿过至少一个间隔盘并且末端与固定盘固定连接;以及图像采集设备,用于采集可形变机械臂的定位图像;控制装置,被配置为与图像采集设备连接,执行本公开一些实施例中任一项的方法,以确定可形变机械臂的外部受力。
附图说明
为了更清楚地说明本公开实施例中的技术方案,下面对本公开实施例描述中所需要使用的附图作简单的介绍。以下附图仅仅示出本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据本公开实施例的内容和这些附图获得其他的实施例。
图1示出了根据本公开一些实施例的确定可形变机械臂的外部受力的方法的流程图;
图2示出了根据本公开一些实施例的机器人***的结构示意图;
图3示出了根据本公开一些实施例的可形变机械臂的示意图;
图4示出了根据本公开一些实施例的测量可形变机械臂末端的位姿的***的示意图;
图5示出根据本公开一些实施例的包括多个位姿标识与多个角度标识的标签示意图;
图6示出标签设置在可形变机械臂末端周侧形成的圆筒形标签的示意图;
图7示出根据本公开一些实施例的实施场景示意图;
图8示出根据本公开一些实施例的确定可形变机械臂的末端坐标系相对参考坐标系的位姿的方法的流程图;
图9示出根据本公开另一些实施例的确定可形变机械臂的末端坐标系相对参考坐标系的位姿的方法的流程图;
图10示出根据本公开一些实施例的多个位姿标识在截面圆的示意图;
图11示出根据本公开一些实施例的用于识别位姿标识的方法的流程图;
图12示出根据本公开一些实施例的位姿标识图案的示意图;
图13示出根据本公开一些实施例的用于搜索位姿标识的方法的流程图;
图14示出根据本公开一些实施例的搜索位姿标识的示意图;
图15示出根据本公开一些实施例的识别角度标识的方法的流程图;
图16示出了根据本公开一些实施例的可形变机械臂在受到驱动时的形变示意图;
图17示出了根据本公开一些实施例的可形变机械臂在受到驱动以及外部作用力时的形变示意图;
图18示出了根据本公开一些实施例的可形变机械臂的受力示意图;
图19示出了根据本公开一些实施例的可形变机械臂坐标系及参考坐标系示意图;
图20示出根据本公开一些实施例的计算机设备的示意框图;
图21示出根据本公开一些实施例的机器人***的示意图。
具体实施方式
为使本公开解决的技术问题、采用的技术方案和达到的技术效果更加清楚,下面将结合附图对本公开实施例的技术方案作进一步的详细描述,显然,所描述的实施例应视为在所有方面都是示例性的而非限制性的,仅仅是本公开示例性实施例,而不是全部的实施例。
在本公开的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本公开和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本公开的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明公开的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“耦合”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连;可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明公开中的具体含义。在本发明公开中,定义靠近操作者的一端为近端、近部或后端、后部,靠近作业对象的一端为远端、末端、远部或前端、前部。本领域技术人员可以理解,本公开的实施例可以适用于包括但不限于在地表、地下、水下、太空和生物体内等多种环境中作业的机械装置上设置的可形变机械臂。
在本公开中,术语“位置”指物体或物体的一部分在三维空间中的定位(例如,可使用笛卡尔X、Y和Z坐标方面的变化描述三个平移自由度,例如分别沿笛卡尔X轴、Y轴和Z轴的三个平移自由度)。在本公开中,术语“姿态”指物体或物体的一部分的旋转设置(例如三个旋转自由度,可使用滚转、俯仰和偏转来描述这三个旋转自由度)。在本公开中,术语“位姿”指物体或物体的一部分的位置和姿态的组合,例如可使用以上提到的六个自由度中的六个参数来描述。
在本公开中,参考坐标系可以理解为能够描述物***姿的坐标系。根据实际的定位需求,参考坐标系可以选择以虚拟参照物的原点或实体参照物的原点为坐标系原点。在一些实施例中,参考坐标系可以为世界坐标系或者相机坐标系或者操作人员自身的感知坐标系等。其中,相机坐标系是指图像采集设备所在的坐标系。
在本公开中,物体可以理解为需要被定位的对象或目标,例如可形变机械臂或者可形变机械臂的末端。可形变机械臂或其一部分(例如末端)的位姿可以是指可形变机械臂或其一部分定义的坐标系相对于参考坐标系的位姿。
图1示出根据本公开一些实施例的确定可形变机械臂的外部受力的方法100(以下也简称“方法100”)的流程图。方法100可以由硬件、软件或者固件实现或执行。在一些实施例中,方法100可以由机器人***(例如,图2所示的机器人***200,或图21所示的机器人***2100)执行。在一些实施例中,方法100可以实现为计算机可读的指令。这些指令可以由通用处理器或专用处理器(例如,图2所示的控制装置220或图4所示的控制装置420)读取并执行。例如,用于机器人***的控制装置可以包括处理器,被配置为执行方法100。在一些实施例中,这些指令可以存储在计算机可读介质上。
图2示出根据本公开一些实施例的机器人***200的结构示意图。在一些实施例中,如图2所示,机器人***200可以包括主控台车210、从动台车230及控制装置220。控制装置220可以与主控台车210和从动台车230通信连接,例如可通过线缆连接、也可以通过无线连接,以实现与主控台车210和从动台车230之间的通信。主控台车210包括供操作者遥操作的主操作器,以及用于显示操作区域的图像的显示器。从动台车230包括用于执行作业的从动工具,从动工具包括可形变机械臂和设置在可形变机械臂末端的末端器械(例如,执行器)。通过控制装置220实现主控台车210中的主操作器与从动台车230中的从动工具之间的主从映射,实现主操作器对从动工具的运动控制。在一些实施例中,从动工具被设置成能够通过管套、鞘套等进入操作区域,且在操作区域与待操作对象(例如,工件、人体组织等)接触并产生作用力。其中,管套、鞘套可以固定在墙体壁面、动物躯体等上形成开口(例如人工开口或自然开口)处,操作区域可以是进行作业的区域。从动工具的末端器械可以包括但不限于挖掘器械、水下作业器械、手术器械等。本领域技术人员可以理解,主控台车210和从动台车230可以采用其他结构或者形式,例如基座、支架或建筑物等。
图3示出根据本公开一些实施例的可形变机械臂300的示意图。参见图3,可形变机械臂包括一根或多根结构骨310、固定盘330以及至少一个间隔盘320。结构骨310穿过至少一个间隔盘320并且末端与固定盘330固定连接。间隔盘320、固定盘330在结构骨310的轴向上间隔布置。间隔盘320上设置有可供结构骨310穿过的通孔3201,固定盘330上设置有可以用于固定结构骨310的固定孔3301。结构骨310的末端可以与固定盘330连接,结构骨310的近端可以与驱动机构连接。当结构骨310受到驱动机构的驱动时,结构骨310可以沿着通孔3201运动。当可形变机械臂受到外部作用力时,结构骨310可以沿着通孔3201运动。在一些实施例中,至少一个间隔盘320可以形成连续结构,例如波纹管。在一些实施例中,可形变机械臂300外部可以包裹有包覆层或者封皮。
在一些实施例中,结构骨310的数量为一个或者多个,均匀或者非均匀地分布在间隔盘的截面上,例如位于中心位置或者沿周向分布。在一些实施例中,间隔盘320的数量为一个或者多个。间隔盘320的截面上可以开设有一个或者多个通孔3201,且通孔3201的形状与结构骨截面的形状匹配或者基本匹配,以使得结构骨310可以穿过通孔3201。在一些实施例中,间隔盘320截面上开设的通孔3201的数量与结构骨310的数量一致,这样,每一个通孔3201中都可穿过一个结构骨310。在一些实施例中,间隔盘320的截面形状为圆形,间隔盘上的通孔3201为圆孔,结构骨310的截面为圆形。在其他实施例中,间隔盘320的截面形状为矩形,间隔盘上的通孔为多边形孔,结构骨的截面为多边形等。
在一些实施例中,可形变机械臂中的结构骨可以由弹性材料构成,具有一定的柔性。例如,结构骨的材料可以是超弹性合金、气/液腔、记忆合金、高分子结构材料等,例如镍钛合金。基于结构骨的弹性性质,当受到外部作用力和/或驱动机构的驱动作用(例如,推拉作用)时,可形变机械臂可以发生形变。例如,可形变机械臂的形状变化可以表现为弯曲形变、伸缩形变或者扭曲形变等。当可形变机械臂发生形变时,其位姿(例如末端的位姿)会发生变化。可形变机械臂的位姿反应了可形变机械臂受到的驱动信息和外部受力,故而在已知可形变机械臂的位姿和驱动信息的情况下,可以计算可形变机械臂所受到的外部作用力。
本公开的一些实施例提供了一种确定可形变机械臂的外部受力的方法。图1是根据本公开一些实施例的确定可形变机械臂的外部受力的方法100的流程图。如图1所示,方法100可以包括获得可形变机械臂的图像,并且对所获得的图像进行分析,以确定可形变机械臂的末端的位姿。例如,可以在可形变机械臂的末端上设置定位标识,通过处理定位标识的图像,获得可形变机械臂的末端的位姿。方法100还可以包括获得可形变机械臂的结构骨的驱动信息,并基于所获得的可形变机械臂的末端的位姿、结构骨的驱动信息及可形变机械臂的力学模型,确定可形变机械臂的外部受力,具体内容后述。下面首先详细说明如何确定可形变机械臂的末端的位姿。
图4示出了根据本公开一些实施例的测量可形变机械臂末端的位姿的***400的示意图。如图4所示,***400可以包括控制装置420、图像采集设备440、以及至少一个可形变机械臂450。图像采集设备440可以与控制装置420通信连接。在一些实施例中,控制装置420可以与至少一个可形变机械臂450的驱动装置通信连接,用于控制至少一个可形变机械臂450的运动,以调整至少一个可形变机械臂450的位姿、相互协调等。在一些实施例中,可形变机械臂450可以由例如图3所示的可形变机械臂实现。在一些实施例中,至少一个可形变机械臂450在末端或远端处可以包括可形变机械臂末端451,可形变机械臂末端451上可以设置有末端器械460。控制装置420可以控制至少一个可形变机械臂450运动,以使可形变机械臂末端451运动至期望的位置和姿态。本领域技术人员应理解,***400可以应用于多个领域(例如,医疗、工业制造等等)的专用或通用机器人***。作为一个示例,***400可以应用于例如手术机器人等机器人***,可形变机械臂末端451的远端处设置的末端器械460例如可以是手术执行器。
在一些实施例中,图像采集设备440可以用于采集定位图像,图像采集设备440可以包括但不限于双镜头图像采集设备或单镜头图像采集设备,例如双目或单目相机。定位图像中可以包括可形变机械臂450的部分或全部的图像。在一些实施例中,图像采集设备440可以用于采集可形变机械臂末端451的图像,可形变机械臂末端451上可以设置有定位标识。定位标识可以包括位姿标识和角度标识(如下详述)。
如图4所示,可形变机械臂末端451处于图像采集设备440的观测视野441之内,则采集的定位图像中可以包括可形变机械臂末端451的图像。根据不同的应用场景,图像采集设备440可以是工业相机、水下相机、微型电子相机、内窥镜相机等。在一些实施例中,图像采集设备440可以是位置固定的或者位置变化的,例如,固定在监控位置的工业相机或者位置或姿态可调节的内窥镜相机。在一些实施例中,图像采集设备440可以实现可见光波段成像、红外波段成像、CT(Computed Tomography,电子计算机断层扫描)成像和声波成像等中的至少一种。根据采集的图像的种类不同,本领域技术人员可以选择不同的图像采集设备作为图像采集设备440。
在一些实施例中,控制装置420可以接收来自图像采集设备440的定位图像,并且对定位图像进行处理。例如,控制装置420可以在定位图像中,识别位于可形变机械臂末端451上的多个位姿标识和至少一个角度标识,并且确定可形变机械臂末端451相对参考坐标系(例如世界坐标系)的位姿。
在一些实施例中,可形变机械臂上(例如,可形变机械臂末端451上)分布有多个位姿标识和至少一个角度标识。例如,多个位姿标识沿周向分布在可形变机械臂末端451上,多个角度标识沿周向分布在可形变机械臂末端451上。多个位姿标识与多个角度标识在可形变机械臂末端451上沿轴向并列设置。例如,多个位姿标识与多个角度标识设置在可形变机械臂末端451的柱状部分的外表面上。
在一些实施例中,每个角度标识与位姿标识之一具有位置关联关系。基于该位置关联关系,通过位姿标识的位置,可以确定角度标识可能分布的区域。或者,通过角度标识的位置,可以确定位姿标识可能分布的区域。位置关联关系可以根据位姿标识和角度标识的具体布置方式确定,并且可以是预先设计的。
在一些实施例中,位置关联关系可以包括角度标识与位姿标识在轴向的对应关系。例如,位置关联关系可以包括沿轴向的偏移。基于在轴向的对应关系,在已知一个或多个位姿标识在可形变机械臂末端上的位置的情况下,沿轴向偏移一定的距离可以确定角度标识可能存在的区域。例如,位置关联关系还可以包括沿轴向的斜对齐等等。
在一些实施例中,多个位姿标识与多个角度标识可以设置在贴附在可形变机械臂末端周侧的标签上。
在一些实施例中,位姿标识可以包括位姿标识图案和位姿标识图案角点,角度标识可以包括角度标识图案和角度标识图案角点。在一些实施例中,位姿标识图案和角度标识图案可以设置在贴附在可形变机械臂末端上的标签上,或者可以印刷在可形变机械臂末端上,或者可以是由可形变机械臂末端自身的物理构造形成的图案,例如,可以包括凹陷或凸起及其组合。在一些实施例中,位姿标识图案或角度标识图案可以包括以亮度、灰度、色彩等形成的图案。在一些实施例中,位姿标识图案和角度标识图案可以包括主动(例如,自发光)或被动(例如,反射光线)提供被图像采集设备探测的信息的图案。本领域技术人员可以理解,在一些实施例中,位姿标识的位姿可以由位姿标识图案角点坐标系的位姿来表示,角度标识的位姿可以由角度标识图案角点坐标系的位姿来表示。
在一些实施例中,位姿标识图案或角度标识图案设置在可形变机械臂末端上适于被图像采集设备采集图像的区域,例如,在工作过程中可以被图像采集设备的视场覆盖的区域或者在工作过程中不容易被干扰或遮挡的区域。
图5示出根据一些实施例的包括多个位姿标识与多个角度标识的标签500的示意图。图6示出设置在可形变机械臂末端周侧并形成圆筒形的标签600的示意图。可以理解,简单起见,标签500可以与标签600包括相同的位姿标识图案和角度标识图案。
参看图5,多个位姿标识(本公开中以“〇”符号表示位姿标识图案角点)和多个角度标识(本公开中以“△”符号表示角度标识图案角点)并排设置。多个位姿标识图案511可以相同或类似,并且多个位姿标识图案角点位于多个位姿标识图案511中。多个角度标识图案521-526可以不同,并且多个角度标识图案角点位于多个角度标识图案521-526中。
每个角度标识与位姿标识之一可以具有位置关联关系。例如,如图5所示,在箭头所示的方向上,部分位姿标识(例如位姿标识图案511)和对应的角度标识(例如,角度标识图案521)沿箭头方向排列并且具有间隔距离d1。参看图6,在沿周向设置状态下,标签500变为空间构造为圆筒形的标签600,每个角度标识与位姿标识之一的位置关联关系可以包括角度标识与位姿标识在轴向(如图6中Z轴正方向)的对应关系。基于在轴向的对应关系,在已知一个或多个位姿标识在可形变机械臂末端上的位置的情况下,沿轴向偏移一定的距离(如距离d1)可以确定角度标识可能存在的区域。在一些实施例中,角度标识与位姿标识在轴向的对应关系可以通过角度标识图案角点与位姿标识图案角点在轴向的对应关系表示。在一些实施例中,基于角度标识与位姿标识在轴向的对应关系,角度标识图案角点与位姿标识图案角点之一沿Z轴方向的投影重合。
在一些实施例中,角度标识或位姿标识的绕轴角度或者滚转角可以通过角度标识图案角点或位姿标识图案角点的绕轴角度表示。角度标识图案角点相对于可形变机械臂坐标系(例如建立在可形变机械臂末端的末端坐标系,如图6所示的XY坐标系)的角度是已知的或预先确定的,例如图6中的角度标识图案角点R6在XY坐标系下与X轴的角度为θ。基于位置关联关系,可以得到与其位置相关联的位姿标识图案角点P6相对X轴的夹角为角度θ。应该理解,角度标识图案角点R6和位姿标识图案角点P6对应的角度θ可以称为角度标识或位姿标识的绕Z轴的绕轴角度或者滚转角。在本公开中,绕轴角度或者滚转角是指绕Z轴的角度。可以理解,清楚起见,图6中将角度标识图案角点R6和位姿标识图案角点P6示为分离,但它们是重合的。
图7示出根据本公开一些实施例的实施场景700的示意图。如图7所示,可形变机械臂740包括可形变机械臂末端730以及远端的执行器760,多个位姿标识和角度标识可以沿周向设置在可形变机械臂末端730上。例如,如图5所示的标签500沿周向设置在可形变机械臂末端730上,形成圆筒形的角度标识图案带710和位姿标识图案带720。多个位姿标识图案角点分布在可形变机械臂末端730的位姿标识图案带720的截面圆721上,多个角度标识图案角点分布在可形变机械臂末端730的角度标识图案带710的截面圆711上。
在一些实施例中,多个角度标识图案为不同的图案。每个角度标识图案用于指示或标识不同的绕轴角度。在一些实施例中,每个角度标识的图案与所标识的绕轴角度具有一一对应关系,基于角度标识的图案可以确定所标识的绕轴角度。
例如,如图7所示,多个不同的角度标识图案(如图5中示出的多个角度标识图案521-526)沿圆柱形结构周向均匀分布,形成角度标识图案角点A-F。设定角度标识图案角点A对应的角度标识图案为参照图案(例如,设定角度标识图案角点A对应的角度标识图案用于标识0°绕轴角度),设立平面坐标系{wm1},则可以根据其余角度标识图案与角度标识图案角点A对应的角度标识图案的位置关系确定其余角度标识图案包含的角度标识图案角点标识的绕轴角度。例如,参看图7,当识别出角度标识图案角点B对应的角度标识图案,则根据角度标识图案角点B对应的角度标识图案与角度标识图案角点A对应的角度标识图案的位置关系,可以确定在截面圆711的二维平面坐标系内角度标识图案角点B标识的绕轴角度为60°。截面圆711的二维平面坐标系的原点为截面圆711的圆心,X轴方向为原点指向角度标识图案角点A,Y轴垂直于X轴。
在一些实施例中,执行器760的位姿可以通过将可形变机械臂的末端坐标系{wm}平移预定距离来确定。或者,执行器760的位姿可以近似地等于可形变机械臂的末端坐标系{wm}的位姿。
在一些实施例中,基于可形变机械臂的末端坐标系相对参考坐标系的位姿,确定执行器760相对参考坐标系(例如,参考坐标系为世界坐标系{w})的位姿。具体计算公式如下:
其中,wRtip为执行器相对世界坐标系的姿态,wPtip为执行器相对世界坐标系的位置,wmRtip为执行器相对可形变机械臂的末端坐标系的姿态,wmPtip为执行器相对可形变机械臂的末端坐标系的位置,wRwm为可形变机械臂的末端坐标系相对世界坐标系的姿态,wPwm为可形变机械臂的末端坐标系相对世界坐标系的位置。
参看图1,在方法100的步骤101,获取定位图像。在一些实施例中,定位图像中包含可形变机械臂的末端上的多个位姿标识和至少一个角度标识。在一些实施例中,可以从如图4所示的图像采集设备440接收定位图像。例如,控制装置420可以接收图像采集设备440主动发送的定位图像。或者,控制装置420可以向图像采集设备440发送图像请求指令,图像采集设备440响应图像请求指令向控制装置420发送定位图像。
继续参看图1,在步骤103,在定位图像中,识别位于可形变机械臂的末端上的多个位姿标识。例如,识别位于可形变机械臂的末端上的多个位姿标识的示例性方法可以包括如图11和图13所示的方法。在一些实施例中,控制装置420可以通过图像处理算法识别定位图像中的部分或全部的位姿标识。在一些实施例中,图像处理算法可以包括特征识别算法,图像处理算法可以提取或识别位姿标识的特征。例如,图像处理算法可以包括角点检测算法,用于检测位姿标识图案角点。该角点检测算法可以是包括但不限于基于灰度图的角点检测、基于二值图像的角点检测、基于轮廓曲线的角点检测中的一种。例如,图像处理算法可以是颜色特征提取算法,用于检测位姿标识图案中的颜色特征。再例如,图像处理算法可以是轮廓检测算法,用于检测位姿标识图案的轮廓特征。
在一些实施例中,控制装置可以通过识别模型识别定位图像中的部分或全部的位姿标识。
继续参看图1,在步骤105,基于多个位姿标识,识别位于可形变机械臂的末端上的角度标识,角度标识与多个位姿标识中的第一位姿标识具有位置关联关系。在一些实施例中,在识别出多个位姿标识之后,根据位置关联关系,识别位于可形变机械臂的末端上的角度标识。在一些实施例中,角度标识与第一位姿标识的位置关联关系可以是如图5或图6中示出的位置关联关系。在一些实施例中,第一位姿标识(例如是第一位姿标识图案或第一位姿标识图案角点)是指多个位姿标识中与角度标识具有位置关联关系的位姿标识。识别角度标识的示例性方法包括如图15所示的方法。
继续参看图1,在步骤107,基于角度标识和多个位姿标识,获得可形变机械臂的末端相对参考坐标系的位姿。获得可形变机械臂的末端相对参考坐标系的位姿的示例性方法包括如图8或图9所示的方法。在一些实施例中,可以基于角度标识、第一位姿标识和多个位姿标识,获得可形变机械臂的末端相对参考坐标系的位姿。
在一些实施例中,方法100还包括:基于角度标识和多个位姿标识,确定可形变机械臂的末端坐标系和位姿标识坐标系的变换关系。在一些实施例中,根据可形变机械臂的末端坐标系和位姿标识坐标系的变换关系,可以将位姿标识坐标系中的三维坐标转换为在可形变机械臂的末端坐标系中对应的三维坐标。在一些实施例中,根据可形变机械臂的末端坐标系和位姿标识坐标系的变换关系和位姿标识坐标系相对参考坐标系的位姿,得到可形变机械臂的末端坐标系相对参考坐标系的位姿。
在一些实施例中,可形变机械臂的末端坐标系和位姿标识坐标系的变换关系可以包括位姿标识坐标系相对可形变机械臂的末端坐标系的滚转角。在一些实施例中,可以基于角度标识和第一位姿标识,确定位姿标识坐标系相对可形变机械臂的末端坐标系的滚转角。应该理解,位姿标识坐标系相对可形变机械臂的末端坐标系的滚转角可以是位姿标识坐标系绕可形变机械臂的末端坐标系的Z轴的转动的角度。
在一些实施例中,可形变机械臂的末端坐标系可以是基于多个位姿标识或多个角度标识,在物体上设定的固定坐标系。在一些实施例中,可形变机械臂的末端坐标系的Z轴平行于可形变机械臂末端的轴向,可形变机械臂的末端坐标系的XY平面与多个位姿标识图案角点处于同一平面,或者与多个角度标识图案角点处于同一平面。
在一些实施例中,可以确定位姿标识坐标系,以方便确定多个位姿标识的位置。在一些实施例中,位姿标识的位置可以通过位姿标识图案角点的位置表示。在一些实施例中,位姿标识坐标系的Z轴平行于可形变机械臂末端的轴向或与轴向重合,位姿标识坐标系的XY平面与多个位姿标识图案角点处于同一平面。
示例性地,参看图7,可形变机械臂的末端坐标系{wm}≡[Xwm Ywm Zwm]T的原点为多个位姿标识图案角点所在截面圆721的圆心,X轴方向为原点指向其中一个位姿标识图案角点,Z轴的方向平行可形变机械臂末端730的轴向,Y轴垂直于XZ平面。可形变机械臂的末端坐标系{wm}的X轴与截面圆711的二维平面坐标系{wm1}≡[Xwm1 Ywm1]T的X轴平行,可形变机械臂的末端坐标系的Y轴与截面圆711的二维平面坐标系{wm1}的Y轴平行。角度标识图案角点在截面圆711的二维平面坐标系{wm1}中标识的绕轴角度可以与其在可形变机械臂的末端坐标系{wm}中标识的绕轴角度相等。位姿标识坐标系{wm0}≡[Xwm0 Ywm0 Zwm0]T的原点为多个位姿标识图案角点所在截面圆721的圆心,X轴方向为原点指向其中一个位姿标识图案角点,Z轴的方向平行物体可形变机械臂末端730的轴向,Y轴垂直于XZ平面。继续参看图7,可形变机械臂的末端坐标系{wm}的Z轴与位姿标识坐标系{wm0}的Z轴重合。可形变机械臂的末端坐标系{wm}相对位姿标识坐标系{wm0}的变换关系可以通过位姿标识坐标系{wm0}相对可形变机械臂的末端坐标系{wm}的滚转角α0确定。滚转角α0可以是指位姿标识坐标系{wm0}相对可形变机械臂的末端坐标系{wm}绕Z轴的转动角度。
在一些实施例中,参看图7,滚转角α0通过如下公式计算:
α0=α1-α2 (2)
其中α1为第一绕轴角度,α2为第二绕轴角度。第一绕轴角度为角度标识图案角点(例如,角度标识图案角点R7)在可形变机械臂的末端坐标系中标识的绕轴角度。第二绕轴角度为第一位姿标识图案角点(例如,位姿标识图案角点P7)在位姿标识坐标系中标识的绕轴角度。
图8示出根据本公开一些实施例的确定可形变机械臂的末端坐标系相对参考坐标系的位姿的方法800的流程图。如图8所示,该方法800中的部分或全部步骤可以由控制装置(例如,图2所示的控制装置220或图4所示的控制装置420)来执行。方法800中的部分或全部步骤可以由软件、固件和/或硬件来实现。在一些实施例中,方法800可以由机器人***(例如,图2所示的机器人***200或图21所示的机器人***2100)执行。在一些实施例中,方法800可以实现为计算机可读的指令。这些指令可以由通用处理器或专用处理器(例如,图21所示的处理器2120)读取并执行。在一些实施例中,这些指令可以存储在计算机可读介质上。
参看图8,在步骤801,基于角度标识和多个位姿标识,确定位姿标识坐标系相对可形变机械臂的末端坐标系的滚转角。在一些实施例中,确定角度标识在可形变机械臂的末端坐标系中标识的第一绕轴角度。确定第一位姿标识在位姿标识坐标系中标识的第二绕轴角度。基于第一绕轴角度和第二绕轴角度,确定位姿标识坐标系相对可形变机械臂的末端坐标系的滚转角。在一些实施例中,位姿标识坐标系相对可形变机械臂的末端坐标系的滚转角可以基于上述公式(2)确定。
在步骤803,基于多个位姿标识,确定位姿标识坐标系相对参考坐标系的位姿。位姿标识在相应坐标系中的坐标可以通过位姿标识图案角点在相应坐标系中的坐标表示。例如,位姿标识在定位图像中的二维坐标和在位姿标识坐标系中的三维坐标可以通过位姿标识图案角点的坐标表示。在一些实施例中,基于多个位姿标识图案角点在定位图像中的二维坐标和多个位姿标识图案角点在位姿标识坐标系中的三维坐标,确定位姿标识坐标系相对参考坐标系的位姿。在一些实施例中,基于多个位姿标识图案角点在定位图像中的二维坐标、多个位姿标识图案角点在位姿标识坐标系中的三维坐标和相机坐标系相对参考坐标系的变换关系,确定位姿标识坐标系相对参考坐标系的位姿。
在一些实施例中,基于多个位姿标识的分布,确定多个位姿标识图案角点在位姿标识坐标系中的三维坐标。例如,参看图10,每个位姿标识图案角点均位于在截面圆1022的圆周上,截面圆1022的圆心与半径r均是已知的。设定截面圆1022的圆心为位姿标识坐标系的原点,XY平面位于截面圆1022上,X轴可以指定为由原点出发指向任一已确定的位姿标识图案角点(例如,位姿标识图案角点P10),进而可基于多个位姿标识的分布,确定每个位姿标识图案角点在位姿标识坐标系中的三维坐标。例如,如图10所示,位姿标识图案角点P10在位姿标识坐标系的三维坐标为(r,0,0),则其余位姿标识图案角点在位姿标识坐标系中的三维坐标可以根据以下公式计算:
Cm=[r·cos((m-1)·χ)r·sin((m-1)·χ)0]T (3)
其中,Cm为以位姿标识图案角点P10作为起点,第m个位姿标识图案角点在位姿标识坐标系中的三维坐标;χ为相邻的位姿标识图案角点之间的绕轴夹角。
在一些实施例中,相机坐标系相对参考坐标系的变换关系可以是已知的。例如,参考坐标系为世界坐标系,相机坐标系相对世界坐标系的变换关系可以根据相机摆放的位姿确定。另一些实施例中,根据实际的需求,参考坐标系也可以是相机坐标系本身。
在一些实施例中,基于相机成像原理与投影模型,基于多个位姿标识图案角点在定位图像中的二维坐标和多个位姿标识图案角点在位姿标识坐标系中的三维坐标,确定位姿标识坐标系相对相机坐标系的位姿。基于位姿标识坐标系相对相机坐标系的位姿和相机坐标系相对参考坐标系的变换关系,可以得到位姿标识坐标系相对参考坐标系的位姿。在一些实施例中,还可以考虑相机的内参。例如,相机的内参可以是如图4所示的图像采集设备440的相机内参。相机的内参可以是已知的或者经过标定而得到的。
在一些实施例中,相机坐标系可以理解为以相机原点建立的坐标系。例如,以相机的光心为原点建立的坐标系或者以相机的镜头中心为原点建立的坐标系。当相机为双目相机时,相机坐标系的原点可以是相机左镜头的中心,或者右镜头的中心,或者左右镜头中心连线上的任意一点(例如该连线的中点)。
参看图8,在步骤805,基于位姿标识坐标系相对可形变机械臂的末端坐标系的滚转角和位姿标识坐标系相对参考坐标系的位姿,确定可形变机械臂的末端坐标系相对参考坐标系的位姿。
例如,以参考坐标系为世界坐标系为例,可形变机械臂的末端坐标系相对世界坐标系的位姿具体如下:
wRwm=wRwm0·rotz(α0)
wPwm=wPwm0 (4)
其中,wRwm为可形变机械臂的末端坐标系相对世界坐标系的姿态,wPwm为可形变机械臂的末端坐标系相对世界坐标系的位置,wRwm0为位姿坐标系相对世界坐标系的姿态,wPwm0为位姿坐标系相对世界坐标系的位置,rotz(α0)表示绕可形变机械臂的末端坐标系的Z轴转动滚转角α0。
在一些实施例中,可形变机械臂的末端坐标系相对世界坐标系的位姿具体计算公式如下:
wRwm=wRlens lensRwm0 wm0Rwm
wPwm=wRlens(lensRwm0 wm0Pwm+lensPwm0)+wPlens (5)
其中,wRlens为相机坐标系相对世界坐标系的姿态,wPlens为相机坐标系相对世界坐标系的位置,lensRwm0为位姿标识坐标系相对相机坐标系的姿态,lensPwm0为位姿标识坐标系相对相机坐标系的位置,wm0Rwm为可形变机械臂的末端坐标系相对位姿标识坐标系的姿态,wm0Pwm为可形变机械臂的末端坐标系相对位姿标识坐标系的位置。
图9示出根据本公开另一些实施例的确定可形变机械臂的末端坐标系相对参考坐标系的位姿的方法900的流程图。方法900可以是图8的方法800的替换实施例。如图9所示,该方法900中的部分或全部步骤可以由数据处理装置(例如,图2所示的控制装置220,图4所示的控制装置420,或图21所示的处理器2120)来执行。方法900中的部分或全部步骤可以由软件、固件和/或硬件来实现。在一些实施例中,方法900可以由机器人***(例如,图2所示的机器人***200,或图21所示的机器人***2100)执行。在一些实施例中,方法900可以实现为计算机可读的指令。这些指令可以由通用处理器或专用处理器(例如,图21所示的处理器2120)读取并执行。在一些实施例中,这些指令可以存储在计算机可读介质上。
参看图9,在步骤901,基于位姿标识坐标系相对可形变机械臂的末端坐标系的滚转角和多个位姿标识在位姿标识坐标系中的三维坐标,确定多个位姿标识在可形变机械臂的末端坐标系中的三维坐标。可以理解,已知位姿标识坐标系相对可形变机械臂的末端坐标系的滚转角,可以根据坐标变换将多个位姿标识图案角点在位姿标识坐标系中的三维坐标变换为在可形变机械臂的末端坐标系中的三维坐标。
在步骤903,基于多个位姿标识在定位图像中的二维坐标和多个位姿标识在可形变机械臂的末端坐标系中的三维坐标,确定可形变机械臂的末端坐标系相对参考坐标系的位姿。在一些实施例中,步骤903可以与方法800中步骤803和805类似地实现。
图11示出根据本公开一些实施例的用于识别位姿标识的方法1100的流程图。如图11所示,该方法1100中的部分或全部步骤可以由数据处理装置(例如,图2所示的控制装置220,图4所示的控制装置420,或图21所示的处理器2120)来执行。方法1100中的部分或全部步骤可以由软件、固件和/或硬件来实现。在一些实施例中,方法1100可以由机器人***(例如,图2所示的机器人***200,或图21所示的机器人***2100)执行。在一些实施例中,方法1100可以实现为计算机可读的指令。这些指令可以由通用处理器或专用处理器(例如,图21所示的处理器2120)读取并执行。在一些实施例中,这些指令可以存储在计算机可读介质上。
参看图11,在步骤1101,从定位图像中确定多个候选位姿标识。在一些实施例中,候选位姿标识可以通过候选位姿标识图案角点表示。在一些实施例中,候选位姿标识图案角点可以是指经过对定位图像进行初步处理或者初步识别得到的可能的位姿标识图案角点。在一些实施例中,可以先从定位图像中截取ROI(Region of Interest,感兴趣区域),从ROI中确定多个候选位姿标识。其中,ROI可以是定位图像的全图像,也可以是部分区域。例如,可以基于上一帧图像(例如,上一图像处理周期的定位图像)确定的多个位姿标识图案角点一定范围内的区域截取当前帧的ROI。对非第一帧的定位图像,ROI可以为上一图像处理周期的多个位姿标识图案角点的坐标构成的虚点为中心的一定距离范围内的区域。一定距离范围可以是位姿标识图案角点平均间隔距离的固定倍数,例如两倍。应理解,预定倍数还可以是上一图像处理周期中多个候选位姿标识图案角点平均间隔距离的可变倍数。
在一些实施例中,方法1100可以包括:确定定位图像中各像素点的角点似然值(Corner Likelihood,CL)。在一些实施例中,像素点的角点似然值可以是表征像素点作为特征点(例如,角点)的可能性的数值。在一些实施例中,在计算各像素点的角点似然值之前可以对定位图像进行预处理,之后确定预处理之后的图像中各像素点的角点似然值。图像的预处理例如可以包括:图像灰度化、图像去噪、图像增强中的至少一种。
例如,图像预处理可以包括:从定位图像中截取ROI,将ROI转为相应的灰度图像。
在一些实施例中,确定ROI中的每个像素点的角点似然值的方式例如可以包括对ROI范围内每一个像素点进行卷积操作,得到每个像素点的一阶和/或二阶导数。利用ROI范围内每个像素点的一阶和/或二阶导数求出每个像素点的角点似然值。示例性地,各像素点的角点似然值可以根据如下公式计算:
CL=max(cxy,c45)
cxy=τ2·|Ixy|-1.5·τ·(|I45|+|In45|)
c45=τ2·|I45_45|-1.5·τ·(|Ix|+|Iy|) (6)
其中,τ为设定的常数,例如设定为2;Ix、I45、Iy、In45分别是像素点在0、π/4、π/2、-π/4四个方向的一阶导数;Ixy和I45_45分别是像素点在0,π/2和π/4,-π/4方向的二阶导数。
在一些实施例中,将ROI划分成多个子图像。例如,可以采用非极大抑制法在一个ROI范围中平均分割出多个子图像。在一些实施例中,可以将ROI平均分割成5×5像素的多个子图像。上述实施例为示例性的,并非限制性的,应当理解,还可以将定位图像或ROI分割成其他尺寸大小的多个子图像,例如,分割成9×9像素的多个子图像。可以确定每个子图像中的CL值最大的像素点,将每个子图像中的CL值最大的像素点与第一阈值进行比较,确定CL值大于第一阈值的像素点集合。在一些实施例中,第一阈值可以设定为0.06。应当理解,第一阈值还可以设定为其他值。在一些实施例中,CL值大于第一阈值的像素点可以作为候选位姿标识图案角点。
参看图11,在步骤1103,基于位姿图案匹配模板,从多个候选位姿标识中识别初始位姿标识。在一些实施例中,通过位姿图案匹配模板与候选位姿标识图案角点之一处的图像进行匹配,确定达到预设位姿图案匹配度标准的候选位姿标识图案角点为初始位姿标识图案角点。
在一些实施例中,位姿图案匹配模板与位姿标识图案角点附近区域的图像具有相同或相似的特征。若位姿图案匹配模板与候选位姿标识图案角点附近区域的图像的匹配度达到预设位姿图案匹配度标准(例如,匹配度高于阈值),则可以认为候选位姿标识图案角点附近区域的图案与位姿图案匹配模板具有相同或相似的特征,进而可认为当前的候选位姿标识图案角点为位姿标识图案角点。
在一些实施例中,确定像素点集合中CL值最大的像素点,作为待匹配候选位姿标识图案角点。例如,可以将该像素点集合中的所有像素点让CL值从大到小的顺序排序,并将CL值最大的像素点作为待匹配候选位姿标识图案角点。在确定了待匹配候选位姿标识图案角点之后,使用位姿图案匹配模板与待匹配候选位姿标识图案角点处的图案进行匹配,如果达到了预设位姿图案匹配度标准,则确定待匹配候选位姿标识图案角点为识别出的初始位姿标识图案角点。如果待匹配候选位姿标识图案角点未达到预设的匹配度标准,则选择次级CL值的像素点(CL值第二大的像素点)作为待匹配候选位姿标识图案角点,使用位姿图案匹配模板与该候选位姿标识图案角点处的图像进行匹配,依次类推,直至识别出初始位姿标识图案角点。
在一些实施例中,位姿标识图案可以为黑白相间的棋盘格图形,因此位姿图案匹配模板可以为相同的棋盘格图形,利用位姿图案匹配模板的灰度分布GM与候选位姿标识图案角点对应的像素点的像素邻域灰度分布Gimage间的相关性系数(CorrelationCoefficient,CC)来进行匹配。像素点的像素邻域灰度分布Gimage为以该像素点为中心一定范围内(例如,10×10像素)像的像素的灰度分布。具体公式如下:
其中,Var为方差函数,Cov为协方差函数。在一些实施例中,当CC值小于0.8时,像素领域内的灰度分布与位姿图案匹配模板相关性较低,则判定该角点似然值最大的候选位姿标识图案角点是位姿标识图案角点,否则认为该角点似然值最大的候选位姿标识图案角点是位姿标识图案角点。
在一些实施例中,方法1100包括:确定候选位姿标识图案角点的边缘方向。例如,如图12所示,图12中包括一个位姿标识图案1211,候选位姿标识图案角点为图12中的角点P12,那么该角点P12的边缘方向可以是指形成角点P12的边缘的方向,如图12中虚线箭头示意的方向。
在一些实施例中,边缘方向可以通过对以候选位姿标识图案角点为中心的一定范围邻域(例如10×10像素)的每个像素在平面坐标系的X方向和Y方向的一阶导数值(Ix和Iy)确定。例如,边缘方向可以通过以下公式进行计算:
其中,一阶导数(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,高斯混合模型)方法中的任意一种。
在一些实施例中,方法1100包括:根据边缘方向旋转位姿图案匹配模板。根据边缘方向旋转位姿图案匹配模板,可以将位姿图案匹配模板与候选位姿标识图案角点处的图像对齐。
候选位姿标识图案角点的边缘方向可以用于确定该候选标识图案角点处的图像在定位图像中的设置方向。在一些实施例中,根据边缘方向旋转位姿图案匹配模板,可以将位姿图案匹配模板调整至与候选位姿标识图案角点处的图像方向相同或接近相同以便于进行图像匹配。
参看图11,在步骤1105,以初始位姿标识作为起点,搜索位姿标识。
例如,图13示出根据本公开一些实施例的用于搜索位姿标识的方法1300的流程图。如图13所示,该方法1300中的部分或全部步骤可以由数据处理装置(例如,图2所示的控制装置220,图4所示的控制装置420,或图21所示的处理器2120)来执行。方法1300中的部分或全部步骤可以由软件、固件和/或硬件来实现。在一些实施例中,方法1300可以由机器人***(例如,图2所示的机器人***200,或图21所示的机器人***2100)执行。在一些实施例中,方法1300可以实现为计算机可读的指令。这些指令可以由通用处理器或专用处理器(例如,图21所示的处理器2120)读取并执行。在一些实施例中,这些指令可以存储在计算机可读介质上。
参看图13,在步骤1301,以初始位姿标识作为起点,确定第二个位姿标识。在一些实施例中,以初始位姿标识图案角点作为起点,在设定的搜索方向上搜索第二个位姿标识图案角点。在一些实施例中,设定的搜索方向可以包括:初始位姿标识图案角点的正前方(对应0°角度方向)、正后方(对应180°角度方向)、正上方(90°角度方向)、正下方(-90°角度方向)和斜向(例如±45°角度方向)中的至少一个方向。
在一些实施例中,设定的搜索方向为n个,例如在8个方向进行搜索,每个搜索方向vsn可以根据如下公式计算:
vsn=[cos(n·π/4)sin(n·π/4)],(n=1,2,…,8) (9)
在一些实施例中,当前步骤中设定的搜索方向可以根据上一帧确定的多个位姿标识图案角点中相邻位姿标识图案角点之间的偏差角度确定。示例性地,预定的搜索方向可以根据如下公式计算:
/>
其中,(xj,yj)为上一帧(或者上个图像处理周期)确定的多个位姿标识图案角点的二维坐标;nlast为上一帧确定的多个位姿标识图案角点的个数;vs1为第一个设定的搜索方向;vs2为第二个设定的搜索方向。
在一些实施例中,如图14所示,以初始位姿标识图案角点P141的坐标位置作为搜索起点,在设定的搜索方向上搜索第二个位姿标识图案角点P142的坐标位置具体可以包括:以初始位姿标识图案角点P141的坐标位置作为搜索起点,通过搜索框(例如,图14中的虚线框)以一定的搜索步长在设定的搜索方向V141上搜索位姿标识图案角点。若搜索框内存在至少一个候选位姿标识图案角点,则优先选择搜索框内角点似然值最大的候选位姿标识图案角点为第二个位姿标识图案角点P142。在搜索框限制在合适的大小情况下,以初始位姿标识图案角点P141的坐标位置作为搜索起点进行第二位姿标识图案角点P142搜索时,搜索框内出现的候选位姿标识图案角点中角点似然值最大的候选位姿标识图案角点为位姿标识图案角点的可能性较大。因此,可以认为搜索框内角点似然值最大的候选位姿标识图案角点为第二个位姿标识图案角点P142,以便提高数据处理速度。其他实施方式中,为了提高位姿标识图案角点识别的准确度,选择搜索框内出现的候选位姿标识图案角点中角点似然值最大的候选位姿标识图案角点进行角点的识别,以确定该角点似然值最大的候选位姿标识图案角点是否为位姿标识图案角点。例如,对位姿图案匹配模板与该角点似然值最大的候选位姿标识图案角点处一定范围内的图像进行匹配,满足预设位姿图案匹配度标准的候选位姿标识图案角点可以认为是搜索到的第二个位姿标识图案角点P142。
在一些实施例中,继续参看图14,搜索框的大小可以逐步增大,从而搜索范围逐步增大。搜索步长可与搜索框的边长同步变化。其他实施方式中,搜索框的大小也可以为固定的大小。
在一些实施例中,位姿标识图案可以为黑白相间的棋盘格图形,可以采用公式(7)中的相关性系数CC来进行图案匹配。如果CC大于阈值,则认为该角点似然值最大的候选位姿标识图案角点是位姿标识图案角点,记为第二个位姿标识图案角点。
参看图13,在步骤1303,基于初始位姿标识、第二个位姿标识,确定搜索方向。在一些实施例中,搜索方向包括:第一搜索方向和第二搜索方向。第一搜索方向可以是以初始位姿标识图案角点的坐标位置为起点,且远离第二位姿标识图案角点的方向。第二搜索方向可以是以第二位姿标识图案角点的坐标位置为起点,且远离第一位姿标识图案角点的方向。例如,图14中所示的搜索方向V142。
在步骤1305,以初始位姿标识或第二个位姿标识作为起点,在搜索方向上搜索位姿标识。在一些实施例中,若以第一位姿标识图案角点为新的起点,则可以以上述实施例中的第一搜索方向作为搜索方向进行位姿标识图案角点的搜索。若以第二位姿标识图案角点为新的搜索起点,则可以以上述实施例中的第二搜索方向作为搜索方向进行位姿标识图案角点的搜索。在一些实施例中,搜索新的位姿标识图案角点(例如,图14中的第三位姿标识图案角点P143)可以与步骤1301类似地执行。在一些实施例中,搜索步长可以是初始位姿标识图案角点和第二个位姿标识图案角点之间的距离L1。
在一些实施例中,响应于搜索到的位姿标识图案角点数量大于或等于位姿标识图案角点数量阈值,停止对位姿标识图案角点的搜索。例如,当搜索到(识别到)四个位姿标识图案角点,停止对位姿标识图案角点的搜索。
在一些实施例中,响应于搜索的距离大于第N-1个位姿标识图案角点和第N-2个位姿标识图案角点的距离的设定倍数,停止对第N个位姿标识图案角点的搜索,其中N≥3。例如,搜索的结束条件可以是搜索的距离大于两倍的前两个位姿标识图案角点的距离。这样,搜索第三个位姿标识图案角点的最大搜索距离是初始位姿标识图案角点和第二个位姿标识图案角点的距离的两倍。若达到该搜索距离还未搜索到位姿标识图案角点,则认为未找到第三个位姿标识图案角点并且搜索结束。
在一些实施例中,若搜索到的位姿标识图案角点的总数大于或等于设定的阈值(例如,设定的阈值为4),则认为成功识别到了足够的位姿标识图案角点。若找到的位姿标识图案角点总数小于设定的数值,则认为上述步骤中基于初始位姿标识图案角点的搜索不成功。搜索不成功的情况下,从候选位姿标识图案角点中重新确定新的初始位姿标识图案角点,之后基于该重新确定的初始位姿标识图案角点为搜索起点,搜索其余的位姿标识图案角点。与方法1100类似,可以重新确定新的初始位姿标识图案角点,并且与方法1300类似,可以以新的位姿标识图案角点为搜索起点,搜索其余的位姿标识图案角点。
在一些实施例中,在搜索到或者识别到位姿标识图案角点之后,还可以对已确定的位姿标识图案角点进行亚像素定位,以提高位姿标识图案角点的位置精度。
在一些实施例中,可以对像素点的CL值基于模型进行拟合,以确定经亚像素定位后的位姿标识图案角点的坐标。例如,ROI中每个像素点的CL值的拟合函数可以为二次曲面函数,该函数的极值点为亚像素点。拟合函数可以如下:
S(x,y)=ax2+by2+cx+dy+exy+f (11)
其中,S(x,y)为每个ROI中的所有像素点的CL值拟合函数,a、b、c、d、e、f为系数;xc为位姿标识的x坐标,yc为位姿标识的y坐标。
图15示出根据本公开一些实施例的识别角度标识的方法1500的流程图。如图15所示,该方法1500中的部分或全部步骤可以由数据处理装置(例如,图2所示的控制装置220,图4所示的控制装置420,或图21所示的处理器2120)来执行。方法1500中的部分或全部步骤可以由软件、固件和/或硬件来实现。在一些实施例中,方法1500可以由机器人***(例如,图2所示的机器人***200,或图21所示的机器人***2100)执行。在一些实施例中,方法1500可以实现为计算机可读的指令。这些指令可以由通用处理器或专用处理器(例如,图21所示的处理器2120)读取并执行。在一些实施例中,这些指令可以存储在计算机可读介质上。
参看图15,在步骤1501,基于多个位姿标识在定位图像中的二维坐标和多个位姿标识在位姿标识坐标系中的三维坐标,确定成像变换关系。在一些实施例中,位姿标识坐标系可以是在方法100所示实施例中详述的位姿标识坐标系。例如,位姿标识坐标系为如图7所示。在一些实施例中,成像变换关系可以是指位姿标识坐标系中的三维坐标与定位图像中的二维坐标的变换关系。应该理解,基于成像变换关系,也可以将定位图像中的二维坐标变换为位姿标识坐标系中的三维坐标。在一些实施例中,多个位姿标识在位姿标识坐标系中的三维坐标可以基于公式(3)确定。在一些实施例中,多个位姿标识的数量可以大于或等于4个,例如,可以基于4个位姿标识在定位图像中的二维坐标和在位姿标识坐标系中对应的4个三维坐标,得到成像变换关系。
参看图15,在步骤1503,基于成像变换关系、多个位姿标识在位姿标识坐标系中的三维坐标和位置关联关系,在定位图像中确定多个角度标识候选区域。在一些实施例中,角度标识候选区域可以表示角度标识图案的候选区域。在一些实施例中,基于多个位姿标识图案角点在位姿标识坐标系中的三维坐标和位置关联关系,在位姿标识坐标系中确定多个角度标识图案角点候选三维坐标。例如,根据多个位姿标识图案角点在位姿标识坐标系中的三维坐标,沿轴向偏移一定的距离可以确定多个在位姿标识坐标系中的三维坐标。这些三维坐标由多个角度标识图案角点候选三维坐标表示。例如,参看图5,位置关联关系为角度标识和对应的位姿标识沿位姿标识坐标系的Z轴间隔一定距离。在确定位姿标识图案角点的位置的前提下,沿Z轴的正方向或反方向移动一定距离得到的位置可以认为是角度标识图案角点在位姿标识坐标系下的候选位置。
在一些实施例中,基于成像变换关系和多个角度标识图案角点候选三维坐标,在定位图像中确定多个角度标识候选区域。例如,基于成像变换关系和多个角度标识图案角点候选三维坐标,在定位图像中得到多个角度标识图案角点候选二维坐标。在一些实施例中,基于多个角度标识图案角点候选二维坐标,确定多个角度标识图案候选区域。例如,以每个角度标识图案角点候选二维坐标为中心,在定位图像中确定一定范围大小(例如,5×5像素、10×10像素等)的区域作为角度标识候选区域。在一些实施例中,一定范围大小的区域大于或等于角度标识图案成像后的大小。角度标识图案成像后的大小可以基于角度标识图案的实际大小和成像变换关系得到。
参看图15,在步骤1505,从多个角度标识候选区域,识别角度标识。在一些实施例中,角度标识包括角度标识图案和角度标识图案角点。在一些实施例中,方法1500可以包括确定每个角度标识候选区域中角点似然值最大的像素点以形成像素集合。在一些实施例中,像素点的角点似然值可以是在执行方法1100时计算的,也可以是基于公式(6)重新计算得到。方法1500还包括确定像素集合中角点似然值最大的像素点对应的角度标识候选区域作为待识别的角度标识候选区域。方法1500还包括使用多个角度图案匹配模板分别与待识别的角度标识候选区域进行匹配,以识别角度标识。在一些实施例中,角度标识图案为图形特征不同的图案。多个角度图案匹配模板可以是指与多个角度标识图案分别对应的具有相同或相似图形特征的标准角度图案模板。在一些实施例中,通过确定多个角度标识候选区域,可以在多个角度标识候选区域进行角度标识的识别,避免了在整个图像范围内进行角度标识的识别,提高了数据处理的速度。
在一些实施例中,可以使用平方差匹配法、归一化平方差匹配法、相关匹配法、归一化相关匹配法、相关系数匹配法和归一化相关系数匹配法中的任意一种模板匹配算法对角度图案匹配模板与角度标识候选区域进行匹配运算。
在一些实施例中,由于角度图案匹配模板与角度标识图案具有相同或相似的图形特征,因此角度标识的图案信息可以包括对应的角度图案匹配模板的图案信息。例如,角度图案匹配模板的形状、图像中可被识别的特征等。在一些实施例中,每个角度图案匹配模板与对应的角度标识图案所标识的绕轴角度具有一一对应关系。基于特定的角度图案匹配模板或者识别出的角度标识对应的角度标识图案的图案信息,确定第一绕轴角度。
在一些实施例中,方法1500可以包括响应于匹配失败,确定像素集合的剩余像素点中角点似然值最大的像素点对应的角度标识候选区域作为待识别的角度标识候选区域。在一些实施例中,在确定新的待识别的角度标识候选区域之后,使用多个角度图案匹配模板分别与待识别的角度标识候选区域进行匹配,以识别角度标识。
在一些实施例中,基于识别出的角度标识所在的角度标识候选区域,确定与角度标识具有位置关联关系的第一位姿标识。在一些实施例中,多个角度标识候选区域分别对应识别出的多个位姿标识图案角点中的至少一个,在确定识别出的角度标识所在的角度标识候选区域之后,可以基于多个角度标识候选区域与多个位姿标识图案角点的对应关系,确定第一位姿标识图案角点。
本领域技术人员可以理解,可以通过推动和/或拉动可形变机械臂的结构骨,改变可形变机械臂的末端相对参考坐标系的位姿。在一些实施例中,可形变机械臂可能会受到外力作用,从而影响末端相对参考坐标系的位姿。例如,如图4所示,可形变机械臂450的末端451或者末端器械460可能受到外力F的作用。控制装置420还可以基于可形变机械臂450的位姿,确定可形变机械臂的外部受力F。下面继续参照图1说明如何基于所获得的可形变机械臂末端的位姿、结构骨的驱动信息及可形变机械臂的力学模型,确定可形变机械臂的外部受力。
继续参看图1,在步骤109,可以获得可形变机械臂的结构骨的驱动信息。在一些实施例中,结构骨的近端可以与驱动机构连接,驱动机构可用于驱动结构骨在间隔盘的通孔中运动。例如,机器人的操作者发出控制可形变机械臂运动的控制指令(例如,控制指令中包括驱动信息),驱动机构响应于控制指令并通过推动和/或拉动结构骨,实现结构骨的运动,满足操作者对可形变机械臂的操作需求。
在一些实施例中,具备弹性结构骨的可形变机械臂具有弹性性质,可以在受到外部作用力和/或驱动机构的驱动作用(例如,推拉作用)时发生诸如弯曲、伸缩或者扭曲等形式的形变。
图16示出根据本公开一些实施例的可形变机械臂1600在受到驱动时的形变示意图。如图16所示,当可形变机械臂中的结构骨310受到推拉驱动时,可形变机械臂产生形变。例如,当可形变机械臂中的结构骨受到驱动机构(未示出)的驱动时,结构骨310能够沿着间隔盘320上的通孔3201(如图3所示)运动。驱动机构的驱动可包括推动(例如,图16中的推动方向)以及拉动(例如,图16中的拉动方向)。例如,驱动机构向结构骨施加向下的拉动作用力时,结构骨发生形变,例如结构骨的长度大于结构骨处于静态状态下的长度。当驱动机构向结构骨施加向上的推动作用力时,结构骨发生形变,例如结构骨的长度小于结构骨处于静态状态下的长度。
图17示出了本公开一些实施例的可形变机械臂1700在受到驱动以及外部作用力F时的形变示意图。在一些实施例中,当可形变机械臂受到外部作用力F时,结构骨310可以沿着间隔盘320上的通孔3201(如图3所示)运动。外部作用力F可以是作用在可形变机械臂末端位置处的作用力,也可以是作用在可形变机械臂其他位置处的作用力。例如,外部作用力可以包括在执行作业时,可形变机械臂与***作的对象接触时产生的作用力。
如图3所示,可形变机械臂处于静态状态,末端位姿不发生变化。如图16以及图17所示,当可形变机械臂受到驱动作用或者外部作用力时,可形变机械臂及其末端的位姿发生变化。可形变机械臂末端的位姿可以如上所述通过方法100中的步骤101至步骤107获得。
继续参看图1,在步骤111,可以基于所获得的可形变机械臂末端的位姿、结构骨的驱动信息及可形变机械臂的力学模型,确定可形变机械臂的外部受力。其中,力学模型基于可形变机械臂的结构骨在可形变机械臂的横截面上的分布以及结构骨的物理特性。
在一些实施例中,可以基于所获得的可形变机械臂末端的位姿、可形变机械臂的外部受力、可形变机械臂的驱动信息之间的关系构建可形变机械臂的力学模型。这样,在已知可形变机械臂末端的位姿变化以及驱动信息时,可以基于构建的力学模型计算可形变机械臂的外部受力。
可形变机械臂的力学模型可以基于可形变机械臂的结构骨在可形变机械臂的横截面上的分布以及结构骨的物理特性构建。在一些实施例中,结构骨在可形变机械臂的横截面上的分布可以由结构骨在横截面中的位置向量表示。例如,可以是结构骨相对于可形变机械臂的中心参考线的位置偏移向量。参见图16,第j个结构骨在横截面中的位置向量对应为rj。在一些实施例中,结构骨的物理特性可以用于表征结构骨的弹性形变特性,例如用于表征当可形变机械臂受到外部作用力和/或驱动作用时可形变机械臂的形变。
在一些实施例中,可形变机械臂上各点的位姿可以基于可形变机械臂的中心轴线上各点的坐标系来表示。例如,中心轴线可以是可形变机械臂在轴向延伸的虚拟中心线(如,图3中的340)。在一些实施例中,可形变机械臂坐标系可以是局部的动态坐标系,每一个轴向点对应一个可形变机械臂坐标系。图19示出了本公开一些实施例的坐标系1900的示意图。参见图19,可以以可形变机械臂的近端(例如,s=0)为起始点,以可形变机械臂的远端(例如,s=L)为末端点。沿着参考线的轴向,建立每一个轴向点的可形变机械臂坐标系。在图19中,可形变机械臂坐标系是{d},XdYdZd,其中可以包括可形变机械臂的末端坐标系{wm},XwmYwmZwm,参考坐标系是{w},XwYwZw。
在一些实施例中,可形变机械臂坐标系包括第一坐标方向、第二坐标方向以及第三坐标方向。例如,可以将轴向点与中心轴线的切线作为第一坐标方向,第一坐标方向可以是可形变机械臂坐标系的Zd轴。可以将轴向点指向结构骨的线段作为第二坐标方向,第二坐标方向可以是可形变机械臂坐标系的Xd轴。可以基于第一坐标方向及第二坐标方向确定第三坐标方向,可以将第三坐标方向作为可形变机械臂的Yd轴。基于第一坐标方向、第二坐标方向及第三坐标方向构建轴向点的可形变机械臂坐标系{d},XdYdZd,如图19所示。
在一些实施例中,可形变机械臂的位姿可以基于可形变机械臂的中心轴线的位姿与结构骨在可形变机械臂的横截面上的分布来确定。可形变机械臂的位姿可以由公式(13)及公式(14)来表示,
pj=p+Rrj (13)
Rj=R (14)
在公式(13)以及公式(14)中,pj是可形变机械臂中第j个结构骨的位置,是可形变机械臂的中心轴线的位置,rj是第j个结构骨在可形变机械臂的横截面上的分布,Rj是可形变机械臂中第j个结构骨的姿态,R是可形变机械臂的中心轴线的姿态。
在一些实施例中,中心轴线的位姿可以是中心轴线在参考坐标系下的位姿。机械臂的中心轴线坐标系沿轴向的变化可以由公式(15)以及公式(16)来表示,
p′=Rv (15)
R′=Ru^ (16)
在公式(15)及公式(16)中,p是中心轴线在参考坐标系下的位置,R是中心轴线在参考坐标系下的姿态,()′表示对长度s求导,()^表示将向量转为斜对称矩阵的运算:v是线速度,u是角速度,R表示旋转。R可以转换描述的坐标系,例如R可以是将可形变机械臂坐标系转换至参考坐标系。可形变机械臂坐标系可以是中心轴线上的轴向点对应的坐标系,可以随着轴向点的不同而发生变化,其中可以包括位于机械臂末端的可形变机械臂的末端坐标系。参考坐标系如上所述可以是例如台车坐标系、相机坐标系、世界坐标系等,可以是不变的坐标系。
在一些实施例中,力学模型可以包括与结构骨相关的本构关系。本构关系可以表示结构骨的材料的特性,例如可以通过结构骨的内部受力与结构骨的形变来表达材料的特性。
在一些实施例中,可形变机械臂包括至少一根结构骨(j是结构骨编号,j=1,2,3…m),可形变机械臂的内部受力本构关系可以基于结构骨的内部受力本构关系确定。可形变机械臂的内部受力本构关系可以基于结构骨的剪切拉伸刚度矩阵确定。
在一些实施例中,可形变机械臂包括约束结构(例如,间隔盘、固定盘、包覆层等)以及结构骨,可形变机械臂的内部受力本构关系可以基于可形变机械臂的约束结构以及结构骨的内部受力本构关系确定。例如,可形变机械臂的内部受力本构关系参见公式(17),
在公式(17)中,nall是可形变机械臂的内部受力,R是旋转矩阵,KSE是可形变机械臂的约束结构的剪切拉伸刚度矩阵,KSEj是可形变机械臂中第j个结构骨的剪切拉伸刚度矩阵,v是可形变机械臂的位姿沿参考线弧长变化的线速度,例如,参考线可以是可形变机械臂的中心轴线,vmin是可形变机械臂在自然状态下的线速度。例如,vmin可以是不受外部作用力以及驱动作用时的线速度,vmin=[0 0 1]T。
在一些实施例中,可形变机械臂包括多根结构骨(j是结构骨编号,j=1,2,3…m),可形变机械臂的内部力矩本构关系可以基于结构骨的内部力矩本构关系确定。可形变机械臂的内部力矩本构关系可以基于结构骨的弯曲扭转刚度矩阵确定。
在一些实施例中,可形变机械臂包括约束结构以及结构骨,可形变机械臂的内部力矩本构关系可以基于可形变机械臂的约束结构以及结构骨的内部受力本构关系确定。例如,可形变机械臂的内部力矩本构关系参见公式(18),
在公式(18)中,mall是可形变机械臂的内部力矩,R是旋转矩阵,KBT为是可形变机械臂的约束结构的弯曲扭转刚度矩阵,KBTj是可形变机械臂中第j个结构骨的弯曲扭转刚度矩阵,u是可形变机械臂的位姿沿参考线弧长变化的角速度,umin是在自然状态下的角速度,例如可以是不受外部作用力以及驱动作用时的角速度,umin=0。
在一些实施例中,力学模型包括与结构骨相关的力学平衡关系。力学平衡关系包括结构骨的受力平衡关系,受力平衡关系包括结构骨沿轴向各位置处的受力平衡。在一些实施例中,受力平衡关系包括结构骨沿轴向在受力处的外部受力与内部受力处于平衡。
在一些实施例中,力学平衡关系包括可形变机械臂的受力平衡关系,受力平衡关系包括结构骨沿轴向各处的受力平衡。在一些实施例中,可形变机械臂的受力平衡关系包括可形变机械臂沿轴向在受力处的外部受力与内部受力处于平衡。
图18示出根据一些实施例的可形变机械臂1800的受力示意图。参见图18的左侧,对于可形变机械臂的一个结构单元[s,s+Δs],结构单元[s,s+Δs]的受力平衡关系参见公式(19),
可形变机械臂可以包括约束结构(例如,间隔盘、固定盘、包覆层等)和结构骨。在公式(19)中,n(s)表示可形变机械臂的约束结构在s处的内部受力,n(s+Δs)表示可形变机械臂的约束结构在(s+Δs)处的内部受力,Δs是一个较小的增量,fe(ξ)表示可形变机械臂在ξ处的分布式外力。nj(s)表示第j个结构骨在s处的内部受力,nj(s+Δs)表示第j个结构骨在(s+Δs)处的内部受力。
基于公式(19)得到可形变机械臂的受力平衡关系,如公式(20),
n′all+fe=0 (20)
在公式(20)中,nall是可形变机械臂的内部受力,()′表示求导,fe是分布式外力(例如重力)。在一些实施例中,分布式外力可以忽略。
在一些实施例中,可形变机械臂的力学平衡关系包括力矩平衡关系,力矩平衡关系包括结构骨沿轴向的力矩。参见图18的右侧,对于可形变机械臂的一个结构单元[s,s+Δs],结构单元[s,s+Δs]的力矩平衡关系参见公式(21),
在公式(21)中,m(s)表示可形变机械臂的约束结构在s处的内部力矩,m(s+Δs)表示可形变机械臂的约束结构在s+Δs处的内部力矩,Δs是小增量。p(s+Δs)表示可形变机械臂的约束结构在s+Δs处的位置,n(s+Δs)表示可形变机械臂的约束结构在s+Δs处的内部受力。p(s)表示可形变机械臂的约束结构在s处的位置,n(s)表示可形变机械臂的约束结构在s处的内部受力。le(ξ)表示可形变机械臂的约束结构在ξ处的分布式力矩(在一些实施例中,分布式力矩可以忽略),p(ξ)是可形变机械臂的约束结构在ξ处的位置,fe(ξ)表示可形变机械臂的约束结构在ξ处的分布式外力。mj(s)表示第j个结构骨在s处的内部力矩,mj(s+Δs)表示第j个结构骨在s+Δs处的内部力矩。pj(s+Δs)表示第j个结构骨在s+Δs处的位置,nj(s+Δs)表示第j个结构骨在s+Δs处的内部受力。pj(s)表示第j个结构骨在s处的位置,nj(s)表示第j个结构骨在s处的内部受力。
基于公式(21)得到可形变机械臂在s位置处的力矩平衡关系,参见公式(22),
在公式(22)中,mall是可形变机械臂的内部力矩,p是可形变机械臂的参考线的位置,nall是可形变机械臂的内部受力,le是可形变机械臂的分布式力矩,在一些实施例中,分布式力矩可以忽略。R是可形变机械臂的参考线的旋转矩阵,rj是第j个结构骨在可形变机械臂的截面上的分布,例如rj可以是结构骨在可形变机械臂的横截面上的分布位置坐标,u是可形变机械臂的位姿沿参考线的弧长变化的角速度,KSEj第j个结构骨的剪切拉伸刚度矩阵,是线性应变,表示第j个结构骨的位姿沿参考线的弧长变化的线速度在形变发生前后的差值。在一些实施例中,应用可形变机械臂在末端的力矩边界条件,力矩边界条件包括可形变机械臂在末端处的内力矩之和为零,参见公式(23),
在公式(23)中,me是可形变机械臂在末端L位置处的外部力矩,m(L)是可形变机械臂在末端L处的内部力矩,R(L)是可形变机械臂在末端L处的旋转矩阵。
在一些实施例中,可形变机械臂的力学模型包括结构骨沿轴向的长度变化量与结构骨在可形变机械臂的横截面上的分布之间的关系。例如,可形变机械臂中的每一个结构骨(j是结构骨编号,j=1,2,3,…,m)沿轴向的长度变化量参见公式(24),
q′j=||v+u^rj||-1 (24)
在公式(24)中,qj是第j个结构骨沿轴向的长度变化量,rj是结构骨在可形变机械臂的横截面上的分布,例如rj可以是结构骨在可形变机械臂的横截面上的分布位置坐标,v是可形变机械臂的位姿沿参考线的弧长变化的线速度,u是可形变机械臂位姿沿参考线的弧长变化的角速度。
在一些实施例中,结构骨的长度变化qj(j是结构骨的编号,j=1,2,3,…,m)可以与驱动信息有关,例如,驱动信息可以是驱动机构驱动结构骨运动的信息。在一些实施例中,结构骨的长度变化量还可以与可形变机械臂的形变量有关。例如,可形变机械臂的形变量可以是其结构骨的伸缩形变。在一些实施例中,应用结构骨的长度边界条件,长度边界条件包括结构骨在末端处的长度变化量qj(L)等于长度驱动量qaj与长度形变量εj之和。结构骨的驱动信息包括长度驱动量。例如,可形变机械臂中的所有结构骨沿轴向的长度变化量参见公式(25)。
q(L)=qa+Lallε (25)
在公式(25)中,q(L)=[q1(L) q2(L) ... qm(L)]T表示各结构骨在s=L处的长度,qa=[qa1 qa2 ... qam]T表示各结构骨的驱动量长度,Lall表示结构骨的总长,ε=[ε1 ε2 ...εm]T表示各结构骨上的伸缩线性应变。例如,εj可以是百分比,Lallεj表示第j个结构骨的伸缩形变量。
在一些实施例中,基于解析法对可形变机械臂的力学模型求解,以确定可形变机械臂的外部受力。在一些实施例中,基于打靶法对可形变机械臂的力学模型求解,以确定可形变机械臂的外部受力。
在一些实施例中,基于打靶法对可形变机械臂的力学模型求解以确定可形变机械臂的外部受力可以包括,基于力学模型确定可形变机械臂末端的计算位姿,基于计算位姿确定可形变机械臂的外部受力。
在一些实施例中,基于可形变机械臂在初始位置处的初始受力和初始力矩、结构骨的长度形变量和驱动信息及可形变机械臂的力学模型,确定可形变机械臂末端的计算位姿,其中驱动信息包括长度驱动量。例如,初始位置可以是可形变机械臂的靠近驱动机构的近端位置(例如,可形变机械臂的近端固定位置或者伸出鞘套的位置),可以记为0位置。基于可形变机械臂在初始位置处的初始受力n(0)、初始力矩m(0)、结构骨的长度形变量ε(0)和驱动信息qa(0)及可形变机械臂的力学模型,确定可形变机械臂末端的计算位姿。例如,可以以初始位置为起始点,以末端位置为终点,沿可形变机械臂的轴向进行微分计算得到可形变机械臂末端的计算位姿。
在一些实施例中,可形变机械臂末端的计算位姿可以基于可形变机械臂的中心轴线的计算位姿。例如,可以基于估计的初始位置处的初始受力n(0)、初始力矩m(0)、结构骨的长度形变量ε(0)和已知的驱动信息qa(0),通过公式(13)-(25)计算可形变机械臂末端的位姿。
在一些实施例中,中心轴线的位姿可以基于中心轴线上的每一个轴向点的位置以及姿态确定。例如,可以构建每一个的轴向点的可形变机械臂坐标系,如图19所示,基于每一个可形变机械臂坐标系确定每一个轴向点的位置和姿态。在一些实施例中,可以基于可形变机械臂的末端坐标系确定该可形变机械臂末端的位置和姿态。
在一些实施例中,响应于可形变机械臂末端的计算位姿与所获得的可形变机械臂末端的位姿(以下也称“所获得的位姿”)之差满足误差要求,基于初始受力和初始力矩,确定可形变机械臂的外部受力。例如,当基于可形变机械臂在初始位置处的初始值(例如,初始受力和初始力矩、结构骨的长度形变量和驱动信息)确定的计算位姿与基于所获得的位姿的位姿差满足误差要求(例如小于误差)时,说明初始位置处的初始值满足外部受力计算的需求。因此,基于可形变机械臂在初始位置处的初始值,确定可形变机械臂的外部受力。
在一些实施例中,基于打靶法对可形变机械臂的力学模型求解以确定可形变机械臂的外部受力还包括,响应于计算位姿与所获得的位姿的位姿差不满足误差要求,调整初始受力、初始力矩和长度形变量。基于经调整的初始受力、初始力矩和长度形变量、驱动信息及可形变机械臂的力学模型,确定可形变机械臂末端的计算位姿,直到计算位姿与所获得的位姿的位姿差满足误差要求。当位姿差不满足误差要求时,说明基于初始值计算得到的计算位姿与所获得的位姿存在一定的差距,初始值需要调整。迭代地调整初始值,基于经调整的初始值确定可形变机械臂末端的计算位姿,直到计算位姿与所获得的位姿的位姿差满足误差要求。当经调整的初始值确定的位姿差满足误差要求时,进行外部受力的计算。这样,通过位姿差对初始值的准确性进行校验,提高了通过初始值计算得到的外部受力的准确性。
在一个实施例中,确定计算位姿与获得的位姿之差参见公式(26)及公式(27),
Δp=p(L)-pmarker(L) (26)
Δω=log(RT(L)Rmarker(L))∨ (27)
在公式(26)中,Δp是可形变机械臂的测量位置pmarker(L)与计算位置p(L)之间的位置之差。在公式(27)中,Δω是反应可形变机械臂的测量姿态Rmarker(L)与计算姿态R(L)之间的姿态之差,()T表示矩阵转置,()∨表示将斜对称矩阵转为向量的运算符:
在一些实施例中,可以基于初值向量的变化对边界条件值向量的影响矩阵,确定初值向量的调整量。初值向量包括初始受力、初始力矩和长度形变量。基于调整量,调整初值向量。例如,可以基于可形变机械臂在初值处的初始受力n(0)、初始力矩m(0)和长度形变量ε确定初值向量x(0)。可以基于结构骨的长度边界条件、可形变机械臂在末端的力矩边界条件和位姿边界条件,确定边界条件值向量b(L)。初值向量x(0)的变化对边界条件值向量b(L)的影响矩阵J,影响矩阵J的表示参见公式(28),
在一些实施例中,可以通过对初值向量的元素施加扰动,计算影响矩阵的元素。基于影响矩阵的元素,调整初值向量的元素。例如,边界条件值b(L)不能显式地表达成关于初值向量x(0)的方程,J可以通过数值方法求得。对于J的第i列,可以在初值向量x(0)的第i个元素上施加扰动,计算影响矩阵J的元素,参见公式(29),
在公式(29)中,ei是第i个元素是1、其它元素是0的向量。δ是很小的正数,是在初值向量x(0)在第i个元素扰动δ时的边界值,bx(0)(L)是在初值向量为x(0)时的边界值。基于公式(17)得到影响矩阵J的元素为J=[J[1] J[2] ... J[n]],基于影响矩阵J的元素J=[J[1] J[2] ... J[n]]及公式(29)调整初值向量x(0)的元素,参见公式(30),
x(0)=x(0)-(JTJ+λI)-1JTb(L) (30)
在公式(30)中,λ是一个正数。在一些实施例中,可以迭代调整初值向量,直到边界条件值向量的误差满足要求。边界条件值向量包括结构骨在末端处的长度等于驱动信息中包括的长度驱动量与长度形变量之和,计算位姿与所获得的位姿之差满足误差要求,以及可形变机械臂在末端处的力矩平衡。例如,基于公式(30)通过数次迭代,可以获得调整的初值向量x(0),使边界条件值向量b(L)=0的误差足够小。这样,通过打靶法对近端初始值进行调整,基于调整后的近端初始值计算可形变机械臂的外部受力,提高外部受力计算的准确性。例如,基于初始受力、初始力矩以及可形变机械臂的受力平衡关系,计算可形变机械臂末端的外部受力。
在一些实施例中,可形变机械臂可以用于执行机器人辅助作业。在作业中,操作者需要感知可形变机械臂所受到的外部作用力,如可形变机械臂与操作对象作用的力,进而根据可形变机械臂的外部受力指导操作者的操作。例如,将可形变机械臂的外部受力反馈至操作者,可以帮助操作者正确地操作施力、实现对操作区域的触摸模拟、或避免错误的操作,进而提高操作精度和操作效率,降低误操作的风险。
上述实施例中,基于可形变机械臂的位姿受到驱动信息以及外部作用力约束的原理,预先构建用于描述可形变机械臂的位姿、可形变机械臂的外部受力以及可形变机械臂的驱动信息之间关系的力学模型。在一些实施例中,可以基于获取到的可形变机械臂末端的位姿、驱动信息,通过可形变机械臂的力学模型计算得到可形变机械臂的外部受力。根据得到的可形变机械臂的外部受力指引主控台的操作者控制可形变机械臂的运动,进行操作。
在一些实施例中,可以利用标识获得可形变机械臂末端的位姿,基于获得的位姿以及力学模型计算可形变机械臂的外部受力。相比于利用力学传感器测量可形变机械臂的外部受力而言,使用标识具有成本低、配置简单、所占用空间小、使用灵活、适用性强以及实用性强的优势。并且,构建的力学模型是可以重复利用的,实现了一次建模可重复计算的高效效果。
本公开一些实施例中,本公开还提供了一种计算机设备,计算机设备包括存储器和处理器。存储器可以用于存储有至少一条指令,处理器与存储器耦合,用于执行至少一条指令以执行本公开的方法中的部分步骤或全部步骤,如图1、图8、图9、图11、图13和图15中公开的方法中的部分步骤或全部步骤。
图20示出根据本公开一些实施例的计算机设备2000的示意框图。参看图20,该计算机设备2000可以包括中央处理单元(CPU)2001、包括随机存取存储器(RAM)2002和只读存储器(ROM)2003的***存储器2004,以及连接各部件的***总线2005。计算机设备2000还可以包括输入/输出***,和用于存储操作***2013、应用程序2014和其他程序模块2015的大容量存储设备2007。输入/输出设备包括主要由显示器2008和输入设备2009组成的输入/输出控制器2010。
大容量存储设备2007通过连接到***总线2005的大容量存储控制器(未示出)连接到中央处理单元2001。大容量存储设备2007或者计算机可读介质为计算机设备提供非易失性存储。大容量存储设备2007可以包括诸如硬盘或者光盘只读存储器(Compact DiscRead-Only Memory,CD-ROM)驱动器之类的计算机可读介质(未示出)。
不失一般性,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、闪存或其他固态存储其技术,CD-ROM、或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知计算机存储介质不局限于上述几种。上述的***存储器和大容量存储设备可以统称为存储器。
计算机设备2000可以通过连接在***总线2005上的网络接口单元2011连接到网络2012。
***存储器2004或大容量存储设备2007还用于存储一个或者一个以上的指令。中央处理单元2001通过执行该一个或一个以上指令来实现本公开一些实施例中的方法的全部或者部分步骤。
本公开一些实施例中,本公开还提供一种计算机可读存储介质,存储介质中存储有至少一条指令,该至少一条指令由处理器执行以使计算机执行本公开一些实施例的方法中的部分步骤或全部步骤,如图1、图8、图9、图11、图13和图15中公开的方法中的部分步骤或全部步骤。计算机可读存储介质的示例包括计算机程序(指令)的存储器,例如,只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)、磁带、软盘和光数据存储设备等。
图21示出根据本公开一些实施例的机器人***2100的示意图。本公开一些实施例中,参看图21,机器人***2100可以包括:工具2150、图像采集设备2110以及处理器2120,工具2150可以包括至少一个可形变机械臂2140。可形变机械臂2140可以如上述图3、图16及图17所示包括一根或多根结构骨310、固定盘330以及至少一个间隔盘320,结构骨310穿过至少一个间隔盘320并且末端与固定盘330固定连接。可形变机械臂2140上形成有末端2130。在一些实施例中,上述固定盘330可以相当于可形变机械臂2140的末端2130。在末端2130上可以形成有或设置有至少一个角度标识和多个位姿标识,在末端2030的远端可以设置有执行器。图像采集设备2110可以用于采集可形变机械臂2140的定位图像。处理器2120与图像采集设备2110连接,用于执行本公开一些实施例的方法中的部分步骤或全部步骤,如图1、图8、图9、图11、图13和图15中公开的方法中的部分步骤或全部步骤。
注意,上述仅为本公开的示例性实施例及所运用技术原理。本领域技术人员会理解,本公开不限于这里的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本公开的保护范围。因此,虽然通过以上实施例对本公开进行了较为详细的说明,但是本公开不仅仅限于以上实施例,在不脱离本公开构思的情况下,还可以包括更多其他等效实施例,而本公开的范围由所附的权利要求范围决定。
Claims (24)
1.一种确定可形变机械臂的外部受力的方法,其特征在于,所述可形变机械臂包括至少一根结构骨、固定盘以及至少一个间隔盘,所述至少一根结构骨穿过所述至少一个间隔盘并且末端与所述固定盘固定连接,所述方法包括:
获取定位图像;
在所述定位图像中,识别位于所述可形变机械臂的末端上的多个位姿标识;
基于所述多个位姿标识,识别位于所述可形变机械臂的末端上的角度标识,所述角度标识与所述多个位姿标识中的第一位姿标识具有位置关联关系;
基于所述角度标识和所述多个位姿标识,获得所述可形变机械臂的末端相对参考坐标系的位姿;
获得所述可形变机械臂的所述至少一根结构骨的驱动信息;以及
基于所获得的所述可形变机械臂的末端相对所述参考坐标系的位姿、所述至少一根结构骨的所述驱动信息及所述可形变机械臂的力学模型,确定所述可形变机械臂的外部受力,其中,所述力学模型基于所述可形变机械臂的所述至少一根结构骨在所述可形变机械臂的横截面上的分布以及所述至少一根结构骨的物理特性;
其中,获得所述可形变机械臂的末端相对所述参考坐标系的位姿包括:
基于所述角度标识和所述多个位姿标识,确定位姿标识坐标系相对可形变机械臂的末端坐标系的滚转角;
基于所述多个位姿标识,确定所述位姿标识坐标系相对所述参考坐标系的位姿;以及
基于所述位姿标识坐标系相对所述可形变机械臂的末端坐标系的滚转角和所述位姿标识坐标系相对所述参考坐标系的位姿,确定所述可形变机械臂的末端相对所述参考坐标系的位姿;
所述力学模型包括与所述至少一根结构骨相关的本构关系及力学平衡关系;
所述本构关系包括内部受力本构关系及内部力矩本构关系,所述内部受力本构关系基于所述至少一根结构骨的剪切拉伸刚度矩阵,所述内部力矩本构关系基于所述至少一根结构骨的弯曲扭转刚度矩阵;
所述力学平衡关系包括所述可形变机械臂的受力平衡关系及力矩平衡关系,所述受力平衡关系包括所述至少一根结构骨沿轴向的受力,所述力矩平衡关系包括所述至少一根结构骨沿轴向的力矩。
2.根据权利要求1所述的方法,其特征在于,包括:
基于所述多个位姿标识在所述定位图像中的二维坐标和所述多个位姿标识在所述位姿标识坐标系中的三维坐标,确定所述位姿标识坐标系相对所述参考坐标系的位姿。
3.根据权利要求1或2所述的方法,其特征在于,包括:
确定所述角度标识在可形变机械臂的末端坐标系中标识的第一绕轴角度;
确定所述第一位姿标识在所述位姿标识坐标系中标识的第二绕轴角度;以及
基于所述第一绕轴角度和所述第二绕轴角度,确定所述位姿标识坐标系相对所述可形变机械臂的末端坐标系的滚转角。
4.根据权利要求1或2所述的方法,其特征在于,所述位置关联关系包括:
所述角度标识与所述第一位姿标识在轴向的对应关系。
5.根据权利要求1所述的方法,其特征在于,包括:
基于所述多个位姿标识的分布,确定所述多个位姿标识在位姿标识坐标系中的三维坐标;
基于所述多个位姿标识在所述定位图像中的二维坐标和所述多个位姿标识在所述位姿标识坐标系中的三维坐标,确定成像变换关系;
基于所述成像变换关系、所述多个位姿标识在位姿标识坐标系中的三维坐标和所述位置关联关系,在所述定位图像中确定多个角度标识候选区域;以及
从所述多个角度标识候选区域,识别所述角度标识。
6.根据权利要求5所述的方法,其特征在于,包括:
基于所述多个位姿标识在位姿标识坐标系中的三维坐标和所述位置关联关系,在所述位姿标识坐标系中确定多个角度标识候选三维坐标;以及
基于所述成像变换关系和所述多个角度标识候选三维坐标,在所述定位图像中确定所述多个角度标识候选区域。
7.根据权利要求6所述的方法,其特征在于,包括:
确定每个所述角度标识候选区域中角点似然值最大的像素以形成像素集合;
确定所述像素集合中角点似然值最大的像素对应的角度标识候选区域作为待识别的角度标识候选区域;以及
使用多个角度图案匹配模板分别与所述待识别的角度标识候选区域进行匹配,以识别所述角度标识。
8.根据权利要求6所述的方法,其特征在于,包括:
基于所述角度标识所在的角度标识候选区域,确定与所述角度标识具有位置关联关系的所述第一位姿标识。
9.根据权利要求1所述的方法,其特征在于,包括:
从所述定位图像中确定多个候选位姿标识;
基于位姿图案匹配模板,从所述多个候选位姿标识中识别初始位姿标识;以及
以所述初始位姿标识作为起点,搜索位姿标识。
10.根据权利要求1所述的方法,其特征在于,所述受力平衡关系包括:
所述可形变机械臂沿轴向在受力处的外部受力与内部受力处于平衡,并且在末端处内部受力平衡;或者
所述可形变机械臂沿轴向在末端处的外部受力与内部受力处于平衡。
11.根据权利要求1所述的方法,其特征在于,所述至少一根结构骨的力矩是基于所述至少一根结构骨在所述可形变机械臂的横截面上的分布以及所述至少一根结构骨的剪切拉伸刚度矩阵来确定的。
12.根据权利要求1所述的方法,其特征在于,所述可形变机械臂的力学模型包括所述至少一根结构骨沿轴向的长度变化量与所述至少一根结构骨在所述可形变机械臂的横截面上的分布之间的关系。
13.根据权利要求1所述的方法,其特征在于,还包括:
应用所述至少一根结构骨的长度边界条件,所述长度边界条件包括所述至少一根结构骨在末端处的长度等于长度驱动量与长度形变量之和,所述至少一根结构骨的驱动信息包括所述长度驱动量。
14.根据权利要求1所述的方法,其特征在于,还包括:
应用所述可形变机械臂在末端的力矩边界条件,所述力矩边界条件包括所述可形变机械臂在末端处的内力矩之和为零。
15.根据权利要求1、2、5-14中任一项所述的方法,其特征在于,还包括:
基于打靶法或解析法对所述可形变机械臂的力学模型求解,以确定所述可形变机械臂的外部受力。
16.根据权利要求15所述的方法,其特征在于,基于打靶法对所述可形变机械臂的力学模型求解,以确定所述可形变机械臂的外部受力包括:
基于所述可形变机械臂在初始位置处的初始受力和初始力矩、所述至少一根结构骨的长度形变量和驱动信息及所述可形变机械臂的力学模型,确定所述可形变机械臂的末端的计算位姿,其中所述驱动信息包括长度驱动量;以及
响应于所述计算位姿与所获得的所述位姿之差满足误差要求,基于所述初始受力和初始力矩,确定所述可形变机械臂的外部受力。
17.根据权利要求16所述的方法,其特征在于,基于打靶法对所述可形变机械臂的力学模型求解,以确定所述可形变机械臂的外部受力还包括:
响应于所述计算位姿与所获得的所述位姿之差不满足误差要求,调整所述初始受力、所述初始力矩和所述长度形变量;以及
基于经调整的所述初始受力、所述初始力矩和所述长度形变量、所述驱动信息及所述可形变机械臂的力学模型,确定所述可形变机械臂的末端的计算位姿,直到所述计算位姿与所获得的所述位姿之差满足误差要求。
18.根据权利要求16所述的方法,其特征在于,确定所述可形变机械臂的外部受力,包括:
基于所述初始受力、初始力矩以及所述可形变机械臂的受力平衡关系,计算所述可形变机械臂的末端的外部受力。
19.根据权利要求17所述的方法,其特征在于,还包括:
基于初值向量的变化对边界条件值向量的影响矩阵,确定所述初值向量的调整量,所述初值向量包括所述初始受力、所述初始力矩和所述长度形变量;以及
基于所述调整量,调整所述初值向量。
20.根据权利要求19所述的方法,其特征在于,还包括:
通过对所述初值向量的元素施加扰动,计算所述影响矩阵的元素;以及
基于所述影响矩阵的元素,调整所述初值向量的元素。
21.根据权利要求19所述的方法,其特征在于,还包括:
迭代地调整所述初值向量,直到所述边界条件值向量的误差满足要求,所述边界条件值向量包括所述至少一根结构骨在末端处的长度等于所述驱动信息中包括的长度驱动量与长度形变量之和,所述计算位姿与所获得的所述位姿之差满足误差要求,以及所述可形变机械臂在末端处的力矩平衡。
22.一种计算机设备,包括:
存储器,用于存储至少一条指令;以及
处理器,与所述存储器耦合并且用于执行所述至少一条指令以执行根据权利要求1-21中任一项所述的确定可形变机械臂的外部受力的方法。
23.一种计算机可读存储介质,用于存储至少一条指令,所述至少一条指令由计算机执行时致使所述计算机执行根据权利要求1-21中任一项所述的确定可形变机械臂的外部受力的方法。
24.一种机器人***,包括:
至少一个可形变机械臂,所述可形变机械臂包括至少一根结构骨、固定盘、至少一个间隔盘以及设置在所述可形变机械臂的末端上的至少一个角度标识和多个位姿标识,所述至少一根结构骨穿过所述至少一个间隔盘并且末端与所述固定盘固定连接;以及
图像采集设备,用于采集所述可形变机械臂的定位图像;
控制装置,被配置为与所述图像采集设备连接,执行根据权利要求1-21中任一项所述的方法,以确定所述可形变机械臂的外部受力。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210141538.9A CN114536331B (zh) | 2022-02-16 | 2022-02-16 | 基于关联标识确定可形变机械臂的外部受力的方法及机器人*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210141538.9A CN114536331B (zh) | 2022-02-16 | 2022-02-16 | 基于关联标识确定可形变机械臂的外部受力的方法及机器人*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114536331A CN114536331A (zh) | 2022-05-27 |
CN114536331B true CN114536331B (zh) | 2023-10-20 |
Family
ID=81676043
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210141538.9A Active CN114536331B (zh) | 2022-02-16 | 2022-02-16 | 基于关联标识确定可形变机械臂的外部受力的方法及机器人*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114536331B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114536329B (zh) * | 2022-02-16 | 2024-05-17 | 中国医学科学院北京协和医院 | 基于复合标识确定可形变机械臂的外部受力的方法及机器人*** |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009285778A (ja) * | 2008-05-29 | 2009-12-10 | Toyota Industries Corp | ロボットハンドの姿勢検知システム |
CN111002341A (zh) * | 2019-12-19 | 2020-04-14 | 中国科学院宁波材料技术与工程研究所 | 绳索驱动三自由度柔性关节刚度测量***及方法 |
CN111618859A (zh) * | 2020-06-03 | 2020-09-04 | 甘博涵 | 一种对于静止或低速工况下机械臂高精度力反馈的方法 |
CN111693040A (zh) * | 2020-06-17 | 2020-09-22 | 苏州恒辉科技有限公司 | 基于串联弹性驱动器的机械臂碰撞检测方法 |
CN112949103A (zh) * | 2019-11-26 | 2021-06-11 | 中国科学院沈阳自动化研究所 | 一种协作机器人非线性刚度建模方法 |
CN112936271A (zh) * | 2021-02-04 | 2021-06-11 | 清华大学深圳国际研究生院 | 一种绳驱柔性机械臂及其三维空间静力学建模方法 |
CN112975934A (zh) * | 2021-03-02 | 2021-06-18 | 中山大学 | 一种多连杆柔性机器人的动力学、工作空间及刚度建模方法及装置 |
CN113172659A (zh) * | 2021-04-22 | 2021-07-27 | 哈尔滨工业大学(深圳) | 基于等效中心点识别的柔性机器人臂形测量方法及*** |
CN113910219A (zh) * | 2020-07-11 | 2022-01-11 | 北京术锐技术有限公司 | 运动臂***以及控制方法 |
-
2022
- 2022-02-16 CN CN202210141538.9A patent/CN114536331B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009285778A (ja) * | 2008-05-29 | 2009-12-10 | Toyota Industries Corp | ロボットハンドの姿勢検知システム |
CN112949103A (zh) * | 2019-11-26 | 2021-06-11 | 中国科学院沈阳自动化研究所 | 一种协作机器人非线性刚度建模方法 |
CN111002341A (zh) * | 2019-12-19 | 2020-04-14 | 中国科学院宁波材料技术与工程研究所 | 绳索驱动三自由度柔性关节刚度测量***及方法 |
CN111618859A (zh) * | 2020-06-03 | 2020-09-04 | 甘博涵 | 一种对于静止或低速工况下机械臂高精度力反馈的方法 |
CN111693040A (zh) * | 2020-06-17 | 2020-09-22 | 苏州恒辉科技有限公司 | 基于串联弹性驱动器的机械臂碰撞检测方法 |
CN113910219A (zh) * | 2020-07-11 | 2022-01-11 | 北京术锐技术有限公司 | 运动臂***以及控制方法 |
CN112936271A (zh) * | 2021-02-04 | 2021-06-11 | 清华大学深圳国际研究生院 | 一种绳驱柔性机械臂及其三维空间静力学建模方法 |
CN112975934A (zh) * | 2021-03-02 | 2021-06-18 | 中山大学 | 一种多连杆柔性机器人的动力学、工作空间及刚度建模方法及装置 |
CN113172659A (zh) * | 2021-04-22 | 2021-07-27 | 哈尔滨工业大学(深圳) | 基于等效中心点识别的柔性机器人臂形测量方法及*** |
Non-Patent Citations (1)
Title |
---|
The Study of Dynamic Modeling and Multivariable Feedback Control for Flexible Manipulators with Friction Effect and Terminal Load;Fuli Zhang 等;《sensors》;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114536331A (zh) | 2022-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021128787A1 (zh) | 一种定位的方法及装置 | |
CN114523471B (zh) | 基于关联标识的误差检测方法及机器人*** | |
CN104427952A (zh) | 用于使用形状感测的变形补偿的***和方法 | |
US20230219221A1 (en) | Error detection method and robot system based on a plurality of pose identifications | |
JP2016109669A (ja) | 情報処理装置、情報処理方法、プログラム | |
CN114536292A (zh) | 基于复合标识的误差检测方法及机器人*** | |
CN114343847B (zh) | 基于光学定位***的手术机器人的手眼标定方法 | |
CN114536331B (zh) | 基于关联标识确定可形变机械臂的外部受力的方法及机器人*** | |
CN114347037B (zh) | 基于复合标识的机器人***故障检测处理方法及机器人*** | |
CN114224489B (zh) | 用于手术机器人的轨迹跟踪***及利用该***的跟踪方法 | |
Chan et al. | A needle tracking device for ultrasound guided percutaneous procedures | |
CN114536330B (zh) | 基于多个位姿标识确定可形变机械臂的外部受力的方法及机器人*** | |
CN114536329B (zh) | 基于复合标识确定可形变机械臂的外部受力的方法及机器人*** | |
CN114536402B (zh) | 基于关联标识的机器人***故障检测处理方法及机器人*** | |
CN113384347B (zh) | 一种机器人标定方法、装置、设备及存储介质 | |
CN116492064A (zh) | 基于位姿标识的主从运动的控制方法及手术机器人*** | |
CN114536401B (zh) | 基于多个位姿标识的机器人***故障检测处理方法及机器人*** | |
Yu et al. | Vision-based method of kinematic calibration and image tracking of position and posture for 3-RPS parallel robot | |
CN116468648A (zh) | 基于关联标识的执行臂检测方法及机器人*** | |
CN116460837A (zh) | 基于关联标识的操作臂防碰撞控制方法和手术机器人*** | |
CN115946105A (zh) | 操作臂的控制方法和手术机器人*** | |
CN116459018A (zh) | 基于复合标识的操作臂防碰撞控制方法和手术机器人*** | |
CN116468646A (zh) | 基于复合标识的执行臂检测方法及机器人*** | |
CN116468647A (zh) | 基于多个位姿标识的执行臂检测方法及机器人*** | |
CN116459019A (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 |
Address after: 100005 Wangfujing, Beijing Dongcheng District Wangfujing Shuai Fu Garden No. 1 Applicant after: PEKING UNION MEDICAL COLLEGE Hospital Applicant after: Beijing Shurui Robot Co.,Ltd. Address before: 100005 Wangfujing, Beijing Dongcheng District Wangfujing Shuai Fu Garden No. 1 Applicant before: PEKING UNION MEDICAL COLLEGE Hospital Applicant before: BEIJING SURGERII TECHNOLOGY Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |