3차원 볼륨 영상 처리
3차원 볼륨 영상, 즉 볼륨은 3개의 공간 차원인 높이, 너비, 깊이에서 샘플링된 장면의 밝기 또는 색을 표현합니다. 볼륨은 다음과 같은 다양한 영역에서 사용됩니다.
의료 영상 - 신체 구조를 분석하여 비정상적인 부분을 감지하고 생체 조직의 특성을 측정합니다.
제조 - 상품의 품질을 검사하고 제품 디자인을 향상시킵니다.
지질 영상 - 환경에 대해 비파괴 검사를 수행하고 암석과 화석의 특성을 조사합니다.
고고학 및 예술품 복원 - 유물을 디지털 방식으로 보존하고 고고학적 발견물을 비침습적인 방식으로 분석합니다.
Image Processing Toolbox™는 볼륨을 3개의 공간 차원을 가진 다차원 배열로 표현합니다. 회색조 볼륨과 이진 볼륨은 대개 3차원 배열입니다. 여기서 배열의 각 (행, 열, 평면) 인덱스는 해당 볼륨의 단일 복셀에 대응됩니다. 색 볼륨은 대개 4차원 배열입니다. 여기서 4번째 차원은 색 채널의 명암 값을 저장합니다.
참고
Image Processing Toolbox는 다차원 배열을 사용하여 영상 시퀀스도 표현합니다. 볼륨과 달리 영상 시퀀스에는 일반적으로 시간의 경과에 따른 장면 샘플을 저장하는 시간 차원이 있습니다. 일부 함수는 볼륨 영상과 영상 시퀀스 모두에 사용할 수 있는 반면, 다른 함수는 한 가지 유형의 입력값에만 사용할 수 있습니다. 자세한 내용은 Work with Image Sequences as Multidimensional Arrays 항목을 참조하십시오.
이 페이지에는 3차원 볼륨 영상을 지원하는 Image Processing Toolbox의 함수 목록이 정리되어 있습니다.
볼륨 가져오기 및 내보내기
| 함수 | 설명 |
|---|---|
| 블록 형식 볼륨 | |
blockedImage | 작은 이산 블록들로부터 만들어진 대용량 영상 또는 다중 해상도 영상 |
blockedImageDatastore | blockedImage 객체에서 블록을 읽어 들이는 데이터저장소 |
makeMultiLevel3D | 단일 수준의 블록 형식 영상으로부터 서로 다른 해상도를 갖는 3차원 다중 수준 블록 형식 영상 생성 |
| 표준 파일 형식 | |
dicomread | DICOM 영상 읽어 들이기 |
dicomreadVolume | DICOM 영상 세트에서 4차원 볼륨 생성 |
dicomContours | DICOM-RT Structure Set에서 ROI 데이터 추출 |
niftiinfo | NIfTI 파일에서 메타데이터 읽어 들이기 |
niftiwrite | NIfTI 형식을 사용하여 파일에 볼륨 쓰기 |
niftiread | NIfTI 영상 읽어 들이기 |
tiffreadVolume | TIFF 파일에서 볼륨 읽어 들이기 |
medicalVolume (Medical Imaging Toolbox) | 3차원 의료 영상 복셀 데이터 및 공간 참조 정보(Medical Imaging Toolbox™가 필요함) |
표시
| 함수 | 설명 |
|---|---|
| 대화형 방식으로 볼륨 표시 및 탐색 | |
| 볼륨 뷰어 | 볼륨 데이터와 레이블이 지정된 볼륨 데이터 표시 및 대화형 방식으로 표시 설정 조정 |
| 볼륨을 3차원 공간에서 렌더링 | |
viewer3d | 장면 수준의 제어가 가능한 3차원 뷰어 생성 |
volshow | 볼륨을 3차원 뷰어에 표시 |
Surface | 곡면을 3차원 뷰어에 표시 |
| 2차원 단면 표시(슬라이스) | |
montage | 사각형 몽타주 형태로 여러 영상 슬라이스 표시 |
sliceViewer | 회색조 볼륨 또는 RGB 볼륨에서 영상 슬라이스 찾아보기 |
orthosliceViewer | 회색조 볼륨 또는 RGB 볼륨에서 직교 슬라이스 찾아보기 |
obliqueslice | 볼륨에서 오블리크 슬라이스 추출 |
다음의 관련 예제를 참조하십시오.
기하 변환 및 정합
| 함수 | 설명 |
|---|---|
| 볼륨 크기 조정, 회전 및 자르기 | |
imresize3 | 3차원 회색조 볼륨 크기 조정 |
imrotate3 | 3차원 회색조 볼륨 회전 |
imcrop3 | 3차원 볼륨 자르기 |
| 3차원 기하 변환 생성 및 적용 | |
imwarp | 기하 변환 적용 |
transltform3d | 3차원 평행 이동 기하 변환 |
rigidtform3d | 3차원 강체 기하 변환 |
simtform3d | 3차원 유사 기하 변환 |
affinetform3d | 3차원 아핀 기하 변환 |
randomAffine3d | 무작위 3차원 아핀 기하 변환 |
transformPointsForward | 순방향 기하 변환 적용 |
transformPointsInverse | 역 기하 변환 적용 |
| 3차원 볼륨 정합 | |
imregister | 명암 기반 볼륨 정합 |
imregdemons | 두 개의 볼륨이 일치되도록 정렬하는 변위 필드 추정 |
| 의료 정합 추정기 (Medical Imaging Toolbox) | 의료 정합 추정기 앱을 사용하여 볼륨을 대화형 방식으로 정합(Medical Imaging Toolbox가 필요함) |
| 3차원 공간 참조 저장 | |
imref3d | 세계 좌표에 대한 참조 볼륨 |
affineOutputView | 변환된 볼륨의 공간 범위 |
예제는 Register Multimodal 3-D Medical Images 항목을 참조하십시오.
필터링 및 향상
| 함수 | 설명 |
|---|---|
| 볼륨에 필터 적용 | |
imfilter | N차원 필터를 다차원 볼륨에 적용 |
fspecial3 | 미리 정의된 3차원 필터 생성 |
medfilt3 | 3차원 중앙값 필터 적용 |
imgaussfilt3 | 3차원 가우스 필터링 |
imboxfilt3 | 3차원 상자 필터링 |
imnoise | 볼륨에 잡음 추가 |
integralBoxFilter3 | 3차원 적분 볼륨에 대한 상자 필터링 |
integralImage3 | 3차원 적분 볼륨 |
fibermetric | Frangi 도관 필터를 사용하여 볼륨에서 길쭉한 구조물이나 튜브 형태의 구조물 개선 |
padarray | 배열 채우기 |
| 대비 조정 | |
histeq | 히스토그램 평활화를 사용하여 대비 향상 |
imadjustn | 명암 값 조정 |
imhistmatchn | 참조 히스토그램과 일치하도록 볼륨의 히스토그램 조정 |
| 볼륨 디블러 처리 | |
deconvblind | 블라인드 디컨벌루션을 사용하여 볼륨 디블러 처리 |
deconvlucy | Lucy-Richardson 방법을 사용하여 볼륨 디블러 처리 |
deconvreg | 정규화된 필터를 사용하여 볼륨 디블러 처리 |
deconvwnr | 위너 필터를 사용하여 볼륨 디블러 처리 |
edgetaper | 볼륨 경계상의 불연속 속성 감쇄(taper) |
otf2psf | 광학 전달 함수를 점 확산 함수로 변환 |
psf2otf | 점 확산 함수를 광학 전달 함수로 변환 |
분할
영상 및 볼륨 분할 기법에 대한 자세한 내용은 Get Started with Image Segmentation 항목을 참조하십시오.
| 함수 | 설명 |
|---|---|
| 대화형 방식으로 볼륨 분할 | |
| 볼륨 분할기 | 볼륨 분할기 앱을 사용하여 대화형 방식으로 볼륨 내의 객체들을 분할하고 분할 마스크를 미세 조정 |
| 의료 영상 레이블 지정기 (Medical Imaging Toolbox) | 딥러닝 신경망을 포함한 수동 기법, 반자동 기법 및 자동 기법을 사용하여 대화형 방식으로 볼륨에 레이블 지정(Medical Imaging Toolbox가 필요함) |
| 이진 볼륨 분할 | |
activecontour | 능동 윤곽선(스네이크) 영역 확장 기법을 사용하여 회색조 볼륨을 전경과 배경으로 분할 |
lazysnapping | 그래프 기반 분할을 사용하여 회색조 볼륨을 전경과 배경으로 분할 |
grabcut | 반복적인 그래프 기반 분할을 사용하여 회색조 볼륨을 전경과 배경으로 분할 |
adaptthresh | 1차 국소 통계량을 사용하여 볼륨의 가변 임계값 구하기 |
graythresh | 오츠(Otsu) 방법을 사용한 전역 볼륨 이진화 |
gradientweight | 볼륨 기울기에 기반하여 복셀의 가중치 계산 |
graydiffweight | 회색조 명암 차이에 기반하여 영상 픽셀의 가중치 계산 |
grayconnected | 범람 채우기 기법을 사용하여 유사한 회색 값을 가진 연속 볼륨 영역 선택 |
imbinarize | 임계값 적용을 통해 볼륨 이진화 |
imsegfmm | 패스트 마칭(Fast Marching) 방법을 사용하는 이진 볼륨 분할 |
| 볼륨을 레이블이 지정된 볼륨으로 분할 | |
imsegkmeans3 | k-평균 군집화 기반 볼륨 분할 |
superpixels3 | 볼륨의 3차원 슈퍼픽셀 과다분할 |
watershed | 워터셰드 변환 |
| 분할 결과 평가 | |
bfscore | 윤곽선 일치 점수 |
dice | Sørensen-Dice 유사성 계수 |
jaccard | 자카드 유사성 계수 |
다음의 관련 예제를 참조하십시오.
모폴로지
볼륨이 영상 시퀀스가 아닌 볼륨으로 처리되도록 하려면 3차원 구조 요소를 사용하십시오.
| 함수 | 설명 |
|---|---|
| 모폴로지 연산 | |
bwmorph3 | 이진 볼륨에 대한 모폴로지 연산 |
imclose | 볼륨에 모폴로지 닫기 연산 수행 |
imdilate | 볼륨 팽창 |
imerode | 볼륨 침식 |
imopen | 볼륨에 모폴로지 열기 연산 수행 |
imbothat | Bottom-hat 필터링 |
imtophat | Top-hat 필터링 |
bwskel | 모든 객체를 이진 볼륨의 선으로 축소 |
bwhitmiss | 이진 적중-비적중 연산 |
bwperim | 이진 볼륨에서 객체의 둘레 찾기 |
imclearborder | 볼륨 테두리에 연결된 밝은 구조물의 표시 제거 |
imkeepborder | 볼륨 테두리에 연결된 밝은 구조물의 표시 유지 |
bwulterode | 최종 침식 |
imfill | 볼륨 내의 영역과 구멍 채우기 |
padarray | 볼륨 채우기 |
| 모폴로지 재구성 | |
imreconstruct | 모폴로지 재구성 |
imregionalmax | 국부 최댓값 |
imregionalmin | 국부 최솟값 |
imextendedmax | 확장 최댓값 변환 |
imextendedmin | 확장 최솟값 변환 |
imhmax | H-maxima 변환을 사용하여 국부 최댓값 억제 |
imhmin | H-minima 변환을 사용하여 국부 최솟값 억제 |
imimposemin | 최솟값 적용 |
| 구조 요소 | |
strel | 이진 볼륨의 모폴로지 구조 요소 |
offsetstrel | 회색조 볼륨의 모폴로지 오프셋 구조 요소 |
conndef | 연결성 배열 만들기 |
영상 및 객체 분석
| 함수 | 설명 |
|---|---|
| 객체 분석 | |
regionprops3 | 3차원 영역의 속성 측정 |
bwselect3 | 이진 볼륨에서 객체 선택 |
bwconncomp | 이진 볼륨의 연결성분을 찾아 개수 계산 |
bwareaopen | 이진 볼륨에서 크기가 작은 객체 제거 |
| 영상 품질 평가 | |
immse | 평균제곱오차 |
psnr | 피크 신호 대 잡음비(PSNR) |
ssim | SSIM(구조적 유사도) 지수 |
multissim3 | MS-SSIM(다중 스케일 구조적 유사도) 지수 |
| 영상 속성 측정 | |
imhist | 볼륨 데이터의 히스토그램 |
bwdist | 이진 볼륨의 거리 변환 |
bwdistgeodesic | 이진 볼륨의 측지선 거리 변환 |
graydist | 회색 가중 거리 변환 |
| 경계 검출 | |
edge3 | 회색조 볼륨에서 경계 찾기 |
imgradient3 | 볼륨에서 기울기의 크기와 방향 구하기 |
imgradientxyz | 볼륨의 방향 기울기 구하기 |
| 텍스처 측정 | |
entropy | 회색조 볼륨의 엔트로피 |
entropyfilt | 회색조 볼륨의 국소 엔트로피 |
rangefilt | 볼륨의 국소 범위 |
stdfilt | 볼륨의 국소 표준편차 |
볼륨을 사용한 딥러닝
자세한 내용은 Get Started with Image Preprocessing and Augmentation for Deep Learning (Computer Vision Toolbox) 항목과 Preprocess Volumes for Deep Learning (Deep Learning Toolbox) 항목을 참조하십시오.
| 함수 | 설명 |
|---|---|
| 딥러닝을 위한 데이터 읽어 들이기 및 전처리 | |
blockedImageDatastore | blockedImage 객체에서 블록을 읽어 들이는 데이터저장소 |
randomPatchExtractionDatastore | 볼륨 또는 픽셀 레이블 볼륨으로부터 무작위 3차원 패치를 추출하는 데이터저장소 |
randomAffine3d | 무작위 3차원 아핀 변환 |
centerCropWindow3d | 중심 직육면체 자르기 윈도우 |
randomCropWindow3d | 무작위 직육면체 자르기 윈도우 |
| 심층 신경망 만들기 | |
resize3dLayer | 신경망의 3차원 계층 크기 조정(Deep Learning Toolbox™가 필요함) |
dlresize | dlarray 객체의 공간 차원 크기 조정(Deep Learning Toolbox가 필요함) |
예제는 딥러닝을 사용한 3차원 뇌종양 분할 항목을 참조하십시오.
산술 연산
| 함수 | 설명 |
|---|---|
imabsdiff | 두 볼륨의 절대 차분 |
imadd | 두 볼륨 더하기 또는 볼륨에 상수 더하기 |
imdivide | 한 볼륨을 다른 볼륨으로 나누기 또는 볼륨을 상수로 나누기 |
immultiply | 두 볼륨 곱하기 또는 볼륨에 상수 곱하기 |
imsubtract | 한 볼륨에서 다른 볼륨 빼기 또는 볼륨에서 상수 빼기 |