opencv教程(四)凸包检测c++
凸包(Convex Hull)是一个计算几何图形学中的概念,在二维欧几里得空间中,凸包可想象为一条刚好包住所有点的橡皮圈。
对于给定二维平面上的点集,凸包就是将最外层的点连接起来构成的凸多边形。物体的凸包检测常常应用在物体识别,手势识别及边界检测等领域。
C++: void convexHull(InputArray points, OutputArray hull, bool clockwise=false, bool returnPoints=true )
函数解析:
实现一个点集的凸包检测。参数points表示输入2维点集,可存储在向量或矩阵Mat中;参数hull为输出的凸包,这是一个整数索引的载体或点的矢量;参数clockwise为方向标志位;参数returnPoints为操作标准位。
承接上篇教程
凸包检测(检测行驶的车辆)
#include<opencv2/core/core.hpp>
#include<opencv2/imgproc/imgproc.hpp>
#include<opencv2/highgui/highgui.hpp>
#include<iostream>
using namespace cv;
using namespace std;
const cv::Scalar SCALAR_BLACK = cv::Scalar(0.0, 0.0, 0.0);
const cv::Scalar SCALAR_WHITE = cv::Scalar(255.0, 255.0, 255.0