【Python】使用VTK实现3D可视化医学图像(格式.nii.gz)

这篇具有很好参考价值的文章主要介绍了【Python】使用VTK实现3D可视化医学图像(格式.nii.gz)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

需要安装依赖 itkvtk,效果如下

【Python】使用VTK实现3D可视化医学图像(格式.nii.gz)

代码

import itk
from vtkmodules.vtkCommonColor import vtkNamedColors
from vtkmodules.vtkFiltersGeneral import vtkDiscreteMarchingCubes
from vtkmodules.vtkRenderingCore import vtkActor, vtkPolyDataMapper, vtkRenderer, \
    vtkRenderWindow, vtkRenderWindowInteractor


def show_3d_nifti_image(nifti_file_name):

    # Read NIFTI file
    itk_img = itk.imread(filename=nifti_file_name)

    # Convert itk to vtk
    vtk_img = itk.vtk_image_from_image(l_image=itk_img)

    # Extract vtkImageData contour to vtkPolyData
    contour = vtkDiscreteMarchingCubes()
    contour.SetInputData(vtk_img)

    # Define colors, mapper, actor, renderer, renderWindow, renderWindowInteractor
    colors = vtkNamedColors()

    mapper = vtkPolyDataMapper()
    mapper.SetInputConnection(contour.GetOutputPort())

    actor = vtkActor()
    actor.SetMapper(mapper)

    renderer = vtkRenderer()
    renderer.AddActor(actor)
    renderer.SetBackground(colors.GetColor3d("SteelBlue"))

    renderWindow = vtkRenderWindow()
    renderWindow.AddRenderer(renderer)

    renderWindowInteractor = vtkRenderWindowInteractor()
    renderWindowInteractor.SetRenderWindow(renderWindow)
    renderWindowInteractor.Initialize()
    renderWindowInteractor.Start()


if __name__ == '__main__':
    # show_3d_nifti_image("F:/dataset/LiTS/lits_train/label/segmentation-0.nii")

参考:

A NIfTI (nii.gz) 3D Visualizer using VTK and Qt5
Load nifti image with vtk ()
ITK笔记–读取3D NIFTI图像并用VTK可视化文章来源地址https://www.toymoban.com/news/detail-505920.html

到了这里,关于【Python】使用VTK实现3D可视化医学图像(格式.nii.gz)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • vue-使用echarts+echarts-gl实现某个省份地区地图3d可视化

    前言 最近在开发中遇到一个需求,需要把一个地区地图变成3d感觉悬浮在大屏中间配合业务需求 其实echarts配合三方库就可以实现这个效果,具体细节需要自己调整 代码实现 1.下载各省份各地区地图数据-json文件-根据需求下载对应地图json数据引入即可 最新全国地图JSON数据

    2024年01月20日
    浏览(60)
  • 【python可视化大屏】使用python实现可拖拽数据可视化大屏

    我在前几期分享了关于爬取weibo评论的爬虫,同时也分享了如何去进行数据可视化的操作。但是之前的可视化都是单独的,没有办法在一个界面上展示的。这样一来呢,大家在看的时候其实是很不方便的,就是没有办法一目了然的看到数据的规律。为了解决这个问题我使用p

    2024年02月03日
    浏览(62)
  • 使用Open3D实现3D激光雷达可视化:以自动驾驶的2DKITTI深度框架为例(下篇)

    原创 | 文 BFT机器人  【原文链接】使用Open3D实现3D激光雷达可视化:以自动驾驶的2DKITTI深度框架为例(上篇) 05 Open3D可视化工具 多功能且高效的3D数据处理:Open3D是一个全面的开源库,为3D数据处理提供强大的解决方案。它具有优化的后端架构,可实现高效的并行化,非常适

    2024年02月04日
    浏览(61)
  • 使用Open3D实现3D激光雷达可视化:以自动驾驶的2DKITTI深度框架为例(上篇)

    原创 | 文 BFT机器人  3DLiDAR传感器(或)三维光探测和测距是一种先进的发光仪器,能够像我们人类一样在三维空间中感知现实世界。这项技术特别彻底改变了地球观测、环境监测、侦察和现在的自动驾驶领域,它提供准确和详细数据的能力有助于促进我们对环境和自然资源

    2024年02月03日
    浏览(56)
  • 医学可视化应用简介

    VolView是一款为临床专业人员开发的开源放射学查看器。使用VolView,可以通过交互式电影体积渲染对数据有更深入的视觉理解,并轻松地以3D形式可视化DICOM数据。由于VolView在浏览器中运行,不需要安装软件,数据也可以安全地保存在您的机器上。 它说是可以得到电影级渲染

    2024年02月07日
    浏览(41)
  • Python 3D可视化(一)

    本篇目录: 一、写在前面的话 二、简介 三、环境安装 四、python 3D实例集锦 (1)、圆柱体 (2)、箭头 (3)、球形 (4)、平面 (5)、线型 (6)、立方体 (7)、圆锥体 (8)、六边形 (9)、空心六边形 (10)、茶壶 (11)、兔子 (12)、飞机 五、总结   作者:北宋苏

    2023年04月12日
    浏览(85)
  • python可视化——3D柱形图

       

    2024年02月06日
    浏览(61)
  • python如何实现点云可视化交互——Open3D实例教程(获取所选点的信息)保姆级教学

    Open3D是目前python中可用的用于 3D 数据处理的现代库,可以对点云、网格等三维数据进行读取、采样、配准、可视化等操作。其中对点云等三维模型进行可视化的功能在Python中显得非常方便。 在通过对官方文档的研究之后作者发现在Open3D的多种可视化函数中出现了返回所选点

    2024年02月02日
    浏览(64)
  • 【7月最新实现】使用Python获取全网招聘数据,实现可视化分析

    哈喽兄弟们,今天来实现采集一下最新的qcwu招聘数据。 因为网站嘛,大家都爬来爬去的,人家就会经常更新,所以代码对应的也要经常重新去写。 对于会的人来说,当然无所谓,任他更新也拦不住,但是对于不会的小伙伴来说,网站一更新,当场自闭。 所以这期是出给不会

    2024年02月12日
    浏览(37)
  • R语言使用rgl包的plot3d函数可视化3D散点图、使用type参数指定可视化的类型

    目录 R语言使用rgl包的plot3d函数可视化3D散点图、使用type参数指定可视化的类型 仿真数据

    2024年02月02日
    浏览(53)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包