对OpenCV直方图的数据结构CvHistogram的理解

本文详细解析了OpenCV中CvHistogram数据结构的各个成员,包括type、bins、thresh、thresh2和mat,阐述了它们在直方图计算中的作用,特别是对于多维直方图的理解。通过实例帮助读者深入理解直方图的维数、bin数量和大小设定,并提供了相关资源供下载学习。
摘要由CSDN通过智能技术生成

        之前被OpenCV的直方图的数据结构CvHistogram弄得很纠结。上网一搜,也没什么相关的资料。现在有点头绪了,就写点东西,让后面的人好走一些吧。

 

       先来看看CvHistogram的定义:

typedef structCvHistogram
{
    int     type;
    CvArr* bins;
    float   thresh[CV_MAX_DIM][2];  /* For uniformhistograms.                      */
    float**thresh2;                /* For non-uniform histograms.                  */
    CvMatND mat;                    /*Embedded matrix header for array histograms. */
}
CvHistogram;

        第一个成员type,相信大家都见过很多结构都有其。比如:CvMat、CvMatND、IplImage(图像结构中,其用nSize成员代替)。这个成员用来区分各个类型的。OpenCV很多函数的原型都用到了一个CvArr*类型。这个类型说明可以接受一个CvMat或者IplImage类型的指针。这是我们对它的最初理解。其实,看过CvArr定义的人都知道,其实是typedefvoid CvArr;并非派生关系。            对于OPenCV函数内部,得到的是一个void指针,这时就有必要确切的知道得到的到底是一个什么类型࿰

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值