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 是一个自托管AI系统,通过摄像头监控您的3D打印机,并自动捕捉打印失败。当它发现缺陷(如经典的“面条”状挤出塑料)时,它会暂停或取消打印,并向您的手机发送快照提醒——全部在您自己的硬件上运行,无需云服务或订阅。
工作原理
核心是一个紧凑的视觉模型(ShuffleNetV2编码器,约5 MB),对每个摄像头帧进行评分,以判断是否存在打印失败迹象。它在您的CPU、GPU或NPU上本地运行——树莓派4可以处理一到两个摄像头。该模型在您的硬件可支持的范围内共享给多个摄像头,并且仅在关联打印机实际打印时进行监控。
当缺陷持续足够长时间(您可以调整连续标记帧触发动作的数量),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(唯一其他开放模型)在树莓派4B上进行了比较,涵盖四个未见测试集:93.6%准确率对比53.8%,F1 0.937对比0.411,以及15.1张图像/秒对比0.35——吞吐量约为43倍。方法和结果在链接的论文中。
部署
- 桌面应用 — 适用于macOS(Apple silicon)和Windows——菜单栏/托盘中心,即使窗口关闭也持续监控
- Docker — 用于常驻服务器或NAS的单容器,提供amd64和arm64镜像(包括树莓派4/5)
- 硬件加速 — 同时携带LiteRT和ONNX Runtime模型,启动时对两者进行基准测试,并使用最佳可用提供程序(macOS上的Core ML、Windows ML、Intel上的OpenVINO、NVIDIA上的TensorRT)
重要注意事项
- 无内置身份验证 — README明确警告切勿进行端口转发;您需要在前面放置身份层(Tailscale、带Access的Cloudflare Tunnel、oauth2-proxy)
- Windows构建未签名(首次启动时需要“仍要运行”)
- 可选:您可以发送标记帧以帮助进一步训练模型
结论
一个真正、实质性的AI/ML项目:用于3D打印的实时计算机视觉缺陷检测,完全本地和私密,具有精美的仪表盘、广泛的打印机/摄像头/警报集成,以及针对主要开源竞争对手的可信性能数据。
相关
- 项目
- 项目
- Dispatch
- Dispatch
- 项目