Układanie obrazów w stos
„Stosy" obrazów to przydatna metafora pomagająca zrozumieć dane wielowymiarowe. Każdy wyższy wymiar to stos tablic o niższym wymiarze.
W tym ćwiczeniu użyjemy funkcji stack() z biblioteki NumPy, aby połączyć kilka tablic 2D w trójwymiarową objętość. Zgodnie z konwencją dane wolumetryczne powinny być układane w stos wzdłuż pierwszego wymiaru: vol[plane, row, col].
Uwaga: wykonanie jakiejkolwiek operacji na obiekcie Image z biblioteki ImageIO spowoduje jego konwersję do numpy.ndarray, co usunie powiązane metadane.
To ćwiczenie jest częścią kursu
Analiza obrazów biomedycznych w Pythonie
Instrukcje do ćwiczenia
- Zaimportuj
imageiooraznumpy(jakonp). - Wczytaj pliki "chest-220.dcm", "chest-221.dcm" i "chest-222.dcm".
- Utwórz trójwymiarową objętość za pomocą
np.stack(). Ustaw parametraxisna 0. - Wyświetl atrybut
shapeobiektuvol.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Import ImageIO and NumPy
import imageio.v2 as imageio
import ____ as ____
# Read in each 2D image
im1 = imageio.imread('chest-220.dcm')
im2 = ____
im3 = ____
# Stack images into a volume
vol = np.stack(____)
print('Volume dimensions:', ____)