我正在使用带有raspicam的raspberry pi来运行一个项目。我从http://sourceforge.net/projects/raspicam/files/下载了raspicam库? 我试图运行图像减法的代码,但没有得到结果。这是我的代码
raspicam::RaspiCam_Cv Camera;
Camera.set(cv::CAP_PROP_FRAME, CV_8UC1);
if(!Camera.open())
{
std::cerr<<"cannot open camera"<<std::endl;
}
Camera.grab();
Camera.retrieve(frame1);
Camera.grab();
Camera.retrieve(frame2);
Camera.grab();
Camera.retrieve(frame3);
while (True)
{
frame1=frame2;
frame2=frame3;
Camera.grab();
Camera.retrieve(frame3);
absdiff(frame2,frame1,d1);
imshow("result1",d1);
absdiff(frame2,frame3,d2);
imshow("result2",d2);
}
当我运行此代码时,我得到result1和result2的空白帧作为输出。如果我错过了某些内容,这只是我的代码的一部分忽略。
答案 0 :(得分:0)
好吧,在你的循环中
frame1=frame2;
...
absdiff(frame2,frame1,d1);
这有点零......
另外,你考虑过这里的时间吗?您在时域中非常靠近地抓取图像,因此它们自然会大部分相同(条形噪声和快速运动),因此差异将接近于零。
干杯,