測評分享丨RK3399開發板+RK1808人工智慧計算棒(被動模式)
高效賦能AIoT生態鏈:
上篇文章我們對OK3399-CDesktop+1808主動模式做詳細介紹 。本文將對被動模式的三個DEMO例程展開測評。
01
硬 件 平 臺
平臺:OK3399-C開發板
系統:Desktop
模組:TB-RK1808S0、usb攝像頭模組
環境準備: 飛凌OK3399-C開發板,RK1808人工智慧計算棒(韌體版本為V1.3.4),usb攝像頭,攝像頭和計算棒都插入OK3399-C開發板。
使用lsusb命令檢視,如下(紅框部分2207:0018即為我們的RK1808人工智慧計算棒):
輸入命令如下:
注意:因為被動模式需要安裝的庫檔案較多,佔用空間較大,所以需要擴大rootfs分割槽,修改param/parameter.txt檔案
0x00f00000@0x0005a000(rootfs) //0x f00000個塊(512位元組)=7.5G
改為
0x01800000@0x0005a000(rootfs) //0x1800000個塊=12G
修改後進入系統,檢視分割槽大小:
02 概 述
AI計算區分為四個不同的象限,分別是雲端訓練、雲端推理,邊緣訓練以及邊緣推 理。 其中邊緣推理,幾乎都集中在Arm架構生態上。AI神經網路計算目前可以透過CPU、GPU、DSP、NPU、FAGA等完成,但不同的硬體特性會導致效率和功耗的不同。其中NPU——嵌入式神經網路處理器採用“資料驅動平行計算”的架構,最擅長的就是影片、影像類的海量多媒體資料的處理,並且相比GPU等具有更低的功耗。我司推出OK3399-C Desktop+RK1808(含3Tops算力NPU)的組合,在滿足AI邊緣計算的情況下,使得功耗大幅降低。
RK1808計算棒擁有主動模式和被動模式兩種模式。被動模式下:RK1808人工智慧計算棒是一個通用AI加速器。OK3399-C透過RKNN-Toolkit將模型及前處理後的資料傳輸給RK1808人工智慧計算棒,RK1808人工智慧計算棒完成推理,並把結果返回OK3399-C,OK3399-C進行後處理以及顯示等操作。
被動模式開發流程圖如下:
03
被動模式Mobilenet-ssd測試
1、使用官方連結下載被動模式Mobilenet-ssd原始碼
或者使用使用者資料中提供的原始碼,目錄為:使用者資料\linux\原始碼\被動模式\Mobilenet-ssd\
2、安裝編譯器、OpenCV、rknn-api
sudo apt-get install cmake gcc g++ //安裝編譯器
驗證編譯器已安裝成功:
sudo apt-get install libopencv-dev //安裝opencv庫檔案
rknn-api安裝指令碼在slave_mobilenet_ssd壓縮包中
cd slave_mobilenet_ssd/install_rknn
sudo ./install_rknn_api.sh //安裝rknn_api和通訊程式
3、程式碼編譯執行
1)cd slave_mobilenet_ssd
修改ssd_demo.cpp檔案中main函式中如下語句,根據開發板實際情況修改開啟的攝像頭節點
ret= test.run(VIDEO_NODE, post_process, &data);
改為:
ret= test.run("/dev/video10", post_process, &data);
2)mkdir build
3)cd build
4)cmake..
5)make
編譯結果生成ssd_demo可執行程式:
6)npu_transfer_proxy& //啟動NPU守護程式,通訊代理服務。該程式由原廠提供。
7)在PC上插入USB攝像頭
8)在PC介面終端上執行./ssd_demo,將會在螢幕上顯示SSD影像結果
9)按'ESC'鍵退出執行
04
被動模式Rock-X測試
1、使用原廠連結下載Rock-X SDK並解壓,連結如下:
或者使用使用者資料中提供的原始碼,目錄為:使用者資料\linux\原始碼\被動模式\Rock-X\
2、安裝編譯器
sudo apt-get install cmake gcc g++
3、插入計算棒,等待上位機識別到計算棒
4 、 上位機執行rock-x依賴rknn_api, npu_transfer_proxy
使用者可以先按照本文件第三章“被動模式Mobilenet-ssd測試”安裝rknn_api;使用者也可以透過原廠提供的連結地址直接下載rknn_api, npu_transfer_proxy,如下:
5、執行npu_transfer_proxy和計算棒進行通訊
npu_transfer_proxy &
6、編譯測試用demo
cd demo/command_line_demo
./build-linux-rk3399pro-on-device.sh
此時會編譯得到rock-x中demo目錄下的各用例並存放在install目錄下
7、測試生成的用例中的rockx_face_landmark_demo
cd install/rockx_linux_rk3399pro/rockx_face_landmark_demo/
export LD_LIBRARY_PATH=../lib
./rockx_face_landmark face4.jpg 68 //人臉特徵點定位(68點)
8、測試效果如下:
9、Rock-X command_line_demo提供的例程
rockx_carplate_demo 車牌識別
rockx_face_attribute_demo 人臉屬性識別(性別、年齡)
rockx_face_detection_demo 人臉檢測
rockx_face_landmark_demo 人臉特徵點定位
rockx_head_detection_demo 人頭檢測
rockx_object_detection_demo 物體檢測
rockx_object_track_demo 物體運動檢測
rockx_pose_body_demo 人體姿態檢測
rockx_pose_finger_demo 手掌節點姿態檢測
rockx_face_liveness_demo 活體檢測
rockx_face_recognition_demo 人臉識別對比
05
被動模式yolov3測試
注意該測試中安裝的部分包因為資源問題下載可能會因超時而無法下載,遇到這種情況,可以使用我司提供的現成的安裝包,目錄為:使用者資料\ linux\原始碼\被動模式\yolov3 demo\安裝包\
1、安裝python3.5,ubuntu18.04預設python3.6,該版本部分庫沒有資源無法安裝,所以更換為python3.5
sudo apt-get update
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt-get update
sudo apt-get install python3.5-dev
sudo apt-get --reinstall install python3.5-minimal
sudo mv /usr/bin/python3 /usr/bin/python3-old
sudo ln -s /usr/bin/python3.5 /usr/bin/python3
sudo update-alternatives --install /usr/bin/python python/usr/bin/python3.5 300
驗證python3.5是否安裝成功並且python3已經修改為預設使用3.5:
安裝新版pip:
wget
sudo python3 get-pip.py
sudo pip3 install setuptools --upgrade
sudo ln -s /usr/local/bin/pip3 /usr/bin/pip3
驗證pip安裝成功且預設使用python3.5的pip工具:
2、安裝依賴庫
sudo apt-get install cmake gcc g++ libprotobuf-dev protobuf-compiler
sudo apt-get install liblapack-dev libjpeg-dev zlib1g-dev
sudo apt-get install python3-dev python3-pip python3-scipy
sudo apt-get install python3-opencv python3-numpy python3-lmd bpython3-h5py
pip3 install wheel setuptools
sudo apt-get build-dep python3-h5py && pip3 install h5py
pip3 install --user scipy
pip3 install --user grpcio==1.26.0
pip3 install --user onnx
pip3 uninstall pillow
pip3 install --user pillow==4.2.1
pip3 uninstall h5py
pip3 install --user h5py==2.8.0rc1
注意部分安裝包因為資源問題下載可能會因超時而無法下載,可以使用我司提供的現成的安裝包。
檢視上述指令安裝的包是否安裝到python3.5目錄下:
3、安裝TensorFlow
wget
pip3 install --user tensorflow-1.11.0-cp35-none-linux _aarch64.whl
TensorFlow也可以到/home/forlinx/.local/lib/python3.5/site-packages/目錄下檢視安裝情況
4、Python3.5安裝OpenCV3
1)下載opencv和opencv_contrib,這兩部分程式碼下載也比較困難,建議使用我司使用者資料中提供的原始碼包,目錄為:使用者資料\linux\原始碼\被動模式\yolov3demo\安裝包\:
cd~
git clone
git clone
2)編譯opencv原始碼
make
編譯結果如下:
3)安裝OpenCV
sudo make install
部分安裝資訊:
OpenCV的安裝檔案也可以在系統中找到,例如:
/usr/local/lib/libopencv_core.so.4.3.0
/usr/local/include/opencv4/opencv2/cvconfig.h
編譯時會有報錯解決方法可以參考如下連結:
或者可以使用我司提供的現成的OpenCV的原始碼。
5、安裝rknn-toolkit
wget
pip3 --default-timeout=100000 install --user rknn_toolkit-1.1.0-cp35-cp35m-linux_aarch64.whl
rknn_toolkit也可以到/home/forlinx/.local/lib/python3.5/site-packages/目錄下檢視安裝情況,可以看到對應安裝目錄:
6、下載yolov3 demo程式測試執行
cd rk1808/yolov3/
修改rknn_camera_tiny_multiProcess.py中開啟的攝像頭節點:
video= cv2.VideoCapture(0)
改為:
video= cv2.VideoCapture("/dev/video10")
注意:攝像頭節點需要依據自己開發板的實際情況來修改
命令列執行:
python3.5 rknn_camera_tiny_multiProcess.py
執行結果如下:
至此,OK3399-C開發板+RK1808人工智慧計算棒被動模式下的測評告一段落。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69989353/viewspace-2738095/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 測評分享丨RK3399開發板+RK1808人工智慧計算棒(主動模式)人工智慧模式
- RK3399主機板設計方案,RK3399開發板原理圖
- 瑞芯微RK3399開發板,RK3399主機板引數介紹
- RK3399開發板 RK818 電量計 驅動檔案和 menuconfig
- 乾貨丨RK3399開發板android系統下實現影像識別Android
- RK3399開發板 RK818 電量計DTS配置說明
- 瑞芯微平臺RK3399主機板PCBA開發設計
- RK3399主機板方案,RK3399串列埠測試設計介紹串列埠
- RK3399主機板硬體開發過程
- RK3399開發資料,RK3399晶片效能,RK3399處理器引數,RK3399主機板晶片
- 乾貨|關於RK3399開發板硬體設計的二三事
- RK3399 camera驅動開發
- rk3399 開源主機板簡介
- 使用者測評:G2L開發板初體驗
- 趣味運動零擼趣步系統模式開發丨DAPP丨Defi丨NFT模式APP
- NFT算力挖礦系統開發設計丨算力礦機原始碼丨dapp丨FIL原始碼APP
- RK3399方案設計RK3399嵌入式開發
- 分享 | 英特爾第二代神經計算棒(Intel Neural Compute Stick 2)相關測試Intel
- FIL雲算力挖礦系統設計開發丨雲算力礦機原始碼丨FIL丨PHA原始碼
- 如何採購ARM六核RK3399安卓工控開發主機板?安卓
- 在RK3399開發板香橙派Orange Pi 4B上使用dockerDocker
- 開發實踐丨用小熊派STM32開發板模擬自動售貨機
- 雲端計算開發與人工智慧的關係,雲端計算開發主宰物聯網人工智慧
- 發評測贏好禮 | Serverless 函式計算徵集令Server函式
- DeFi流動性雲算力質押挖礦系統開發丨DAPP丨FIL丨PHAAPP
- Defi質押理財存幣生息系統設計開發模式丨LP丨Defi丨DAPP模式APP
- 活動報名:Voice Agent 開發者分享會丨 RTE Meetup
- 乾貨分享丨一種DevOps模式下UI自動化測試左移思路的探究dev模式UI
- AI人工智慧小程式系統開發丨chatGPT聊天開發丨chatGPT4AI人工智慧ChatGPT
- RK3399開發板Ubuntu系統下實現雙屏顯示&異觸Ubuntu
- 一文看懂配置RK3399開發板Ubuntu雙屏顯示&異觸Ubuntu
- 瑞芯微RK3399開發板Android7.1修改網路優先順序方法,觸覺智慧SBC3968開發板演示Android
- DApp丨DeFi丨LP丨IDO丨DAO代幣質押模式系統開發APP模式
- FTP主動模式和被動模式FTP模式
- 前沿情報丨當人工智慧遇上量子計算機AlphaGo將爆發出洪荒之力人工智慧計算機Go
- Avive World流動性挖礦系統設計開發模型丨DAPP丨Defi丨IDO模型APP
- Python語言丨chatGPT人工智慧小程式系統設計開發分析PythonChatGPT人工智慧
- 分享Epicor開發的月加權計算成本的案例