使用ffmpeg,realbasicVsr实现的一个视频快速超分系统(仅超分关键帧,并扩大非关键帧)
- 使用realBasicVSR 对关键帧超分辨率
- 使用ffmpeg对流媒体视频进行关键帧提取、重组、转码等操作
16.mov
先下载模型到 realbasicvsr_flask/checkpoints/
下
docker build -t sr -f ./Dockerfile ./
docker run --name sr -dit -p 5000:5000 sr
准备视频test.mp4
到 in/
下 && 在main.go中指定 inFile := "in/test.mp4"
在 sr/sr.go
中指定后端地址 http://localhost:5000/
$ go get
$ go run main.go
1.启动RealBasicVSR后端
$ cd flask_realbasicvsr
# install dependencies
$ conda install pytorch::pytorch torchvision torchaudio -c pytorch
$ pip install -r requirements.txt
$ mim install mmcv-full
# run backend
$ python inference_flask.py
2.运行超分处理
# 在项目root目录下
$ go get # 下载相关的依赖包
$ go run main.go # 运行项目
左:超分后(720p)
右:原视频(180p)
90p_fsr.mp4:超分前
90p_ksr.mp4:关键帧超分
90p_sr.mp4:全部帧超分
benchmark tool from videobench
@article{cao2021vsrt,
title={realbasic keyframe video super resolution},
author={Zuyun Xu},
year={2023}
}