深入浅出医学图像配准

  • 目录
    • 从一个小故事开始说起
    • 注册配准的分类及相关技术
    • 点对配准和点云配准
    • 相机标定
    • 手眼标定(eye in hand/eye to hand)
    • 医学场景具体应用

目录

从一个小故事开始说起

最开始接触图像配准、图像注册、注册配准等这几个词时,不太明白这里的“注册”是啥意思,后来才知道这是一个英文单词“registration”翻译过来的,中文意思是“注册”也有“配准”的意思,因此“注册”、“配准”、“注册配准”都其实是一个意思。

当你每天下班回家或者开车到一座新的城市旅游时,你会打开地图APP输入你想要去的目的地,地图会根据你目前的位置和目的地根据现实实际情况自动规划出几条行车路径,并告诉你这几条路径中分别会遇到几个红绿灯以及拥堵情况等,当你选择一条路径后,APP根据你的实时位置告诉你啥时候直行、哪个时候该转弯了,最终到达了目的地。以上就是地图导航。

手术导航或许对于大家来说很陌生,但其实跟地图导航有异曲同工之妙。先抛出概念,手术导航原理是利用计算机中的医学图像和重建后的三维模型指导实际的手术过程,原理有点晦涩难懂。在手术前,先对患者的病灶部位进行CT或MRI成像并三维重建,这一步骤在CT设备内部自动完成的,医生通过观察患者重建后的三维图像判断病灶位置,根据三维图像不同的切面规划手术路径,找到最佳的入针点和靶点位置,选择合适的手术方案,对应地图导航中的目前位置、目的地和路径规划。手术中,在光学跟踪仪的跟踪下,准确的跟踪到手术器械的实时位置,并通过手术空间和图像空间的配准将手术器械的实时位置显示在图像上,医生参考患者病灶部分的图像实施手术,对应地图导航中的实时定位。

整个手术导航过程中重要的步骤是将患者实际体位和图像空间位置(即患者“地图”)进行配准,这个过程叫做注册。

注册配准的分类及相关技术


注册配准基于变换分类可分为刚性配准和非刚性配准。

例如手术器械在进行肝脏手术中,肝脏会受到力的作用会变形,如果按照刚性配准的话,必然会带来误差,此时需要把误差考虑进去,因此需要非刚性配准,即动态配准。

在进行骨科手术中,骨头相对变形较小,所以为刚性配准,即静态配准。
注册配准根据优化目标分类,可以分为全局配准和局部配准,全局一般为粗配准,局部一般为精配准。
注册配准也可以基于对应分类,分为点对配准和点云配准(下一章节详细描述)。
以上这三种分类方法是最常见的分类,当然还有其他的分类,这里不再阐述。总而言之,注册配准就是找一对一之间的关系,可以是图像之间的,图像和实物之间的,实物和实物之间的等等。后面的阐述是以图像和实物之间的注册配准。
注册配准主要的关联技术有模型分割、模型重建、设备标定和目标识别。手术前,一般会对患者进行拍CT,传统的模型分割是由医生手动分割目标区域,还是以肝脏为例子,这种精度虽然很高,但是需要四小时左右,效率极低,用CT图像分割目前最主要的问题在于肝脏边缘较为模糊,而对肝脏图像分割的准确性关系到后期模型重建的精确度。从术前图像中分割出各组织图像,并选择合适的方法进行模型的三维重建,模型重建即通过对肝脏及内部各组织的重建,获得虚拟模型,为手术的路径规划提供场景信息。

点对配准和点云配准


上图中分别为点对配准和点云配准的医学影像CT图像(影像空间)和患者实际三维空间(物理空间),两者的输入、优势和劣势已在表格中展现出来了,两者不同之处在于点对配准的前提是已知了一一对应的关系,而点云配准是需要设备自己去识别这种一一对应的关系。

点对配准按照标志点分类可以分为外置标志点和生理特征点。
外置标志点分为嵌入式和佩戴式。
以下两种都是嵌入式的一种,即将骨钉打入患者的头部。


以下是佩戴式的一种,即将反光小球粘贴在患者头部。显然这种佩戴式是粘贴上是,很容易移位,因此精度没有嵌入式的高,但是不会给患者带来一定的痛苦。

生理特征点指的是自然姿态下容易识别的标志。
点对配准目前最流行的算法为SVD法和Berthold法,这里不再具体说明,可以翻阅其他博客,这些算法其实就是为了简化计算复杂程度、提高配准精度。

点云配准中的点云是指通过相应的设备获得物体表面海量点集,最经典的算法是ICP算法,具体算法思路也可参考其他博客。

下面举一个关于肝脏两图像之间的点云配准的例子。首先找出特征点,特征点是能够在其他含有相同场景或目标的相似图像中以一种相同的或至少非常相似的不变形式表示图像或目标,通常是图像的边缘点、交接点、拐点等,特征点为从图像中识别出特征点,并将特征点及其领域的图像信息用特征描述以便于匹配,最后在两幅图像间寻找相似的特征点建立匹配对。下面两图分别为肝脏优化前后的对比图,优化前,肝脏配准的错匹配多,原因在于肝脏图像细节不明显,特征点的差异较小,第一次筛选是取一幅图像中的关键点,并找出其与另一幅图像中匹配点和次匹配点,如果相近的距离除以次近的距离得到的比率小于设定的阈值,则接受这一对匹配点,第二次筛选是基于两个匹配点间的欧式距离,对欧式距离较大的匹配进行剔除,最后优化后的匹配要比之前好很多。

以上是注册配准的一个大致的流程,下面从原理进行展开讲述,即手眼标定,其中相机标定是手眼标定中的一个环节,现在我们先大概了解下什么叫相机标定。

相机标定

相机标定后可以干以下几种事情:1.消除镜头变形;2.使用立体相机估算深度;3.测量平面物体;4.估计3D结构相机运动。

相机标定的原理其实很简单,即计算出几个坐标系之间的转换关系,用到线性代数和矩阵论的相关知识。这几个坐标系即为世界坐标系、相机坐标系、像平面坐标系和像素坐标系,通过得到这几个坐标系之间的转换关系,可以算出任意点在各个坐标系下的坐标位置。
相机标定是基于小孔成像原理,即一个三维物体经过小孔成像后在图像表面上形成一个二维倒立的图像。

在实际的相机标定中,如下图所示,像素坐标系是为了描述成像后的像点在数字图像上的坐标而引入,是我们相机内读取到的信息所在的坐标系,即下图中的U和V,该坐标系所在的平面即为小孔成像原理图中的Virtual image plane。图像坐标系是为了描述成像过程中物体从相机坐标系到图像坐标系的投影投射关系而引入,方便进一步得到像素坐标系下的坐标。

图像和像素坐标系变换关系用矩阵表示为:

其中dx、dy分别为单位像素在x,y方向上的长度,也称为像素尺度系数;(m,n)为图像坐标系原点在像素坐标系中的坐标。
相机坐标系是为了描述物体相对相机的位置,相机和图像坐标系转换关系为:

其中f为相机的焦距。
世界坐标系与相机坐标系之间的转换关系为:

由此可见,未知参数dx、dy、m、n、f为相机内参,即只与相机本身属性有关,位置参数R和T为相机外参,每次改变相机位置,只改变外参而不改变内参。相机标定的过程就是确定这几个未知参数的过程。

相机标定方法目前最常见的有两种,一种是Tsai两步标定法,原理和局限性见上图(后续也会扩展的讲),另一种是张正友平面模板标定法,即需要借助棋盘格进行标定,步骤见上图所示。
下图是在张正友标定法中,安装在机械臂末端上的相机不同角度拍摄棋盘格,是为了获取不同姿态信息。

手眼标定(eye in hand/eye to hand)

手眼标定通俗易懂的说也是确定两坐标系之间的转换关系,相机为eye,机械臂末端为hand,即确定的是相机与机械臂末端之间的转换关系。手眼标定分两种,一种是eye to hand,手和眼分开,如下图所示。

另一种是eye in hand,即眼在手上,如下图所示。这两种根据具体应用场景去选择,但是总体来说,eye to hand要比eye in hand的精度要高一些,原因在于在eye in hand过程中,相机会随着机械臂的运动会有所移动,同时相机不断的安装和拆卸也会影响到精度。

在手眼标定中,经过一系列的变换矩阵计算,最终得到AX=XB和AX=ZB这两种模型,一般用的最多的是AX=XB模型,这里面X即为要求的手和眼之间的变换关系,A为机械臂末端到机器人基座标系之间的变换关系,B为上一章节相机标定中的相机到棋盘格之间的变换关系。

模型中的A可以先通过实验得到相关数据,并通过机器人正运动学建模求解得到,这里是用D-H法建立坐标系,其中DH参数直接由厂家提供。

模型中的B即可通过测量物体相对于相机的相对位置和姿态得到。在相机内参数和像素参数已知的条件下,拍摄一幅空间N个目标点的图像,这N个目标点空间坐标已知,各目标成像的像点坐标可以通过图像分析得到。

在相机实际标定中,任何透镜都不是完美无瑕的,透镜的瑕疵会导致图像畸变:色像差、球面像差、像散现象和几何畸变等。几何畸变是机器人应用过程中遇到的最主要问题,包含两个部分:径向畸变和切向畸变。

上图的棋盘格,正常情况下相机应拍出下图(a)这种形式,由于径向畸变和切向畸变的存在,最终拍出了类似(b)(c)和(d)这种形式,可以看出越是边缘部分,畸变越大。

径向畸变和切向畸变带来的误差如下式所示:

以上是手眼标定的整个流程,现在对原理进行分析。在手眼标定的两模型中,有论文显示这两种模型区别在于机器人运动误差与时间是否独立相关。

现在对AX=XB模型进行求解。
旋转矩阵的表示方法有很多,这里的表示方法是由矢量轴和转角表示,如左下图所示,一个向量V绕着矢量轴旋转一定角度到向量Vrot,这里的变换关系由下图的红色框框表示,即为罗德里格斯公式。

在AX=XB模型中,用Tsai算法进行求解推导,先由罗德里格斯公式和方程(4)求得旋转矩阵,带入方程(1)求得平移向量,此为秩亏矩阵,因此需要2个以上的方程组并结合线性最小二乘法求解旋转和平移。

在手眼标定早期的求解是将旋转和平移分离求解,求解形式简单、速度快,但是对于误差敏感,同时旋转产生的误差会传导到平移部分。

除此之外,棋盘格也会影响到手眼标定的精度。比如Chessboard必须完全可见,不能有遮挡,否则识别不出来;改进后的ArUco以二维码的形式呈现,但是角点精度不够;ChArUco是前两者的结合,允许局部遮挡,棋盘的角点提高了全局精度。

即使鼠标局部遮挡,但也能识别出角点。


有论文显示,二维码的生成形式也会影响到手眼标定的精度。因此需要生成合适数量和inter-marker的靶标库用来估算姿态,以及靶标被遮挡的问题,虚拟现实姿态估计。

在进行遮挡检测时,其实已经进行了背景建模。

医学场景具体应用

手眼标定精度验证流程:机器人处于任意姿态拍摄棋盘→计算矩阵X,将棋盘角点换算到机器人坐标系→基于ROS进行机器人避障及笛卡尔路径规划→末端验证工装走点验证→验证边缘精度→验证角落

穿刺精度验证:机器人基于配准结果进行走点验证→安装工装进行验证→多孔径进行验证

深入浅出医学注册配准相关推荐

  1. ANTS医学影像配准+Li‘s 核磁共振影像数据处理

    ANTS医学影像配准+Li's 核磁共振影像数据处理 讲解视频内容请移步Bilibili: https://space.bilibili.com/542601735 入群讨论请加v hochzeits ...

  2. 【配准】2020年“基于深度学习的医学影像配准”期刊论文速览(PR,TMI,MIA)

    针对基于深度学习的医学影像配准,检索了最新的(2020年)期刊论文,包含PR.TMI.MIA3个期刊,下面是浏览论文中的一些记录. 其中有两篇论文提供了代码. 一.PR Deep morphologi ...

  3. 医学影像配准 NCC Loss

    医学影像配准 NCC Loss 1.归一化交叉相关Normalization cross correlation (NCC) 2.图像匹配 | NCC 归一化互相关损失 | 代码 + 讲解 2.1 互 ...

  4. 顾险峰教授:解读医学影像配准的基本算法

    本文来自微信公众号"老顾谈几何",作者顾险峰教授,雷锋网(公众号:雷锋网)经顾险峰授权转载. 顾险峰教授,美国纽约州立大学石溪分校计算机系和应用数学系的终身教授,也是清华大学丘成桐 ...

  5. Li‘s 核磁共振影像数据处理-30-高级医学影像配准软件ANTs安装

    讲解视频内容请移步Bilibili: https://space.bilibili.com/542601735 入群讨论请加v hochzeitstorte 请注明"核磁共振学习" ...

  6. AI医学影像技术展望

    AI医学影像技术展望 医学影像是指为了医疗或医学研究,对人体或人体某部分,以非侵入方式取得内部组织影像的技术与处理过程.它包含以下两个相对独立的研究方向:医学成像系统(medical imaging ...

  7. 医学图像配准:A Rigid Registration Method in TEVAR

    A Rigid Registration Method in TEVAR TEVAR 中的一种刚性配准方法 摘要 Since the mapping relationship between defi ...

  8. 中国医学影像人工智能20年回顾和展望

    点击下方卡片,关注"CVer"公众号 AI/CV重磅干货,第一时间送达 转载自:中国图象图形学报 点击进入-> CV 微信技术交流群 中国图象图形学报 在过去20年里,医学影 ...

  9. 医学图像配准中的深度学习综述论文解读

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 来源:https://zhuanlan.zhihu.com/p/9 ...

最新文章

  1. Codeforces Gym 100650B Countdown (离线)
  2. bzoj 4921: [Lydsy六月月赛]互质序列
  3. Android 自定义WebView 实现可以加载缓存数据
  4. 【C语言简单说】三:整数变量和输出扩展(1)
  5. 百兆光纤收发器和千兆光纤收发器的区别
  6. springboot 优雅关闭_Springboot 优雅停止服务的几种方法
  7. asterisk远程注册
  8. 用winform实现一个B/S代码更新打包工具
  9. Android中activity的生命周期
  10. 单点登陆_规避单点故障,MySQL 8.0 MGR软负载怎么选?
  11. 高校科研管理系统源代码_教育领域各大高校如何建设智慧校园?你的学校够数字化吗?...
  12. 各省2002-2017年绿色全要素生产率(超效率SBM、EBM、方向距离函数)
  13. 康师傅矿物质水黑幕:水源竟是自来水
  14. 记录一次解决后端接口设置cookie设置不上去经过,一级域名可以设置上去cookie,二级域名设置不上cookie
  15. 深度学习笔记 —— 微调
  16. 项目Beta冲刺(3/7)(追光的人)(2019.5.25)
  17. pip install 后面加个点是什么意思?
  18. 华硕rt-ac85p更换新驱动(一)
  19. uniapp调用android原生方法
  20. SpringBoot @Bean

热门文章

  1. Windows Server 2008 R2安装openSSH服务
  2. 姊妹篇:我是一块声卡
  3. 发生房屋租赁合同纠纷如何解决
  4. bulk es 删除_ES bulk 批量操作
  5. 牛逼闪闪的腾讯开源运维系统平台!
  6. 2017年6月大学英语六级真题(第一套)汉译英(每日一摸)
  7. 字符串 substring()和 substr()之间的区别
  8. [英语语法]句法之there be结构与强调句
  9. photoshop2021补丁版v22.3.1完美兼容m1
  10. java8 无限流_Java8-无限流