彩色图像--图像增强 直方图增强

学习DIP第70天

转载请标明本文出处:http://blog.csdn.net/tonyshengtan ,出于尊重文章作者的劳动,转载请标明出处!文章代码已托管,欢迎共同开发:https://github.com/Tony-Tan/DIPpro

开篇废话

继续简单的介绍一下彩色图像处理相关的知识,今天来简单的说下直方图增强在彩色图像中的应用,灰度图像直方图增强在此处做了相关介绍,包括其数学原理。

对于灰度图像中的一些算法适合直接用到彩色图像的各个通道,也有一些不适合,直方图均衡就属于不适合的一种,如果直接将其作用在各个通道上,将引起图像色相的变化因此也就是图像变的不是其原来的样子了,今天我们将直方图均衡用到HSI色彩空间的I分量上,直方图对亮度分量进行均衡,是图像在亮度上得到增强,在饱和度和色向上保持不变。

算法原理

算法的原理就是利用HSI色彩空间的特点,I分量代表图像亮度,处理后不会改变图像色相。

算法步骤:

1. 从RGB转换到HSI

2. 分离HSI空间,I分量形成一个单独的灰度图像fi

3. 对fi进行直方图均衡

4. 用均衡后的数据代替原I分量数据

5. HSI转换回RGB

代码

/*********************************************************************************************************************/
void HistEqualRGB(RGB *src,RGB *dst,int width,int height){
    HSI *temp=(HSI*)malloc(sizeof(HSI)*width*height);
    double *chanel_i=(double *)malloc(sizeof(double)*width*height);
    RGB2HSI(src, temp, width, height);
    for(int i=0;i<width*height;i++){
        chanel_i[i]=(double)((int)temp[i].c3);
    }
    HistogramEqualization(chanel_i, chanel_i, width, height);
    for(int i=0;i<width*height;i++){
        temp[i].c3=chanel_i[i];
    }
    HSI2RGB(temp, dst, width, height);
    free(temp);
    free(chanel_i);

}
/*********************************************************************************************************************/

效果分析

下面对一些图片进行上述算法操作,来观察效果。

原图:

原图I分量:

原图I分量直方图:

直方图均衡后结果:

直方图均衡后直方图:

处理后结果:



原图:

原图I分量:

原图I分量直方图:

直方图均衡后结果:

直方图均衡后直方图:

处理后结果:



原图:

原图I分量:

原图I分量直方图:

直方图均衡后结果:

直方图均衡后直方图:

处理后结果:



原图:

原图I分量:

原图I分量直方图:

直方图均衡后结果:

直方图均衡后直方图:

处理后结果:

总结

总体来说算法效果稳定,计算速度快,但这只是一种最简单的彩色图像增强的方法,因为已经决定以后做识别方向,所以彩色图像的相关更深入的彩色变换,平滑,锐化,分割等只做简单介绍,大家多多交流。

待续。。。

时间: 2024-11-09 03:49:21

彩色图像--图像增强 直方图增强的相关文章

彩色图像的直方图均衡化

彩色图像的直方图均衡化 - YangYudong2014的专栏 - CSDN博客 http://blog.csdn.net/yangyudong2014/article/details/40515035 matlab进阶摸索篇——彩色图直方图均衡化 - Rachel Zhang的专栏 - CSDN博客 http://blog.csdn.net/abcjennifer/article/details/6667504 用matlab_实现基于直方图均衡化的彩色图像增强 - 成人教育 - 道客巴巴 h

数学之路-python计算实战(14)-机器视觉-图像增强(直方图均衡化)

我们来看一个灰度图像,让表示灰度出现的次数,这样图像中灰度为 的像素的出现概率是  是图像中全部的灰度数, 是图像中全部的像素数,  实际上是图像的直方图,归一化到 . 把  作为相应于  的累计概率函数, 定义为:  是图像的累计归一化直方图. 我们创建一个形式为  的变化,对于原始图像中的每一个值它就产生一个 ,这样  的累计概率函数就能够在全部值范围内进行线性化,转换公式定义为: 注意 T 将不同的等级映射到  域.为了将这些值映射回它们最初的域,须要在结果上应用以下的简单变换: 上面描写

灰度图像--图像增强 直方图均衡化(Histogram equalization)

学习DIP第38天 转载请标明本文出处:http://blog.csdn.net/tonyshengtan,欢迎大家转载,发现博客被某些论坛转载后,图像无法正常显示,无法正常表达本人观点,对此表示很不满意.有些网站转载了我的博文,很开心的是自己写的东西被更多人看到了,但不开心的是这段话被去掉了,也没标明转载来源,虽然这并没有版权保护,但感觉还是不太好,出于尊重文章作者的劳动,转载请标明出处!!!! 文章代码已托管,欢迎共同开发:https://github.com/Tony-Tan/DIPpro

灰度图像--图像增强 直方图匹配(规定化)Histogram Specification

学习DIP第39天 转载请标明本文出处:http://blog.csdn.net/tonyshengtan,欢迎大家转载,发现博客被某些论坛转载后,图像无法正常显示,无法正常表达本人观点,对此表示很不满意.有些网站转载了我的博文,很开心的是自己写的东西被更多人看到了,但不开心的是这段话被去掉了,也没标明转载来源,虽然这并没有版权保护,但感觉还是不太好,出于尊重文章作者的劳动,转载请标明出处!!!! 文章代码已托管,欢迎共同开发:https://github.com/Tony-Tan/DIPpro

彩色图像--图像增强 图像锐化

学习DIP第72天 转载请标明本文出处:http://blog.csdn.net/tonyshengtan ,出于尊重文章作者的劳动,转载请标明出处!文章代码已托管,欢迎共同开发:https://github.com/Tony-Tan/DIPpro 开篇废话 今天写的博客有点多,因为这里的理论只是在前面已经详细介绍过了,所以多写点,好有时间来学习模式分类和图像特征点部分,请大家多多指教. 算法说明 彩色图像锐化用到的算法还是灰度图像中所用的算法,在彩色图像中的应用可以直接对RGB三通道分别锐化然

彩色图像--图像增强 图像平滑

学习DIP第71天 转载请标明本文出处:http://blog.csdn.net/tonyshengtan ,出于尊重文章作者的劳动,转载请标明出处!文章代码已托管,欢迎共同开发:https://github.com/Tony-Tan/DIPpro 开篇废话 最近博客数量变多,访问量也一路上升,虽然目的并不是要多少访问量,但看着知识一点点的积累,而且有人认可,心情相当不错的. 算法原理 对灰度图像进行平滑的文章: 1.均值,高斯平滑 2.双边滤波 3.中值滤波 这些算法在彩色图像中应用有两种,一

图像直方图均衡化增强opencv与C语言版

本文实现彩色图像的全局直方图均衡.分别对R/G/B三通道均衡,读写图片采用OpenCV.代码如下: #include <opencv2/opencv.hpp> //#include <cv.h> //#include <cxcore.h> //#include <highgui.h> #include <time.h> #include <stdio.h> #include <math.h> #include "

OpenCV2学习笔记(二):图像的直方图

直方图(Histogram)又称质量分布图.是一种统计报告图,由一系列高度不等的纵向条纹或线段表示数据分布的情况.一般用横轴表示数据类型,纵轴表示分布情况.众所周知,一幅图像是由不同颜色值的像素组成,因此像素值在图像中的分布情况是这幅图像的一个重要特征,因此直方图广泛应用在数字图像处理中. 拍照是现实生活中必不可少的一部分,由于环境亮度.图像拍摄过程中透视光圈设置错误等影响,经常会拍出一些"过暗"的照片,此时美图.PS等美化工具可以派上用场.但是这些工具的算法通常都是不公开的,鉴于研究

图像直方图与直方图均衡化

图像直方图与直方图均衡化 图像直方图以及灰度与彩色图像的直方图均衡化 图像直方图: 概述: 图像的直方图用来表征该图像像素值的分布情况.用一定数目的小区间(bin)来指定表征像素值的范围,每个小区间会得到落入该小区间表示范围的像素数目. 图像直方图图形化显示不同的像素值在不同的强度值上的出现频率,对于灰度图像来说强度范围为[0~255]之间,对于RGB的彩色图像可以独立显示三种颜色的图像直方图. 同时直方图是用来寻找灰度图像二值化阈值常用而且是有效的手段之一,如果一幅灰度图像的直方图显示为两个波