如何修复此工具中的错误“FileNotFoundError:[Errno 2]没有这样的文件或目录”?

问题描述 投票:0回答:1

我安装了这个工具的所有要求,并且也运行了它,但是一旦我单击

Open Exam...
并为其提供dicom文件的路径,然后当我单击
Calculate Volume
几秒钟后,程序就会关闭在 CMD 中我看到这个错误:

C:\Users\Lenovo\Downloads\HARTA-main>C:\Users\Lenovo\Downloads\HARTA-main\harta.py
Traceback (most recent call last):
  File "C:\Users\Lenovo\Downloads\HARTA-main\harta.py", line 486, in generateVolume
    patient_id, no_slices, vol = _automatic_.segmentEpicardialFat(DICOM_DATASET=dir, OUTPUT_FOLDER='aux_img/')
  File "C:\Users\Lenovo\Downloads\HARTA-main\_automatic_.py", line 61, in segmentEpicardialFat
    images_png = np.stack([convert_image_to_rgb(dicom, f'slices/{patient_id}_{i}', OUTPUT_FOLDER) for dicom, i in zip(median, range(0,no_slices))])
  File "C:\Users\Lenovo\Downloads\HARTA-main\_automatic_.py", line 61, in <listcomp>
    images_png = np.stack([convert_image_to_rgb(dicom, f'slices/{patient_id}_{i}', OUTPUT_FOLDER) for dicom, i in zip(median, range(0,no_slices))])
  File "C:\Users\Lenovo\Downloads\HARTA-main\algorithm\basicOperations.py", line 9, in convert_image_to_rgb
    plt.imsave(f'{output_folder}{filename}.png', image, cmap='gray')
  File "C:\Users\Lenovo\AppData\Local\Programs\Python\Python38\lib\site-packages\matplotlib\pyplot.py", line 2251, in imsave
    return matplotlib.image.imsave(fname, arr, **kwargs)
  File "C:\Users\Lenovo\AppData\Local\Programs\Python\Python38\lib\site-packages\matplotlib\image.py", line 1611, in imsave
    image.save(fname, **pil_kwargs)
  File "C:\Users\Lenovo\AppData\Local\Programs\Python\Python38\lib\site-packages\PIL\Image.py", line 2161, in save
    fp = builtins.open(filename, "w+b")
FileNotFoundError: [Errno 2] No such file or directory: 'aux_img/slices/21227013_0.png'

错误显示

No such file or directory: 'aux_img/slices/21227013_0.png'
,这是第 486 行及其下面的一些行:

    def generateVolume(self):
        global patient_id
        global no_slices
        patient_id, no_slices, vol = _automatic_.segmentEpicardialFat(DICOM_DATASET=dir, OUTPUT_FOLDER='aux_img/')
        self.volume.setText(str(round(vol, 1)))
        self.refreshAfterAutomatic()

    def generateNewVolume(self):
        patient_id, no_slices, vol = _semiautomatic_.segmentEpicardialFat(DICOM_DATASET=dir, OUTPUT_FOLDER='aux_img/')
        self.volume_2.setText(str(round(vol, 1)))
        self.refreshAfterSemiAutomatic()

    'INTERFACE MANAGER'

    def updateImage(self, slice_id):
        "Show container"
        self.manual_intervention.show()
        self.semiLabel.show()
        self.afterEditionBox.hide()
        self.slice_id = slice_id
        self.editionHandler()

        'Show the image with new contour'
        self.imageHeart.setPixmap(QtGui.QPixmap(':/aux/edited_successfully_bg.png'))

并且这个是文件的链接。

你能告诉我如何解决这个问题吗?

python path
1个回答
0
投票

我不是100%确定,但可能是

self.imageHeart.setPixmap(QtGui.QPixmap(':/aux/edited_successfully_bg.png'))

中缺少C

尝试

self.imageHeart.setPixmap(QtGui.QPixmap('C:/aux/edited_successfully_bg.png'))

如果这不起作用,请告诉我,我会尽力提供帮助。

© www.soinside.com 2019 - 2024. All rights reserved.