oliverbravery/PrintGuard
Catches failed 3D prints on your own hardware, pauses the printer and sends you a snapshot alert. Runs in Docker, or as a macOS or Windows app. Free and open source, and no frame ever leaves your network.
概要
PrintGuard は、カメラで3Dプリンターを監視し、印刷失敗を自動的に検出する自己ホスト型AIシステムです。欠陥(典型的な「スパゲッティ」状の押し出しプラスチックなど)を検出すると、印刷を一時停止またはキャンセルし、スナップショットアラートをスマートフォンに送信します — すべて自前のハードウェアで動作し、クラウドサービスやサブスクリプションは不要です。
仕組み
中核はコンパクトな視覚モデル(ShuffleNetV2エンコーダー、約5 MB)で、各カメラフレームを印刷失敗の兆候についてスコアリングします。CPU、GPU、またはNPU上でローカルに実行されます — Raspberry Pi 4は1〜2台のカメラを処理できます。モデルはハードウェアがサポートする限り複数のカメラで共有され、リンクされたプリンターが実際に印刷している間のみ監視します。
欠陥が十分に長く続くと(連続してフラグが立てられたフレーム数でアクションを調整可能)、PrintGuardは:
- アクション — OctoPrint、Klipper、Elegoo、Prusa、またはBambu Lab(ローカルAPI経由、クラウドは使用しない)を通じて印刷を一時停止またはキャンセル
- アラート — ntfy、Pushover、Telegram、またはDiscordにスナップショットをプッシュ
主な機能
- ダッシュボード — カメラごとのライブリスクスコア、温度、進捗、ワンタップ予熱、プリンターに送信前に3Dプレビューできるスライス済みファイルのライブラリ
- チューニング — モニターごとのアラートしきい値、保持時間、クールダウン、応答(アラート/一時停止/キャンセル)、リスクスコアの履歴と各アラートのスナップショットでバックアップ
- 自動化 — MQTT経由でHome Assistantに表示、さらにエージェント/スクリプト用のREST APIとMCPサーバー、スコープ付きアクセストークン
- プラグイン — アプリ内ストアからのサンドボックス化されたJavaScriptプラグイン(ピクチャーインピクチャー、アラート音、進捗レポート、Spotify統合)
- テーマ — ライト、ダーク、ガラステーマ、テーマエディター付き
パフォーマンスの主張
READMEは、PrintGuardをObicoのSpaghetti Detective(唯一の他のオープンモデル)とRaspberry Pi 4Bで4つの未見テストセットで比較しています:93.6%の精度対53.8%、F1 0.937対0.411、15.1画像/秒対0.35 — 約43倍のスループット。方法と結果はリンクされた論文にあります。
デプロイメント
- デスクトップアプリ — macOS(Appleシリコン)およびWindows用 — ウィンドウを閉じても監視を続けるメニューバー/トレイハブ
- Docker — 常時稼働サーバーまたはNAS用の単一コンテナ、amd64およびarm64(Raspberry Pi 4/5を含む)のイメージ
- ハードウェアアクセラレーション — LiteRTとONNX Runtimeモデルの両方を搭載し、起動時に両方をベンチマークし、利用可能な最良のプロバイダーを使用(macOSではCore ML、Windows ML、IntelではOpenVINO、NVIDIAではTensorRT)
注目すべき注意点
- 組み込み認証なし — READMEはポートフォワーディングを絶対にしないよう明示的に警告しています。前面にIDレイヤー(Tailscale、Access付きCloudflare Tunnel、oauth2-proxy)を配置する必要があります
- Windowsビルドは署名なし(初回起動時に「実行」を選択する必要あり)
- オプション:ラベル付きフレームを送信してモデルのさらなるトレーニングに貢献できます
結論
本格的で実質的なAI/MLプロジェクト:3Dプリント用のリアルタイムコンピュータービジョン欠陥検出、完全にローカルでプライベート、洗練されたダッシュボード、幅広いプリンター/カメラ/アラート統合、主要なオープン競合他社に対する信頼できるパフォーマンス数値を備えています。
関連
- プロジェクト
- プロジェクト
- Dispatch
- Dispatch
- プロジェクト