【Raspberry Pi 5】YOLOv8のインストール方法

python
  • Raspberry Pi 5にYOLOv8をインストールする方法
  • インストール時のerror: externally-managed-environmentの対処法
  • ラズパイ背景のスクリーンショット画像で推論動作確認

Raspberry Pi 5にYOLOv8をインストールします。
Raspberry Pi 4でも同様のやり方でインストール可能です。

ただし、ラズパイのOSは64BITである必要がありますので事前に確認してください。
もし、OSが32BITの場合はOSの再セットアップをする必要があります。

ラズパイのBIT数は以下のコマンドで確認できます。
「64」が表示されればOKです。

getconf LONG_BIT

YOLOv8のインストール

ターミナルを開き、以下のコマンドを入力していきます。

sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get autoremove -y

続いて、以下のコマンドで必要なライブラリーが一通りインストールされます。

pip3 install ultralytics

少し時間がかかりますが、エラーが出なければ無事インストール完了です。

———以下のようなエラーが発生した場合———

error: externally-managed-environment

× This environment is externally managed
╰─> To install Python packages system-wide, try apt install
    python3-xyz, where xyz is the package you are trying to
    install.
    
    If you wish to install a non-Debian-packaged Python package,
    create a virtual environment using python3 -m venv path/to/venv.
    Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
    sure you have python3-full installed.
    
    For more information visit http://rptl.io/venv

note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.


externally-managed-environmentのエラーが発生しています。
このエラーは、システム全体でPythonパッケージを管理しているためにpipがパッケージをインストールできないことを示しています。

以下に2つの対処法を記載します。

エラー対策① –break-system-packages

インストールコマンドの最後に「–break-system-packages」を追加すればエラーは防げます。
ただし、「--break-system-packages」は、pipがシステムパッケージを破損させる可能性があることを警告するオプションです。
このフラグを使用すると、システム全体に影響を及ぼす可能性があるため、注意が必要です。

pip3 install ultralytics --break-system-packages

具体的には、「--break-system-packages」を使用すると、システムパッケージマネージャー(例:apt)が追跡できなくなる可能性があります。
これにより、システムのパッケージ管理が混乱し、問題を引き起こす可能性があります。
そのため、通常は推奨される方法ではありません。

代わりに、仮想環境を使用してパッケージをインストールすることをお勧めします。
仮想環境を使用すると、システム全体に影響を与えることなく、パッケージを管理できます。

エラー対策② 仮想環境の使用

pipを使用してシステム全体にパッケージをインストールする代わりに、仮想環境を作成してパッケージをインストールします。
以下の手順で仮想環境を作成し、ultralyticsをインストールします。

python3 -m venv myenv
source myenv/bin/activate
sudo apt update
sudo apt install build-essential
pip install ultralytics

YOLOv8の動作確認 | ラズパイの背景で推論

インストールできたら、ラズパイの背景のスクリーンショットで推論して動作確認してみます。

ラズパイのスクリーンショット保存

スクリーンショットをとるために以下のコマンドを入力します。

sudo apt install gnome-screenshot

アクセサリーからスクリーンショットが選択できるようになるので、これを選択。

「test.png」という名前を付けて保存します。
画像は「/home/user/画像」の中に保存されています。

YOLOv8の推論実施

デスクトップに「test.png」を移動します。
また、「test.py」というスクリプトを作り、中身に以下のコードをコピーします。

from ultralytics import YOLO

model = YOLO("yolov8x.pt")

results = model('test.png', save=True)

スクリプトを起動すると「YOLO8x」モデルのダウンロードが始まり、同モデルでの推論後、「runs」フォルダの中に結果が保存されます。

ボートや人、鳥が検出できていることが確認できました。

タイトルとURLをコピーしました