【发布时间】:2011-12-01 09:31:51
【问题描述】:
我正在使用 OpenCV 从 A4Tech 相机捕获图像。当我尝试降低图像分辨率时,图像断言失败:
CvCapture *camera = cvCreateCameraCapture(1); // 0 is index of Laptop integrated camera
cvSetCaptureProperty( camera, CV_CAP_PROP_FRAME_WIDTH, 160 );
cvSetCaptureProperty( camera, CV_CAP_PROP_FRAME_HEIGHT, 140 );
assert(camera); // This is passed
while(true)
{
// ....
IplImage * image=cvQueryFrame(camera);
assert(image); // This fails. (Line 71 is here)
// ....
}
输出是:
HIGHGUI ERROR: V4L: Initial Capture Error: Unable to load initial memory buffers.
udpits: main.cpp:71: int main(int, char**): Assertion `image' failed.
Aborted
【问题讨论】:
-
相机是否支持该分辨率?它是否适用于不同的分辨率?
-
@LiMuBei 是的。在 Cheese 相机设置中,相机有 5 种不同的分辨率。
-
但是当你设置它们时它们会起作用吗?
-
是的,它们在奶酪中工作正常。
标签: c++ qt opencv resolution