《数字图像处理》综合设计(大全)

时间:2019-05-12 01:56:51下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《《数字图像处理》综合设计(大全)》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《《数字图像处理》综合设计(大全)》。

第一篇:《数字图像处理》综合设计(大全)

《数字图像处理》综合设计

学习委员以班级为单位刻录成光盘,每个人建立一个目录,目录名为(学号+姓名)如:0804631001赵书红

个人目录中要上交的文件:程序源文件+设计报告 只交电子版,不需打印。以上工作务必于14周前完成。

1,设计目的

提高分析问题,解决问题的能力,进一步巩固数字图像处理系统中的基本原理与方法.熟悉掌握一门计算机语言,可以进行数字图像的应用处理的开发设计.2,设计选题

2.1 【选题一】简单图像处理系统

整个系统要完成的基本功能大致如下: 1能对图像文件(bmp, jpg, tiff, gif等)进行打开,保存,另存,退出等功能操作;2数字图像的统计信息功能:包括直方图的统计及绘制等;3数字图像的增强处理功能:(1)空域中的运算,各种空间域平滑算法(如局部平滑滤波法,中值滤波等),锐化算法(如梯度锐化法,高通滤波等)4,图像分割:(1)点,线(hough变换检测直线),及边缘检测(梯度算子,拉普拉斯算子等);(2)区域分割包括阈值分割,区域生长,分裂合并等;5,数字图像的变换:普通傅立叶变换(ft)与逆变换(ift),快速傅立叶变换(fft)与逆变换(ifft),离散余弦变换(DCT),小波变换等.6,二值图像处理:膨胀,腐蚀,开运算与比运算.在实现整个系统的时候,必须有1,2,3中的这些基本内容,可以根据个人兴趣增加其他的内容.2.2【课程设计选题二】汽车车牌中的数字识别 整个系统要完成的基本功能大致如下: 1,能对图像文件(bmp, jpg, tiff, gif等)进行打开,保存,另存,打印,退出等功能操作;2,图像预处理功能:(1)直方图的统计及绘制,根据此找到图像的阈值点;(2)可将图像的各种几何矫正变换;(3)彩色图像的灰度化变换等,一般灰度图像的二值化处理等;(4)数字图像的增强处理功能:空域中的点运算,直方图的均衡化,各种空间域平滑算法(如局部平滑滤波法,中值滤波等),锐化算法(如梯度锐化法,高通滤波等);色彩增强:伪彩色增强,真彩色增强等;3, 车牌的定位 4,字符识别(1)模板匹配;(2)神经网络;此系统主要是对含有汽车车牌的图像进行处理,并对车牌中的数字字符进行识别.3, 课程设计方案制定

1,程序运行环境是Windows平台.2,开发工具选用VC++等都可以.3,以组件化的思想构建整个软件系统.具体的功能模块根据选定的不同题目做合理的划分.4,课程设计的一般步骤

选题与搜集资料:选择课题,进行系统调查,搜集资料.分析与设计:根据搜集的资料,进行功能分析,并对系统功能与模块划分等设计.程序设计:运用掌握的语言,编写程序,实现所设计的功能.调试与测试:自行调试程序,同学之间交叉测试程序,并记录测试情况.验收与评分:指导教师对每个成员开发的程序进行综合验收,结合设计报告,根据课程设计成绩的评定方法,评出成绩.5,要求

5.1总体要求

1,要充分认识课程设计对培养自己的重要性,认真做好设计前的各项准备工作.尤其是对编程软件的使用有基本的认识.2,独立按时完成规定的工作任务,不得弄虚作假,不准抄袭他人内容,否则成绩以不及格计.5.2实施要求

1,理解各种图像处理方法确切意义.2,独立进行方案的制定,系统结构设计要合理.3,在写课设报告时,必须要将主要函数的功能和参数做详细的说明.4,通过多幅不同形式的图像来检测该系统的稳定性和正确性.5.3 课程设计报告的内容及要求 学生应在规定的时间内完成课程设计报告一份(字数不限),报告的内容和要求如下

5.3.1 报告的格式内容如下: 1.目的与要求

这部分主要说明本课程设计的目的,任务和要求;2.设计的内容

介绍系统中所设计的主要功能和原理方法;3.总体方案设计

根据课程设计的具体情况,描述系统的具体构架,包括:功能模块的划分,系统运行的环境,选用的工具及主要实现功能的原理.4.各个功能模块的主要实现程序

主要的功能实现和函数要进行详细的说明,包括其用法,使用范围,及参数等.5.测试和调试

按课程设计要求,选用多幅图像对程序进行测试,并提供系统的主要功能实现的效果图.并在调试中发现的问题做说明.6.课程设计总结与体会

主要说明设计中学到的东西和取得的经验总结,心得体会.7.参考文献

写出具体的主要参考文献,标明其作者,出处,年代,若是期刊文章,还需要给出期刊名.网络的文章要给出网址.5.3.2 报告要求

1,必须按照以上格式书写报告.2,必须对课程设计总体方案进行说明.3,说明各个功能模块的具体实现,对用到的主要函数及参数要做具体的说明,.4,不要在报告中粘贴程序代码

6,课程设计的质量标准与成绩评定

本课程的考核方式为:对学生单独进行验收和答辩,学生必须演示程序,并回答教师提出的问题.根据验收答辩的情况和课程设计报告的质量综合给出成绩.课程设计成绩考核采用:优,良,中,及格,不及格五级评分制,评分标准如: 优秀:格式完整;课设总体方案正确,详细,系统中完成了所要求的所有功能;有实现功能的必要流程图.设计说明书层次清楚,条理分明,理论分析正确,书写工整.回答问题快速准确.对善于独立思考设计中有所创新的学生优先考虑.良好:格式完整;设计方案合理,制作规范,系统基本满足要求;有实现功能的必要流程图.设计说明书层次比较清楚;回答问题准确;书写工整.中:格式正确,设计方案基本正确,完成功能基本符合要求,设计说明书仅存在少量的问题(如:方案分析有少量错误,条理不十分清晰,流程图,书写不大规范等).能够正确回答问题.及格:设计方案基本正确,实现了主要的功能,有小部分功能尚未实现,设计说明书存在一些问题.回答问题基本正确.不及格:极不认真,或者根本不交课程设计程序和报告的.另外,对于请人代做,完全照抄他人课题.请人代写抄袭他人说明书,严重违反纪律者以不及格论处.

第二篇:《数字图像处理》

实验五 图像的几何变换

一.实验目的及要求

掌握图像几何变换的基本原理,熟练掌握数字图像的缩放、旋转、平移、镜像和转置的基本原理及其MATLAB编程实现方法。

二、实验内容

(一)研究以下程序,分析程序功能;输入执行各命令行,认真观察命令执行的结果。熟悉程序中所使用函数的调用方法,改变有关参数,观察试验结果。

1.图像缩放 clear all, close all I = imread('cameraman.tif');Scale = 1.35;

% 将图像放大1.35倍

J1 = imresize(I, Scale, 'nearest');

% using the nearest neighbor interpolation J2 = imresize(I, Scale, 'bilinear');

% using the bilinear interpolation imshow(I), title('Original Image');figure, imshow(J1), title('Resized Image--using the nearest neighbor interpolation ');figure, imshow(J2), title('Resized Image--using the bilinear interpolation ');help imresize

% 查看imresize使用帮助

1.95倍

I = imread('cameraman.tif');Scale = 1.96;

% 将图像放大1.96倍

J1 = imresize(I, Scale, 'nearest');

% using the nearest neighbor interpolation J2 = imresize(I, Scale, 'bilinear');

% using the bilinear interpolation imshow(I), title('Original Image');figure, imshow(J1), title('Resized Image--using the nearest neighbor interpolation ');figure, imshow(J2), title('Resized Image--using the bilinear interpolation ');

说明:

注意观察不同插值方法的图像表现; 改变图像缩放因子Scale,重做上述实验。2.图像旋转

clear all, close all I = imread('cameraman.tif');Theta = 45;

% 将图像逆时针旋转45。

J1 = imrotate(I, Theta, 'nearest');

% using the nearest neighbor interpolation Theta =-45;

% 将图像顺时针旋转45。

J2 = imrotate(I, Theta, 'bilinear', 'crop');% using bilinear interpolation and crops the output image imshow(I), title('Original Image');figure, imshow(J1), title('Rotated Image--using the nearest neighbor interpolation ');figure, imshow(J2), title(' Rotated Image--using the bilinear interpolation ');% 查看imrotate使用帮助 help imrotate %-------

图像旋转30顺时针逆时针

clear all, close all I = imread('cameraman.tif');Theta = 30;

% 将图像逆时针旋转30。

J1 = imrotate(I, Theta, 'nearest');

% using the nearest neighbor interpolation Theta =-30;

% 将图像顺时针旋转30。

J2 = imrotate(I, Theta, 'bilinear', 'crop');% using bilinear interpolation and crops the output image imshow(I), title('Original Image');figure, imshow(J1), title('Rotated Image--using the nearest neighbor interpolation ');figure, imshow(J2), title(' Rotated Image--using the bilinear interpolation ');7 说明:

注意观察不同插值方法和输出图像后处理方法的图像表现; 改变旋转角度大小和方向,重做上述实验。

3.图像水平镜象

clear all, close all I = imread('cameraman.tif');I1 = flipdim(I,2);

I2 = flipdim(I,1);figure(1), subplot(1,2,1), imshow(I);subplot(1,2,2), imshow(I1);figure(2), subplot(2,1,1), imshow(I);subplot(2,1,2), imshow(I2);%----

(二)用MATLAB编程实现以下图像几何变换(参考自编讲义相关章节)

1.图像扭曲变换 2.球面变换

三、实验设备

1.PIII以上微机; 2.MATLAB6.5;

四、预习与思考

1.预习实验内容,阅读教材熟悉实验原理;

2.查阅资料,熟悉实验中涉及的有关MATLAB函数;

3.利用课余时间,采用MATLAB底层函数编程实现实验内容

(二)中的图像平移、图像转置等几何变换。

五、实验报告要求

1.简述试验的目的和试验原理;

2.叙述各段程序功能,改变有关函数的参数,分析比较实验结果; 3.打印出所编写的实验程序。4.写出本实验的心得体会及意见。

实验六

数字图像处理应用

一.实验目的及要求

1.利用MATLAB提供的图像处理函数实现图像中物体属性的测量; 2.训练综合运用MATLAB图像处理函数的能力; 3.了解数字图像处理基本应用。

二、实验内容

以大米粒特性测量为例,综合应用课程中图像分割、形态学滤波、图像增强、图像特征提取等图像处理方法,实现大米粒特性自动测量。实验过程简述:

1. 读取和显示图像 2. 估计图像背景 3. 获取背景均匀的图像 4. 图像增强 5. 图像二值化分割 6. 区域标记及为彩色处理

7. 测量图像中的区域特性(面积、质心等)

8.统计大米粒的特性分布规律。

(一)研究以下程序,分析程序功能;输入执行各命令行,认真观察命令执行的结 果。熟悉程序中所使用函数的调用方法,改变有关参数,观察试验结果。

% Read and Display an Image clear, close all,close all;I = imread('rice.png');

figure, imshow(I)

% Use Morphological Opening to Estimate the Background

background = imopen(I,strel('disk',15));

figure, imshow(background);

%Display the Background Approximation as a Surface

figure, surf(double(background(1:8:end,1:8:end))),zlim([0 255]);set(gca,'ydir','reverse');% Subtract the Background Image from the Original Image I2 = imsubtract(I,background);figure, imshow(I2)% Adjust the Image Contrast I3 = imadjust(I2, stretchlim(I2), [0 1]);figure, imshow(I3);% Apply Thresholding to the Image level = graythresh(I3);bw = im2bw(I3,level);figure, imshow(bw)% Determine the Number of Objects in the Image [labeled,numObjects] = bwlabel(bw,4);

% Label components.numObjects % Examine the Label Matrix RGB_label = label2rgb(labeled, @spring, 'c', 'shuffle');figure, imshow(RGB_label);% Measure Object Properties in the Image graindata = regionprops(labeled,'basic')allgrains = [graindata.Area];% Compute Statistical Properties of Objects in the Image max(allgrains);biggrain = find(allgrains==695)mean(allgrains);figure, hist(allgrains,20);12

(详见MATLAB IPT的 帮助文档demo中的Correcting Nonuniform Illumination)

(二)查看MATLAB IPT 帮助文档,研究其它应用演示

三、实验设备 1.PIII以上微机; 2.MATLAB6.5;

四、预习与思考

1.预习实验内容,阅读教材熟悉实验原理; 2.查阅资料,熟悉实验中涉及的有关函数。

3.利用课余时间,采用MATLAB函数编程实现实验内容

(二)。

五、实验报告要求

1.简述试验的目的和试验原理;

2.叙述各段程序功能,改变有关函数的参数,分析比较实验结果; 3.打印出所编写的实验程序。4.写出本实验的心得体会及意见。

第三篇:数字图像处理

中南大学

数字图像处理实验 实验名称:空间滤波和频域滤波

班级:电子信息0802班

姓名:李哲 学号:0909080609 实验日期:2010年12月22日

目录

一,实验目的„„„„„„„„„„„„„„„„„„„„„„„3 二,给图像添加噪声„„„„„„„„„„„„„„„„„„„„4 三,对被噪声污染的图像进行中值滤波和均值滤波„„„„„„„5 四,对图像进行空间域的锐化„„„„„„„„„„„„„„„„6 五,MATLAB以外函数空间滤波和图像锐化„„„„„„„„„„7 六,自带函数傅立叶变换和反变换„„„„„„„„„„„„„„8 七,低通滤波器程序„„„„„„„„„„„„„„„„„„„„9 八,心得体会 „„„„„„„„„„„„„„„„„„„„„„10 九,参考文献 „„„„„„„„„„„„„„„„„„„„„„10

一、实验目的 1,空间滤波:

图像平滑主要目的是减少噪声。噪声有很多种类,不同的噪声有不同的抑制措施。本实验要求用平滑线性滤波和中值滤波2种最典型、最常用的处理算法进行程序设计,学习如何对已被噪声污染的图像进行“净化”。通过平滑处理,对结果图像加以比较,得出自己的实验结论。学习如何用锐化处理技术来加强图像的目标边界和图像细节,对图像进行梯度算子、拉普拉斯算子,使图像的某些特征(如边缘、轮廓等)得以进一步的增强及突出。本实验锐化处理主要在空间域中进行 2,频域滤波:

掌握傅里叶变换的基本性质; 掌握傅里叶正变换和反变换; 通过实验了解二维频谱的分布特点; 掌握怎样利用傅立叶变换进行频域滤波

利用MATLAB程序数字图像的傅立叶变换并且进行频域滤波

二,给图像添加椒盐噪声或者高斯噪声: 原理:利用MATLAB自带函数添加噪声 程序代码:A=imread('onion.png');I=rgb2gray(A);imshow(I);J = imnoise(I,'salt & pepper',0.05);figure,imshow(J),title('椒盐噪声');%添加椒盐噪声 K = imnoise(I,'gaussian',0,0.03);

figure,imshow(K),title('高斯噪声');%添加高斯噪声

三,对被噪声污染的图像进行中值滤波和均值滤波: 原理:自带函数进行中值滤波和均值滤波 源程序:A=imread('onion.png');I=rgb2gray(A);J = imnoise(I,'salt & pepper',0.05);k2=medfilt2(J,[5 5]);k3=medfilt2(J,[7 7]);imshow(J),title('原图');figure,imshow(k2),title('中值滤波5*5模板');figure,imshow(k3),title('中值滤波7*7模板');

四,对图像进行空间域的锐化: 原理:自带函数进行空间锐化。源程序:I=imread('coins.png');subplot(121),imshow(I),title('原图像');H=fspecial('sobel');I2=filter2(H ,I);subplot(122),imshow(I2),title('sobel算子锐化图像');

五,MATLAB以外函数空间滤波和图像锐化:

源程序:I = imread('eight.tif');J = imnoise(I,'salt & pepper',0.02);K = medfilt2(J);imshow(J);title('噪声干扰图像')figure, imshow(K);title('medfilt2滤波图像')X=J;a=2;b=2;k=floor(a*b/2)+1;[M,N]=size(X);uint8 Y=zeros(M,N);funBox=zeros(a,b);temp=zeros(a*b);

for i=1:M-a

for j=1:N-b

funBox=X(i:i+a,j:j+b);

temp=funBox(:);

tempSort=sort(temp);

Y(i,j)=tempSort(k);

end;end;figure, imshow(Y);title('滤波图像')

六,利用Matlab的图像处理工具箱中提供的函数实现图像的傅立叶变换和反变换: 源程序:

A=imread('onion.png');f=rgb2gray(A);subplot(131),imshow(f),title('原图');F=fft2(f);% 快速傅立叶变换

subplot(132),imshow(F),title('傅里叶变换')Fabs=abs(F);% 求幅频绝对值 Fc=fftshift(Fabs);% 中心移位 SFc=log(1+Fc);% 对数变换

iFc1=ifftshift(Fc);% 中心移位的逆变换,绝对值 iF2=ifft2(iFc1);% 快速傅立叶变换的逆变换

subplot(133),imshow(iF2),title('快速傅立叶变换的逆变换')

七,低通滤波器程序:

I=imread('testpat1.png');subplot(221),imshow(I);title('原始图像')J1=imnoise(I,'gaussian',0.02);% 叠加高斯白噪声

subplot(222),imshow(J1);title('添加高斯白噪声的图像')f=double(J1);

% 数据类型转换 g=fft2(f);

% 傅立叶变换 g=fftshift(g);

[M,N]=size(g);nn=2;

% 二阶巴特沃斯(Butterworth)低通滤波器 d0=50;

% 设置截止频率 m=fix(M/2);n=fix(N/2);for i=1:M for j=1:N

d=sqrt((i-m)^2+(j-n)^2);

h=1/(1+0.414*(d/d0)^(2*nn));% 计算低通滤波器传递函数

result(i,j)=h*g(i,j);end end result=ifftshift(result);J2=ifft2(result);J3=uint8(real(J2));subplot(223),imshow(J3);title('低通滤波后图像')

心得体会

1,进一步熟悉了Matlab软件、编程以及图像处理工具箱 2,学会利用自带函数对图像做简单的处理,例如:均值化等。3,熟练了一些基本函数的运用,例如fspecial,imfilter等。4,加深了对MATLAB编程的理解。

5,对于试验中的出现的一些问题,懂得怎样去处理。6,通过实际操作,增强了自己的动手能力,把理论用于实践。

参考文献:数字图像处理第二版

MATLAB教程

第四篇:基于MATLAB数字图像处理平台设计

基于MATLAB 数字图像处理平台设计

摘要

数字图像处理技术在各个行业得到广泛的应用,其交互式的图形界面是操作者方便使用这些技术的途径。本文主要介绍了基于MATLAB的图形用户界面(GUI)来设计一个简单实用的图像处理软件平台,其中具备图像处理的常用功能,以满足用户的使用。文章详细阐述了一下图像处理软件平台的设计过程。本文的GUI设计所制作的图像处理软件平台可以实现的功能有五个模块:图像变换、图像增强、图像分割、图像变形以及其它常用处理。其中也讲述了GUI的基本常用操作及文件的打开、保存及退出。文章基本介绍了以上的内容,关于软件还有许多未能实现的功能有待于日后的逐步开发和学习。关键词:GUI;图像变换;图像增强;图像分割;图像变形;图像处理

ABSTRACT Digital image processing technology has been widely used in various industries, their interactive graphical interface is the way of the operator ease of use of these technologies.This article mainly introduced the graphical user interface(GUI)based on MATLAB to design a simple and practical platform for the image processing software, Which have commonly used image processing function, in order to meet the user's use.The article expounds the design process of the image processing software platform.This paper made the GUI design of image processing software platform can realize the function of five modules: image transformation, image enhancement, image segmentation, image distortion and other commonly used processing.The basic common operations of which also tells the story of GUI and file open, save, and exit.The content of the article introduces the above basic, about software and many fail to realize the function of the subject to the gradual development and learning in the future.Key words: GUI;Image transformation;Image enhancement;Image segmentation;Image deformation;The image processing

目录 绪论................................................................................................................................................................1 1.1设计要求及目的....................................................................................................................................1 1.2 课题分析...............................................................................................................................................1 1.3 总体设计...............................................................................................................................................2 2 具体设计.......................................................................................................................................................2 2.1 菜单设计...............................................................................................................................................2 2.2 图像的打开、保存及退出...................................................................................................................3 2.2.1 图像打开....................................................................................................................................3 2.2.2 图像保存....................................................................................................................................4 2.2.3程序退出.....................................................................................................................................4 2.3 图像变换...............................................................................................................................................4 2.3.1 傅里叶变换................................................................................................................................4 2.3.3 离散余弦变换............................................................................................................................5 2.4 图像增强...............................................................................................................................................5 2.4.1 空间域增强................................................................................................................................5 2.4.2 频率域增强................................................................................................................................6 2.5 图像分割...............................................................................................................................................7 2.5.1 阈值分割....................................................................................................................................8 2.5.2 梯度分割....................................................................................................................................8 2.6 图像变形...............................................................................................................................................9 2.6.1 翻转............................................................................................................................................9 2.6.2 旋转..........................................................................................................................................10 2.7 其它常用处理.....................................................................................................................................10 2.7.1 亮度..........................................................................................................................................10 2.7.2 对比度.......................................................................................................................................11 2.7.3 截图...........................................................................................................................................11 2.7.4 底片效果..................................................................................................................................12 2.7.5 二值处理..................................................................................................................................12 3 结果分析.....................................................................................................................................................13 4 心得体会.....................................................................................................................................................13 附录...................................................................................................................................................................14 基于MATLAB数字图像处理平台设计

MATLAB是近几年来国内外使用最为广泛的优秀科技软件之一。其语法结构简单,具有极强的数值计算、数据分析、图形绘制及图像处理等功能。具有高质量的图形可视化效果和强大的界面设计能力。因而在数字图像处理中有着其他语言所无法比拟的优势。图形用户界面(GUI)是提供人机交互的工具和方法。利用GUI制作图像处理软件能够实现图像处理的各个内容,主要有:图像空间变换:邻域和块操作;二值图像操作;线性滤波和滤波器设计;变换域处理;图像分析和增强;图像恢复;图像压缩;形态学运算等。绪论

1.1设计要求及目的

设计要求:以MATLAB作为工具,开发一个图像处理软件。主要进行图像处理的常用算法。由以下模块组成:图像变换;图像增强;图像分割。按各个模块进行功能扩充,也可加入其它常用的图像处理功能。

设计目的:MATLAB 软件为数字图像处理提供了功能丰富的工具,应用MATLAB友好的界面和实用高效的指令及模块,可以使人较快地认识、理解图像处理的相关概念,逐步掌握图像处理的基本方法。此课题的设计目的是综合运用MATLAB工具箱实现图像处理的GUI程序设计,学会和掌握GUI的图像处理平台设计。

1.2 课题分析

此课题利用MATLAB的GUI程序设计一个简单实用的图像处理程序。该程序具备

数字图像处理平台设计功能图 像 变 换图 像 增 强图 像 分 割图 像 变 形其它常用处理空间域增强频率域增强阈 值分 割梯 度分 割旋 转翻 转傅里叶变换离散余弦变换灰度变换直方图均衡化低通滤波器高通滤波器roberts算子canny算子sobel算子上下翻转左右翻转亮度对比度底截图片效果二值图1.1 整体功能框图 图像处理的常用功能,以满足用户的使用。程序实现的图像处理功能分为五个模块:图像变换、图像增强、图像分割、图像变形以及其它常用处理。如图1.1所示。

除以上的数字图像处理的功能外,该程序还要实现图像的读取显示、图像的保存及退出等基本功能。从而实现完整的数字图像平台设计,具有更好的交互性。

1.3 总体设计

软件的总体设计界面主要分为两个部分:显示区域与操作区域。具体界面布局如图1.2所示。

图1.2 界面布局

显示区域:定义两个图形区域,左面为待处理图片来显示载入的原图像,右面为通过处理后的图像。

操作区域:通过菜单栏的编辑实现对图像的各种处理,分为文件和编辑两大部分。通过文件中的打开操作显示出处理前的图像,在编辑中选择某个图像处理功能后,将在已处理图片下就会显示出处理后的图片。具体设计

2.1 菜单设计

通过Menu Editor创建菜单栏如图2.1所示。菜单的设计主要分为两大部分:文件和编辑。文件包含图像的打开、保存和退出;编辑包含图像处理功能的五个模块:图像变换、图像增强、图像分割、图像变形及其它常用处理,还有各个模块的分支。通过此菜单来控制显示或隐藏功能键。

以图2.1的傅里叶变换为例,当添加上某一菜单后,修改名称为傅里叶变换,句柄为FFT,从而会在M文件中自动生成傅里叶变换的功能函数function FFT_Callback(hObject, eventdata, handles),在此函数下编写能够实现傅里叶变换的程序便能实现对图像的傅里叶 变换。

图2.1 菜单栏

2.2 图像的打开、保存及退出

2.2.1 图像打开

图像的打开主要是通过以下程序来实现的:

“[filename,pathname]=uigetfile({'*.jpg';'*.bmp';'*.tif';'*.*'},'载入图像');” 选择相应路径打开图像;

“file=[pathname,filename];x=imread(file);”读取选中的图像; “imshow(x);”在显示区域上显示图像。

具体操作如图2.2所示,选择“文件”菜单中的“打开”后,出现“载入图像”,选中想要处图2.2 图像的打开

理的图片后点击“打开”,即可在显示区域中显示出处理前的图片。

2.2.2 图像保存

图像的保存主要是通过以下程序来实现的:

“[sfilename,sfilepath]=uiputfile({'*.jpg';'*.bmp';'*.tif';'*.*'},'保存图像文件','untitled.jpg');” 选择图像文件保存的路径与格式;

“sfilefullname=[sfilepath ,sfilename];imwrite(handles.img,sfilefullname);”实现对图像的保存。

具体操作如图2.3所示,选择“文件”菜单中的“保存”后,出现“保存图像文件”,修改文件名后点击“保存”,即可将处理后的图像保存到keshe的文件夹下。

图2.3 图像的保存

2.2.3程序退出

程序的退出是通过“clc;”,“close all;”,“close(gcf);”,“clear;”这些指令来清除指令窗,窗口,内存变量及函数。

具体操为选择“文件”菜单中的“退出”后,便关闭了执行界面的窗口并清除了指令窗的所有指令。

2.3 图像变换

2.3.1 傅里叶变换

傅里叶变换(FFT)实际上是将信号f(t)与一组不同频率的复正弦作内积,这一组复正弦是变换的基向量,傅里叶系数或傅里叶变换是f(t)在这一组基向量上的投影。在图像处理技术的发展过程中,FFT起着十分重要的作用。它是线性系统分析的一个有力工具,它能够定量地分析诸如数字图像之类的数字化系统。FFT主要分为连续傅里叶变换和离散傅里叶变换,在数字图像处理中经常用到的是二维离散傅里叶变换。

程序中主要是通过二维离散傅里叶变换函数fft2(),变换后四个角部分对应于低频成分,中央部分对应于高频成分。若想使低频成分出现在中央位置,则通过函数fftshift()将图像频谱中心从矩阵的原点移到矩阵中心。从而实现图像的二维傅里叶变换。具体程序见 附录。原图像及傅里叶变换后的图像如图2.4所示。

图2.4 傅里叶变换

2.3.3 离散余弦变换

离散余弦变换(DFT)在图像处理中占有重要的位置,它实际上是傅里叶变换的实数部分,但是它比傅里叶变换有更强的信息集中能力。对于大多数自然图像,DCT能将大多数的信息放到较少的系数上去,因此就更能提高编码的效率。

程序中主要是通过灰度变换函数rgb2gray()及二维离散余弦变换函数dct2()来实现对图像的二维离散余弦变换,具体程序见附录。其变换后的图像低频能量都集中在左上角区域,而向着右下角方向,频率越来越高。原图像及离散余弦变换后的图像如图2.5所示。

图2.5 离散余弦变换

2.4 图像增强

图像增强是图像处理中的一类基本技术,其主要的目的改善图像的视觉效果,提高图像的清晰度。图像增强能够扩展对比度,增强图像中对象的边缘,消除或抑制噪声或保留图像中感兴趣的某些特性而抑制另一些特性等。图像增强方法按其处理所进行的空间不同,可分为空间域法和频率域法。2.4.1 空间域增强

空间域法是在空间域内直接对像素灰度值进行运算处理,常用的空间域法有图像的直接灰度变换和直方图均衡化,下面分别介绍两种空域上的图像增强方法。(1)灰度变换

通过灰度变换可使图像动态范围加大,图像对比度扩展,图像清晰,特征明显,大大改善人眼的视觉效果。

程序中主要通过灰度处理函数rgb2gray()对图像进行灰度变换,将彩色图像转换成灰度图像。原图像及灰度图像如图2.6所示。

图2.6 灰度变换

(2)直方图均衡化

直方图均衡化是对原始图像中的像素灰度作某种映射变换,使变换后的图像灰度的概率密度是均匀分布的,即变换后图像是一幅灰度级均匀分布图像,这意味着图像灰度的动态范围得到了增加,从而可提高图像的对比度。

程序中主要通过灰度处理函数rgb2gray()先对图像进行灰度变换,然后通过直方图均衡化处理函数histeq()对灰度图像进行直方图均衡化处理。原图像及直方图均衡化后的图像如图2.7所示。

图2.7 直方图均衡化

2.4.2 频率域增强

频率域法就是在图像的某种变换域内,对图像的变换值进行运算,然后通过逆变换获得图像增强效果。这是一种间接处理方法,一般采用二维数字滤波方法来进行频率域的图像增强。(1)低通滤波

图像的边缘以及噪声干扰在图像的频域上对应于图像傅里叶变换中的高频部分,而图像的背景区则对应于低频部分,因此可以用频域低通滤波法去除图像的高频成分,以去掉噪声,使图像平滑。

程序中采用二阶巴特沃斯低通滤波器,先用函数fft2()对图像进行二维离散傅里叶变换,然后通过低通滤波器进行滤波后,再对滤波后的图像数据通过ifft2()进行傅里叶反变换,从而得到低通滤波后的图像。如图2.8所示。

图2.8 低通滤波器

(2)高通滤波

图像中的边缘或线条与图像频谱中的高频分量相对应,因此采用高通滤波器让高频分量顺利通过,可以使图像的边缘或线条变得更清楚,可实现图像的锐化。

程序中采用二阶巴特沃斯高通滤波器,与低通滤波过程相同,先进行傅里叶变换,然后通过高通滤波器,再进行傅里叶反变换,从而得到高通滤波后的图像,具体程序见附录。原图像及滤波后的图像如图2.9所示。

图2.9 高通滤波器

2.5 图像分割

图像分割是一种重要的图像分析技术。为了识别和分析图像中的目标,需要将它们从图像中分离提取出来,在此基础上才有可能进一步对目标进行测量和对图像进行利用。图像分割就是指把图像分成各具特性的区域并提取出感兴趣目标的技术和过程。2.5.1 阈值分割

灰度阈值法是把图像的灰度分成不同的等级,然后用设置灰度阈值的方法确定有意义的区域或欲分割物的边界,该方法中最简单的就是二值化的阈值分割。

程序中先通过函数graythresh()即用Otsu方法计算出全局图像阈值,再通过函数im2bw(,)基于一定阈值将图像转换成二值图像。原图像及阈值分割后的图像如图2.10所示。

图2.10 阈值分割

2.5.2 梯度分割

梯度分割即对图像进行边缘检测,图像边缘对图像识别和计算机分析十分有用。边缘能勾划出目标物体,使观察者一目了然。边缘蕴含了丰富的内在信息,是图像识别中抽取图像特征的重要属性。

(1)Roberts算子

程序中先通过函数rgb2gray()对图像进行灰度变换,再通过函数edge(,'roberts')即用Roberts算子识别灰度图像的轮廓,从而实现对图像的边缘检测。如图2.11所示。

图2.11 Roberts算子

(2)Canny算子

程序中先通过函数rgb2gray()对图像进行灰度变换,再通过函数edge(,'canny')即用Canny算子识别灰度图像的轮廓,如图2.12所示。(3)Sobel算子

程序中先通过函数rgb2gray()进行灰度变换,再通过函数edge(,'sobel')即用Sobel算 子识别灰度图像的轮廓,从而实现对图像的边缘检测。如图2.13所示。

图2.12 Canny算子

图2.13 Sobel算子

2.6 图像变形

2.6.1 翻转

上下翻转:程序中通过函数flipud()对图像数据矩阵进行上下翻转,由于彩色图像不能直接进行矩阵翻转,因此需要先将彩色图像通过灰度变换处理后再进行翻转,原图及翻转后的图像如图2.14所示。

图2.14 上下翻转 左右翻转:与上下翻转相同,先将图像进行灰度变换后,通过函数fliplr()将图像数据矩阵进行左右翻转,原图及翻转后的图像如图2.15所示。

图2.15 左右翻转

2.6.2 旋转

打开图片后,选择“编辑”菜单“图像变形”中的“旋转”后,执行界面会出现调整角度的输入对话框,在对话框中输入任意角度,则原图像将会旋转任意角度,输入正数逆时针旋

。转,输入负数顺时针旋转。以90为例,在对话框中输入90,则图像逆时针旋转90,如图2.16所示。

在程序中由prompt={'调整角度'};来显示输入对话框,函数inputdlg()创建对话框和输入框,输入角度后通过函数imrotate()进行相应的旋转。

图2.16 图像旋转

2.7 其它常用处理

2.7.1 亮度

当在“编辑”菜单中选择“亮度”后,会出现调整倍数的输入对话框,默认值为1,在对话框中输入数值后图像便会相应变换亮度。输入数值小于1时,图像变亮,输入数值大于1时,图像变暗。程序中通过函数imadjust()来实现,即将原图像的亮度值以输入数值描述的曲线关系映射到新的数值中,从而实现亮度的变化。以输入值0.5为例,变换后的图像如图2.17所示。

图2.17 亮度调整

2.7.2 对比度

对比度增强:选择菜单中“对比度增强”后,弹出输入参数的对话框,以输入参数2为例,对比度增强后的图像如图2.18所示。程序中通过乘法函数immultiply()将原图像数据与输入数值相乘,从而增强图像的对比度。

图2.18 对比度增强

对比度减弱:选择菜单中“对比度减弱”后,弹出输入参数的对话框,同样以输入参数2为例,对比度减弱后的图像如图2.19所示。程序中通过除法函数imdivide()将原图像数据与输入数值相除,从而减弱图像的对比度。

图2.19 对比度减弱

2.7.3 截图 当选择完菜单中的“截图”后,鼠标箭头会变成一个十字,能够选择想要截取的图像部分,选中后就会直接显示出截取后的图像,如图2.20所示。程序中通过函数imcrop()来实

图2.20 截图

现的,即返回图像的一个裁剪区域,允许用户以交互方式使用鼠标选定要剪切的区域。2.7.4 底片效果

程序中通过函数imcomplement()对图像数据矩阵进行取反运算,即可实现底片效果,原图像及底片效果的图像如图2.21所示。

图2.21 底片效果

2.7.5 二值处理

二值化即将彩色图像转换成只有0和1两个数值的图像,程序中通过二值转换函数im2bw()将彩色图像转换为二值图像。原图像及转换后的二值图像如图2.22所示。

图2.22 二值处理 3 结果分析

经过我们小组的不断调试,软件已经得到了完善,达到了课设的基本要求,基于MATLAB数字图像处理平台设计能实现的全部功能如下:(1)设计图形用户界面,实现了图像的打开、保存及退出

(2)实现了对图像的傅里叶变换及离散余弦变换,其中离散余弦变换只能对灰度图像处理。(3)实现了图像空间域增强包括灰度变换和直方图均衡化,还有图像频率域增强包括低通滤波器和高通滤波器。其中直方图均衡化,低通滤波和高通滤波均只支持对灰度图像处理。

(4)实现了图像分割:阈值分割和梯度分割,梯度分割有Roberts算子、Canny算子、Sobel算子。其中梯度分割需要对图像先进行灰度变换。(5)实现了图像的翻转和旋转。图像的翻转只支持灰度图像。

(6)实现了图像的亮度,对比度的调整,能够对图像截图、做出底片效果及二值化处理。

实验程序虽然基本实现了以上这些功能,但遗憾的是有些功能只支持对灰度的图像处理,还不能直接对彩色图像进行处理。心得体会

通过两周的MATLAB课程设计实践,使我对MATLAB的使用有了进一步的了解和熟悉。还记得当初我们小组抽到这个题目的时候,每个人看到这个题目都无所适从。虽然曾经学过关于数字图像处理的课程,但对于MATLAB的数字图像处理的实际运用并不是很熟悉,特别是对此次GUI设计更是没有丝毫接触过的。

虽然对课题感到很懵懂,但在指导老师的提示与指导后,我们开始找到了解决问题的路径。我们到图书馆借了几本相关的书,又从网上收集了大量的资料,为这次课设做了较为充分的准备,在参考了相关材料及程序后,我对自己要做的课设内容有了进一步的了解,并对MATLAB的使用有了更深的体会。

当然,在课设的进行过程中,我们还是遇到了不少问题。例如,起初由于我对句柄使用以及一些函数使用的不恰当,使得在对图像文件的保存上就遇到了问题,不过在我们小组的讨论研究下轻松的就解决了。随着课设的进行,对matlab的的熟悉度逐步加深。在基本功能已经完成的基础上,我们开始进行一些扩张功能的尝试,比如图像的旋转、翻转,图像亮度、对比度的调整,截图等功能,也实现了较为理想的结果。

虽然这课题最终的功能还不是很完善,但是我还是较为满意的。本次的课程设计,不但鞭策着我去巩固MATLAB的理论知识,还提高了我对MATLAB的实际操作运用,使得理论与实践相结合,为进一步学MATLAB打下了坚实的基础。附录

function varargout = keshe(varargin)gui_Singleton = 1;gui_State = struct('gui_Name',mfilename,...'gui_Singleton', gui_Singleton,...'gui_OpeningFcn', @keshe_OpeningFcn,...'gui_OutputFcn', @keshe_OutputFcn,...'gui_LayoutFcn', [] ,...'gui_Callback',[]);if nargin && ischar(varargin{1})

gui_State.gui_Callback = str2func(varargin{1});end if nargout

[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});else

gui_mainfcn(gui_State, varargin{:});end %----------function keshe_OpeningFcn(hObject, eventdata, handles, varargin)handles.output = hObject;guidata(hObject, handles);%--------function varargout = keshe_OutputFcn(hObject, eventdata, handles)varargout{1} = handles.output;%--------function open_Callback(hObject, eventdata, handles)% hObject

handle to open(see GCBO)% eventdata reservedto be defined in a future version of MATLAB % handles

structure with handles and user data(see GUIDATA)[sfilename ,sfilepath]=uiputfile({'*.jpg';'*.bmp';'*.tif';'*.*'},'保存图像文件','untitled.jpg');

%返回要保存的图像文件

if ~isequal([sfilename,sfilepath],[0,0])

%如果不是取消保存

sfilefullname=[sfilepath ,sfilename];

%将文件名和目录名组合成一个完整的路径

imwrite(handles.img,sfilefullname);

%保存图像

else

msgbox('取消保存?','保存图像文件');%弹出一个名为保存图像文件的对话框,内

容为“取消保存?”

end %--------function exit_Callback(hObject, eventdata, handles)% hObject

handle to exit(see GCBO)% eventdata reservedto be defined in a future version of MATLAB % handles

structure with handles and user data(see GUIDATA)axes(handles.axes2);i1=handles.img;

%获取图像

i2=im2double(i1);

%图像矩阵转换成双精度浮点类型 f1=fft2(i2);

%对图像进行二维离散傅里叶变换

fc1=fftshift(f1);

%将变换后的图象频谱中心从矩阵的原点移到矩阵的中心 i=log(1+abs(fc1));

%对变换后的图像矩阵数据求绝对值后取自然对数 imshow(i);

xlabel('傅里叶变换图像');handles.img=i;guidata(hObject,handles);

%把handles句柄更新

%--------function DCT_Callback(hObject, eventdata, handles)% hObject

handle to DCT(see GCBO)% eventdata reservedto be defined in a future version of MATLAB % handles

structure with handles and user data(see GUIDATA)global T

%定义全局变量

axes(handles.axes2);

%定义图形区域axes2 T=getimage;

%从坐标轴获取图像数据

x=rgb2gray(handles.img);%利用 rgb2gray函数对源图像进行灰度处理

imshow(x);

%显示图像

xlabel('灰度图像');

% x轴名为“灰度图像” handles.img=x;

%把图像发给handles.img guidata(hObject,handles);

%把handles句柄更新

%--------function zhifangtu_Callback(hObject, eventdata, handles)% hObject

handle to zhifangtu(see GCBO)% eventdata reservedto be defined in a future version of MATLAB % handles

structure with handles and user data(see GUIDATA)axes(handles.axes2);y1=handles.img;

%获取图像 x=rgb2gray(handles.img);

%灰度变换

f=double(x);

%数据类型转换为双精度数值 g=fft2(f);

%二维离散傅里叶变换

g=fftshift(g);

%将变换后的图象频谱中心从矩阵的原点移到矩阵的中心 [M,N]=size(g);

%返回矩阵g的大小,即M为行数,N为列数 nn=2;

%二阶巴特沃斯低通滤波器 d0=50;

%截止频率50Hz m=fix(M/2);n=fix(N/2);

%取矩阵g的行数和列数一半的整数 for i=1:M

for j=1:N

% 循环

d=sqrt((i-m)^2+(j-n)^2);

h=1/(1+0.414*(d/d0)^(2*nn));

%计算低通滤波器传递函数

result(i,j)=h*g(i,j);

%结果返回到result

end end result=ifftshift(result);

%将图象频谱中心从矩阵的中心移到矩阵的原点 y2=ifft2(result);

%二维离散傅里叶反变换

y3=uint8(real(y2));

%把矩阵y2实部转换成8位无符号数据 imshow(y3);

%显示低通滤波后的图像 xlabel('低通滤波图像');handles.img=y3;guidata(hObject,handles);

%把handles句柄更新

%--------function high_Callback(hObject, eventdata, handles)% hObject

handle to high(see GCBO)% eventdata reservedto be defined in a future version of MATLAB % handles

structure with handles and user data(see GUIDATA)axes(handles.axes2);T=getimage;

%从坐标轴获取图像数据

level=graythresh(T);

%用Otsu方法计算全局图像阈值

BW=im2bw(T,level);

%基于一定阈值把图像转换为二值图像 imshow(BW);

%显示阈值分割后的图像 xlabel('阈值分割图像');handles.img=BW;guidata(hObject,handles);

%把handles句柄更新

%--------function tidu_Callback(hObject, eventdata, handles)function kongyu_Callback(hObject, eventdata, handles)function pinyu_Callback(hObject, eventdata, handles)function bianxing_Callback(hObject, eventdata, handles)function qita_Callback(hObject, eventdata, handles)function duibidu_Callback(hObject, eventdata, handles)%--------function roberts_Callback(hObject, eventdata, handles)% hObject

handle to roberts(see GCBO)% eventdata reservedto be defined in a future version of MATLAB % handles

structure with handles and user data(see GUIDATA)axes(handles.axes2);T=getimage;

%从坐标轴获取图像数据 C1=rgb2gray(T);

%灰度变换

C2=edge(C1,'canny');

%用canny算子识别灰度图像的轮廓 imshow(C2);xlabel('Canny算子图像');handles.img=C2;guidata(hObject,handles);

%把handles句柄更新

%--------function sobel_Callback(hObject, eventdata, handles)% hObject

handle to sobel(see GCBO)% eventdata reservedto be defined in a future version of MATLAB % handles

structure with handles and user data(see GUIDATA)axes(handles.axes2);T=getimage;

%从坐标轴获取图像数据

prompt={'调整角度'};

%用于显示可提示用户进行输入角度的对话框 defans={'0'};

%对话框内显示默认数值为0 p=inputdlg(prompt,'input',1,defans);

%创建并打开标题为input的输入对话框,包含

“调整角度”,输入框为1行,对话框中默认显示数值为0 p1=str2num(p{1});

%将字符串转换为数值

f=imrotate(handles.img,p1,'bilinear','crop');%将图像handles.img饶图像的中心点旋转p1

度,p1为正数逆时针旋转,为负数顺时针旋转,bilinear为使用双线性插值法,crop为旋19

转后输出图像尺寸与原图像尺寸一样

imshow(f);

%显示旋转后图像 xlabel('旋转后的图像');handles.img=f;guidata(hObject,handles);

%把handles句柄更新

%--------function shangxia_Callback(hObject, eventdata, handles)% hObject

handle to shangxia(see GCBO)% eventdata reservedto be defined in a future version of MATLAB % handles

structure with handles and user data(see GUIDATA)

axes(handles.axes2);

T= getimage;

%从坐标轴获取图像数据

f=fliplr(handles.img);

%将图像矩阵左右翻转

imshow(f);

%显示翻转后的图像

xlabel('左右翻转后的图像');

handles.img=f;

guidata(hObject,handles);

%把handles句柄更新

%--------function liangdu_Callback(hObject, eventdata, handles)% hObject

handle to liangdu(see GCBO)% eventdata reservedto be defined in a future version of MATLAB % handles

structure with handles and user data(see GUIDATA)axes(handles.axes2);T=getimage;

%从坐标轴获取图像数据

prompt={'输入参数'};

%用于显示可提示用户进行输入参数的对话框

defans={'1'};

%对话框内显示默认数值为1 p=inputdlg(prompt,'input',1,defans);%创建并打开标题为input的输入对话框,包含“输入

参数”,输入框为1行,对话框中默认显示数值为1 p1=str2num(p{1});

%将字符串转换为数值

f=immultiply(handles.img,p1);

%将原图像数据与输入数值相乘,从而增强对比度

imshow(f);

%显示对比度增强后的图像 xlabel('对比度增强的图像');handles.img=f;guidata(hObject,handles);

%把handles句柄更新

%--------function jianruo_Callback(hObject, eventdata, handles)% hObject

handle to jianruo(see GCBO)% eventdata reservedto be defined in a future version of MATLAB % handles

structure with handles and user data(see GUIDATA)axes(handles.axes2);T=getimage;

%从坐标轴获取图像数据 x=imcrop(handles.img);

% 返回图像的一个裁剪区域,允许用户以交互方式使用

鼠标选定要剪切的区域

imshow(x);

%显示裁剪后的图像 xlabel('裁剪后的图像');handles.img=x;guidata(hObject,handles);

%把handles句柄更新

%--------function dipian_Callback(hObject, eventdata, handles)% hObject

handle to dipian(see GCBO)% eventdata reservedto be defined in a future version of MATLAB % handles

structure with handles and user data(see GUIDATA)axes(handles.axes2);T=getimage;

%从坐标轴获取图像数据 BW=im2bw(handles.img);

%将图像转换为二值图像 imshow(BW);

%显示二值图像 xlabel('二值图像');handles.img=BW;guidata(hObject,handles);

%把handles句柄更新

第五篇:数字图像处理读书笔记

数字图像处理读书笔记

本学期的数字图像处理课程已经进行了3周了,通过这3周的学习让我对数字图像处理有了一定的认知和理解。数字图像处理又称为计算机图像处理,它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。这门课程的前三章主要讲解了数字图像的目的、特点、应用和发展,图像的数字化显示与图像变换。

数字图像处理最早出现于20世纪50年代,当时的电子计算机已经发展到一定水平,人们开始利用计算机来处理图形和图像信息。数字图像处理作为一门学科大约形成于20世纪60年代初期。早期的图像处理的目的是改善图像的质量,它以人为对象,以改善人的视觉效果为目的。图像处理中,输入的是质量低的图像,输出的是改善质量后的图像,常用的图像处理方法有图像增强、复原、编码、压缩等。数字图像处理是通过计算机对图像进行去除噪声、增强、复原、分割、提取特征等处理的方法和技术。数字图像处理的产生和迅速发展主要受三个因素的影响:一是计算机的发展;二是数学的发展(特别是离散数学理论的创立和完善);三是广泛的农牧业、林业、环境、军事、工业和医学等方面的应用需求的增长。

一般来讲,对图像进行处理(或加工、分析)的主要目的有三个方面:(1)提高图像的视感质量,如进行图像的亮度、彩色变换,增强、抑制某些成分,对图像进行几何变换等,以改善图像的质量。(2)提取图像中所包含的某些特征或特殊信息,这些被提取的特征或信息

往往为计算机分析图像提供便利。提取特征或信息的过程是模式识别或计算机视觉的预处理。提取的特征可以包括很多方面,如频域特征、灰度或颜色特征、边界特征、区域特征、纹理特征、形状特征、拓扑特征和关系结构等。(3)图像数据的变换、编码和压缩,以便于图像的存储和传输。不管是何种目的的图像处理,都需要由计算机和图像专用设备组成的图像处理系统对图像数据进行输入、加工和输出。数字图像处理有以下几点基本特点:(1)目前,数字图像处理的信息大多是二维信息,处理信息量很大。如一幅256×256低分辨率黑白图像,要求约64kbit的数据量;对高分辨率彩色512×512图像,则要求768kbit数据量;如果要处理30帧/秒的电视图像序列,则每秒要求500kbit~22.5Mbit数据量。因此对计算机的计算速度、存储容量等要求较高。(2)数字图像处理占用的频带较宽。与语言信息相比,占用的频带要大几个数量级。如电视图像的带宽约5.6MHz,而语音带宽仅为4kHz左右。所以在成像、传输、存储、处理、显示等各个环节的实现上,技术难度较大,成本亦高,这就对频带压缩技术提出了更高的要求。(3)数字图像中各个像素是不独立的,其相关性大。在图像画面上,经常有很多像素有相同或接近的灰度。就电视画面而言,同一行中相邻两个像素或相邻两行间的像素,其相关系数可达0.9以上,而相邻两帧之间的相关性比帧内相关性一般说还要大些。因此,图像处理中信息压缩的潜力很大。(4)由于图像是三维景物的二维投影,一幅图象本身不具备复现三维景物的全部几何信息的能力,很显然三维景物背后部分信息在二维图像画面上是反映不出来的。因此,要分析和理解三维景物必须作合适的假定或附加新的测量,例如双目图像或多视点图像。在理解三维景物时需要知识导引,这也是人工智能中正在致力解决的知识工程问题。(5)数字图像处理后的图像一般是给人观察和评价的,因此受人的因素影响较大。由于人的视觉系统很复杂,受环境条件、视觉性能、人的情绪爱好以及知识状况影响很大,作为图像质量的评价还有待进一步深入的研究。另一方面,计算机视觉是模仿人的视觉,人的感知机理必然影响着计算机视觉的研究。例如,什么是感知的初始基元,基元是如何组成的,局部与全局感知的关系,优先敏感的结构、属性和时间特征等,这些都是心理学和神经心理学正在着力研究的课题。

在数字图像处理中图像的数字化显示是基础。将模拟图像转化成数字图像的过程就是图形、图像的数字化过程。这个过程主要包含采样、量化和编码三个步骤。

1.采样 采样的实质就是要用多少点来描述一幅图像,采样结果质量的高低就是用前面所说的图像分辨率来衡量。简单来讲,对二维空间上连续的图像在水平和垂直方向上等间距地分割成矩形网状结构,所形成的微小方格称为像素点。一副图像就被采样成有限个像素点构成的集合。采样频率是指一秒钟内采样的次数,它反映了采样点之间的间隔大小。采样频率越高,得到的图像样本越逼真,图像的质量越高,但要求的存储量也越大。在进行采样时,采样点间隔大小的选取很重要,它决定了采样后的图像能真实地反映原图像的程度。一般来说,原图像中的画面越复杂,色彩越丰富,则采样间隔应越小。

由于二维图像的采样是一维的推广,根据信号的采样定理,要从取样样本中精确地复原图像,可得到图像采样的奈奎斯特(Nyquist)定理:图像采样的频率必须大于或等于源图像最高频率分量的两倍。

2.量化 量化是指要使用多大范围的数值来表示图像采样之后的每一个点。量化的结果是图像能够容纳的颜色总数,它反映了采样的质量。例如:如果以4位存储一个点,就表示图像只能有16种颜色;若采用16位存储一个点,则有216=65536种颜色。所以,量化位数越来越大,表示图像可以拥有更多的颜色,自然可以产生更为细致的图像效果。但是,也会占用更大的存储空间。两者的基本问题都是视觉效果和存储空间的取舍。假设有一幅黑白灰度的照片,因为它在水平于垂直方向上的灰度变化都是连续的,都可认为有无数个像素,而且任一点上灰度的取值都是从黑到白可以有无限个可能值。通过沿水平和垂直方向的等间隔采样可将这幅模拟图像分解为近似的有限个像素,每个像素的取值代表该像素的灰度(亮度)。对灰度进行量化,使其取值变为有限个可能值。经过这样采样和量化得到的一幅空间上表现为离散分布的有限个像素,灰度取值上表现为有限个离散的可能值的图像称为数字图像。只要水平和垂直方向采样点数足够多,量化比特数足够大,数字图像的质量就比原始模拟图像毫不逊色。在量化时所确定的离散取值个数称为量化级数。为表示量化的色彩值(或亮度值)所需的二进制位数称为量化字长,一般可用8位、16位、24位或更高的量化字长来表示图像的颜色;量化字长越大,则越能真实第反映原有的图像的颜色,但得到的数字图像的容量也越大。

3.压缩编码数字化后得到的图像数据量十分巨大,必须采用编码技术来压缩其信息量。在一定意义上讲,编码压缩技术是实现图像传输与储存的关键。

数学里的变换,指一个图形(或表达式)到另一个图形(或表达式)的演变。图象变换是函数的一种作图方法。已知一个函数的图象,通过某种或多种连续方式变换,得到另一个与之相关的函数的图象,这样的作图方法叫做图象变换。

在图像变换中傅立叶变换就是应用最广泛的一种变换。数字图像经二维离散傅立叶变换后,其空间域处理可变换为变换域处理,它具有很多明显的优点,最突出的是算法运算次数将大大减少,并可采用二维数字滤波技术进行所需要的各种图像处理。

二位离散余弦变换其去相关性近似于K-L(Karhunen-Loeve)最佳变换,算法复杂度适中,易于硬件实现,且具有抗干扰能力强等优点,因此,DCT及IDCT被广泛应用于H.261、H.263、H.264、JPEG、MPEG等视频压缩标准中。

小波分解可以覆盖整个频域(提供了一个数学上完备的描述);小波变换通过选取合适的滤波器,可以极大的减小或去除所提取得不同特征之间的相关性; 小波变换具有“变焦”特性,在低频段可用高频率分辨率和低时间分辨率(宽分析窗口),在高频段,可用低频率分辨率和高时间分辨率(窄分析窗口);小波变换实现上有快速算法(Mallat小波分解算法)。小波变换是一种信号的时间——尺度分析方法,他具有多分辨率分析的特点,而且在时频两域都具有表征信号

局部特征的能力,是一种窗口大小固定不变但其形状可变,时间窗和频率窗都可变的时频局部化分析方法。即再低频部分具有较高的频率分辨率和时间分辨率,在高频部分具有较高的时间分辨率和较低的频率分辨率,很适合探测正常信号中夹带的瞬态反常现象并展示其成分,所以被誉为分析信号的显微镜。

小波变换是一种新的变换分析方法,它继承和发展了短时傅立叶变换局部化的思想,同时又克服了窗口大小不随频率变化等缺点,能够提供一个随频率改变的时间一频率窗口,是进行信号时频分析和处理的理想工具。它的主要特点是通过变换能够充分突出问题某些方面的特征,因此,小波变换在许多领域都得到了成功的应用,特别是小波变换的离散数字算法已被广泛用于许多问题的变换研究中。从此,小波变换越来越引起人们的重视,其应用领域来越来越广泛。

下载《数字图像处理》综合设计(大全)word格式文档
下载《数字图像处理》综合设计(大全).doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    数字图像处理实验报告

    实 验 报 告 书 系部学生专业班实验 名称姓名名称 级时间:: : : : 实验一 直方图均衡 一、实验目的 在学习图像直方图的概念、计算方法、性质和相关应用基础上,生成、绘制图像......

    数字图像处理实验报告

    数字图像处理 实验报告 目录 1. 数字图像处理简介2. 实验目的3. 实验内容4. 实验结果及代码展示5. 算法综述6. Matlab优势7. 总结8. 存在问题 一、 数字图像处理简介......

    数字图像处理实验报告

    数字图像处理 实验报告 班级:通信103 学号:201027201 姓名:计富威 指导教师:孙洁 实验一 MATLAB数字图像处理初步 一、实验目的与要求 1.熟悉及掌握在MATLAB中能够处理哪些格......

    数字图像处理实验报告

    实验一 数字图像的获取 一、实验目的 1、了解图像的实际获取过程。 2、巩固图像空间分辨率和灰度级分辨率、邻域等重要概念。 3、熟练掌握图像读、写、显示、类型转换等 mat......

    数字图像处理心得体会

    数字图像处理心得体会 姓名: 学号: 201203284 班级: 计科11202 序号: 31 院系: 计算机科学学院 在这一学期,我选修了《数字图像处理》这门专业选修课,同时,老师还讲授了一些......

    数字图像处理心得体会

    《数字图像处理》心得体会 1210407040 邓炯 图像处理是指对图像信息进行加工,从而满足人类的心理、视觉或者应用的需求的一种行为。图像处理方法一般有数字法和光学法两种,其......

    数字图像处理学习心得

    数字图象处理心得体会 经过这几周的学习,我从一个什么都不了解的小白,变成了一个明白这门课程的意义的初学者,觉得学到了不少有用同时又很有趣的知识,也对数字图象处理有了新的......

    数字图像处理实验报告

    数字图像处理实验 学生姓名:专业年级:报告 叶圣红 学 号: 20097048 09级电子信息工程二班 实验一 常用MATLAB图像处理命令 一、实验内容 1、读入一幅RGB图像,变换为灰度图像......