
YOLO(You Only Look Once)は、リアルタイム物体検出やセグメンテーションに利用される人気のあるディープラーニングモデルです。
本記事では、YOLOv8 のセグメンテーションモデル をダウンロードし、YOLO の公式バス画像 を用いたシンプルなセグメンテーション処理を行う方法を紹介します。
YOLOのv8の場合、まずは ultralytics ライブラリをインストールし、YOLOv8 のセグメンテーションモデルをダウンロードします。
pip install ultralytics
また、コードの先頭では以下のコードを記載してYOLOをインポートします。
from ultralytics import YOLO
これを使用したYOLOによる簡単なサンプルコードは以下になります。
from ultralytics import YOLO
# YOLOv8セグメンテーションモデル
model = YOLO('yolov8x-seg.pt') # 事前学習済みの重みを使用
# YOLOのサンプルイメージファイルを使用
source = "https://ultralytics.com/images/bus.jpg"
# モデルでの予測実行
results = model.predict(source, save=True, imgsz=320, conf=0.5)
簡単な内容説明です。
以下はYOLOのモデルを読み込んでmodelに設定しています。
model = YOLO('yolov8x-seg.pt') # 事前学習済みの重みを使用
その次の
source = "https://ultralytics.com/images/bus.jpg"
については、YOLOが用意しているサンプル用のイメージファイルを読み込んでsourceに設定しています。
最後に以下により、設定したイメージファイルについて設定したモデルでの予測を行っています。
results = model.predict(source, save=True, imgsz=320, conf=0.5)
これにより、指定したフォルダ配下の、
\runs\segment\predict
の中に予測結果のファイルとして、
bus.jpg
という画像ファイルが生成されています。
ファイルの中身はバスのセグメンテーションマスクが適用された画像 になります。
物体の輪郭がはっきりと捉えられ、背景と区別されるのが確認できるはずです。