MindVision相机驱动的装甲板检测系统
本项目是基于MindVision相机SDK的装甲板检测系统,工业相机替代原有的OpenCV相机接口。
项目结构
MindVisionCamera.h/cpp- MindVision相机驱动实现main.cpp- 主程序入口(已修改为使用MindVision相机)- 其他
.cpp/.h文件 - 原有的图像处理、装甲板检测、卡尔曼滤波等功能模块
环境准备
此项目需要在WSL Ubuntu环境中编译和运行,因为MindVision SDK位于WSL系统中。
1. 确保MindVision SDK已安装
在WSL Ubuntu中确认SDK路径:
ls -la /home/lld/mdv/include/CameraApi.h
ls -la /home/lld/mdv/lib/x86/
2. 安装必要的依赖
sudo apt update
sudo apt install build-essential cmake libopencv-dev
编译项目
方法1:使用构建脚本
cd /home/lld/code/mdvs
chmod +x build.sh
./build.sh
方法2:手动编译
cd /home/lld/code/mdvs
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make -j$(nproc)
运行程序
./build/armor_detector_mdv
配置说明
- 相机ID可在main函数中修改
cam_id变量 - 默认分辨率:640x480,帧率:30fps
- 支持颜色切换(红色/蓝色)
- 支持TTL通信(默认关闭)
注意事项
- 此项目使用MindVision相机SDK直接驱动相机,可以获得更好的性能和相机控制能力
- 曝光、白平衡等参数可在
MindVisionCamera.cpp中的set_camera_parameters()函数中调整 - 如果遇到编译错误,请检查MindVision SDK的库文件名是否正确(可能是
libMVSDK.so或libMVSDK.a)
键盘控制
- 按 'q' 键退出程序
- 按其他键继续运行
故障排除
如果相机无法打开:
- 检查相机是否正确连接
- 确认MindVision相机驱动是否正确安装
- 验证相机ID是否正确
- 检查权限(可能需要将用户添加到video组)
MindVision-SDK
Linux: >wget https://www.mindvision.com.cn/wp-content/uploads/2023/08/linuxSDK_V2.1.0.37.tar.gz
Languages
C++
95.6%
C
2.7%
CMake
1.7%