OpenCV2 计算直方图

2014-11-24 11:22:42 ? 作者: ? 浏览: 1

我们仍然如前例一样,构建一个类来处理得到直方图。


我们来看看基本的类定义


类的实现


这里面要用的几个函数在这里列出:


C++: void minMaxLoc(const SparseMat& src, double* minVal, double* maxVal, int* minIdx=0, int* maxIdx=0)


其作用是寻找一个矩阵中最大和最小值,并得到它们的位置



C++: void split(const Mat& mtx, vector& mv)


把一个多通道矩阵分成几个单通道矩阵,在这里主要用于计算各通道的直方图



C++: void calcHist(const Mat* arrays, int narrays, const int* channels, InputArray mask, OutputArray hist, int dims, const int* histSize, const float** ranges, bool uniform=true, bool accumulate=false )


计算直方图,各参数含义可在参考文档中查到


Parameters:



我们来看看主程序


运行效果如下:



-->

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: