Biến đổi không gian

Phân tích ảnh Y sinh học bằng Python

Stephen Bailey

Instructor

Cơ sở dữ liệu OASIS

logo OASIS

Phân tích ảnh Y sinh học bằng Python

Độ biến thiên đáng kể

mảng-nhiều-não

Phân tích ảnh Y sinh học bằng Python

Đăng ký (Registration)

  • Căn chỉnh ảnh theo mẫu
  • Giảm biến thiên không gian

  • Mẫu:

    • có thể đại diện nhiều đối tượng
    • có thể là ảnh "trung bình"
  • Gồm nhiều phép biến đổi không gian

ba-ảnh-đăng-ký

Phân tích ảnh Y sinh học bằng Python

Biến đổi affine bảo toàn điểm, đường và mặt phẳng

ví-dụ-biến-đổi

Phân tích ảnh Y sinh học bằng Python

Tịnh tiến

đầu-bị-tịnh-tiến

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])
Phân tích ảnh Y sinh học bằng Python

Xoay

ndi.rotate(im,
           angle=25,
           axes=(0,1))

đầu-bị-xoay

Phân tích ảnh Y sinh học bằng Python

Xoay ảnh

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

xfm.shape
(297, 297)

xoay-đổi-kích-thước

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

xoay-bình-thường

Phân tích ảnh Y sinh học bằng Python

Ma trận biến đổi

Ma trận biến đổi: áp dụng lên một ảnh để đăng ký.

Các phần tử ma trận mã hóa "hướng dẫn" cho các biến đổi affine khác nhau.

ảnh-với-bốn-biến-đổi

Phân tích ảnh Y sinh học bằng Python

Áp dụng ma trận biến đổi

# Ma trận đơn vị
mat = [[1, 0, 0],
       [0, 1, 0],
       [0, 0, 1]]

xfm = ndi.affine_transform(im, mat)

ảnh-gốc

# Tịnh tiến và đổi tỷ lệ
mat = [[0.8, 0,   -20],
       [0,   0.8, -10],
       [0,   0,   1]]
xfm = ndi.affine_transform(im,
                           mat)

ảnh-đã-biến-đổi

Phân tích ảnh Y sinh học bằng Python

Cùng luyện tập nào!

Phân tích ảnh Y sinh học bằng Python

Preparing Video For Download...