国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

yolov5訓(xùn)練自己的pt文件,轉(zhuǎn)onnx,再轉(zhuǎn)成rknn,到RK3588開發(fā)板運(yùn)行測試

這篇具有很好參考價(jià)值的文章主要介紹了yolov5訓(xùn)練自己的pt文件,轉(zhuǎn)onnx,再轉(zhuǎn)成rknn,到RK3588開發(fā)板運(yùn)行測試。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

一、訓(xùn)練自己的模型

  1. yolov5訓(xùn)練好自己的模型,例如訓(xùn)練完后,名稱為best.pt,路徑為runs/exp/weights/best.pt。

  1. 采用detect.py文件驗(yàn)證best.pt可以正常檢測目標(biāo),再進(jìn)行下一步工作。

二、pt轉(zhuǎn)onnx

  1. 修改utils/yolo.py文件的后處理部分,將class Detect(nn.Module) 類的子函數(shù)forward由

def forward(self, x):        z = []  # inference outputfor i in range(self.nl):            x[i] = self.m[i](x[i])  # conv            bs, _, ny, nx = x[i].shape  # x(bs,255,20,20) to x(bs,3,20,20,85)            x[i] = x[i].view(bs, self.na, self.no, ny, nx).permute(0,1,3,4,2).contiguous()ifnot self.training:  # inferenceif self.grid[i].shape[2:4] != x[i].shape[2:4] or self.onnx_dynamic:                    self.grid[i], self.anchor_grid[i] = self._make_grid(nx, ny, i)                y = x[i].sigmoid()if self.inplace:                    y[...,0:2] = (y[...,0:2] * 2. - 0.5 + self.grid[i]) * self.stride[i]  # xy                    y[...,2:4] = (y[...,2:4] * 2) ** 2 * self.anchor_grid[i]  # whelse:  # for YOLOv5 on AWS Inferentia https://github.com/ultralytics/yolov5/pull/2953                    xy = (y[...,0:2] * 2. - 0.5 + self.grid[i]) * self.stride[i]  # xy                    wh = (y[...,2:4] * 2) ** 2 * self.anchor_grid[i]  # wh                    y = torch.cat((xy, wh, y[...,4:]), -1)                z.append(y.view(bs, -1, self.no))return x if self.training else (torch.cat(z,1), x)

修改為:

def forward(self, x):        z = []  # inference outputfor i in range(self.nl):            x[i] = self.m[i](x[i])  # convreturn x

注意:訓(xùn)練和檢測的時(shí)候,yolo.py文件應(yīng)保持原來的樣子。

  1. 修改export.py文件

2.1修改export_onnx函數(shù)以下內(nèi)容:

(1)將opset_version=opset?修改為:opset_version=12;

(2)修改outputnames為:?output_names=['out378', 'out439', 'out500'])

(3)刪除output_names后的dynamic段落;

2.2?修改parse_opt函數(shù)以下內(nèi)容:

(1)將--data 的default修改為自己的yaml文件路徑;

(2)將--weights的default修改為自己的pt文件路徑:runs/exp/weights/best.pt。

(3)運(yùn)行export.py文件,會(huì)在pt所在文件夾下生成onnx文件。

三、onnx轉(zhuǎn)rknn

  1. 創(chuàng)建rknn虛擬環(huán)境進(jìn)行轉(zhuǎn)換。(已創(chuàng)建rknn虛擬環(huán)境,則跳至下一步)

需要的配置在rknn-toolkit2(-master)文件夾?的doc/requirements_cp38-1.4.0.txt中,按照以下步驟進(jìn)行創(chuàng)建:

(1)進(jìn)入rknn-toolkit2(-master)文件夾,右鍵打開終端,

(2)conda創(chuàng)建虛擬環(huán)境rknn:

conda create -n rknn python=3.8

(3)安裝需要的環(huán)境:

pip install -r doc/requirements_cp38-1.4.0.txt -i https://pypi.douban.com/simple
  1. 進(jìn)入rknpu2/examples/rknn_yolov5_demo/convert_rknn_demo/yolov5文件夾。

(1)將onnx文件復(fù)制到onnx_models文件夾下。

(2)將需要檢測的圖片例如mmj.jpg放入當(dāng)前路徑。

(3)將dataset.txt內(nèi)容修改為mmj.jpg。

  1. 修改onnx2rknn.py文件:

(1)修改MODEL_PATH = './onnx_models/best.onnx'

(2)修改檢測圖片名稱im_file = './mmj.jpg'

(3)修改生成的rknn文件名稱RKNN_MODEL_PATH = './{}/best.rknn'.format(OUT_DIR,exp)

  1. 修改運(yùn)行環(huán)境為rknn虛擬環(huán)境,運(yùn)行onnx2rknn.py文件,生成的best.rknn文件在rknn_models文件夾下。

四、rknn編譯

  1. 進(jìn)入rknpu2/examples/rknn_yolov5_demo/convert_rknn_demo文件夾。

(1)將best.rknn文件復(fù)制到model/RK3588文件夾。

(2)將mmj.jpg?和?dataset.txt文件復(fù)制到model文件夾。

  1. 修改?/include/postprocess.h?文件中的?OBJ_CLASS_NUM?為自己訓(xùn)練的目標(biāo)種類個(gè)數(shù)。

  1. 修改 /mode/coco_80_labels_list.txt文件內(nèi)容為自己訓(xùn)練的種類名稱。

  1. gcc編譯器配置(如已喔誒之,則跳至下一步5)

(1)下載gcc編譯器并解壓至自定義路徑(xxx/RK3588/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu)

(2)添加gcc編譯器環(huán)境變量:在終端輸入命令?vim /etc/profile。在文件末端添加gcc編譯器路徑/bin:

export PATH=$PATH:/home/yf01/ssd/RK3588/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu/bin

(3):wq?保存退出。

  1. 修改build-linux_RK3588.sh文件:

(1)修改TARGET_SOC="rk3588"

(2)修改gcc編譯器路徑為gcc編譯器所在位置。

export TOOL_CHAIN=/home/yf01/ssd/RK3588/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu
  1. 運(yùn)行環(huán)境為rknn虛擬環(huán)境,運(yùn)行build-linux_RK3588.sh文件,生成install文件夾。文件夾中的rknn_yolov5_demo_Linux即為可以在RK3588開發(fā)板上運(yùn)行的文件。

五、RK3588開發(fā)板上運(yùn)行

  1. 將rknn_yolov5_demo_Linux文件夾復(fù)制到rk3588開發(fā)板上,進(jìn)入rknn_yolov5_demo_Linux文件夾。

  1. 打開終端,輸入指令:

./rknn_yolov5_demo ./model/RK3588/best.rknn ./model/mmj.jpg
  1. 運(yùn)行結(jié)果為out.jpg,即mmj.jpg的檢測結(jié)果。

注意:待檢測圖片尺寸應(yīng)大于訓(xùn)練圖片尺寸,否則可能報(bào)錯(cuò)。文章來源地址http://www.zghlxwxcb.cn/news/detail-427907.html

到了這里,關(guān)于yolov5訓(xùn)練自己的pt文件,轉(zhuǎn)onnx,再轉(zhuǎn)成rknn,到RK3588開發(fā)板運(yùn)行測試的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • yolov5 pt 模型 導(dǎo)出 onnx

    yolov5 pt 模型 導(dǎo)出 onnx

    在訓(xùn)練好的yolov5 pt 模型 可以 通過 export.py 進(jìn)行導(dǎo)出 onnx 導(dǎo)出流程 在 export.py 設(shè)置模型和數(shù)據(jù)源的yaml 在官方的文檔中 說明了可以導(dǎo)出的具體的類型。 在 --include 添加導(dǎo)出的類型, 不同的 類型的 環(huán)境要求不一樣,建議虛擬環(huán)境,比如onnx 和 openvino 的numpy 版本要求不一只,一

    2024年02月11日
    瀏覽(23)
  • ONNX版本YOLOV5-DeepSort (rknn版本已經(jīng)Ready)

    ONNX版本YOLOV5-DeepSort (rknn版本已經(jīng)Ready)

    目錄 1. 前言 2. 儲(chǔ)備知識 3. 準(zhǔn)備工作 4. 代碼修改的地方 5.結(jié)果展示 ????????之前一直在忙著寫文檔,之前一直做分類,檢測和分割,現(xiàn)在看到跟蹤算法,花了幾天時(shí)間找代碼調(diào)試,看了看,展示效果比單純的檢測要更加的炸裂一點(diǎn)。 ????????DeepSORT(Deep Learning to Tra

    2024年02月11日
    瀏覽(14)
  • YOLOV5(二):將pt轉(zhuǎn)為onnx模型并用opencv部署

    YOLOV5(二):將pt轉(zhuǎn)為onnx模型并用opencv部署

    yolov5s 6.0自帶export.py程序可將.pt轉(zhuǎn)為.onnx等,只需配置需要的環(huán)境即可。 1. 安裝環(huán)境 報(bào)錯(cuò):NVIDIA-tensorrt安裝失?。?解決:從源碼安裝TensorRt: ①安裝CUDNN和CudaToolKit等GPU配置 ②從官網(wǎng)下載需要的rt版本:https://developer.nvidia.com/nvidia-tensorrt-8x-download ③解壓后,將lib文件夾添加到

    2024年02月10日
    瀏覽(22)
  • 如何在windows系統(tǒng)下將yolov5的pt模型導(dǎo)出為onnx模型

    如何在windows系統(tǒng)下將yolov5的pt模型導(dǎo)出為onnx模型

    最近在做本科畢業(yè)設(shè)計(jì),要求是在樹莓派上部署yolo算法來實(shí)現(xiàn)火災(zāi)檢測,在網(wǎng)上查了很多資料,最后選擇用yolov5s模型先試著在樹莓派上部署,看下效果如何,由于從大佬那里拿到了yolov5火災(zāi)檢測模型,但想要將它移植到樹莓派上第一步要把pt模型轉(zhuǎn)換成onnx模型,原因我想大

    2023年04月12日
    瀏覽(23)
  • 【零基礎(chǔ)玩轉(zhuǎn)yolov5】yolov5訓(xùn)練自己的數(shù)據(jù)集(CPU訓(xùn)練+GPU訓(xùn)練)

    【零基礎(chǔ)玩轉(zhuǎn)yolov5】yolov5訓(xùn)練自己的數(shù)據(jù)集(CPU訓(xùn)練+GPU訓(xùn)練)

    ?博主也是最近開始玩yolov5的,甚至也是最近開始使用python的,很多東西都沒有接觸過,因此訓(xùn)練自己的數(shù)據(jù)集花了不少時(shí)間,所以想寫篇博客記錄一下,希望同樣是零基礎(chǔ)的小伙伴們可以更加輕松的上手。同時(shí)大家如果發(fā)現(xiàn)了錯(cuò)誤和理解偏差,歡迎指正。 參考資料: Yolo

    2024年02月06日
    瀏覽(31)
  • yolov5訓(xùn)練自己的數(shù)據(jù)集

    yolov5訓(xùn)練自己的數(shù)據(jù)集

    1.YOLOv5為開源代碼,直接從github上下載,首先打開github官網(wǎng),下載。 下載使用pycharm打開,有圖中這些文件,? ?其中 data:主要是存放一些超參數(shù)的配置文件(這些文件(yaml文件)是用來配置訓(xùn)練集和測試集還有驗(yàn)證集的路徑的,其中還包括目標(biāo)檢測的種類數(shù)和種類的名稱)

    2024年02月07日
    瀏覽(846)
  • 使用Yolov5訓(xùn)練自己的模型

    使用Yolov5訓(xùn)練自己的模型

    本文主要介紹如何運(yùn)用開源Yolov5模型,結(jié)合自己的數(shù)據(jù),訓(xùn)練其他目標(biāo)檢測模型。 基礎(chǔ)準(zhǔn)備工作: anaconda 適用Yolov5的虛擬環(huán)境 git上下載Yolov5并調(diào)通測試代碼 https://github.com/ultralytics/yolov5 https://github.com/ultralytics/yolov5 本次用的環(huán)境: python==3.7 pytorch==1.7.1 torchvision==0.8.2 torchaud

    2024年02月05日
    瀏覽(22)
  • yolov5訓(xùn)練自己的數(shù)據(jù)集問題排除

    D:ProgramDataAnaconda3envsyolov5python.exe D:/yxt/yolov5-master/train.py Traceback (most recent call last): ? File \\\"D:ProgramDataAnaconda3envsyolov5libsite-packagesgit__init__.py\\\", line 140, in module ? ? refresh() ? File \\\"D:ProgramDataAnaconda3envsyolov5libsite-packagesgit__init__.py\\\", line 127, in refresh ? ? if not Git.refresh(p

    2024年04月11日
    瀏覽(96)
  • 【YOLO】yolov5訓(xùn)練自己的數(shù)據(jù)集

    【YOLO】yolov5訓(xùn)練自己的數(shù)據(jù)集

    【Python】樸實(shí)無華的yolov5環(huán)境配置(一) ??上面前期教程中,大致介紹了yolov5開發(fā)環(huán)境的配置方法和yolov5項(xiàng)目的基本結(jié)構(gòu),下一步就是基于yolov5預(yù)訓(xùn)練模型來訓(xùn)練自己的數(shù)據(jù)集,這對于只是想要使用yolov5這個(gè)工具的人,還是想要深入研究yolov5類似的目標(biāo)識別算法的人,都是

    2024年02月11日
    瀏覽(93)
  • YOLOv5訓(xùn)練自己的數(shù)據(jù)集實(shí)現(xiàn)視頻的識別

    YOLOv5訓(xùn)練自己的數(shù)據(jù)集實(shí)現(xiàn)視頻的識別

    寫在前面 我本來是使用這個(gè)模型進(jìn)行手寫簽名的定位,但是因?yàn)楸荣惖闹鬓k方原因,數(shù)據(jù)不允許公開,所以我使用動(dòng)物世界的一段開頭視屏來制作我的數(shù)據(jù)集。這整個(gè)模型跑通的過程中,我參考了很多不錯(cuò)的博客,寫這篇博客的原因是記錄一下我的所見所感。我的模型是在

    2024年02月02日
    瀏覽(94)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包