OpenCV 获取摄像头友好名称 windows C++
时间: 2024-10-22 07:28:11 浏览: 35
在Windows上使用OpenCV获取摄像头的设备名(即友好名称),你可以通过以下几个步骤:
1. 首先,确保已安装了OpenCV库,并配置好环境变量。
2. 使用OpenCV提供的`cv::VideoCapture`类,该类用于读取视频流。你需要创建一个实例,传递摄像头的索引作为参数。摄像头通常从0开始计数(0代表内置摄像头)。
```cpp
#include <opencv2/opencv.hpp>
int main() {
cv::VideoCapture cap(0); // 使用索引0获取默认摄像头
if (!cap.isOpened()) {
std::cerr << "Failed to open camera" << std::endl;
return -1;
}
// 获取摄像头的名称
cv::Mat frame;
int index = cap.get(cv::CAP_PROP_FRAME_INDEX);
std::string deviceName = cap.query(cv::CAP_PROP_DEVICE_NAME); // 这里得到的是设备的官方名称
std::cout << "Camera name: " << deviceName << ", Index: " << index << std::endl;
// 略去实际的视频流处理部分...
return 0;
}
```
在这个例子中,`get(cv::CAP_PROP_FRAME_INDEX)`返回的是当前选择的帧索引,而`query(cv::CAP_PROP_DEVICE_NAME)`则返回设备的用户友好的名称。
阅读全文