Visual Vibration Tracking 0.2
Загрузка...
Поиск...
Не найдено
eulerian_enlargement.h
1#ifndef EULERIAN_ENLARGEMENT_H
2#define EULERIAN_ENLARGEMENT_H
3
4// OpenCV headers
5#include <opencv2/opencv.hpp>
6
7using namespace cv;
8
13{
14protected:
17
18protected:
22 void LaplaceEnlarge(Mat& motion_pyramid_level, int current_level);
26 void Attenuate(Mat& motion_frame);
27
28 // Вход и выход из пирамид. Фильтры
32 void BuildLaplacePyramid(const Mat& input_frame, std::vector<Mat>& input_pyramid, const int levels);
39 void IirFilter(Mat& input_pyramid_level, Mat& motion_pyramid_level, Mat& low_pass_high_level, Mat& low_pass_low_level, double cutoff_low, double cutoff_high);
43 void BuildFromLaplacePyramid(std::vector<Mat>& motion_pyramid, Mat& motion_frame, int levels);
44
45protected:
46 // lowpass
47 std::vector<Mat> low_pass_high_pyramid_;
48 std::vector<Mat> low_pass_low_pyramid_;
49 //
50 double cutoff_low_;
51 double cutoff_high_;
52
64 double lambda_;
65 double lambda_cutoff_;
73 double delta_;
74
75 double alpha_;
76};
77
78#endif
Класс для визуального увеличения вибрации на видео
double lambda_
Показательная длина волны
void IirFilter(Mat &input_pyramid_level, Mat &motion_pyramid_level, Mat &low_pass_high_level, Mat &low_pass_low_level, double cutoff_low, double cutoff_high)
Фильтр для отсекания низких и высоких "пространственных" частот ("фильтр с бесконечной импульсной хар...
void BuildFromLaplacePyramid(std::vector< Mat > &motion_pyramid, Mat &motion_frame, int levels)
Извлекаем выходное изображение из пирамиды Лапласа
double exaggeraiton_coefficient_
Коэффициент увеличения. Чем выше - тем больше шума, тем сильнее увеличиваются небольшие движения.
int levels_amount_
Количество уровней (слоев) пирамиды
void LaplaceEnlarge(Mat &motion_pyramid_level, int current_level)
Осуществляет увеличение движения на конкретном уровне пирамиды
double delta_
Коэффициент, использующийся при увеличении
void Attenuate(Mat &motion_frame)
"Приглушает" усиленные цвета на кадре
void BuildLaplacePyramid(const Mat &input_frame, std::vector< Mat > &input_pyramid, const int levels)
Создает пирамиду изображений
double color_attenuation_coefficient_
Коэффициент приглушеняи цвета