python - 该系统找不到指定的路径:
问题描述
以下是我读取 dicom 文件的代码,但我在读取文件时遇到问题,任何帮助将不胜感激
<import cv2
import pydicom as dicom # for reading dicom files
import os # for doing directory operations
import pandas as pd # for some simple data
import matplotlib.pyplot as plt
import matplotlib.image as mpimage
import numpy as np
data_dir = r'D:\project\New folder\LungNoduleDetectionClassification-master'
patients = os.listdir(data_dir)
labels_df = pd.read_csv(r'D:\project\New folder\LungNoduleDetectionClassification-master\stage1_labels.csv', index_col=0)
labels_df.head()
import matplotlib.pyplot as plt
for patient in patients[:1]:
path = data_dir + patient
slices = [dicom.read_file(path + '/' + s) for s in os.listdir(path)]
slices.sort(key = lambda x: int(x.ImagePositionPatient[2]))
plt.imshow(slices[0].pixel_array)
plt.show()>
Error :-
---------------------------------------------------------------------------
FileNotFoundError Traceback (most recent call last)
<ipython-input-39-0cdfa4febaf1> in <module>
3 for patient in patients[:1]:
4 path = data_dir + patient
----> 5 slices = [dicom.read_file(path + '/' + s) for s in os.listdir(path)]
6 slices.sort(key = lambda x: int(x.ImagePositionPatient[2]))
7
FileNotFoundError: [WinError 3] The system cannot find the path specified: 'D:\\project\\New folder\\LungNoduleDetectionClassification-master1-001.dcm'
注意 1-001.dcm 是一个 dicom 文件
解决方案
您的目录名和文件名的组合有问题:
data_dir = r'D:\project\New folder\LungNoduleDetectionClassification-master'
patients = os.listdir(data_dir)
...
for patient in patients[:1]:
path = data_dir + patient
这意味着path
包含目录名和文件名,没有目录分隔符来分隔它们。
通常,您希望执行以下操作以确保正确组合两者:
path = os.path.join(data_dir, patient)
推荐阅读
- java - Java 小程序不能在 AdoptOpenJDK 中运行
- c - 如何使用 sscanf 读取一行带有 continue 逗号的 csv
- aframe - 如何在 A-Frame 中检测相机和球体的距离
- python - 如何将我的代码返回到代码的开头?
- php - PHP重置密码
- javascript - 如何从 async/await 函数正确返回结果?
- excel - 将项目列表分组为尽可能相等的数量
- python-3.x - python setuptools即使失败也返回退出代码0
- css - 当屏幕尺寸缩小时,如何让我的桌子保持一定的宽度?
- c++ - 如何修改 Disjktra 算法以在最短路径中至少有 X 个顶点或 K 个边