杨智坤,何炳蔚,陈水酉,张雅玲
(福州大学 机械工程及自动化学院,福建 福州 350116)
在神经外科手术中,手术导航系统可以跟踪手术器械和患者的空间位置,并将位置在显示器中实时显示[1]。实现手术导航的关键步骤是术前获取病人空间与图像空间的转换关系,这一过程叫做空间注册[2]。CT或MRI医学图像所在的坐标系称为图像空间坐标系,患者所处的世界坐标系称为实际空间坐标系,两者注册的准确性将直接影响手术导航的精度。
现代无框架式神经外科导航中,病人真实空间与图像空间的注册方法在不断地发展与创新。通常是从图像空间和实际空间中待注册的数据集合,获取转换矩阵[3]。目前临床上使用较为广泛的两种匹配方法分为基于标记点注册和基于面注册[4]方法。基于标记点的注册方法是在病人解剖位置黏贴标记点,通过追踪系统捕捉标记点的位置,再与图像空间的坐标系进行注册;基于面注册是通过激光扫描器或3D探针获取病人真实空间的脸部几何信息,运用多模图像融合算法得到三维图像中人脸的三维信息,再利用算法关联两个空间的对应信息完成注册。
面注册不同于标记点注册,它无需黏贴标记点,且面注册是一个平均全局效果,克服了标记点注册不准确带来的误差[5],但常规激光扫描仪获取人脸几何信息时费事费力,本文提出了一种基于深度相机的手术导航注册方法,将面注册问题转换为点云配准问题,有效解决面注册过程中时效性问题,现介绍如下。
本文以2017年某省立医院收治的一名侧脑室中度扩大的男性患者为研究对象,以该名患者的CT及MRI图像为原始数据,通过多模融合图像技术、三维重建技术,得到三维虚拟脑模型,如图1所示。通过软件可将模型点云化,虚拟模型点云所在的空间为图像空间。
将三维虚拟脑模型转换成STL文件,导入3D打印机配套软件中,并采用Objet 350 Connex彩色打印机。由于该打印机可以打印出不同硬度、不同颜色的模型,且精度高达0.016mm,能真实还原人脑颅骨结构,满足医学模型要求。最终完成各部分的实体模型制作,如图2所示,该实体模型所在的空间为实际空间。
图1 三维虚拟模型
图2 三维实体模型
深度相机因能够感知环境中的深度信息使其具有十分独特的优势,在获取彩色图像的同时得到图像的深度信息,并在标定彩色和红外摄像机相对位置关系后,可快速获取彩色的场景三维点云图[6]。文中所使用的传输和供电均使用USB数据线的ASUS Xtion Pro深度摄像机获取实体模型点云,如图3所示。
图3 ASUS Xtion Pro深度摄像机与深度图
基于点云的面注册是通过特定的设备和算法获取物体表面特征,这些特征由大量的点构成点云。点云配准过程一般分为粗配准和精配准,本文采用图4所示的流程图进行点云面注册。
图4 基于点云的面注册流程图
深度相机获取点云过程中受到很多因素的影响,不可避免会产生噪声[7]。在注册过程中,噪声点云将影响注册的精度,所以注册之前需要去掉噪声点;有时实际场景比较复杂,无效的点云信息较多,因此需要滤除无关的点云信息,完成目标点云的分割。经点云的预处理,可获得有效的点云数据,提高后续点云配准效率。点云预处理效果如图5所示。
图5 点云预处理效果对比
PCA(principal components analysis)即主成分分析方法,是一种通过降维的方式将复杂高维相关特征转变为低维独立特征的分析方法[8]。顾名思义,主成分分析就是对数据提取出主要成分、主要信息,忽略次要的部分,起到降低数据规模的作用。数据中相对变化最突出的部分即为第一主成分,后续每个主成分都正交于前面组件的约束条件,因此得到的向量成分是不相关的正交基集。PCA坐标变换是正交化的线性变换,即将原有的数据坐标变换到新的坐标系下。通过这种方式获得新的坐标轴,方差较大的方向都包含在前面的坐标轴中,后面的坐标轴包含的方差几乎为0,因此,只保留前面3个坐标轴。
PCA算法流程如下:
2) 求Xn协方差矩阵,记为∑;
3) 计算协方差矩阵∑的特征值及特征向量;
4) 将特征值按从小到大排序,找出最大的几个及对应的特征向量。
以图像空间的头皮点云为例(图6),其点云的中心点为原点,方差最大的3个方向为新坐标系的x、y、z轴,形成PCA坐标系下新的点云坐标。
图6 图像空间头皮点云PCA坐标系
(1)
其中:ui(i=1,2,3,4)表示图像空间PCA坐标系中3个主成分向量和中点坐标;vi(i=1,2,3,4)表示实际空间PCA坐标系中3个主成分向量和中点坐标。根据上述等式,可以求解得出初配准转换矩阵Mtrans,通过粗配准可将两空间坐标系大致配置在一起,防止后续使用迭代配准算法时陷入局部最优值,而得不到正确结果。
近年来,有很多新颖的算法可以克服配准数据初始位置的限制,得到很好的配准效果,但有些算法过程较复杂,所需的时间较长,在对配准速度要求较高的医学上是很少被使用的。CPD(coherent point drift)一致性点漂移算法是一种基于高斯混合模型(GMM)的点云配准算法,2010年由MYRONENKO A等[9]提出。CPD算法包括刚性配准和非刚性配准两大类,文中的实体模型点云与虚拟模型点云配准为刚性配准。CPD算法将两片点云的匹配问题转化为概率密度估计的问题,将其中一片作为GMM的质心,另一片点云则是由这些质心生成的数据点集,通过计算概率不断重置质心的位置,使其与数据点集的匹配度最高。
对于给定的两片点云,将目标点云Y={y1,y2,…,yM}看作是GMM的质心,源点云X={x1,x2,…,xN}是由GMM生成的数据点集,其中M、N分别为两片点云中的数目,定义点xn的GMM概率密度函数为:
(2)
点云配准就是利用最大对数似然函数或者最小负数对数似然函数的方法不断重置GMM的质心,直到两片点云配准概率最大,此时协方差系数σ2也随质心位置变化而变化。设θ为GMM质心改变的转换参数,即旋转平移参数,则负对数似然函数表示为:
(3)
求得此时似然函数的最小值,重复迭代参数θ和概率密度函数p(xn|m)直到似然函数不再有明显变化,此时参数θ即为配准的转换矩阵。
图像空间与实际空间获得的信息以同样的格式.pcd传输到计算机中,实现点云配准,本文使用的计算机主要配置为Windows 10 专业版系统,CPU为i7-6700,主频为3.40GHz,16GB DDR3内存,NVIDIA GeForce GTX 1070的显卡,开发软件是Microsoft Visual Stdio 2015和Visual C++,使用MATLAB2016a辅助显示配准结果。
图7 待配准的图像空间和实际空间头皮信息初始位置
将图像空间、实际空间转换到各自PCA坐标系下,并将它们在同一坐标系下显示,如图7所示。经过粗配准,效果如图8所示。
图8 PCA坐标系下的粗配准
根据图8可以看出,图像空间点云与实际空间点云已大致配准。从图9和表1可以看出本文的算法与传统的ICP算法无论是在精度方面还是在误差方面相比有较大的优势,尤其是初始位置相差较大的点云,ICP算法容易陷入局部最优解,配准效果不佳,本文算法可有效完成配准并得到旋转矩阵,如图10所示。对于在医学中,对算法鲁棒性要求较高的环境下,注册精度一般要求在2mm以内,本文算法的精度为7.56×10-4m,满足要求。
图9 精配准实验对比
表1 不同算法下点云配准结果比较
图10 获得的旋转矩阵
基于深度相机的神经导航注册算法能够在保证精度的情况下,快速地将图像空间与实际空间进行注册,通过PCA坐标转换的方法快速完成粗配准,利用CPD精配准完成神经导航面注册。本文通过模型对算法进行验证,已证明该算法有较好的配准精度和配准速度,但还未进行临床实验,临床实验还需考虑诸多问题,有待进一步研究。