본 포스팅에서는 의료영상 규격인 Dicom의 tag를 python을 통해 읽어보도록 하겠다.
Dicom Tag
DICOM(Digital Imaging and Communications in Medicine) 태그는 DICOM 이미지 파일에 내장된 메타데이터이다.
이러한 태그에는 환자 이름, 나이, 성별, 촬영장비 및 영상 크기 등에 대한 정보가 포함되어 있다.
Dicom Tag 읽기
Python에서 의료영상을 읽는데 자주 사용되는 라이브러리인 pydicom을 사용하자.
터미널 창에 "pip install pydicom"을 입력하여 라이브러리를 설치하고 진행하자.
import pydicom
dcm_pydicom = pydicom.read_file('./abnormal_images/0001/1-001.dcm')
print(dcm_pydicom)
"pydicom.read_file('의료영상경로')"를 입력하면..

다음과 같이 해당 의료영상 태그들을 확인할 수 있다.
이를 하나씩 살펴보자.
Dicom Tag 정보
- Patient ID : 환자의 고유 식별자로 고유 번호이다.
print(dcm_pydicom.PatientID)
#'LIDC-IDRI-0772'
- Patient Name : 환자의 이름
print(dcm_pydicom.PatientName)
# ''
# 위 예시는 모두 익명화가 된 오픈데이터셋이기 때문에 환자의 이름이 나오지 않는다.
- Study Date and Time : 영상을 획득한 날짜와 시간
print(dcm_pydicom.StudyDate)
print(dcm_pydicom.StudyTime)
#20000101
#010608
- Modality : CT, MRI, 초음파와 같이 영상 촬영장비에 대한 정보
print(dcm_pydicom.Modality)
# CT
- Image Position and Orientation : 영상 획득 중 환자와 영상 장치의 위치 및 방향에 대한 정보
print(dcm_pydicom.ImagePositionPatient)
print(dcm_pydicom.ImageOrientationPatient)
# [-212.899994, -218.600006, -13.750000]
# [1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000]
- Image Type : 이미지 형태
print(dcm_pydicom.ImageType)
# ['ORIGINAL', 'PRIMARY', 'AXIAL']
- SOP Class UID : DICOM 개체 유형의 고유 식별자
print(dcm_pydicom.SOPClassUID)
# 1.2.840.10008.5.1.4.1.1.2
- Series Description : 영상에 대한 간단한 설명이 포함
print(dcm_pydicom.SeriesDescription)
# CHEST
이외에도 DICOM 태그는 다양하게 있으며, 사용 목적과 어플리케이션에 따라 원하는 태그를 살펴보면 된다.
'Python > 의료영상처리' 카테고리의 다른 글
[Python] nrrd 파일 읽고 시각화 하기 (0) | 2023.01.29 |
---|---|
[Python] mhd 파일 읽고 시각화 하기 (0) | 2023.01.29 |
[Python] nifti 파일 읽고 시각화하기 (0) | 2023.01.26 |
[Python] 민감도 (Sensitivity), 특이도(Specificity), 위양성률(False Positive Rate) (0) | 2022.08.30 |
[Python] SimpleITK - CT 영상 읽는법 (0) | 2022.08.30 |
댓글