国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

查看: 1519|回復: 0
打印 上一主題 下一主題

飛凌嵌入式 基于NXP i.MX8MMini 運行tengine

[復制鏈接]
跳轉到指定樓層
樓主
發表于 2021-8-24 17:28:19 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
Tengine 是 OPEN AI LAB 一款輕量級神經網絡推理引擎,它針對 Arm 嵌入式平臺進行了專門優化,對 AndroidLinux 系統都提供了很好的支持。
而且更加難能可貴的是 Tengine 并不依賴于專用 AI 芯片(即 Tengine 可以利用 GPU、NPU 這些具有專門 AI 加速功能的模塊進行 AI 運算,也可以利用通用的 CPU 進行 AI 運算),很多 Arm 平臺都可以通過 Tengine 框架對算力進行深度挖掘,從而高效的運行一些 AI 應用。


本文就是想描述如何在OKMX8MM-C這一 Arm64 平臺上搭建 Tengine AI 推理框架,并運行圖像識別相關應用。首先在OKMX8MM-C上面移植了基于 Armbian 的 Debian 10 系統,運行的 u-boot 和 linux kernel 都是mainline的。

編譯 Tengine
OPEN AI LAB 在 Github 上提供了開源的 Tengine 版本,并提供了比較詳細的參考文檔,所以可以直接下載源碼,根據文檔進行編譯。
得益于 i.MX8MMini 強大的性能,我們可以直接在 i.MX8MMini 上下載代碼,進行編譯,免去交叉編譯的諸多不便。

1. 下載源碼
git clone --recurse-submodules https://github.com/OAID/tengine/
注意 clone 的時候一定要帶 --recurse-submodules 這個參數,否則會下載不完整。

2. 安裝依賴
apt install libprotobuf-dev protobuf-compiler libopencv-dev  pkg-config

3. 修改配置文件
在源碼的 default_config 目錄下提供了基于 arm32、arm64、x86 這三個平臺的配置文件。
RK3399 是 Arm64, 所以對應的配置文件為:arm64_linux_native.config。
這里要做的修改是,在配置文件中打開 BUILD_SERIALIZER=y 這個選項,否則后面運行的時候可能會遇到Shared library not found: libcaffe-serializer.so: cannot open shared object file: No such file or directory 這個錯誤。

4. 編譯
在源碼根目錄執行如下命令進行編譯:
./linux_build.sh default_config/arm64_linux_native.config


5. 下載 model 文件
運行這些 AI 應用的時候,需要加載對應的 model 文件,這些文件可以從 OPEN AI LAB 提供的網盤里下載:
https://pan.baidu.com/s/1Ar9334MPeIV1eq4pM1eI-Q , 提取碼為 hhgc 。
下載完后需要把這些 model 文件放在 Tengine 源碼根目錄下的 models 文件夾,所有的 model 文件加在一起比較大,我只上傳了后面測試需要用到的部分:

6. 運行 benchmark
編譯完成后默認會在 build/benchmark/bin/ 目錄下生成兩個供測試用的 benchmark 文件,可以直接執行這兩個文件,用來簡單的測試,確實是否真正編譯成功。
./build/benchmark/bin/bench_sqz ./build/benchmark/bin/bench_mobilenet


編譯并運行測試 Demo
Tengine 開放的源碼里面還帶了幾個不錯的 圖像識別相關的測試 Demo,用來測試和進行 AI 相關的基礎學習都很不錯。
這些 Demo 的源碼在 examples 目錄下,在編譯之前我們需要修改一個編譯腳本 linux_build.sh, 即根據實際情況,正確設置 Tengine 的所在路徑,比如我下載編譯的 Tengine 代碼在 /root/rockdev/tengine 目錄下:

然后在 examples 目錄下執行如下命令:
mkdir buildcd build/../linux_build.sh make

編譯完成,主要有 faster_rcnn 、lighten_cnn、 mobilenet_ssd、 mtcnn 、ssd、 yolov2、 YuFaceDetectNet 這幾個測試 Demo。
faster_rcnn
Faster rcnn 是大神 Ross B. Girshick 在 RCNN 和 Fast RCNN 的基礎上于 2016 年提出的新模型,綜合性能更高,檢測速度更快。
Tengine 版本的 Demo 對下面的圖片進行識別:

運行 faster_rcnn 可執行程序,會生成一張對檢測到的物體進行標注后的圖像:

可以看到識別到了 Dog、bicycle、car 三個物體。
YOLO v2
YOLO 全稱 You look only once,是 2016 年 CVPR 上發表的一篇目標檢測論文。
YOLOV v2 發表于 2017 年的 CVPR 上,論文名稱為《YOLO9000: Better, Faster, Stronger》,獲得了 CVPR 2017 Best ** Honorable Mention 大獎。
這里用這個模型來檢測和 RCNN 同樣的圖片:

從這張圖片看,準確性和 RCNN 相當,但是檢測速度卻快了 將近 6 倍。
SSD
SSD 全稱 Single Shot MultiBox detector, 是一種 one-stage 的通用物體檢測算法,作者 Wei Liu,提出于 2016年。
這里用如下圖片做檢測:

運行結果如下:

有點可惜的是把狗狗給識別錯了。
mobilenet_ssd
這個是 mobilenet 和 ssd 的結合,對移動設備更友好。
使用和 SSD 同樣的圖片進行檢測:

可以看到狗狗檢測對了,但是遠處有個人漏檢了。但是檢測速度比 SSD 快了很多。
YuFaceDetectNet
這個是深圳大學于仕琪老師開源的 libfacedetection 的 Tengine 實現版本,libfacedetection 號稱最快的人臉檢測庫。
測試原圖如下:


測試結果:


MTCNN
MTCNN 是另外一種人臉檢測方案,提出于 2016 年。
這里我們采用和 YuFaceDetectNet 同樣的圖片進行測試:

五張臉全部檢測到了,而且時間和 YuFaceDetectNet 差距并不大。
原文鏈接:https://www.forlinx.com/article_view_542.html

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久黑人| 毛片一级黄色 | 四虎影院永久免费 | 高清亚洲综合色成在线播放放 | 国产极品在线观看 | 欧洲不卡一卡2卡三卡4卡网站 | 国产精品成人扳一级aa毛片 | 黄色片在线免费观看视频 | 中文国产成人精品久久一 | 在线观看精品自拍视频 | 欧美区亚洲区 | 欧美亚洲综合图区在线 | 国产成人黄色在线观看 | 国产视频日韩 | 免费一级毛片无毒不卡 | 精品久久伦理中文字幕 | 激情久久久久久久久久久 | 538精品一线 | 精品免费久久久久国产一区 | 8008幸福宝app官网下载 | 中文字幕精品一区二区三区在线 | 伊人丁香| 免费观看黄色视屏 | 99re视频这里只有精品 | 亚洲欧美久久精品 | 天天综合色天天综合 | 欧美黑人一级片 | 第一福利在线观看永久视频 | 99re热这里只有精品18 | 日本a区 | 91性视频| 日本网站在线 | 国产九九在线观看播放 | 日韩一区二区三区在线 | 九月色| 依欧美视频 | 另类综合视频 | 色视影院 | 欧美一级黄色大片 | 抄逼| 深爱五月综合网 |