读书人

OpenCV直方图的应用

发布时间: 2012-12-14 10:33:07 作者: rapoo

OpenCV直方图的使用

主要涉及两个函数:


OpenCV直方图的应用OpenCV直方图的应用OpenCV直方图的应用
CvHistogram结构

归一化标识。如果不为0,则ranges[i]0<=i<cDims,译者注:cDims为直方图的维数,对于灰度图为1,彩色图为3)是包含两个元素的范围数组,包括直方图第i维的上界和下界。在第i维上的整个区域[lower,upper]被分割成 dims[i] 个相等的块(译者注:dims[i]表示直方图第i维的块数),这些块用来确定输入象素的第 i 个值(译者注:对于彩色图像,i确定R,G,或者B)的对应的块;如果为0,则ranges[i]是包含dims[i]+1个元素的范围数组,包括lower0,upper0,lower1,upper1 ==lower2,..., upperdims[i]-1,其中lowerjupperj分别是直方图第i维上第 j 个方块的上下界(针对输入象素的第 i 个值)。任何情况下,输入值如果超出了一个直方块所指定的范围外,都不会被 cvCalcHist 计数,而且会被函数cvCalcBackProject 置零。

void cvCalcHist( IplImage** image, CvHistogram* hist, int accumulate=0, const CvArr* mask=NULL );

操作mask,确定输入图像的哪个象素被计数

void cvCalcHist( IplImage** image, CvHistogram* hist, int accumulate=0, const CvArr* mask=NULL );

操作mask,确定输入图像的哪个象素被计数

void cvGetMinMaxHistValue( const CvHistogram* hist, float* min_value, float* max_value, int* min_idx=NULL, int* max_idx=NULL );

数组中最大坐标的指针

函数 cvGetMinMaxHistValue 发现最大和最小直方块以及它们的位置。任何输出变量都是可选的。在具有同样值几个极值中,返回具有最小下标索引(以字母排列顺序定)的那一个。




读书人网 >编程

热点推荐