matlab 自定义直方图匹配_matlab中直方图规定化(直方图匹配)的单映射 – MATLAB中文论坛...
matlab写的一个直方图规定化中的单映射程序,大家可以借鉴下
clc;
clear;
I=imread('e:\2.bmp');
figure,subplot(321),imshow(I);
title(‘原始图picture1’);
New=I;
L=256; %灰度值
[m1 n1]=size(I); %计算图像数据矩阵的行列数
Hi=zeros(L,1); % 存储源图像直方图数据
for i = 1:m1
for j = 1:n1
Hi(I(i,j)+1)=Hi(I(i,j)+1)+1; %获取像素灰度级
end
end
% 计算直方图概率统计
Pi=zeros(L,1);% 存储原图像直方图概率数据
for k=1:L
Pi(k)=Hi(k)/(m1*n1);
end
subplot(323),plot(Pi);
title('原始图直方图Pi');
% 计算累积直方图
RHi=zeros(L,1);% 存储原图像累积直方图数据
RHi(1)=Pi(1);
for k=2:L
RHi(k)=RHi(k-1)+Pi(k);
end
%subplot(325),plot(RHi);
%title('原图累积直方图RHi');
% 匹配图
J=imread('e:\1012.bmp');
subplot(322),imshow(J);
title('匹配图');
[m2 n2]=size(J);
Hj=zeros(L,10); % 存储匹配图直方图数据
for i = 1:m2
for j = 1:n2
Hj(J(i,j)+1)=Hj(J(i,j)+1)+1; % 获取匹配图像素灰度级
end
end
% 计算直方图概率统计
Pj=zeros(L,1);% 存储匹配图直方图概率数据
for k=1:L
Pj(k)=Hj(k)/(m1*n1);
end
subplot(324),plot(Pj);
title('匹配图的直方图Pj');
% 计算累积直方图
RHj=zeros(L,1);% 存储匹配累积直方图数据
RHj(1)=Pj(1);
for k=2:L
RHj(k)=RHj(k-1)+Pj(k);
end
%subplot(326),plot(RH2);
%title('匹配图累积直方图RH2');
% 计算原图像与匹配图像累积直方图数值的差的绝对值
double ScMin=zeros(256,256);
for y=1:L
for x=1:L
ScMin(x,y)=abs(RHi(y)-RHj(x));
end
end
% 建立SML单映射
HisM=zeros(L:1);
for k=1:L
min = 0;
minV=ScMin(1,k);
for t=1:L
if(minV>ScMin(t,k))
minV=ScMin(t,k);
min = t-1;
end
end
HisM(k)= min;
end
% 将原图的每个像素灰度转换为映射对应的灰度
for x = 1:m1
for y = 1:n1
Num = double( I(x,y))+1;
if Num==i
New(x,y)=HisM(i);
end
end
end
subplot(325),imshow(New),title('匹配后图像');
% 计算直方图匹配后的直方图
Hd=zeros(L,10); % 存储匹配后直方图数据
for i = 1:m2
for j = 1:n2
Hd(New(i,j)+1)=Hd(New(i,j)+1)+1; % 获取像素灰度级
end
end
% 计算直方图概率统计
Pd=zeros(L,1);% 存储匹配后直方图概率数据
for k=1:L
Pd(k)=Hd(k)/(m1*n1);
end
subplot(326),plot(Pd),title('匹配后直方图');
matlab 自定义直方图匹配_matlab中直方图规定化(直方图匹配)的单映射 – MATLAB中文论坛...相关推荐
- IOS 正则表达式匹配文本中URL位置并获取URL所在位置(解决连接中文问题)
IOS 正则表达式匹配文本中URL位置并获取URL所在位置(解决连接中文问题) 参考文章: (1)IOS 正则表达式匹配文本中URL位置并获取URL所在位置(解决连接中文问题) (2)https:// ...
- matlab stem函数坐标轴_MATLAB中stem函数用法
stem(Y) 将数据序列Y从x轴到数据值按照茎状形式画出,以圆圈终止.如果Y是一个矩阵,则将其每一列按照分隔方式画出. stem(X,Y)在X的指定点处画出数据序列Y. stem(...,'fil ...
- matlab如何制作振型动画_Matlab中动画的实现、制作和保存(转载Matlab技术论坛)
Matlab中动画的实现.制作和保存(转载Matlab技术论坛) 本帖由Matlab技术论坛原创,原帖参见 http://www.matlabsky.com/thread-592-1-1.html 光 ...
- solr 模糊匹配_Solr中的前缀和后缀匹配
solr 模糊匹配 搜索引擎都是关于查找字符串的. 用户输入一个查询词,然后从反向索引中检索它. 有时,用户正在寻找的值只是索引中值的子字符串,并且用户可能也对这些匹配感兴趣. 对于德语这样的包含复合 ...
- python正则匹配字符串中的数字_Python正则表达式匹配字符串中的数字
1.使用"\d+"匹配全数字 代码: import re zen = "Arizona 479, 501, 870. Carlifornia 209, 213, 650. ...
- python正则表达式匹配字符串中的电话号码_Python正则表达式匹配字符串中的数字...
这篇文章主要介绍了Python正则表达式匹配字符串中的数字,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下 1.使用"\d+"匹配全数字 代码: ...
- MATLAB 长度和像素_Matlab中短时傅里叶变换 spectrogram和stft的用法
在Matlab中,做短时傅里叶变换需要使用函数spectrogram,而在Matlab2019中,引入了一个新的函数stft,下面我们就来看下这两个函数都如何使用. 短时傅里叶变换的基本原理就是将数据 ...
- matlab norm函数使用_MATLAB 中NORM运用
格式:n=norm(A,p) 功能:norm函数可计算几种不同类型的矩阵范数,根据p的不同可得到不同的范数 以下是Matlab中help norm 的解释 NORM Matrix or vecto ...
- matlab norm函数使用_matlab中norm函数的用法
格式:n=norm(A,p) 功能:norm函数可计算几种不同类型的矩阵范数,根据p的不同可得到不同的范数 以下是Matlab中help norm 的解释 NORM Matrix or vecto ...
最新文章
- json下linux64位版本,linux下正确安装jsoncpp(示例代码)
- 大白话讲解闭包笔试题
- Objective-C 编码规范
- python高阶函数filter_python 高阶函数之filter
- 小程序直播间报错:{“errmsg“:“the current room status does not allow this operation rid:“,“errcode“:300023}
- jQuery 3.3.1已经发布,开发团队正在准备4.0版本
- 使用 setTimeout 实现 setInterval
- 服务提供者框架讲解 之 myJDBC
- ps html插件初始化失败,解决PSCC2019无法安装扩展插件怎么办?
- python 去重 排序_python中sorted()和set()去重,排序
- php生成五星红旗,php基于GD库画五星红旗的方法_PHP
- Win7 桌面右键一直转圈很慢
- Encountered a duplicated sql alias [NAME] during auto-discovery of a native-sql query
- 有关程序员的几则冷笑话
- 工具类-随即获取姓名-ZH
- Debian编译内核教程
- 基于微信小程序的学习记录与提醒应用设计与实现-计算机毕业设计源码+LW文档
- 学习EBS建议有的知识
- 宏基因组分析-基于组装
- 使用多可用区Kubernetes进行灾难恢复