【发布时间】:2013-04-15 15:52:59
【问题描述】:
我有一个简单的代码,根据用户输入,相机将捕获图像。代码如下:
for (int i=0; i<4; i++){
cvWaitKey(0); //wait for input then take picture
Mat grabbed = cam1.CamCapture();
Image[i].setImage(grabbed.clone());
imshow("picture", Image[i].getImage());
cvWaitKey(1);
}
问题是在显示图像时,Image[i] 正在显示用于 Image[i-1] 的图片。
我不明白这似乎是什么问题,因为我认为进入循环后,我必须按下一个键,然后相机会捕获一张图片并将其存储到第一个对象 Image[0] 和该过程重复4次。然而,情况似乎并非如此。
我目前有一个使用嵌套循环的解决方法。 诠释 k; 对于 (int i=0; i
然而,这似乎不是一种有效的方式。我认为这个问题可能是由于缓冲区问题,但我不太确定。
请指教,谢谢。
【问题讨论】: