彩色图像--图像增强 直方图增强
来源:互联网 发布:淘宝质量问题退货规则 编辑:程序博客网 时间:2024/05/20 17:09
学习DIP第70天
转载请标明本文出处:http://blog.csdn.net/tonyshengtan ,出于尊重文章作者的劳动,转载请标明出处!文章代码已托管,欢迎共同开发:https://github.com/Tony-Tan/DIPpro
开篇废话
继续简单的介绍一下彩色图像处理相关的知识,今天来简单的说下直方图增强在彩色图像中的应用,灰度图像直方图增强在此处做了相关介绍,包括其数学原理。
对于灰度图像中的一些算法适合直接用到彩色图像的各个通道,也有一些不适合,直方图均衡就属于不适合的一种,如果直接将其作用在各个通道上,将引起图像色相的变化因此也就是图像变的不是其原来的样子了,今天我们将直方图均衡用到HSI色彩空间的I分量上,直方图对亮度分量进行均衡,是图像在亮度上得到增强,在饱和度和色向上保持不变。
算法原理
算法的原理就是利用HSI色彩空间的特点,I分量代表图像亮度,处理后不会改变图像色相。
算法步骤:
1. 从RGB转换到HSI
2. 分离HSI空间,I分量形成一个单独的灰度图像
3. 对
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分量直方图:
直方图均衡后结果:
直方图均衡后直方图:
处理后结果:
总结
总体来说算法效果稳定,计算速度快,但这只是一种最简单的彩色图像增强的方法,因为已经决定以后做识别方向,所以彩色图像的相关更深入的彩色变换,平滑,锐化,分割等只做简单介绍,大家多多交流。
待续。。。
- 彩色图像--图像增强 直方图增强
- 图像增强-直方图增强
- 彩色图像--图像增强 图像平滑
- 彩色图像--图像增强 图像锐化
- opencv 彩色图像对比度增强
- opencv 彩色图像对比度增强
- opencv 彩色图像对比度增强
- opencv 彩色图像对比度增强
- opencv 彩色图像对比度增强
- opencv 彩色图像对比度增强
- 图像增强之直方图处理
- OpenCV直方图图像增强算法
- 图像增强-直方图均衡化
- 直方图均衡化,图像增强
- Retinex图像增强算法(针对彩色图像)
- 图像预处理--灰度直方图--图像增强
- Python图像处理之伪彩色增强
- 图像灰度直方图与对比度增强
- Java四类八种数据类型
- Android缓存的简介
- TSO、UFO、GSO、LRO、GRO和RSS介绍
- Java防止科学计数法
- 事务传播行为种类
- 彩色图像--图像增强 直方图增强
- ACM非递归快速幂
- nginx 504 Gateway Time-out错误解决办法
- Java NIO系列教程(三) Buffer
- 前端资料整理
- mac地址规则
- cmake+Vs开发时解决头文件隐藏问题
- 日语语法总结-4 md version
- POWERSHELL 生成.bat文件,ascii