带你体验给黑白照片上色的感觉「带你体验给黑白照片上色」

本文分享自华为云社区《【MindStudio体验官第一期活动】基于MindX SDK在Ascend 310上的黑白图像上色初体验随笔-云社区-华为云》,作者:Tianyi_Li。
前言在智能手机越来越普及的今天,拍摄一张色彩鲜艳、清晰的照片轻而易举 。但是老照片没有如此“幸运”,大多为黑白 。借助人工智能技术,可以一定程度上帮助老照片还原原来色彩 。还记得之前火热的“老北京视频上色”吗?就是采用类似的技术啊 。
这次介绍的是黑白图像上色应用,旨在华为自研的Ascend 310推理芯片上实现输入黑白图像 , 自动对黑白图像进行上色,还原彩色图像 。
该应用案例整体流程如下图所示:

带你体验给黑白照片上色的感觉「带你体验给黑白照片上色」

文章插图
简单来说分为以下部分:
图像前处理:将输入的黑白图像通过OpenCV转换为Lab图,并抽取其中的L通道进行前处理;Colorization模型推理:将处理后的L通道传入模型进行推理,获得预测结果的a,b通道;模型后处理:拼接原始L通道和预测得的a,b通道获得新的Lab图 。环境AI加速型 | ai1s.large.4 | 2vCPUs | 8GiBMindStudio5.0.RC1_CANN5.1.RC1Ubuntu 18.04 server 64bit
操作流程假设我们已经收到代金券,并通过官方共享的镜像购买了ECS 。
1. 登录环境我使用的是MobaXterm,登陆界面如图所示:
带你体验给黑白照片上色的感觉「带你体验给黑白照片上色」

文章插图
2. 获取代码2.1 切换到普通用户默认登录是root用户,权限太大了,开发不太安全,我们先切换到普通用户,命令如下:
su - HwHiAiUser切换成功后,终端的提示符会变成$,我的当前目录如下图所示:
带你体验给黑白照片上色的感觉「带你体验给黑白照片上色」

文章插图
2.2 获取代码我使用的是官方案例,执行如下命令下载:
git clone https://gitee.com/ascend/mindxsdk-referenceapps.git运行成功截图如下:
带你体验给黑白照片上色的感觉「带你体验给黑白照片上色」

文章插图
注意,这里是下载的完整仓库,下面选择具体案例,我先选择Colorization来试试吧,先将这里案例拷贝出来一份到我的工作目录,我们下载的就当备份,开发切记要常备份 , 有备无患 。详细信息截图如下 。
带你体验给黑白照片上色的感觉「带你体验给黑白照片上色」

文章插图
2.3 运行2.3.1 模型转换本工程原模型是caffee模型 , 需要使用atc工具转换为om模型 , 模型和所需权重文件已上传,请使用以下命令下载并解压:
mkdir modelcd modelwget https://mindx.sdk.obs.myhuaweicloud.com/mindxsdk-referenceapps /contrib/Colorization/model.zip --no-check-certificateunzip model.zip下载完成并成功解压的截图:
带你体验给黑白照片上色的感觉「带你体验给黑白照片上色」

文章插图
下载并解压完毕后 , 进入scripts目录执行模型转换脚本
cd ../scriptsbash atc_run.sh运行报错了,如下所示:
带你体验给黑白照片上色的感觉「带你体验给黑白照片上色」

文章插图
回头看看该案例之前的环境要求,如下所示,考虑到该案例最早的更新也是6个月前了,推测是CANN版本不匹配或其他软件驱动问题或者是我们目前登录的用户与安装的用户不一致,也就是说我们登陆的用户没有安装CANN和配套软件,这里就不深究了 。直接来实际操作验证一下 。
带你体验给黑白照片上色的感觉「带你体验给黑白照片上色」

文章插图
下面我们切换到root用户下试试,执行如下命令:
su rootbash atc_run.sh模型转换成功了,如下图所示,看来是使用的用户不对,还得使用root用户 。