DICOM CT\MR片子免费在线查看工具;python pydicom包加载查看;mayavi 3d查看

DICOM CT\MR片子免费在线查看工具

参考:
https://zhuanlan.zhihu.com/p/668804209

dicom格式:

DICOM(Digital Imaging and Communications in Medicine)是医学数字成像和通信的标准。它定义了医学图像(如CT、MRI、X光等)的格式以及如何在不同的医疗设备之间传输这些图像。DICOM标准由美国放射学院(ACR)和国家电气制造商协会(NEMA)共同开发,旨在促进医学图像的互操作性和数据交换。DICOM的主要特点
图像格式:DICOM定义了一种标准的图像文件格式,包含了图像数据以及相关的元数据(如患者信息、扫描参数等)。通信协议:DICOM标准还包括了用于在医疗设备之间传输图像和相关数据的通信协议。互操作性:DICOM确保了不同制造商的医疗设备能够相互通信和交换数据,从而提高了医疗图像的可用性和可访问性。安全性:DICOM标准也考虑了数据的安全性,包括用户认证、数据加密和完整性检查等。

在这里插入图片描述

片子下载的zip压缩包里面文件大概格式:
在这里插入图片描述

1)imaios

https://www.imaios.com/cn/imaios-dicom-viewer
在这里插入图片描述

2)小赛看看

https://xiaosaiviewer.com/
在这里插入图片描述

python pydicom加载查看

安装软件:

pip install pydicom ##图像压缩工具
pip install gdcm
pip install pylibjpeg pylibjpeg-libjpeg pylibjpeg-openjpeg
import pydicom
import matplotlib.pyplot as plt
import numpy as np# 加载DICOM文件
dcm_file = pydicom.dcmread(r"C:\Users\loong\Downloads\***593708.311059.dcm")# 获取像素数据
pixel_array = dcm_file.pixel_array# 显示图像
plt.imshow(pixel_array, cmap=plt.cm.bone)
plt.axis('off')
plt.show()# 打印一些DICOM标签信息
print(f"Patient's Name: {dcm_file.PatientName}")
print(f"Modality: {dcm_file.Modality}")
print(f"Study Date: {dcm_file.StudyDate}")

在这里插入图片描述

其他方法:
SimpleITK

import SimpleITK as sitk
import matplotlib.pyplot as plt# 读取DICOM文件
reader = sitk.ImageSeriesReader()
dicom_names = reader.GetGDCMSeriesFileNames("path/to/dicom/directory")
reader.SetFileNames(dicom_names)
image = reader.Execute()# 转换为numpy数组
array = sitk.GetArrayFromImage(image)# 显示中间切片
middle_slice = array[array.shape[0]//2]
plt.imshow(middle_slice, cmap='gray')
plt.axis('off')
plt.show()

mayavi 3d查看

pip install mayavi  configobj
import pydicom
import numpy as np
from mayavi import mlab
import os# 读取DICOM系列
dicom_folder = r"C:\Users\loong\Downloads\unknown"
slices = [pydicom.dcmread(os.path.join(dicom_folder, s)) for s in os.listdir(dicom_folder)]
slices.sort(key = lambda x: float(x.ImagePositionPatient[2]))# 创建3D numpy数组
img_shape = list(slices[0].pixel_array.shape)
img_shape.append(len(slices))
img3d = np.zeros(img_shape)for i, s in enumerate(slices):img2d = s.pixel_arrayimg3d[:,:,i] = img2d# 使用mayavi显示3D图像
mlab.contour3d(img3d, contours=10, transparent=True)
mlab.show()

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/873457.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

蓝桥 双周赛算法赛【小白场】

博客主页:誓则盟约系列专栏:IT竞赛 专栏关注博主,后期持续更新系列文章如果有错误感谢请大家批评指出,及时修改感谢大家点赞👍收藏⭐评论✍ 蓝桥第14场小白入门赛T1/T2/T3 题目: T1照常还是送分题无需多…

ChatTTS超强的真人AI语音助手下载使用教程

简介 ChatTTS是专门为对话场景设计的文本转语音模型,支持多人同时对话,适用的场景非常丰富,比如LLM助手对话任务,视频配音、声音克隆等。同时支持英文和中文两种语言。最大的模型使用了10万小时以上的中英文数据进行训练&#xf…

AI 基于病理图像分析揭示了一种不同类型的子宫内膜癌| 文献速递-基于人工智能(AI base)的医学影像研究与疾病诊断

Title 题目 AI-based histopathology image analysisreveals a distinct subset of endometrialcancers AI 基于病理图像分析揭示了一种不同类型的子宫内膜癌。 01 文献速递介绍 子宫内膜癌(EC)有四种分子亚型,具有很强的预后价值和治疗…

如何安装Visual Studio Code

Visual Studio Code(简称 VS Code) Visual Studio Code 是一款由微软开发的免费、开源的现代化轻量级代码编辑器。 主要特点包括: 跨平台:支持 Windows、Mac 和 Linux 等主流操作系统,方便开发者在不同平台上保持一…

二叉树 初阶 总结

树的基础认知 结点的度:一个结点含有的子树的个数称为该结点的度; 如上图:A的为6 叶结点或终端结点:度为0的结点称为叶结点; 如上图:B、C、H、I...等结点为叶结点 非终端结点或分支结点:度不为0…

采用T网络反馈电路的运算放大器(运放)反相放大器

运算放大器(运放)反相放大器电路 设计目标 输入电压ViMin输入电压ViMax输出电压VoMin输出电压VoMaxBW fp电源电压Vcc电源电压Vee-2.5mV2.5mV–2.5V2.5V5kHz5V–5V 设计说明1 该设计将输入信号 Vin 反相并应用 1000V/V 或 60dB 的信号增益。具有 T 反馈网络的反相放大器可用…

【鸿蒙学习笔记】位置设置・position・绝对定位・子组件相对父组件

官方文档:位置设置 目录标题 position・绝对定位・子组件相对父组件Row Text position position・绝对定位・子组件相对父组件 正→ ↓ Row Text position Entry Component struct Loc_position {State message: string Hello World;build() {Column() {Co…

【Neural signal processing and analysis zero to hero】- 1

The basics of neural signal processing course from youtube: 传送地址 Possible preprocessing steps Signal artifacts (not) to worry about doing visual based artifact rejection so that means that before you start analyzing, you can identify those data epic…

Elasticsearch:如何选择向量数据库?

作者:来自 Elastic Elastic Platform Team 向量数据库领域是一个快速发展的领域,它正在改变我们管理和搜索数据的方式。与传统数据库不同,向量数据库以向量的形式存储和管理数据。这种独特的方法可以实现更精确、更相关的搜索,并允…

【HarmonyOS】关于鸿蒙消息推送的心得体会 (一)

【HarmonyOS】关于鸿蒙消息推送的心得体会(一) 前言 这几天调研了鸿蒙消息推送的实现方式,形成了开发设计方案,颇有体会,与各位分享。 虽然没做之前觉得很简单的小功能,貌似只需要和华为服务器通信&…

Unity XR Interaction Toolkit的安装(二)

提示:文章有错误的地方,还望诸位大神不吝指教! 文章目录 前言一、安装1.打开unity项目2.打开包管理器(PackageManage)3.导入Input System依赖包4.Interaction Layers unity设置总结 前言 安装前请注意:需要…

科技论文在线--适合练习期刊写作和快速发表科技成果论文投稿网站

中国科技论文在线这个平台可以作为练手的一个渠道,至少可以锻炼一下中文写作,或者写一些科研方向的简单综述性文章。当然,如果你的老师期末要求也是交一份科技论文在线的刊载证明的话,这篇文章可以给你提供一些经验。 中国科技论…

【Linux服务器Java环境搭建】011在linux中安装Nginx,以及停止或启动Nginx服务

系列文章目录 【Linux服务器Java环境搭建】 前言 又到了周五晚上了,最近工作上有些忙,忙于一个需求频繁变更的项目,都快吐血了,懂得都懂,哈哈,正好有时间了,继续写系列【Linux服务器Java环境搭…

linux远程主机和windows互传

一.winscp 最简单,但有时候会出现连不上 二 .MobaXterm 可以选择多种连接方式 二. 配置samba服务器 1. 新增samba用户 sudo pdbedit -L -v 查看当前samba用户 sudo smbpasswd -a guoziyi 添加samba用户 sudo smbpasswd -x guoziyi 删除samba用户 2. 编辑/etc…

加油卡APP系统开发:在线优惠加油,拓展市场

目前,我国汽车行业发展迅速,用车群体逐年扩大,因此,汽车加油市场规模呈现出了快速增长趋势。不过近年来,油价不断上涨,增加了居民的生活成本,为了节省汽车加油的支出,很多人都开始选…

使用idea创建Javaweb项目(步骤)

第一步创建Javaweb项目 File>New>Project 第二步 勾选Web Application >Next 然后就是进行起名,完成。 完成创建项目,检查是否文件齐全 配置tomcat 配置好,就能启动tomcat,显示首页 导入jar包。导入进项目&#xf…

【力扣】最小栈

🔥博客主页: 我要成为C领域大神🎥系列专栏:【C核心编程】 【计算机网络】 【Linux编程】 【操作系统】 ❤️感谢大家点赞👍收藏⭐评论✍️ 本博客致力于知识分享,与更多的人进行学习交流 设计一个支持 push…

信息系统是一个社会技术系统

一.管理信息系统定义 (1) 技术视角 信息系统是: ——由若干相互连接的部件组成的; ——对组织中的信息进行收集、处理、储存和传递的系统; ——用以支持组织制定决策和管理控制; ——还可以协助管理者与员工分析问题、可视…

【异常解决】Unable to start embedded Tomcat Nacos 启动报错

Unable to start embedded Tomcat Nacos 启动报错解决方案 一、背景描述二、原因分析三、解决方案 一、背景描述 Windows 本地启动 Nacos(2.2.0) 服务,控制台报错 Unable to start embedded Tomcat。 报错信息:Unable to start …

nginx负载均衡实例

实现效果 浏览器输入地址http://nginx服务器ip(:80)/edu/a.html,实现负债均衡效果,平均分配到 服务器ip:8080和 服务器ip:8081进程中。 准备工作 准备两个tomcat,一个监听在8080端口,一个监听在8081端口。也可以准备多个tomcat。…