add : dcm / nii.gz 뷰어 / cvat 컨버터

This commit is contained in:
2025-12-02 11:57:45 +09:00
commit b38a06dcbe
4 changed files with 408 additions and 0 deletions

49
README.md Normal file
View File

@@ -0,0 +1,49 @@
# UTILITY_DICOM_NII_TO_CVAT
이 저장소는 DICOM(.dcm) 의료 영상과 NII.GZ(.nii.gz) 세그멘테이션 마스크 파일을 **CVAT(Computer Vision Annotation Tool)**에서 사용할 수 있는 **Segmentation Mask 1.1** 형식으로 변환하는 유틸리티 도구 모음입니다.
## 기능
1. **데이터 변환 (`DCM_NII_to_CVAT.py`)**:
* **이미지 변환:** `.dcm` 파일을 `.jpg`로 변환 (정규화 포함).
* **마스크 변환:** 여러 개의 `.nii.gz` 파일(C2, C3, T1...)을 하나의 **RGB 컬러 마스크**(`.png`)로 통합.
* **포맷 지원:** CVAT **Segmentation Mask 1.1** 구조 자동 생성 (`JPEGImages`, `SegmentationClass`, `labelmap.txt`, `default.txt`).
2. **데이터 뷰어 (`NII_DCM_Viewer.py`)**:
* 원본 DICOM과 NII 마스크를 오버레이하여 시각적으로 검증.
* MITK PlanarFigure(.pf) 파일 지원.
## 설치 방법
**권장 환경:** Python 3.10
```bash
# 가상환경 생성 (선택)
conda create -n dcm python=3.10
conda activate dcm
# 의존성 설치
pip install -r requirements.txt
```
## 사용 방법
### 1. 데이터 변환 (CVAT용)
```bash
python DCM_NII_to_CVAT.py
```
실행 후 생성된 `cvat_dataset_mask_v2` 폴더 **내부의 파일들**(`JPEGImages`, `SegmentationClass`, `ImageSets`, `labelmap.txt`)을 선택하여 **ZIP으로 압축**한 뒤, CVAT에서 **Segmentation Mask 1.1** 포맷으로 업로드하세요.
### 2. 데이터 뷰어
```bash
python NII_DCM_Viewer.py
```
## 파일 구조
* `DCM_NII_to_CVAT.py`: 변환 메인 스크립트
* `NII_DCM_Viewer.py`: 뷰어 스크립트
* `requirements.txt`: 필요 라이브러리 목록