读取 PSEye 相机帧
Reading a PSEye Camera frame
我正在使用CL Eye Multicam C++ API从PSEye相机获取帧,我发现了一些有趣的东西,我希望有人可以向我解释这种行为。
如果我使用常规代码(大约第 108 行),则遵循此示例:
while(_running)
{
cvGetImageRawData(pCapImage, &pCapBuffer);
CLEyeCameraGetFrame(_cam, pCapBuffer);
cvShowImage(_windowName, pCapImage);
}
pCapBuffer已更新,但是如果我只是这样做:
while(_running)
{
CLEyeCameraGetFrame(_cam, pCapBuffer);
}
pCapBuffer
雷迈斯NULL
!因此,对于我所看到的CLEyeCameraGetFrame()
只是在有人"消费"它时更新pCapBuffer
......我不明白的是CLEyeCameraGetFrame()
怎么知道缓冲区被读取了?我期待每次打电话时都会更新pCapBuffer
CLEyeCameraGetFrame()
....这是相机帧读取中的常规行为吗?
另外,如果有人可以指出我如何从这个pCapBuffer
中做出QImage
,那将非常有帮助!
我终于明白发生了什么......cvGetImageRawData()
将图像pCapImage
原始数据复制到pCapBuffer
,从而为其提供一个地址,使其指向图像类内部数据表示形式。所以每次调用CLEyeCameraGetFrame()
时,它都会更改pCapBuffer
内部的数据,这与pCapImage
内部的数据相同。此代码的设计者只是使用 OpenCV 函数初始化具有适当空间量的缓冲区,并使用它来获取帧图像。
相关文章:
- 了解 GLM- openGL 中的相机转换
- OpenGL相机和相机空间转型的困惑
- 如何使用按钮更新GTK3图像以使用C++从相机捕获图片
- 通过 API 控制 DJI 相机
- 将相机数据从服务器实时流式传输到客户端
- 来自逆 vp 矩阵和相机位置的光线方向不正确
- OpenCV - Python 断言错误:SAD 算法 - 立体相机视差图计算
- Qt 和 Android - 如何使用 Qandroidjniobject 启动相机
- 在Windows(C++)中使用USB相机拍摄高分辨率照片
- 如何在相机类中添加胶卷
- 强制Qt相机视频格式
- 操纵安卓相机的深度图导致应用程序崩溃
- 深度值没有意义 R200 相机
- Qt QML相机在部署后显示白屏
- Opencv 如何从相机读取单帧
- OpenCV - 来自相机的实时馈送不流畅
- 佳能SDK无法从相机下载图片
- 如何处理来自MIPI相机的12位图像?
- 如何设置vtk相机的正确变焦系数?
- 读取 PSEye 相机帧