工业安防(Jetson 边缘部署) - 1
工业安防(Jetson 边缘部署) - 2
工业安防(Jetson 边缘部署) - 3

工业安防(Jetson 边缘部署)

Jetson 上 TensorRT 加速的人员检测——接入 RTSP 摄像头,支持禁区入侵、越线、徘徊检测,实时 Web 面板查看。

中级15minvision_ai
Jetson安防intrusion-detectionedge-aitensorrtrtspmulti-camerayolo26

这个方案能做什么

工业现场的禁区需要 24 小时盯防,但接到云端的 AI 监控有几个老大难问题:视频要离开园区上传、网络一抖延迟就飙、断网整套系统就瞎了。这个方案把 AI 人员检测和规则判断全部放在现场的 reComputer Industrial(Jetson Orin)上跑——视频不出局域网、告警 1 秒内触发、断网也不影响。

核心价值

价值说明
数据不出园区视频帧全部在本地 reComputer 上处理,不上云、不需要云账号、不存在数据外传
秒级告警Jetson 显卡每帧分析,15-30 FPS 处理速度,入侵 1 秒内识别
安全规则灵活配在浏览器里直接画禁区、虚拟围栏线、徘徊时长——无需写代码
离线可用部署完成后无需联网,适合偏远厂区、矿山、施工现场
兼容标准摄像头支持任意 RTSP 协议 IP 摄像头(海康、大华、通用 ONVIF),不绑定专用硬件
多摄像头支持同时监控多个区域,独立处理管线,共享检测模型
事件持久化SQLite 数据库存储所有事件,支持按日期筛选——重启不丢失历史记录

适用场景

场景能发现什么
工厂车间安全区设备运行时人员误入危险作业区
仓库禁入区域非工作时间闯入化学品 / 高价值仓储区
施工现场围栏无关人员翻越围栏、进入基坑
矿山危险区人员进入爆破区或不稳定地段
变电站 / 配电场高压设备区有人闯入

你需要准备

硬件

设备用途是否必需
reComputer Industrial(Jetson Orin NX / Nano)运行检测模型,提供 GPU 加速必需
RTSP IP 摄像头提供实时视频源(海康、大华、或任何兼容 ONVIF 的摄像头)必需
局域网交换机 / PoE 交换机连接 Jetson 和摄像头必需

软件

  • Jetson 已刷 JetPack 6.x(L4T 36.x)
  • 已安装 Docker + NVIDIA Container Runtime(Seeed reComputer Industrial 出厂已预装)
  • 你的电脑能 SSH 到 Jetson

检测模型

模型框架精度性能
YOLO26nUltralytics(NMS-free)FP16 TensorRT~268 QPS,延迟 ~3.7ms
YOLOv8nUltralyticsFP16 TensorRT实时推理
YOLOv5nUltralyticsFP16 TensorRT轻量级选项

首次启动时会自动从 ONNX 模型构建针对 Jetson 显卡优化的 TensorRT 引擎并缓存,后续启动直接复用。

部署前须知

  • 首次部署需要拉取约 3-5 GB 的 Docker 镜像,留意磁盘空间
  • 首次启动会构建一份针对 Jetson 显卡优化的检测引擎(约 1-2 分钟),之后启动直接复用缓存
  • 部署前建议先用 VLC 或 ffprobe 测一下摄像头的 RTSP 地址,绝大多数问题都来自地址写错
  • 当前一台 Jetson 可接入多路摄像头,每路有独立的处理管线

核心功能

多摄像头管理

  • 多路 RTSP/USB 接入 — 同时接入多个摄像头,独立处理管线
  • 摄像头自动发现 — 自动扫描子网内的 RTSP 摄像头
  • 共享检测模型 — 所有摄像头共享一个 TensorRT 引擎,高效利用 GPU
  • 每摄像头独立配置 — 每个摄像头有独立的区域、线段和规则

TensorRT FP16 加速

  • YOLO26n 支持 — 最新 Ultralytics 模型,NMS-free 端到端推理
  • GPU 硬件解码 — GStreamer NVDEC 硬解 RTSP 视频流,CPU 几乎零开销
  • Jetson 深度优化 — 在 reComputer Industrial J4012(Orin NX 16GB)上测试,30+ FPS

交互式 Web 面板

  • 实时标注视频 — 在实时视频上叠加检测框、区域和围栏线
  • 浏览器绘制区域 — 直接在视频画面上绘制禁区和围栏线
  • WebSocket 视频流 — 低延迟视频传输到浏览器
  • 自适应网格布局 — 自动适配多摄像头场景
  • HDMI 全屏模式 — 按 F 键切换全屏显示

事件持久化与跟踪

  • SQLite 数据库 — 事件持久存储,重启不丢失
  • 质心跟踪 — 跨帧跟踪检测到的人员
  • 按日期筛选 — 查询历史事件记录
  • 自动清理 — 自动移除过期事件数据

使用说明

rtsp

IP camera RTSP stream (Hikvision / Dahua / ONVIF). Multi-camera supported.

部署方案

下载与安装

套餐: 部署到 Jetson {#default}

在 reComputer Industrial(Jetson Orin)上运行 AI 加速的人员入侵检测,支持多摄像头、浏览器面板查看实时视频、配置安全规则,SQLite 事件持久化。

设备用途
reComputer Industrial(Jetson Orin NX / Nano)运行 AI 检测流程,提供 GPU 加速
RTSP IP 摄像头提供实时视频源(支持多摄像头)

部署完成后你能得到:

  • 浏览器中的实时标注视频流(检测框 + 区域 + 越线)—— 多摄像头自适应网格布局
  • 可配置的禁区、围栏线、徘徊时长规则——每摄像头独立配置
  • SQLite 事件持久化——重启不丢失,支持按日期筛选
  • HTTP API 用于对接外部系统(/api/stats/api/events/api/stream
  • HDMI 全屏模式——按 F 键切换全屏显示

前置条件: Jetson 已装 JetPack 6.x · Docker + NVIDIA runtime · SSH 可访问 · 摄像头 RTSP 地址可用

检测模型: YOLO26n(默认,NMS-free,~268 QPS)· YOLOv8n · YOLOv5n —— TensorRT FP16 加速

Step 1: 准备摄像头 {#init_camera type=manual required=false}

配置好你的 IP 摄像头并拿到 RTSP 地址。支持多摄像头同时接入。

  1. 把 IP 摄像头和 Jetson 接到同一个网络(或 PoE 交换机)
  2. 找到摄像头 IP——查看路由器 DHCP 列表,或用厂商的搜索工具
  3. 登录摄像头 Web 后台,确认 RTSP 流已开启(一般默认开启)
  4. 记下 RTSP 地址,下一步要填

常见 RTSP 地址格式:

  • 海康: rtsp://admin:password@<ip>:554/Streaming/Channels/101(主码流)或 /102(子码流)
  • 大华: rtsp://admin:password@<ip>:554/cam/realmonitor?channel=1&subtype=0(主码流)或 &subtype=1(子码流)
  • 通用 ONVIF: 用厂商 ONVIF 工具搜索流地址

建议: 先用 VLC 测一下(媒体 → 打开网络串流 → 粘贴 URL)。VLC 都打不开的话部署也跑不起来。

多摄像头提示: 部署完成后可以在 Web 面板中动态添加或移除摄像头。

故障排查

问题解决办法
进不去摄像头 Webping <camera-ip>,确认摄像头和电脑在同一网段
VLC 拉不到 RTSP检查用户名密码。部分摄像头需要在设置里手动开启 RTSP
不知道 RTSP 路径试上面常见格式,或查摄像头说明书
VLC 画面卡顿 / 花屏改用子码流地址(分辨率 / 码率更低)—— 主码流可能超出网络承载

Step 2: 部署工业安防服务 {#deploy type=docker_deploy required=true config=devices/deploy.yaml}

把检测服务装到 Jetson 上。部署器会拉取预构建镜像、把你的 RTSP 地址写入配置、启动容器。

部署目标 {#deploy_local type=local config=devices/deploy.yaml default=true}

直接在本机部署(仅限 SenseCraft 桌面 App 跑在 Jetson 设备上时可用)。

接线

  1. 确认本机已装 Docker + NVIDIA runtime
  2. 粘贴 Step 1 中拿到的 RTSP 地址
  3. 部署

说明: 首次启动需要 1-2 分钟,系统在编译针对 Jetson 显卡优化的检测引擎。编译后会缓存,之后重启秒级完成。

部署完成

打开 http://localhost:8080 即可访问 Web 面板。你会看到:

  • 主区域显示带标注的实时视频
  • 默认有一个黄色禁区和一条品红色越线(可在浏览器中重新绘制)
  • FPS、检测计数实时刷新

API 快速验证:

curl http://localhost:8080/api/stats
# 期望:返回包含当前 FPS、检测数、最近事件的 JSON

curl http://localhost:8080/api/events
# 期望:事件列表 JSON(首次部署为空)

故障排查

问题解决办法
Docker 拉镜像很慢镜像约 3-5 GB。国内建议先配置 Docker 镜像加速器
首次启动检测引擎构建失败确认 JetPack 6.x 已装、/usr/src/tensorrt 存在。docker logs industrial-security-demo 看详情
RTSP 打不开在 Jetson 上 ffprobe rtsp://... 测试。确认摄像头和 Jetson 在同一网络
容器反复重启docker logs industrial-security-demo —— 最常见是 RTSP 地址错或摄像头不可达
面板视频空白打开浏览器开发者工具 → 控制台 / 网络。MJPEG 流在 /api/stream,看是否能加载
找不到 GPU / nvidia 报错NVIDIA Container Runtime 没装:sudo apt install nvidia-container-toolkit && sudo systemctl restart docker

部署目标 {#deploy_remote type=remote config=devices/deploy.yaml}

通过 SSH 部署到远程 Jetson。

接线

  1. 确保 Jetson 已联网且 SSH 可达
  2. 填入 Jetson IP、SSH 用户名、密码
    • reComputer Industrial 出厂默认:用户名 nvidia / 密码 nvidia(如已修改请按实际填)
  3. 粘贴 Step 1 中拿到的 RTSP 地址
  4. 部署 —— 系统会自动拉镜像、起服务

说明: 首次启动需要 1-2 分钟,系统在编译针对 Jetson 显卡优化的检测引擎。编译后会缓存,之后重启秒级完成。

部署完成

打开 http://<jetson-ip>:8080 即可访问 Web 面板。你会看到:

  • 主区域显示带标注的实时视频
  • 默认有一个黄色禁区和一条品红色越线(可在浏览器中重新绘制)
  • FPS、检测计数实时刷新

API 快速验证:

curl http://<jetson-ip>:8080/api/stats
# 期望:返回包含当前 FPS、检测数、最近事件的 JSON

curl http://<jetson-ip>:8080/api/events
# 期望:事件列表 JSON(首次部署为空)

故障排查

问题解决办法
SSH 连接失败先用电脑 ssh user@ip 试一下,确认 IP、用户名、密码正确
Docker 拉镜像很慢镜像约 3-5 GB。国内建议先配置 Docker 镜像加速器
首次启动检测引擎构建失败确认 JetPack 6.x 已装、/usr/src/tensorrt 存在。docker logs industrial-security-demo 看详情
RTSP 打不开在 Jetson 上 ffprobe rtsp://... 测试。确认摄像头和 Jetson 在同一网络
容器反复重启docker logs industrial-security-demo —— 最常见是 RTSP 地址错或摄像头不可达
面板视频空白打开浏览器开发者工具 → 控制台 / 网络。MJPEG 流在 /api/stream,看是否能加载
找不到 GPU / nvidia 报错NVIDIA Container Runtime 没装:sudo apt install nvidia-container-toolkit && sudo systemctl restart docker

Step 3: 配置安全规则 {#dashboard type=manual required=true}

在下一步打开面板后,根据现场情况调整安全规则:

  • 重新绘制禁区 —— 在实时画面上点击多个点
  • 移动越线 —— 移到你想报警的位置
  • 调整徘徊时长阈值 —— 在禁区内停留多久才算
  • 调节检测置信度 —— 越低越敏感,越高误报越少

修改保存后即时生效。

故障排查

问题解决办法
面板打不开确认 Jetson 防火墙开放 8080:sudo ufw status
视频画面卡死RTSP 中断了——检查摄像头,然后 docker restart industrial-security-demo
事件不触发置信度太高,或禁区没覆盖到实际行走路径。把置信度降到 0.25 再试
需要多个摄像头已支持多摄像头——在 Web 面板的摄像头管理面板中动态添加摄像头

步骤 4: 打开面板 {#open_dashboard type=web_dashboard required=true config=devices/dashboard.yaml}

工业安全面板已经运行。点击下方按钮在浏览器中打开。

故障排查

问题解决方法
页面无法加载请确认前一个部署步骤已经成功,服务运行正常
主机/端口错误如果你部署到远程设备,请用实际的设备 IP 更新地址

部署完成

工业安防监控系统已经在边缘运行起来了。

快速验证

  1. 走进摄像头视野的禁区——约 1 秒内检测框应变红,事件日志中出现新事件
  2. 越过围栏线——触发越线事件
  3. 在禁区内站够徘徊时长——触发徘徊事件
  4. 浏览器打开 http://<jetson-ip>:8080/api/events——能看到刚才触发的事件列表

API 参考

端点方法说明
/GETWeb 面板
/api/statsGET实时 FPS、检测数、最近事件
/api/eventsGET事件历史(?date=YYYYMMDD 过滤)
/api/configGET / POST读取或修改区域 / 线段 / 检测器阈值
/api/streamGET带标注的 MJPEG 视频流

下一步

  • /api/events 接入现有的告警 / SCADA / 企微机器人
  • 把事件汇总到 Loki / ELK 等中心化日志,做多站点监控
  • 多摄像头场景:通过 Web 面板的摄像头管理添加多个摄像头,每个摄像头独立配置区域和规则
  • Industrial Security Demo on GitHub
联系我们
获取方案参考设计与产品选型支持。
下一步
工业安防(Jetson 边缘部署)