1#include "VVT-V2/lonely_point_handler.h"
4 Histogram{ 600, 300, sampling_rate / 2, point_id, x_, y_ },
5 OutputToCsv{ output_csv_filename, point_coordinates_, point_time_coordinates_, point_id },
7 text_resize_factor_{ text_resize_factor }
36 else return Point2f(0.0, 0.0);
101 int font = FONT_HERSHEY_PLAIN;
104 int line_spacing = 20;
107 int lines_amount = 3;
128 Scalar(100, 255, 100),
134 std::string confidence_string;
138 confidence_string =
"enough";
145 "Conf: " + confidence_string,
149 Scalar(100, 255, 100),
Класс для создания объектов-гистограмм, на которые можно выводить различную информацию
void ShowHistogram()
Выводит гистограмму в окно гистограммы
void SetYValues(std::vector< float > y_values)
Устанавливает Y-ы
void SetXValues(std::vector< double > x_values)
Устанавливает X-ы
bool is_histogram_plotted_
Флаг для отрисовки гистограммы
void UpdatePointColor() override
Обновляем текущий цвет точки
float text_resize_factor_
Коэффициент рескейла для отрисовки данных
void DrawHistogram() override
Отрисовывает гистограмму
LonelyPointHandler(Point2f init_coordinates, double sampling_rate, int point_id, float text_resize_factor, std::string output_csv_filename)
Конструктор этого класса
Scalar point_color_
Цвет точки
void DrawPoint(Mat &frame)
Отрисовывает точку на кадре
Point2f GetTextCoordinates()
Возвращает точку, необходимую для отображения координат
void DrawTextData(Mat &frame)
Отрисовывает текстовые данные рядом с точкой
void Draw(Mat &frame) override
Отрисовывает точку и данные, связанные с ней
Rect GetInteractionRect()
Возвращает координаты прямоугольника взаимодействия
void DrawInteractionRectangle(Mat &frame)
Отрисовывает прямоугольник взаимодействия
void DrawPointTrack(Mat &frame)
Отрисовывает линию перемещения (трек) точки
int point_id_
ID точки (нет блин почки)
~LonelyPointHandler()
Деструктор этого класса
Класс для сохранения метаданных (временных и пространственных координат, ID точки)
void Write()
Добавляет данные для записи
bool interacted_
Флаг взаимодействия с точкой
Point3f current_amplitude_
Фактические амплитуды вибрации по x, y. Выражаюытся в пикселях
Rect interaction_box_
Прямоугольник (область) взаимодействия с точкой
std::vector< double > x_
Контейнер для хранения координат гистограммы по оси X (фактически - найденный спектр частот вибрации ...
double sampling_rate_
Частота сэмплирования (фактически - FPS исходного видео)
double confidence_level_
Рейтинг достоверности вибрации
int interaction_offset_
Половина длины прямоугольника взаимодействия
Point3f relative_amplitude_
Относительные амплитуды вибрации по x, y. Выражается отношением амплитуды
double main_frequency_
Главная частота (основная)
std::vector< float > y_
Контейнер для хранения координат гистограммы по оси Y (фактически - найденные магнитуды точки после в...
double sensivity_
Чувствительность определения вибрации
std::vector< double > frequencies_
Контейнер для частот точки
std::vector< Point2f > point_coordinates_
Контейнер для координат точки
std::string ToStringWithPrecision(const T value, const int n=9)
Выполняет округление числа с определенной точностью