主要内容

基于ARM Mali GPU的深度学习预测

这个例子展示了如何使用cnncodegen函数用于在ARM®Mali gpu上使用深度学习的图像分类应用程序生成代码。示例使用MobileNet-v2DAG网络进行图像分类。生成的代码利用了用于计算机视觉和机器学习的ARM计算库。

先决条件

  • 基于ARM马里GPU的硬件。例如,HiKey960是包含马里GPU的目标平台之一。

  • ARM计算库在目标ARM硬件上为马里GPU构建。

  • 在目标ARM硬件上的开源计算机视觉库(OpenCV v2.4.9)。

  • 编译器和库的环境变量。确保ARM_COMPUTELD_LIBRARY_PATH在目标平台上设置变量。有关编译器和库支持的版本的信息,请参见金宝app第三方硬件.有关设置环境变量,请参见设置前提产品下载188bet金宝搏

得到Pretrained DAGNetwork

加载pretrainedMobileNet-v2可用的网络MobileNet-v2网络的深度学习工具箱模型

网= mobilenetv2
net = DAGNetwork with properties: Layers: [154×1 nnet.cnn.layer.Layer] Connections: [163×2 table] InputNames: {'input_1'} OutputNames: {'ClassificationLayer_Logits'}

网络包含155层,包括卷积、批处理归一化、softmax和分类输出层。的analyzeNetwork ()函数显示网络架构的交互图和包含有关网络层信息的表。

analyzeNetwork(净);

生成代码

对于ARM目标的深度学习,您可以在主机开发计算机上生成代码。要构建和运行可执行程序,将生成的代码移动到ARM目标平台。目标平台必须有ARM Mali GPU。例如,HiKey960是您可以在其上执行本例中生成的代码的目标平台之一。

调用cnncodegen函数,指定目标库为arm-compute-mali

cnncodegen(净,“targetlib”“arm-compute-mali”);

复制生成的文件到目标

使用首选的SCP (Secure Copy Protocol)或Secure Shell File Transfer Protocol (SSH)客户端,将生成的codegen文件夹和其他所需文件从主机开发计算机移动到目标平台。

例如,在Linux®平台上,要将文件传输到HiKey960,使用scp命令,格式如下:

SCP (sourcefile) [username]@[targetname]:~/');

系统('sshpass -p password SCP main_mobilenet_arm_generic.cpp username@targetname:~/');系统('sshpass -p password SCP peppers_mobilenet.png username@targetname:~/');系统('sshpass -p password SCP makefile_mobilenet_arm_generic. '可username@targetname: ~ /);系统('sshpass -p password scp synsetWords.txt username@targetname:~/');系统('sshpass -p password SCP -r codegen username@targetname:~/');

在Windows®平台上,您可以使用pscp安装PuTTY工具时自带的工具。例如:

系统('pscp -pw password-r codegen username@targetname:/home/username');

PSCP实用程序必须位于您的PATH或当前文件夹中。

构建可执行

要在目标平台上构建库,请使用生成的makefilecnnbuild_rtw.mk

例如,要在HiKey960上构建库:

系统('sshpass -p password SSH username@targetname'...make -C /home/user /codegen -f cnnbuild_rtw_mk ");

在Windows平台上,您可以使用腻子命令ssh参数登录并运行make命令。例如:

系统('putty -ssh username@targetname -pw password');

要在目标平台上构建和运行可执行文件,使用以下格式的命令:使- c /home/$(用户名)/ execfile - f makefile_mobilenet_arm_generic.mk

例如,在HiKey960上:

使- c/home/usrnamearm_mobilenet- fmakefile_mobilenet_arm_generic.mk

在ARM平台上运行可执行文件,指定一个输入映像文件。

。/ mobilenet_exe peppers_mobilenet.png

对输入图像文件的前5个预测是:

另请参阅

功能

相关的话题