基于ESRGAN的实现,使用RRDBNet实现VapourSynth GAN

vsgan的Python项目详细描述


VSGAN公司

GitHub licenseCodeFactorGitHub issues

:第页朝上:简介

这是VapourSynth的单图像超分辨率生成对抗性网络处理程序。 由于VapourSynth将从视频中获取帧,并将其馈送给VSGAN,因此它本质上是一个单视频超分辨率gan。 它是ESRGAN by xinntao的直接端口,所以所有的结果、成就,以及ESRGAN所做的,VSGAN也会做。在

在正确的图像上使用正确的预训练模型可以产生巨大的效果。
这是一个来自美国地区1(NTSC)DVD的美国爸爸运行VSGAN(型号非公开)的例子 Example 1

:camera:与其他超分辨率策略的定性比较

以下比较取自ESRGAN's repoqualitive1qualitive2qualitive3qualitive4

安装

请按图示顺序安装以下部件。在

1。蒸汽发生器

注意:VapourSynth必须在VSGAN之前安装。可从pip安装的包/pypi.org网站是Python的函数包装器,仍然需要预先安装VapourSynth。[1]

官方安装说明可用于:

WindowsLinuxMac OS X

2。mvsfunc公司

Mvsfunc通常默认安装。在

不知怎么没有安装?在

Windows:

从命令提示符中:

  1. 运行where vsrepo.py并复制的完整路径虚拟存储库.py在
  2. 运行python "C:/path/to/vsrepo.py" install mvsfunc(在路径两边加引号)

Linux:

您很可能可以在发行版的包管理器中找到它。在

3。(可选,推荐)NVIDIA CUDA

如果您计划将VSGAN与NVIDIA GPU一起用作设备而不是CPU(例如,与torch设备字符串:01cuda)一起使用,则必须安装NVIDIA CUDA,torch才能这样做。在

在CPU上使用VSGAN将严重影响您的系统(很可能甚至是无法使用的数量!)并将花费forever来完成一个帧。我总是建议VSGAN的用户在gtx1050或更好的版本上使用带有CUDA的NVIDIA GPU。与CPU相比,使用GPU有多快?一个CPU可能需要几分钟来完成一个720x480帧x4的缩放,而一个GPU可能需要大约半秒钟的时间(在我的GTX1080ti上)。在

不同的操作系统安装方式有很多种。搜索(DuckDuckGoGoogle)如何安装它。在

4。VSGAN公司

通过PyPI使用PIP(推荐)

在terminal/cmd中运行pip install vsgan。在

离线使用PIP

注意:此方法没有自动更新或更新通知。您可能正在安装尚未测试为稳定的代码,尚未达到实际更新版本,这意味着您将使用最新的可能不稳定的代码。

git clone https://github.com/rlaPHOENiX/VSGAN.git && cd vsgan
pip install .

如果您没有git也不希望,您还可以下载master.zip,将其解压缩,通过cdpip install .打开一个命令提示符到该文件夹中

使用

简单的例子

^{pr2}$

定义

VSGAN(device=[int/string])

为提供的设备使用VSGAN创建PyTorch设备实例

  • device可以是字符串或int,可接受的值为“cpu”、“cuda”和设备标识号(例如0、1),如果可用,默认值为“cuda”,否则将使用“cpu”

在VSGAN.load_模型(model=[string],scale=[int],旧架构=[bool])

将模型加载到VSGAN设备实例中

  • model必须是指向.pth模型的路径。如果路径有疯狂的字符,如反斜杠(\),请使用r''
  • scale必须是int>;0,并且必须与训练它的模型匹配
  • old_arch仅当模型不适用于当前架构或是1x比例模型时才应使用

在VSGAN.run(clip=夹子,chunk=[bool])

此函数接受提供的剪辑,并在处理帧时运行VSGAN.execute()上的每个帧。在

  • chunk如果您的系统内存不足,请尝试启用分块,因为它会将图像分割成更小的子图像,然后逐个渲染,最后将它们合并在一起。以速度和准确性交换内存需求。警告:由于图像将被单独处理,结果可能在块的边缘有问题,an example of this issue

仅供内部使用

在VSGAN.execute公司(n=[int],clip=clip]

从clip对n帧执行GAN模型。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
尝试连接到Red5服务器时出现java问题   java实现Runnable的类被认为是ExecutorServices的“Runnable任务”?   java struts2类中的多个@validation   java未能应用插件[class'org.gradle.api.plugins.scala.ScalaBasePlugin']:gradle v2。13   如何使用Java流仅收集长度最大的元素?   从spring引导应用程序连接到firestore的java引发空指针异常   java从SQLite插入和获取真实数据类型会为连续插入获取空值吗?   当存在未知数量的空格时,使用java替代正向查找   部署如何为当今的浏览器部署java小程序(小程序、嵌入、对象)?   @OneToMany和@ManyToOne@Formula之间的java双向关系返回null   java为什么在我的例子中,协议缓冲区的性能比JSON差?   如何部署混合C++/Java(JNI)应用程序?   java如何在程序中显示字符串的完整信息。反恐精英?   java在Hibernate中从持久性上下文中分离实体中的实体