opencv - 具有 double 值的一维直方图opencv

标签 opencv histogram

我正在尝试使用opencv创建直方图。我有一个来自模糊操作的图像(32位),所以我只知道该值在[-0.5; 0.5],但我对起始数据一无所知。

问题是我不了解如何设置参数来计算此类直方图。
我写的代码是:

int numbins=1000;
float range[]={-0.5, 0.5};
float *ranges[]={range};
CvHistogram *hist=cvCreateHist(1, &numbins, CV_HIST_ARRAY, ranges, 1);
cvCalcHist(&img, hist);

img是我要获取直方图的图像。如果我尝试打印直方图,我只会得到一张黑色图片,而如果使用灰度8位图像,则使用相同的功能,我可以获得正确的直方图。

最佳答案

您是否看过calcHist示例?另外,camshiftdemo大量使用直方图。

您是否在显示之前使用normalize标准化了直方图输出(camshiftdemo显示了如何执行此操作)?接近0的值在显示时将显示为黑色,但是在0到255之间进行归一化时将很好地显示。

关于opencv - 具有 double 值的一维直方图opencv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8225818/

相关文章:

opencv - JavaCV 中的 cvHoughCircles() 参数?

python - Seaborn 直方图 bin 宽度未扩展到 bin 标签

c++ - 如何加快LUT查找的直方图?

matplotlib - 如何使用 matplotlib 在两条直方图线之间完成颜色填充?

matlab - 在 mex 函数中使用 opencv

c# - OpenCV 网络摄像头帧到 OpenGL 纹理

opencv - 如何解决带有鱼眼相机参数的 PnP?

windows - 如何使用Windows将OpenCV库导入Eclipse

r - 将正态分布拟合到分组数据,给出预期频率

python - 在直方图中记录计数值,而不是轴本身