• 跳至主要導覽
  • 跳至主要內容
  • 跳至主要資訊欄
Office 指南

Office 指南

辦公室工作實用教學

  • Excel
  • Word
  • PowerPoint
  • Windows
  • PowerShell
  • R

itkwidgets 互動式 Jupyter 影像視覺化工具使用教學與範例

介紹如何在 Jupyter 環境中使用 itkwidgets 模組,互動式顯示影像或網格等 3D 資料。


itkwidgets 是從 itk-vtk-viewer 所衍生出來的 Python 模組,可以讓使用者在 Jupyter 環境之下顯示各種影像分析相關的資料。

安裝 Node.js

NodeSource 的 GitHub 說明,安裝最新版本的 Node.js:

# 安裝 14 版 Node.js
curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt-get install -y nodejs

安裝 itkwidgets

itkwidgets 可以透過 pip 或 conda 安裝:

# 透過 pip 安裝 itkwidgets
sudo pip3 install itkwidgets

# 透過 conda 安裝 itkwidgets
conda install -c conda-forge itkwidgets

若需要在 Jupyter Lab 中使用,需要再執行:

# 設定 Jupyter Lab
sudo jupyter labextension install @jupyter-widgets/jupyterlab-manager \
  jupyter-matplotlib jupyterlab-datawidgets itkwidgets

顯示影像與網格

itkwidgets 支援 NumPy、Dask、ITK、VTK、SimpleITK、pyvista、vtkplotter 等各種 2D、3D 影像與網格(mesh)資料格式。

以下是顯示 ITK 的影像與網格資料範例,範例資料是 Allen Brain Altas 的平均腦影像以及標註網格:

import itk
import itkwidgets

# 讀取網格資料
meshType = itk.Mesh[itk.F, 3]
meshReader = itk.MeshFileReader[meshType].New()
meshIO = itk.OBJMeshIO.New()
meshReader.SetMeshIO(meshIO)
meshReader.SetFileName("annotation/ccf_2017/structure_meshes/375.obj")
meshReader.Update()
mesh1 = meshReader.GetOutput()

meshType = itk.Mesh[itk.F, 3]
meshReader = itk.MeshFileReader[meshType].New()
meshIO = itk.OBJMeshIO.New()
meshReader.SetMeshIO(meshIO)
meshReader.SetFileName("annotation/ccf_2017/structure_meshes/698.obj")
meshReader.Update()
mesh2 = meshReader.GetOutput()

# 讀取 Volume 影像
image = itk.imread("average_template/average_template_25.nrrd", itk.US)

# 顯示 Volume 影像與網格
itkwidgets.view(image, geometries = [mesh1, mesh2])
itkwidgets 顯示影像與網格資料
itkwidgets 顯示影像與網格資料

關於更詳細使用說明與範例,可以參考 itkwidgets 的 GitHub 網站。另外亦可使用 help 查閱其使用說明:

# 查看使用說明
help(itkwidgets.view)

分類:Python 標籤:ITK, Visualization, VTK

讀者互動方式

發佈留言 取消回覆

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

主要資訊欄

搜尋

近期文章

  • hashcat 密碼雜湊快速破解工具使用教學與範例
  • macOS 使用 GPGTools 與 GPG Mail 對郵件加密、解密、簽章、驗證教學與範例
  • wrk:HTTP 網頁伺服器效能測試工具使用教學
  • C++ 語言使用 Crypto++ 實作 RSA 數位簽章教學與範例
  • C++ 語言使用 Crypto++ 實作 RSA-OAEP 搭配 SHA256 加密教學與範例
  • C++ 語言使用 Crypto++ 實作 AES 加密、解密、認證加密教學與範例
  • C++ 語言使用 Crypto++ 實作 MD5、SHA1、SHA2、BLAKE2 雜湊教學與範例
  • Ubuntu Linux 安裝、使用 Crypto++ 加密函式庫教學與範例

推薦網站

  • Udemy 線上教學課程
  • Coursera 線上教學課程

關注本站

  • 電子郵件
  • Facebook

公益

  • 家扶基金會
  • 台灣世界展望會
  • Yahoo 奇摩公益
  • igiving 公益網
  • 兒福聯盟

Copyright © 2021 · Office Guide