Jetson Orin NX 部署YOLOv12筆記

?步驟一.創建虛擬環境

conda create -n yolov12 python=3.8.20

注意:YOLOv12/YOLOv11/YOLOv10/YOLOv9/YOLOv8/YOLOv7a/YOLOv5 環境通用

步驟二.激活虛擬環境

conda activate yolov12  #激活環境

步驟三.查詢Jetpack出廠版本

Jetson系列平臺各型號支持的最高Jetpack版本:

????????注意:涉及JetPack版本大升級5->6,需要用官方工具重做系統,

查看當前出廠版本

apt-cache show nvidia-jetpack  #查看jetpack版本

步驟四.Pytorch安裝

安裝流程(關鍵)

????????YOLOv12官方配置環境要求Pytorch版本為2.2.2,筆者JetsonOrinNX的出廠JetPack版本為5.1.3,故按照英偉達官方對于Jetson提供的預編譯包鏈接,選擇鏈接中最貼近2.2版本的torch進行離線下載,再用命令行進行安裝。

離線安裝:

Torch下載鏈接

http://? developer.download.nvidia.cn/compute/redist/jp/v51/pytorch/ ?

????????注意:鏈接中的v51就是jetpack5.1版本,大家可根據自己版本修改此處,得到新鏈接內容,再選擇需要的torch版本。

鏈接打開后如圖所示:

安裝指令

pip install path to xx.whl   #安裝該文件

????????注意:此處的安裝文件名中的cp38是python3.8版本的意思,故在虛擬環境中安裝python版本時也要對應于此

在線安裝

sudo python3 -m pip install --no-cache https://developer.download.nvidia.cn/compute/redist/jp/v51/pytorch/torch-2.0.0a0+8aa34602.nv23.03-cp38-cp38-linux_aarch64.whl

驗證是否安裝成功

conda list torch #查看目標環境是否安裝torch
python -c "import torch; print(torch.__version__)"   #打印torch版本

步驟五.安裝其他依賴項

pip install -r requirements.txt   #集群安裝

步驟六.運行YOLOv12

python detect.py   #運行腳本

最后.可能遇見的問題與解決方法

1.報錯torch與torchvision不兼容

????????解決方法:刪掉原版本,安裝新版本

相關指令:

python -c "import torch; import torchvision; print(f'torch version: {torch.__version__}, torchvision version: {torchvision.__version__}')"   #檢查當前安裝的 torch 和 torchvision 版本
pip uninstall torchvision   #清理舊版本
rm -rf ~/.cache/pip
rm -rf /home/jetson/.local/lib/python3.8/site-packages/torchvision*   #刪除可能沖突的緩存文件
conda install torchvision=0.15 -c pytorch  #指定安裝版本
sudo apt-get install libjpeg-dev libpng-dev   #torchvision 需要 libjpeg 和 libpng 庫來支持圖像處理功能,安裝依耐項#驗證torchvision 的 C++ 擴展是否加載成功
import torchvision
print("Torchvision loaded successfully")

????????解決此問題用了一些時間,最后在安裝依賴項時,系統自動下載了torch2.3,手動升級了對應的torchvision到1.8,解決了該問題。

2.JetPack SDK官方參考資料

????????JetPack 是為 NVIDIA Jetson 平臺設計的一系列庫、API、工具和文檔的集合。它簡化了開發流程,使開發者能夠更容易地構建高性能的人工智能應用。JetPack 包含了用于圖像處理、計算機視覺、深度學習等領域的庫,比如 VisionWorks, cuDNN, TensorRT 等。此外,它還包含了操作系統鏡像、多媒體支持和其他必要的組件??

參考鏈接:JetPack SDK Archive

總結:Jetson是按照Jetpack版本去下載對應的Torch,這一點要和常規的根據CUDA版本去下載對應Torch有一定區別,需要注意。

#筆者也是新手,歡迎各位讀者批評指正,更多參考:YOLOv12環境配置,手把手教你使用YOLOv12訓練自己的數據集和推理(附YOLOv12網絡結構圖),全文最詳細教程

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/902104.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/902104.shtml
英文地址,請注明出處:http://en.pswp.cn/news/902104.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Linux指令篇 (2)

指令篇(2) Linux基本指令(2)(1) mkdir指令(重要)(2)rmdir指令&&rm指令(重要)(3)man指令(重要)(4)cp指令(重要&…

致遠OA——自定義開發rest接口

文章目錄 :apple: 業務流程 🍎 業務流程 代碼案例: https://pan.quark.cn/s/57fa808c823f 官方文檔: https://open.seeyoncloud.com/seeyonapi/781/https://open.seeyoncloud.com/v5devCTP/39/783.html 登錄系統 —— 后臺管理 —— 切換系…

區塊鏈如何成為智能城市的底層引擎?從數據透明到自動化治理

區塊鏈如何成為智能城市的底層引擎?從數據透明到自動化治理 引言:智能城市真的智能嗎? 在數字化時代,智能城市(Smart City)逐步成為各國推動城市創新的重要方向。城市管理者希望借助物聯網(IoT…

洛谷P1177【模板】排序:十種排序算法全解(1)

扯談 之前我已經把十大排序算法全講了一遍(具體詳見專欄C排序算法),今天我們來用一道簡單的題目總結實戰一下。 算法實現 一、桶排序(Bucket Sort) ?適用場景?:數據范圍已知且較小(需根據測試數據調整…

SuperMap iClient3D for WebGL 如何加載WMTS服務

在 SuperMap iClient3D for WebGL 中加載WMTS服務時,參數配置很關鍵!下面我們詳細介紹如何正確填寫參數,確保影像服務完美加載。 一、數據制作 對于上述視頻中的地圖制作,此處不做講述,如有需要可訪問:Onl…

再讀bert(Bidirectional Encoder Representations from Transformers)

再讀 BERT,仿佛在數字叢林中邂逅一位古老而智慧的先知。初次相見時,驚嘆于它以 Transformer 架構為羅盤,在預訓練與微調的星河中精準導航,打破 NLP 領域長久以來的迷霧。而如今,書頁間躍動的不再僅是 Attention 機制精…

從零開始 保姆級教程 Ubuntu20.04系統安裝MySQL8、服務器配置MySQL主從復制、本地navicat遠程連接服務器數據庫

從零開始:Ubuntu 20.04 系統安裝 MySQL 8、服務器配置 MySQL 主從復制、本地 Navicat 遠程連接服務器數據庫 初始化服務器1. 更新本地軟件包列表2. 安裝 MySQL 服務器3. 查看 MySQL 安裝版本4. 登錄 MySQL 管理終端5. 設置 root 用戶密碼(推薦使用 nativ…

java怎么完善注冊,如果郵箱中途更換,能否判斷

解析在下面 附贈代碼 private static class CodeInfo {String code;long timestamp;CodeInfo(String code, long timestamp) {this.code code;this.timestamp timestamp;}}// 存儲驗證碼(郵箱 -> 驗證碼信息)(保證線程安全) 以免中途更改郵箱pri…

n8n 中文系列教程_01. 簡單易懂的現代AI魔法,n8n的快速了解與概念科普(文末有彩蛋)

1. 教程簡介 歡迎來到“無代碼工具探索”課程,這是專為非技術人員設計的指南(當然,技術人員也可以從中受益)。我們的目標是通過無代碼工具來提升工作效率,尤其是利用像 n8n 這樣的靈活數據庫平臺。這些工具被譽為“現…

解碼 Web Service:從技術原理到應用場景的深度剖析

Web Service 是一種基于網絡的、分布式的計算技術,它允許不同的應用程序之間通過網絡進行通信和交互。以下是關于 Web Service 的詳細介紹: 一、定義與概念 Web Service 是一種可以通過 Web 協議(如 HTTP)進行訪問的軟件組件&am…

Nacos啟動報錯

Nacos啟動是在單機模式下,不是集群模式 點擊startup.cmd啟動會報錯 打開bin目錄 rem是注釋的意思,在nacos1.3.2之后,nacos默認的都是集群模式,我們這里單機測試就是用單機模式。 也可以修改MODE,如果選擇不修改&…

uniapp-商城-26-vuex 使用流程

為了能在所有的頁面都實現狀態管理,我們按照前面講的頁面進行狀態獲取,然后再進行頁面設置和布局,那就是重復工作,vuex 就會解決這樣的問題,如同類、高度提煉的接口來幫助我們實現這些重復工作的管理。避免一直在造一樣…

Git 命令速查手冊

聽說用美圖可以釣讀者? 一、基礎操作核心命令 1. 倉庫初始化與克隆 命令作用示例git init創建新倉庫git init my-projectgit clone克隆遠程倉庫git clone [https://github.com/user/repo.git](https://github.com/user/repo.git)git remote add關聯遠程倉庫git re…

信息量、香農熵、交叉熵、KL散度總結

信息量 對于一個事件而言,它一般具有三個特征: 小概率事件往往具有較大的信息量 大概率事件往往具有較小的信息量 獨立事件的信息量相互可以相加 比如我們在買彩票這個事件中,彩票未中獎的概率往往很高,對我們而言一點也不稀…

使用C語言的cJSON中給JSON字符串添加轉義

在 cJSON 庫中,沒有直接提供 一個函數來專門給 JSON 字符串添加轉義(如將 " 轉義為 \",\n 轉義為 \\n 等)。 但 cJSON 在 序列化(cJSON_Print 或 cJSON_PrintUnformatted) 時會自動處理轉義字符…

宇樹機器狗go2—slam建圖(1)點云格式

0.前言 上一篇番外文章教大家如何在宇樹機器狗go2的gazebo仿真環境中實現簡單的導航運動,本期文章會教大家如何讓宇樹的機器狗go2在仿真環境中進行slam建圖時經常會遇到的一些點云格式,在后續的slam建圖和slam算法解析的時候會經常與這些點云信息打交道…

linux socket編程之udp(實現客戶端和服務端消息的發送和接收)

目錄 一.創建socket套接字(服務器端) 二.bind將prot與端口號進行綁定(服務器端) 2.1填充sockaddr_in結構 2.2bind綁定端口 三.直接通信(服務器端) 3.1接收客戶端發送的消息 3.2給客戶端發送消息 四.客戶端通信 4.1創建socket套接字 4.2客戶端bind問題 4.3直接通信即可…

第1期:Python基礎語法入門

1.1 Python簡介 Python是一種解釋型、面向對象、動態數據類型的高級編程語言。它設計簡潔,易于學習,適合初學者。Python廣泛應用于數據科學、人工智能、Web開發、自動化腳本等領域。它的語法簡潔易懂,強調代碼的可讀性。 1.2 安裝Python與配…

使用EXCEL繪制平滑曲線

播主播主,你都多少天沒更新了!!!泥在干什么?你還做這個賬號麻?!!! 做的做的(哭唧唧),就是最近有些忙,以及…… 前言&…

當算力遇上馬拉松:一場科技與肉身的極限碰撞

目錄 一、從"肉身苦修"到"科技修仙" 二、馬拉松的"新大陸戰爭" 三、肉身會被算法"優化"嗎? 馬拉松的下一站是"人機共生"時代 當AI能預測你的馬拉松成績,算法能規劃最佳補給方案,智能裝備讓訓練效率翻倍——你還會用傳…