zoukankan      html  css  js  c++  java
  • 直方图均衡化

    图像本身的灰度分布是随机的,因此具有很大的可能性出现这种情况:在某一灰度级附近分布了大量像素,在另一灰度级附近却几乎没有像素,也即灰度分布不均。为了尽量让灰度等可能的分布于所有灰度级,可以对直方图采用均衡化算法。

    均衡化算法的数学推导,一般采用概率论的理论,但是对于直方图均衡化根本不需要使用这么复杂的理论来解释,一定的逻辑推理即可。

    直方图均衡化目标

     

    图1 源图像灰度直方图

    图2 目标图像直方图

    上图展示了直方图均衡化的目标,即:将原本灰度随机分布的图像变成灰度均匀分布的图像。

    均衡化算法

    思路是确定源图像中的某一灰度级在新图像中的对应灰度级应该是多少。比如八灰度级(k∈[0, 7])的源图像中灰度级为0的像素占比为10%,则在新图像中对应的灰度级应该是7*10%=0.7,取整为1;灰度级为5的像素占比为8%,显然这只是灰度级为5的像素所占的比例,为了求出对应灰度级,应该考虑k∈[0,5]的像素占比,假设为60%,则对应灰度级应该为7*60%=4.2,取整为4。

    从上面可以看出,这里最关键的思想是累计灰度级数。在求对应灰度级时并不是只用原灰度级占比乘以总灰度级数,而应该是累计灰度级占比。

    示例(参考来源

    表1 原始图像各像素灰度级

    表2 算法计算过程

    表3 结果图像各像素灰度级

  • 相关阅读:
    牛客(14)链表中倒数第k个结点
    牛客(13)调整数组顺序使奇数位于偶数前面
    牛客(12)数值的整数次方
    牛客(11)二进制中1的个数
    牛客(10)矩形覆盖
    牛客(9)变态跳台阶
    牛客(8)跳台阶
    牛客(7)斐波那契数列
    Docker数据卷
    Docker镜像
  • 原文地址:https://www.cnblogs.com/hizhaolei/p/8051496.html
Copyright © 2011-2022 走看看