在运行这个项目的时候真的遇到了很多问题,先是安装依赖时的问题,再到后面的读取图片方式不一样,再加上视频读取问题,现在整理一下,方便后面再次运行
1.首先拉项目的基本步骤:(1)创新的虚拟环境;(2)装torch全家桶(3)拉项目(4)安装依赖
首先第一个问题出现在安装依赖上面,安装BasicSR时一直报错说找不到__version__参数,所以我去拉了BasicSR的源项目,看了对应的源码,basicsr/version.py这个文件是存在的,并且其中存在__version__参数,好了不是version.py的问题,找下一个,看setup.py里的逻辑对不对以及变量传参是否正确,检查之后,完全没有问题。。。
由于问题是出在main函数中调用get_version()函数这一步的,所以我直接修改了这个函数的返回值为对应版本号(字符串形式),好了一切运行正常。。。安装命令:pip install -e .
2.安装好BasicSR后接着把其他的以来都安装好就可以进行下一步了,从项目的简介中可以看出,我们要先下载权重文件才能开始训练,具体链接上面给了,也可以直接与逆行wget https://github.com/xinntao/Real-ESRGAN/releases/download/v0.1.0/RealESRGAN_x4plus.pth -P weights 把拉下来,注意这个拉下来是一个文件,原本项目里面有过这个文件了,删掉一个就好
3.运行项目:python inference_realesrgan.py -n RealESRGAN_x4plus -i inputs --face_enhance 好了这个时候第二个问题出现了,KeyError: '__version__'(在这之前忘记运行python setup.py develop 这个了,所以报错说找不到realesrgan.version)
相似的报错,一样的处理方案:找到setup.py直接改源码,好了这个解决了,新的问题是:ValueError: operands could not be broadcast together with shapes (1404,2000,1) (1404,2000) 对于这个问题github的讨论区里面有讲到,可以去翻翻,总结下来就是,图片格式不同,对应的处理图片方式也不同,删掉png或者jpg图片就行,视屏也删掉,好了问题解决,重新运行一下python inference_realesrgan.py -n RealESRGAN_x4plus -i inputs --face_enhance就可以了,最终结果在result中。