图像处理的有用资料
求算法,源代码!!!用Matlab编一个图像的非均匀量化程序。
悬赏分:100 - 解决时间:2007-1-22 04:37
要求:将原来的256灰度图像,任意选择一种非均匀量化方法实现26灰度级的量化。 (除读写位图外,不准调用MATLAB的图像处理工具箱函数)
越简短越好,最好加上详细注释。
大虾们帮帮忙啊。///
直方图均衡化也是非线性量化的一种吧,网上找到的,作者写的非常详细。
% 数字图像处理程序作业
% 本程序能将JPG格式的彩色图像文件灰度化并进行直方图均衡
%
% 输入文件:PicSample.jpg 待处理图像
% 输出文件:PicSampleGray.bmp 灰度化后图像
% PicEqual.bmp 均衡化后图像
%
% 输出图形窗口说明
% figure NO 1 待处理彩色图像
% figure NO 2 灰度化后图像
% figure NO 3 直方图
% figure NO 4 均衡化后直方图
% figure NO 5 灰度变化曲线
% figure NO 6 均衡化后图像
% 1, 处理的图片名字要为 PicSample.jpg
% 2, 程序每次运行时会先清空workspace
% 作者;archiless lorder
clear all
%一,图像的预处理,读入彩色图像将其灰度化
PS=imread('PicSample.jpg'); %读入JPG彩色图像文件
imshow(PS) %显示出来 figure NO 1
title('输入的彩色JPG图像')
imwrite(rgb2gray(PS),'PicSampleGray.bmp'); %将彩色图片灰度化并保存
PS=rgb2gray(PS); %灰度化后的数据存入数组
figure,imshow(PS) %显示灰度化后的图像,也是均衡化前的样品 figure NO 2
title('灰度化后的图像')
%二,绘制直方图
[m,n]=size(PS); %测量图像尺寸参数
GP=zeros(1,256); %预创建存放灰度出现概率的向量
for k=0:255
GP(k+1)=length(find(PS==k))/(m*n); %计算每级灰度出现的概率,将其存入GP中相应位置 end
figure,bar(0:255,GP,'g') %绘制直方图 figure NO 3
title('原图像直方图')
xlabel('灰度值')
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库非均匀量化程序在线全文阅读。
相关推荐: