はじめに — 現場には3つの壁がある
AI品質管理の話をすると、だいたい同じ流れになります。
「導入したい」→「見積もりを取る」→「高すぎる」→「却下」→「半年後、また同じ話が始まる」。
このループ、見覚えがありませんか。
仮に予算が通っても、現場に行くと別の問題が待っています。
壁1:「カメラが1台じゃ足りない」
製造ラインには複数の工程があります。ネジの取り付け確認、ラベルの貼付確認、最終外観検査。それぞれ別の場所、別のカメラ、別のモデルが必要です。でも多くのツールは「1カメラ、1モデル、1画面」が前提です。
壁2:「ブラウザを現場PCで開かせるのが面倒」
工場のラインPC/タブレットにChromeをインストールして、URLを覚えさせて、毎朝起動してもらって。ITに詳しくない作業員がそれをやるのか、という現実があります。
壁3:「結局、誰かが監視画面を見続けないといけない」
異常が出たとき、画面を見ていた人だけが気づきます。でも現場にそんな余裕はない。
この3つの壁を、Pythonと無料ツールだけで全部崩します。
今回紹介するのは、撮影・ラベリング・訓練・検出・ワークフロー管理まで一気通貫でこなす統合ツールの完結版です。
全体像 — コードゼロで何ができるか
まずこのツールで何ができるか、全体の流れを見てください。
📸 ① カメラで撮影
↓ (ブラウザ or デスクトップアプリ上で完結)
🏷️ ② ラベリング
クリック&ドラッグで物体を囲むだけ
検出 / セグメンテーション / OBB(回転ボックス)対応
↓
🤖 ③ YOLOモデル訓練
ローカルPC(GPUなしでも可)
または Google Colab(無料GPU)でワンクリック
↓
🎯 ④ リアルタイム検出
カメラ映像にリアルタイムでAIが重なる
チェーン検出で工程の順番も監視
↓
🏭 ⑤ ワークフローエディタ ← 今回の主役
複数カメラを並列管理
異常時に自動アラート
デスクトップアプリで動作(ブラウザ不要)
①〜③のラベリングと訓練は、前回・前々回の記事で詳しく紹介しています。簡単におさらいすると、カメラで撮った画像をブラウザ画面上でクリック&ドラッグするだけでラベルが付けられます。訓練もボタン一つ。GPUがなくてもYOLO nanoモデルなら十分動きます。Google Colabと連携すれば無料GPUで大型モデルも訓練できます。
重要なのは、ここに一行もコードを書く必要がないということです。
ITエンジニアがやることは「セットアップと最初の設定」だけ。あとは現場の人間がマウスだけで操作できます。そして今回紹介する⑤のワークフローエディタで、複数のカメラと工程を束ねて自動監視する仕組みが完成します。
最大の差別化① — デスクトップアプリとして動く
このツールの一番のこだわりポイントがここです。
ブラウザを一切使わずに、ネイティブのデスクトップウィンドウとして起動できます。
# これだけ。全サービスが自動で立ち上がる。
python launcher.py
起動するとスプラッシュ画面が表示されます。
裏では2つのサービスが自動的に起動します。ユーザーは何も意識する必要はありません。ウィンドウが閉じられると、バックグラウンドのサービスも自動でシャットダウンします。
どのOSでも動く
| プラットフォーム | 使われるエンジン | 追加インストール |
|---|---|---|
| Windows 10 / 11 | Microsoft Edge WebView2 | 不要(最初からある) |
| macOS | WKWebView | 不要 |
| Linux / Raspberry Pi | WebKit2GTK | sudo apt install python3-gi gir1.2-webkit2-4.0 |
でも、ブラウザからも使える
「現場PCではデスクトップアプリで動かして、管理者室からブラウザでリモート監視する」という使い方もできます。
現場PC(デスクトップアプリ) ←→ 管理者室(ブラウザで http://現場PCのIP:5000)
デスクトップだけに縛られるわけではなく、必要に応じてブラウザからもアクセスできる両対応の設計です。工場のネットワーク内であれば、どのPCからでも監視画面を見られます。
問題が起きてもすぐ原因がわかる
ログファイルが自動生成されます。
logs/
├── app.log ← フロントエンドのログ
└── yolo_service.log ← AI推論エンジンのログ
「起動しない」「検出が止まった」というときは、このファイルを見れば何が起きているか一目でわかります。ITエンジニアが毎回現場に駆けつける必要もありません。
最大の差別化② — ワークフローエディタ
次に、今回の記事のもう一つの核心です。
ドラッグ&ドロップで工程を組む
画面上にノード(部品)をドラッグして、線でつなぐだけでAI監視フローが完成します。
【例:PCの組み立てライン監視フロー】
[開始]
↓
[検出A] カメラ0 — CPUが載っているか確認
↓ 成功 ↓ 失敗(タイムアウト)
[検出B] [アラート] 管理者にメール通知
カメラ1 — メモリが ↓
2枚あるか確認 [一時停止 → 再開を待つ]
↓ 成功
[検出C]
カメラ0 — 完成品を確認
↓
[終了]
これを画面上でマウスだけで組み立てられます。 コードは一行も書きません。
6種類のノード、現場の言葉で説明すると
| ノード | 色 | 現場での役割 |
|---|---|---|
| 開始 | 🟢 緑 | 監視スタートの合図 |
| 検出 | 🔵 青 | 「このカメラで、このものを確認して」 |
| ループ | 🟣 紫 | 「この確認を3回繰り返して」 |
| アラート | 🟠 橙 | 「異常を担当者に知らせて」 |
| 待機 | 🩵 水 | 「次の工程まで5秒待って」 |
| 終了 | ⚫ 灰 | 「1サイクル完了」 |
たったこれだけです。この6種類を組み合わせるだけで、かなり複雑な工程管理が作れます。
検出ノードで設定できること
検出ノードは一番よく使う部品なので、何が設定できるか見ておきましょう。
| 設定項目 | 説明 | 例 |
|---|---|---|
| カメラソース | どのカメラを使うか | カメラ0、カメラ1、Piカメラ |
| モデル | どのYOLOモデルを使うか | factory_line_v2.pt |
| ターゲットクラス | 何を検出するか | 「ネジ」「ラベル」「CPU」 |
| 最低検出数 | 何個あればOKか | 2個以上 |
| タイムアウト | 何秒待つか | 30秒 |
| 信頼度閾値 | 何%以上で有効とするか | 70% |
| 失敗時の動作 | NGのとき何をするか | アラートして一時停止 |
これらの設定が全部、マウスで操作できるプロパティパネルに並んでいます。
フローは保存・再利用できる
組み立てたワークフローはJSONとして保存できます。
workflows/
├── pc_assembly_line.json ← PC組み立てライン用
├── food_packaging.json ← 食品パッケージング用
└── pharma_inspection.json ← 医薬品検査用
製品ラインが変わるときは、保存済みのワークフローを読み込むだけ。切り替えは数秒で完了します。「月曜日に設定したフロー、金曜日にまた使える」が当たり前にできます。
最大の差別化③ — 複数カメラを同時に動かす
前回の記事で紹介した「チェーン検出」は1台のカメラで工程を直列に監視するものでした。
今回のワークフローエディタは違います。
複数のカメラを、それぞれ独立したスレッドで、同時に動かせます。
イメージをつかむために
各カメラに「専属のAIスタッフ」を1人ずつ割り当てると考えてください。
カメラ0 ── 専属AIスタッフA(ネジ確認担当)
↓ 同時進行
カメラ1 ── 専属AIスタッフB(ラベル確認担当)
↓ 同時進行
カメラ2 ── 専属AIスタッフC(外観検査担当)
3つの工程が本当に同時に走ります。カメラ0がネジを確認している間、カメラ1はラベルを確認し、カメラ2は外観検査をしています。1台が終わるのを待ちません。
ライブモニターが自動で切り替わる
画面右側のライブモニターパネルは、現在実行中のノードのカメラに自動的に切り替わります。
ステップ1が実行中 → カメラ0の映像が表示される
ステップ2に進んだ → カメラ1の映像に自動切り替わる
監視者は何も操作しなくても、常に今一番重要なカメラの映像を見ていられます。
チェーン検出との使い分け
| チェーン検出(前回記事) | ワークフローエディタ(今回) | |
|---|---|---|
| カメラ数 | 1台 | 複数台 |
| 工程の流れ | 直列(順番に) | 並列も直列も自由 |
| 設定方法 | パネルでステップを追加 | ドラッグ&ドロップ |
| 分岐 | なし | 成功/失敗で分岐できる |
| 向いている場面 | シンプルな順番確認 | 複雑な複数工程管理 |
簡単な用途ならチェーン検出、本格的な製造ライン管理ならワークフローエディタ、という使い分けができます。
異常を「誰も気づかない」から解放するアラート機能
「監視画面を誰かがずっと見ていなければいけない」という問題を解決するのがアラートノードです。
検出タイムアウト(NG)が発生したとき、3つの方法で外部に通知できます。
通知方法1:HTTP POST(Slack・LINE・社内システム連携)
[アラートノード]
HTTP POST → https://hooks.slack.com/...
→ LINE Notify API
→ 社内の異常管理システム
Webhookを設定すれば、NGが出た瞬間にSlackのチャンネルにメッセージが飛びます。監視担当者が画面から離れていても、スマホに通知が届きます。
通知方法2:UDP ブロードキャスト(工場内一斉通知)
[アラートノード]
UDP → 192.168.1.255:9999
(工場内ネットワーク全体にブロードキャスト)
工場内ネットワークに繋がっている全端末に、同時に通知を送れます。専用の受信プログラムを書けば、ライン全体の表示板に異常を映し出すことも可能です。
通知方法3:ブラウザポップアップ(監視画面に大きく表示)
監視PCの画面に、フルスクリーンのアラートダイアログが表示されます。見逃しようがありません。
スナップショット付きアラート
アラート通知に「その瞬間カメラが何を映していたか」の画像も添付できます。
{
"message": "Step2: ラベル検出タイムアウト",
"timestamp": "2026-03-30T14:32:45",
"source": "workflow",
"frame_snapshot": "(Base64エンコードされたJPEG画像)"
}
「アラートが来たけど何が起きたの?」という確認作業が、現場に行かずにできます。
アラート履歴ページ
/alert_viewer にアクセスすると、過去200件のアラートがタイムライン形式で確認できます。スナップショットも一緒に保存されているので、「昨日の14時に何があったか」を後から確認する用途にも使えます。
Raspberry Piでも動く
「工場に本格的なPCを置きたくない」「できるだけコストを下げたい」という場合のための選択肢も用意されています。
Raspberry Pi 4 / Pi 5 + Piカメラモジュールで動作します。
# Pi カメラモジュールのサポートをインストールするだけ
sudo apt install -y python3-picamera2
# あとは通常通り起動
python launcher.py
カメラセレクターに「Raspberry Pi Camera (picamera2)」が自動で表示されるので、選択するだけで使えます。
コスト感のイメージ:
Raspberry Pi 5(8GB) ≈ 12,000円
Piカメラモジュール3 ≈ 4,000円
ケース・電源・SDカード ≈ 3,000円
─────────────────────────────
合計 ≈ 19,000円 / 1カメラ拠点
工場内ネットワークから外に出ないため、セキュリティ面でも安心です。
インストールと起動
インストール(3分)
git clone https://github.com/Rikiza89/YOLO_Workflow_JA
cd YOLO_Workflow_JA
# 仮想環境を作る(推奨)
python -m venv venv
venv\Scripts\activate # Windowsの場合
# source venv/bin/activate # Mac/Linuxの場合
# 依存パッケージをインストール
pip install -r requirements.txt
起動方法は2種類
方法①:デスクトップアプリとして起動(現場向け)
python launcher.py
# ネイティブウィンドウが開く。ブラウザ不要。
方法②:ブラウザで使う(リモート監視向け)
# ターミナル1
python yolo_service.py
# ターミナル2
python app.py
# ブラウザで http://127.0.0.1:5000 を開く
現場PCにはデスクトップアプリで置いておいて、管理者室からはブラウザでアクセスする、という使い方が一番スムーズです。
YOLOモデルの準備
# models/ フォルダにモデルファイルを置くだけ
models/
├── yolo11n.pt # 汎用検出モデル(軽量)
├── yolo11n-seg.pt # セグメンテーション
└── factory_v1.pt # 自社訓練モデル(自分で作ったもの)
モデルを置くだけで、自動的にセレクターに表示されます。設定ファイルの編集は不要です。
現場への導入イメージ
最後に、このツールが実際どう使われるかを整理します。
【役割分担】
ITエンジニア(あなた)がやること:
├── セットアップ(1回だけ)
├── YOLOモデルの訓練(必要なとき)
└── ワークフローの設定・保存(製品ライン変更のとき)
ライン作業者がやること:
└── デスクトップアプリをダブルクリックして起動するだけ
ライン管理者がやること:
├── ブラウザでアラート履歴を確認する
└── 異常通知(Slack等)を受け取る
ITエンジニアが毎回現場に行く必要はありません。ワークフローを一度設定して保存しておけば、現場はダブルクリック一発で動きます。
まとめ
この記事で紹介したことを整理します。
- ブラウザ不要 — デスクトップアプリとして動くから、現場PCにそのまま置ける
- ドラッグ&ドロップ — ワークフローエディタでコードゼロで複数工程を組める
- 複数カメラ並列 — カメラごとに専属AIが動き、工程を同時監視できる
- 自動アラート — HTTP/UDP/ポップアップで、見ていなくても異常を知らせる
- Raspberry Pi対応 — 低コストでエッジデバイスにも展開できる
そして、前回・前々回の記事と合わせると、このツールは「撮影→ラベリング→訓練→検出→ワークフロー管理」の全サイクルをカバーします。高価なシステムを買わなくても、ここまでできます。
3記事シリーズのリンク:
- 前々回:
- 前回:
- 今回:この記事
GitHub:
問題報告や機能リクエストは GitHub の Issues からどうぞ。スターをいただけると開発の励みになります ⭐
参考になったら、
をお願いします!
この記事は2026年3月時点の情報に基づいています。最新情報はGitHubリポジトリをご確認ください。

