【CANN训练营第三季】进阶班AI人脸属性编辑应用学习笔记①

一、前言

最近正在搞基于Atlas 200 DK的人工智能应用,逛华为云论坛的时候无意间看到了CANN训练营的帖子,正好才刚开始,决定来取一下经,正好补一下昇腾相关知识,我选择从进阶班——AI人脸属性编辑应用开始我的第一次CANN训练营之旅。

【CANN训练营 • 22年度第三季】年度收官之战,席卷大波福利向你走来!!!

二、概览与学习目标

课程概览上这样写道:对人脸属性特征进行编辑,实现发色调整、性别互换、年龄改变等特效,为用户生成多种特效照片,可应用在趣味社交、短视频等娱乐场景。看起来还挺有意思的。

学习目标:熟悉应用开发流程,掌握各开发步骤的关键知识点。了解图片数据处理的使用场景、基本概念。掌握典型场景下图片数据处理的接口调用流程,编排该功能的代码。掌握调试图片数据处理功能,具备基本问题定位能力。正好可以补一下视觉相关的知识。

三、人脸属性编辑

(1)StarGAN网络

本次案例我们将采用StarGAN网络来实现,输入的人头像图片的指定特征进行改变,实现改变头发颜色、性别互换等操作。

StarGAN 是 Yunjey Choi 等人于 17年11月 提出的一个模型。该模型可以实现图像的多域间的迁移。StarGAN 包含鉴别器D生成器G两个部分.鉴别器D学习去辨别真实图像和生成图像,以及对图像进行所属域的分类。生成器G接受图像和目标域标签,生成假的图像。

(2)环境要求

特别要注意兼容性问题,具体可以查看官方文档,这里我选择开发版固件与驱动版本1.0.13 +CANN版本5.1.RC1.alpha005+MindStudio5.0.RC1+MindSpore1.8的配置。

(3)样例速跑

我们可以从Ascend的Gitee仓中获取源码:

git clone https://gitee.com/ascend/samples.git

我们需要将模型文件转换成昇腾处理器支持的om格式,使用ATC转模型方法如下:

# 为了方便我们直接从网上下载StarGAN的模型,再将其转成om格式
cd $HOME/samples/cplusplus/level2_simple_inference/6_other/StarGAN/

wget https://share123.obs.cn-north-4.myhuaweicloud.com/AclBot/issue/starGAN/StarGAN.onnx
wget https://share123.obs.cn-north-4.myhuaweicloud.com/AclBot/issue/starGAN/aipp_nv12.cfg

atc --framework=5 --model=StarGAN.onnx --output=StarGAN_aipp --input_format=NCHW --input_shape="real_img:1,3,128,128;attr:1,5" --soc_version=Ascend310 --insert_op_conf=aipp_nv12.cfg

下载测试图片:

# 先在StarGAN文件中创建data文件夹以便存放数据
cd $HOME/samples/cplusplus/level2_simple_inference/6_other/StarGAN/data/
wget https://share123.obs.cn-north-4.myhuaweicloud.com/AclBot/issue/starGAN/000002.jpg

编译运行

# 编译
cd $HOME/samples/cplusplus/level2_simple_inference/6_other/StarGAN/scripts/
bash build.sh
# 运行
cd $HOME/samples/cplusplus/level2_simple_inference/6_other/StarGAN/out/
./main 0 1 0 0 1

0 1 0 0 1为自己输入的参数,代表想要的各种特征,可自行调整。

运行完成后我们可以在样例工程的out/目录下生成推理后的图片。至此,我们顺利的跑完了一个AI人脸属性编辑样例,期待不久之后的直播讲解课~

四、补充

在这里简单介绍一下华为AI的全栈解决方案。在算力方面,有Ascend310、Ascend910昇腾AI处理器,有ModelArts提供AI开发平台;在AI框架方面开源了昇思MindSpore,其作为全场景AI框架,支持将模型部署到端(手机与IOT设备)-边(基站与路由设备)-云(服务器);为了解决算力成本高、模型开发效率低的问题,华为专门设计了异构计算架构CANN;华为还提供了全流程开发工具(IDE)MindStudio。也就是说,整套AI开发下来,都有华为自己的产品,自家的技术。
【CANN训练营第三季】进阶班AI人脸属性编辑应用学习笔记①_第1张图片

你可能感兴趣的:(人工智能,图像处理)