当前位置: 首页 > news >正文

3D Slicer 教程二 ---- 数据集

上一章下载3d slicer的软件,这章从加载数据集来弄清楚3dslicer怎么使用.

一. 加载数据集

如果没有数据集,也可用用样本数据.

(1) "File" --> "add Data" 

可以添加图片文件夹,(试了MP4不行,内镜的视频估计不支持),添加单个图片的话,会出现一些选项,

labelMap 标签图 

标签图是一种用于表示图像中特定区域的二进制标签图。‌ 这种图通常用于医学图像处理中,表示解剖结构、病变和其他对象的空间位置。图像分割是制作标签图的过程,可以通过手动、半自动或全自动的方法进行‌1。

在3D Slicer中,标签图可以用于多种用途,包括可视化某些结构、进行定量分析(如测量体积、表面、形状属性)、3D打印和遮罩处理等。通过标签图,可以将处理或分析限制在特定的区域,从而更精确地分析和处理医学图像数据‌。

制作标签图的过程包括使用3D Slicer提供的多种工具和功能。例如,可以使用阈值、喷笔、画笔、橡皮擦等功能来绘制和修改标签。阈值工具可以根据像素强度范围选择区域,喷笔和画笔工具则可以用于绘制和修改标签图。此外,区域生长、裁剪等功能也可以用于标签图的制作和修改.

centered 居中

 原始的dicom信息头里会带着dicom信息,比如病人的位置,方向,间隔等.这个时候有可能展示的图像不一定居中. 选中就是忽视掉原始的信息,重置相机位置、调整视场或将对象移动到场景的中心等.

包括在视图中居中,在3D视图中居中,在切片中居中,在模块面板中居中.

Ignore oriention 忽视朝向 跟上面那个选项差不多

颜色模式 

(2) "File" --> ""add  Dicom Data"  添加dicom数据集

添加进去

然后加载.这个里面可以自己在slicer里面添加数据库配置

把dicom文件直接放到这个路径下就可以直接使用了

注意:

在医学影像和应用中,坐标系统的差异是一个常见问题。DICOM和大多数医学影像软件使用LPS(左、后、上)坐标系统来存储所有数据,而3D Slicer的内部表示则采用RAS(右、前、上)坐标系统。为了文件兼容性,Slicer假设文件中的数据是以LPS坐标系统存储的,在读写操作期间,可能需要翻转前两个坐标轴的符号以将数据转换为RAS坐标系统.

当从DICOM格式导入数据到Slicer时,Slicer会将LPS坐标转换为内部使用的RAS坐标。反之,当将数据从Slicer导出到DICOM格式时,也需要进行相应的坐标转换。

二.数据预览.

数据加载好之后,就会看到这个节点

右边视图也能看到咱们的图

这种是一个层级模式,病人,检查,图像依次向下.点击“眼睛”图标可以在所有视图中显示或隐藏一个项目。

可以试一下,看看右边图像的变换

三.数据处理

3D Slicer 建立在模块化架构上。选择一个模块来处理或分析你的数据。最重要的模块包括以下(完整列表可在模块部分找到):

欢迎(Welcome):当3D Slicer启动时的默认模块。面板提供加载数据和自定义3D Slicer的选项。在这些选项下方是包含使用3D Slicer的重要信息的下拉框。

数据(Data):充当中心数据组织枢纽。列出当前场景中的所有数据,并允许进行搜索、重命名、删除和移动等基本操作。

DICOM:导入和导出DICOM对象,如图像、分割、结构集、放射治疗对象等。

体数据(Volumes):用于改变各种体积类型的显示效果。

体积渲染(Volume Rendering):提供3D图像数据的交互式可视化。

分割(Segmentations):编辑显示属性和导入/导出分割。

分割编辑器(Segment Editor):使用各种手动、半自动和自动工具对3D体积进行分割。

标记(Markups):允许创建和编辑与场景相关的标记。

模型(Models):加载和调整模型的显示参数。允许用户改变3D表面模型的外观和组织方式。

变换(Transforms):此模块用于创建和编辑变换矩阵。你可以通过将节点从“可变换”列表移动到“已变换”列表,或者通过拖动数据模块下“变换节点”下的节点来建立这些关系.

四.数据保存

'File' --> "save data" 

这个没什么好说的,自己试

五.拓展

扩展可以看作是将一个或多个 Slicer 模块捆绑在一起的交付包。安装扩展后,相关的模块将作为内置模块呈现给用户。

最后就是怎么去学这个东西,官方上推荐是这个

Documentation/Nightly/Training - Slicer Wiki

一起学习,以下是涉及到一些专业名词翻译(可以不用看)

附录:

  • Bounds(边界):描述一个空间对象沿三个轴的边界框。在VTK中由六个浮点值定义:X_min, X_max, Y_min, Y_max, Z_min, Z_max。

  • Brightness/contrast(亮度/对比度):指定体素值到显示像素亮度的线性映射。亮度是线性偏移,对比度是乘数。在医学影像中,这种线性映射通常由窗宽/窗位值指定。

  • Cell(单元):网格数据单元是网格的简单拓扑元素,如线、多边形、四面体等。

  • Color legend(颜色图例):覆盖在切片或3D视图上的小工具,显示颜色图例,指示颜色的含义。

  • Coordinate system(坐标系):由原点位置、轴方向和距离单位指定。3D Slicer中的所有坐标系都是右手系。

  • Extension(扩展):不是与核心应用程序捆绑在一起但可以使用扩展管理器下载和安装的一组模块的集合。

  • Extensions manager(扩展管理器):Slicer的软件组成部分,允许直接从应用程序在扩展目录(也称为Slicer应用商店)中浏览、安装、卸载扩展。

  • Extensions index(扩展索引):包含每个扩展描述的存储库,扩展目录是从中构建的。

  • Extent(范围):沿三个轴的整数坐标范围。在VTK中由六个值定义,对于IJK轴:I_min, I_max, J_min, J_max, K_min, K_max。

  • Fiducial(基准点):代表3D空间中的一个点。这个术语来源于图像引导手术,其中“基准标记”用于标记点位置。

  • Frame(帧):时间序列中的一个时间点。为避免歧义,这个术语不用于指体积的一个切片。

  • Geometry(几何):指定3D空间中对象的位置和形状。关于图像几何的定义,请参见“体积”术语。

  • Image intensity(图像强度):通常指体素的值。根据选择的窗宽/窗位和颜色查找表,从此值计算显示像素的亮度和颜色。

  • IJK:体素坐标系统轴。整数坐标值对应于体素中心位置。IJK值经常用作坐标值来指定3D数组中的元素。

  • ITK:Insight Toolkit。Slicer用于大多数图像处理操作的软件库。

  • Labelmap(标签图):具有离散(整数)体素值的体积节点。通常每个值对应于特定的结构或区域。

  • LPS:左-后-上解剖坐标系。医学图像计算中最常用的坐标系。

  • Markups(标记):用户可以在查看器中放置的简单几何对象和测量。可以使用标记模块创建此类对象。

  • MRML:Medical Reality Markup Language。存储、可视化和处理可能在医学应用中使用的信息对象的软件库。

  • Model(模型):存储表面网格(由三角形、多边形或其他2D单元组成)或体积网格(由四面体、楔形或其他3D单元组成)的MRML节点。

  • Module(模块):Slicer模块是由图形用户界面、逻辑组成的软件组件,并可能提供新的MRML节点类型、显示管理器、输入/输出插件以及各种其他插件。

  • Node(节点):场景中的一个数据对象。节点可以代表数据(如图像或网格),描述其显示方式(颜色、不透明度等)、磁盘上的存储方式、对它们应用的空间变换等。

  • Orientation marker(方向标记):在切片视图和3D视图中显示轴方向的箭头、盒子或人形标记。

  • RAS:右-前-上解剖坐标系。Slicer内部使用的坐标系。

  • Region of interest (ROI)(感兴趣区域):指定3D中的盒状区域。可用于裁剪体积、剪裁模型等。

  • Registration(配准):在空间中对齐对象的过程。配准的结果是一个变换,它将“移动”对象变换到“固定”对象。

  • Resolution(分辨率):体积的体素大小,通常以mm/像素指定。

  • Ruler(标尺):可能指视图标尺或标记线距离测量工具。

  • Scalar component(标量分量):向量的一个元素。标量分量的数量意味着向量的长度。

  • Scalar value(标量值):一个简单的数字,通常是浮点数。

  • Scene(场景):这是当前加载到应用程序中的所有数据以及有关如何显示或使用这些数据的附加信息所包含的数据结构。

  • Segment(段):对应于分割中的单个结构。

  • Segmentation(分割):在图像中描绘3D结构的过程。分割也可以指分割过程的结果MRML节点。

  • Slice(切片):3D对象与平面的交集。

  • Spacing(间距):体积的体素大小,通常以mm/像素指定。

  • Transform(变换):可以将任何3D对象从一个坐标系变换到另一个坐标系。

  • Volume(体积):存储3D体素数组的MRML节点。

  • Voxel(体素):3D体积的一个元素,它有一个长方体的形状。

  • VR:缩写,可以指体积渲染或虚拟现实。

  • VTK:Visualization Toolkit。Slicer用于数据表示和可视化的软件库。

相关文章:

3D Slicer 教程二 ---- 数据集

上一章下载3d slicer的软件,这章从加载数据集来弄清楚3dslicer怎么使用. 一. 加载数据集 如果没有数据集,也可用用样本数据. (1) "File" --> "add Data" 可以添加图片文件夹,(试了MP4不行,内镜的视频估计不支持),添加单个图片的话,会出现一些选项, …...

【建议收藏】30个Java异常的知识点,你能撑到第几个?

文章目录 问题1:Error 和 Exception 区别是什么?问题2:运行时异常和一般异常(受检异常)区别是什么?问题3:JVM 是如何处理异常的?问题4:throw 和 throws 的区别是什么?问题5&#xff…...

【Linux系统编程】环境基础开发工具使用

目录 1、Linux软件包管理器yum 1.1 什么是软件包 1.2 安装软件 1.3 查看软件包 1.4 卸载软件 2、Linux编辑器-vim 2.1 vim的概念 2.2 vim的基本操作 2.3 vim的配置 3、Linux编译器-gcc/g 3.1 gcc编译的过程​编辑​编辑​编辑 3.2 详解链接 动态链接 静态链接 4…...

滚雪球学Redis[6.2讲]:Redis脚本与Lua:深入掌握Redis中的高效编程技巧

全文目录: 📝前言🚦正文🌟6.2.1 Lua脚本的优势🖋️6.2.2 EVAL命令与Lua脚本编写🐵编写Lua脚本的基本步骤🐶示例:简单的GET和SET操作🐱示例:Lua实现自增和过期…...

上市不到一月,极氪7X交付破万台!论纯电,极氪真“遥遥领先”

承认吧,在纯电这条赛道上,极氪真就“遥遥领先”~ 推出的第一款原生纯电猎装极氪001,就常年霸榜25万级豪华纯电销冠 主打豪华大车的极氪009,成为40万以上高端“保姆车”的不二之选 第一次面向主流纯电市场推出的豪华大五座——极…...

【Linux】理解文件系统与软硬链接,观察inode号理解<“软链接是包含路径的新文件“,“硬链接是关于文件名的机制“>,最终明白<什么是真正删除一个文件>

前言 大家好吖,欢迎来到 YY 滴Linux系列 ,热烈欢迎! 本章主要内容面向接触过C的老铁 主要内容含: 欢迎订阅 YY滴C专栏!更多干货持续更新!以下是传送门! YY的《C》专栏YY的《C11》专栏YY的《Lin…...

Java高并发控制之按业务对象加同步锁

一、需求 最常见的一个场景,账户余额更新! 业务场景稍复杂点,一个客户有多个虚拟余额账户,产生交易时,需要同时更新客户的多个余额账户,现在需要为余额更新做并发控制。 二、解决方案 1、依赖数据的乐观锁&…...

Python魔法函数__iter__的用法

下面是找到的一个比较好的科学解释: Python中可迭代对象(Iterable)并不是指某种具体的数据类型,它是指存储了元素的一个容器对象,且容器中的元素可以通过__iter__( )方法或__getitem__( )方法访问。 1.__iter__方法的作用是让对象可以用for…...

Redis-缓存一致性

缓存双写一致性 更新策略探讨 面试题 缓存设计要求 缓存分类: 只读缓存:(脚本批量写入,canal 等)读写缓存 同步直写:vip数据等即时数据异步缓写:允许延时(仓库,物流&a…...

SAP学习笔记 - 豆知识13 - Msg 番号 NR751 - Object RF_BELEG R100、番号範囲間隔 49 不存在 FBN1

其实这种就是自动採番的番号没弄。 比如跨年了,那该新年度的番号范围没弄啊,就会出这种错误。 把番号范围给加一下就可以了。 1,现象 比如点 VL02N 出荷传票变更 画面,点 出库确认 就会出如下错误: Object RF_BEL…...

美摄科技云服务解决方案,方案成熟,接入简单

美摄科技作为视频处理领域的先锋,凭借其强大的技术实力和深厚的行业经验,推出了成熟的云服务解决方案,为轻量化视频制作开辟了全新的道路。 一、成熟方案,接入无忧 美摄科技云服务解决方案的最大亮点在于其成熟度和易用性。我们…...

【bug】paddleocr draw_ocr_box_txt ValueError: incorrect coordinate type

【bug】paddleocr draw_ocr_box_txt ValueError: incorrect coordinate type 环境 python 3.10.15pillow 10.4.0 paddleocr 2.8.1错误详情 错误文本 Traceback (most recent call last):....draw_left.polygon(box, fillcolor)ValueError: inco…...

python的多线程和多进程

首先需要明确的是,多进程和其他语言的一样,能够利用多核cpu,但是python由于GIL的存在,多线程在执行的时候,实际上,每一时刻只有一个线程在执行。相当于是单线程。然而多线程在某些情况下,还是能…...

基于SpringBoot+Vue+uniapp的时间管理小程序的详细设计和实现(源码+lw+部署文档+讲解等)

详细视频演示 请联系我获取更详细的演示视频 项目运行截图 技术框架 后端采用SpringBoot框架 Spring Boot 是一个用于快速开发基于 Spring 框架的应用程序的开源框架。它采用约定大于配置的理念,提供了一套默认的配置,让开发者可以更专注于业务逻辑而不…...

HMAC-MD5参数签名算法

更多中电联在线工具 HMAC-MD5 是一种基于 MD5 哈希函数的消息认证码(MAC)算法。它用于确保消息的完整性和认证,通常用于数据传输和 API 请求。其基本步骤如下: 密钥准备:选择一个密钥(K)&#…...

【word】文章里的表格边框是双杠

日常小伙伴们遇到word里插入的表格,边框是双杠的,直接在边框和底纹里修改边框的样式就可以,但我今天遇到的这个有点特殊,先看看表格在word里的样式是怎么样,然后我们聊聊如何解决。 这个双杠不是边框和底纹的设置原因…...

我常用的两个单例模式写法 (继承Mono和不继承Mono的)

不继承Mono 不继承Mono代表不用挂载到场景物体上面,因此直接饿汉式 加 合并空运算符判空创建实例 >(lambda表达式)的意思是get,就是将instance赋给Instance属性 //单例private static JsonDataManager instance new JsonDataManager();public stati…...

Android 自定义Toast显示View

1、创建一个tosat显示的布局文件&#xff1a;toast_custom.xml <?xml version"1.0" encoding"utf-8"?> <com.hjq.shape.layout.ShapeLinearLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width&…...

SCRM呼叫中心高保真Axure原型 源文件分享

在数字化时代&#xff0c;客户关系管理&#xff08;CRM&#xff09;对于企业的成功至关重要。SCRM呼叫中心后台作为一款专为CRM设计的软件原型&#xff0c;致力于为企业提供高效、智能的客户沟通解决方案。本文将详细介绍该产品的核心功能及其对企业提升客户满意度和销售业绩的…...

Ubuntu(Linux)tcpdump使用方法详解

tcpdump命令 1.从所有网卡获取数据包 tcpdump -i any2.从指定网卡获取数据包 tcpdump -i eth03.指定网卡&#xff0c;IP&#xff0c;写文件 tcpdump -i eth0 host 192.168.16.101 -w ./tcp.dat //host 后面是发送方的地址4.指定网卡&#xff0c;源IP且目的IP&#xff0c;写入…...

Centos安装Nginx 非Docker

客户的机器属于 Centos7 系列&#xff0c;由于其较为陈旧&#xff0c;2024开始众多镜像和软件源都已失效。此篇文章将详细记录在 Centos7 操作系统上从零开始安装 Nginx 的整个流程。 本文Nginx是安装在/usr/local/nginx下 详细步骤如下&#xff1a; 准备Nginx安装包&#x…...

免费版的音频剪辑软件:这四款有没有你的菜?

随着音频编辑需求的日益增长&#xff0c;免费的音频剪辑软件逐渐成为许多创作者、学生和普通用户的心头好。今天&#xff0c;就让我为大家介绍几款热门的免费音频剪辑软件&#xff0c;并分享一下我的使用感受吧&#xff01; 一、福昕音频剪辑 直通车&#xff08;复制粘贴到网站…...

Facebook的隐私之战:数据保护的挑战与未来

在数字化时代&#xff0c;隐私保护成为了公众关注的焦点&#xff0c;尤其是在社交媒体巨头Facebook身上。随着用户数据泄露事件的频发&#xff0c;Facebook面临着日益严峻的隐私挑战。这些挑战不仅涉及法律法规的遵循&#xff0c;还影响着用户信任、公司声誉以及未来的发展方向…...

自定义注解和组件扫描在Spring Boot中动态注册Bean(二)

在Spring Boot中&#xff0c;自定义注解和组件扫描是实现动态注册Bean的两种重要手段。通过它们&#xff0c;开发者可以灵活地管理Spring容器中的Bean&#xff0c;提高开发效率和代码的可维护性。本文将详细讲解自定义注解和组件扫描在Spring Boot中如何动态注册Bean。 自定义…...

常见网络协议的介绍、使用场景及 Java 代码样例

以下是几种常见网络协议的介绍、使用场景及 Java 代码样例&#xff1a; 一、HTTP&#xff08;HyperText Transfer Protocol&#xff0c;超文本传输协议&#xff09; 介绍&#xff1a; HTTP 是用于在 Web 浏览器和 Web 服务器之间传输超文本的应用层协议。基于请求 - 响应模式…...

音视频好文总结

RTSP play同步 ffplay播放器研究分析 ffplay播放器 暂停、逐帧、音量、快进快退seek功能分析 RTSP RTP RTCP SDP基础知识 flv格式分析与解复用 TS格式详解 m3u8格式详解 FLV格式详解 MP4格式详解 HLS协议详解 RTMP协议详解 HTTP-FLV协议详解 H.264 SPS、PPS详解 H…...

云服务器磁盘满了,清理docker无用缓存、容器等清理

docker system prune 命令用于清理 Docker 系统中的各种未使用资源。根据你提供的警告信息&#xff0c;这条命令将会移除以下内容&#xff1a; 所有已停止的容器&#xff08;all stopped containers&#xff09; 所有未被至少一个容器使用的网络&#xff08;all networks no…...

Flutter flutter_native_splash 使用指南

Flutter flutter_native_splash 使用指南 视频 https://youtu.be/dGq6LbipvXA https://www.bilibili.com/video/BV1d52tYFEzz/ 前言 原文 使用 flutter_native_splash 优化 Flutter 启动画面体验 本文详细介绍了如何在 Flutter 中使用 flutter_native_splash 插件自定义启动…...

谷歌审核放宽,恶意软件不再封号?是反垄断案影响还是开发者们的错觉

最近&#xff0c;谷歌因其“垄断”案而成为科技行业的焦点&#xff0c;这个案件可能导致谷歌业务的重大调整。同时&#xff0c;在Google Play上&#xff0c;一些开发者发现谷歌审核好像放宽了不少&#xff0c;这是不是与反垄断有关&#xff0c;谷歌应用上架或将迎来春天&#x…...

C++实现一个线程池

原文链接&#xff1a;C实现一个线程池 介绍 线程池是提高CPU利用率的一个非常高效的方法,线程池就是通过预先创建多个线程,当有任务时就执行,无任务时就阻塞. 相比一般的多线程方法,线程池更加简单,模块化,并且效率更高,因为不会重复创建删除线程. 预备知识 异步线程(包括f…...