固态硬盘编译android,【MNN学习五】在Android上部署MobileNetSSD之一

目录

一. 烧写Android系统

通过以上两步即完成Android系统的准备。

二. 安装Android-NDK

三. 连接Android设备和Linux主机

1. 使用TypeC-USB线分别接Android设备和Linux主机,使用 lsusb 命令查看Android设备的ID:

FmcS7o6XYqUvkXzGWVYhKotrcfHY

这里,查到设备的ID为2207. (注意:有的TypeC-USB线只能用来充电,不能传输数据,所以lsusb命令不会显示ID)

2. ADB工具的使用

sudo apt-get install android-tools-adb

mkdir -p ~/.android

vi ~/.android/adb_usb.ini

# add the following line:

0x2207

sudo vi /etc/udev/rules.d/70-android.rules

# add the following line:

SUBSYSTEM=="usb", ATTR{idVendor}=="2207", MODE="0666"

sudo udevadm control --reload-rules

sudo udevadm trigger

sudo adb kill-server

adb start-server

adb devices

adb shell

Fiq-cQeqxL1xUY4OGufbAN7w4ief

3. Android设备打开USB调试模式

a. 依次进入目录 Settings/System/About table/, 鼠标连续左击 Build number 七次进入开发者选项(会有提示)

b. 返回目录 Settings/System即可看到 Developer options, 左击进入打开 USB debuging 选项

c. 进入目录 Settings/Connected devices, USB选项默认为 Charging this device, 这种情况下我们不能在Linux主机上浏览

Android系统的内容(如下图所示Unable to access “ROC RK3399 PC”);若改成 Transfer files 即可在Android设备和Linux主

机之间传递文件。

Fu5I4tPbu7PAdTKUYjersLWGZm6c

FpItur0oCaVRAa40FtguHCxVvfA_

四. 部署MobileNetSSD到Android (5. Compile and execute demo)

git clone https://github.com/xindongzhang/MNN-APPLICATIONS.git

cd MNN-APPLICATIONS/applications/mssd/tensorflow

Fl2747dMw_-W4Em0NkFUuQxQOdV7

adb shell

cd /data/local/tmp/tf

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/data/local/tmp/tf

ndk-build

adb push ../libs/arm64-v8a /data/local/tmp/tf

adb push tf_mssd.mnn /data/local/tmp/tf

adb push image /data/local/tmp/tf/image

adb pull /data/local/tmp/tf/output ./output

注意:adb push ../libs/arm64-v8a/ /data/local/tmp

下面对 tf_mssd.cpp 进行修改:

std::string image_name = "./body.jpg";

std::string model_name = "./tf_body_det.mnn";

int forward = MNN_FORWARD_CPU;

// int forward = MNN_FORWARD_OPENCL;

// int forward = MNN_FORWARD_VULKAN;

int precision = 2;

int power = 0;

int memory = 0;

int threads = 1;    // single thread

int INPUT_SIZE = 300;

int OUTPUT_NUM = 1917; // for 300x300

下图是检测结果,单线程CPU需要200ms.(另外,int8量化后需要125ms. 量化前四线程GPU只需30ms)

FjPoTBIGPGZ7vLB3saNChFuJOvki

FgOE7gLDyDkkWFsCx_PO2lHvGFo4

Fli5Rq6V30beJT7K8EGoAppal_xv

FmBdKDJ-wGZgx6dAnlTyXGgF3evG

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值