|
Visual Vibration Tracking 0.2
|
Класс для создания объектов-обработчиков контуров. Подробнее...
#include <contour_handler.h>
Открытые члены | |
| ContourHandler (Mat frame, Rect *ROI=nullptr) | |
| Конструктор этого класса Подробнее... | |
| void | DrawContours (Mat &frame) |
| Отрисовывает контура на изображении Подробнее... | |
| std::vector< std::vector< Point2i > > | GetContours () |
| Возвращает найденные контура в виде { { contour_1 }, { contour_2 }, ... , { contour_n } }. Подробнее... | |
| std::vector< Point2f > | GetContinousContours () |
| Возвращает найденные контура в виде { contour_1, contour_2, ... , contour_n }. Подробнее... | |
Закрытые члены | |
| template<typename T > | |
| std::vector< T > | MakeTwiceThinner (std::vector< T > src) |
| Удаляет каждый второй элемент вектора (уменьшает размер в два раза) Подробнее... | |
| template<typename T > | |
| float | CalculateDistance (T point1, T point2) |
| Вычисляет расстояние между двумя точками Подробнее... | |
Закрытые данные | |
| std::vector< std::vector< Point > > | contour_shapes_ |
| Контуры в виде { { contour_1 }, { contour_2 }, ... , { contour_n } }. Подробнее... | |
| float | minimal_distance_ |
| Минимальное расстояние между точками контура, при котором "левая" ("первая") точка будет сохранена Подробнее... | |
Класс для создания объектов-обработчиков контуров.
Способен найти контура на входном изображении (принимается в конструкторе), отрисовать их, и произвести определенные операции над ними (например, уменьшить размер или плотность точек в контуре
См. определение в файле contour_handler.h строка 22
| ContourHandler::ContourHandler | ( | Mat | frame, |
| Rect * | ROI = nullptr |
||
| ) |
Конструктор этого класса
| frame | Mat-instance изображения, на котором будет выполнен поиск контуров. Изображение может быть в RGB/gray-scale (в первом случае будет сконвертировано внутри) |
| ROI | регион интереса, на котором будут найдены контуры. |
См. определение в файле contour_handler.cpp строка 3
|
private |
Вычисляет расстояние между двумя точками
| point1 | первая точка |
| point2 | вторая точка |
См. определение в файле contour_handler.cpp строка 94
| void ContourHandler::DrawContours | ( | Mat & | frame | ) |
Отрисовывает контура на изображении
| frame | адрес изображения, на котором будет отрисованы найденные контура |
См. определение в файле contour_handler.cpp строка 33
| std::vector< Point2f > ContourHandler::GetContinousContours | ( | ) |
Возвращает найденные контура в виде { contour_1, contour_2, ... , contour_n }.
Фактически выполняет "склеивание" найденных контуров в один вектор
См. определение в файле contour_handler.cpp строка 46
| std::vector< std::vector< Point2i > > ContourHandler::GetContours | ( | ) |
Возвращает найденные контура в виде { { contour_1 }, { contour_2 }, ... , { contour_n } }.
См. определение в файле contour_handler.cpp строка 41
|
private |
Удаляет каждый второй элемент вектора (уменьшает размер в два раза)
| src | вектор, который будет "проряжён" |
См. определение в файле contour_handler.cpp строка 78
|
private |
Контуры в виде { { contour_1 }, { contour_2 }, ... , { contour_n } }.
См. определение в файле contour_handler.h строка 69
|
private |
Минимальное расстояние между точками контура, при котором "левая" ("первая") точка будет сохранена
См. определение в файле contour_handler.h строка 74