Browse Source

Move DISOpticalFlow from optflow to video.

pull/84/merge
Canming Huang 7 years ago
parent
commit
bfed5354aa
  1. 2
      Emgu.CV.Extern/imgcodecs/imgcodecs_c_extra.h
  2. 15
      Emgu.CV.Extern/optflow/optflow_c.cpp
  3. 18
      Emgu.CV.Extern/video/video_c.cpp
  4. 2
      Emgu.CV.Extern/videostab/videostab_c.h

2
Emgu.CV.Extern/imgcodecs/imgcodecs_c_extra.h

@ -8,7 +8,7 @@
#ifndef EMGU_IMGCODECS_C_H
#define EMGU_IMGCODECS_C_H
#include "opencv2/imgcodecs/imgcodecs_c.h"
#include "opencv2/core/core_c.h"
#include "opencv2/imgcodecs/imgcodecs.hpp"
CVAPI(bool) cveImwrite(cv::String* filename, cv::_InputArray* img, const std::vector<int>* params);

15
Emgu.CV.Extern/optflow/optflow_c.cpp

@ -32,21 +32,6 @@ cv::DenseOpticalFlow* cveOptFlowDeepFlowCreate(cv::Algorithm** algorithm, cv::Pt
return ptr.get();
}
cv::optflow::DISOpticalFlow* cveDISOpticalFlowCreate(int preset, cv::DenseOpticalFlow** denseFlow, cv::Algorithm** algorithm, cv::Ptr<cv::optflow::DISOpticalFlow>** sharedPtr)
{
cv::Ptr<cv::optflow::DISOpticalFlow> ptr = cv::optflow::createOptFlow_DIS(preset);
*sharedPtr = new cv::Ptr<cv::optflow::DISOpticalFlow>(ptr);
*denseFlow = dynamic_cast<cv::DenseOpticalFlow*>(ptr.get());
*algorithm = dynamic_cast<cv::Algorithm*>(ptr.get());
return ptr.get();
}
void cveDISOpticalFlowRelease(cv::optflow::DISOpticalFlow** flow, cv::Ptr<cv::optflow::DISOpticalFlow>** sharedPtr)
{
delete *sharedPtr;
*flow = 0;
*sharedPtr = 0;
}
cv::DenseOpticalFlow* cveOptFlowPCAFlowCreate(cv::Algorithm** algorithm, cv::Ptr<cv::DenseOpticalFlow>** sharedPtr)
{

18
Emgu.CV.Extern/video/video_c.cpp

@ -215,4 +215,20 @@ const cv::Mat* cveKalmanFilterPredict(cv::KalmanFilter* kalman, cv::Mat* control
const cv::Mat* cveKalmanFilterCorrect(cv::KalmanFilter* kalman, cv::Mat* measurement)
{
return &(kalman->correct(*measurement));
}
}
cv::DISOpticalFlow* cveDISOpticalFlowCreate(int preset, cv::DenseOpticalFlow** denseFlow, cv::Algorithm** algorithm, cv::Ptr<cv::DISOpticalFlow>** sharedPtr)
{
cv::Ptr<cv::DISOpticalFlow> ptr = cv::DISOpticalFlow::create(preset);
*sharedPtr = new cv::Ptr<cv::DISOpticalFlow>(ptr);
*denseFlow = dynamic_cast<cv::DenseOpticalFlow*>(ptr.get());
*algorithm = dynamic_cast<cv::Algorithm*>(ptr.get());
return ptr.get();
}
void cveDISOpticalFlowRelease(cv::DISOpticalFlow** flow, cv::Ptr<cv::DISOpticalFlow>** sharedPtr)
{
delete *sharedPtr;
*flow = 0;
*sharedPtr = 0;
}

2
Emgu.CV.Extern/videostab/videostab_c.h

@ -22,7 +22,7 @@ public:
virtual void reset()
{
_capture->set(CV_CAP_PROP_POS_FRAMES, 0);
_capture->set(cv::VideoCaptureProperties::CAP_PROP_POS_FRAMES, 0);
};
virtual cv::Mat nextFrame()

Loading…
Cancel
Save