刚接触深度学习,没有系统学过,就尝试自己研究把代码跑起来,但是其中遇到了很多坑,记录一下,也多亏师兄师姐的帮助才能够对每个问题深刻理解

 

1.在anaconda中安装包一直安装不上

程序一开始运行报错,提示如下

Traceback (most recent call last): File "test.py", line 3, in <module> import PIL.Image as Image File "E:\Anaconda\anaconda\envs\AOD\lib\site-packages\PIL\Image.py", line 103, in <module> from . import _imaging as core ImportError: DLL load failed: 找不到指定的模块。

推测是pillow安装有问题,但是这个后面再安装,先把pycharm里面标红的错误

import skimage.io as sio  未识别的库

这个问题先解决了 那就是安装scikit-image包

打开anaconda 激活环境,输入命令 conda install scikit-image 结果就是一直等待 半天安装不上

Collecting package metadata (current_repodata.json): done Solving environment: failed with initial frozen solve. Retrying with flexible solve. Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source. Collecting package metadata (repodata.json): done Solving environment: failed with initial frozen solve. Retrying with flexible solve.

等不及了 肯定是有问题的,最终解决方案:

使用 pip安装:pip install scikit-image 迅速解决了,但是上面的原因不知道为什么,我也采用了清华源安装conda的,但是一直安装不上,pip一下就成功了

2.识别不出pillow库

最开始报错的是

Traceback (most recent call last): File "test.py", line 3, in <module> import PIL.Image as Image File "E:\Anaconda\anaconda\envs\AOD\lib\site-packages\PIL\Image.py", line 103, in <module> from . import _imaging as core ImportError: DLL load failed: 找不到指定的模块。

显然pillow库有问题,但是我之前conda我记得重装过了,但还是没用,报错,很头疼。

解决: conda uninstall pillow 

然后 pip install pillow 就不报错了。原因也不清楚,但是就是有用

3.anaconda中提示gpu的cuda版本问题

在anaconda中输入执行指令,报错如下:

raise RuntimeError('Attempting to deserialize object on a CUDA ' RuntimeError: Attempting to deserialize object on a CUDA device but torch.cuda.is_available() is False. If you are running on a CPU-only machine, please use torch.load with map_location=torch.device('cpu') to map your storages to the CPU.

具体就是需要用合适的gpu对应的torch版本,采用师姐告诉我的好用的版本安装指令:

pip install torch==1.9.0+cu111 torchvision==0.10.0+cu111 torchaudio==0.9.0 -f https://download.pytorch.org/whl/torch_stable.html
也不知道为什么是这个版本,但是确实好用 问题不报错了

4.GitHub源码年代久远,部分函数失效

眼看临门一脚 但是执行又报错:

Traceback (most recent call last): File "test.py", line 43, in <module> scipy.misc.toimage(prediction).save(args.output_filename) AttributeError: module 'scipy.misc' has no attribute 'toimage'

没办法 问chatgpt吧,这次他倒是很管用:

看起来您遇到了scipy.misc模块中没有toimage属性的问题。这是因为在较新版本的SciPy中,toimage已经被移除了。

您可以尝试使用PIL库中的相关方法来保存图像。请尝试将以下行:

 
 

pythonCopy Code

scipy.misc.toimage(prediction).save(args.output_filename)

替换为:

 
 

pythonCopy Code

output_image = Image.fromarray((prediction * 255).astype(np.uint8)) output_image.save(args.output_filename)

通过使用PIL库中的Image.fromarray方法,您可以将NumPy数组转换为PIL图像对象,并且保存为图像文件。

另外,请确保您的代码中已经正确导入了NumPy和PIL库:

 
 

pythonCopy Code

import numpy as np from PIL import Image

希望这能解决您遇到的问题。如果您有其他疑问或者需要进一步协助,请随时告诉我。

这个原因就是源代码太早了 很多和现在不适配,自己跑需要微调

综上

第一次大部分独立解决问题跑通了深度学习代码,踩过的坑后面不能再踩,确实很曲折,但是后面会越来越好的

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐