我有两个连续的图像,我想在c#中使用EmguCv稳定。
我发现了很多关于如何执行图像稳定的信息,但是我找不到关于如何使用Emgu来稳定两个连续帧的详细解释(实际代码示例)。
一般来说,我知道我必须做以下事情:
基于以上所述,我试图进行图像稳定。
我有两个连续的帧:
Image<Gray, ushort> FirstImage = new Image<Gray, ushort>(Width, Height);
Image<Gray, ushort> SecondImage= new Image<Gray, ushort>(Width, Height);
我试图计算好的功能:
Emgu.CV.Features2D.GFTTDetector _GFTTdetector = new Emgu.CV.Features2D.GFTTDetector(500,0.05);
var GFP1 = _GFTTdetector.Detect(FirstImage);
然而,当我调用.Detect时,我得到一个OpenCV异常,我无法继续:
$ exception {“OpenCV:scn == 3 || scn == 4”} Emgu.CV.Util.CvException
有人知道我为什么会遇到这个例外吗?
此外,如果有人可以发布如何使用以下函数的示例代码,我将不胜感激,因为我不确定我将使用哪些输入参数:
最后_GFTTdetector.Detect()返回KeyPoint []类型,但是CvInvoke.CalcOpticalFlowPyrLK()只接受优点的PointF []参数,那么我如何将KeyPoint []转换为PointF []?