• 如何使用腾讯云GPU云服务器对图像或视频进行超分辨率


    当今时代,人们对与图像与视频的分辨率要求越来越高,但是一些之前的图片或视频资源的分辨率却是比较堪忧,所以这里我们将会使用腾讯云的GPU服务器来对图像与视频进行超分辨率处理,用于修复一些分辨率较低的图像或视频。

    一、服务器的选购与远程连接

    • 这里我们使用的服务器是腾讯云的GPU服务器配置是6核56G+一颗Nvidia Tesla P40显卡。系统镜像采用的是Windows Server2019 ,这款GPU服务器对于我们这次的超分辨率操作来说性能是绰绰有余。

    • 购买好服务器后我们会收到一封站内信,里面包含了登录服务器所需的基本信息。我们使用电脑自带的远程桌面工具连接上服务器。具体操作方法可以看这一篇文档:使用远程桌面连接登录 Windows 实例

    二、NVIDIA驱动的安装

    • 连接上服务器之后我们需要安装Nvidia的官方驱动以及NVIDIA GRID 驱动。驱动的安装可以看这几篇文档
    • 安装 NVIDIA Tesla 驱动
    • 安装 NVIDIA GRID 驱动
    • 当然,这边更建议使用已经安装好驱动的GN7vw 服务器,以免除繁琐的GRID驱动的安装过程 。

    三、超分辨率操作

    • 这里,我们使用的是B站的开源项目Real-CUGAN

    • 为了便新手操作,这里使用的是Windows-GUI版,在Github页面下载SAE.0.0.3.7z到服务器上,由于国内网络问题,可以使用一些Github加速工具。

    下载完成后得到这样的一个文件夹和一个bat文件。双击“启动SAE.bat”来启动SAE。

    解压缩后得到的文件

    • 设置好输入文件与输出文件夹后点击上面的超分设置

    • 下面来具体讲一下超分的一些设置:

    1. 超分算法:这里有三个超分算法,三者差别如下:

    引用自Github:https://github.com/bilibili/ailab/tree/main/Real-CUGAN

    这里我们使用B站的Real-CUGAN算法。当然你也可以自行尝试其他算法,适合自己的才是最好的。

    • 超分模型:超分模型这里提供了一共三种,分别是:
      1. 降噪版(Denoise):主要针对原片噪声多,画面中有特别明显的早点;
      2. 无降噪版(No-Denoise):如果原片噪声不多的视频,但是想提高分辨率/清晰度/做通用性的增强、修复处理,推荐使用;
      3. 保守版(conservative):如果担心丢失纹理,担心画风被改变,颜色被增强,总之就是各种担心AI会留下浓重的处理痕迹,推荐使用该版本。
    • 模型前面的up几x表示着这个模型会将视频放大几倍。我这里选择了up4x-latest-conservative.pth,也就是保守版放大四倍的版本。
    • 输出分辨率预设:输出分辨率预设,也就是输出的视频的分辨率。这好像没啥好讲的。。。
    • 切割快大小:这一项比较重要,在视频中的每一帧进行超分前,软件会将每一帧分割成好几块来惊醒处理,以节省GPU的显存。当显卡显存足够时,请选择无,也就是不对帧进行切割。当你的服务器或电脑显存不足,软件报显存不足的错误时,请根据你的显存大小选择合适的切割块大小。
    • 超分使用半精度:对于N卡来说,建议开启此选项,可以有效减少显存占用。

    开始超分辨率

    • 回到首页,根据自己的需求选择是否勾选输出图片序列选项(勾选上之后将会输出视频的每一帧)。然后点击一键压制即可开始超分辨率。这时我们可以来到输出页面来查看超分的详细信息。同时会有一个新的窗口实时显示超分的效果。

    • 打开任务管理器可以看到GPU的详细信息。

    超分后视频的压制

    • 超分完成之后软件会弹窗提醒。这时候我们就需要做一些后续处理。由于超分后的视频文件没有经过压缩,所以占用存储空间特别大,不方便我们传输。我们需要对其进行一下压制,这里我推荐使用ShanaEncoder对视频进行压制,当然你也可以使用ffmpeg等工具进行压制,全凭个人喜好。

    • 请自行在互联网上下载ShanaEncoder软件,然后打开,打开之后只需添加我们需要压制的文件,同时设置好输出路径即可。然后点击快速设置,来设置一下视频压制的一些参数。
    • 这里建议设置好视频的输出文件格式,一般用的比较多的就是mp4,编解码器建议选择H264,然后打开OpenGL加速,记得将OpenGL加速的显卡选择为你的独显。其他的设置默认即可。然后直接点击开始就可以了。

    压制完成之后我们可以看到视频文件体积减少了很多。这样的话我们就可以比较方便的传输了。

    关于大文件传输

    国内的云服务器带宽都是比较贵的,像我现在使用的GPU服务器也就只有5Mbps的外网带宽。我们想要将数据从服务器下载回自己的电脑上需要花费很长的时间。对于不想受低带宽之苦且又不想花大价钱去升级带宽的。我的建议时可以创建一个同地域的COS对象存储。然后服务器与COS之间走内网,将文件保存至COS之后从COS下载下来。这样我们只用花费一点COS的外网流量费用就可以快速的将文件取回了。

    总结

    • 使用GPU云服务器对视频进行超分辨率的操作就这些了,对图像进行超分的话就只需要将最初输入的视频改为图片就可以了。
    • 对于大规模的图像以及视频处理来说,自己的电脑性能总归会有些力不从心,这时候,使用GPU服务器就可以更高效得帮我们处理这些。
    • 由于本人学识尚浅,难免会有些疏漏,欢迎各位对我写的内容予以批评指正。同时,欢迎各位进行友好讨论。谢谢大家。

  • 相关阅读:
    MinGW-w64安装教程——著名C/C++编译器GCC的Windows版本
    四、伊森商城 前端基础-Vue 双向绑定&事件处理&安装插件 p22
    【蓝桥杯冲击国赛计划第4天】栈
    神经网络 深度神经网络,深度神经网络的深度
    前端react 18.2整合ckeditor富文本编辑器——配置插件、自定义toolbar工具栏
    Pytorch:张量的梯度计算
    Linux系统下如何使用NiMotionUSBCAN转换器?
    cocos creator 在网页中调试的时候直接代码调试方法
    R语言绘制韦布尔分布图和泊松(Poisson)分布图,并为二项分布(泊松分布)绘制不同颜色
    Android APP稳定性测试工具Fastbot
  • 原文地址:https://blog.csdn.net/java_zdc/article/details/127844800