1

我最近从 OpenCv 切换到 Emgu CV .. 在 opencv 中,我使用计算绝对差异,cvAbsDiff(Frame1,Frame2,foreground); 并且我可以检查帧差异的值:if(cvNorm(frame2,frame1) > xyz){ ... } 在 Emgu cv 中,我计算为:Difference = Previous_Frame.AbsDiff(Frame); 如解释这里差异的类型是图像..我想知道,我怎样才能得到差异的价值(双)?谢谢 :)

4

1 回答 1

1

你能再澄清一下你的问题吗?

但是使用 CvInvoke,您可以:

CvInvoke.cvAbsDiff(frame1, frame2, foreground);
double valueInDouble = CvInvoke.cvNorm(frame1, frame2, NORM_TYPE.CV_DIFF, IntPtr.Zero);

if (valueInDouble < xyz){}

Mask 是一个可选参数(在 OpenCV 文档中设置为 NULL),因此您可以将其设置为 IntPtr.Zero

于 2013-03-06T11:57:18.597 回答