オブジェクトとラベル

Python による生体医療画像解析

Stephen Bailey

Instructor

セグメンテーションによる画像の分割

細胞セグメンテーション

脳セグメンテーション

Python による生体医療画像解析

Sunnybrook心臓データベース

駆出率: 心臓の左心室 (LV) から拍出される血液の割合。

駆出率の図

心臓画像

Python による生体医療画像解析

画像コンポーネントのラベリング

心臓2Dマスク

Python による生体医療画像解析

画像コンポーネントのラベリング

import scipy.ndimage as ndi
im=imageio.imread('SCD4201-2d.dcm')
filt=ndi.gaussian_filter(im, 
                         sigma=2)
mask = filt > 150

labels, nlabels = ndi.label(mask)
nlabels
14
plt.imshow(labels, cmap='rainbow')
plt.axis('off')
plt.show()

ラベル付き細胞

Python による生体医療画像解析

ラベルの選択

画像内の単一ラベルを選択する:

np.where(labels == 1, im, 0)

1つのラベル

画像内の複数ラベルを選択する:

np.where(labels < 3, im, 0)

2つのラベル

Python による生体医療画像解析

オブジェクトの抽出

  • バウンディングボックス: オブジェクトを完全に囲むピクセルの範囲

  • ndi.find_objects() はバウンディングボックス座標のリストを返す

バウンディングボックス付きラベル画像

Python による生体医療画像解析

オブジェクトの抽出

labels, nlabels = ndi.label(mask)
boxes = ndi.find_objects(labels)

boxes[0]
(slice(116,139), slice(120, 141))

複数の画像ボックス

Python による生体医療画像解析

練習しましょう!

Python による生体医療画像解析

Preparing Video For Download...