💪 专业从事且热爱图像处理,图像处理专栏更新如下👇:
📝《图像去噪》
📝《超分辨率重建》
📝《语义分割》
📝《风格迁移》
📝《目标检测》
📝《暗光增强》
📝《模型优化》
📝《模型实战部署》
目录
- 一、AnimeSR
- 二、源码包准备
- 三、测试环境准备
- 四、测试
- 4.1 单帧图像测试
- 4.1.1 测试集准备
- 4.1.2 启动测试
- 4.1.3 测试结果
- 4.2 视频测试
- 4.2.1 视频准备
- 4.2.2 启动测试
- 4.2.3 测试结果
- 五、超分效果
- 5.1 单帧图像测试效果
- 5.2 视频测试效果
- 六、总结
一、AnimeSR
论文AnimeSR: Learning Real-World Super-Resolution Models for Animation Videos,一种专门为动画视频设计的超分辨率(SR)方法。AnimeSR通过专注于保留艺术风格和处理真实世界退化,成功解决了动画视频超分辨率中的独特挑战。该方法为动漫SR设定了新的标准,提供了一个能够在提升动画内容质量的同时保持其原始艺术意图的强大工具。
二、源码包准备
官网源码地址:AnimeSR
论文地址:paper
教程配套源码包,提供了部分测试集图像、视频和预训练模型权重文件,获取方法文章末扫码到公众号「视觉研坊」中回复关键字:视频超分辨率重建AnimeSR。获取下载链接。
下载解压后的源码包见下:
三、测试环境准备
在测试之前需要安装animeSR源码包,安装方法为在工程文件路径中输入cmd直接调转到终端,输入下面命令安装:
python setup.py develop
其它缺的包根据提示自行安装,下面是我测试环境中各个包及对应版本,仅供参考,其它版本也行。
四、测试
4.1 单帧图像测试
4.1.1 测试集准备
先准备好测试图像,放到根目录下的inputs文件夹中,如下:
注:测试集中所有单帧图像的尺寸必须一致。
4.1.2 启动测试
在终端输入下面命令测试:
python scripts/inference_animesr_frames.py -i inputs/tom_and_jerry -n AnimeSR_v2 --expname animesr_v2 --save_video_too --fps 20
下面是上面命令中各个参数解析:
-i --input 输入帧文件夹路径。支持一级目录(即input/*.png)和二级目录(即input/*/*.png)
-n --model_name AnimeSR模型名称。默认值:AnimeSR_v2,也可以是AnimeSR_v1-PaperModel
-s --outscale 网络超分倍数是x4,但你可以通过参数outscale实现任意的超分倍数(例如,x2或x1)。该程序将在AnimeSR输出后进一步执行廉价的调整大小操作。默认值:4
-o --output 测试结果保存路径。
-expname 测试结果保存的文件夹名称。输出将保存在$output/$expname中
-save_video_too 将输出帧保存为视频。默认值:True
-fps 保存的视频的fps。默认值:24
4.1.3 测试结果
测试结果将输出保存到根目录下的results文件夹中,见下:
4.2 视频测试
4.2.1 视频准备
待测试视频同样放到根目录下的inputs文件夹中,见下:
4.2.2 启动测试
在终端中输入下面命令进行视频超分测试:
python scripts/inference_animesr_video.py -i inputs/Video/TheMonkeyKing1965.mp4 -n AnimeSR_v2 -s 4 --expname animesr_v2 --num_process_per_gpu 1 --suffix 1gpu1process
参数解析:
-i --input: 输入视频路径或提取的帧文件夹。
-n --model_name: AnimeSR模型名称。默认值为AnimeSR_v2,也可以是AnimeSR_v1-PaperModel。
-s --outscale: 网络的放大倍数为4x,可以通过参数outscale实现任意的输出缩放比例(例如,2x或1x)。默认值为4。
-o --output: 输出根目录。默认值为results。
-expname: 测试结果保存的文件夹名称。输出将保存在$output/$expname中。
-fps: 保存视频的帧率。默认值为None。
-extract_frame_first: 如果输入是视频,仍然可以先提取帧,否则AnimeSR将直接从流中读取。
-num_process_per_gpu: 由于较慢的I/O速度会导致GPU利用率不够高,只要显存足够,建议在一块GPU上运行多个进程以提高每块GPU的利用率。总进程数将为number_process_per_gpu * num_gpu。
-suffix: 可以为超分辨率生成的视频名称添加一个后缀字符串,例如1gpu3processx2,表示该超分辨率视频是使用一个GPU和三个进程生成的,输出缩放比例为2x。
-half: 使用半精度进行推理,对视觉效果不会有太大影响。
4.2.3 测试结果
测试结果输出保存到根目录下的results文件夹中:
五、超分效果
5.1 单帧图像测试效果
下面挑选视频中某几帧,左图为原图,右图为超分4倍结果,模型为AnimeSR_v2。
下面挑选了几张可见光中常用的超分测试集,左侧为原图基础上bicubic;中间图为模型AnimeSR_v1-PaperModel超分4倍结果;右侧图为原图。
5.2 视频测试效果
视频测试效果我会放到其它平台,等待后续更新!
六、总结
从我自己的测试效果来看,对于动漫图像效果挺好的,可见光图像效果不理想,是因为该网络模型时针对动漫动画设计的,模型的训练样本都是矢量图,而可见光图像一般都为像素值图像。
此网络的训练方法参考官网文档:AnimeSR训练
感谢您阅读到最后!😊总结不易,多多支持呀🌹 点赞👍收藏⭐评论✍️,您的三连是我持续更新的动力💖
关注公众号「视觉研坊」,获取干货教程、实战案例、技术解答、行业资讯!