3Dslicer医学图像三维坐标系(xyz,RAS,IJK)差异,转换,旋转,平面角

这篇具有很好参考价值的文章主要介绍了3Dslicer医学图像三维坐标系(xyz,RAS,IJK)差异,转换,旋转,平面角。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

World coordinate system世界坐标系xyz

Anatomical coordinate system解剖学坐标系(LPS/RAS/RAI)

Image coordinate system图像坐标系ijk

Image transformation图像转换

三维坐标变换

A.旋转矩阵和旋转向量

B.欧拉角

C.四元数​编辑

计算平面角Angle Planes插件

参考链接



处理医学图像和应用程序时的问题之一是坐标系之间的差异。成像应用中常用三种坐标系:

xyz是世界坐标系

RAS是解剖坐标系,单位mm
IJK是像素/体素坐标系,单位像素pixel/体素voxel

世界(xyz轴)                                解剖学(RAS轴                        图像坐标系(IJK轴

rai坐标,医学图像,计算机视觉,图像处理,人工智能

 
每个坐标系都有一个用途,并以不同的方式表示其数据。

World coordinate system世界坐标系xyz

世界坐标系通常是一个笛卡尔坐标系,其中定位了模型(例如MRI扫描仪或患者)。每个模型都有自己的坐标系,但只有一个世界坐标系来定义每个模型的位置和方向。

Anatomical coordinate system解剖学坐标系(LPS/RAS/RAI)

医学成像技术最重要的模型坐标系是解剖空间(也称为患者坐标系)。这个空间由三个平面组成,用于描述人类的标准解剖位置:

  • axial 平面平行于地面,将上与下分开
  • coronal 平面垂直于地面,将前与后分开
  • sagittal平面将左与右分开

从这些平面可以看出,所有轴的符号都在正方向上(例如,负上轴由下轴表示)。

解剖学坐标系是一个连续的三维空间,其中对图像进行了采样。在神经影像学中,通常根据正在扫描其大脑的人来定义这个空间。因此,3D基是沿着前后,下上和左右的解剖轴定义的。

然而,不同的医疗应用使用这种3D基础的不同定义。最常见的是以下基础:

  • LPS(左、后、上)用于 DICOM 映像和 ITK 工具包
  • RAS(右,前,上)类似于LPS,前两个轴翻转并由3D切片器使用

rai坐标,医学图像,计算机视觉,图像处理,人工智能

  • LPS(Left, Posterior, Superior): MHD图像(meta image), ITK工具包, ITK-Snap软件(该软件中写的是RAI)使用
  • RAS(Right, Anterior, Superior): Nifti图像和3D Slicer软件使用

注意以上两种均为右手坐标系. 其他的选择(如: RPI)和左手坐标系(如: LAS)也是可能遇到的, 需要注意区分.

警告: 人们并不总是用三个连续的字母表示正方向, 有时候也表示出发(from)的方向(也就是负方向), 此时上面的LPS会被写成RAI, 对应的到达(to)方向才是LPS. 比如ITK-Snap软件中Tools->Image Information->Orientation就写的是RAI, 表达的意思是 from RAI --> to LPS , 同样的使用 ITK 导出的MHD格式图像也是使用From模式.

这两个基础同样有用且合乎逻辑。只需要知道图像被引用到哪个基础。

rai坐标,医学图像,计算机视觉,图像处理,人工智能

Image coordinate system图像坐标系ijk

图像坐标系描述了如何获取相对于解剖结构的图像。医疗扫描仪创建从左上角开始的点和细胞的常规矩形阵列。i 轴向右增大,j 轴向右增大,k 轴向后增大。

rai坐标,医学图像,计算机视觉,图像处理,人工智能

除了每个体素的强度值(i j k)之外,还存储解剖坐标的原点和间距。

  • 原点origin表示第一个体素 voxel(0,0,0) 在解剖坐标系中的位置,例如 (100mm, 50mm, -25mm)
  • 间距spacing指定沿每个轴的体素之间的距离,例如(1.5mm,0.5mm,0.5mm)

以下 2D 示例显示了原点和间距的含义:

rai坐标,医学图像,计算机视觉,图像处理,人工智能

使用原点和间距,可以计算出每个(图像坐标)体素解剖坐标中的相应位置

Image transformation图像转换

从图像空间向量的变换(ijk)′到解剖空间向量x是仿射变换,线性变换A

rai坐标,医学图像,计算机视觉,图像处理,人工智能

转换矩阵A是一个3×3矩阵,并包含有关空间方向和轴缩放的所有信息。

t是一个3×1向量,并包含有关第一个体素的几何位置的信息。

rai坐标,医学图像,计算机视觉,图像处理,人工智能

最后一个方程表明线性变换是通过矩阵乘法和向量加法平移来执行的。为了表示转换和平移,必须使用矩阵乘法来表示增强矩阵。此技术要求矩阵一个在底部增加了一行额外的零,在右侧增加了一列(translation vector),在右下角增加了一个“1”。此外,所有向量都必须写成齐次坐标,这意味着“1”在最后被增强。

rai坐标,医学图像,计算机视觉,图像处理,人工智能

根据所使用的解剖空间(LPS 或 RAS)的不同,4×4矩阵称为 IJK 到线性函数矩阵或 IJK 拓扑矩阵,因为它表示从 IJK 到 LPS 或 RAS 的转换

rai坐标,医学图像,计算机视觉,图像处理,人工智能

三维坐标变换

A.旋转矩阵和旋转向量

a坐标变换

rai坐标,医学图像,计算机视觉,图像处理,人工智能

b旋转向量

rai坐标,医学图像,计算机视觉,图像处理,人工智能 在3D图形学中,最常用的旋转表示方法便是四元数和欧拉角,比起矩阵来具有节省存储空间和方便插值的优点。

B.欧拉角

定义,,分别为绕Z轴、Y轴、X轴的旋转角度,如果用Tait-Bryan angle表示,分别为Yaw、Pitch、Roll。

rai坐标,医学图像,计算机视觉,图像处理,人工智能

(1) 欧拉角的表示方式不唯一。给定某个起始朝向和目标朝向,即使给定yaw、pitch、roll的顺序,也可以通过不同的yaw/pitch/roll的角度组合来表示所需的旋转。比如,同样的yaw-pitch-roll顺序,(0,90,0)和(90,90,90)会将刚体转到相同的位置。这其实主要是由于万向锁(Gimbal Lock)引起的   (2) 欧拉角的插值比较难。  

(3) 计算旋转变换时,一般需要转换成旋转矩阵,这时候需要计算很多sin, cos,计算量较大。

C.四元数

rai坐标,医学图像,计算机视觉,图像处理,人工智能

计算平面角Angle Planes插件

rai坐标,医学图像,计算机视觉,图像处理,人工智能下载Angle Planes插件 

此模块用于使用法线计算两个平面之间的角度。用户可以选择使用已在Slicer上实现的两个平面,也可以使用地标(至少3个地标)定义一个平面。也可以保存平面,以便在其他模型中重复使用。

Pitch Anglecomplementary angle补角

rai坐标,医学图像,计算机视觉,图像处理,人工智能

 rai坐标,医学图像,计算机视觉,图像处理,人工智能rai坐标,医学图像,计算机视觉,图像处理,人工智能

 右手系xyz顺规(分别对应roll, pitch,yaw)

参考链接

方向和体素顺序术语:RAS、激光、低密度聚乙烯、资源说明书、XYZ和所有这一切 (grahamwideman.com)

坐标系 - 切片器维基 (slicer.org)

slicer软件中RAS转换为像素坐标方法
旋转矩阵及左右乘的意义,看这一篇就够了_默以成之的博客-CSDN博客_旋转矩阵左乘和右乘的区别

四元数与欧拉角(Yaw、Pitch、Roll)的转换_xiaoma_bk的博客-CSDN博客_四元数转欧拉角医学影像简介(Medical Imaging Guide) (jarvis73.com)

三维旋转:欧拉角、四元数、旋转矩阵、轴角之间的转换 - 知乎pitch、yaw、roll三个角的区别_道道道人间道的博客-CSDN博客_yaw文章来源地址https://www.toymoban.com/news/detail-796251.html

到了这里,关于3Dslicer医学图像三维坐标系(xyz,RAS,IJK)差异,转换,旋转,平面角的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 世界坐标系、相机坐标系、图像坐标系、像素坐标系

    四个坐标系都是什么? 1.世界坐标系-相机坐标系-图像坐标系-像素坐标系 2.像素坐标系-图像坐标系-相机坐标系-世界坐标系 图像处理、立体视觉等等方向常常涉及到四个坐标系:世界坐标系、相机坐标系、图像坐标系、像素坐标系                     构建世界坐标系只是

    2024年01月21日
    浏览(69)
  • VTK OrientationMarker 方向 三维坐标系 相机坐标轴 自定义坐标轴

    本文 以 Python 语言开发 我们在做三维软件开发时,经常会用到相机坐标轴,来指示当前空间位置; 坐标轴效果: 相机方向坐标轴  Cube 正方体坐标轴  自定义坐标轴: Code: Axes CameraOrientationWidget OrientationMarkerWidget custom OrientationMarker

    2024年02月06日
    浏览(53)
  • 关于世界坐标系,相机坐标系,图像坐标系,像素坐标系的一些理解

    在项目中,研究标定时,像素坐标与轴位置的关系时,需要用到关于坐标系的转换。在此也就是找到世界坐标系与像素坐标系的转换关系。想理清楚故做如下记录。 四坐标关系图如下: 图中: 世界坐标系(O W —X W Y W Z W ): 一个三维直角坐标系,以其为基准可以描述相机

    2024年02月09日
    浏览(72)
  • 世界坐标系、相机坐标系和图像坐标系的转换

    之前只是停留在会用的阶段,一直没去读懂计算的原理,今天通读了大佬的文章,写的言简意赅,感谢感谢~~特此记录一下,仅用作个人笔记 贴链接,十分感谢~ https://blog.csdn.net/weixin_44278406/article/details/112986651 https://blog.csdn.net/guyuealian/article/details/104184551 将三维物体转换成照

    2023年04月15日
    浏览(65)
  • 图像坐标系如何转换到相机坐标系。

    问题描述:图像坐标系如何转换到相机坐标系。 问题解答: 图像坐标系的定义: 图像坐标系是用于描述数字图像中像素位置的坐标系。图像坐标系的原点是相机光轴与成像平面的交点。X轴沿着成像平面的水平方向正向,Y轴沿着成像平面的垂直方向正向。 相机坐标系的定义

    2024年02月04日
    浏览(51)
  • WebGL+Three.js入门与实战——给画布换颜色、绘制一个点、三维坐标系

    个人简介 👀 个人主页: 前端杂货铺 🙋‍♂️ 学习方向: 主攻前端方向,正逐渐往全干发展 📃 个人状态: 研发工程师,现效力于中国工业软件事业 🚀 人生格言: 积跬步至千里,积小流成江海 🥇 推荐学习:🍍前端面试宝典 🍉Vue2 🍋Vue3 🍓Vue2/3项目实战 🥝Node.js🍒

    2024年02月04日
    浏览(62)
  • Matlab 实现图像的直角坐标系和极坐标系的相互转化

    某日需要在matlab进行图像的的极直互化,发现并没有介绍相应内容的文章,所以有了自己调研一下并写一写的想法。果然只要想就能做到,所以有了下面这篇文章。 根据直角坐标系(笛卡尔系)内数值和极坐标系关系 根据上述公式不难想出,在直角坐标系中的圆会在极坐标

    2024年02月11日
    浏览(41)
  • 对于SLAM定位中各类坐标系的理解(坐标系,里程计坐标系,基座坐标系与雷达坐标系)

    最近系统性学习了一遍LIO-SAM,开始的时候一直搞不懂里程计坐标系,经过不断学习才有了一点自己的拙见。 引言 :首先我们搞清楚SLAM算法主要是解决建图与定位问题,其更 侧重定位 ,即让机器人知道自己在全局地图的哪个位置,只有这样才能继续后续的预测、感知、控制

    2024年02月03日
    浏览(50)
  • 机器人坐标系转换从局部坐标系转换到世界坐标系

    矩阵方式: 下面是代码: 函数方式: 根据三角函数的特性,可以进行一下简化: 下面是简化前的代码示例:

    2024年04月16日
    浏览(66)
  • 相机坐标系、像素坐标系转换

    相机内参矩阵是相机的重要参数之一,它描述了相机光学系统的内部性质,例如焦距、光学中心和图像畸变等信息。在计算机视觉和图形学中,相机内参矩阵通常用于将图像坐标系中的像素坐标转换为相机坐标系中的三维坐标,或者将相机坐标系中的三维坐标投影到图像坐标

    2024年02月13日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包