개발/DICOM 이야기

04. DICOM의 기본 구조 – File Format과 Meta Information

devbake 2025. 7. 28. 21:50

DICOM 파일은 단순한 이미지 파일이 아니다. '.dcm' 확장자를 가진 이 파일 안에는 의료 영상 자체뿐만 아니라, 환자 정보, 검사 정보, 장비 정보 등 다양한 메타데이터가 함께 포함되어 있다.
표면적으로는 한 장의 CT나 MRI 이미지처럼 보일 수 있지만, 실제로는 수백 개의 "데이터 요소(Data Element)"가 조합된 구조로 이루어져 있다. 이 복잡한 구조 덕분에 의료기관은 DICOM 파일 하나만으로 영상 확인, 환자 식별, 검사 이력 추적까지 가능하다.
이번 글에서는 DICOM 파일의 전체적인 구조를 구성하는 핵심 개념인 File Format(파일 포맷)과 Meta Information(메타정보)에 대해 실무자의 눈높이에 맞춰 설명한다.

 

1. DICOM 파일은 어떻게 구성되는가

DICOM 파일은 크게 두 부분으로 나뉜다.
첫 번째는 File Meta Information Header라고 불리는 메타정보 영역이고,
두 번째는 Data Set이라고 불리는 실제 영상 및 환자 정보 데이터 영역이다.

구성  요소설명
File Preamble 파일 시작부(128바이트), 일반적으로 비어 있음
DICOM Prefix ‘DICM’이라는 4바이트 문자열 (식별 목적)
File Meta Information 파일 자체에 대한 정보 (버전, UID, Transfer Syntax 등)
Data Set 실제 DICOM 태그와 이미지 데이터를 포함하는 본문 영역

이러한 구조는 DICOM 3.0 표준에 의해 정의되어 있으며, 파일을 분석하거나 뷰어에서 로딩할 때 위 표에 기재된 순서대로 해석된다.

 

2. File Meta Information 영역

File Meta Information은 파일의 맨 앞부분에 위치한 메타정보 덩어리로,
DICOM 파일을 읽을 수 있는 필수적인 시스템 정보들이 담겨 있다.

주요 항목

태그 설명
(0002,0000) File Meta Information Group Length
(0002,0001) File Meta Information Version
(0002,0002) Media Storage SOP Class UID
(0002,0010) Transfer Syntax UID (전송 문법)
(0002,0012) Implementation Class UID
 

이 정보는 DICOM 파일을 처리하는 DICOM Reader 또는 PACS 서버가 파일을 어떻게 해석해야 하는지를 안내하는 역할을 한다.

특히 Transfer Syntax UID는 압축 여부, Endianness(바이트 순서) 등에 큰 영향을 준다.

 

3. DICOM Prefix와 Preamble

DICOM 파일은 일반적으로 128바이트의 Preamble로 시작된다. 이 부분은 표준상 특정 내용을 요구하지 않으며 대부분 비어 있다.
그 뒤에는 항상 ‘DICM’이라는 4바이트 문자열이 붙는다. 

이 문자열이 있는 경우, 파일을 읽는 프로그램 입장에서 “이건 DICOM 파일이다”라고 인식하고 파싱을 시작하게 된다.

하지만 일부 DICOM 파일은 이 Prefix가 없는 경우도 존재한다. 이는 주로 내부 처리용 또는 연구용 파일에서 발견된다.

 

4. Data Set 영역

DICOM의 기본 구조 – File Format과 Meta Information

 

메타 정보를 지나면, 본격적인 데이터 영역인 Data Set이 등장한다.
여기에는 수백 개의 **DICOM 태그(Tag)**가 나열되어 있으며, 각 태그는 **Data Element(데이터 요소)**로 구성된다.

Data Element는 아래와 같은 구조를 따른다.

 

항목 설명
Tag (그룹번호, 요소번호) 형식의 식별자
VR(Value Representation) 데이터 타입 (예: PN, DA, UI 등)
Length 값의 길이
Value 실제 데이터 값 (예: 환자 이름, 생년월일 등)
이 구조는 반복적으로 등장하며, 각 태그는 영상, 환자 정보, 검사 정보, 장비 정보 등 다양한 내용을 담고 있다.
 
 

5. 구조 예시: 간단한 DICOM 파일

예를 들어, 다음은 아주 단순한 DICOM 파일의 구성 예다. (DICOM 전용 뷰어로 파일을 읽어들인 상황으로 가정하고 보자.)

128 bytes     -> Preamble (비어 있음)  
4 bytes       -> ‘DICM’  
(0002,0000)   -> Meta Length  
(0002,0001)   -> Meta Version  
(0010,0010)   -> Patient Name (홍길동)  
(0010,0020)   -> Patient ID (123456)  
(7FE0,0010)   -> Pixel Data (영상)
 
 

이와 같은 구조를 통해 하나의 DICOM 파일 안에
"누가(환자), 언제(지역, 병원), 어디서 어떤 장비로 찍었는지 + 의료 영상"까지 모두 포함된다는 것을 알 수 있다.

 

6. 왜 구조를 이해해야 하는가?

DICOM 파일의 구조를 이해하는 것은 단순히 파일을 열어보기 위해서만이 아니다.

다음과 같은 이유로 실무에서 구조 이해는 필수적이다.

  • PACS 연동 시 오류 원인 파악 (UID 누락, Transfer Syntax 불일치 등)
  • AI 모델 학습 시 원하는 태그만 추출하여 데이터셋 신규 구성
  • 익명화 처리를 위한 환자 정보 위치 확인
  • 새로운 영상 장비 도입 시 호환성 테스트 수행

즉, DICOM은 기술적으로 이해해야 제대로 다룰 수 있는 파일 형식이다.


결론

DICOM 파일은 단순한 이미지가 아니라, 정교하게 구조화된 메타데이터와 픽셀 데이터의 조합체다.
파일은 크게 File Meta Information과 Data Set으로 구성되며, 각 영역은 의료 영상 데이터를 안전하고 효율적으로 저장하고 전송하기 위한 역할을 한다.
이 구조를 이해하는 것은 PACS 연동, 의료 AI 데이터 전처리, 시스템 구축 등에서 필수적인 기술로 자리잡고 있다.
앞으로 이어질 시리즈에서는 각 구조의 세부 항목들, 특히 DICOM 태그와 VR의 개념을 더욱 깊이 있게 다룰 예정이다.