거리 계산
거리 변환(distance transformation)은 각 픽셀에서 특정 지점(보통 가장 가까운 배경 픽셀)까지의 거리를 계산합니다. 이를 통해 객체 내부의 지점과 가장자리와 가까운 지점을 구분할 수 있어요.
이번 연습에서는 labels에 있는 좌심실 객체에 Euclidian distance 변환을 적용해 보세요.
이 연습은 강의의 일부입니다
Python을 활용한 생의학 영상 분석
연습 안내
- 좌심실 픽셀의 마스크를 만드세요 (
labels에서 값이 1인 픽셀). ndi.distance_transform_edt()를 사용해 각 픽셀의 배경까지 거리를 계산하세요.sampling인수에 픽셀 크기를 전달하세요.ndi.maximum과ndi.maximum_position을 사용해 최대 거리와 그 좌표를 출력하세요.- 원본 이미지 위에 거리 맵의 단면을 겹쳐 표시하세요. 이 부분은 이미 준비되어 있어요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Calculate left ventricle distances
lv = np.where(____, 1, 0)
dists = ____
# Report on distances
print('Max distance (mm):', ____)
print('Max location:', ____)
# Plot overlay of distances
overlay = np.where(dists[5] > 0, dists[5], np.nan)
plt.imshow(overlay, cmap='hot')
format_and_render_plot()