画像認識AI YOLOv8解説シリーズ目次
YOLOv8 インストール
単に利用するだけであれば、以下のようにしてPyPIからpip installすれば使えます。
pip install ultralytics
Google Colabにgit cloneしてインストールしてみます。
!git clone https://github.com/ultralytics/ultralytics.git
%cd /content/ultralytics
!pip install -e .
# 確認
!pip list
#実行してみる
from ultralytics import YOLO
# 公式モデルがダウンロードされ読み込まれる
model = YOLO("yolov8n.pt")
# URLをダイレクトに記載可能
results = model("https://ultralytics.com/images/bus.jpg")
print(results)
手元のPCではサイズの小さいモデルを利用して処理を組んで、実行だけGoogle Colabを利用するというのが良いかも知れません。
ただ、YOLOv8.2が TPU v2ランタイム に向いていないのか、処理に時間がかかってしまいました。
ハイメモリの A100、もしくはハイメモリ L4を使用するのが良いかも知れません。
指定可能な読み込めるメディアについて
YouTubeや画像など、以下のようなメディアを指定することができます。
ほかにも色々なフォーマットのデータを読み込むことができるので、公式サイトをご確認ください。
https://docs.ultralytics.com/modes/predict/#inference-sources
種類 | 引数の例 | 型(書式) | 備考 |
---|---|---|---|
画像 | 'image.jpg' | str or Path | 画像ひとつだけ指定 |
URL | 'https://ultralytics.com/images/bus.jpg' | str | URLを指定すると不思議な力でデータを取ってくる |
動画 | 'video.mp4' | str or Path | 映像ひとつだけ指定 |
フォルダ | 'path/' | str or Path | フォルダごと指定 |
globデータ | 'path/*.jpg' | str | ワイルドカードを付けて、特定の名前のファイルだけ処理するときの指定 |
YouTube | 'https://youtu.be/LNwODJXcvt4' | str | 不思議な力でデータを取ってくる |
ストリームデータ | 'rtsp://example.com/media.mp4' | str | RTSP, RTMP, TCP, IP addressがストリームデータとして指定可能 |
マルチストリームデータ | 'list.streams' | str or Path | *.streams フォーマットのテキストファイルを用意してそれを指定 |
Google Colabでのメディアの扱いについて
ブラウザにドラッグ&ドロップしてファイルを投げ込んだり、ダウンロードをすると時間がかかります。
そんなときはGoogle Colab と Google Driveを繋げ、Google Drive経由でスピーディにファイルアップロードしたりダウンロードしたりすることができます。
以下の2行を実行することで、Google Driveを繋げることができます。(マウントできます)
from google.colab import drive
drive.mount('/content/drive')
Google Colabのファイル一覧パネル上でファイルを移動させることで、Google Driveにファイルを移動させることができます。
ローカルインストール
git cloneしてきたultralyticsディレクトリにて、以下コマンドでeditableモードでインストールできるかと思ったらできなかったのでメモ。。。
pip install -e .
単に上記のコマンドを打ち込んでも、ultralyticsを見つけられないと出てきます。
> python test.py
Traceback (most recent call last):
File "D:\yolov11\test.py", line 1, in <module>
from ultralytics import YOLO
ImportError: cannot import name 'YOLO' from 'ultralytics' (unknown location)
github上でもいくつかissueが立ち上がっていました。
結局のところ、
実行したいpythonファイルを、ultralyticsディレクトリ内に配置して実行するようにすれば、無事動きます。
結果の保存先などはパラメータを変更すればよいかと思いますが、多少違和感が…
もしくは、以下のコマンドでeditableモードとか関係なくインストールすれば動きます。
pip install .