这个错误是因为程序试图打开一个目录 (.ipynb_checkpoints
) 作为图像文件,导致 IsADirectoryError
。这个 .ipynb_checkpoints
文件夹通常是在使用 Jupyter Notebook 时自动创建的,用于保存笔记本的检查点。
可以在
代码中添加一个判断条件,跳过目录和不需要的文件。只处理实际的图像文件。
def __getitem__(self, idx):# 获取图像和分割图像的路径segment_path = self.segment_paths[idx]# 确保路径是文件,而不是目录if os.path.isdir(segment_path):raise ValueError(f"Expected a file but found a directory at path: {segment_path}")# 如果是图像文件,继续处理segment_image = keep_image_size_open(segment_path)# 其余代码...
确保当程序遇到 .ipynb_checkpoints
这样的文件夹时不会报错,而是跳过该目录继续处理其他文件。