【问题标题】:Trying to convert Dicom image files into png试图将 Dicom 图像文件转换为 png
【发布时间】:2020-07-28 23:25:53
【问题描述】:

您好,我有一个 dcm 文件文件夹,我想将其更改为 png 文件以放入 png 文件夹。这是我完成的代码:

dcm_folder= '/Users/riaroque/Desktop/DCM Pneumonia cases'
PNG_folder= '/Users/riaroque/Desktop/PNG folder'

os.makedirs(PNG_folder, exist_ok=True)
for dcm_file in os.listdir(dcm_folder):
    dcm_file_path = os.path.join(dcm_folder, dcm_file)
    png_file_path = os.path.join(PNG_folder, '%s.png' % dcm_file)
    try:
        convert_file(dcm_file_path, png_file_path)
        print (dcm_file_path, '-->', png_file_path)
    except:
        print ('FAIL>', dcm_file_path, '-->', png_file_path)

它给了我一个这个错误的列表

FAIL> /Users/riaroque/Desktop/DCM Pneumonia cases/UP0084.dcm --> /Users/riaroque/Desktop/PNG folder/UP0084.dcm.png

我可以从错误中看到它没有正确转换,最后有 .dcm.png, 如何删除 .dcm 并将其替换为 .png?

【问题讨论】:

    标签: python png medical medical-imaging


    【解决方案1】:

    替换以下行:

    png_file_path = os.path.join(PNG_folder, '%s.png' % dcm_file)
    

    与

    png_file_path = os.path.join(PNG_folder, dcm_file.replace('.dcm', '.png')
    

    这使用字符串的替换方法将“.dcm”更改为“.png”。

    它假定“.dcm”仅作为文件名末尾的后缀出现。如果字符串中出现较早的“.dcm”,则必须执行更复杂的操作。

    【讨论】:

    • 谢谢!我试着把它和你的代码放在一起(最后有一个额外的括号),但我仍然收到这个错误:FAIL> /Users/riaroque/Desktop/DCM Pneumonia cases/UP0084.dcm --> /Users/riaroque/Desktop/PNG folder/UP0084.png FAIL> /Users/riaroque/Desktop/DCM Pneumonia cases/UP0090.dcm --> /Users/riaroque/Desktop/PNG folder/UP0090.png
    • 我只是想问其中一个错误也有这个:FAIL> /Users/riaroque/Desktop/DCM Pneumonia cases/.DS_Store --> /Users/riaroque/Desktop/PNG folder/.DS_Store你认为这是导致一切失败的原因吗?
    • .DS_Store 显然不是 Dicom 图像。那是Mac OS放入的属性文件。显然你应该忽略那个文件。
    • 至于第一个失败,如果我不得不猜测,也许 convert_file 函数不喜欢其中有空格的路径名。操作系统通常不能正确处理它们。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-12-25
    • 2017-05-16
    • 1970-01-01
    • 1970-01-01
    • 2011-02-01
    • 2020-06-15
    • 2012-06-01
    相关资源
    最近更新 更多