使用 cv::equalizeHist() 的 OpenCV 直方图均衡过程:需要帮助理解最后一步

Posted

技术标签:

【中文标题】使用 cv::equalizeHist() 的 OpenCV 直方图均衡过程:需要帮助理解最后一步【英文标题】:OpenCV histogram equalization process using cv::equalizeHist():Need help understanding final step for this 【发布时间】:2012-08-12 09:11:59 【问题描述】:

我有一个关于使用 cv::equalizeHist()(OpenCV 图像处理库的函数)的直方图均衡过程的问题。在本网站:

Histogram equalization process using opencv explained

直方图均衡化过程解释为:

    计算 src 的直方图 H。

    标准化直方图,使直方图 bin 的总和为 255。

    计算直方图的积分。 [公式在上述网站中给出]

    使用 H' 作为查找表转换图像。 [公式在上述网站中给出]

我在理解第 4 步时遇到问题。作者所说的这一行是什么意思?

谁能帮我理解作者是如何从第 4 步得到最终均衡结果的?

他/她在第 4 步中使用了什么方法?他/她是如何改变看着 H' 的图像的?

【问题讨论】:

【参考方案1】:

经过一番谷歌搜索,我找到了您问题的答案。

    阅读此wikipedia article。

    从源代码cvhistogram.cpp(其实可以在你的项目或库中使用代码实现这个功能)我在函数cvEqualizeHist这行找到:

    CV_CALL(cvLUT(src, dst, lut));

    最后是您在 OpenCV 中寻找的函数的解释:LUT。

【讨论】:

以上是关于使用 cv::equalizeHist() 的 OpenCV 直方图均衡过程:需要帮助理解最后一步的主要内容,如果未能解决你的问题,请参考以下文章

OpenCV Python equalizeHist 彩色图像

OpenCV-实现直方图均衡化(对比cv::equalizeHist)

机器学习进阶-直方图与傅里叶变化-直方图均衡化 1.cv2.equalizeHist(进行直方图均衡化) 2. cv2.createCLAHA(用于生成自适应均衡化图像)

3直方图与二值化,图像梯度

OpenCV---直方图的应用(均衡化和图像比较)

Python 和 OpenCV - 改进我的车道检测算法