進階繪圖

Python 的生醫影像分析

Stephen Bailey

Instructor

要繪製 N 維資料,先做切片!

整條麵包

切片麵包

Python 的生醫影像分析

一次繪出多張影像

plt.subplots:建立含多個 AxesSubplots 物件的圖像畫布。

圖像畫布示意圖

import imageio.v2 as imageio
vol = imageio.volread('chest-data', format='DICOM')
fig, axes = plt.subplots(nrows=1,
                         ncols=3)

axes[0].imshow(vol[0],cmap='gray')
axes[1].imshow(vol[10],cmap='gray') axes[2].imshow(vol[20],cmap='gray')
for ax in axes: ax.axis('off')
plt.show()
Python 的生醫影像分析

一次繪出多張影像

連續胸腔體積影像的子圖組

Python 的生醫影像分析

非標準視角

import imageio.v2 as imageio

vol = imageio.volread(
      'chest-data', format='DICOM')

view_1v2 = vol[pln, :, :] view_1v2 = vol[pln]

$$Axial$$

軸向視圖

Python 的生醫影像分析

非標準視角

import imageio.v2 as imageio

vol = imageio.volread(
     'chest-data', format='DICOM')

view_1v2 = vol[pln, :, :] view_1v2 = vol[pln]
view_0v2 = vol[:, row, :]

$$Coronal$$

冠狀面視圖

Python 的生醫影像分析

非標準視角

import imageio.v2 as imageio

vol = imageio.volread(
     'chest-data', format='DICOM')

view_1v2 = vol[pln, :, :] view_1v2 = vol[pln]
view_0v2 = vol[:, row, :]
view_0v1 = vol[:, :, col]

$$Sagittal$$

矢狀面視圖

Python 的生醫影像分析

調整長寬比

像素可有任意長寬比:

長寬比示意圖

im = vol[:,:,100]
d0, d1, d2 = vol.meta['sampling']
d0, d1, d2
(2, 0.5, 0.5)
asp = d0 / d1
asp
3
plt.imshow(im, cmap='gray',
           aspect=asp)
plt.show()
Python 的生醫影像分析

調整長寬比

矢狀切片

Python 的生醫影像分析

一起來練習吧!

Python 的生醫影像分析

Preparing Video For Download...