cpp中opencv获取所有的usb相机设备信息
时间: 2023-11-12 20:06:10 浏览: 64
您可以使用OpenCV库中的`VideoCapture`类来获取所有的USB相机设备信息。以下是一个示例代码:
```cpp
#include <opencv2/opencv.hpp>
#include <iostream>
int main() {
std::vector<cv::VideoCapture> cameras;
cv::VideoCapture camera;
// 尝试打开所有可能的相机设备
for (int i = 0; i < 10; ++i) {
camera.open(i);
if (camera.isOpened()) {
cameras.push_back(camera);
}
else {
break;
}
}
// 打印相机设备信息
for (int i = 0; i < cameras.size(); ++i) {
std::cout << "Camera " << i << " properties:" << std::endl;
std::cout << "Width: " << cameras[i].get(cv::CAP_PROP_FRAME_WIDTH) << std::endl;
std::cout << "Height: " << cameras[i].get(cv::CAP_PROP_FRAME_HEIGHT) << std::endl;
std::cout << "FPS: " << cameras[i].get(cv::CAP_PROP_FPS) << std::endl;
std::cout << "FourCC: " << cameras[i].get(cv::CAP_PROP_FOURCC) << std::endl;
std::cout << "======================================" << std::endl;
}
return 0;
}
```
上述代码会尝试打开编号为0到9的所有相机设备,并打印出它们的宽度、高度、帧率以及FourCC编码。请注意,不同操作系统和相机驱动可能会有不同的编号方案,您可能需要调整上述代码来适应您的系统。
阅读全文