zoukankan      html  css  js  c++  java
  • 我理解的直方图均衡化

    关于直方图的比较官方的解释版本,建议先看看这个,挺有用,看了好几次我就明白了:http://baike.baidu.com/item/%E7%9B%B4%E6%96%B9%E5%9B%BE%E5%9D%87%E8%A1%A1%E5%8C%96

    下面是我通俗的解释:

    如下图,是一个直方图,横坐标是0~255的灰度值,纵坐标是相应灰度值在图片中的概率:

    我们来个更极端的,假如说,图片的的灰度值都集中在第三个和第四个峰值,(纵坐标数值是不对的,这里只是示意,忽略具体数值)如下图:

    那么就有这么一个上图的累积分布函数F,如下草图所示:

    均衡化就是让某灰度值数量少的点数量变得更少,让某灰度值数量多的点数量变得更多,用纵坐标s*255代替横坐标r,对图像所有的点都进行这样的操作,比如说图像中的某一个像素值是40 ,就会变成0.1*255,像素值是80,就会变成0.8*255,像素值是160,就会变成0.12*255,等等,对每一个点都用s*255代替r。

    所以:

    (1)0~80的灰度值的r,都会变成0.1*255,这些点少,0~80的灰度值都会变成0.1*255,相应原来图片中的点像素值在0~80的,都会变成0.1*255,缩小了。

    (2)81~160的灰度值都会相应变化,由于数值多,所以乘以255后,映射的灰度值范围就越广,扩大了。

    (3)161~255的灰度值的点少,相应点的灰度值就会映射到0.12*255,这一个点上,缩小了。

    我哪里有讲的不对的地方,还请大家指正发起进攻(  ´-ω ・)▄︻┻┳══━一

  • 相关阅读:
    if elseif else
    java编程思想第四版中net.mindview.util包
    eclipse git插件配置
    php面试常用算法
    数据库字段类型中char和Varchar区别
    MySQL的数据库引擎的类型及区别
    windows系统中eclipse C c++开发环境的搭建
    launch failed.Binary not found in Linux/Ubuntu解决方案
    技术团队的情绪与效率
    如何有效使用Project(2)——进度计划的执行与监控
  • 原文地址:https://www.cnblogs.com/studylyn/p/6939886.html
Copyright © 2011-2022 走看看