RK-reComputer J2022 (安裝Jetson Xavier NX 16GB運算模組) 使用YOLOv5 進行物件辨識

前言

之前已介紹過 Jetson 平台如何安裝與執行 YOLOv4 物件辨識框架,本文要介紹 YOLOv5 在 RK-reComputer J2022,也就是16GB記憶體的Jetson Xavier NX 的執行效果如何。

撰寫/攝影 郭俊廷
時間 2小時 材料表

 

難度 3(滿分5)

本文

安裝所需套件

首先您才剛安裝好 Jetson 的系統,請先更新系統以及安裝 pip git 等套件,如果是使用 CAVEDU 為您安裝好的RK-reComputer J2022(安裝Jetson Xavier NX 16GB運算模組)套件,則相關內容都已經更新好了,可以直接執行。

本文所用的 RK-reComputer J2022(安裝Jetson Xavier NX 16GB運算模組)是使用Jetpack4.6版本。

以下是系統更新及安裝指令:

[pastacode lang=”bash” manual=”sudo%20apt-get%20update%20%26%26%20sudo%20apt-get%20-y%20upgrade%0Asudo%20apt-get%20install%20python3-pip%0Asudo%20apt-get%20install%20git-all%20-y” message=”” highlight=”” provider=”manual”/]

接著下載YOLOv5 的Github並移動到資料夾裡面:

[pastacode lang=”bash” manual=”git%20clone%20https%3A%2F%2Fgithub.com%2Fultralytics%2Fyolov5.git%0Acd%20~%2Fyolov5″ message=”” highlight=”” provider=”manual”/]

可以看到 yolov5 目錄裡面有個requirements.txt,那是安裝yolov5所需相關套件的檔案清單。在此要先把一些檔案註解掉不要安裝,否則會出現錯誤無法正常安裝。
opencv已包含在Jetpack裡面,torch 跟 torchvision 在Jetson載板無法使用pip安裝,setuptools 與 wheel 則是不能安裝他指定的版本。

請在該列語法最前面加上 # 字號就可以註解了,以下五個套件請記得前面都加上# 字號註解掉就不會安裝了(如下圖紅框所示)

[pastacode lang=”python” manual=”%23%20opencv-python%3E%3D4.1.1%0A%23%20torch%3E%3D1.7.0%C2%A0%20%23%20see%20https%3A%2F%2Fpytorch.org%2Fget-started%2Flocally%20(recommended)%0A%23%20torchvision%3E%3D0.8.1%0A%23%20setuptools%3E%3D65.5.1%20%23%20Snyk%20vulnerability%20fix%0A%23%20wheel%3E%3D0.38.0%20%23%20Snyk%20vulnerability%20fix” message=”” highlight=”” provider=”manual”/]

安裝缺失的套件

[pastacode lang=”bash” manual=”sudo%20apt%20install%20-y%20libfreetype6-dev%0A” message=”” highlight=”” provider=”manual”/]

安裝YOLOv5所需套件

[pastacode lang=”bash” manual=”pip3%20install%20-r%20requirements.txt” message=”” highlight=”” provider=”manual”/]

最後要補安裝PyTorch v1.10.0 以及 Torchvision v0.11.1
以下是 JetPack 4.6 所需要 PyTorch v1.10.0以及Torchvision v0.11.1
PyTorch 所對應的Torchvision版本跟下載點如下:

安裝 PyTorch v1.10.0

PyTorch是一個由Facebook開發的開源深度學習框架,提供了用於構建運算圖的Python API,可以有效地進行梯度計算、最佳化與微分等重要運算。PyTorch 已被廣泛用於深度學習領域的研究和應用。

[pastacode lang=”bash” manual=”cd%20~%0Asudo%20apt-get%20install%20-y%20libopenblas-base%20libopenmpi-dev%0Awget%20https%3A%2F%2Fnvidia.box.com%2Fshared%2Fstatic%2Ffjtbno0vpo676a25cgvuqc1wty0fkkg6.whl%20-O%20torch-1.10.0-cp36-cp36m-linux_aarch64.whl%0Apip3%20install%20torch-1.10.0-cp36-cp36m-linux_aarch64.whl” message=”install pytorch 1.10.0″ highlight=”” provider=”manual”/]

安裝完可以使用以下指令查看pytorch版本

[pastacode lang=”python” manual=”python3%20-c%20%22import%20torch%3B%20print(torch.__version__)%22″ message=”check torch version” highlight=”” provider=”manual”/]

安裝 torchvision v0.11.1

torchvision 是 PyTorch的一個影像處理與機器視覺函式庫。它提供了各種常用的影像資料集集,包括MNIST、CIFAR-10、ImageNet等,也支援影像預處理和增強,如裁剪、縮放、旋轉、翻轉、顏色調整等。此外,torchvision 還包括一些經典的機器視覺預訓練模型,如AlexNet、ResNet、VGG等,可以快速用於圖像分類、物體檢測、分割等任務。

安裝 torchvision 需要十分鐘左右,請稍等:

[pastacode lang=”bash” manual=”sudo%20apt%20install%20-y%20libjpeg-dev%20zlib1g-dev%0Agit%20clone%20–branch%20v0.11.1%20https%3A%2F%2Fgithub.com%2Fpytorch%2Fvision%20torchvision%0Acd%20torchvision%0Asudo%20python3%20setup.py%20install” message=”install torchvision” highlight=”” provider=”manual”/]

查看torchvision版本:

[pastacode lang=”python” manual=”python3%20-c%20%22import%20torchvision%3B%20print(torchvision.__version__)%22″ message=”check torchvision version” highlight=”” provider=”manual”/]

都安裝好了就會顯示如下對應的版本。

執行YOLOv5的範例程式

使用 yolo Github 所提供的範例程式 detect.py,範例程式主要會用到的參數如下:

  • --source:圖片、影片目錄或是 0 開啟攝影機
  • --weights:權重,有s、m、l、x之分

接著執行 detect.py,我們先使用官網提供的範例圖片來測試:

移動到 /yolov5 資料夾,接著辨識 /yolov5/data/images/ 中的圖片,可自由換成其他圖片路徑即可。

[pastacode lang=”bash” manual=”cd%20~%2Fyolov5%0Apython3%20detect.py%20–source%20data%2Fimages%2F%20–weights%20weights%2Fyolov5s.pt” message=”run yolo to inference single image” highlight=”” provider=”manual”/]

最後是用攝影機來做即時辨識的效果,一樣是在 /yolov5 資料夾底下執行以下指令(--source 0 代表使用攝影機編號video 0的攝影機):

[pastacode lang=”bash” manual=”cd%20~%2Fyolov5%0Apython3%20detect.py%20–weights%20yolov5s.pt%20–source%200″ message=”run real-time yolo inference” highlight=”” provider=”manual”/]

本文介紹到此結束,yolo 作為近年非常熱門的物件辨識框架,不但準確率高而且執行速度相當好。希望大家都順利根據本文說明在您的 Jetson NX 安裝成功喔!

參考資料

 

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *