GIT-test/README.md
2026-02-21 23:42:50 +08:00

296 lines
7.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 海康工业相机激光检测系统
## 项目概述
本项目是一个基于海康工业相机MV-CS016-10UC的激光检测系统主要用于检测绿色激光点和点阵灯盘。系统采用多线程架构集成了相机管理、参数配置、检测算法和可视化界面能够实时识别和跟踪激光目标。
本项目使用Trae的SOLO模式生成
## 系统功能
### 核心功能
1. **双模式激光检测**
- 模式A单点/稀疏光点检测(适用于绿色激光笔)
- 模式B点阵灯盘检测适用于LED阵列
- 智能仲裁:自动选择最优检测模式
2. **相机管理**
- 设备枚举和选择
- 相机参数控制(曝光时间、增益、帧率)
- 图像采集和显示
- 异常处理和重连机制
3. **参数配置**
- 实时参数调节界面
- HSV颜色空间配置
- 形态学操作参数设置
- ROI感兴趣区域设置
4. **性能优化**
- 自动曝光调节
- 交替帧策略
- 多线程架构
5. **可视化界面**
- 实时检测结果显示
- 双模检测状态条
- 操作日志记录
- 用户交互警告
### 技术特点
- **海康MVS SDK集成**完整的SDK初始化、设备管理和参数控制
- **OpenCV图像处理**:高效的图像采集、转换和显示
- **多线程架构**:实时图像采集和处理
- **智能算法**基于HSV颜色空间和形态学操作的目标检测
- **用户友好**:直观的参数调节界面和实时状态显示
## 安装和配置
### 1. 硬件要求
- 海康工业相机推荐MV-CS016-10UC
- 计算机Windows 10/1164位
- USB 3.0或GigE网络接口
### 2. 软件要求
- Python 3.7+
- 海康MVS SDK
- OpenCV
- NumPy
- TkinterPython标准库
### 3. SDK安装
1. **下载MVS SDK**
- 访问海康官网https://www.hikvision.com/cn/
- 搜索 "MVS SDK" 或 "机器视觉 SDK"
- 下载对应操作系统的最新版本
2. **安装SDK**
- 运行安装程序,按照默认设置安装
- 安装路径建议使用默认路径
3. **配置环境变量**
- 将SDK安装目录下的bin文件夹添加到系统PATH环境变量
- 例如C:\Program Files\MVS\Runtime\bin\win64_x64
4. **配置Python环境**
- 复制SDK安装目录下的Python绑定文件
-C:\Program Files\MVS\Development\Samples\Python\MvImport
- 到:项目目录\Python\MvImport
### 4. 依赖安装
```bash
pip install opencv-python
pip install numpy
```
## 使用指南
### 主程序
**功能**:双模式激光检测系统的主程序,集成了相机管理、参数配置、检测算法和可视化界面。
**运行方式**
```bash
python main.py
```
**操作流程**
1. 启动程序后,系统会枚举连接的相机设备
2. 输入要打开的相机索引
3. 程序会自动初始化相机并开始取流
4. 同时启动参数控制面板
5. 系统会自动检测激光目标并显示结果
6.`Q` 键退出显示窗口
7.`Ctrl+C` 退出程序
**参数控制**
- 曝光时间:控制相机曝光时长(微秒)
- 增益控制相机信号增益dB
- 帧率控制相机采集帧率fps
- ROI设置感兴趣区域提高处理速度
- HSV调节颜色检测范围
- 形态学:设置形态学操作参数
- 几何参数:设置目标检测的几何条件
### 相机测试程序
**功能**:用于测试相机基本功能的验证程序,包括设备枚举、图像采集和显示。
**运行方式**
```bash
python verify_camera.py
```
**操作流程**
1. 启动程序后,系统会枚举连接的相机设备
2. 输入要打开的相机索引
3. 程序会打开相机并开始取流
4. 显示相机采集的实时图像
5.`Q` 键退出显示窗口
6.`Ctrl+C` 退出程序
**用途**
- 验证相机连接是否正常
- 测试相机基本功能
- 检查图像质量
- 排查相机相关问题
### 相机控制程序
**功能**:用于相机参数调节的独立控制界面程序。
**运行方式**
```bash
python camera_control.py
```
**操作流程**
1. 启动程序后,系统会自动初始化相机
2. 点击 "初始化相机" 按钮枚举设备
3. 点击 "打开相机" 按钮打开选中的设备
4. 点击 "开始取流" 按钮开始采集图像
5. 使用滑块调节曝光时间、增益和帧率
6. 点击 "停止取流" 按钮停止采集
7. 点击 "关闭相机" 按钮关闭设备
**用途**
- 快速调节相机参数
- 测试不同参数组合的效果
- 监控相机状态
## 代码结构
```
Dart/
├── main.py # 主程序:双模式激光检测系统
├── camera.py # 相机管理模块
├── camera_control.py # 相机控制界面
├── camera_hik.py # 海康相机实现
├── verify_camera.py # 相机验证程序
├── detector.py # 单点光斑检测器
├── dot_matrix_detector.py # 点阵灯盘检测器
├── arbitrator.py # 模式仲裁器
├── config_panel.py # 参数控制面板
├── auto_exposure.py # 自动曝光调节
├── utils.py # 工具函数
├── Python/
│ └── MvImport/ # 海康MVS SDK Python绑定
└── README.md # 项目说明文档
```
### 核心文件说明
| 文件 | 主要功能 | 说明 |
|------|----------|------|
| main.py | 双模式激光检测系统 | 集成所有模块,实现完整的检测流程 |
| camera.py | 相机管理 | 完整的相机管理功能和控制界面 |
| verify_camera.py | 相机验证 | 用于测试相机基本功能的独立程序 |
| detector.py | 单点光斑检测 | 基于HSV颜色空间的激光点检测 |
| dot_matrix_detector.py | 点阵灯盘检测 | 基于形态学操作的LED阵列检测 |
| arbitrator.py | 模式仲裁 | 智能选择最优检测模式 |
| config_panel.py | 参数配置 | 实时参数调节界面 |
## 常见问题和解决方案
### 1. 相机连接问题
**问题**:未找到设备
**解决方案**
- 检查相机是否正确连接
- 检查USB/GigE接口是否正常
- 检查MVS SDK是否正确安装
- 检查设备管理器中是否识别到相机
**问题**相机无法打开错误码2147483648
**解决方案**
- 关闭其他可能占用相机的程序
- 重启计算机
- 重新安装MVS SDK
- 检查相机驱动是否正确安装
### 2. 图像采集问题
**问题**:获取图像失败
**解决方案**
- 检查相机连接
- 检查相机是否被其他程序占用
- 重启相机
- 调整相机参数
**问题**:图像显示异常
**解决方案**
- 检查像素格式设置
- 调整曝光时间和增益
- 检查OpenCV安装
### 3. 检测算法问题
**问题**:激光点检测不到
**解决方案**
- 调整HSV颜色范围
- 调整曝光时间和增益
- 检查激光光源是否正常
- 调整形态学操作参数
**问题**:误检测较多
**解决方案**
- 缩小HSV颜色范围
- 增加形态学操作的开运算
- 调整几何参数阈值
- 设置ROI减小检测范围
### 4. 性能问题
**问题**:帧率过低
**解决方案**
- 增大ROI范围
- 降低图像分辨率
- 启用交替帧策略
- 关闭不必要的显示窗口
**问题**:程序卡顿
**解决方案**
- 减少同时显示的窗口数量
- 降低处理复杂度
- 检查计算机性能
## 系统要求
### 硬件要求
- CPUIntel Core i5或更高
- 内存8GB或更高
- 存储10GB可用空间
- 接口USB 3.0或GigE网络接口
### 软件要求
- 操作系统Windows 10/11 64位
- Python3.7或更高版本
- 海康MVS SDK最新版本
- OpenCV4.0或更高版本
- NumPy1.18或更高版本
## 许可证
本项目仅供学习和研究使用,未经授权不得用于商业用途。
## 联系方式
如有问题或建议,请联系项目维护人员。
---
**注意**使用本系统前请确保已经正确安装和配置海康MVS SDK并且相机已经正确连接到计算机。