Tag: opticalflow

我应该如何使用velX,vely信息来获得当前帧和前一帧之间的X和Y位移?

我在C#中使用openCV库中的Lucas Kanade光流算法; 有两个系列的框架,我想在每两个框架中找出什么是光学流程并在pictureBox中显示它。 我可以从以下函数中获取velX和velY: Emgu.CV.OpticalFlow.LK(imGrayCurrent, imGrayNext, windSize, velX, velY); 现在,我应该如何使用这两个来显示两帧之间的流量? 或换句话说,我应该如何获得像素的位移? TNX

C#Emgu:使用DISOpticalFlow

今天是个好日子, 我正在尝试为video构建一个实时帧插值程序。 因为我一直使用C#,所以我选择使用OpenCV和Emgu 3.2.0(最新版本)。 所以,这是它: 首先,我有两个名为frame1和frame2的图像,显​​然是我video中的两帧。 接下来,我将构建我的DISOpticalFlow对象,如下所示 现在我必须用它来获得这两帧之间的平移向量。 所以我构建了一个名为flow的Gray Image,我使用了DISOpticalFlow的calc方法。 Aaaaand ……没什么。 无论我尝试什么,流量总是空的(参见此屏幕: http : //imgur.com/ozN0XgN ) 我错过了什么或做错了什么? 感谢大家阅读,祝你有个美好的一天! 代码: //My items Image frame1 = new Image(1280, 720); Image frame2 = new Image(1280, 720); DISOpticalFlow opticalFlowAlgorithm = new DISOpticalFlow(DISOpticalFlow.Preset.Medium); Image flow= new Image(1280, 720); //Get my frame from my server //Note : this is working […]

如何实现光流跟踪器?

我正在使用OpenCV包装器–Emgu CV,我正在尝试使用光流实现运动跟踪器,但我无法找到一种方法来组合从OF算法检索的水平和垂直信息: flowx = new Image(size); flowy = new Image(size); OpticalFlow.LK(currImg, prevImg, new Size(15, 15), flowx, flowy); 我的问题是不知道如何组合垂直和水平运动的信息,以建立移动物体的跟踪器? 一个新的形象? 顺便说一句,有一种简单的方法来显示当前帧的流信息? 提前致谢。