LaMa-Dilated模型旨在通过扩张卷积技术实现高效的图像擦除和修复。该模型采用先进的卷积神经网络架构,能够处理复杂的图像输入,并填补图像中的缺失部分,使修复后的图像更加自然和逼真。LaMa-Dilated不仅在图像编辑领域表现出色,还在增强现实和其他需要高质量图像处理的应用中发挥重要作用。它支持多种设备和平台,包括智能手机和平板电脑,能够在这些设备上实现实时处理,提供用户友好的体验。通过扩张卷积技术,LaMa-Dilated能够捕捉更多的图像细节,确保修复后的图像质量不受影响。该模型的高效性和灵活性使其成为图像处理领域的创新解决方案,推动了技术的进步和应用的发展。总之,LaMa-Dilated通过其强大的图像修复能力,为用户提供了高质量的图像处理体验,广泛应用于各个行业,成为图像编辑和增强现实领域的重要工具。
本文章主要介绍如何使用LaMa-Dilated模型进行图像修复,如何配置QAI AppBuilder工具及环境。包括了准备需要处理的图像数据,加载LaMa-Dilated模型,运行示例代码进行图像处理,查看处理后的图像效果等步骤。通过这些步骤,可以更加熟悉地使用LaMa-Dilated模型并进行图像擦除和修复等工作。
前置条件
- 高通 Windows on Snapdragon
- 各平台账号,包括:Github、高通 Software Center
操作方法及步骤
1. 快捷使用lama_dilated图像修复应用
- LaMa-Dilated和AOTGAN对比
LaMa-Dilated和AOTGAN是两种不同的图像修复模型,它们在技术实现和应用场景上有显著区别。
LaMa-Dilated:
技术实现:LaMa-Dilated采用扩张卷积(Dilated Convolution)技术,通过在卷积核中引入空洞来增加感受野。这种方法能够在不增加参数量的情况下捕捉更多的上下文信息,从而提高图像修复的效果12。
应用场景:LaMa-Dilated主要用于高分辨率图像的修复和擦除,适用于需要高质量图像处理的应用,如图像编辑和增强现实。它能够在设备上实现实时处理,提供用户友好的体验1。
AOTGAN:
技术实现:AOTGAN(Attention-guided Generative Adversarial Network)采用生成对抗网络(GAN)架构,并结合注意力机制来进行图像修复。注意力机制能够帮助模型关注图像中的重要区域,从而生成更加自然和逼真的修复结果3。
应用场景:AOTGAN广泛应用于各种图像修复任务,包括去除图像中的遮挡物、修复损坏的图像和填补缺失部分。由于其生成对抗网络的特性,AOTGAN在处理复杂图像修复任务时表现出色3。
总的来说,LaMa-Dilated和AOTGAN在技术实现和应用场景上各有优势。LaMa-Dilated通过扩张卷积技术实现高效的图像修复,适用于高分辨率图像处理;而AOTGAN通过结合注意力机制和生成对抗网络,能够处理更复杂的图像修复任务,生成自然逼真的结果。
- 执行前准备
模型运行需要依赖Python及QNN环境,需要注意,最新版本的QNN SDK已经更名为Qualcomm® AI Runtime SDK,旧版本QNN SDK依旧可用。
确保在设备中已经搭建好对应的Python及QNN环境,具体方法请参考:QAI-AppBuilder快速上手及环境配置
- 打开Powershell终端,在Python虚拟环境中执行以下命令:
python lama_dilated\lama_dilated.py
输入图像:
mask图像数据是一种二值图像,其中白色区域表示需要修复的部分,黑色区域表示不需要修复的部分。模型通过这个 mask 图片来确定哪些区域需要进行填补和修复,从而生成完整的图像。
输出结果:
我们可以发现,LaMa-Dilated和AOTGAN除了通过不同的技术实现,输出的结果却基本相同,无明显差异。
2. 手动配置运行lama_dilated图像修复应用
- 环境准备
确保在设备中已经搭建好对应的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
- 从以下链接下载示例代码
lama_dilated.py
下载示例代码后,将其复制到工作目录根目录
- 将输入数据复制到工作目录根目录下
将输入数据图像和掩码图像下载并复制到工作目录根目录下:
input.png
mask.png
- 准备好所有目录文件后,整体目录结构如下:
运行脚本下载的模型会存放在models中 。
- 运行示例代码
python .\lama_dilated.py
- 运行结果
得到的输出图像最终保存为output.png
作者:
赵世朝(Shizhao Zhao),高通工程师