chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于瑞芯微RK3576的 yolov5訓練部署教程

ljx2016 ? 來源:ljx2016 ? 作者:ljx2016 ? 2025-09-11 16:43 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1.Yolov5簡介

YOLOv5 模型是 Ultralytics 公司于 2020 年 6 月 9 日公開發(fā)布的。YOLOv5 模型是基于 YOLOv3 模型基礎上改進而來的,有 YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x 四個模型。YOLOv5 相比YOLOv4 而言,在檢測平均精度降低不多的基礎上,具有均值權重文件更小,訓練時間和推理速度更短的特點。

YOLOv5 的網絡結構分為輸入端BackboneNeck、Head 四個部分。

教程針對目標檢測算法yolov5的訓練和部署到EASY-EAI-Orin-nano(RK3576)進行說明,而數(shù)據標注方法可以參考我們往期的文章。

wKgZPGjCi66ATSh3AAAZBlGnRRQ219.jpg

2.準備數(shù)據集

2.1數(shù)據集下載

本教程以口罩檢測為例,數(shù)據集的百度網盤下載鏈接為:

https://pan.baidu.com/s/17nJq2dQXxTHwc8eo8sNj5A?pwd=1234 提取碼:1234

解壓完成后得到以下三個文件:

wKgZO2jCi6-AV3V9AABJFIgJhB0282.jpg

2.2生成路徑列表

在數(shù)據集目錄下執(zhí)行腳本list_dataset_file.py :

python list_dataset_file.py

執(zhí)行現(xiàn)象如下圖所示:

wKgZPGjCi6-AOUCaAAAMWYdlwEc877.jpg

得到訓練樣本列表文件train.txt和驗證樣本列表文件valid.txt,如下圖所示:

wKgZO2jCi6-AbG2eAAA2n6HT3xw823.jpg

3. Yolov5目標檢測算法訓練

3.1訓練源碼下載

通過git工具,在PC端克隆遠程倉庫(注:此處可能會因網絡原因造成卡頓,請耐心等待):

git clone https://github.com/EASY-EAI/yolov5.git
wKgZPGjCi7CAWbm6AAAlv3fiqoE288.jpg

得到下圖所示目錄:

wKgZO2jCi7CAZgCiAAC8qlirzms317.jpg

3.2 訓練模型

切換到y(tǒng)olov5的工作目錄,接下來以訓練一個口罩檢測模型為例進行說明。需要修改data/mask.yaml里面的train.txt和valid.txt的路徑。

wKgZPGjCi7CAPx3IAAA7MJ-tjjk543.jpg

執(zhí)行下列腳本訓練算法模型:

python train.py --data mask.yaml --cfg yolov5s.yaml --weights "" --batch-size 64

開始訓練模型,如下圖所示:

wKgZO2jCi7GAetEBAAAXHusQMkA398.jpg

關于算法精度結果可以查看./runs/train/results.csv獲得。

3.3 在PC端進行模型預測

訓練完畢后,在./runs/train/exp/weights/best.pt生成通過驗證集測試的最好結果的模型。同時可以執(zhí)行模型預測,初步評估模型的效果:

python detect.py --source data/images --weights ./runs/train/exp/weights/best.pt --conf 0.5
wKgZPGjCi7GAeoilAADs0RCK250451.jpg

3.4 pt模型轉換為onnx模型

算法部署到EASY-EAI-Nano需要轉換為RKNN模型,而轉換RKNN之前可以把模型先轉換為ONNX模型,同時會生成best.anchors.txt:

python export.py --include onnx --rknpu RV1126 --weights ./runs/train/exp/weights/best.pt

生成如下圖所示:

wKgZO2jCi7KAVE-FAAAi_esGG8M616.jpg

4. rknn-toolkit模型轉換

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

onnx模型需要轉換為rknn模型才能在EASY-EAI-Orin-nano運行,所以需要先搭建rknn-toolkit模型轉換工具的環(huán)境。當然tensorflowtensroflow lite、caffe、darknet等也是通過類似的方法進行模型轉換,只是本教程onnx為例。

4.1.1概述

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

wKgZPGjCi7KAMxgvAAAnr_VECI4449.jpg

4.1.2 下載模型轉換工具

為了保證模型轉換工具順利運行,請下載網盤里“06.AI算法開發(fā)/01.rknn-toolkit2模型轉換工具/rknn-toolkit2-v2.3.0/docker/rknn-toolkit2-v2.3.0-cp38-docker.tar.gz”。

網盤下載鏈接:https://pan.baidu.com/s/1J86chdq1klKFnpCO1RCcEA?pwd=1234提取碼:1234

4.1.3把工具移到ubuntu20.04

把下載完成的docker鏡像移到我司的虛擬機ubuntu20.04的rknn-toolkit2目錄,如下圖所示:

wKgZO2jCi7KADKbgAAB_SG-mbmk651.jpg

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

在該目錄打開終端

wKgZO2jCi7KAXCF8AACyI5QMrO0712.jpg

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

docker load --input rknn-toolkit2-v2.3.0-cp38-docker.tar.gz

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

docker run -t -i --privileged -v /dev/bus/usb:/dev/bus/usb rknn-toolkit2:2.3.0-cp38 /bin/bash

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

wKgZPGjCi7OAIrYiAABryQPSolA687.jpg

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

wKgZO2jCi7OADrkrAACWNEhLApg681.jpg

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

4.2 型轉換為RKNN

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

wKgZPGjCi7OABV1-AAHHH0-IIWk138.jpg

4.2.1 模型轉換Demo下載

下載百度網盤鏈接:https://pan.baidu.com/s/1yWWn9JryiAOrSBNGWxuFMw?pwd=1234 提取碼:1234。把 yolov5_model_convert.tar.bz2和quant_dataset.zip解壓到虛擬機,如下圖所示:

wKgZO2jCi7SAI5CLAACKAoWMdeo769.jpg

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

執(zhí)行以下指令把工作區(qū)域映射進docker鏡像,其中/home/developer/rknn-toolkit2/model_convert為工作區(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-toolkit2/model_convert:/test rknn-toolkit2:2.3.0-cp38 /bin/bash

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

wKgZPGjCi7SAY-qQAABzg7x03n4829.jpg

4.2.3模型轉換Demo目錄結構介紹

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

wKgZO2jCi7SAT9iHAACL4yNKHUA152.jpg

yolov5_model_convert文件夾存放以下內容,如下圖所示:

wKgZPGjCi7SASxmJAACdT4axvJY862.jpg

4.2.4 生成量化圖片列表

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

cd /test/yolov5_model_convert

如下圖所示:

wKgZO2jCi7WAOcfRAABuTTvb7U4869.jpg

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

python gen_list.py

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

wKgZPGjCi7WASNdZAACLJuF7N4s868.jpg

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

wKgZO2jCi7WATxPBAACU0srfwkU598.jpg

4.2.5 onnx模型轉換為rknn模型

rknn_convert.py腳本默認進行int8量化操作,腳本代碼清單如下所示:

import os
import urllib
import traceback
import time
import sys
import numpy as np
import cv2
from rknn.api import RKNN
ONNX_MODEL = 'best.onnx'
RKNN_MODEL = './bsd_person.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=[[0, 0, 0]],
    std_values=[[255, 255, 255]],
    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 yolov5 failed!')
exit(ret)
print('done')
# Build model
print('--> Building model')
ret = rknn.build(pre_compile=True,do_quantization=QUANTIZE_ON, dataset=DATASET)
if ret != 0:
print('Build yolov5 failed!')
exit(ret)
print('done')
# Export RKNN model
print('--> Export RKNN model')
ret = rknn.export_rknn(RKNN_MODEL)
if ret != 0:
print('Export yolov5rknn failed!')
exit(ret)
print('done')

把onnx模型best.onnx放到y(tǒng)olov5_model_convert目錄,并執(zhí)行rknn_convert.py腳本進行模型轉換:

python rknn_convert.py

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

wKgZPGjCi7aAXYwcAAjT94TGbhY676.jpg

5. 模型部署示例

5.1 模型部署示例介紹

本小節(jié)展示yolov5模型的在EASY EAI Orin nano的部署過程,該模型僅經過簡單訓練供示例使用,不保證模型精度。

5.2 源碼下載以及例程編譯

下載yolov5 C Demo示例文件。

百度網盤鏈接: (https://pan.baidu.com/s/1adoQOIsm1C5GIxeh0UnK5g?pwd=1234提取碼:1234)。

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

tar -xvf yolov5_detect_C_demo.tar.bz2

下載解壓后如下圖所示:

wKgZPGjCi7aABJofAACcQFLpKjk783.jpg

通過adb接口連接EASY-EAI-Orin-nano,,連接方式如下圖所示:

wKgZO2jCi7aAAhJdAA50AXF5fek892.jpg

接下來需要通過adb把源碼傳輸?shù)桨蹇ㄉ?,先切換目錄然后執(zhí)行以下指令:

cd ~/rknn-toolkit2
adb push yolov5_detect_C_demo /userdata
wKgZPGjCi7eAU9KYAACcZBpRPd8140.jpg

登錄到板子切換到例程目錄執(zhí)行編譯操作:

adb shell
cd /userdata/yolov5_detect_C_demo
chmod 777 build.sh
./build.sh
wKgZO2jCi7eASPMBAAHnurWwCWk490.jpg

5.3 在開發(fā)板執(zhí)行yolov5 目標檢測算法

編譯成功后切換到可執(zhí)行程序目錄,如下所示:

 cd  /userdata/yolov5_detect_C_demo/yolov5_detect_demo_release

運行例程命令如下所示:

chmod 777 yolov5_detect_demo
./yolov5_detect_demo

執(zhí)行結果如下圖所示,算法執(zhí)行時間為31ms:

wKgZPGjCi7iAdPtLAABlTxmvNU0458.jpg

退出板卡環(huán)境,取回測試圖片:

exit
adb pull /userdata/yolov5_detect_C_demo/yolov5_detect_demo_release/result.jpg .

測試結果如下圖所示:

wKgZO2jCi7iAYvgpAADtQet2kQ4854.jpg

至此,yolov5目標檢測例程已成功在板卡運行。

6. 資料下載

資料名稱 鏈接
訓練代碼github https://github.com/EASY-EAI/yolov5
算法教程完整源碼包 https://pan.baidu.com/s/1wlD6z7G9puELd0zgRC3BjA?pwd=1234 提取碼:1234

銷售與服務網絡

wKgZO2jCi7mAfIHLAAA1uIuULuY903.jpg

廣州靈眸科技有限公司

地址:廣州市黃埔區(qū)東明三路18號智造谷創(chuàng)新園D棟7層703

郵編:510530

網址:www.easy-eai.com

電話:18617322361(劉先生)

請您用以上方式聯(lián)系我們,我們會為您安排樣機現(xiàn)場演示,感謝您對我公司產品的關注!

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 瑞芯微
    +關注

    關注

    26

    文章

    662

    瀏覽量

    53118
  • rk3576
    +關注

    關注

    1

    文章

    210

    瀏覽量

    1232
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    國產開發(fā)板的端側AI測評-基于米爾RK3576

    ,國產自主可控必須搞起來。那與非網本期內容就跟自主可控強關聯(lián)——評測一款基于國產SoC的板卡,由米爾電子推出的RK3576開發(fā)板(MYD-LR
    發(fā)表于 02-14 16:29

    【米爾RK3576開發(fā)板評測】+項目名稱YOLOV5目標檢測

    /examples/yolov5/model ./download_model.sh 下載的是一個ONNX格式的神經網絡模型,但發(fā)現(xiàn)它無法在系統(tǒng)中直接運行。為了解決這個問題,您計
    發(fā)表于 02-15 13:24

    適配多種系統(tǒng),米爾RK3576核心板解鎖多樣化應用

    米爾電子發(fā)布的基于 RK3576 核心板和開發(fā)板,具備高性能數(shù)據處理能力、領先的AI智能分析功能、多樣化的顯示與操作體驗以及強大的擴展性與兼容性,適用于多種應用場景。目前米爾電子
    發(fā)表于 05-23 16:07

    Onenet云網關方案應用--基于米爾RK3576開發(fā)板

    本文將介紹基于米爾電子MYD-LR3576開發(fā)板(米爾基于RK3576開發(fā)板)的Onenet云網關應用方案測試。 摘自優(yōu)秀創(chuàng)作者-小手
    發(fā)表于 06-06 16:54

    基于米爾RK3576開發(fā)板的Qwen2-VL-3B模型NPU多模態(tài)部署評測

    關鍵詞: RK3576、NPU(神經網絡處理器)、端側小語言模型(SLM)、多模態(tài) LLM、邊緣 AI 部署、開發(fā)板、RKLLM隨著
    發(fā)表于 08-29 18:08

    求大佬分享RK3399運行官方yolov5 C++代碼

    求大佬分享RK3399運行官方yolov5 C++代碼
    發(fā)表于 03-07 06:33

    yolov5訓練部署全鏈路教程

    本教程針對目標檢測算法yolov5訓練部署到EASY-EAI-Nano(RV1126)進行說明。
    的頭像 發(fā)表于 01-05 18:00 ?4145次閱讀
    <b class='flag-5'>yolov5</b><b class='flag-5'>訓練</b><b class='flag-5'>部署</b>全鏈路教程

    RK3576|觸覺智能:開啟科技新篇章

    ,創(chuàng)新不止步!”——全新芯片RK3576即將震撼登場。指引科技風潮,創(chuàng)造未來無限可能!這款芯片在
    的頭像 發(fā)表于 03-21 08:31 ?1887次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b><b class='flag-5'>RK3576</b>|觸覺智能:開啟科技新篇章

    有獎丨米爾 RK3576開發(fā)板免費試用

    米爾與合作發(fā)布的新品基于RK3576應用
    的頭像 發(fā)表于 11-12 01:00 ?1079次閱讀
    有獎丨米爾 <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b><b class='flag-5'>RK3576</b>開發(fā)板免費試用

    追加名額丨米爾RK3576開發(fā)板有獎試用

    米爾與合作發(fā)布的新品基于RK3576應用
    的頭像 發(fā)表于 11-22 01:00 ?916次閱讀
    追加名額丨米爾<b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b><b class='flag-5'>RK3576</b>開發(fā)板有獎試用

    RK3576 yolov11-seg訓練部署教程

    級的精確目標檢測與分割,適用于自動駕駛、醫(yī)學影像、工業(yè)檢測等對精度和速度要求苛刻的場景。 ? ? ? ?本教程針對目標分割算法yolov11 seg的訓練部署到EASY-EAI-Orin-nano(
    的頭像 發(fā)表于 04-16 09:43 ?1604次閱讀
    <b class='flag-5'>RK3576</b> <b class='flag-5'>yolov</b>11-seg<b class='flag-5'>訓練</b><b class='flag-5'>部署</b>教程

    RK3576主板YNH-536-規(guī)格書

    RK3576主板YNH-536-V1
    發(fā)表于 05-19 09:51 ?4次下載

    RK3576 Yolov11訓練部署教程

    、使用最廣泛的YOLO變體。YOLO11將延續(xù)YOLO系列的傳奇。本教程針對目標檢測算法yolo11的訓練部署到EASY-EAI-Orin-nano(RK3576)進
    的頭像 發(fā)表于 07-25 15:22 ?555次閱讀
    <b class='flag-5'>RK3576</b> <b class='flag-5'>Yolov</b>11<b class='flag-5'>訓練</b><b class='flag-5'>部署</b>教程

    yolov5訓練部署全鏈路教程

    m、YOLOv5l、YOLOv5x四個模型。YOLOv5相比YOLOv4而言,在檢測平均精度降低不多的基礎上,具有均值權重文件更小,訓練時間
    的頭像 發(fā)表于 07-25 15:22 ?764次閱讀
    <b class='flag-5'>yolov5</b><b class='flag-5'>訓練</b><b class='flag-5'>部署</b>全鏈路教程

    RK3576RK3576S有什么區(qū)別,性能參數(shù)配置與型號差異解析

    第二代8nm高性能AIOT平臺RK3576家族再添新成員-RK3576S,先說結論:相較主型號的R
    的頭像 發(fā)表于 08-14 23:57 ?1291次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b><b class='flag-5'>RK3576</b>與<b class='flag-5'>RK3576</b>S有什么區(qū)別,性能參數(shù)配置與型號差異解析