关于人工智能:用-RealESRGAN-拯救座机画质自制高清版动漫资源

11次阅读

共计 2549 个字符,预计需要花费 7 分钟才能阅读完成。

内容一览:Real-ESRGAN 是 ESRGAN 降级之作,次要有三点翻新:提出高阶进化过程模仿理论图像进化,应用光谱归一化 U-Net
鉴别器减少鉴别器的能力,以及应用纯合成数据进行训练。关键词:Real-ESRGAN 超分辨率 视频修复
本文首发自微信公众号:HyperAI 超神经

相比于现在画面低劣精美的新番,老动漫因时代的技术和设施限度,画质较差、分辨率低。但那些内容优质、童年经典的老动漫还是会被观众拿进去重复观看、「盘出包浆」。

每每经典的动漫视频被 4K 修复,在视频网站上的观看量都居高不下,高画质加上经典的内容足以让「双厨狂喜」。

B 站上的 4K 修复视频极受欢迎

本期教程介绍如何用 Real-ESRGAN 对动漫视频进行超分优化,修复视频画质。教程可用云平台 OpenBayes 运行,对设施配置没有依赖, 轻松享受 1080P 视频带来的高兴。

Real-ESRGAN:爱二次元的盲超分模型

传统动画制作时,动画师先手绘制作每一幅画面,再用摄像设施拍摄画面,将其扫描到计算机中进行数字化解决。拍摄设施的好坏、上传动画到视频平台的压缩及不可预测的乐音等简单因素, 会影响到动画的图像成果。

真实世界中引起图像进化的起因非常复杂,这使得非盲的超分算法,如 ESRGAN,复原图像的成果并不好。所以须要用盲超分 (Blind Super-Resolution) 为未知进化类型的低分辨率图像进行超分加强。

盲超分次要分为显式建模 (Explicit Modelling) 和隐式建模 (Implicit Modelling) 两类办法。

显式建模

将含糊核与噪声信息进行参数化,通过先验常识预计图像的进化过程,包含噪声、含糊、下采样和压缩。但简略地组合几种进化并不能很好地拟合事实世界的图像进化。

### 隐式建模
不依赖于任何显式参数,它利用额定的数据通过数据分布,隐式的学习潜在超分模型。

Real-ESRGAN 的作者将显式建模称为一阶建模。一阶的进化建模难以拟合简单的进化,作者提出了一种高阶进化模型 (High-order Degradation Model)。 该模型中,n 阶模型蕴含 n 个反复的进化过程,每个过程都遵循经典模型:

x = Dn(y) = (Dn ◦ · · · ◦ D2 ◦ D1)(y)

论文中作者应用的是二阶进化过程,这既放弃了简略性,又解决大多数理论问题。

Real-ESRGAN 齐全应用合成数据训练。 在生成高清和低清数据对时,模型对输出的图像进行 4 倍下采样(subsampled 或称放大图像)之外,还持续进行 1 倍或 2 倍的下采样操作。

Real-ESRGAN 应用和 ESRGAN 完全一致的构造

为减小计算量,作者创新性地提出了 Pixel Unshuffle 操作, 令输出分辨率减小、通道减少。

在生成高清和低清的数据对时,论文应用含糊的 kernel 做卷积,之后对图像下采样 r 倍,加上噪声,最初做 jpeg 压缩。这些操作模拟了现实生活中图像在流传过程中屡次压缩的状况。

Real-ESRGAN 采纳多种图像进化办法

与 ESRGAN 相比,Real-ESRGAN 解决含糊图像的成果更佳,并在 2021 年 ICCV AIM 上取得荣誉论文提名奖。

代码详见

论文链接

## Real-ESRGAN 实操:让陈年老番变清晰

本教程将演示在 OpenBayes 上,用 Real-ESRGAN 算法实现图像增强,把老动画视频变清晰。

残缺教程

第 1 步 环境筹备

# !git clone https://github.com/xinntao/Real-ESRGAN.git
%cd Real-ESRGAN
!pip install basicsr
!pip install facexlib
!pip install gfpgan
!pip install ffmpeg-python
!pip install -r requirements.txt
!python setup.py develop

第 2 步 推理

# ! python inference_realesrgan_video.py -i inputs/video/onepiece_demo.mp4 -n RealESRGANv2-animevideo-xsx2 -s 4 -v -a --half --suffix outx2
! python inference_realesrgan_video.py -i /openbayes/home/results.mp4 -n RealESRGANv2-animevideo-xsx2 -s 4 -v --half --suffix outtsx2
# 参数
# -i, --input: 输出视频
# -n, --model_name: 应用的模型名字
# -s, --outscale: 放大尺度
# -v, --video: 将加强的帧转换回视频中
# -a, --audio: 将输出的音频复制到加强的视频中
# --half: 推理半精度
# -suffix: 输入视频的后缀

第 3 步 可视化

from IPython.display import HTML
from base64 import b64encode
 
def show_video(video_path, video_width = 600):
   
  video_file = open(video_path, "r+b").read()
 
  video_url = f"data:video/mp4;base64,{b64encode(video_file).decode()}"
  return HTML(f"""<video width={video_width} controls><source src="{video_url}"></video>""")

# 输出视频
show_video('inputs/video/onepiece_demo.mp4')
# 加强后的视频
show_video('results/onepiece_demo_outx2.mp4')

残缺教程

具体解决成果及教程的视频解说,点击查看

以上就是本期教程的全部内容,心动不如口头,你童年的梦中情番是什么?快克隆 OpenBayes 上的「Real-ESRGAN 动漫视频的超分辨率」教程,自制清晰视频吧~

注:高清自制内容仅可供集体学习应用

参考链接:
https://zhuanlan.zhihu.com/p/431612275
https://zhuanlan.zhihu.com/p/558893171

—— 完 ——

正文完
 0