Skip to main content

工业场景下的工业视觉监控

介绍

工业和工地安全依赖于实时了解现场正在发生的事情——而不是事后回看。摄像头无处不在,但大多数系统仍然依赖人工回放审查。工业视觉 AI 填补了这一空白:检测工人是否在场、是否佩戴必需的 PPE(个人防护装备)、画面中是否出现不安全行为,并在边缘侧立即发出告警。

本 Wiki 在 Seeed 工业 Jetson 设备上部署一个参考性的工业安全监控演示。USB 摄像头将画面推送到浏览器;YOLO 负责人员和 PPE 检测,而 VLM 用于分析行为风险。两类模型都可以替换——该仓库只是一个起点,而不是绑定到某个固定 checkpoint。

reComputer Industrial J4012reServer Industrial J4011

已在 reComputer Industrial J4012reServer Industrial J4011 上使用 JetPack 7.2 验证。

概览

角色
YOLO人员检测(绿色框)以及缺少安全帽或反光背心等 PPE 违规(红色框)
VLM场景级行为告警——使用手机、吸烟、跌倒、火焰/烟雾等

在浏览器中打开 http://<jetson-ip>:8080,即可查看实时 WebRTC 视频、检测框叠加和告警信息流。

支持的硬件

项目配置
设备reComputer Industrial, reServer Industrial
已验证reComputer Industrial J4012, reServer Industrial J4011 · JetPack 7.2 (L4T 39.2.0)
JetPack已验证 7.2 · 预期兼容 6.2 · 低于 6.2 需要手动提供 PyTorch 轮子包
内存 / 磁盘至少 8 GB 内存 · 8 GB 可用磁盘空间
摄像头USB UVC / V4L2 (/dev/video*)
note

已在 reComputer Industrial J4012reServer Industrial J4011 上使用 JetPack 7.2 测试。对于其他 JetPack 版本匹配的 Seeed 工业 Jetson 设备,同样适用这些步骤。

安装

目标 Jetson 上克隆仓库并运行一键脚本:

git clone https://github.com/xbs0325/industrial-inspection.git
cd industrial-inspection
./run.sh

./run.sh 会在缺失时复制 .env,下载模型,构建 Docker 镜像(首次运行 15–30 分钟),并启动容器。

然后打开:

http://<jetson-ip>:8080
note

应用完全运行在 Docker 中——默认流程下,无需在宿主机上手动配置 Python 环境。

JetPack 说明

JetPackPyTorch
7.2在 Docker 构建过程中自动安装(TORCH_INDEX_URL=cu130
6.2TORCH_INDEX_URL 设置为你的 CUDA 12.x 索引,或将匹配的轮子包放入 wheels/
低于 6.2在运行 ./run.sh 前,将与 Jetson 匹配的 torch-*.whl / torchvision-*.whl 放入 wheels/

在修改与 JetPack 相关的文件后,请在目标设备上重新构建:

./clean.sh && ./run.sh

有关轮子包来源,请参阅 Install Pytorch for reComputer Jetson

caution

不要在 JetPack 或 CUDA 版本不同的设备之间拷贝 Docker 镜像。务必在目标 Jetson 上重新构建。

可选的 .env 调优

CAMERA_PIPELINE=sw    # sw (default) or hw

演示结果

摄像头画面开始推流前的空闲界面。

VLM 行为告警——在作业区域使用手机。

YOLO PPE 告警——未佩戴安全帽。

本演示中使用的模型

默认发行版附带以下 checkpoint。你可以通过更新仓库配置和 models/ 目录,将它们替换为其他 YOLO 或 VLM 模型。

角色默认模型文件
人员检测YOLOv8nmodels/yolov8n.onnx
PPE 检测YOLOv8 PPEmodels/ppe-yolov8n.pt
行为分析SmolVLM-500M-Instructmodels/SmolVLM-500M-Instruct/

模型会在首次运行 ./run.sh 时自动下载,或通过 ./scripts/download_models.sh 手动下载。

停止与清理

./clean.sh              # stop containers and remove local image
./clean.sh --full # also remove models/, data/, bin/go2rtc

故障排查

问题解决方案
Docker 权限被拒绝将用户加入 docker 组,或使用 sudo docker
首次构建较慢正常现象(15–30 分钟)。在 JetPack 6.2 或更早版本上,请将轮子包放入 wheels/
PyTorch / CUDA 不匹配在目标 Jetson 上重新构建;不要复用来自其他 JetPack 的镜像
容器中看不到摄像头确认宿主机存在 /dev/video*./run.sh 会自动挂载检测到的摄像头
浏览器中无视频使用 docker ps 检查 industrial-go2rtc;需确保端口 1984 可访问

资源

技术支持与产品讨论

感谢你选择 Seeed Studio 的产品!如需技术支持和产品讨论,请通过以下渠道联系我们:

Loading Comments...