资讯详情

基于matlab进行图像处理学习——从入门到入魔

关于matlab

matlab基本概况

MATLAB是矩阵实验室(Matrix Laboratory)意思。除具有优异的数值计算能力外,还提供专业的符号计算、文字处理、可视化建模仿真、实时控制等功能。

MATLAB基本数据单位是矩阵,其指令表达式与数学非常相似,因此在工程中使用MATLAB比用来解决问题C,FORTRAN语言完成后,同样的事情要简单得多.

当前流行的MATLAB 5.3/Simulink 3.0包括拥有数百个内部函数的主包和30多个工具包(Toolbox).工具包可分为功能工具包和学科工具包.用于扩展的功能工具MATLAB符号计算、可视化建模仿真、文本处理及实时控制等功能.学科工具包是专业性强的工具包,控制工具包,信号处理工具包、通信工具包等都属于这类.

开放性使MATLAB广受用户欢迎.除内部函数外,一切MATLAB主包文件和各种工具包都是可读可修改的文件,用户通过修改源程序或添加自己的编写程序构建新的特殊工具包.

学习任务

  1. 使用matlab平衡四张图片,分别显示原始图像、平衡后图像和相应的直方图
  2. 使用matlab图像添加强度为0.2.椒盐噪声,分别使用3x3.平均过滤器、高斯平滑过滤器和中间过滤器平滑过滤添加噪声的图像,显示原始图像、添加噪声的图像和平滑过滤后的图像
  3. 拉普拉斯滤波器分别使用: 在这里插入图片描述 锐化图像

实现

  • 使用matlab平衡四张图片,分别显示原始图像、平衡后图像和相应的直方图
% 直方图均衡 H1= imread('Fig0316_1_3e.tif');  H2= imread('Fig0316_2_3e.tif');  H3= imread('Fig0316_3_3e.tif');  H4= imread('Fig0316_4_3e.tif');  % H1 if length(size(H1))>2     H1=rgb2gray(H1);   end subplot(3,2,1);   imshow(H1); title('H1原图');   subplot(3,2,2);   imhist(H1); title('H原图直方图;   subplot(3,2,5);   H1_=histeq(H1);   imshow(H1_'); title('histeq均衡后图 ');   subplot(3,2,6);   imhist(H1_'); title('histeq平衡后直方图 ')  % H2 if length(size(H2))>2     H2=rgb2gray(H2);   end subplot(3,2,1);   imshow(H2); title('H2原图');   subplot(3,2,2);   imhist(H2); title('H直方图2);   subplot(3,2,5);   H2_=histeq(H2);   imshow(H2_); title('histeq均衡后图 ');   subplot(3,2,6);   imhist(H2_); title('histeq均衡后直方图')  %H3 if length(size(H3))>2     H3=rgb2gray(H3);   end subplot(3,2,1);   imshow(H3); title('H3原图');   subplot(3,2,2);   imhist(H3); title('H3原图直方图;   subplot(3,2,5);   H3_=histeq(H3);   imshow(H3_); title('histeq均衡后图 ');   subplot(3,2,6);   imhist(H3_); title('histeq均衡后直方图')  % H4 if length(size(H4))>2     H=rgb2gray(H4);   end subplot(3,2,1);   imshow(H4); title('H4原图');   subplot(3,2,2);   imhist(H4); title('H四原图直方图;   subplot(3,2,5);   H4_=histeq(H4);   imshow(H4_); title('histeq平衡后图');   subplot(3,2,6);   imhist(H4_); title('histeq均衡后直方图') 

  1. H1

  2. H2

  3. H3

  4. H4 我们发现,在我们平衡图像后,直方图的灰度范围(跨度)变得更大,图像效果变得更加明显,因此我们可以得出结论:

  • 使用matlab图像添加强度为0.2.椒盐噪声,分别使用3x3.平均过滤器、高斯平滑过滤器和中间过滤器平滑过滤添加噪声的图像,显示原始图像、添加噪声的图像和平滑过滤后的图像
% 添加噪声 t=imread('Fig0507_ckt_board_orig_3e.tif'); subplot(1,2,1),imshow(t),title(原图); t2=imnoise(t,'salt & pepper',0.2); figure,subplot(1,2,1),imshow(t2),title加噪声密度:0.二、椒盐噪声;  % 3x3均值滤波 k1=filter2(fspecial('average',3),t2); subplot(2,3,3),imshow(uint8(k1));title(均值滤波3*平滑3模板  % 高斯滤波 M = size(t2); if numel(M)>2     gray = rgb2gray(t2); else     gray = t2; end  % 创建滤波器 W = fspecial('gaussian',[5,5],1);  G = imfilter(gray, W, 'replicate'); figure(1); subplot(121); imshow(gray); title(原始图像); subplot(122); imshow(G);    title(过滤后图像);  % 中值滤波 subplot(2,2,4) D=medfilt3(t2); imshow(D,[]) title(中值滤波处理)  imshow(t),title(原图); imshow(t2),title('添加0.二、椒盐噪声; imshow(k1),title('3x3.均值滤波; imshow(uint8(k1)),title('3x3.均值滤波; imshow(G),title(高斯滤波); imhow(D),title('中值滤波');

  1. 原图

  2. 添加强度为0.2的椒盐噪声

  3. 3x3均值滤波

  4. 高斯滤波

  5. 中值滤波

从结果可以看出,

  • 使用拉普拉斯滤波器对图像进行锐化
  1. 四邻域的拉普拉斯算子滤波
A = imread('blurry_moon_3e.tif');
%%%锐化%%%%
f_laplacian = fspecial('laplacian',0)
B3 = imfilter(A,f_laplacian);
figure;
subplot(121);imshow(A);
subplot(122);imshow(-B3);
figure;
subplot(121);imshow(A);
subplot(124);imshow(A-B3);

2. 八邻域的拉普拉斯算子滤波

a = im2double(imread('blurry_moon_3e.tif')); 

lap = [-1 -1 -1; -1 8 -1; -1 -1 -1]; 

resp = imfilter(a, lap, 'conv');

%// Change - Normalize the response image

minR = min(resp(:));

maxR = max(resp(:));

resp = (resp - minR) / (maxR - minR);

%// 更改-现在添加到原始图像

sharpened = a + resp;

%// 更改-标准化锐化的结果

minA = min(sharpened(:));

maxA = max(sharpened(:));

sharpened = (sharpened - minA) / (maxA - minA);

%// 改变-执行线性对比度增强

sharpened = imadjust(sharpened, [60/255 200/255], [0 1]);

figure;

subplot(1,3,1);imshow(a); title('原始图像');

subplot(1,3,2);imshow(resp); title('拉普拉斯滤波图像');

subplot(1,3,3);imshow(sharpened); title('锐化图像');

  • 锐化的主要目的是突出灰度的过渡部分
  • 因此,图像微分增强边缘和其他突变(如噪声)而削弱灰度变化缓慢的区域

总结

今天算是matlab初体验,从安装、配置matlab,到了解其中的函数、包、库、再到最后完成学习任务,在这个过程中我还是学到了很多东西的,不仅感受到了matlab的强大功能,也极大锻炼了我主动学习和自主解决问题的能力,同时加深了我对一些图像处理知识的理解,从理论到实践,我觉得这是一个能够产生质变的过程。

标签: mawomatic传感器h4

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台