Ei kuvausta

lsfoo e8c7a5a255 新增RK3578二进制部署、AI标定与自动重启功能;main入口切换至main_window_v2 4 päivää sitten
.vscode 995a33c6b9 fix: pyttsx3 单线程队列播报避免 runAndWait 冲突;增加到达工位语音提示 4 kuukautta sitten
assets e8c7a5a255 新增RK3578二进制部署、AI标定与自动重启功能;main入口切换至main_window_v2 4 päivää sitten
deploy e8c7a5a255 新增RK3578二进制部署、AI标定与自动重启功能;main入口切换至main_window_v2 4 päivää sitten
hooks 0426158242 语音系统重构:WAV音量调幅 + 双模式降级 + 打包优化 3 kuukautta sitten
hookvision e8c7a5a255 新增RK3578二进制部署、AI标定与自动重启功能;main入口切换至main_window_v2 4 päivää sitten
tests e8c7a5a255 新增RK3578二进制部署、AI标定与自动重启功能;main入口切换至main_window_v2 4 päivää sitten
tools 9d255ed540 多项优化和修复 3 kuukautta sitten
.gitignore e8c7a5a255 新增RK3578二进制部署、AI标定与自动重启功能;main入口切换至main_window_v2 4 päivää sitten
README.md e8c7a5a255 新增RK3578二进制部署、AI标定与自动重启功能;main入口切换至main_window_v2 4 päivää sitten
autostart_diag.txt 32725fdb17 语音包增益3x放大,生成脚本增加后处理幅值放大 3 kuukautta sitten
build_exe.bat e8c7a5a255 新增RK3578二进制部署、AI标定与自动重启功能;main入口切换至main_window_v2 4 päivää sitten
config.dev.ini e8c7a5a255 新增RK3578二进制部署、AI标定与自动重启功能;main入口切换至main_window_v2 4 päivää sitten
config.ini e8c7a5a255 新增RK3578二进制部署、AI标定与自动重启功能;main入口切换至main_window_v2 4 päivää sitten
config.prod.ini e8c7a5a255 新增RK3578二进制部署、AI标定与自动重启功能;main入口切换至main_window_v2 4 päivää sitten
main.py e8c7a5a255 新增RK3578二进制部署、AI标定与自动重启功能;main入口切换至main_window_v2 4 päivää sitten
project_description.txt e8c7a5a255 新增RK3578二进制部署、AI标定与自动重启功能;main入口切换至main_window_v2 4 päivää sitten
requirements.txt e8c7a5a255 新增RK3578二进制部署、AI标定与自动重启功能;main入口切换至main_window_v2 4 päivää sitten
requirements.txt.py 68e260e7dd 提交代码更新 4 kuukautta sitten
功能开发记录.md 8baaff9c3d 修复画面花屏和长时间运行卡顿 3 kuukautta sitten
功能开发记录.xlsx 8baaff9c3d 修复画面花屏和长时间运行卡顿 3 kuukautta sitten
读卡器SW5400_CN.pdf e8c7a5a255 新增RK3578二进制部署、AI标定与自动重启功能;main入口切换至main_window_v2 4 päivää sitten

README.md

钢包工位视频监测系统

基于 Python + PySide6 + OpenCV 的跨平台钢包工位监测系统,支持 RTSP 视频预览、RFID/Modbus 自动工位切换、AI 识别标注(MQTT)。

功能特性

  • 双路 RTSP 实时视频预览(左/右摄像头)
  • RFID Socket 或 Modbus TCP 自动触发工位切换
  • 自动/手动模式切换
  • AI 模块 MQTT 接入,支持目标检测标注
  • 空闲超时自动清空工位
  • 多工位配置管理
  • 跨平台支持(Windows / Linux)

安装与运行

方式一:源码运行(开发环境)

  1. 安装 Python 3.8+
  2. 安装依赖:pip install -r requirements.txt
  3. 根据现场修改 config.dev.ini
  4. 运行:python main.py --dev

方式二:二进制一键部署(生产环境,推荐)

部署包为 PyInstaller 编译的二进制版本,不含 Python 源码,无需安装 Python 环境,支持离线部署。

一键部署

bash deploy/deploy.sh <目标IP> <用户名> <密码>

# 示例
bash deploy/deploy.sh 192.168.1.211 root 123456

脚本自动完成:构建 → 传输 → 离线安装依赖 → 注册 systemd 服务 → 开机自启

手动部署

# 1. 构建部署包
bash deploy/pack.sh deploy/

# 2. 传输到目标设备
scp -r deploy/hookvision_rk3578 root@<RK3578_IP>:/tmp/

# 3. 在目标设备上安装
cd /tmp/hookvision_rk3578 && sudo bash install.sh

部署目录结构

目标设备安装后的目录:

/opt/hookvision/                    # 安装目录
├── hookvision/                     # 二进制可执行文件
│   ├── HookVision                  # 主程序(ELF 可执行)
│   ├── _internal/                  # PyInstaller 打包的依赖库
│   ├── config.ini                  # 配置文件
│   ├── config.prod.ini             # 生产环境配置
│   └── config.dev.ini              # 开发环境配置
├── start.sh                        # 启动脚本
└── install.sh                      # 安装脚本

配置文件

文件 用途
/opt/hookvision/config.prod.ini 生产环境配置(部署后修改此文件)
/opt/hookvision/config.dev.ini 开发环境配置

修改配置后重启服务生效:

sudo systemctl restart hookvision

配置项说明

配置节 说明
[RFID] RFID 读卡器 TCP 连接参数
[Modbus] Modbus TCP 连接及轮询参数
[AI] MQTT 服务器地址及订阅主题
[AI:N] AI 模块 N 的 broker 地址和端口
[Bucket:N] 工位 N 的左右摄像头 RTSP 地址、MQTT 主题、AI 模块编号

服务管理

部署后通过 systemd 管理服务:

systemctl start hookvision         # 启动
systemctl stop hookvision          # 停止
systemctl restart hookvision       # 重启
systemctl status hookvision        # 查看状态
journalctl -u hookvision -f        # 查看实时日志

开机自启已默认启用。

部署时还会自动设置屏幕永不熄屏(禁用屏幕保护和 DPMS 休眠),确保设备常亮显示。

项目文件说明

文件/目录 说明
main.py 程序入口
hookvision/ 核心业务代码
assets/ 图标、语音等资源
config.dev.ini 开发环境配置
config.prod.ini 生产环境配置
HookVision-linux.spec PyInstaller Linux 打包配置
deploy/pack.sh 部署包构建脚本
deploy/deploy.sh 一键部署脚本
deploy/hookvision_rk3578/debs/ 离线 .deb 系统依赖包

注意事项

  • RTSP 地址需包含用户名密码(如 rtsp://user:pass@ip:port/...)
  • 确保摄像头或 NVR 的 RTSP 服务已开启
  • 一键部署需要目标设备 SSH 可达,且安装了 sshpass(脚本会自动安装)

许可证

内部使用