1

私は、DICOM ファイル (.dcm) である肺 CT 画像を含む LIDC-IDRI データセットを使用するプロジェクトに取り組んでいます。データはフォルダーに編成され、各フォルダーには 1 つのスキャンの画像があります。最初の 3 つのスキャン フォルダー システムとその他は同じ原則に従います (画像は各スキャンの最後のフォルダーにあります)。

first scan:  LIDC-IDRI\LIDC-IDRI-0001\01-01-2000-30178\3000566-03192
second scan: LIDC-IDRI\LIDC-IDRI-0002\01-01-2000-98329\3000522-04919
third scan:  LIDC-IDRI\LIDC-IDRI-0003\01-01-2000-94866\3000611-03264

私の質問は、このフォルダー システム内の画像を読み取る方法ですか? 1つのフォルダーだけでなく、すべてのフォルダーを意味しますか? 画像を読み取るために以下のコードを使用しました

import numpy as np
import pydicom
import os
import matplotlib.pyplot as plt

data_path = 'E:/LIDC-IDRI/'
patients_data = os.listdir(data_path)
patients_data.sort()

def load_scan(path):
    slices = [pydicom.read_file(path + '/' + s) for s in os.listdir(path)]

    return slices

full_path = load_scan(data_path + patients_data[0])

実行すると、次のエラーが表示されます。

ここに画像の説明を入力

しかし、以下のようにフォルダーシステムを変更すると:(スキャンごとに最後の2つのフォルダーを削除します):

first scan:  LIDC-IDRI\LIDC-IDRI-0001\
second scan: LIDC-IDRI\LIDC-IDRI-0002\
third scan:  LIDC-IDRI\LIDC-IDRI-0003\

エラーなしで動作します。これを解決する方法を誰か教えてもらえますか?

4

1 に答える 1