基于视觉伺服的机器人辅助医用显示器可视角检测系统设计

2022-06-10 12:16姜伟平孟子晗嵇志康崔宏恩邢立腾
中国测试 2022年5期
关键词:手眼标定医用

姜伟平,孟子晗,嵇志康,崔宏恩,邢立腾

(1. 江苏省计量科学研究院,江苏 南京 210023; 2. 东南大学,江苏 南京 210096; 3. 南京邮电大学,江苏 南京 210023)

0 引 言

医用显示器是目前所有医学影像诊断、远程会诊、医院信息化等系统中极为重要的显示终端,包括临床诊断等诸多医疗工作者每天都需要使用的装置。与普通显示器相比,医用显示器具有高亮度、高对比度、高稳定性和高一致性的特点,对提高阅片诊断工作效率和保证医学影像诊断质量有着极其重要的意义[1]。

由于医用显示器具有较大的日常使用量,对其及时进行常规检测与校准工作具有很大的现实意义。然而,现有医用显示器校准装置的体积与质量较大,且需要进行装置搭建调平,前期准备工作较多,对于搬运至医院现场进行校准工作而言,具有一定的难度;另一方面,如果将显示器送至实验室进行检测校准也具有其局限性,由于医用显示器的高分辨率液晶屏属于易碎品,在向实验室送检的过程中对运输有着极高的要求,并且送检实验室的时效性难以满足医院的临床要求。研究设计一款简便并且能够送至医院对医用显示器进行自动精确检测的设备。

目前,基于视觉伺服的机器人辅助系统,已经广泛应用于医疗诊断等领域。文献[2]设计了一种基于视觉伺服控制器的超声波扫描机器人系统,通过机器人来对病人进行超声波检测工作,降低了对临床医生操作技能的要求,并提高了检查效率;文献[3]提出了一种基于相机控制的视觉伺服手术系统,通过机械臂操作内窥镜摄像头对手术工具进行腔内跟踪,从而降低了医疗风险。从这些研究中可见,基于视觉伺服的机器人辅助系统在实现精细夹取、移动、识别、检测等方面有着较大的优势。

针对现有医用显示器可视角校准检测中面临的问题,本文设计了一种基于视觉伺服的机器人辅助医用显示器可视角检测系统,该系统首先通过机械臂的移动使工业相机获得医用显示器中心的标靶位置信息,然后移动机械臂末端,使亮度计先垂直对准显示器的中心,接着以显示器中心为圆心,先后向水平与竖直两个圆弧方向移动,直至找到显示器水平与竖直可视角的最大值。

1 系统组成

基于视觉伺服的机器人辅助医用显示器可视角检测系统的组成如图1所示,该系统主要由机械臂本体、工业相机、亮度计以及交互控制界面组成。实验装置通过将亮度计与工业相机安装于机械臂的末端位置,将机械臂基座上的吸盘与桌面连接进行固定;交互控制界面由控制按钮与信息输出窗口组成,用户通过点击按钮控制系统进行检测,并从窗口中获取所检测的可视角值。

图1 机器人辅助医用显示器可视角检测系统

该可视角检测系统流程图如图2所示,在检测开始时机械臂携带工业相机旋转,寻找位于医用显示器中心显示的标靶图片,找到后经由手眼标定算法所得的转换矩阵将医用显示器中心坐标转换至机械臂坐标系下,接着机械臂携带亮度计与工业相机接近显示器中心区域比进行位置校正,并采用光亮度比法开展校准[4],亮度计垂直于显示器正中位置读取100%全白场与0%全黑场的测试信号,并以显示器中心点为球心,分别向竖直、水平四个方向沿球面圆弧以1°角度移动,读取显示器各角度的全白场与全黑场测试信号。当全白场与全黑场光亮度比小于10时,所测得的夹角就是所需的可视角。

图2 可视角检测系统流程图

2 方 法

2.1 视觉伺服系统设计

根据相机与机械臂在空间中固定的不同,可以归类为“眼在手外”(eye to hand)与“眼在手上”(eye in hand)两种方式。“眼在手外”要求相机安装在固定位置,设备整体拥有较大的固定视野范围;“眼在手上”要求相机固定在机械臂末端,相机视野随机械臂末端移动而移动。

考虑在医院环境搭建“眼在手外”的固定方式,相机与机械臂两者的相对位置与实验室校准值会存在偏差,需要重新进行标定,与设计要求的简便性相违背,所以此处选择“眼在手上”的固定方式。针对相机读入的信号与测试过程中不同阶段的需求,本文采用基于位置的视觉伺服与基于图像的视觉伺服两种方式。

检测开始阶段采用基于位置的视觉伺服,通过工业相机寻找并采集目标标靶信息,经过相机标定以及手眼标定,标靶在机器人基坐标系下的位姿,机械臂运动解算控制器将得到的笛卡尔坐标系下的位置信息通过机器人逆运动学解算变为具体的输出信号,驱动机械臂移动。当图像中心与标靶中心基本重合时,采用基于图像的视觉伺服进行二次修正,如图3所示,工业相机直接获取与计算当前图像中心与标靶中心的位置误差,以其为控制条件驱动机械臂进行移动,补偿基于位置的视觉伺服因标定精度和坐标转换造成的误差问题[5-6]。

图3 视觉伺服流程图

2.2 相机标定理论

在机器视觉定位过程中,为了得到三维空间中的点与图像中的点的对应关系,需要对相机进行标定,求解相机的内参外参[7]。相机标定法主要分为传统的摄影测量标定法和自标定法,此处选择的张正友相机标定法介于传统的摄影测量标定方法和自标定方法之间,并较于其他方法更加便捷、稳定。

选用如图4所示的针孔相机模型为例,现实中的一点P,经过相机光心O投影后,落在物理成像平面上,成像为点P′。整个成像过程涉及四个坐标系:像素坐标系、图像坐标系、相机坐标系和世界坐标系。设点P在世界坐标系下的物理坐标为 (U,V,W),经过旋转变换和平移后得到其在相机坐标系下的坐标,再根据投影关系获取成像点在图像坐标系中的坐标,最后经过采样和量化得到像素坐标系下的坐标(u,v,1)[8]。

图4 针孔相机模型

式中:Z——尺度因子;

R——3×3单位正交化矩阵;

t——3×1平移向量;

f——相机焦距;

(u0,v0)——相机光心位置。

本文的相机标定实验在ROS框架下进行,选用分辨率为 4 096×3 000、像素尺寸 3.45 μm×3.45 μm的工业相机,采用张正友相机标定法进行标定,通过将已知的棋盘格标定板设为被标定物,多次改变相机与棋盘格标定板的相对位置,通过使用camera_calibration功能包求解像素坐标系与世界坐标系间的对应关系,获得相机的内参、外参矩阵与畸变参数。

进行实验前,首先准备棋盘格标定板,并将其固定,确定其方格的精确边长;然后在Linux系统下启动工业相机驱动程序与ROS框架下的camera_calibration程序;在如图5所示的显示窗口中充分移动相机,使标定板出现在程序显示窗口各个方位。以程序中的X、Y、Size和Skew的标志为参考,分别沿水平、竖直于远近的方向移动工业相机,并进行适当的旋转,直至获取到具有足够特征的图片集,标志下方显示条变成绿色,并且显示窗口中Calibrate亮起,点击并计算得出相机的标定参数。

图5 相机标定显示窗口

2.3 机器人手眼标定

由前文所述,选择“眼在手上”的固定方式,将工业相机与机械臂的末端执行器相固定。为了将工业相机识别的坐标转换为在机器人坐标系下的坐标,需要对相机与机械臂进行手眼标定。此处选择仍具有较高使用价值的经典两步法进行“眼在手上”的手眼标定。

机械臂与工业相机“眼在手上”的固定方式要求机械臂与标定板的相对位置恒定,通过改变机械臂末端固定的工业相机拍摄标定板的角度获得不同的机械臂基坐标系与末端坐标系的转换关系和相机与物体之间的转换关系,最终解算出相机与机械臂末端之间的转换关系[10]。

文章的手眼标定实验仍在ROS框架下进行,选用六轴机械臂与前文所述的工业相机,以如图6所示的ArUco Marker的二进制平方标记作为被识别的标定板,调用OpenCV库,在完成相机标定后即可获得相机与标靶之间转换关系。初始化完成后,打开机械臂的驱动程序与ROS中的手眼标定程序easy_handeye,如图7所示,通过移动机械臂的末端获取足够多的转换关系对相机与末端的转换关系进行求解。

图6 ArUco Marker示意图

图7 手眼标定显示窗口

为了提高该手眼标定的精度,标定时机械臂的移动方式也有一定的要求[11]。在获取机械臂基坐标与末端的转换关系和相机与物体的转换关系时,需要保证不同转换关系之间具有一定的旋转,减少不同姿势之间的平移,获取尽可能多的转换关系并保证相机与标定板之间的距离合理。

3 实验结果

3.1 相机标定实验

参照前文相机标定实验,获得如下的标定参数:

3.2 手眼标定实验

参照前文手眼标定实验,获得的标定结果如表1所示,为平移矩阵系数与旋转四元数系数。

表1 手眼标定结果

其中平移矩阵系数即为前文所述3×1平移矩阵t中的参数,旋转四元数系数通过四元数与旋转矩阵间的转换可得前文所述3×3旋转矩阵R。手眼标定相机与机械臂末端的转换矩阵如下所示:

为了评价文章标定方法的精度,将标定物分15次置于机械臂前放的不同位置,通过重复比对其在机械臂基坐标系下的坐标位置与其实际坐标位置计算器标定精度。比对数据如图8~图10可见,实验标定方法的最大偏差为4.22 mm,理论点与实际点的平均距离为3.313 mm,一致性分析所得三轴Cohen’s kappa分别为 0.922、0.710、0.910,具有较强一致性,基本满足要求。

图8 X轴实际值与检测值对比

图9 Y轴实际值与检测值对比

图10 Z轴实际值与检测值对比

3.3 位姿误差补偿

机械臂实际位姿与理论位姿存在着一定的误差,需要我们对误差进行分析后通过误差补偿来确保最终获得的可视角检测结果准确可靠。

我们选择了离线补偿的方式进行机械臂几何参数的误差补偿[12],如图11所示,将期望轨迹td输入到控制器中,其基本原理在于根据几何模型f(td,π+Δ)求逆运动学,通过关节角度q得到笛卡尔位置tm,求解tm的关节角度值后与机械臂驱动器实际读数进行比较,从而获得修正后的轨迹。

图11 几何参数的离线误差补偿

经误差补偿减小了位姿误差后,机械臂的重复定位误差可达到±2 mm以内。采用控制单一变量法分析,机械臂末端在测量可视角参数过程中,与旋转轨迹圆心(即显示器中心)的距离约50 cm(模拟临床实际阅片距离),当误差到达极限值时,将导致可视角测量结果发生0.23°的偏差,产生的相对误差小于1%,在允许误差范围之内。

3.4 医用显示器可视角检测实验

采用3.1与3.2所得的相机标定数据与手眼标定数据,通过所设计系统对5块显示器进行可视角监测,并与当前实验室通用显示器校准装置进行对比,如表2所示。

表2 可视角对比实验数据

由表可见,本文所设计的基于视觉伺服的机器人辅助医用显示器可视角检测系统,与当前实验室通用显示器校准装置所测得的结果最大允差小于1°,符合国家校准规范中对可视角检测的相关要求。

4 结束语

文章针对当前实验室医用显示器校准装置难以在医院现场开展检测这一问题,提出了一种基于视觉伺服的机器人辅助医用显示器可视角检测系统设计。实验表明,在视觉伺服系统的基础下,通过对工业相机进行相机标定与手眼标定,所获得的机械臂基坐标系下的目标位置较为精准,能够为亮度计的定点检测、识别提供目标基础。总体设计能够实现在医用显示器实际使用环境中,快速搭建检测系统并部署自动检测,为实施医用显示器的质量监管提供了解决方案。

猜你喜欢
手眼标定医用
手眼:红色连成线
观察力、手眼协调能力
培养手眼协调能力,创意思维能力
75%医用酒精
75%医用酒精
使用朗仁H6 Pro标定北汽绅宝转向角传感器
CT系统参数标定及成像—2
CT系统参数标定及成像—2
一种高精度的机器人手眼标定算法*
关于医学院校医用英语教学的几点思考