方便起见,我们考虑一个变量。当u从0增加到M,H(u,v>从最大值2j<复数)然后减少,当u=M/2时<转移方程的中心)最小;当u 继续增加,H(u,v>继续增加,且当u=M时,又取得最大值。同样,考虑两个变量也得到类似的结果。这种特性就是我们的高通滤波器,于是我们就可以得到我们推导出的滤波器H点,将会产生只有平均值为0的图像,所以,存在一个K值,使得经过K次高通滤波之后就会产生一副像素不变的图像。DXDiTa9E3d 部分图像分割的方法(matlab)
部分图像分割的方法(matlab)
大津法: function y1=OTSU(image,th_set) image=imread('color1.bmp'); gray=rgb2gray(image);%原图像的灰度图 low_high=stretchlim(gray);%增强图像,似乎也不是一定需要gray=imadjust(gray,low_high,[]); % subplot(224);imshow(gray);title('after adjust'); count=imhist(gray); [r,t]=size(gray); n=r*t; l=256; count=count/n;%各级灰度出现的概率 for i=2:l if count(i)~=0 st=i-1; break end end %以上循环语句实现寻找出现概率不为0的最小灰度值 for i=l:-1:1 if count(i)~=0; nd=i-1; break end end %实现找出出现概率不为0的最大灰度值 f=count(st+1:nd+1); p=st;q=nd-st;%p和分别是灰度的起始和结束值 u=0; for i=1:q; u=u+f(i)*(p+i-1); ua(i)=u; end
程序二: clc; clear; cd 'D:\My Documents\MATLAB' time = now; I = imread('qr4.bmp'); figure(1),imshow(I),title('p1_1.bmp'); % show the picture I2 = rgb2gray(I); figure(2),imshow(I2),title('I2.bmp'); %?D?μ??2¨ J = medfilt2(I2); figure(3),imshow(J); imwrite(J,'J.bmp'); [M N] = size(J); J1 = J(1:M/2,1:fix(N/2)); J2 = J(1:M/2,fix(N/2)+1:N); J3 = J(M/2+1:M, 1:fix( N/2)); J4 = J(M/2+1:M, fix(N/2)+1:N); % figure(4), img = J1; T1 = test_gray2bw( img ); % figure(5), img = J2; T2 = test_gray2bw( img ); % figure(6), img = J3; T3 = test_gray2bw( img ); % figure(7), img = J4; T4 = test_gray2bw( img ); T = [T1,T2;T3,T4]; figure,imshow(T) % T1 = edge(T,'sobel'); % figure,imshow(T1); % BW = edge(T,'sobel'); % f igure,imshow(BW); function [bw_img] = test_gray2bw( img ) %大津法 [row_img col_img ] = size( img ) all_pix = row_img * col_img % get probability of each pixel(????). count_pix = zeros(1,256) % pro_pix = [] for i = 1 : 1 : row_img for j = 1 : 1 : col_img count_pix(1,img(i,j)+1) = count_pix(1,img(i,j)+1) + 1 %í3??′?êy end en d pro_pix = count_pix / all_pix % choose k value; max_kesi = -1 T = 0 for k = 1 : 1 : while( i <= k ) wa = wa + pro_pix(1,i+1) %?°k??i£?????????μ??ò?è???ê£????êoí ua = ua + i * pro_pix(1,i+1) i = i + 1 end
基于MATLAB的图像恢复算法研究
中北大学 课程设计说明书 学生姓名:学号: 学生姓名:学号: 学生姓名:学号: 学院:信息商务学院 专业:电子信息工程 题目:信息处理综合实践: 基于MATLAB的图像恢复算法研究 指导教师:职称: 年月日
中北大学 课程设计任务书 13/14 学年第一学期 学院:信息商务学院 专业:电子信息工程 学生姓名:学号: 学生姓名:学号: 学生姓名:学号: 课程设计题目:信息处理综合实践: 于MATLAB的图像恢复算法研究起迄日期: 课程设计地点:电子信息科学与技术专业实验室 指导教师: 系主任: 下达任务书日期: 年月日
目录 摘要: (6) 1.图像复原的概念 (6) 1.1图像复原的定义 (6) 1.2 图象恢复与图象增强的异同 (6) 1.3 图象退化的原因 (6) 1.4 维纳滤波的研究历史 (6) 1.5图象退化举例 (7) 2.退化模型 (8) 2.1图象退化模型概述 (8) 2.2连续函数退化模型 (8) 2.3离散函数退化模型 (8) 3.图象复原技术 (9) 3.1无约束恢复 (9) 3.2逆滤波 (9) 3.3 维纳(Wiener)滤波器基本原理 (10) 3.4维纳滤波复原法 (11) 3.5图像复原例图 (12) 4.图像复原的MATLAB实现实例 (13) 5.结束语 (14) 参考文献: (14) 附录: (14) (1).维纳滤波复原源代码: (14) (2).规则化滤波复原程序源代码: (15) (3).Lucy-Richardson复原滤波源代码: (15) (4).盲目去卷积复原源代码: (15)
摘要: 图像复原是图象处理的一个重要课题。图像复原也称图象恢复,是图象 处理中的一大类技术。它的主要目的是改善给定的图像质量。当给定了一幅 退化了的或者受到噪声污染了的图像后,利用退化现象的某种先验知识来重 建或恢复原有图像是复原处理的基本过程。可能的退化有光学系统中的衍 射,传感器非线性畸变,光学系统的像差,摄影胶片的非线性,大气湍流的 扰动效应,图像运动造成的模糊及几何畸变等等。噪声干扰可以由电子成像 系统传感器、信号传输过程或者胶片颗粒性造成。各种退化图像的复原都 可归结为一种过程,具体地说就是把退化模型化,并且采用相反的过程进行 处理,以便恢复出原图像。文章介绍了图象退化的原因,几种常用的图像滤 波复原技术,以及用MATLAB实现图像复原的方法。 1.图像复原的概念 1.1图像复原的定义 图像复原也称图象恢复,是图象处理中的一大类技术。所谓图像复原,是指去除或减轻在获取数字图像过程中发生的图像质量下降(退化)这些退化包括由光学系统、运动等等造成图像的模糊,以及源自电路和光度学因素的噪声。图像复原的目标是对退化的图像进行处理,使它趋向于复原成没有退化的理想图像。成像过程的每一个环节(透镜,感光片,数字化等等)都会引起退化。在进行图像复原时,既可以用连续数学,也可以用离散数学进行处理。其次,处理既可在空间域,也可在频域进行。 1.2 图象恢复与图象增强的异同 相同点:改进输入图像的视觉质量。 不同点:图象增强目的是取得较好的视觉结果(不考虑退化原因);图象恢复根据相应的退化模型和知识重建或恢复原始的图像(考虑退化原因)。 1.3 图象退化的原因 图象退化指由场景得到的图像没能完全地反映场景的真实内容,产生了失真等问题。其原因是多方面的。如: 透镜象差/色差 聚焦不准(失焦,限制了图像锐度) 模糊(限制频谱宽度) 噪声(是一个统计过程) 抖动(机械、电子) 1.4 维纳滤波的研究历史 维纳是著名的数学家,后来被誉为信息理论家。维纳的著作不仅是一个很好的创见,而且具有结合工程的实际意义,是线性滤波理论研究的一个重要的开端. 在第二次世界大战中,由于雷达的发明以及防空炮火控制的任务,把大量有修养的数学家和物理学家都动员到信息科学这个研究领域中来了,这个时候人们活跃于这个领域,并有许多重大的科学创造。数学家维纳对于滤波理论的研究成果,就是这时候重大的科学创见之一。
数字图像处理_边缘检测算子与锐化算子(含MATLAB代码)
数字图像处理实验五 15生医 一、实验内容 对某一灰度图像,进行如下处理: (1)分别用Roberts、Prewitt和Sobel边缘检测算子进行边缘检测;(2)将Roberts、Prewitt和Sobel边缘检测算子修改为锐化算子,对原图像进行锐化,同屏显示原图像、边缘检测结果和锐化后图像,说明三者之间的关系。一灰度图像的二值化。 二、运行环境 MATLAB R2014a 三、运行结果及分析 运行结果如图所示:可以观察出原图像、边缘检测结果和锐化后图像三者之间的关系为:原图像+边缘检测结果=锐化后图像 四、心得体会 通过MATLAB编程更加熟悉了课本上关于锐化与边缘检测的相关知识
点,对二者的关系也有了具体的认识。同时,对MATLAB图像导入函数、图像边缘检测函数、锐化窗口矩阵卷积函数的调用及实现机理也有所掌握,比如后边附的程序中会提到的“%”标注的思考。 五、具体程序 size=512; Img_rgb=imread('E:\lena.jpg'); %读取图像 Img_gray=rgb2gray(Img_rgb); %进行RGB到灰度图像的转换(虽然原来在网上下载的lena就是黑白图像,但是这一步必须要有!否则处理结果不正确) figure(1); subplot(2,3,1); imshow(Img_gray); title('原图像'); Img_edge=zeros(size); a={'roberts','prewitt','sobel'}; for i=1:3 Img_edge=edge(Img_gray,a{i}); figure(1); subplot(2,3,i+1); imshow(Img_edge); axis image; title(a(i)); end A=imread('E:\lena.jpg'); B=rgb2gray(A); B=double(B); Window=[-1 -1 -1;-1 9 -1;-1 -1 -1]; %八邻域拉普拉斯锐化算子(α取1) C=conv2(B,Window,'same'); Img_sharp=uint8(C); subplot(2,3,5); imshow(Img_sharp); title('sharp');
部分图像分割的方法(matlab)
大津法: function y1=OTSU(image,th_set) image=imread('color1.bmp'); gray=rgb2gray(image);%原图像的灰度图 low_high=stretchlim(gray);%增强图像,似乎也不是一定需要gray=imadjust(gray,low_high,[]); % subplot(224);imshow(gray);title('after adjust'); count=imhist(gray); [r,t]=size(gray); n=r*t; l=256; count=count/n;%各级灰度出现的概率 for i=2:l if count(i)~=0 st=i-1; break end end %以上循环语句实现寻找出现概率不为0的最小灰度值 for i=l:-1:1 if count(i)~=0; nd=i-1; break end end %实现找出出现概率不为0的最大灰度值 f=count(st+1:nd+1); p=st;q=nd-st;%p和分别是灰度的起始和结束值 u=0; for i=1:q; u=u+f(i)*(p+i-1); ua(i)=u; end
%计算图像的平均灰度值 for i=1:q; w(i)=sum(f(1:i)); end %计算出选择不同k的时候,A区域的概率 d=(u*w-ua).^2./(w.*(1-w));%求出不同k值时类间方差[y,tp]=max(d);%求出最大方差对应的灰度级 th=tp+p; if thth) y1(i,j)=x1(i,j); else y1(i,j)=0; end end end %上面一段代码实现分割 % figure,imshow(y1); % title('灰度门限分割的图像');
基于MATLAB的图像锐化算法研究
中北大学 课程设计说明书 学院:信息商务学院 专业:电子信息工程 题目:信息处理综合实践: 基于MATLAB的图像锐化算法研究 指导教师:陈平职称: 副教授 2013 年 12 月 15 日 中北大学 课程设计任务书
13/14 学年第一学期 学院:信息商务学院 专业:电子信息工程 课程设计题目:信息处理综合实践: 基于MATLAB的图像锐化算法研究起迄日期:2013年12月16日~2013年12月27日课程设计地点:电子信息科学与技术专业实验室指导教师:陈平 系主任:王浩全 下达任务书日期: 2013 年12月15 日 课程设计任务书
课程设计任务书
目录 1 绪论 (1)
1.1 MATLAB简介 (1) 1.2 MATLAB对图像处理的特点 (1) 1.3 图像锐化概述 (2) 1.4 图像锐化处理的现状和研究方法 (2) 2 设计目的 (2) 3 设计内容和要求 (2) 4 总体设计方案分析 (2) 5 主要算法及程序 (4) 5.1 理想高通滤波器锐化程序 (4) 5.2 高斯高通滤波器锐化程序 (5) 5.3 高提升滤波器锐化程序 (6) 6 算法结果及比较分析 (8) 6.1 理想高通滤波器锐化结果 (8) 6.2 高斯高通滤波器锐化结果 (9) 6.3 高提升滤波器锐化结果 (10) 6.4 算法结果比较分析 (11) 7 设计评述 (11) 参考文献 (12)
1 绪论 数字图像处理(Digital Image Processing)又称为计算机图像处理,它最早出现于20世纪50年代,当时的电子计算机已经发展到一定水平,人们开始利用计算机来处理图形和图像信息。数字图像处理作为一门学科大约形成于20世纪60年代初期。图像处理的基本目的是改善图像的质量。它以人为对象,改善人的视觉效果为目的。图像处理中,输入的是质量低的图像,输出的是改善质量后的图像,常见的图像处理方法有图像增强、复原、编码、压缩等。图像处理技术在许多应用领域受到广泛重视并取得了重大的开拓性成就,属于这些领域的有航空航天。生物医学工程、工业检测、公安司法、军事制导、文化艺术等,使图像处理成为一门引人注意、前景远大的新型科学。随着图像处理技术的深入发展,随着计算机技术和人工智能、思维科学研究的迅速发展,数字图像处理更高、更深层次发展。 1.1 MATLAB简介 MATLAB全称Matrix Laboratory(矩阵实验室),最早初由美国Cleve Moler 博士在20世纪70年代末讲授矩阵理论和数据分析等课程时编写的软件包Linpack和Eispack组成。它用于数学、信息工程、摇感、机械工程、计算机等专业。它的推广得到各个领域专家的关注,其强大的扩展功能为各个领域应用提供了基础,各个领域的专家相继推出MATLAB工具箱,而且工具箱还在不断发展,借助于这些工具箱,各个层次的研究人员可直接、直观、方便地进行工作,从而节省大量的时间。目前,MATLAB语言已经成为科学计算、系统仿真、信号与图像处理的主流软件。本文主要从MATLAB图像处理方面做应用。 1.2MATLAB对图像处理的特点 MATLAB全称Matrix Laboratory(矩阵实验室),是一种主要用于矩阵数据值计算的软件,因其在矩阵运算上的特点,使得MATLAB在处理图像上具有独特优势,理论上讲,图像是一种二维的连续函数,而计算机在处理图像数字时,首先必须对其在空间和亮度上进行数字化,这就是图像的采样个量化的过程。二维图像均匀采样,课得到一副离散化成N×N样本的数字图像,该数字图像是一个整数列阵,因而用矩阵来描述该数字图像是最直观最简便的。
基于MATLAB的运动模糊图像处理
基于MATLAB的运动模糊图像处理 提醒: 我参考了文献里的书目和网上的一些代码而完成的,所以误差会比较大,目前对于从网上下载的模糊图片的处理效果很不好,这是我第一次上传自己完成的实验的文档,希望能帮到一些人吧。 研究目的 在交通系统、刑事取证中图像的关键信息至关重要,但是在交通、公安、银行、医学、工业监视、军事侦察和日常生活中常常由于摄像设备的光学系统的失真、调焦不准或相对运动等造成图像的模糊,使得信息的提取变得困难。但是相对于散焦模糊,运动模糊图像的复原在日常生活中更为普遍,比如高速运动的违规车辆的车牌辨识,快速运动的人群中识别出嫌疑人、公安刑事影像资料中提取证明或进行技术鉴定等等,这些日常生活中的重要应用都需要通过运动模糊图像复原技术来尽可能地去除失真,恢复图像的原来面目。因此对于运动模糊图像的复原技术研究更具有重要的现实意义。 图像复原原理 本文探讨了在无噪声的情况下任意方向的匀速直线运动模糊图像的复原问题,并在此基础上讨论了复原过程中对点扩散函数(PSF)的参数估计从而依据自动鉴别出的模糊方向和长度构造出最为近似的点扩散函数,构造相应的复原模型,实现运动模糊图像的复原;在模糊图像自动复原的基础上,根据恢复效果图的纹理特征和自动鉴别出的模糊长度和角度,人工调整模糊方向和长度参数,使得复原效果达到最佳。 实验过程 模糊方向的估计: 对图1(a)所示的原始图像‘车牌’图像做方向θ=30?,长度L=20像素的匀速直线运动模糊,得到退化图像如图1(b)
1(a) 1(b) j=imread('车牌1.jpg'); figure(1),imshow(j); title('原图像'); len=20; theta=30; psf=fspecial('motion',len,theta); j1=imfilter(j,psf,'circular','conv'); figure,imshow(j1); title('PSF 模糊图像'); 图1(c)和1(d)分别为原图像和模糊图像的二次傅里叶变化
两个matlab实现最大熵法图像分割程序
%两个程序,亲测可用 clear all a=imread('moon.tif'); figure,imshow(a) count=imhist(a); [m,n]=size(a); N=m*n; L=256; count=count/N;%%每一个像素的分布概率 count for i=1:L if count(i)~=0 st=i-1; break; end end st for i=L:-1:1 if count(i)~=0 nd=i-1; break; end end nd f=count(st+1:nd+1); %f是每个灰度出现的概率 size(f) E=[]; for Th=st:nd-1 %%%设定初始分割阈值为Th av1=0; av2=0; Pth=sum(count(1:Th+1)); %%%第一类的平均相对熵为 for i=0:Th av1=av1-count(i+1)/Pth*log(count(i+1)/Pth+0.00001); end %%%第二类的平均相对熵为 for i=Th+1:L-1 av2=av2-count(i+1)/(1-Pth)*log(count(i+1)/(1-Pth)+0.00001); end E(Th-st+1)=av1+av2; end position=find(E==(max(E))); th=st+position-1
for i=1:m for j=1:n if a(i,j)>th a(i,j)=255; else a(i,j)=0; end end end figure,imshow(a); %%%%%%%%%%%%%%%%%%%%%2-d 最大熵法(递推方法) %%%%%%%%%%% clear all; clc; tic a=imread('trial2_2.tiff'); figure,imshow(a); a0=double(a); [m,n]=size(a); h=1; a1=zeros(m,n); % 计算平均领域灰度的一维灰度直方图 for i=1:m for j=1:n for k=-h:h for w=-h:h; p=i+k; q=j+w; if (p<=0)|( p>m) p=i; end if (q<=0)|(q>n) q=j; end a1(i,j)=a0(p,q)+a1(i,j); end end a2(i,j)=uint8(1/9*a1(i,j)); end
基于 MATLAB的图像预处理技术研究
基于MATLAB的图像预处理技术研究 图像识别技术:其对研究对象进行图像获取,然后根据研究对象的自身特征信息进行分类和识别。 这门技术的研究对象十分广泛,只要可以进行图像获取并对特征进行分析便可以应用图像识别技术。 举例说明: 医学上X光片的图像诊断、智能交通系统中车辆牌照的图像识别分类、卫星拍摄的湖泊森林遥感图像处理、人脸识别、身份识别。 图像识别系统的概述: 包含三个主要部分: 1,图像的获取;(进行最初的图像采集,将最原始的对象转换为图像信息;将最初的数据材料带入图像信息中) 2,对获取的图像进行前期预处理,提取有用的信息。(对原始的图像中的噪声以及非相关特征信息进行过滤,减少所获取原始图像的信息量,从而为后期最终特征信息的分类减少干扰。即将图像分为多个区域,并且每个区域只包含一定数量的特征信息。) 3,根据研究对象的先验特征信息对图像中的噪声以及非相关特征信息进行查找识别。(主要是在前期获取的图像信息预处理结束后,根据相关的先验知识,利用计算机技术快速实时地对图像中的特征信息进行提取分类。在这部分中,对于识别的特征信息的正确率有一定的要求,以减少分类识别错误,其中特征的矢维函数、字符串数等需要
不断的简化,从而以最简单的模式划分特征信息) 分类识别:将原始的图像根据特征信息进行分类。 图像预处理技术 1,图像的灰度化 (获取不含彩色信息的灰度图像,灰度图像只含有亮度信息) 通过采集过程获取的一般都是彩色图像。并以Jpg或者Bmp格式进行存储。以Bmp格式的图像为例进行分析,假设采集获取得一幅彩色图像的像素为1280*960,那么其在硬盘上的存储空间需要1280*960*3,即3686400个字节,(灰度图每个像素仅由一个8位字节表示该像素的亮度值.)。其占用的存储空间比灰度图像大的很多,所以为节省空间并减小计算量,一般要将彩色图像转化为灰度图像,只选择三个颜色分量进行图像的色彩区分,具体的转换方式为Y=R*0.299+G*0.587+B*0.114,这个过程就是对获取的彩色图像的灰度化处理过程。 2,图像的灰度拉伸 由于光照等因素,许多图像成像时光照不足,使得整幅图像变暗,或者成像时光照过强,使得整幅图变亮。为了增强图像的对比度,使其明暗鲜明,有利于对图像的特征信息进行识别,需要对灰度化的图像进行灰度线性变换,以便突出图像的特征信息的部分。 灰度线性变换采用的变换公式一般为: ()()C , , g, ? =的值由输入图像的灰度值动态范围决x ,+ f R R C y x y
MATLAB实现图像恢复设计报告
MATLAB实现图像恢复设计报告 一、设计目标及需求分析 设计目标:希望通过matlab设计一个软件来实现对CT图像的模糊再恢复的过程,是对现实中CT图像复原的一个简单仿真。 需求分析:随着网络和通信技术的发展,数字图像处理与分析技术已经在科学研究、工业生产、医疗卫生、教育等领域得到了广泛应用,对推动社会的发展和提高人们的生活水平都起到了重要作用[1]。而在医学CT影像中,CT图像的影响因素众多,包括部分容积效应,空间分辨力,密度分辨力,相机条件设定和噪声等[2]。这些因素会造成CT 图像模糊失真,需要对图像进行恢复,才能满足对临床诊断的要求。 二、设计概要 图像退化 三、详细设计 在GUI界面设计中选取三个静态文本分别叫“原始图像”、“模糊加噪图像”、“恢复图像”,添加三个坐标轴,三个按钮分别用于“读入原始图像”、“模糊和加噪”、“恢复”。 图一 GUI界面设计
①点击按钮“读入图像”,将选取的原始肺部CT图像导入第一个坐标轴中。 ②点击按钮“模糊和加噪”,对原始CT图像进行运动模糊,加入高斯噪声,生成的图像显示在第二个坐标轴中。 图二模糊和加噪 在这里用MATLAB图像处理工具函数fspecial生成了一个运动模糊的点扩展函数PSF,PSF 再与原图卷积得到模糊图像,这一步操作是为了模拟现实CT图像中由于病人身体的移动,心脏搏动和胃肠蠕动这些不自主的运动造成的伪影。在CT图像中的噪声有多种类型,有高斯噪声,椒盐噪声,泊松噪声,斑点噪声等。这里只引入了高斯噪声是由于通过查阅文献得知,CT图像中的噪声主要是高斯噪声[3],是一个抽象简化的退化模型。 ③点击按钮“恢复”,对模糊和加噪的图像进行图像复原,将复原后的图像显示在第三个坐标轴上。
基于Matlab的彩色图像分割
3 Matlab编程实现 3.1 Matlab编程过程 用Matlab来分割彩色图像的过程如下: 1)获取图像的RGB颜色信息。通过与用户的交互操作来提示用户输入待处理的彩色图像文件路径; 2)RGB彩色空间到lab彩色空间的转换。通过函数makecform()和applycform()来实现; 3)对ab分量进行Kmean聚类。调用函数kmeans()来实现; 4)显示分割后的各个区域。用三副图像分别来显示各个分割目标,背景用黑色表示。3.2 Matlab程序源码 %文件读取 clear; clc; file_name = input('请输入图像文件路径:','s'); I_rgb = imread(file_name); %读取文件数据 figure(); imshow(I_rgb); %显示原图 title('原始图像'); %将彩色图像从RGB转化到lab彩色空间 C = makecform('srgb2lab'); %设置转换格式 I_lab = applycform(I_rgb, C); %进行K-mean聚类将图像分割成3个区域 ab = double(I_lab(:,:,2:3)); %取出lab空间的a分量和b分量 nrows = size(ab,1); ncols = size(ab,2); ab = reshape(ab,nrows*ncols,2); nColors = 3; %分割的区域个数为3 [cluster_idx cluster_center] = kmeans(ab,nColors,'distance','sqEuclidean','Replicates',3); %重复聚类3次 pixel_labels = reshape(cluster_idx,nrows,ncols); figure(); imshow(pixel_labels,[]), title('聚类结果'); %显示分割后的各个区域 segmented_images = cell(1,3); rgb_label = repmat(pixel_labels,[1 1 3]); for k = 1:nColors
基于Matlab的数字图像处理系统设计要点
论文(设计)题目: 基于MATLAB的数字图像处理系统设计 姓名宋立涛 学号201211867 学院信息学院 专业电子与通信工程 年级2012级 2013年6月16日
基于MATLAB的数字图像处理系统设计 摘要 MATLAB 作为国内外流行的数字计算软件,具有强大的图像处理功能,界面简洁,操作直观,容易上手,而且是图像处理系统的理想开发工具。 笔者阐述了一种基于MATLAB的数字图像处理系统设计,其中包括图像处理领域的大部分算法,运用MATLAB 的图像处理工具箱对算法进行了实现,论述了利用系统进行图像显示、图形表换及图像处理过程,系统支持索引图像、灰度图像、二值图像、RGB 图像等图像类型;支持BMP、GIF、JPEG、TIFF、PNG 等图像文件格式的读,写和显示。 上述功能均是在MA TLAB 语言的基础上,编写代码实现的。这些功能在日常生活中有很强的应用价值,对于运算量大、过程复杂、速度慢的功能,利用MATLAB 可以既能快速得到数据结果,又能得到比较直观的图示。 关键词:MATLAB 数字图像处理图像处理工具箱图像变换
第一章绪论 1.1 研究目的及意义 图像信息是人类获得外界信息的主要来源,近代科学研究、军事技术、工农业生产、医学、气象及天文学等领域中,人们越来越多地利用图像信息来认识和判断事物,解决实际问题,由此可见图像信息的重要性,数字图像处理技术将会伴随着未来信息领域技术的发展,更加深入到生产和科研活动中,成为人类生产和生活中必不可少的内容。 MATLAB 软件不断吸收各学科领域权威人士所编写的实用程序,经过多年的逐步发展与不断完善,是近几年来在国内外广泛流行的一种可视化科学计算软件。MATLAB 语言是一种面向科学与工程计算的高级语言,允许用数学形式的语言来编写程序,比Basic、Fortan、C 等高级语言更加接近我们书写计算公式的思维方式,用MATLAB 编写程序犹如在演算纸上排列出公式与求解问题一样。它编写简单、编程效率高并且通俗易懂。 1.2 国内外研究现状 1.2.1 国内研究现状 国内在此领域的研究中具有代表性的是清华大学研制的数字图像处理实验开发系统TDB-IDK 和南京东大互联技术有限公司研制的数字图像采集传输与处理实验软件。 TDB-IDK 系列产品是一款基于TMS320C6000 DSP 数字信号处理器的高级视频和图像系统,也是一套DSP 的完整的视频、图像解决方案,该系统适合院校、研究所和企业进行视频、图像方面的实验与开发。该软件能够完成图像采集输入程序、图像输出程序、图像基本算法程序。可实现对图像信号的实时分析,图像数据相对DSP独立方便开发人员对图像进行处理,该产品融合DSP 和FPGA/CPLD 两个高端技术,可以根据用户的具体需求合理改动,可以分析黑白和彩色信号,可以完成图形显示功能。 南京东大互联技术有限公司研制的数字图像采集传输与处理实验软件可实现数字图像的采集、传输与处理。可利用软件及图像采集与传输设备,采集图像并实现点对点的数字图像传输,可以观察理解多种图像处理技术的效果和差别,
基于MATLAB的运动模糊图像恢复技术
基于MATLAB的运动模糊图像恢复技术 王洪珏 (温州医学院,浙江,温州) 摘要:MATLAB是当今流行的科学计算软件,它具有很强的数据处理能力。在其图像处理工具箱中有四个图像复原函数,本文就这些函数的算法原理、运用和恢复处理效果结合实力效果作简要对比讨论。 0前言 图像复原时图像处理中一个重要的研究课题。图像在形成、传输和记录的过程中,由于传感器的噪声、摄像机未对好焦、摄像机与物体相对运动、系统误差、畸变、噪声等因素的影响,使图像往往不是真实景物的完善影像。这种图像在形成、传输和记录过程中,由于成像系统、传输介质和设备的不完善,使图像质量下降的过程称为图像的退化。图像复原就是通过计算机处理,对质量下降的图像加以重建或恢复的过程。 图像复原过程一般为:找退化原因→建立退化模型→反向推演→图像复原 1算法产生概述 开发算法时,首先要创建图像退化的线性数学模型,接着选择准则函数,并以适当的数学形式表达,然后进行数学推演。推演过程中通常要进行表达形式(即空域形式、频域形式、矩阵-矢量形式或变换域形式)的相互转换,最后得到图像复原算式。 退化数学模型的空域、频域、矢量-矩阵表达形式分别是: g(x,y)=d(x,y)*f(x,y)+n(x,y) G(u,v)=D(u,v)〃F(u,v)+N(u,v) g=HF+n 其中:g(x,y)、d(x,y)、f(x,y)、n(x,y)分别为观测的退化图像、模糊函数、原图像、加性噪声,*为卷积运算符,(x=0,1,2,…,M-1),(y=0,1,2,…,N-1)。 2运动模糊的产生 景物与相机之间的相对运动通常会使相机所成的像存在运动模糊。对于线性移不变模糊,退化图像u0可以写成,u0=h*u+n,其中h为模糊核,*表示卷积,n为加性噪声。 由du/dt=0,文献[5]将这种运动模糊过程描述为波动方程: