【图像处理】 matlab 实现彩色图像的直方图均衡化算法
发布日期:2021-06-29 14:32:34
浏览次数:3
分类:技术文章
本文共 920 字,大约阅读时间需要 3 分钟。
实验内容
实现彩色图像的直方图均衡化算法
实验过程
算法流程可以参考灰度图像的直方图均衡化算法 ()
测试代码
F=imread('.\im\f11.jpg');[G] = imhisteq_C(F);figure,imshow(F);figure,imshow(G);
实验所需图片
链接:https://pan.baidu.com/s/1LaxnZdLeY3LnKKv276E0pA
提取码:vk8y实验源码
function [J] = imhisteq_C(Im) [height,width,d]=size(Im); %获得输入图像尺寸M、N、C(size函数)for index_d=1:dI = Im(:,:,index_d);nbins = 256;%计算图像F的灰度直方图h(imhist函数;%或者通过两重循环遍历每个像素点从而得到每个灰度值的累计像素点个数)。hist_0 = imhist(I,nbins)';%计算原图的灰度分布概率hs。hs=h/(M*N) (i=0,1,…,255)。hist_1 = hist_0/(height*width);%计算原图灰度的累计分布hp0(使用cumsum函数)hp_0 = cumsum(hist_1);%hp1=hp0*255 将hp1四舍五入,令hp1(1)=0%hp_1 = round(hp_0*255);hp_1 = hp_0*255;hp_1(1)=0;I0 = double(I);%置两重循环遍历图像F中所有像素点,求出每一个像素点的灰度值F(i,j)for i=1:height for j=1:width Value=I0(i,j); NewValue = hp_1(Value+1); NewValue = round(NewValue); J(i,j,index_d)=NewValue; endend%计算得到的新图像矩阵中所有点的灰度值由double转换为uint8J = uint8(J); %转换uint8编码end
测试结果
学如逆水行舟,不进则退
转载地址:https://chocolate.blog.csdn.net/article/details/106477054 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
初次前来,多多关照!
[***.217.46.12]2024年04月28日 21时58分48秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
单通道和多通道卷积
2019-04-29
npy文件和pkl文件的保存和读取
2019-04-29
买卖股票的最佳时机
2019-04-29
AUC粗浅理解笔记记录
2019-04-29
torch 模型运行时间与forward没对应的可能原因
2019-04-29
JavaScript 的addEventListener() 事件监听详解!
2019-04-29
上传图片到阿里云OSS和获取上传图片的url的详解 !
2019-04-29
Kafka为什么这么快?
2019-04-29
Java 生产者和消费者面试题
2019-04-29
生产者消费者问题
2019-04-29
本机电脑连接虚拟机redis失败解决方法
2019-04-29
DM365 应用层gpio控制
2019-04-29
linux i2c子系统abc
2019-04-29
CSS3 帧动画(Sprite,直译叫雪碧图)
2019-04-29
Java 父线程与子线程相互通信的方法
2019-04-29
Redis 六种淘汰策略和三种删除策略
2019-04-29
Java LinkedHashMap
2019-04-29
JPA 多线程同时对一条数据进行Update的问题
2019-04-29
JPA 多线程对数据进行更新,Update和Insert同时存在的问题
2019-04-29
Java 高性能队列Disruptor
2019-04-29