ios:使用cvSetCaptureProperty在使用OpenCV捕获图像时更改分辨率

时间:2012-09-03 11:17:36

标签: iphone objective-c ios opencv camera

我正在开发Iphone应用程序。我正在使用OpenCV用相机拍照并将其用作UIImage。

首先拍照,我宣布了cvCapture

CvCapture * capture = cvCaptureFromCam(1200) //(1200 is to use the CV_CAP_AVFOUNDATION  from the AVFoundation framework)

然后我使用cvQueryFrame(capture)来获取图像。

一切正常。

现在我得到的图像分辨率是480X360。我想让图像更大。在对桌面应用程序进行研究和测试后,我发现我们可以使用它来设置捕获分辨率:

cvSetCaptureProperty(capture, CV_CAP_PROP_FRAME_WIDTH, 1280);
cvSetCaptureProperty(capture, CV_CAP_PROP_FRAME_WIDTH, 720);

然而,这不起作用,图像尺寸不会改变。

在调用cvSetCaptureProperty后,我直接使用cvGetCaptureProperty来阅读属性,以确保它们正在发生变化。但他们没有改变(我仍然把它们变成480X360)。就像cvSetCaptureProperty没有正确设置属性一样。

在使用开放式CV的桌面应用程序上,这些方法工作正常,分辨率也正确更改。我正在测试Iphone 4s btw。

知道为什么设置框架高度和宽度不起作用?

非常感谢您的帮助

0 个答案:

没有答案