日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

TensorRT加速应用

發布時間:2023/12/15 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 TensorRT加速应用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

TensorRT加速應用?

tensorrtx下載

TensorRT是一個C++版本的深度學習架構,和tensorflow、pytorch是平行關系。我們想用TensorRT部署yolov5到開發板,那就分為兩步,1.安裝TensorRT,2.用TensorRT的語法重寫各訓練框架訓練的網絡。但是用TensorRT自己寫一遍網絡真的太麻煩了,我們也不會。那我們就可以用tensorrtx,這位大神用TensorRT的語法復現了各種經典網絡:

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-D45QQ1Jc-1642325226242)(TensorRT加速應用.assets/image-20220115200209423.png)]

網絡之多,一張截圖放不下,基本主流的網絡都已經能夠轉化

相當于把第2步幫我們做好了,這一個至關重要,它能將各框架訓練的模型文件轉變成tensorrtx支持的文件。

但是他對我們的環境提出了要求:

  • 要求一:tensorrtx要求cuda10.0 / cudnn7.6.5 / TensorRT7.0.0

  • 要求二:CUDA10.0要求顯卡驅動高于410.48

  • 顯卡對驅動的要求

    使用ubuntu-drivers devices來查看支持的顯卡驅動, 如果發現支持的驅動全都沒超過410.48,那這條路就走不通了。 如果支持>= 410.48的驅動,但你現在使用不是它, 那么可以用sudo apt install nvidia-driver-xxx來安裝
  • CUDA10.0的要求(其他版本的CUDA要求在這里):對ubuntu版本,系統內核,gcc,glibc的要求,

也就是我們要有:

  • 顯卡驅動,自行前往官網安裝,或者敲命令安裝就好了
  • >CUDA10.0,可以參考部署cuda和cudnn
  • >cuDNN7.6.5,可以參考部署cuda和cudnn
  • >TensorRT7.0.0.11,可以參考部署tensorrt
  • >opencv3.4.15,可以參考部署opencv

代碼下載:

需要用到兩個代碼:

  • yolov5 官方源碼 ,并配置好環境(最好是conda虛擬環境)

    cd ~ git clone https://github.com/ultralytics/yolov5 cd yolov5 pip install -r requirements.txt python detect.py

    運行之后,可以自動幫你下載yolov5s.pt,需要聯網,搞不定的話也可以直接去github下載,這個pt文件十分重要,后面加速應用會用到

  • tensorrtx 源碼

    cd ~ git clone https://github.com/wang-xinyu/tensorrtx

獲得.wts文件

將下載得到的yolov5s.pt文件復制到tensorrtx/yolov5目錄下,運行gen_wts即可得到.wts文件,這里共用yolov5的配置環境即可

python gen_wts.py yolov5s.pt

運行完成之后會得到yolov5s.wts

編譯運行,獲得.engine文件

在編譯運行之前,回顧TensorRT的安裝是用deb包安裝,還是從tar壓縮包安裝的,如果是從tar壓縮包安裝,這一步必不能省略,否則無法編譯完成

編輯tensorrtx/yolov5目錄下的CMakeLists.txt

# 替換這兩行 include_directories(/usr/include/x86_64-linux-gnu/) link_directories(/usr/lib/x86_64-linux-gnu/)include_directories(/home/{user_name}/TensorRT-{version}/include/) link_directories(/home/{user_name}/TensorRT-{version}/targets/x86_64-linux-gnu/lib/) # 保存退出

{user_name}:用戶名

{version}:TensorRT版本

cd ~/tensorrtx/yolov5 mkdir build cd build cp ../yolov5s.wts ./ cmake .. make # -s 命令用于生成.engine文件,三個參數分別是.wts文件,.engine文件和model標識[s/m/l/x/...] ./yolov5 -s yolov5s.wts yolov5s.engine s # -d 命令用于執行推理,兩個參數分別是engine和要測試的目錄 ./yolov5 -d yolov5s.engine ../samples

運行沒報錯,就可以在build文件夾里看到帶框的zidane.jpg了

個參數分別是engine和要測試的目錄
./yolov5 -d yolov5s.engine …/samples

運行沒報錯,就可以在build文件夾里看到帶框的zidane.jpg了

總結

以上是生活随笔為你收集整理的TensorRT加速应用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。