MATLAB实现直方图均衡化与规定化
2018-06-10 21:48
585 查看
function [ ] = image_equalization_regulation( ori_image,obj_image)
%输入为一参数实现图像ori_image的均衡化,输入为两参数实现图像ori_image的规定化
%均衡化
A=imread(ori_image);
subplot(1,2,1),imshow(A);title('origine image');
% subplot(2,2,2),imhist(A);
[r,c]=size(A);
[num,n]=imhist(A);
pi=zeros(1,256);
for i=1:256;
pi(n(i)+1)=num(i)/(r*c);
end
sig_pi=zeros(1,256);
sig_pi(1)=pi(1);
for i=2:256;
sig_pi(i)=sig_pi(i-1)+pi(i);
end
for i=1:r;
for j=1:c;
A(i,j)=fix(255*sig_pi(A(i,j)+1)+0.5);
end
end
%规定化
if nargin==2
B=imread(obj_image);
[row,col]=size(B);
[num,n]=imhist(B);
pj=zeros(1,256);
for i=1:256;
pj(n(i)+1)=num(i)/(row*col);
end
sig_pj=zeros(1,256);
sig_pj(1)=pj(1);
for i=2:256;
sig_pj(i)=sig_pj(i-1)+pj(i);
end
for i=1:r;
for j=1:c;
ijdiff=abs(sig_pi(A(i,j)+1)-sig_pj);
A(i,j)=find(ijdiff<=min(ijdiff))-1;
end
end
end
subplot(1,2,2),imshow(A);title('new image');
% subplot(2,2,4),imhist(A);
end 阅读更多
%输入为一参数实现图像ori_image的均衡化,输入为两参数实现图像ori_image的规定化
%均衡化
A=imread(ori_image);
subplot(1,2,1),imshow(A);title('origine image');
% subplot(2,2,2),imhist(A);
[r,c]=size(A);
[num,n]=imhist(A);
pi=zeros(1,256);
for i=1:256;
pi(n(i)+1)=num(i)/(r*c);
end
sig_pi=zeros(1,256);
sig_pi(1)=pi(1);
for i=2:256;
sig_pi(i)=sig_pi(i-1)+pi(i);
end
for i=1:r;
for j=1:c;
A(i,j)=fix(255*sig_pi(A(i,j)+1)+0.5);
end
end
%规定化
if nargin==2
B=imread(obj_image);
[row,col]=size(B);
[num,n]=imhist(B);
pj=zeros(1,256);
for i=1:256;
pj(n(i)+1)=num(i)/(row*col);
end
sig_pj=zeros(1,256);
sig_pj(1)=pj(1);
for i=2:256;
sig_pj(i)=sig_pj(i-1)+pj(i);
end
for i=1:r;
for j=1:c;
ijdiff=abs(sig_pi(A(i,j)+1)-sig_pj);
A(i,j)=find(ijdiff<=min(ijdiff))-1;
end
end
end
subplot(1,2,2),imshow(A);title('new image');
% subplot(2,2,4),imhist(A);
end 阅读更多
相关文章推荐
- 报告论文:直方图均衡化和规定化 matlab实现
- 直方图均衡化的MATLAB的实现(2)
- 用matlab实现视频的空间滤波和直方图均衡化
- 直方图均衡化—matlab实现
- 用matlab实现视频的空间滤波和直方图均衡化
- 直方图均衡化(matlab实现)
- 直方图均衡化的MATLAB实现
- matlab实现批量图片的直方图均衡化
- 直方图均衡化的matlab实现
- 使用 matlab 数字图像处理(二)—— 直方图均衡化(极简实现)
- MATLAB实现的视频运动检测方法
- 朴素贝叶斯算法实现分类问题(三类)matlab代码
- 主成分分析(PCA)原理与故障诊断(SPE、T^2以及结合二者的综合指标)-MATLAB实现
- Coursera2014 Machine Learning -Andrew Ng Week 1 程序实现(Matlab or Octave)
- C语言实现Matlab自带的滤波filter()函数
- 一种简单的边界提取思路Matlab实现
- 稀疏表示字典的显示(MATLAB实现代码)
- 终于实现c#调用matlab函数(ZZ)
- matlab实现图像滤波——高斯滤波
- 图像拉普拉斯金字塔(laplacian pyramid)并从金字塔重建原图 matlab程序实现