背景
尝试了OpenCV的几种超分辨率的算法之后,总感觉效果不尽人意,于是乎在网上翻箱倒柜的找其他超分算法,最终找到了这个,第一眼感觉效果惊艳,跑了下demo,内存吃的也是相当猛。下面是官方的demo截图。
安装
可以从GitHub - ckkelvinchan/RealBasicVSR: Official repository of "Investigating Tradeoffs in Real-World Video Super-Resolution"获取源码和安装方式,他是基于pytorch的,按照他的安装步骤一般没什么大问题
使用
如果你不想编写任何代码直接转图的话,可以使用如下命令
python inference_realbasicvsr.py configs/realbasicvsr_x4.py checkpoints/RealBasicVSR_x4.pth data/demo_000 results/demo_000
checkpoints/RealBasicVSR_x4.pth
需要自行下载,放到checkpoints目录下(Dropbox / Google Drive / OneDrive)
data/demo_000
下放一张图片,多张的话需要尺寸一致,否则会报错
输出会在results/demo_000
目录下
同时他也支持视频转换,命令行是
python inference_realbasicvsr.py configs/realbasicvsr_x4.py checkpoints/RealBasicVSR_x4.pth data/demo_001.mp4 results/demo_001.mp4 --fps=12.5
不过我不建议你直接转视频,10秒的视频我32G内存都没有扛过去,只能说优化空间巨大
对于渣显卡的友善提醒
显存小于6G的就不要使用GPU加速了,转一张900x900的图峰值内存占用能到7个多G,可以在inference_realbasicvsr.py
中注释掉使用GPU的代码
cuda_flag = False# if torch.cuda.is_available():# model = model.cuda()# cuda_flag = True原文:https://juejin.cn/post/7101648291296706597