Анализ медицинских изображений в Python: Windowing / Визуализация
Давайте визуализируем изображение до преобразования и после.
f = plt.figure(figsize=(12,12))
ax = f.add_subplot(121)
ax2 = f.add_subplot(122)
ax.imshow(array[...,50].astype(np.float32), cmap=plt.cm.bone)
ax.title.set_text('Оригинальное изображение')
ax2.imshow(windowed(array[...,50].astype(np.float32), 150,30), cmap=plt.cm.bone)
ax2.title.set_text('Windowing Изображение')
Действительно, после применения Windowing больше выделяет структуры.
Мы разобрали рекомендуемые параметры Windowing. Давайте посмотрим на более экзотичные варианты. Например можно миксовать Windowing.
def rainbow_bsb_window(img):
brain_img = windowed(img, 40, 80)
subdural_img = windowed(img, 80, 200)
bone_img = windowed(img, 600, 2000)
combo = (brain_img*0.3 + subdural_img*0.5 + bone_img*0.2)
return combo
f = plt.figure(figsize=(12,12))
ax = f.add_subplot(121)
ax2 = f.add_subplot(122)
ax.imshow(array[...,50].astype(np.float32), cmap=plt.cm.bone)
ax.title.set_text('Оригинальное изображение')
ax2.imshow(rainbow_bsb_window(array[...,50].astype(np.float32)))
ax2.title.set_text('Windowing Изображение')
Самостоятельная работа: попробуйте другие Windowing. Оцените результат.