QAI AppBuilder介绍系列(4):图像超分应用实例2

Saved Section

Real-ESRGAN-General-x4v3 Real-ESRGAN-x4plus 都是图像超分辨率模型,但它们在优化目标和应用场景上有所不同。Real-ESRGAN-General-x4v3 主要针对移动设备进行了优化,采用了 RRDB 结构和 U-Net 判别器,能够生成更接近真实的低质图像,适合一般应用。而 Real-ESRGAN-x4plus 则是一个更大、更强的版本,适用于需要更高性能和更高质量图像的场景,如高端设备和专业图像处理。总的来说,前者更适合移动设备,后者适合高性能需求。

本文章主要介绍使用 Real-ESRGAN-General-x4v3 模型进行图像超分,如何配置QAI AppBuilder工具及环境。包括了准备需要处理的图像数据,加载预训练的 Real-ESRGAN-General-x4v3模型,运行示例代码进行图像超分处理,查看处理后的图像效果等步骤。通过这些步骤,可以更加熟悉地使用 Real-ESRGAN-General-x4v3模型并进行图像超分工作

前置条件

  • 高通 Windows on Snapdragon
  • 各平台账号,包括:Github、高通 Software Center

操作方法及步骤

1. 捷使用real_esrgan_general_x4v3

  • 执行前准备

确保在设备中已经搭建好对应的PythonQNN环境,具体方法请参考:QAI-AppBuilder快速上手及环境配置

  • 打开Powershell终端,在Python虚拟环境中执行以下命令:

python real_esrgan_general_x4v3\real_esrgan_general_x4v3.py

本次使用的real_esrgan_general_x4v3模型的大小只有4.46M,相比real_esrgan_x4plus小了很多

输出图像:

  • real_esrgan_x4plus模型输出图像的细节对比:

左图为real_esrgan_x4plus模型处理图像,右图为real_esrgan_general_x4v3模型的处理图像。不难看出左边的细节纹理更加清晰。

2. 手动配置运行real_esrgan_general_x4v3模型

  • 环境准备

确保在设备中已经搭建好对应的Python及QNN环境,具体方法请参考:QAI-AppBuilder快速上手及环境配置

  • 将安装好的QNN SDK 中的 QNN 库复制到qai_libs目录中

qai_libs\libQnnHtpV73Skel.so
qai_libs\QnnHtp.dll
qai_libs\QnnHtpV73Stub.dll
qai_libs\QnnSystem.dll
qai_libs\libqnnhtpv73.cat

  • 从以下链接下载示例代码

real_esrgan_general_x4v3.py

下载示例代码后,将其复制到工作目录根目录

  • 将输入数据复制到工作目录根目录下

准备好所有目录文件后,整体目录结构如下:

所有目录需要提前创建,input.jpg需要在运行脚本前放入real_esrgan_general_x4v3目录中。

  • 运行示例代码

python .\real_esrgan_general_x4v3.py

运行脚本后,下载的模型会存放在“real_esrgan_general_x4v3\models”

  • 运行结果(输出图像将保存为out.jpg

作者:

赵世朝(Shizhao Zhao),高通工程师