今回はUbuntu Linux上でPyTorchとYOLOv5を動作させるための環境構築の手順を解説します。
\ 機械学習を学びたい人には自宅で学べるUdemyがおすすめ! /
講座単位で購入できます!
環境
ハードウェア:VMware(R) Workstation 15 Pro
OS:Ubuntu 20.04.5 LTS
他のOS、ハードウェアでのセットアップ方法も解説していますので、あわせてご覧ください。



インストール手順
ここからは実際にPyTorchとYOLOv5をインストールする手順を解説します。
atpとpipを更新します。
sudo apt update
sudo apt upgrade
pip3 install --upgrade pip
gitがインストールされていない場合はインストールします。
sudo apt install git
機械学習ライブラリ PyTorchのインストール
META社が公開している機械学習ライブラリ PyTorchをインストールします。
以下のPyTorch公式サイトにアクセスし、自分の環境を選択すると環境にあったインストールコマンドが表示されます。
今回、私の場合はVMWare上で動作させるUbuntu Linuxで使用するため、GPUなどは使用しない選択としました。以下のようなコマンドが生成されました。
pip3 install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cpu
画像処理ライブラリ OpenCVのインストール
OpenCVをインストールします。
pip3 install opencv-python
学習済みモデルYOLOv5のインストール
ここからは機械学習でオブジェクトの検出に使用する学習済みモデルYOLOv5のインストールを行います。
YOLOv5は以下のページで公開されています。
GitHubの以下のリポジトリをダウンロードします。
git clone https://github.com/ultralytics/yolov5
YOLOv5を使用するために必要なライブラリのリストをインストールします。
cd yolov5
pip3 install -r requirements.txt
以下のように表示されたらインストールは完了です。
Successfully installed MarkupSafe-2.1.1 Pillow-9.3.0 absl-py-1.3.0 asttokens-2.1.0 backcall-0.2.0 cachetools-5.2.0 charset-normalizer-2.1.1 contourpy-1.0.6 cycler-0.11.0 decorator-5.1.1 executing-1.2.0 fonttools-4.38.0 google-auth-2.14.1 google-auth-oauthlib-0.4.6 grpcio-1.50.0 importlib-metadata-5.0.0 ipython-8.6.0 jedi-0.18.1 kiwisolver-1.4.4 markdown-3.4.1 matplotlib-3.6.2 matplotlib-inline-0.1.6 packaging-21.3 pandas-1.5.1 parso-0.8.3 pickleshare-0.7.5 prompt-toolkit-3.0.32 protobuf-3.20.3 psutil-5.9.4 pure-eval-0.2.2 pyasn1-0.4.8 pyasn1-modules-0.2.8 pygments-2.13.0 pyparsing-3.0.9 python-dateutil-2.8.2 pytz-2022.6 requests-2.28.1 requests-oauthlib-1.3.1 rsa-4.9 scipy-1.9.3 seaborn-0.12.1 stack-data-0.6.1 tensorboard-2.11.0 tensorboard-data-server-0.6.1 tensorboard-plugin-wit-1.8.1 thop-0.1.1.post2209072238 tqdm-4.64.1 traitlets-5.5.0 wcwidth-0.2.5 werkzeug-2.2.2 zipp-3.10.0

動作確認
PyTorchとYOLOv5の動作確認を行います。
ターミナルで以下のコマンドを実行してください。
python3
import torch
model = torch.hub.load('ultralytics/yolov5', 'yolov5s')
以下のように表示されたら正常にPyTorchとYOLOv5が動作しています。
Fusing layers...
YOLOv5s summary: 213 layers, 7225885 parameters, 0 gradients
Adding AutoShape...
推論を実行する
最後に実際に動画ファイルを読み込んで、Pythonのプログラムから物体検出を行ってみます。
YOLOv5のディレクトリにあるサンプルコードを実行します。
python3 detect.py
処理が終わると以下のディレクトリ内に推論結果の画像ファイルが出力されます。
/(YOLOv5をダウンロードしたディレクトリ)/yolov5/runs/detect/exp
写真に写っているオブジェクトが正しく検出されていることが確認できました。



まとめ
今回はUbuntu LinuxでPyTorchとYOLOv5を使用するためのセットアップ方法を解説しました。Ubuntuでも他のOSと同様に手軽に環境を構築できます。Windowsより安定した開発環境が欲しい方におすすめですので、ぜひ参考にしてみてください。
機械学習を効率よく学びたい方には、自分のペースで動画で学べるUdemyの以下の講座がおすすめです。数学的な理論からPythonでの実装までを習得できます。(私自身もこの講座を受講しています)

それでは、また次の記事でお会いしましょう。


\ 機械学習を学びたい人には自宅で学べるUdemyがおすすめ! /
講座単位で購入できます!
コメント