파이썬으로 DICOM 이미지 처리
계기
 Kaggle 대회 에서 흉부의 CT 스캔 화상, DICOM 화상이 나와서 어떻게 취급하면 좋은지 몰랐기 때문에.
 무엇을 할 수 있을까
· DICOM 이미지 란 무엇입니까?
· DICOM 이미지 표시, 데이터 처리 방법
 DICOM 이미지란 무엇인가?
DICOM(다이콤)이란, CT나 MRI, CR등으로 촬영한 의료 화상의 포맷과, 그것들을 취급하는 의료 화상 기기간의 통신 프로토콜을 정의한 표준 규격이다.
 위키
 사용 예
설치
%pip install pydicom
dataset에는 메타데이터가 포함되어 있습니다.
import pydicom
import matplotlib.pyplot as plt
from pydicom.data import get_testdata_files
filename = get_testdata_files('CT_small.dcm')[0]
dataset = pydicom.dcmread(filename)
print(dataset)
 
값의 표시는 키명(.Rows)이나 번호(0x0010,0x0010)로 표시, 액세스 할 수 있다.
dataset[0x0010, 0x0010]
dataset.Rows
 
이미지 표시까지
pat_name = dataset.PatientName
display_name = pat_name.family_name + ", " + pat_name.given_name
print("Patient's name...:", display_name)
print("Patient id.......:", dataset.PatientID)
print("Modality.........:", dataset.Modality)
print("Study Date.......:", dataset.StudyDate)
print(dataset[0x0018, 0x0050])
if 'PixelData' in dataset:
    rows = int(dataset.Rows)
    cols = int(dataset.Columns)
    print("Image size.......: {rows:d} x {cols:d}, {size:d} bytes".format(
        rows=rows, cols=cols, size=len(dataset.PixelData)))
    if 'PixelSpacing' in dataset:
        print("Pixel spacing....:", dataset.PixelSpacing)
# use .get() if not sure the item exists, and want a default value if missing
print("Slice location...:", dataset.get('SliceLocation', "(missing)"))
# plot the image using matplotlib
plt.imshow(dataset.pixel_array, cmap=plt.cm.bone)
plt.show()
 
 참고
 pydicom
                
                    
        
    
    
    
    
    
                
                
                
                
                    
                        
                            
                            
                            Reference
                            
                            이 문제에 관하여(파이썬으로 DICOM 이미지 처리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
                                
                                https://qiita.com/asparagasu/items/f145675055796c69e228
                            
                            
                            
                                텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                            
                            
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)
                            
                            
                        
                    
                
                
                
            
· DICOM 이미지 란 무엇입니까?
· DICOM 이미지 표시, 데이터 처리 방법
DICOM 이미지란 무엇인가?
DICOM(다이콤)이란, CT나 MRI, CR등으로 촬영한 의료 화상의 포맷과, 그것들을 취급하는 의료 화상 기기간의 통신 프로토콜을 정의한 표준 규격이다.
 위키
 사용 예
설치
%pip install pydicom
dataset에는 메타데이터가 포함되어 있습니다.
import pydicom
import matplotlib.pyplot as plt
from pydicom.data import get_testdata_files
filename = get_testdata_files('CT_small.dcm')[0]
dataset = pydicom.dcmread(filename)
print(dataset)
 
값의 표시는 키명(.Rows)이나 번호(0x0010,0x0010)로 표시, 액세스 할 수 있다.
dataset[0x0010, 0x0010]
dataset.Rows
 
이미지 표시까지
pat_name = dataset.PatientName
display_name = pat_name.family_name + ", " + pat_name.given_name
print("Patient's name...:", display_name)
print("Patient id.......:", dataset.PatientID)
print("Modality.........:", dataset.Modality)
print("Study Date.......:", dataset.StudyDate)
print(dataset[0x0018, 0x0050])
if 'PixelData' in dataset:
    rows = int(dataset.Rows)
    cols = int(dataset.Columns)
    print("Image size.......: {rows:d} x {cols:d}, {size:d} bytes".format(
        rows=rows, cols=cols, size=len(dataset.PixelData)))
    if 'PixelSpacing' in dataset:
        print("Pixel spacing....:", dataset.PixelSpacing)
# use .get() if not sure the item exists, and want a default value if missing
print("Slice location...:", dataset.get('SliceLocation', "(missing)"))
# plot the image using matplotlib
plt.imshow(dataset.pixel_array, cmap=plt.cm.bone)
plt.show()
 
 참고
 pydicom
                
                    
        
    
    
    
    
    
                
                
                
                
                    
                        
                            
                            
                            Reference
                            
                            이 문제에 관하여(파이썬으로 DICOM 이미지 처리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
                                
                                https://qiita.com/asparagasu/items/f145675055796c69e228
                            
                            
                            
                                텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                            
                            
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)
                            
                            
                        
                    
                
                
                
            
설치
%pip install pydicom
dataset에는 메타데이터가 포함되어 있습니다.
import pydicom
import matplotlib.pyplot as plt
from pydicom.data import get_testdata_files
filename = get_testdata_files('CT_small.dcm')[0]
dataset = pydicom.dcmread(filename)
print(dataset)

값의 표시는 키명(.Rows)이나 번호(0x0010,0x0010)로 표시, 액세스 할 수 있다.
dataset[0x0010, 0x0010]
dataset.Rows

이미지 표시까지
pat_name = dataset.PatientName
display_name = pat_name.family_name + ", " + pat_name.given_name
print("Patient's name...:", display_name)
print("Patient id.......:", dataset.PatientID)
print("Modality.........:", dataset.Modality)
print("Study Date.......:", dataset.StudyDate)
print(dataset[0x0018, 0x0050])
if 'PixelData' in dataset:
    rows = int(dataset.Rows)
    cols = int(dataset.Columns)
    print("Image size.......: {rows:d} x {cols:d}, {size:d} bytes".format(
        rows=rows, cols=cols, size=len(dataset.PixelData)))
    if 'PixelSpacing' in dataset:
        print("Pixel spacing....:", dataset.PixelSpacing)
# use .get() if not sure the item exists, and want a default value if missing
print("Slice location...:", dataset.get('SliceLocation', "(missing)"))
# plot the image using matplotlib
plt.imshow(dataset.pixel_array, cmap=plt.cm.bone)
plt.show()

참고
 pydicom
                
                    
        
    
    
    
    
    
                
                
                
                
                    
                        
                            
                            
                            Reference
                            
                            이 문제에 관하여(파이썬으로 DICOM 이미지 처리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
                                
                                https://qiita.com/asparagasu/items/f145675055796c69e228
                            
                            
                            
                                텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                            
                            
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)
                            
                            
                        
                    
                
                
                
            
Reference
이 문제에 관하여(파이썬으로 DICOM 이미지 처리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/asparagasu/items/f145675055796c69e228텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)