dicom ファイルのタグ情報を読み込む python

dicom ファイルのタグにはいろいろな情報が記録されています。
それを読み込みます。


import pydicom

class Dicom:

    def getDicomInfo( self, fileN ): 

        ds = pydicom.read_file( fileN )
        studyID = ds[0x0020, 0x0010].value
        studyDate = ds[0x0008, 0x0020].value
        studyTime = ds[0x0008, 0x0030].value
        modality = ds[0x0008, 0x0060].value
        try: 
            studyDscr = ds[0x0008, 0x1030].value 
        except:
            studyDscr = ''  
        ptName = str(ds[0x0010, 0x0010].value).replace('^', ' ')
        karteNo = ds[0x0010, 0x0020].value
        sex = ds[0x0010, 0x0040].value
        birthday = ds[0x0010, 0x0030].value
        age = ds[0x0010, 0x1010].value
        institution = ds[0x0008, 0x0080].value                          
        infoArr = [ studyID, studyDate, studyTime, modality, studyDscr, ptName, karteNo, birthday, sex, age, institution ] 
        return infoArr

if __name__ == "__main__":
    dcm = Dicom()
    infos = dcm.getDicomInfo( '/var/www/html/sample.dcm' )
    print(infos)

結果は、


['6587', '20171201', '084428', 'CT', 'Abdomen', 'HENO MOHENO', '21702284', '19290116', 'F', '088Y', 'SOME HP']

解説

studyDscr については何も書かれていないものがあるので例外処理をしました。

また、氏名は「HENO^^MOHNEO^^」みたいに「^」が付いているのでそれを削除しています。