123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- #ifndef OPENCV_VIDEOSTAB_OUTLIER_REJECTION_HPP
- #define OPENCV_VIDEOSTAB_OUTLIER_REJECTION_HPP
- #include <vector>
- #include "opencv2/core.hpp"
- #include "opencv2/videostab/motion_core.hpp"
- namespace cv
- {
- namespace videostab
- {
- class CV_EXPORTS IOutlierRejector
- {
- public:
- virtual ~IOutlierRejector() {}
- virtual void process(
- Size frameSize, InputArray points0, InputArray points1, OutputArray mask) = 0;
- };
- class CV_EXPORTS NullOutlierRejector : public IOutlierRejector
- {
- public:
- virtual void process(
- Size frameSize, InputArray points0, InputArray points1, OutputArray mask);
- };
- class CV_EXPORTS TranslationBasedLocalOutlierRejector : public IOutlierRejector
- {
- public:
- TranslationBasedLocalOutlierRejector();
- void setCellSize(Size val) { cellSize_ = val; }
- Size cellSize() const { return cellSize_; }
- void setRansacParams(RansacParams val) { ransacParams_ = val; }
- RansacParams ransacParams() const { return ransacParams_; }
- virtual void process(
- Size frameSize, InputArray points0, InputArray points1, OutputArray mask);
- private:
- Size cellSize_;
- RansacParams ransacParams_;
- typedef std::vector<int> Cell;
- std::vector<Cell> grid_;
- };
- }
- }
- #endif
|