物体検出モデル構築マニュアル
モデル構築の流れ
- Mac(macOS)および Windows 環境にて自作の物体検出AIモデルを作成し、アプリに導入する手順を解説します
- GUIで構築できる「Create ML(Mac専用)」と、「Ultralytics YOLO(Mac/Win両対応)」の2つの学習手法について解説します
|
対象物の様々な個体、サイズ、方向の 写真を用意(1000枚程度) ▼ アノテーション (AIに学習させるためのラベル付け作業) ▼ 学習の実行・モデル変換 ▼ アプリ等に組み込んでの検証 ▼ モデルの構築完了 |
モデル構築の流れ
モデル構築 5つのステップ
- STEP 1:作業環境の準備(
venv仮想環境の構築 【Mac/Win分岐】) - STEP 2:画像データの収集(検出対象の写真・動画の撮影と収集)
- STEP 3:アノテーション(バウンディングボックスのラベル付け)
- STEP 4:AIモデルの学習(Create ML または Ultralytics YOLO)
- STEP 5:アプリ導入と検証(Core MLモデルのインポートと動作確認)
STEP 1:作業環境の整備(venv仮想環境)
- Python、PyToach、YOLOなどの必要なプログラムをインストールします
- システム環境を汚さないよう、専用のPython仮想環境(.
venv)を作成して安全に作業します - お使いのOS(Mac または Windows)に合わせてコマンドを実行してください
【最先端・裏ワザ】AIエージェントに丸投げして全自動構築する(推奨)
- 黒い画面(ターミナル等)の操作が不安な方や時間を節約したい方は、お使いのAIアシスタント(Google Antigravity, Cursor 等のAIエージェント)に以下の指示文をコピー&ペーストするだけで、お使いのPCに合わせて全自動で環境構築が完了します!
- さらに、次回以降は「ダブルクリックだけでアノテーションツールが一発起動する専用スクリプト」まで自動生成させることができます!
AIエージェントへの自動構築・起動スクリプト作成プロンプト(コピー用)
私のパソコン上で「AI物体検出モデル構築」の作業環境を自動でセットアップしてください。
お使いのOS環境(Mac または Windows)に合わせて以下の順序でコマンドを実行し、正常に完了するまでサポートしてください:
1. システムのPythonバージョンを確認(3.9〜3.12推奨、3.11最適)。新しすぎたり古すぎる場合は共存版を利用する
2. ai_object_detection フォルダを作成し、専用の .venv 仮想環境を作成してアクティベートする
3. もしWindowsでNVIDIA製GPUが搭載されている場合は、YOLOより先にPyTorch公式サイトのコマンド(例: cu118 / cu121 等のCUDA対応版)を用いてGPU専用PyTorchを優先インストールする
4. pip を最新化し、OSに合わせて以下のコマンドを一言一句違わず実行してツールを導入する。勝手な推測によるパッケージ名変更(例: anylabeling への変更)は厳禁:
- Macの場合: pip install PyQt6 x-anylabeling ultralytics
- Windowsの場合: pip install x-anylabeling ultralytics
5. 次回以降、ダブルクリック等で簡単・瞬時に x-anylabeling を起動できるよう、OSに合わせた起動スクリプト(Mac用 .command または Windows用 .bat/.ps1)を作成して作業フォルダに配置する
6. インストール完了後、正常に起動するか検証し、次回以降の最もカンタンな起動手順を報告してください。
- これをAIに送信するだけで、システムの環境判定・仮想環境作成・GPU最適化・ツール導入から、「ダブルクリック起動スクリプト作成」までを失敗ゼロで自動実行してくれます
1-1. 現在のPython環境の確認と対応手順(手動で進める場合)
- まずはターミナルまたはコマンドプロンプトでバージョン確認コマンドを実行します:
- Macの場合:
python3 --version - Windowsの場合:
python --version - AIアノテーションやYOLO学習で最も安定して動作する推奨バージョンは
Python 3.9〜3.12(推奨:3.11) です
確認結果による3つの対応パターン
- パターンA(推奨バージョンが表示された場合):何も追加する必要はありません。「1-2. 仮想環境の作成」へそのまま進んでください
- パターンB(未インストールの場合):公式サイト(python.org/downloads)より Python 3.11 をダウンロードしてインストールします(※Windowsは必ず「Add python.exe to PATH」にチェックを入れます)
- パターンC(新しすぎる場合・古すぎる場合):公式サイトより Python 3.11 を追加で共存インストールし、後述の「バージョンを明示的に指定して .venv を作成するコマンド」を使用してください
1-2. 【Mac版】環境構築とツールの導入
- ターミナルを開き、フォルダと .
venvを作成して有効化・インストールします:
mkdir -p ~/ai_object_detection
cd ~/ai_object_detection
python3 -m venv .venv
source .venv/bin/activate
pip install --upgrade pip
pip install PyQt6 x-anylabeling ultralytics
- ※新しすぎる/古すぎる状況で Python 3.11 を追加した場合は、
python3の代わりにpython3.11 -m venv .venvと入力すると確実に指定できます - ※Create ML(GUI学習)を使う場合は Mac App Store から Xcode もインストールします
- ※Macの場合は標準でインストールされる PyTorch が Apple GPU (Metal/MPS) に自動対応しているため、追加の設定は不要です
1-3. 【Windows版】環境構築とツールの導入
- コマンドプロンプトまたは PowerShell を開き、同様に仮想環境を作成して有効化します:
mkdir ai_object_detection
cd ai_object_detection
python -m venv .venv
- ※Python 3.11 を追加インストールしてバージョン指定する場合は、
py -3.11 -m venv .venvで仮想環境を作成できます - 有効化コマンド(コマンドプロンプト):.
venv\Scripts\activate.bat - 有効化コマンド(PowerShell):.
venv\Scripts\Activate.ps1 - ツールのインストール:
python -m pip install --upgrade pip
pip install x-anylabeling ultralytics
- 💡 【Windows向け超重要】NVIDIA製 GPU で超高速学習を行いたい方へ:
上記のインストールコマンドを実行すると自動的に PyTorch が入りますが、これは「CPU専用版」になることがあります。PCに NVIDIA 製の GPU (グラフィックボード) が搭載されている場合、ultralyticsをインストールする前に、PyTorch公式サイト の案内に従い、ご自身の環境に適合した「GPU専用 PyTorch (CUDA対応版)」を先行してインストールしてください。これにより学習速度が数十倍アップします!
1-4. X-AnyLabeling(アノテーションツール)の起動
- Mac・Winともに、仮想環境が有効な状態で下記コマンドを入力すると起動します:
x-anylabeling
STEP 2:画像データセットの収集・準備(Mac/Win共通)
多様な撮影例
必要な画像枚数の目安
- 1クラスあたり最低 30〜50枚、実用精度を得るには100枚〜300枚以上の画像を用意します
撮影・データ作成のポイント
- 実際に検出する現場や環境に対応する画像データを用意します。
- 多様なアングル:真上、斜め、横方向など様々な角度から撮影します
- 多様な環境:照明の明るさや背景の種類を変えて撮影します
- 重なりや距離:対象物が密着している状態や距離の異なる状態を網羅します
- 動画(
.mp4)から数コマおきに静止画を切り出してデータセットにする方法も有効です
STEP 3:X-AnyLabeling によるアノテーション(Mac/Win共通)
X-AnyLabeling の起動とフォルダ読み込み
- 仮想環境が有効な状態でコマンド入力して起動します:
x-anylabeling - 画面左上の「Open Dir」から画像が保存されているフォルダを開きます
バウンディングボックスの描画
- キーボードの
R(Rectangle)を押し、画像内の検出対象物をマウスドラッグで正確に囲みます - 囲み終わったらラベル名(例:
strawberryなど)を入力・選択します - 全ての画像に対してアノテーション作業を行います
データセットのエクスポート
- 作業完了後、学習方法に合わせた形式で「Export」を行います
- Create ML 用(Mac向け):COCO JSON または Create ML フォーマットで書き出します
- Ultralytics YOLO 用(共通):YOLO フォーマットで書き出し、
images/labelsフォルダと設定ファイルを生成します
STEP 4-A:【ルートA】Create ML でのモデル学習(GUI / ※Mac専用)
- プログラムを書かずにマウス操作のみで Core ML モデルを作成できるおすすめの手法です(※Mac環境専用)
Create ML の起動
- Xcode のメニューバーより
Xcode>Open Developer Tool>Create MLを選択します - 「New Document」からテンプレート 「Object Detection」 を選択します
データセットの指定と学習開始
- Training Data にSTEP 3で書き出したデータセットを選択します
- Iterations(反復回数) を指定(推奨目安:
2000〜5000回)し、画面上の 「Train」 ボタンを押して学習を実行します
モデルの保存(エクスポート)
- 学習完了後、「Output」タブより 「Get」 をクリックし、作成された
.mlmodel(または.mlpackage)ファイルを保存します
STEP 4-B:【ルートB】Ultralytics YOLO でのモデル学習(CLI / Mac・Win両対応)
- MacおよびWindowsで利用可能な、高度で高速なYOLOアルゴリズムを活用するプロ向け手法です
data.yaml の作成
- データセットフォルダ内にクラス情報を記述した
data.yamlを準備します:
path: /absolute/path/to/dataset
train: images/train
val: images/val
names:
0: strawberry
1: leaf
学習コマンドの実行
- ターミナルまたはコマンドプロンプトでデータセットの場所へ移動し、次のコマンドで学習を開始します:
yolo detect train data=data.yaml model=yolov8n.pt epochs=100 imgsz=640
Core ML 形式へのエクスポート ※重要
- 学習完了後、完成した最適な重み(
best.pt)をiOS向けに変換・出力します:
yolo export model=runs/detect/train/weights/best.pt format=coreml nms=True
- ※ Windows環境でも、このコマンドでiOSアプリ用
.mlpackage/.mlmodelの変換・出力が可能です
STEP 5:アプリへのインポートと検証
iPhone / iPad へのモデル転送(Mac・Windows別)
- Macの場合:AirDrop で iPhone / iPad へ直接送信するのが最もカンタンです
- Windowsの場合:ブラウザから iCloud.com (iCloud Drive) にアップロードするか、Google Drive 等のクラウドに保存し、iPhoneの「ファイル」アプリから端末内にダウンロードします
アプリでのインポートと検証手順
- 「AI物体検出カウンターアプリ」を起動し、メイン画面から 「AIモデル管理画面」 を開きます
- 画面右上の 「+(追加ボタン)」 をタップし、転送したモデルファイルを選択してインポートします
- インポートされたモデル行をタップしてチェックマーク(✓)を入れます
- 解析画面へ移動し、自作モデルで正しく対象物が検出・カウントされるか動作検証を行います
