MATLAB을 사용한 3차원 이미지 프로세싱

반드시 알아야 할 3가지

3차원 이미지 프로세싱이란?

3차원 이미지 프로세싱은 기하 변환, 필터링, 영상 분할 및 기타 모폴로지 연산을 통한 3차원 이미지 데이터의 시각화, 프로세싱 및 분석입니다.

3차원 이미지 프로세싱은 일반적으로 MRI 또는 CT 스캔과 같은 방사선 소스에서 DICOM 또는 NIfTI 이미지를 분석하기 위해 의료 분야에 사용됩니다. 현미경에서 3차원 이미지 프로세싱 기법을 사용하여 조직 샘플을 검출 및 분석하거나 뉴론을 추적할 수 있습니다. 

Mvisvis 엔지니어는 MATLAB을 사용하여 전 세계 임상의를 위한 시스템 구축 심혈관 분석 소프트웨어를 개발합니다.

의료 영상 외에도 3차원 이미지 프로세싱 기법을 사용하여 수하물 보안 검색을 처리하거나 자료 스캔을 분석하여 구조를 이해할 수 있습니다. 기타 응용 분야로는 가전 제품을 위한 비디오 활동 인식 또는 국방 시스템의 공중 감시가 포함됩니다.

3차원 이미지 프로세싱 기법

3차원 이미지 데이터를 프로세싱할 때 사용할 수 있는 많은 기법이 있습니다. 이들 기법은 데이터 가져오기, 시각화, 처리 및 분석을 포함하여 수행하려는 작업에 따라 다릅니다.

이 다이어그램은 3차원 이미지 프로세싱 워크플로의 주요 구성 요소를 강조 표시합니다.

이미지 가져오기 및 시각화

3차원 이미지 데이터는 다양한 장치와 파일 형식에서 가져올 수 있습니다. 3차원 이미지를 효과적으로 가져오고 시각화하려면 이미지의 기본 데이터와 메타 데이터에 액세스하는 것이 중요합니다.

관찰하려고 하는 세부 정보에 따라 다양한 방법을 사용하여 3차원 이미지를 시각화할 수 있습니다. 일부 응용 프로그램에서는 3차원 데이터를 렌더된 볼륨(rendered volume)으로 시각화하기를 원할 수 있습니다.

3차원 나선형의 렌더된 볼륨 보기. 

다른 응용 프로그램에서는 3차원 좌표계에서 3차원 데이터를 2D 평면으로 볼 수 있습니다.

3차원 볼륨을 2D 슬라이스로 보기.

이미지 필터링 및 개선

3차원 이미지에는 일반적으로 관심 있는 볼륨의 특징을 흐리게 하거나 희미하게 만드는 원치 않는 노이즈가 포함되어 있습니다. 이미지 필터를 적용하거나, 이미지 대비를 정규화하거나, 모폴로지 연산을 수행하는 것은 3차원 이미지에서 노이즈를 제거하는 일반적인 기법입니다.

영상 정합

3차원 이미지의 데이터셋으로 작업할 때 일반적으로 이미지는 다른 장치에서 가져오거나, 장치가 움직이는 동안에 회전 또는 왜곡 및 스케일링 차이를 통해 오정렬이 초래될 수 있습니다. 3차원 기하 변환 및 영상 정합 기법을 사용하여 이러한 오정렬을 제거하거나 줄일 수 있습니다.

다중모달 의료 영상 정합

영상 분할

볼륨 또는 3차원 이미지를 분석할 때 관심 영역에서만 계산을 수행하기 위해 특정 지역을 분리할 수 있습니다. 예를 들어, 상자 안의 병 볼륨을 계산하려면 이미지 분할을 사용하여 병과 상자 내 다른 구조의 3차원 이미지를 파티션으로 나눌 수 있습니다.

MATLAB을 사용한 3차원 이미지 프로세싱

MATLAB은 3차원 이미지 프로세싱 워크플로를 가속화하는 대화형 앱과 함수를 제공합니다. 3차원 이미지 프로세싱 작업에 MATLAB을 사용하는 방법을 자세히 알아 보려면 다음 예제를 살펴보십시오.

3차원 이미지 데이터 가져오기

MATLAB에서 대화형 앱 또는 내장 함수를 사용하여 TIFF, DICOM 또는 NIfTI와 같은 다양한 파일 형식의 3차원 이미지 데이터를 가져올 수 있습니다.

DICOM Browser app에서 DICOM 파일 컬렉션을 탐색할 수 있습니다.

볼륨 데이터 시각화

MATLAB을 사용하면 레이블 유무와 상관없이 3차원 이미지 데이터를 시각화하고 탐색할 수 있습니다.

Volume Viewer 앱을 사용하면 3차원 볼륨 또는 레이블이 지정된 3차원 볼륨 데이터와 상호 작용하고 볼 수 있습니다.  

다양한 모달리티로부터 취득한 3D 영상 정합

MATLAB은 다양한 모달리티로부터 얻는 이미지를 지원하며 영상 정합 워크플로를 제공하여 이미지를 통합합니다.

예제는 강도 기반 정합을 사용하여 두 개의 볼륨 데이터 세트를 자동으로 얼라인하는 방법을 보여줍니다. 

이미지 필터링 및 개선 작업

MATLAB을 사용하면 가우스 필터링, 박스 필터링 또는 이미지 모폴로지와 같은 다양한 이미지 필터링 기법을 사용하여 노이즈를 줄이거나 이미지를 개선할 수 있습니다.

예제는 3차원 가우스 필터링을 사용하여 인간 두뇌의 MRI 영상을 스무딩 하는 방법을 보여줍니다.

3차원 데이터의 구성 요소 분할

MATLAB은 3차원 영상 분할 루틴을 자동화하는 데 도움이 되는 대화형 앱과 내장 함수를 제공합니다.

이 예제는 능동 윤곽선(스네이크)을 사용하여 3차원 분할을 수행하는 방법을 보여줍니다.  Image Segmenter 앱을 사용하여 볼륨의 2D 슬라이스를 대화형 방식으로 분할하면 능동 윤곽선 알고리즘 시작점이 생성됩니다.

딥러닝을 이용한 3차원 이미지 프로세싱

3차원 이미지 프로세싱에 대한 딥러닝 접근 방식에는 3차원 이미지의 관련 기능을 자동으로 학습, 감지 및 라벨링하기 위해 컨벌루션 신경망과 시맨틱 분할을 사용하는 것이 포함될 수 있습니다.

예제는 MATLAB을 사용하여 3차원 U-Net 네트워크를 학습하고 3차원 영상에서 뇌종양의 시맨틱 분할을 수행하는 방법을 보여줍니다.