本篇将延续上一篇的内容,对直方图进行扩展,讲述直方图拉伸和直方图均衡化两个内容,并通过简单的C语言来实现这两个基础功能,让初学者通俗易懂。

直方图拉伸

[定义与算法]

        直方图拉伸也叫做灰度拉伸或者对比度拉伸,就是将一副图像的直方图填满整个灰度等级范围,即0-255之间。可能新手会不太理解,如下图Fig.1所示,左边为原图的灰度直方图,可以看到,像素大多数集种在0-128范围内,根据上一小节我们所学的知识,这张图应该表现为颜色比较暗的效果。直方图拉伸之后,效果如右边图(b)所示,像素分布填充到了0-255之间的灰度级,根据上一小节内容,我们可以猜想,这张图进行直方图拉伸后,明显变亮了。

如何进行直方图拉伸?我们以一个颜色通道,比如灰度通道为例,直方图拉伸的算法如下:

1.假设原图S内任意一点像素P(i,j),对原图S计算灰度通道中的最小灰度级mingray和

C语言数字图像处理---1.4直方图拉伸和直方图均衡化相关推荐

  1. 数字图像处理实验之对比度拉伸、直方图均衡化和规定化

    [实验内容]:  一.运用Matlab对Lena进行对比度拉伸增强(利用 imadjust  )  二.运用Matlab对图像进行直方图均衡化和规定化 Matlab版本:R2015a 一.运用Matl ...

  2. Win8Metro(C#)数字图像处理--2.31灰度拉伸算法

    Win8Metro(C#)数字图像处理--2.31灰度拉伸算法 原文:Win8Metro(C#)数字图像处理--2.31灰度拉伸算法  [函数名称] 灰度拉伸函数GrayStretchProces ...

  3. C语言数字图像处理编程

    C语言数字图像处理 读取bmp图像并做简单显示 bmp图像几何变换(移动,旋转,镜像,转置,缩放) 彩色图像转灰度图,灰度图反色 图像中值滤波与平均滤波 bmp图像锐化 图像的半影调和抖动技术 bmp ...

  4. 数字图像处理实验之对比度拉伸

    一幅图像中,最高灰度级和最低灰度级的差成为对比度.一幅低对比度的图像,看起来细节会少很多.可以通过对比度拉伸提高图像对比度,显示更多细节.先来看看对比度拉伸的典型变换: 书本中(冈萨雷斯:数字图像处理 ...

  5. C语言数字图像处理---1.1图像的像素格式与图像读写

    前言 本专栏面向所有希望或有兴趣从事数字图像处理工作.学习或研究的朋友,不懂MATLAB和OPENCV没关系,仅需要基础的C语言知识,便可以通过本专栏内容轻松入门数字图像处理方向.目前市面上的数字图像 ...

  6. 数字图像处理--图像增强之对比度拉伸

    我们前面提到过图像二值化,图像反转,本质上是对图像的所有像素点的灰度进行操作,属于灰度变换的内容.灰度变换的主要目的是用于图像增强. 而对比度拉伸是图像增强的一种方法,也属于灰度变换操作.我们看如下图 ...

  7. Matlab数字图像处理 02 灰度变化(图像直方图、直方图均衡化、直方图匹配)

    第二章 灰度变化 2.1 图像的亮度.对比度和动态范围 2.1.1 亮度 2.1.2 对比度 2.1.3 动态范围 2.2 线性灰度变换 2.2.1 具有饱和处理的线性灰度变换 2.2.2 分段线性灰 ...

  8. 数字图像处理:第三章 灰度直方图

    第三章 灰度直方图 目录 1.    灰度直方图 2.    直方图均衡化 3.    直方图规范化 4.    色彩直方图 作业 1.灰度直方图 灰度直方图(histogram)是灰度级的函数,它表 ...

  9. 第3章 Python 数字图像处理(DIP) - 灰度变换与空间滤波10 - 直方图处理 - 局部直方图处理

    这里写目录标题 局部直方图处理 局部直方图处理 因为像素是由基于整个图像的灰度的变换函数修改的.这种全局性方法适合于整体增强,但当目的是增强图像中几个小区域的细节时,通常就会失败.这是因为在这些小区域 ...

最新文章

  1. 2022-2028年中国锂电池设备行业深度调研及投资前景预测报告
  2. anaconda中查看python的版本
  3. python list分成多个_Python3 把一个列表按指定数目分成多个列表的方式
  4. Git分支操作与远程仓库的使用
  5. abaqus失效单元删除_Abaqus实例教学2-Failure Model
  6. json session cookie介绍和使用
  7. JAVA 7 正式版发布 新特性一览表
  8. 高性能stun服务器搭建,STUN/TURN服务器搭建
  9. 计算机二级栈,计算机二级国考office的高科技玩法之:堆栈的续集
  10. osgearth 利用经纬度得到高程
  11. 线性插值法(一次插值多项式)的Python程序
  12. 第八章:Java8新增特性,Lambda表达式
  13. C#保留2位小数几种场景总结 游标遍历所有数据库循环执行修改数据库的sql命令 原生js轮盘抽奖实例分析(幸运大转盘抽奖) javascript中的typeof和类型判断...
  14. TPC817隔离光耦使用小结
  15. Android: 如何切换 SCO 链路。
  16. Amdahl定律和Gustafson定律
  17. 基于PHP和mysql的简单学生成绩管理系统
  18. AD2020库安装及查找库
  19. 八大行业Hadoop大数据应用回顾和展望
  20. Android行情走势图

热门文章

  1. [C] numeral systems 进制转换
  2. JavaScript基础入门-陈璇-专题视频课程
  3. 打破技术壁垒, 用SpreadJS 抢占“表格文档协同编辑系统”的入市先机
  4. Ubuntu树莓派安装macast实现DLNA投屏
  5. s7与200smart通讯
  6. html5简单制作效果,分享一个利用HTML5制作的海浪效果代码-H5教程
  7. Java基于微信小程序的新冠疫苗预约小程序 springboot+vue+elementUI
  8. IDEA的web项目的创建极其服务器的配置
  9. 功率曲线k值_基于K-均值聚类分析的风力机功率曲线统计应用
  10. 手机摄像头产业竞争格局趋势深度解读