一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于RV1126開發(fā)板的resnet50訓(xùn)練部署教程

廣州靈眸科技有限公司 ? 2025-04-18 15:07 ? 次閱讀

1. Resnet50簡介

ResNet50網(wǎng)絡(luò)是2015年由微軟實(shí)驗(yàn)室的何愷明提出,獲得ILSVRC2015圖像分類競賽第一名。在ResNet網(wǎng)絡(luò)提出之前,傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)都是將一系列的卷積層和池化層堆疊得到的,但當(dāng)網(wǎng)絡(luò)堆疊到一定深度時(shí),就會(huì)出現(xiàn)退化問題。 殘差網(wǎng)絡(luò)的特點(diǎn)是容易優(yōu)化,并且能夠通過增加相當(dāng)?shù)纳疃葋硖岣邷?zhǔn)確率。其內(nèi)部的殘差塊使用了跳躍連接,緩解了在深度神經(jīng)網(wǎng)絡(luò)中增加深度帶來的梯度消失問題。

教程基于圖像分類算法ResNet50的訓(xùn)練和部署到EASY-EAI-Nano(RV1126)進(jìn)行說明。

wKgZPGgB-kuALz0qAAAoaKA2oe4339.png

2. 準(zhǔn)備數(shù)據(jù)集

2.1 數(shù)據(jù)集下載

本教程以車輛分類算法為例

解壓完成后得到以下兩個(gè)文件夾:

wKgZO2gB-kuACCQFAAAcuI6vEaI413.png

打開可以看到一共10類汽車:

wKgZO2gB-kuACK4mAAA__DRjBiY505.png
類別名稱類別索引號(hào)
SUV0
BUS1
family sedan2
fire engine3
heavy truck4
jeep5
mini bus6
racing car7
taxi8
truck9

3. ResNet50圖像分類訓(xùn)練

3.1 訓(xùn)練源碼下載

得到下圖所示目錄:

wKgZPGgB-kuAXp1IAABEXvQrHgY157.png

把數(shù)據(jù)集解壓到當(dāng)前目錄:

wKgZPGgB-kuAX7wxAABJZITknpk903.png

3.2 訓(xùn)練模型

進(jìn)入anconda的pyTorch環(huán)境,切換到訓(xùn)練源碼目錄執(zhí)行以下指令開始訓(xùn)練:

python train.py

執(zhí)行結(jié)果如下圖所示:

wKgZPGgB-kuAbKAsAADQ65sjoI4296.png

訓(xùn)練結(jié)束后test loss結(jié)果如下所示:

wKgZO2gB-kuANq-mAABfK06G61U746.png

訓(xùn)練結(jié)束后test accuracy結(jié)果如下所示:

wKgZO2gB-kuAeP8qAABvOCB5CoE487.png

生成的最優(yōu)模型如下所示:

wKgZO2gB-kuAExPZAACYU9u1sUk675.png

3.3 在PC端測試模型

在訓(xùn)練源碼目錄執(zhí)行以下指令,測試模型(生成模型名稱不一致則修改predict.py腳本):

python predict.py

wKgZPGgB-kuAaIupAAA2R_WJU6g846.png

結(jié)果類別索引號(hào)為1——BUS, 測試結(jié)果正確。

3.4 pth模型轉(zhuǎn)換為onnx模型

執(zhí)行以下指令把pytorch的pth模型轉(zhuǎn)換onxx模型:

python pth_to_onnx.py

wKgZPGgB-kuAPeG9AACvyuYWClo641.png

生成ONNX模型如下所示:

wKgZO2gB-kuAfNEMAAB2c1ZT1Nw116.png

4. rknn-toolkit模型轉(zhuǎn)換

4.1 rknn-toolkit模型轉(zhuǎn)換環(huán)境搭建

onnx模型需要轉(zhuǎn)換為rknn模型才能在EASY-EAI-Nano運(yùn)行,所以需要先搭建rknn-toolkit模型轉(zhuǎn)換工具的環(huán)境。當(dāng)然tensorflow、tensroflow lite、caffe、darknet等也是通過類似的方法進(jìn)行模型轉(zhuǎn)換,只是本教程onnx為例。

4.1.1 概述

模型轉(zhuǎn)換環(huán)境搭建流程如下所示:

poYBAGO2lbOAEkkRAABVaQQIt48256.png

4.1.2 下載模型轉(zhuǎn)換工具

為了保證模型轉(zhuǎn)換工具順利運(yùn)行,請(qǐng)下載網(wǎng)盤里”AI算法開發(fā)/RKNN-Toolkit模型轉(zhuǎn)換工具/rknn-toolkit-v1.7.3/docker/rknn-toolkit-1.7.3-docker.tar.gz”。

4.1.3 把工具移到ubuntu18.04

把下載完成的docker鏡像移到我司的虛擬機(jī)ubuntu18.04的rknn-toolkit目錄,如下圖所示:

wKgZPGgB-kuALp24AABX1QyhA-s529.png

4.1.4 運(yùn)行模型轉(zhuǎn)換工具環(huán)境

在該目錄打開終端:

wKgZO2gB-kyAAXtrAAC2zYJntHM282.png

執(zhí)行以下指令加載模型轉(zhuǎn)換工具docker鏡像:

docker load --input /home/developer/rknn-toolkit/rknn-toolkit-1.7.3-docker.tar.gz

執(zhí)行以下指令進(jìn)入鏡像bash環(huán)境:

docker run -t -i --privileged -v /dev/bus/usb:/dev/bus/usb rknn-toolkit:1.7.3 /bin/bash

現(xiàn)象如下圖所示:

wKgZPGgB-kyAKIUpAAB7xliyey8367.png

輸入“python”加載python相關(guān)庫,嘗試加載rknn庫,如下圖環(huán)境測試成功:

wKgZO2gB-kyAIs8BAACpm7KDKWw612.png

至此,模型轉(zhuǎn)換工具環(huán)境搭建完成。

4.2 模型轉(zhuǎn)換為RKNN

EASY EAI Nano支持.rknn后綴的模型的評(píng)估及運(yùn)行,對(duì)于常見的tensorflow、tensroflow lite、caffe、darknet、onnx和Pytorch模型都可以通過我們提供的 toolkit 工具將其轉(zhuǎn)換至 rknn 模型,而對(duì)于其他框架訓(xùn)練出來的模型,也可以先將其轉(zhuǎn)至 onnx 模型再轉(zhuǎn)換為 rknn 模型。 模型轉(zhuǎn)換操作流程入下圖所示:

pYYBAGO2lkmAX4YPAAD58DT6vJc166.png

4.2.1 模型轉(zhuǎn)換Demo下載

resnet50_model_convert.tar.bz2quant_dataset.zip解壓到虛擬機(jī),如下圖所示:

wKgZPGgB-kyAYTTNAAB8s_QfbS4954.png

4.2.2 進(jìn)入模型轉(zhuǎn)換工具docker環(huán)境

執(zhí)行以下指令把工作區(qū)域映射進(jìn)docker鏡像,其中/home/developer/rknn-toolkit/model_convert_test為工作區(qū)域,/test為映射到docker鏡像,/dev/bus/usb:/dev/bus/usb為映射usb到docker鏡像:

docker run -t -i --privileged -v /dev/bus/usb:/dev/bus/usb -v /home/developer/rknn-toolkit/model_convert_test:/test rknn-toolkit:1.7.3 /bin/bash

執(zhí)行成功如下圖所示:

wKgZPGgB-kyAXgd0AACDXi34wb8460.png

4.2.3 模型轉(zhuǎn)換Demo目錄介紹

模型轉(zhuǎn)換測試Demo由resnet50_model_convertquant_dataset組成。resnet50_model_convert存放軟件腳本,quant_dataset存放量化模型所需的數(shù)據(jù)。如下圖所示:

wKgZPGgB-kyAYTTNAAB8s_QfbS4954.png

resnet50_model_convert文件夾存放以下內(nèi)容,如下圖所示:

wKgZPGgB-kyAKEDBAADoTTMOXxI250.png

4.2.4 生成量化圖片列表

在docker環(huán)境切換到模型轉(zhuǎn)換工作目錄:

cd /test/resnet50_model_convert

如下圖所示:

wKgZO2gB-kyAWNQ9AAB9-WP6FUA420.png

執(zhí)行gen_list.py生成量化圖片列表:

python gen_list.py

命令行現(xiàn)象如下圖所示:

wKgZO2gB-kyAcciEAACb7G1bFOU508.png

生成“量化圖片列表”如下文件夾所示:

wKgZPGgB-kyASpMkAADVBTk1w7c012.png

4.2.5 onnx模型轉(zhuǎn)換為rknn模型

rknn_convert.py腳本默認(rèn)進(jìn)行int8量化操作,腳本代碼清單如下所示:

import os import urllib import traceback import time import sys import numpy as np import cv2 from rknn.api import RKNN ONNX_MODEL = '10class_ResNet50.onnx' RKNN_MODEL = './10class_ResNet50.rknn' DATASET = './pic_path.txt' QUANTIZE_ON = True if __name__ == '__main__': # Create RKNN object rknn = RKNN(verbose=True) if not os.path.exists(ONNX_MODEL): print('model not exist') exit(-1) # pre-process config print('--> Config model') rknn.config(reorder_channel='0 1 2', mean_values=[[123.67, 116.28,103.53]], std_values=[[58.395, 57.12, 57.375]], optimization_level=3, target_platform = 'rv1126', output_optimize=1, quantize_input_node=QUANTIZE_ON) print('done') # Load ONNX model print('--> Loading model') ret = rknn.load_onnx(model=ONNX_MODEL) if ret != 0: print('Load failed!') exit(ret) print('done') # Build model print('--> Building model') ret = rknn.build(do_quantization=QUANTIZE_ON, dataset=DATASET) if ret != 0: print('Build resnet failed!') exit(ret) print('done') # Export RKNN model print('--> Export RKNN model') ret = rknn.export_rknn(RKNN_MODEL) if ret != 0: print('Export resnet failed!') exit(ret) print('done')

把onnx模型10class_ResNet50.onnx放到resnet50_model_convert目錄,并執(zhí)行rknn_convert.py腳本進(jìn)行模型轉(zhuǎn)換:

python rknn_convert.py

生成模型如下圖所示,此模型可以在rknn-toolkit環(huán)境和EASY EAI Nano環(huán)境運(yùn)行:

wKgZPGgB-k2AFFZ7AAJwvwioU4U194.png

4.2.6 運(yùn)行rknn模型

predict.py腳本在PC端的環(huán)境下可以運(yùn)行rknn的模型,如下圖所示:

wKgZO2gB-kyALqbqAAC_ryi8Pu4460.png

predict.py腳本程序清單如下所示:

import os import urllib import traceback import time import sys import numpy as np import cv2 import random from rknn.api import RKNN RKNN_MODEL = '10class_ResNet50.rknn' IMG_PATH = './test-1.jpg' BOX_THRESH = 0.25 NMS_THRESH = 0.6 CLASSES = ("SUV", "bus", "family sedan", "fire engine", "heavy truck", "jeep", "minibus", "racing car", "taxi", "truck") def show_outputs(output): print("softmax output:", output) max_confidence = np.max(output) index = np.where(output == max_confidence) print("max confidence:", max_confidence) print("max confidence index:", index[0][0]) print("CLASSES predict: ", CLASSES[index[0][0]]) def softmax(x): return np.exp(x)/sum(np.exp(x)) if __name__ == '__main__': # Create RKNN object rknn = RKNN(verbose=True) print('--> Loading model') ret = rknn.load_rknn(RKNN_MODEL) if ret != 0: print('load rknn model failed') exit(ret) print('done') # init runtime environment print('--> Init runtime environment') ret = rknn.init_runtime() # ret = rknn.init_runtime('rv1126', device_id='1126') if ret != 0: print('Init runtime environment failed') exit(ret) print('done') # Set inputs img = cv2.imread(IMG_PATH) img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) resize_img = cv2.resize(img,(224,224)) # Inference print('--> Running model') outputs = rknn.inference(inputs=[resize_img]) print("outputs[0]:", outputs[0]) print("outputs[0].shape:", outputs[0].shape) show_outputs(softmax(np.array(outputs[0][0]))) print('done') rknn.release()

執(zhí)行結(jié)果如下圖所示:

wKgZO2gB-k2AS19SAAFp1vx31Cw940.png

4.2.7 模型預(yù)編譯

由于rknn模型用NPU API在EASY EAI Nano加載的時(shí)候啟動(dòng)速度會(huì)很慢,在評(píng)估完模型精度沒問題的情況下,建議進(jìn)行模型預(yù)編譯。預(yù)編譯的時(shí)候需要通過EASY EAI Nano主板的環(huán)境,所以請(qǐng)務(wù)必接上adb口與ubuntu保證穩(wěn)定連接。

板子端接線如下圖所示,撥碼開關(guān)需要是adb:

wKgZO2gB-k6AdDQnAEUKoK05hPI157.png

虛擬機(jī)要保證接上adb設(shè)備:

poYBAGO2mtSAf4j5AAGxSQEPX9E006.png

由于在虛擬機(jī)里ubuntu環(huán)境與docker環(huán)境對(duì)adb設(shè)備資源是競爭關(guān)系,所以需要關(guān)掉ubuntu環(huán)境下的adb服務(wù),且在docker里面通過apt-get安裝adb軟件包。以下指令在ubuntu環(huán)境與docker環(huán)境里各自執(zhí)行:

wKgZPGgB-k2APFLpAACw9mOI3Xw412.png

在docker環(huán)境里執(zhí)行adb devices,現(xiàn)象如下圖所示則設(shè)備連接成功:

wKgZO2gB-k2AYj-lAAG20MtbUhY089.png

運(yùn)行precompile_rknn.py腳本把模型執(zhí)行預(yù)編譯:

python precompile_rknn.py

執(zhí)行效果如下圖所示,生成預(yù)編譯模型10class_ResNet50_pre.rknn

wKgZPGgB-k2Aaet9AAFaHeZ0Wp4527.png

至此預(yù)編譯部署完成,模型轉(zhuǎn)換步驟已全部完成。生成如下預(yù)編譯后的int8量化模型:

wKgZO2gB-k2AW09zAADNGAAZwvA657.png

至此RKNN模型生成完畢,注意預(yù)編譯模型只能在板卡端執(zhí)行。

5. ResNet50圖像分類部署

5.1 模型部署示例介紹

本小節(jié)展示ResNet50模型的在EASY EAI Nano的部署過程,該模型僅經(jīng)過簡單訓(xùn)練供示例使用,不保證模型精度。

5.2 開發(fā)環(huán)境準(zhǔn)備

如果您初次閱讀此文檔,請(qǐng)閱讀《入門指南/開發(fā)環(huán)境準(zhǔn)備/Easy-Eai編譯環(huán)境準(zhǔn)備與更新》,并按照其相關(guān)的操作,進(jìn)行編譯環(huán)境的部署。

在PC端Ubuntu系統(tǒng)中執(zhí)行run腳本,進(jìn)入EASY-EAI編譯環(huán)境,具體如下所示。

cd ~/develop_environment ./run.sh

wKgZPGgB7g2AdudVAACbrHAYX20640.png

5.3 源碼下載以及例程編譯

下載ResNet50 C Demo示例文件。

下載程序包移至ubuntu環(huán)境后,執(zhí)行以下指令解壓:

tar -xvf resnet50_classification_C_demo.tar.bz2

下載解壓后如下圖所示:

wKgZO2gB-k2AL_UCAAByK9fPP6Q506.png

在EASY-EAI編譯環(huán)境下,切換到例程目錄執(zhí)行編譯操作:

cd /opt/rknn-toolkit/resnet50_classification_C_demo/ ./build.sh

注:

* 由于依賴庫部署在板卡上,因此交叉編譯過程中必須保持adb連接。

wKgZO2gB-k2AcIY4AAGzc9hby-c587.png

5.4 在開發(fā)板執(zhí)行ResNet50 圖像分類算法

在EASY-EAI編譯環(huán)境下,在例程目錄執(zhí)行以下指令把可執(zhí)行程序推送到開發(fā)板端:

cp resnet_classification_demo_release/ /mnt/userdata/ -rf

通過按鍵Ctrl+Shift+T創(chuàng)建一個(gè)新窗口,執(zhí)行adb shell命令,進(jìn)入板卡運(yùn)行環(huán)境:

adb shell

wKgZPGgB-k2ACapFAABR0C4N5zg153.png

進(jìn)入板卡后,定位到例程上傳的位置,如下所示:

cd /userdata/resnet_classification_demo_release/

運(yùn)行例程命令如下所示:

./resnet_classification_demo

執(zhí)行結(jié)果如下圖所示,算法執(zhí)行時(shí)間約為35ms:

wKgZPGgB-k2AYjaeAAFNGeJ6r3c290.png

至此,ResNet50圖像分類例程已成功在板卡運(yùn)行。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 開發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    5389

    瀏覽量

    100899
  • resnet
    +關(guān)注

    關(guān)注

    0

    文章

    13

    瀏覽量

    3271
  • rv1126
    +關(guān)注

    關(guān)注

    0

    文章

    106

    瀏覽量

    3259
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Qt程序部署到瑞星微RV1126開發(fā)板上,使用QCursor::pos()獲取鼠標(biāo)為零是為什么?

    Qt程序部署到瑞星微RV1126開發(fā)板上,使用QCursor::pos()獲取鼠標(biāo)為零是為什么?
    發(fā)表于 10-21 06:23

    【R329開發(fā)板評(píng)測】實(shí)機(jī)測試Resnet50

    在經(jīng)過仿真測試拿到開發(fā)板后,參考官方的實(shí)機(jī)測試教程,對(duì)仿真測試模型進(jìn)行了實(shí)機(jī)運(yùn)行和測試,這里主要是對(duì)resnet50進(jìn)行了實(shí)時(shí)運(yùn)行。
    發(fā)表于 01-25 16:55 ?3次下載
    【R329<b class='flag-5'>開發(fā)板</b>評(píng)測】實(shí)機(jī)測試<b class='flag-5'>Resnet50</b>

    RV1126-AI開發(fā)手記(一)Resnet50性能評(píng)估

    應(yīng)朋友的委托,希望我來幫忙評(píng)估一下RV1126RV1109)的AI性能。這兩款芯片是pin2pin的,RV1109的算力為1.2Tops,RV1126的算力為2.0Tops...
    發(fā)表于 01-25 19:41 ?25次下載
    <b class='flag-5'>RV1126</b>-AI<b class='flag-5'>開發(fā)</b>手記(一)<b class='flag-5'>Resnet50</b>性能評(píng)估

    RV1126開發(fā)板數(shù)據(jù)手冊(cè)

    本產(chǎn)品是基于瑞芯微 RV1126 媒體處理芯片開發(fā)的 IPC 開發(fā)板,分為核心和底板, 且 RV1126
    發(fā)表于 08-28 11:09 ?19次下載

    RV1126 實(shí)現(xiàn)人臉檢測方案

    基于RV1126開發(fā)板實(shí)現(xiàn)人臉檢測方案,充分體現(xiàn)了電子方面的實(shí)踐經(jīng)驗(yàn)和目標(biāo)檢測技術(shù)。
    的頭像 發(fā)表于 04-14 09:25 ?87次閱讀
    <b class='flag-5'>RV1126</b> 實(shí)現(xiàn)人臉檢測方案

    基于RV1126開發(fā)板的人臉檢測算法開發(fā)

    RV1126開發(fā)人臉檢測算法組件
    的頭像 發(fā)表于 04-14 10:19 ?143次閱讀
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>開發(fā)板</b>的人臉檢測算法<b class='flag-5'>開發(fā)</b>

    基于RV1126開發(fā)板的人員檢測算法開發(fā)

    RV1126開發(fā)人員檢測AI算法組件
    的頭像 發(fā)表于 04-14 13:56 ?161次閱讀
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>開發(fā)板</b>的人員檢測算法<b class='flag-5'>開發(fā)</b>

    基于RV1126開發(fā)板網(wǎng)絡(luò)配置方法

    RV1126開發(fā)板網(wǎng)絡(luò)硬件資源有:以太網(wǎng)、WiFi,采用的網(wǎng)絡(luò)配置方案是:Netplan。 ? ? ? ?Netplan是一個(gè)用于配置Linux網(wǎng)絡(luò)的簡單工具。用戶只需要一個(gè)yaml格式的文件去
    的頭像 發(fā)表于 04-15 14:57 ?129次閱讀
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>開發(fā)板</b>網(wǎng)絡(luò)配置方法

    基于RV1126開發(fā)板的按鍵測試方法與例程

    RV1126開發(fā)板的按鍵測試方法與例程詳細(xì)描述
    的頭像 發(fā)表于 04-15 17:03 ?171次閱讀
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>開發(fā)板</b>的按鍵測試方法與例程

    RV1126 yolov8訓(xùn)練部署教程

    本教程針對(duì)目標(biāo)檢測算法yolov8的訓(xùn)練部署到EASY-EAI-Nano(RV1126)進(jìn)行說明,而數(shù)據(jù)標(biāo)注方法可以參考我們往期的文章。
    的頭像 發(fā)表于 04-18 15:18 ?284次閱讀
    <b class='flag-5'>RV1126</b> yolov8<b class='flag-5'>訓(xùn)練</b><b class='flag-5'>部署</b>教程

    基于RV1126開發(fā)板實(shí)現(xiàn)駕駛員行為檢測方案

    RV1126開發(fā)板上實(shí)現(xiàn)駕駛員行為檢測:通過圖像識(shí)別出這幾種行為:打電話、抽煙、疲勞駕駛。
    的頭像 發(fā)表于 04-18 17:47 ?354次閱讀
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>開發(fā)板</b>實(shí)現(xiàn)駕駛員行為檢測方案

    基于RV1126開發(fā)板實(shí)現(xiàn)人臉檢測方案

    RV1126開發(fā)板上實(shí)現(xiàn)人臉檢測:在圖像中找出人臉,以及每張人臉的landmarks位置。 方案設(shè)計(jì)邏輯流程圖,方案代碼分為分為兩個(gè)業(yè)務(wù)流程,主體代碼負(fù)責(zé)抓取、合成圖像, 算法代碼負(fù)責(zé)人臉檢測功能。
    的頭像 發(fā)表于 04-21 10:21 ?99次閱讀
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>開發(fā)板</b>實(shí)現(xiàn)人臉檢測方案

    基于RV1126開發(fā)板實(shí)現(xiàn)自學(xué)習(xí)圖像分類方案

    RV1126開發(fā)板上實(shí)現(xiàn)自學(xué)習(xí):在識(shí)別前對(duì)物體圖片進(jìn)行模型學(xué)習(xí),訓(xùn)練完成后通過算法分類得出圖像的模型ID。 方案設(shè)計(jì)邏輯流程圖,方案代碼分為分為兩個(gè)業(yè)務(wù)流程,主體代碼負(fù)責(zé)抓取、合成圖像,算法代碼負(fù)責(zé)
    的頭像 發(fā)表于 04-21 13:37 ?11次閱讀
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>開發(fā)板</b>實(shí)現(xiàn)自學(xué)習(xí)圖像分類方案

    基于RV1126開發(fā)板實(shí)現(xiàn)人臉檢測方案

    RV1126開發(fā)板上實(shí)現(xiàn)人臉檢測:在圖像中找出人臉,以及每張人臉的landmarks位置。 方案設(shè)計(jì)邏輯流程圖,方案代碼分為分為兩個(gè)業(yè)務(wù)流程,主體代碼負(fù)責(zé)抓取、合成圖像, 算法代碼負(fù)責(zé)人臉檢測功能。
    的頭像 發(fā)表于 04-21 14:00 ?13次閱讀
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>開發(fā)板</b>實(shí)現(xiàn)人臉檢測方案

    基于RV1126開發(fā)板實(shí)現(xiàn)人臉檢測方案

    RV1126開發(fā)板上實(shí)現(xiàn)人臉檢測:在圖像中找出人臉,以及每張人臉的landmarks位置。 方案設(shè)計(jì)邏輯流程圖,方案代碼分為分為兩個(gè)業(yè)務(wù)流程,主體代碼負(fù)責(zé)抓取、合成圖像, 算法代碼負(fù)責(zé)人臉檢測功能。
    的頭像 發(fā)表于 04-21 17:59 ?225次閱讀
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>開發(fā)板</b>實(shí)現(xiàn)人臉檢測方案