AVt天堂网 手机版,亚洲va久久久噜噜噜久久4399,天天综合亚洲色在线精品,亚洲一级Av无码毛片久久精品

當(dāng)前位置:首頁 > 科技  > 軟件

將目標(biāo)檢測模型導(dǎo)出到C++|RT-DETR、YOLO-NAS、YOLOv10、YOLOv9、YOLOv8

來源: 責(zé)編: 時間:2024-09-10 09:45:15 102觀看
導(dǎo)讀最近,出現(xiàn)了更新的YOLO模型,還有RT-DETR模型,這是一個聲稱能擊敗YOLO模型的變換器模型,我想將這些模型導(dǎo)出并進(jìn)行比較,并將它們添加到我的庫中。在這篇文章中,我將帶你了解如何將這些模型導(dǎo)出到ONNX并運行它們,然后最終比較

最近,出現(xiàn)了更新的YOLO模型,還有RT-DETR模型,這是一個聲稱能擊敗YOLO模型的變換器模型,我想將這些模型導(dǎo)出并進(jìn)行比較,并將它們添加到我的庫中。在這篇文章中,我將帶你了解如何將這些模型導(dǎo)出到ONNX并運行它們,然后最終比較這些模型的速度。Zpa28資訊網(wǎng)——每日最新資訊28at.com

Zpa28資訊網(wǎng)——每日最新資訊28at.com

Zpa28資訊網(wǎng)——每日最新資訊28at.com

將RT-DETR模型導(dǎo)出到ONNX

Zpa28資訊網(wǎng)——每日最新資訊28at.com

這是從模型的GitHub頁面獲取的模型示例輸出Zpa28資訊網(wǎng)——每日最新資訊28at.com

為了導(dǎo)出模型,我們需要從模型的GitHub倉庫克隆代碼(https://github.com/lyuwenyu/RT-DETR)。我將向你展示如何導(dǎo)出模型的第二個版本。如果你想使用第一個版本,導(dǎo)出步驟應(yīng)該是類似的。Zpa28資訊網(wǎng)——每日最新資訊28at.com

git clone https://github.com/lyuwenyu/RT-DETR.gitcd RT-DETR/rtdetrv2_pytorch

然后我們需要創(chuàng)建一個Python虛擬環(huán)境來運行代碼。如果你已經(jīng)有一個工作的環(huán)境,那么你可以跳過這一步。Zpa28資訊網(wǎng)——每日最新資訊28at.com

python -m venv rtdetrv2-envsource rtdetrv2-env/bin/activatepip install -r requirements.txtpip install scipy

代碼需要scipy庫,但它不在需求文件中,你需要手動安裝。然后我們需要下載coco數(shù)據(jù)集的YAML配置文件和模型。我們將在這里下載的模型是中等大小的模型。你可以在這里找到其他模型的鏈接。Zpa28資訊網(wǎng)——每日最新資訊28at.com

mkdir modelscd modelswget -c https://github.com/lyuwenyu/storage/releases/download/v0.1/rtdetrv2_r34vd_120e_coco_ema.pthwget -O dataset/coco_detection.yml https://raw.githubusercontent.com/ultralytics/ultralytics/main/ultralytics/cfg/datasets/coco.yaml

現(xiàn)在我們可以導(dǎo)出模型了。請注意,如果你改變了模型大小,那么你需要更改下面的配置文件路徑以匹配模型。Zpa28資訊網(wǎng)——每日最新資訊28at.com

python tools/export_onnx.py -c configs/rtdetrv2/rtdetrv2_r34vd_120e_coco.yml -r models/rtdetrv2_r34vd_120e_coco_ema.pth --check

現(xiàn)在你有了你的模型(在rtdetrv2_pytorch目錄中的model.onnx文件)。你可以進(jìn)入運行模型部分。Zpa28資訊網(wǎng)——每日最新資訊28at.com

Zpa28資訊網(wǎng)——每日最新資訊28at.com

將YOLO-NAS導(dǎo)出到ONNX

Zpa28資訊網(wǎng)——每日最新資訊28at.com

與模型的GitHub頁面上的其他模型相比,YOLO-NAS模型Zpa28資訊網(wǎng)——每日最新資訊28at.com

為了導(dǎo)出YOLO-NAS模型,你需要安裝super_gradients庫,然后運行以下Python代碼。模型變體是YOLO_NAS_S、YOLO_NAS_M、YOLO_NAS_L。Zpa28資訊網(wǎng)——每日最新資訊28at.com

from super_gradients.training import modelsfrom super_gradients.common.object_names import Modelsmodel = models.get(Models.YOLO_NAS_S, pretrained_weights="coco")model.eval()model.prep_model_for_conversion(input_size=[1, 3, 640, 640])model.export("yolo_nas_s.onnx", postprocessing=None, preprocessing=None)

現(xiàn)在你有了你的模型(yolo_nas_s.onnx文件)。你可以進(jìn)入運行模型部分。Zpa28資訊網(wǎng)——每日最新資訊28at.com

Zpa28資訊網(wǎng)——每日最新資訊28at.com

將YOLOv10導(dǎo)出到ONNX

Zpa28資訊網(wǎng)——每日最新資訊28at.com

與模型的GitHub頁面上的其他模型相比,YOLOv10模型的延遲Zpa28資訊網(wǎng)——每日最新資訊28at.com

我們需要克隆GitHub倉庫(https://github.com/THU-MIG/yolov10)并創(chuàng)建一個Conda環(huán)境來運行導(dǎo)出代碼。Zpa28資訊網(wǎng)——每日最新資訊28at.com

git clone https://github.com/THU-MIG/yolov10.gitcd yolov10conda create -n yolov10-env python=3.9conda activate yolov10-envpip install -r requirements.txtpip install -e .

現(xiàn)在我們需要導(dǎo)出模型。模型的前綴是jameslahm/,支持的模型有yolov10n、yolov10s、yolov10m、yolov10b、yolov10l、yolov10x。Zpa28資訊網(wǎng)——每日最新資訊28at.com

yolo export model=jameslahm/yolov10m format=onnx opset=13 simplify

現(xiàn)在你有了你的模型(yolov10目錄中的yolov10m.onnx文件)。你可以進(jìn)入運行模型部分。Zpa28資訊網(wǎng)——每日最新資訊28at.com

Zpa28資訊網(wǎng)——每日最新資訊28at.com

將YOLOv9導(dǎo)出到ONNX

Zpa28資訊網(wǎng)——每日最新資訊28at.com

與模型的GitHub頁面上的其他模型相比,YOLOv9模型的參數(shù)數(shù)量Zpa28資訊網(wǎng)——每日最新資訊28at.com

為了導(dǎo)出YOLOv9,你需要有一個工作的正常安裝的docker。你可以啟動一個容器并導(dǎo)出模型。你可以在這里找到模型文件。Zpa28資訊網(wǎng)——每日最新資訊28at.com

# Create an empty directory and cd into itgit clone https://github.com/WongKinYiu/yolov9.git# Now we have yolov9 folder in out current directory. Then we run the following line:docker run --name yolov9 -it -v `pwd`:`pwd` -w `pwd` --shm-size=64g nvcr.io/nvidia/pytorch:21.11-py3# Install dependenciesapt updateapt install -y zip htop screen libgl1-mesa-glxpip install seaborn thopcd yolov9# Download the modelwget https://github.com/WongKinYiu/yolov9/releases/download/v0.1/yolov9-s.pt# Export the modelpython export.py --weights yolov9-s.pt --include onnx

現(xiàn)在你有了你的模型(yolov9目錄中的yolov9-s.onnx文件)。你可以進(jìn)入運行模型部分。Zpa28資訊網(wǎng)——每日最新資訊28at.com

Zpa28資訊網(wǎng)——每日最新資訊28at.com

將YOLOv8導(dǎo)出到ONNX

Zpa28資訊網(wǎng)——每日最新資訊28at.com

與模型的GitHub頁面上的其他模型相比,YOLOv8模型Zpa28資訊網(wǎng)——每日最新資訊28at.com

將YOLOv8導(dǎo)出比其他模型更容易。你只需要安裝ultralytics并導(dǎo)出模型。支持的模型有yolov8n、yolov8s、yolov8m、yolov8l和yolov8x。如果你想的話,你可以創(chuàng)建一個虛擬環(huán)境來隔離安裝。Zpa28資訊網(wǎng)——每日最新資訊28at.com

pip install ultralyticswget https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8n.ptyolo export model=yolov8n.pt format=onnx

現(xiàn)在你有了模型(yolov8n.onnx文件),可以進(jìn)入運行模型部分。Zpa28資訊網(wǎng)——每日最新資訊28at.com

Zpa28資訊網(wǎng)——每日最新資訊28at.com

運行模型

現(xiàn)在你有了你想要導(dǎo)出的ONNX模型,你可以使用我編寫的庫來運行這些模型。你可以在這里找到這個庫。庫的README文件解釋了如何鏈接到庫。以下是如何使用庫中的RT-DETR模型的示例。Zpa28資訊網(wǎng)——每日最新資訊28at.com

#include <objdetex/objdetex.h>int main(){    using namespace ObjDetEx;    Detector detector(Detector::RT_DETR, "<path/to/onnx/model>");    Size batchSize = 1;    double detectionThreshold = .6;    // Fill this with batchSizex3x640x640 image data    float *imagePtr = nullptr;    // Fill this with batchSizex2 dimension data, not needed for YOLO models    // NOTE: 2 is width and height of the original images before resizing to 640x640    int64_t *dimensionPtr = nullptr;    auto detections = detector(Tensor(imagePtr, {batchSize, 3, 640, 640}),  //                               Tensor(dimensionPtr, {batchSize, 2}), detectionThreshold);    // Use the detections    return 0;}

本文鏈接:http://www.tebozhan.com/showinfo-26-112709-0.html將目標(biāo)檢測模型導(dǎo)出到C++|RT-DETR、YOLO-NAS、YOLOv10、YOLOv9、YOLOv8

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 提升效率必備!學(xué)習(xí) awk 命令,輕松搞定數(shù)據(jù)

下一篇: 通過 12 個示例探索 Python 列表與索引的奧秘

標(biāo)簽:
  • 熱門焦點
  • iPhone賣不動了!蘋果股價創(chuàng)年內(nèi)最大日跌幅:市值一夜蒸發(fā)萬億元

    8月5日消息,今天凌晨美股三大指數(shù)高開低走集體收跌,道指跌0.41%;納指跌0.36%;標(biāo)普500指數(shù)跌0.52%。熱門科技股也都變化極大,其中蘋果報181.99美元,跌4.8%,創(chuàng)
  • 一加首款折疊屏!一加Open渲染圖出爐:罕見單手可握小尺寸

    8月5日消息,此前就有爆料稱,一加首款折疊屏手機將會在第三季度上市,如今隨著時間臨近,新機的各種消息也開始浮出水面。據(jù)悉,這款新機將會被命名為&ldquo;On
  • CSS單標(biāo)簽實現(xiàn)轉(zhuǎn)轉(zhuǎn)logo

    轉(zhuǎn)轉(zhuǎn)品牌升級后更新了全新的Logo,今天我們用純CSS來實現(xiàn)轉(zhuǎn)轉(zhuǎn)的新Logo,為了有一定的挑戰(zhàn)性,這里我們只使用一個標(biāo)簽實現(xiàn),將最大化的使用CSS能力完成Logo的繪制與動畫效果。新logo
  • K8S | Service服務(wù)發(fā)現(xiàn)

    一、背景在微服務(wù)架構(gòu)中,這里以開發(fā)環(huán)境「Dev」為基礎(chǔ)來描述,在K8S集群中通常會開放:路由網(wǎng)關(guān)、注冊中心、配置中心等相關(guān)服務(wù),可以被集群外部訪問;圖片對于測試「Tes」環(huán)境或者
  • 一年經(jīng)驗在二線城市面試后端的經(jīng)驗分享

    忠告這篇文章只適合2年內(nèi)工作經(jīng)驗、甚至沒有工作經(jīng)驗的朋友閱讀。如果你是2年以上工作經(jīng)驗,請果斷劃走,對你沒啥幫助~主人公這篇文章內(nèi)容來自 「升職加薪」星球星友 的投稿,坐
  • Flowable工作流引擎的科普與實踐

    一.引言當(dāng)我們在日常工作和業(yè)務(wù)中需要進(jìn)行各種審批流程時,可能會面臨一系列技術(shù)和業(yè)務(wù)上的挑戰(zhàn)。手動處理這些審批流程可能會導(dǎo)致開發(fā)成本的增加以及業(yè)務(wù)復(fù)雜度的上升。在這
  • 一篇文章帶你了解 CSS 屬性選擇器

    屬性選擇器對帶有指定屬性的 HTML 元素設(shè)置樣式。可以為擁有指定屬性的 HTML 元素設(shè)置樣式,而不僅限于 class 和 id 屬性。一、了解屬性選擇器CSS屬性選擇器提供了一種簡單而
  • 每天一道面試題-CPU偽共享

    前言:了不起:又到了每天一到面試題的時候了!學(xué)弟,最近學(xué)習(xí)的怎么樣啊 了不起學(xué)弟:最近學(xué)習(xí)的還不錯,每天都在學(xué)習(xí),每天都在進(jìn)步! 了不起:那你最近學(xué)習(xí)的什么呢? 了不起學(xué)弟:最近在學(xué)習(xí)C
  • 聯(lián)想的ThinkBook Plus下一版曝光,鍵盤旁邊塞個平板

    ThinkBook Plus 是聯(lián)想的一個特殊筆記本類別,它在封面放入了一塊墨水屏,也給人留下了較為深刻的印象。據(jù)有人爆料,聯(lián)想的下一款 ThinkBook Plus 可能更特殊,它
Top