基于Matlab的数字图像处理系统设计设计

合集下载

数字图像处理课程设计基于Matlab的数字图像处理

数字图像处理课程设计基于Matlab的数字图像处理

数字图像处理课程设计--基于Matlab的数字图像处理数字图像处理课程设计基于Matlab的数字图像处理——图像的运算院系信息技术学院专业班级电气6班学号 201107111282姓名何英娜指导教师章瑞平课程设计时间 2012年11月目录一、摘要 (3)二、图像代数运算1、1图像的加法运算 (4)1、2图像的减法运算 (4)1、3图像的除法运算 (4)1、4绝对差值运算 (7)1、 5 图像的求补运算 (7)3三、图像的几何运算2、1 图像插值 (7)2、2图像的旋转 (8)2、3图像的缩放 (9)2、4图像的投影变换 (10)2、4图像的剪切 (11)四、课程设计总结与体会 (13)五、参考文献 (14)摘要图像运算涵盖程序设计、图像点运算、代数运算、几何运算等多种运算;设计目的和任务:1、熟悉图像点运算、代数运算、几何运算的基本定义和常见方法;2、掌握在MTLAB中对图像进行点运算、代数运算、几何运算的方法3、掌握在MATLAB中进行插值的方法4、运用MATLAB语言进行图像的插值缩放和插值旋转5、学会运用图像的投影变换和图像的剪切46、进一步熟悉了解MATLAB语言的应用,将数字图像处理更好的应用于实际7、通过各类算法加强图像各种属性、一、图像的几何运算何运算图像代数运算是指对两幅或两幅以上输入图像对应的像素逐个进行和差积商运算以产生增强效果的图像。

图像运算是一种比较简单有效的增强处理手段是图像处理中常用方法。

四种图像处理代数运算的数学表达式如下:C(x,y)=A(x,y)+B(x,y)C(x,y)=A(x,y)-B(x,y)C(x,y)=A(x,y)*B(x,y)C(x,y)=A(x,y)/B(x,y)1图像加法运算一般用于多幅图像求平均效果,以便有效降低具有叠加性的随机噪声,在matlab中imadd用于图像相加,其调用格式为z=imadd(X,Y);程序演示如下:I=imread('rice.png');subplot(2,2,1),imshow(I),title('原图像1'); J=imread('cameraman.tif');subplot(2,2,2),imshow(J),title('原图像52');K=imadd(I,J,'uint16'););subplot(2,2,3),imshow(K,[]),title('相加后图像'2、图像减法运算也称差分运算,是用于检测图像变化及运动物体的方法;用imsubtract函数实现。

数字图像处理matlab课程设计

数字图像处理matlab课程设计

数字图像处理matlab课程设计一、课程目标知识目标:1. 理解数字图像处理的基本概念,掌握图像的表示和存储方式;2. 学会使用MATLAB软件进行数字图像处理,掌握相关函数和工具箱的使用方法;3. 掌握图像增强、滤波、边缘检测等基本图像处理技术;4. 了解图像分割、特征提取等高级图像处理技术。

技能目标:1. 能够运用MATLAB进行图像读取、显示和保存操作;2. 能够独立完成图像的增强、滤波等基本处理操作;3. 能够运用边缘检测算法对图像进行处理,提取关键特征;4. 能够根据实际需求选择合适的图像处理技术,解决实际问题。

情感态度价值观目标:1. 培养学生对数字图像处理技术的兴趣,激发其学习热情;2. 培养学生的团队合作意识,使其学会在团队中分享和交流;3. 培养学生严谨的科学态度,使其注重实验数据的真实性;4. 培养学生的创新思维,鼓励其探索新方法,提高解决问题的能力。

本课程旨在通过数字图像处理MATLAB课程设计,使学生在掌握基本理论知识的基础上,运用MATLAB软件进行图像处理实践。

课程注重理论与实践相结合,培养学生具备实际操作能力,并能运用所学知识解决实际问题。

针对学生的年级特点,课程目标既注重知识技能的传授,又关注情感态度价值观的培养,为学生今后的学习和工作奠定基础。

二、教学内容1. 数字图像处理基础- 图像表示与存储(RGB、灰度、二值图像)- 图像类型转换- MATLAB图像处理工具箱介绍2. 图像增强- 直方图均衡化- 伽玛校正- 图像锐化3. 图像滤波- 均值滤波- 中值滤波- 高斯滤波- 双边滤波4. 边缘检测- 索贝尔算子- 拉普拉斯算子- Canny边缘检测5. 图像分割- 阈值分割- 区域生长- 分水岭算法6. 特征提取与描述- 霍夫变换- SIFT算法- ORB算法教学内容根据课程目标进行选择和组织,注重科学性和系统性。

教学大纲明确分为六个部分,分别对应数字图像处理的基础知识、图像增强、滤波、边缘检测、图像分割和特征提取与描述。

东北大学matlab计算机图像处理实验报告

东北大学matlab计算机图像处理实验报告

计算机图像处理实验报告学院:信息学院班级:姓名:学号:实验内容:数字图像处理1、应用MATLAB语言编写显示一幅灰度图像、二值图像、索引图像及彩色图像的程序,并进行相互之间的转换;(1)、显示一副真彩RGB图像代码:I=imread('mikasa.jpg');>>imshow(I);效果:(2)、RGB转灰度图像代码:graycat=rgb2gray(I);>> subplot(1,2,1);>> subimage(I);>> subplot(1,2,2);>> subimage(graycat);效果:(3)、RGB转索引图像代码:[indcat,map]=rgb2ind(I,0.7);>> subplot(1,2,1);>> subimage(I);>> subplot(1,2,2);>> subimage(indcat,map);效果:(4)、索引图像转RGB代码:I1=ind2rgb(indcat,map);>>subplot(1,2,1);>>subimage(indcat,map);>>subplot(1,2,2);>>subimage(I1);效果:(5)、索引转灰度图像代码:i2gcat=ind2gray(indcat,map);>>subplot(1,2,1);>>subimage(indcat,map);>>subplot(1,2,2);>>subimage(i2gcat);效果:(6)、灰度转索引图像代码:[g2icat,map]=gray2ind(graycat,64);>>subplot(1,2,1);>>subimage(graycat);>>subimage(g2icat,map);效果:(7)、RGB转二值图像代码:r2bwcat=im2bw(I,0.5);>>subplot(1,2,1);>>subimage(I);>>subplot(1,2,2);>>subimage(r2bwcat);效果:(8)灰度转二值图像代码:g2bwcat=im2bw(graycat,0.5); subplot(1,2,1);>>subimage(graycat);>>subplot(1,2,2);>>subimage(g2bwcat);效果:(9)、索引转二值图像代码:>> i2bwcat=im2bw(indcat,map,0.7);>>subimage(indcat,map);>>subplot(1,2,2);>>subimage(i2bwcat);效果:2、应用MATLAB工具箱演示一幅图像的傅里叶变换、离散余弦变换,观察其频谱图。

(完整版)数字图像处理MATLAB程序【完整版】

(完整版)数字图像处理MATLAB程序【完整版】

第一部分数字图像处理实验一图像的点运算实验1.1 直方图一.实验目的1.熟悉matlab图像处理工具箱及直方图函数的使用;2.理解和掌握直方图原理和方法;二.实验设备1.PC机一台;2.软件matlab。

三.程序设计在matlab环境中,程序首先读取图像,然后调用直方图函数,设置相关参数,再输出处理后的图像。

I=imread('cameraman.tif');%读取图像subplot(1,2,1),imshow(I) %输出图像title('原始图像') %在原始图像中加标题subplot(1,2,2),imhist(I) %输出原图直方图title('原始图像直方图') %在原图直方图上加标题四.实验步骤1. 启动matlab双击桌面matlab图标启动matlab环境;2. 在matlab命令窗口中输入相应程序。

书写程序时,首先读取图像,一般调用matlab自带的图像,如:cameraman图像;再调用相应的直方图函数,设置参数;最后输出处理后的图像;3.浏览源程序并理解含义;4.运行,观察显示结果;5.结束运行,退出;五.实验结果观察图像matlab环境下的直方图分布。

(a)原始图像 (b)原始图像直方图六.实验报告要求1、给出实验原理过程及实现代码;2、输入一幅灰度图像,给出其灰度直方图结果,并进行灰度直方图分布原理分析。

实验1.2 灰度均衡一.实验目的1.熟悉matlab图像处理工具箱中灰度均衡函数的使用;2.理解和掌握灰度均衡原理和实现方法;二.实验设备1.PC机一台;2.软件matlab;三.程序设计在matlab环境中,程序首先读取图像,然后调用灰度均衡函数,设置相关参数,再输出处理后的图像。

I=imread('cameraman.tif');%读取图像subplot(2,2,1),imshow(I) %输出图像title('原始图像') %在原始图像中加标题subplot(2,2,3),imhist(I) %输出原图直方图title('原始图像直方图') %在原图直方图上加标题a=histeq(I,256); %直方图均衡化,灰度级为256subplot(2,2,2),imshow(a) %输出均衡化后图像title('均衡化后图像') %在均衡化后图像中加标题subplot(2,2,4),imhist(a) %输出均衡化后直方图title('均衡化后图像直方图') %在均衡化后直方图上加标题四.实验步骤1. 启动matlab双击桌面matlab图标启动matlab环境;2. 在matlab命令窗口中输入相应程序。

基于MATLAB的数字图像处理的设计与实现

基于MATLAB的数字图像处理的设计与实现

基于MATLAB的数字图像处理的设计与实现摘要数字图像处理是一门新兴技术,随着计算机硬件的发展,数字图像的实时处理已经成可能,由于数字图像处理的各种算法的出现,使得其处理速度越来越快,能更好的为人们服务。

数字图像处理是一种通过计算机采用一定的算法对图形图像进行处理的技术。

目的:改善医学图像质量,使图像得到增强。

方法:利用Matlab工具箱函数,采用灰度直方图均衡化和高通滤波的方法对一幅X线图像进行增强处理。

结果:用直方图均衡化的算法,将原始图像密集的灰度分布变得比较稀疏,处理后的图像视觉效果得以改善。

高通滤波对于局部细节增强显著,高通滤波后使不易观察到的细节变得清晰。

结论:使用Matlab工具箱大大简化了编程工作,为医学图像处理提供了一种技术平台。

经过直方图均衡化和高通滤波处理后的医学图像,视觉效果得到改善。

关键词:MATLAB;直方图均衡化;高通滤波;图像增强AbstractDigital image processing is an emerging technology, with the development of computer hardware, real—time digital image processing has become possible due to digital image processing algorithms to appear,making it faster and faster processing speed,better for people services .Digital image processing is used by some algorithms computer graphics image pro cessing technology. Objective:To improve the quality of medical image by enhancing the details。

数字图像处理课程设计报告matlab

数字图像处理课程设计报告matlab

数字图像处理课程设计报告姓名:学号:班级: .net设计题目:图像处理教师:赵哲老师提交日期: 12月29日一、设计内容:主题:《图像处理》详细说明:对图像进行处理(简单滤镜,模糊,锐化,高斯模糊等),对图像进行处理(上下对称,左右对称,单双色显示,亮暗程度调整等),对图像进行特效处理(反色,实色混合,色彩平衡,浮雕效果,素描效果,雾化效果等),二、涉及知识内容:1、二值化2、各种滤波3、算法等三、设计流程图四、实例分析及截图效果:运行效果截图:第一步:读取原图,并显示close all;clear;clc;% 清楚工作窗口clc 清空变量clear 关闭打开的窗口close allI=imread('1.jpg');% 插入图片1.jpg 赋给Iimshow(I);% 输出图II1=rgb2gray(I);%图片变灰度图figure%新建窗口subplot(321);% 3行2列第一幅图imhist(I1);%输出图片title('原图直方图');%图片名称一,图像处理模糊H=fspecial('motion',40);%% 滤波算子模糊程度40 motion运动q=imfilter(I,H,'replicate');%imfilter实现线性空间滤波函数,I图经过H滤波处理,replicate反复复制q1=rgb2gray(q);imhist(q1);title('模糊图直方图');二,图像处理锐化H=fspecial('unsharp');%锐化滤波算子,unsharp不清晰的qq=imfilter(I,H,'replicate');qq1=rgb2gray(qq);imhist(qq1);title('锐化图直方图');三,图像处理浮雕(来源网络)%浮雕图l=imread('1.jpg');f0=rgb2gray(l);%变灰度图f1=imnoise(f0,'speckle',0.01);%高斯噪声加入密度为0.01的高斯乘性噪声 imnoise噪声污染图像函数 speckle斑点f1=im2double(f1);%把图像数据类型转换为双精度浮点类型h3=1/9.*[1 1 1;1 1 1;1 1 1];%采用h3对图像f2进行卷积滤波f4=conv2(f1,h3,'same');%进行sobel滤波h2=fspecial('sobel');g3=filter2(h2,f1,'same');%卷积和多项式相乘 same相同的k=mat2gray(g3);% 实现图像矩阵的归一化操作四,图像处理素描(来源网络)f=imread('1.jpg');[VG,A,PPG] = colorgrad(f);ppg = im2uint8(PPG);ppgf = 255 - ppg;[M,N] = size(ppgf);T=200;ppgf1 = zeros(M,N);for ii = 1:Mfor jj = 1:Nif ppgf(ii,jj)<Tppgf1(ii,jj)=0;elseppgf1(ii,jj)=235/(255-T)*(ppgf(ii,jj)-T);endendendppgf1 = uint8(ppgf1);H=fspecial('unsharp');Motionblur=imfilter(ppgf1,H,'replicate');figure;imshow(ppgf1);调用function [VG, A, PPG] = colorgrad(f, T)if (ndims(f)~=3) || (size(f,3)~=3)error('Input image must be RGB');endsh = fspecial('sobel');sv = sh';Rx = imfilter(double(f(:,:,1)), sh, 'replicate');Ry = imfilter(double(f(:,:,1)), sv, 'replicate');Gx = imfilter(double(f(:,:,2)), sh, 'replicate');Gy = imfilter(double(f(:,:,2)), sv, 'replicate');Bx = imfilter(double(f(:,:,3)), sh, 'replicate');By = imfilter(double(f(:,:,3)), sv, 'replicate');gxx = Rx.^2 + Gx.^2 + Bx.^2;gyy = Ry.^2 + Gy.^2 + By.^2;gxy = Rx.*Ry + Gx.*Gy + Bx.*By;A = 0.5*(atan(2*gxy./(gxx-gyy+eps)));G1 = 0.5*((gxx+gyy) + (gxx-gyy).*cos(2*A) + 2*gxy.*sin(2*A));A = A + pi/2;G2 = 0.5*((gxx+gyy) + (gxx-gyy).*cos(2*A) + 2*gxy.*sin(2*A)); G1 = G1.^0.5;G2 = G2.^0.5;VG = mat2gray(max(G1, G2));RG = sqrt(Rx.^2 + Ry.^2);GG = sqrt(Gx.^2 + Gy.^2);BG = sqrt(Bx.^2 + By.^2);PPG = mat2gray(RG + GG + BG);if nargin ==2VG = (VG>T).*VG;PPG = (PPG>T).*PPG;endf1=rgb2gray(f);imhist(f1);title('素描图直方图');五,图像处理实色混合(来源网络)%实色混合I(I<=127)=0; %对像素进行处理,若值小于等于127,置0 I(I>127)=255; %对像素进行处理,若值大于127,置255 imshow(I);title('像素图');I1=rgb2gray(f);imhist(I1);title('像素图直方图');六,图像处理反色图f=imread('1.jpg');q=255-q;imshow(q);title('反色图');imhist(q1);title('反色图直方图');七,图像处理上下对称A=imread('1.jpg');B=A;[a,b,c]=size(A);a1=floor(a/2); b1=floor(b/2); c1=floor(c/2);B(1:a1,1:b,1:c)=A(a:-1:a-a1+1,1:b,1:c);figureimshow(B)title('上下对称');A=rgb2gray(A);figureimhist(A)title('上下对称直方图');八,图像处理类左右对称C=imread('1.jpg');A=C;C(1:a,1:b1,1:c)=A(1:a,b:-1:b+1-b1,1:c);figureimshow(C)title('左右对称');A=rgb2gray(A);figureimhist(A);title('左右对称直方图');九,图像处理单双色显示a=imread('1.jpg');a1=a(:,:,1);a2=a(:,:,2); a3=a(:,:,3);aa=rgb2gray(a);a4=cat(3,a1,aa,aa); a5=cat(3,a1,a2,aa);figuresubplot(121);imshow(a4);title('单色显示');subplot(122);imshow(a5);title('双色显示');a4=rgb2gray(a4);a5=rgb2gray(a5);figuresubplot(121);imhist(a4);title('单色显示直方图');subplot(122);imhist(a5);title('双色显示直方图');十,图像处理亮暗度调整a=imread('1.jpg');a1=0.8*a;figuresubplot(121);imshow(a1);title('暗图');subplot(122);imshow(a2);title('亮图')q3=rgb2gray(a1);q4=rgb2gray(a2);figuresubplot(121);mhist(q3);title('暗图直方图') subplot(122);imhist(q4);title('亮图直方图')十一,图像处理雾化处理q=imread('1.jpg');m=size(q,1);n=size(q,2);r=q(:,:,1);g=q(:,:,2);b=q(:,:,3);for i=2:m-10for j=2:n-10k=rand(1)*10;%产生一个随机数作为半径di=i+round(mod(k,33));%得到随机横坐标dj=j+round(mod(k,33));%得到随机纵坐标r(i,j)=r(di,dj);%将原像素点用随机像素点代替 g(i,j)=g(di,dj);b(i,j)=b(di,dj);endenda(:,:,1)=r;a(:,:,2)=g;a(:,:,3)=b;imshow(a)title('雾化处理图');q=rgb2gray(a);figureimhist(q);title('雾化处理图直方图');十二,图像处理高斯滤波I = imread('1.jpg');G =fspecial('gaussian', [5 5], 2);% fspecial生成一个高斯滤波器Ig =imfilter(I,G,'same');%imfilter使用该滤波器处理图片imshow(Ig);title('高斯滤波');I1=rgb2gray(Ig);imhist(I1);title('高斯滤波直方图');十三,图像处理色彩平衡(来自网络)im=imread('1.jpg');im2=im;%存储元图像im1=rgb2ycbcr(im);%将im RGB图像转换为YCbCr空间。

数字图像处理matlab课程设计

数字图像处理matlab课程设计

数字图像处理matlab课程设计一、教学目标本课程的教学目标是使学生掌握数字图像处理的基本理论和方法,学会使用MATLAB软件进行图像处理和分析。

通过本课程的学习,学生应达到以下具体目标:1.理解数字图像处理的基本概念、原理和算法。

2.熟悉MATLAB图像处理工具箱的使用。

3.能够运用数字图像处理的基本算法解决实际问题。

4.能够使用MATLAB进行图像处理和分析,撰写相关的程序代码。

情感态度价值观目标:1.培养学生的创新意识和团队协作精神。

2.培养学生对数字图像处理技术的兴趣,提高其综合素质。

二、教学内容根据课程目标,本课程的教学内容主要包括以下几个部分:1.数字图像处理基本概念:图像处理的基本概念、图像数字化、图像表示和图像变换。

2.图像增强和复原:图像增强、图像去噪、图像复原。

3.图像分割和描述:图像分割、图像特征提取和描述。

4.图像形态学:形态学基本运算、形态学滤波、形态学重建。

5.MATLAB图像处理工具箱的使用:MATLAB图像处理工具箱的基本功能、常用图像处理函数。

6.图像处理实例分析:结合实际案例,分析数字图像处理技术的应用。

三、教学方法为了实现课程目标,本课程将采用以下教学方法:1.讲授法:通过讲解图像处理的基本概念、原理和算法,使学生掌握图像处理的基本知识。

2.案例分析法:通过分析实际案例,使学生了解数字图像处理技术在实际中的应用。

3.实验法:通过上机实验,使学生熟练掌握MATLAB图像处理工具箱的使用,提高学生的实际操作能力。

4.讨论法:学生进行课堂讨论,激发学生的思维,培养学生的创新意识和团队协作精神。

四、教学资源为了支持教学内容和教学方法的实施,本课程将采用以下教学资源:1.教材:《数字图像处理(MATLAB版)》。

2.参考书:相关领域的经典教材和论文。

3.多媒体资料:教学PPT、视频教程等。

4.实验设备:计算机、MATLAB软件、图像处理相关硬件设备。

五、教学评估本课程的评估方式包括平时表现、作业、考试等多个方面,以全面、客观、公正地评价学生的学习成果。

数字图像处理课程设计

数字图像处理课程设计

《数字视音频技术》课程设计报告题目:基于MATLAB/GUI数字图像处理专业名称:电子信息工程班级:电信072 学号:姓名:2010年 12月20日基于MATLAB/GUI数字图像处理一.设计目标图形用户界面(Graphical User Interface)简称GUI,在Matlab程序开发中起着举足轻重的作用,它有别于传统的VC、JAVA或者Delphi的界面开发方式。

作为一个数学运算能力很强的软件,Matlab的运算结果通常是用图形来表示的,GUI的使用更易于图形表现的多元化,在数字图像处理中更加的方便、直观。

下面设计一个简单的GUI数字图像处理,掌握GUI菜单,控件,回调函数的具体实现方法。

二.设计环境:Windows xpMatlab 7.1三.方案论证界面设计采用菜单模式,通过MATLAB图像处理工具箱提供的强大图像处理、图像设计功能来对图像进行处理。

通过做Matlab GUI界面来对图像进行编辑、缩放、加噪声、噪声滤波、颜色模型转换和图像的翻转。

通过对Matlab函数直接调用和自编函数来实现上述图像处理功能,其中图像进行任意角度翻转还用到了两个不同GUI之间数据传递实现的。

四.实验设计过程1.菜单的创建和设置菜单项的创建、设置可以通过系统函uimenu函数来完成,同时也可以利用GUI的设计工具来创建、设置。

如图1-1图1-1 菜单栏的设置2.控件的设计现在,绝大多数的软件中,图形界面都包含有控件。

控件也是一种是图形对象通过使用各种类型的控件,可以建立起操作简便,功能强大的图形界面软件。

Matlab系统为我们提供了lO种控件对象如:复选框、可编辑文本框等。

实验的整体GUI界面设计如图2-1。

图2-1 GUI界面3.实验运行过程与功能:文件运行界面如图4-1:图4-1 运行界面点击打开,打开一个图片,如图4-2图 4-2 打开一个图片编辑点击编辑,双三次缩小,输入参数,如图4-3图4-3然后,选择旋转,界面如图4-4图4-4图像旋转界面输入一个角度,然后点击确定,就会把图片进行旋转,如45度,运行结果如图4-5图4-5 图像旋转结果图点下面任意一个的原色,然后点ok,就会对背景原色进行变换,比如选择bule,得到的结果图如图4-6图4-6 原色转换结果图图像处理图4-7亮度处理图4-8 Hsv 模型转化 图4-9图像腐蚀图4-10高度滤波五.结束语由以上例子可以看出来,使用Matlab 来编写程序确实简洁、方便。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

论文(设计)题目:基于MATLAB的数字图像处理系统设计基于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 两个高端技术,可以根据用户的具体需求合理改动,可以分析黑白和彩色信号,可以完成图形显示功能。

南京东大互联技术有限公司研制的数字图像采集传输与处理实验软件可实现数字图像的采集、传输与处理。

可利用软件及图像采集与传输设备,采集图像并实现点对点的数字图像传输,可以观察理解多种图像处理技术的效果和差别,其中包括图像的灰度直方图及其变换、锐化、平滑、滤波、伪彩、轮廓提取与增强、图像格式转换及其文件结构。

1.2.2 国外研究现状目前大量的图像处理软件如PHOTOSHOP,PAINTSHOP等都是基于广告策划和图像修饰处理而设计的应用软件,针对图像处理技术基本知识的理解与掌握以及相关处理方法研究的软件甚少,不适合学习研究使用。

随着计算机辅助设计的日益提高和成熟,用于学习与研究的软件也越来越多。

如美国Southern Illinois University开发的CVIPtools计算机视觉与图像处理实验软件就是专门针对图像处理技术的实验软件,为初学者提供了一个消化理论知识的实验环境。

CVIPtools计算机视觉与图像处理实验软件,主要用于计算机数字图像分析和处理,主要宗旨是让图像处理的初学者、学生、老师和其它研究人员探索计算机数字图像处理的巨大力量。

最新Windows版本的CVIPtools提供使用者四种层次应用方式:算法代码层,公共对象模块(组件)界面层,cvipimage层和图形用户界面(GUI)。

最下面的阶层算法代码层主要是基于以前的版本CVIPtools ,包括所有的图像、数据处理程序和功能,是用标准C语言写的。

最上的阶层为CVIPtools GUI,可以让生手实验一些图像处理的工具,而不需具备程序设计的能力。

目前国外很多大学、研究院在数字图像处理的实验研究中都应用此软件。

1.3 数字图像处理研究的内容一般的数字图像处理的主要目的集中在图像的存储和传输,提高图像的质量,改善图像的视觉效果,图像理解以及模式识别等方面。

新世纪以来,信息技术取得了长足的发展和进步,小波理论、神经元理论、数字形态学以及模糊理论都与数字处理技术相结合,产生了新的图像处理方法和理论。

数字图像处理技术主要包括:1、图像增强目前图像增强技术根据其处理的空间不同,可分为空域法和频域法两大类,前者根据在图像所在的像素空间进行处理,后者是通过对图像进行傅里叶变换后在频域上间接进行的。

2、图像恢复图像恢复,也称为图像还原,其目的是尽可能地减少或者去除数字图像在获取过程中的降质,恢复被退化图像的本来面貌,从而改善图像质量,以提高视觉观察效果。

3、图像变换图像变换就是把图像从空域转换到频域,对原图像函数寻找一个合适变换的数学问题,众多图像变换方法不断出现,从傅里叶变换发展到余弦变换,再到现在非常流行的小波变换,图像变换分为可分离变换和统计变换两大类。

4、图像压缩数字图像需要很大的存储空间,因此无论传输或存储都需要对图像数据进行有效的压缩。

其目的是生成占用较少空间而获得与原图十分接近的图像5、图像分割图像分割的目的是把一个图像分解成它的构成成分,图像分割是一个十分困难的过程。

图像分割的方法主要有 2 类:一种是假设图像各成分的强度值是均匀的,并利用这个特性,这种方法的技术有直方图分割,另外一种方法是寻找图像成分之间的边界,利用的是图像的不均匀性,基于这种方法的的技术有梯度法分割。

6、边缘检测边缘检测技术用于检测图像中的线状局部结构。

大多数的检测技术应用某种形式的梯度算子。

边缘检测广泛应用于图像分割、图像分类、图像配准和模式识别,在大多数的实际应用中,边缘检测是当做一个局部滤波运算完成的。

第二章数字图像处理技术软件MATLAB 简介2.1 MATLAB 软件简介MATLAB 是Math works 公司于推出的一套高性能的数值计算和可视化软件,其全称是Matrix Laboratory,亦即矩阵实验室,经过多年的逐步发展与不断完善,现已成为国际公认的最优秀的科学计算与数学应用软件之一,是近几年来在国内外广泛流行的一种可视化科学计算软件。

它集数值分析、矩阵运算、信号处理和图形显示于一体,构成了一个方便的、界面友好的用户环境,而且还具有可扩展性特征,具有信号处理、控制系统、神经网络、图像处理、小波分析等30 多个具有专门功能的工具箱,工具箱内的函数源程序也是开放性的,多为M 文件,用户可以查看这些文件的代码并进行更改,MATLAB 支持用户对其函数进行二次开发,用户的应用程序也可以作为新的函数添加到相应的工具箱中。

MATLAB 中的数字图像是以矩阵形式表示的,这意味着MATLAB 强大的矩阵运算能力用于图像处理非常有利。

矩阵运算的语法对MATLAB中的数字图像同样适用。

2.2.MATLAB 的主要优缺点2.2.1 MATLAB 的主要优点1、界面友好,编程效率高MATLAB 是一种以矩阵为基本变量单元的可视化程序设计语言,它的语法结构简单,数据类型单一,命令表达方式接近于常用的数学公式。

不仅能免去大量的经常反复的基本数学运算,而且它的编译和执行速度都远远超过了采用 C 和Fortran 语言设计的程序。

2、功能强大,可扩展性强MATLAB 语言不但提供了科学计算、数据分析与可视化、系统仿真等强大的功能,而且具有可扩展性特征,具有自动控制、信号处理、图像处理、模糊逻辑、神经网络、小波分析等30 多个具有专门功能的MATLAB 工具箱。

工具箱中的函数可以互相调用,也可以由用户自己更改3、易学易用性、高效性MATLAB 不需要用户有高深的数学知识和程序设计能力,不需要用户深刻了解算法及编程技巧。

MATLAB 语句功能十分强大,一条语句可完成十分复杂的任务,大大加快了工程技术人员从事软件开发的效率。

2. 2.2MATLAB 的缺点1、MATLAB 是一种解释性语言,对于实时性要求较高的领域,如自动控制、信号处理等,其实时效率是较差的。

2、MATLAB 程序不能脱离其环境运行,因此它不能被用于开发商用软件。

3、程序可以被直接看到程序的源代码,因而不利于算法和数据的保密。

2.3MATLAB 图像处理工具箱简介MATLAB 的图像处理工具箱功能十分强大,支持的图像文件格式丰富,如*.BMP、*.JPEG、*.GIF、*.TIFF、*.PCX、*.HDF、*.XWD、*.PNG 等。

MATLAB 图像处理工具箱支持四种图像类型,分别为真彩色图像、索引色图像、灰度图像、二值图像,由于有的函数对图像类型有限制,这四种类型可以用工具箱的类型转换函数相互转换。

MATLAB 提供了15 类图像处理函数,涵盖了包括近期研究成果在内的几乎所有的图像处理方法。

这些函数按其功能可分为:图像显示;图像文件I/O;几何操作;像素和统计处理;图像分析;图像增强;线性滤波;线性二元滤波设计;图像变换;邻域和块处理;二进制图像操作;区域处理;颜色映像处理;颜色空间变换;图像类型和类型转换。

利用这些图像处理工具箱,并结合其强大的数据处理能力,我们可把精力集中在算法研究上,大大提高了工作效率。

而且,在测试这些算法时既可方便地得到统计数据,同时又可得到直观图示。

2.4MATLAB 支持的图像类型及其转换分析1、索引图像索引图像包括一个数据矩阵A,一个颜色映射矩阵B。

其中 B 是一个包含3 列和若干行的数据阵列。

B 矩阵的每一行分别表示红色、绿色和蓝色的颜色值。

在MATLAB 中,索引图像是从像素值到颜色映射表值的直接映射。

像素颜色由数据矩阵A 作为索引指向矩阵 B 进行索引。

2、灰度图像MATLAB 中,一幅灰度图像是一个数据矩阵I,其中I 的数据均代表了在一定范围内的颜色灰度值。

MATLAB 把灰度图像存储为一个数据矩阵,该数据矩阵中的元素分别代表了图像中的像素。

矩阵中的元素可以是双精度的浮点数类型、8 位或16 位无符号的整数类型。

大多数情况下,灰度图像很少和颜色映射表一起保存。

但是在显示灰度图像时,MATLAB 仍然在后台使用系统预定义的默认的灰度颜色映射表。

3、二值图像与灰度图像相同,二值图像只需要一个数据矩阵,每个像素只取两个灰度值。

相关文档
最新文档