Python 的生醫影像分析
Stephen Bailey
Instructor

降低空間差異
範本:
需進行多種空間轉換

import imageio.v2 as imageio
import scipy.ndimage as ndi
im=imageio.imread('OAS1036-2d.dcm')
im.shape
(256, 256)
com = ndi.center_of_mass(im)d0 = 128 - com[0] d1 = 128 - com[1]xfm = ndi.shift(im, shift=[d0, d1])
ndi.rotate(im,
angle=25,
axes=(0,1))

xfm = ndi.rotate(im, angle=25)
xfm.shape
(297, 297)

xfm = ndi.rotate(im, angle=25,
reshape=False)
xfm.shape
(256, 256)

轉換矩陣:對單一影像施加以進行配準。
矩陣元素編碼不同仿射轉換的「指令」。

# 單位矩陣 mat = [[1, 0, 0], [0, 1, 0], [0, 0, 1]]xfm = ndi.affine_transform(im, mat)

# 平移與縮放
mat = [[0.8, 0, -20],
[0, 0.8, -10],
[0, 0, 1]]
xfm = ndi.affine_transform(im,
mat)

Python 的生醫影像分析