【CANN训练营进阶班应用课笔记】在Atlas 200DK上体验DVPP的JPEGD-RESIZE-JPEGE

举报
张辉 发表于 2022/03/31 18:51:39 2022/03/31
【摘要】 学无止境,U CANN U UP。

原文参见:https://bbs.huaweicloud.cn/forum/forum.php?mod=viewthread&tid=183357

张小白已经在AI1S服务器上成功运行了这次CANN训练营进阶班应用课的大作业1:https://bbs.huaweicloud.cn/blogs/344169

觉得既然AI1S服务器一直在扣硬盘钱,那么总有一天代金券要被扣完的。看来永久留下作业记录的方法只有——使用Atlas200DK了。

根据 https://bbs.huaweicloud.cn/blogs/344170 首先完成 Atlas 200DK的CANN 5.0.5alpha系统的升级安装,然后依葫芦画瓢,开始做题目:

先下载samples代码仓:

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

进入 jpegd目录:

cd /home/HwHiAiUser/samples/cplusplus/level2_simple_inference/0_data_process/jpegd

cd scripts

bash sample_build.sh

这里需注意,200DK是ARM CPU,所以编译时选择arm而不是在AI1S服务器上选择的x86

bash sample_run.sh

可以看到yuv文件已经生成,文件名似乎有点不同:dog1_1024_683_jpegd_1024_683.yuv

接着进入resize目录:

先编译:

cd 
/home/HwHiAiUser/samples/cplusplus/level2_simple_inference/0_data_process/resize

cd scripts

bash sample_build.sh

准备好前面解码后的文件:

cd /home/HwHiAiUser/samples/cplusplus/level2_simple_inference/0_data_process/jpegd/out/output

cp dog1_1024_683_jpegd_1024_683.yuv /home/HwHiAiUser/samples/cplusplus/level2_simple_inference/0_data_process/resize/data/

修改sample_run.sh文件,将resize的yuv文件名和resize前后的大小改一下:

cd /home/HwHiAiUser/samples/cplusplus/level2_simple_inference/0_data_process/resize

cd scripts

vi sample_run.sh

running_command="./main ../data/dog1_1024_683_jpegd_1024_683.yuv 1024 688 ./output/output.yuv 640 480 "

保存后,执行resize

bash sample_run.sh

查看resize后的文件是否生成:

最后进入jpege目录:

cd /home/HwHiAiUser/samples/cplusplus/level2_simple_inference/0_data_process/jpege

先看一下源文件是否需要修改:

cd src

vi main.cpp

好像这里的代码跟 AI1S的镜像有点区别,并没有写死路径和分辨率。

而是通过传参来进行JPEG编码。

那就直接编译吧:

cd ../scripts

bash sample_build.sh

只是这样要看下 sample_run.sh了。在这里输入文件名和分辨率吧!

vi sample_run.sh

这里直接把文件名改为 resize目录下的估计也可以。试试:

 running_command="./main /home/HwHiAiUser/samples/cplusplus/level2_simple_inference/0_data_process/resize/out/output/output.yuv 640 480"

保存后运行试试:

居然不行。。绝对路径好像不认。

还是老老实实把文件拷贝过来吧。将文件路径改回成 data目录吧。

cd ../data

mv dvpp_output.yuv ../

cp /home/HwHiAiUser/samples/cplusplus/level2_simple_inference/0_data_process/resize/out/output/output.yuv .

切回到jpege的scripts目录,执行编码:

去out/output目录下查看结果:

将这个 output_jpege_640_480.jpg 文件拷贝到windows下打开试试:

可以看到图片已经生成了:

而且,隐约可以看到底下有一层绿边(其实好像是五彩斑斓的绿。。。)

就这样,在200DK上的试验也顺利结束了。

这回可以不用关机走人了。。。

(全文完,谢谢阅读)

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。