医学图像处理实验

医学图像处理实验
医学图像处理实验

实验一

yq1

I=imread('cameraman.tif');%读黑白图像

subplot(2,2,1);imshow(I) %显示图像

subplot(2,2,2);imhist(I) %显示直方图

J=imadjust(I,[0.02 0.7],[0 1]);%对比度增强

subplot(2,2,3);imshow(J)

subplot(2,2,4);imhist(J)

I1=imresize(I,0.5);imview(I1)%缩小

I2=imresize(I,1.5);imview(I2)%放大

I3=imrotate(I,45,'bilinear','crop');imview(I3)%旋转45°%%原图、直方图对比度增强、直方图

%%缩小

%%放大

%%旋转45°

yq2

I=imread('pears.png');

imshow(I);

I1=rgb2gray(I);%把彩色图像转换成灰度图像figure,imshow(I1);

info= imfinfo('pears.png')%查询文件信息imwrite(I1,'D:\yq\小小.png'); %写图像

info =

Filename:'C:\MATLAB7\toolbox\images\imde mos\pears.png'

FileModDate: '03-May-2003 13:53:58' FileSize: 554554

Format: 'png'

FormatVersion: []

Width: 732

Height: 486

BitDepth: 24

ColorType: 'truecolor' FormatSignature: [137 80 78 71 13 10 26 10] Colormap: []

Histogram: []

InterlaceType: 'none'

Transparency: 'none' SimpleTransparencyData: [] BackgroundColor: []

RenderingIntent: []

Chromaticities: []

Gamma: [] XResolution: []

YResolution: []

ResolutionUnit: []

XOffset: []

YOffset: []

OffsetUnit: []

SignificantBits: []

ImageModTime:'20 Feb 2003 20:53:33 +0000' Title: []

Author: []

Description: []

Copyright: 'Copyright Corel' CreationTime: []

Software: []

Disclaimer: []

Warning: []

Source: []

Comment: []

OtherText: []

yq3

[I,map]=imread('trees.tif');

imshow(I,map)

I1=ind2gray(I,map);%把索引色转换成灰度图像

figure,imshow(I1,map)

%%索引色图像

%%灰度图像

实验二yq4

%%对比度调整

I=imread('pout.tif');

subplot(2,2,1);imshow(I);

subplot(2,2,2);imhist(I);

J=imadjust(I,[0.3 0.7],[0 1]);

subplot(2,2,3);imshow(J);

subplot(2,2,4);imhist(J);

%%原图、直方图对比度增强、直方图

yq5

%%直方图均衡化:

I=imread('pout.tif');

imshow(I);

figure,imhist(I);

[J,T]=histeq(I,64);

figure,imshow(J);

figure,imhist(J);

yq6

%%线性滤波的MA TLAB实现

I=imread('kids.tif');

I1=imnoise(I,'salt & pepper',0.02);%加椒盐噪声K1=filter2(fspecial('average',3),I1)/255;

K2=filter2(fspecial('average',5),I1)/255;

K3=filter2(fspecial('average',7),I1)/255; subplot(2,2,1);imshow(I1); title('噪声图像'); subplot(2,2,2);imshow(K1);title('3×3'); subplot(2,2,3);imshow(K2); title('5×5'); subplot(2,2,4);imshow(K2); title('7×7');

yq7

%%中值滤波MA TLAB实现

I=imread('eight.tif');

imshow(I);

J=imnoise(I,'gaussian',0,0.02);

figure;imshow(J);

K1=medfilt2(J,[3,3]);

K2=medfilt2(J,[5,5]);

K3=medfilt2(J,[7,7]);

figure,imshow(K1);

figure,imshow(K2); figure,imshow(K2); %%原图

%%加高斯噪声

实验4

实验四:图像的配准与融合

一、实验目的

(1)熟悉MATLAB图像处理工具箱的使用方法

(2) 掌握基于特征点的图像配准的过程。

(3) 掌握常用的图像融合方.

二、实验的主要仪器设备

(1)微型计算机

(2) MATLAB软件(安装图像处理工具箱)

(3) 参考MRI图像与待配准的CT图像

三、实验原理

图像配准指的是将同一场景的两幅或多幅图像进行对准。一个典型的应用是,将一幅图像(称为基准图像)作为其他图像(称为输入图像)的参照进行比较。图像配准的目的是,通过对输入图像进行空间变换,使输入图像与基准图像对准。

使用点映射的图像配准包括以下步骤:

.将图像读入到MATLAB空间;

.指定图像中的成对控制点;

.保存控制点对;

.指定要使用的变换类型,并根据控制点对推测参数。

.对没有配准的图像进行变换,使之对准。

四、试验内容

1、读入图像

M= imread('C:\MATLAB7\toolbox\images\imdemos\ct.jpg');

figure,imshow(M);

N= imread('C:\MATLAB7\toolbox\images\imdemos\mri.jpg');

figure,imshow(N);

2、选择控制点 cpselect(M,N);

3、将控制点保存到MA TLAB 工作区间 input_points =

305.8058 208.6547 236.7410 256.5396 246.8705 315.4748 262.5252 395.5899

4、调整控制点的位置和指定变换类型计算参数

input_points_corr=cpcorr(input_points,base_points,M,N);

mytform=cp2tform(input_points_corr,base_points,'linear conformal'); info=imfinfo('C:\MATLAB7\toolbox\images\imdemos\mri.jpg'); 5、配准图像,并显示

registered=imtransform(unregistered,mytform,'XData',[1 info.Width],'YData',[1 info.Height]);

figure,imshow(registered),title('配准后图像');

配准后图像

6、融合

M1=imread('C:\MATLAB7\toolbox\images\imdemos\mri.jpg'); %读入图像M2=imread('C:\MATLAB7\toolbox\images\imdemos\hh.jpg');

[m1 n1]=size(M1); %判断图像大小是否一致

[m2 n2]=size(M2);

if (m1 ~= m2) | (n1 ~= n2)

error('Input images are not of same size');

end;

M1=im2double(M1); %数据类型转换

M2=im2double(M2);

M3=0.5*M1+0.5*M2; %图像加权融合

M3=im2uint8(M3);

M4=0.3*M1+0.7*M2;

M4=im2uint8(M4);

subplot(2,2,1);imshow(M1),title('原始MRI图像'); %显示图像

subplot(2,2,2);imshow(M2),title('配准后的CT图像');

subplot(2,2,3),imshow(M3),title('加权因子0.5,0.5融合后的图像'); subplot(2,2,4),imshow(M4),title('加权因子0.3,0.7融合后的图像');

原始MRI图像配准后的CT图像

加权因子0.5,0.5融合后的图像加权因子0.3,0.7融合后的图像

数字图像处理实验1

实验一 实验内容和步骤 练习图像的读取、显示和保存图像数据,步骤如下: (1)使用命令figure(1)开辟一个显示窗口 (2)读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内显示、二值图像和灰度图像,注上文字标题。 (3)保存转换后的灰度图像和二值图像 (4)在同一个窗口显示转换后的灰度图像的直方图 I=imread('BaboonRGB.bmp'); figure,imshow(I); I_gray=rgb2gray(I); figure,imshow(I_gray); I_2bw=Im2bw(I_gray); figure,imshow(I_2bw); subplot(1,3,1),imshow(I),title('RGB图像'); subplot(1,3,2),imshow(I_gray),title('灰度图像'); subplot(1,3,3),imshow(I_2bw),title('二值图像'); imwrite(I_gray,'Baboongray.png'); imwrite(I_2bw,'Baboon2bw.tif'); figure;imhist(I_gray);

RGB 图 像灰度图 像二值图 像 050100150200250 500 1000 1500 2000 2500 3000

(5)将原RGB 图像的R 、G 、B 三个分量图像显示在figure(2)中,观察对比它们的特点,体会不同颜色所对应的R 、G 、B 分量的不同之处。 [A_RGB,MAP]=imread('BaboonRGB.bmp'); subplot(2,2,1),imshow(A_RGB),title('RGB'); subplot(2,2,2),imshow(A_RGB(:,:,1)),title('R'); subplot(2,2,3),imshow(A_RGB(:,:,2)),title('G'); subplot(2,2,4),imshow(A_RGB(:,:,3)),title('B'); (6)将图像放大1.5倍,插值方法使用三种不同方法,在figure(3)中显示放大后的图像,比较不同插值方法的结果有什么不同。将图像放大到其它倍数,重复实验;A=imread('BaboonRGB.bmp'); figure(3),imshow(A),title('原图像'); B=imresize(A,1.5,'nearest'); figure(4),imshow(B),title('最邻近法') C=imresize(A,1.5,'bilinear'); ; figure(5),imshow(C),title('双线性插值'); D=imresize(A,1.5,'bicubic'); figure(6),imshow(D),title('双三次插值 '); RGB R G B

图像处理实验二解析

昆明理工大学信息工程与自动化学院学生实验报告 (2014—2015学年第二学期) 课程名称:图形图像基础开课实验室:444 2014年 6月 4 日年级、专业、班计科111 学号201110405138 姓名成绩实验项目名称图像分割指导教师刘辉教 师 评语 教师签名: 年月日 一、实验目的及内容 目的:掌握和熟悉Matlab编程环境及语言;掌握数学形态学和图像分割的基本原理及 应用。 内容: 1.通过数学形态学实现边界提取。 2.通过全局阈值及局部阈值实现灰度图像二值化; 3.分别用Sobel算子和Canny算子对图像进行边缘检测;通过Hough检测图像中的直 线。 二、要求 1.描述腐蚀、膨胀、开运算、闭运算的原理。 膨胀:将与物体接触的所有背景点合并到该物体中,使边界向外部扩张的过程。 利用它可以填补物体中的空洞。B对X膨胀所产生的二值图像D是满足以下条件的点(x,y)的集合:如果B的原点平移到点(x,y),那么它与X的交集非空。 数学表达式:B=A⊕C 腐蚀:一种消除边界点,使边界向内部收缩的过程。利用它可以消除小而且无意义的物体。B对X腐蚀所产生的二值图像E是满足以下条件的点(x,y)的集合:如果B的原点平移到点(x,y),那么B将完全包含于X中。 数学表达式:B=AΘC 腐蚀:是一种消除边界点,使边界向内部收缩的过程。可以用来消除小且无意义的

物体。 膨胀:是将与物体接触的所有背景点合并到该物体中,使边界向外部扩张的过程。 可以用来填补物体中的空洞。 开运算:先腐蚀后膨胀的过程开运算。用来消除小物体、在纤细点处分离物体、平滑较大物体的边界的同时并不明显改变其面积。开运算通常是在需要去除小颗粒噪声,以及断开目标物之间粘连时使用。其主要作用与腐蚀相似,与腐蚀操作相比,具有可以基本保持目标原有大小不变的优点。 闭运算:先膨胀后腐蚀的过程称为闭运算。用来填充物体内细小空洞、连接邻近物体、平滑其边界的同时并不明显改变其面积。 2.编写程序,使用数学形态学方法实现边界提取。 3.描述全局阈值、局部阈值对图像进行二值化的原理。 数学形态学中二值图像的形态变换是一种针对集合的处理过程。其形态算子的实质是表达物体或形状的集合与结构元素间的相互作用,结构元素的形状就决定了这种运算所提取的信号的形状信息。形态学图像处理是在图像中移动一个结构元素,然后将结构元素与下面的二值图像进行交、并等集合运算。 阈值分割法分为全局阈值法和局部阈值分割法。所谓局部阈值分割法是将原始图像划分成较小的图像,并对每个子图像选取相应的阈值。在阈值分割后, 相邻子图像之间的边界处可能产生灰度级的不连续性,因此需用平滑技术进行 排除。局部阈值法常用的方法有灰度差直方图法、微分直方图法。局部阈值分 割法虽然能改善分割效果,但存在几个缺点: (1)每幅子图像的尺寸不能太小,否则统计出的结果无意义。 (2)每幅图像的分割是任意的,如果有一幅子图像正好落在目标区域或背景区域,而根据统计结果对其进行分割,也许会产生更差的结果。 (3)局部阈值法对每一幅子图像都要进行统计,速度慢,难以适应实时性的要求。

数字图像处理 实验报告(完整版)

数字图像处理 实验一 MATLAB数字图像处理初步 一、显示图像 1.利用imread( )函数读取一幅图像,假设其名为lily.tif,存入一个数组中; 2.利用whos 命令提取该读入图像flower.tif的基本信息; 3.利用imshow()函数来显示这幅图像; 实验结果如下图: 源代码: >>I=imread('lily.tif') >> whos I >> imshow(I) 二、压缩图像 4.利用imfinfo函数来获取图像文件的压缩,颜色等等其他的详细信息; 5.利用imwrite()函数来压缩这幅图象,将其保存为一幅压缩了像素的jpg文件,设为lily.jpg;语法:imwrite(原图像,新图像,‘quality’,q), q取0-100。 6.同样利用imwrite()函数将最初读入的tif图象另存为一幅bmp图像,设为flily.bmp。7.用imread()读入图像Sunset.jpg和Winter.jpg; 8.用imfinfo()获取图像Sunset.jpg和Winter.jpg的大小; 9.用figure,imshow()分别将Sunset.jpg和Winter.jpg显示出来,观察两幅图像的质量。 其中9的实验结果如下图:

源代码: 4~6(接上面两个) >>I=imread('lily.tif') >> imfinfo 'lily.tif'; >> imwrite(I,'lily.jpg','quality',20); >> imwrite(I,'lily.bmp'); 7~9 >>I=imread('Sunset.jpg'); >>J=imread('Winter.jpg') >>imfinfo 'Sunset.jpg' >> imfinfo 'Winter.jpg' >>figure(1),imshow('Sunset.jpg') >>figure(2),imshow('Winter.jpg') 三、二值化图像 10.用im2bw将一幅灰度图像转化为二值图像,并且用imshow显示出来观察图像的特征。实验结果如下图: 源代码: >> I=imread('lily.tif') >>gg=im2bw(I,0.4); F>>igure, imshow(gg)

数字图像处理实验二 图像灰度变换

实验二 图像灰度变换实验一、 实验目的熟悉亮度变换函数的使用熟悉灰度图像的直方图的表示;掌握图像增强的基本方法:灰度变换、直方图均衡;二、实验内容灰度线性变换、灰度直方图、直方图均衡处理;灰度变换是图像增强的一种重要手段,使图像对比度扩展,图像更加清晰,特征更加明显。灰度级的直方图给出了一幅图像概貌的描述,通过修改灰度直方图来得到图像增强。三、实验原理1.函数imadjust 函数imadjust 是对灰度图像进行亮度变换的基本命令,语法为: g = imadjust(f, [low_in high_in], [low_out high_out], gamma) 将图像f 中的亮度值(灰度值)映射到新图像g 中,即将low_in 至high_in 之间的值映射到low_out 至high_out 之间的值。low_in 以下的灰度值映射为low_out ,high_in 以上的灰度值映射为high_out ,函数imadjust 的矩阵[ ]内参数均指定在0和1之间,[low_in high_in]和[low_out high_out]使用空矩阵[ ]会得到默认值[0 1]。若high_out 小于low_out ,则输出图像会反转。 参数gamma 指定了曲线(变换函数)的形状,若gamma 小于1,则映射被加权至更高(更亮)的输出值;若gamma 大于1,则映射被加权至更低(更暗)的输出值。若省略了函数的参量gamma ,则gamma 默认为1——即线性映 射。 >>f = imread(‘filename’)>>imshow(f)>>g1 = imadjust(f, [0 1], [1 0]); %图像反转>>figure, imshow(g1) %figure 命令表示同时显示多个窗口 >>g2 = imadjust(f, [0.5 0.75], [0 1]); %将0.5至0.75之间的灰度级扩展到范围0和1之间 >>figure, imshow(g2) >>g3 = imadjust(f, [ ], [ ], 2) %使用gamma 值 >>figure, imshow(g3)

医学影像检查技术实验报告

实验1 图像的特性及图像处理初步 1 实验目的 了解MatLab 软件/语言学,会使用MatLab 的图像处理工具箱(Image Processing Toolbox)。使学生初步具备使用该软件处理图像信息的能力,并能够利用该软件完成本课程规定的其他实验和作业。 了解图像的基本特性,以及对图像进行简单运算后其性质的变化,学习对图像进行基本处理并评价处理结果。 2 实验要求 学生应当基本掌握MatLab 的操作,掌握MatLab 图像处理工具箱中最常用的函数的用法,会用该软件调入/保存图像数据,会利用该软件对图像进行简单的计算,例如四则运算等,并观察运算的结果加深对于象素和数值之间的关系的理解。 3 实验内容与步骤 (1) 学习MatLab 的基本操作 (2) 调入并显示图像 lena.gif lane = imread('lena.gif'); figure; imshow(lane); (3) 在图像 lena.gif 和图像的数据上进行加减乘除一个常数观察计算结果 l1 = imadd(lane,100); figure; imshow(l1); title('加法') l2 = imsubtract(lane,50); figure; imshow(l2); title('减法') l3 = immultiply(lane,0.6); 原始图 像

figure imshow(l3) title('乘法') l4 = imdivide(lane,2); figure imshow(l4); title('除法'); 从图中可以看出,当加法处理时,图像灰度值增加而变亮,减法时图像灰度值 减小而变暗,由于乘法参数为0.6,相当于减小灰度值;而 (4) 利用 imcrop 函数对图像 lena.gif 的头部进行剪裁,然后显示剪裁的结果 l5 = imcrop(lane,[55,50,180,212]); figure imshow(l5) 加 法

数字图像处理实验报告

数字图像处理实验报告 实验一数字图像基本操作及灰度调整 一、实验目的 1)掌握读、写图像的基本方法。 2)掌握MATLAB语言中图像数据与信息的读取方法。 3)理解图像灰度变换处理在图像增强的作用。 4)掌握绘制灰度直方图的方法,理解灰度直方图的灰度变换及均衡化的方 法。 二、实验内容与要求 1.熟悉MATLAB语言中对图像数据读取,显示等基本函数 特别需要熟悉下列命令:熟悉imread()函数、imwrite()函数、size()函数、Subplot()函数、Figure()函数。 1)将MATLAB目录下work文件夹中的forest.tif图像文件读出.用到imread, imfinfo 等文件,观察一下图像数据,了解一下数字图像在MATLAB中的处理就是处理一个矩阵。将这个图像显示出来(用imshow)。尝试修改map颜色矩阵的值,再将图像显示出来,观察图像颜色的变化。 2)将MATLAB目录下work文件夹中的b747.jpg图像文件读出,用rgb2gray() 将其 转化为灰度图像,记为变量B。 2.图像灰度变换处理在图像增强的作用 读入不同情况的图像,请自己编程和调用Matlab函数用常用灰度变换函数对输入图像进行灰度变换,比较相应的处理效果。 3.绘制图像灰度直方图的方法,对图像进行均衡化处理 请自己编程和调用Matlab函数完成如下实验。 1)显示B的图像及灰度直方图,可以发现其灰度值集中在一段区域,用 imadjust函 数将它的灰度值调整到[0,1]之间,并观察调整后的图像与原图像的差别,调整后的灰

度直方图与原灰度直方图的区别。 2) 对B 进行直方图均衡化处理,试比较与源图的异同。 3) 对B 进行如图所示的分段线形变换处理,试比较与直方图均衡化处理的异同。 图1.1 分段线性变换函数 三、实验原理与算法分析 1. 灰度变换 灰度变换是图像增强的一种重要手段,它常用于改变图象的灰度范围及分布,是图象数字化及图象显示的重要工具。 1) 图像反转 灰度级范围为[0, L-1]的图像反转可由下式获得 r L s --=1 2) 对数运算:有时原图的动态范围太大,超出某些显示设备的允许动态范围, 如直接使用原图,则一部分细节可能丢失。解决的方法是对原图进行灰度压缩,如对数变换: s = c log(1 + r ),c 为常数,r ≥ 0 3) 幂次变换: 0,0,≥≥=γγc cr s 4) 对比拉伸:在实际应用中,为了突出图像中感兴趣的研究对象,常常要求 局部扩展拉伸某一范围的灰度值,或对不同范围的灰度值进行不同的拉伸处理,即分段线性拉伸: 其对应的数学表达式为:

图像处理实验二图像增强

实验二图像的增强 一、实验目的 1)掌握在计算机上进行直方图统计,以及直方图均衡化、线性变换的图像增强的方法 2)掌握在计算机上进行图象平滑、图象锐化特别是中值滤波平滑及拉普拉斯算子锐化 的方法 二、实验要求 1)显示图像(cameraman.tif)及灰度直方图。 2)对指定图像(cameraman.tif)进行直方图均衡化和线性变换,将原始图像及增强 后的图像都显示于屏幕上,比较增强的效果。 3)对指定图像(lena.bmp)加入椒盐噪声,然后进行邻域平滑、中值滤波,将原始图 像及平滑后的图像都显示于屏幕上,比较效果。 4)对指定图像(lena.bmp)进行锐化(简单梯度算法、ROBERT算子,Prewitt边缘算 子和拉普拉斯算子),将原始图像及锐化后的图像都显示于屏幕上,比较锐化的效果。 三、实验仪器设备及软件 HP D538、MATLAB 四、实验原理 以自己的语言结合课堂笔记进行总结,要求过程推导清晰明了。 五、实验步骤及程序 实验步骤、程序流程、实验源程序和注释齐全 实验源程序: (1). 显示图像(cameraman.tif)及灰度直方图: I=imread('cameraman.tif'); subplot(121); imshow(I); title('原始图象'); subplot(122); imhist(I); title('灰度直方图')实验结果与分析

(2)对指定图像(cameraman.tif)进行直方图均衡化和线性变换,将原始图像及增强后的图像都显示于屏幕上,比较增强的效果。 I=imread('cameraman.tif'); subplot(221); imshow(I); title('原始图象'); I1=histeq(I); subplot(222); imshow(I1); title('原始图象均衡化'); subplot(223); imshow(I); title('原始图象'); I2=imadjust(I); subplot(224); imshow(I1); title('原始图象线性变化'); (3)对指定图像(lena.bmp)加入椒盐噪声,然后进行邻域平滑、中值滤波,将原始图像及平滑后的图像都显示于屏幕上,比较效果。

数字图像处理实验

实验三 图像的几何运算 实验目的 1、 理解几何运算的基本概念与定义; 2、 掌握在MA TLAB 中进行插值的方法 3、 运用MATLAB 语言进行图像的插值缩放和插值旋转。 实验原理 几何运算可改变图像中各物体之间的空间关系。这种运算可以被看成是将(各)物体在图像内移动。一个几何运算需要两个独立的算法。首先,需要一个算法来定义空间变换本身,用它来描述每个像素如何从其初始位置“移动”到终止位置,即每个像素的“运动”。同时,还需要一个用于灰度插值的算法,这是因为,在一般情况下,输入图像的位置坐标(x,y)为整数,而输出图像的位置坐标为非整数,反过来也如此。因此插值就是对变换之后的整数坐标位置的像素值进行估计。MATLAB 提供了一些函数实现这些功能。 插值是常用的数学运算,通常是利用曲线拟合的方法,通过离散的采样点建立一个连续函数来逼近真实的曲线,用这个重建的函数便可以求出任意位置的函数值。 最近邻插值是最简便的插值,在这种算法中,每一个插值输出像素的值就是在输入图像中与其最临近的采样点的值。该算法的数学表示为: ()()k f x f x = 如果 1111 ()()22 k k k k x x x x x -++<<+ 最近邻插值是工具箱函数默认使用的插值方法,而且这种插值方法的运算量非常小。不过,当图像中包含像素之间灰度级变化的细微结构时,最近邻插值法会在图像中产生人工的痕迹。 双线性插值法的输出像素值是它在输入图像中2×2领域采样点的平均值,它根据某像素周围4个像素的灰度值在水平和垂直两个方向上对其插值。 设''''1,1,,m i m n j n a i m b j n <<+<<+=-=-,' i 和'j 是要插值点的坐标,则双线性插值的公式为: ' ' (,)(1)(1)(,)(1)(1,)(1)(,1)(1,1)g i j a b g m n a b g m n a bg m n abg m n =--+-++-++++ 把按照上式计算出来的值赋予图像几何变换对应于'' (,)i j 处的像素,即可实现双线性插值。 双三次插值的插值核为三次函数,其插值邻域的大小为4×4。它的插值效果比较好,但相应的计算量也比较大,在这里不做讨论。

数字图像处理与分析实验作业(DOC)

数字图像处理与分析实验作业 作业说明:作业题目分为基本题和综合应用题。基本题主要是考察大家对教材涉及的一些基本图像处理技术的理解和实现。而综合应用题主要是考察大家综合利用图像处理的若干技术来解决实际问题的能力。 注:所有实验用图像均可从网上下载,文档中的图片只是示例。 作业要求: 编程工具:Matlab或者VC(可以使用OpenCV:https://www.360docs.net/doc/783227396.html,/)。因为很多基本的图象处理算法已经集成在很多的编程工具中,而编程训练中基本题的目的是让同学们加深对这些算法的理解,所以基本题要求同学们只能使用图像读取和显示相关的函数(例如Matlab的imread imshow,imwrite,OpenCV的cvCreateImage,cvLoadImage,cvShowImage),而不要直接调用相关的API(例如二维DFT,图象均衡等等),但在综合应用题中则无此限制。 上交的作业包括:实验报告和程序。其中实验报告要求写出算法分析(必要时请附上流程图),函数说明(给出主要函数的接口和参数说明),实验结果(附图)及讨论分析。提交的程序,一定要确保可以运行,最好能写个程序说明。 基本题一共有10道,可以从中任选2道题来完成。综合应用题有2道,可以从中任选1道来完成。 请各位同学务必独立完成,切忌抄袭! 基本题 一、直方图变换 要求对原始Lena 图像实现以下三种取整函数的直方图均衡化: 线性函数: t k= int[(L -1) t k+ 0.5]; 对数函数: t k= int[( L-1)log(1+9t k) + 0.5] ; 指数函数: t k= int[(L -1)exp( t k-1) + 0.5] ; 要求给出: 1、原始图像和分别采用上述三种方式均衡化后的图像; 2、原始图像的直方图和上述三种方式对应均衡化后的直方图。

数字图像处理实验 实验二

实验二MATLAB图像运算一、实验目的 1.了解图像的算术运算在数字图像处理中的初步应用。 2.体会图像算术运算处理的过程和处理前后图像的变化。 二、实验步骤 1.图像的加法运算-imadd 对于两个图像f x,y和 (x,y)的均值有: g x,y=1 f x,y+ 1 (x,y) 推广这个公式为: g x,y=αf x,y+β (x,y) 其中,α+β=1。这样就可以得到各种图像合成的效果,也可以用于两张图像的衔接。说明:两个示例图像保存在默认路径下,文件名分别为'rice.png'和'cameraman.tif',要求实现下图所示结果。 代码: I1 = imread('rice.png'); I2 = imread('cameraman.tif'); I3 = imadd(I1, I2,'uint8'); I4 = imadd(I1, I2,'uint16'); subplot(2, 2, 1), imshow(I1), title('?-ê?í???1'); subplot(2, 2, 2), imshow(I2), title('?-ê?í???2'); subplot(2, 2, 3), imshow(I3), title('8??í?????ê?'); subplot(2, 2, 4), imshow(I4), title('16??í?????ê?'); 结果截图:

2.图像的减法运算-imsubtract 说明: 背景图像可通过膨胀算法得到background = imopen(I,strel('disk',15));,要求实现下图所示结果。 示例代码如下: I1 = imread('rice.png'); background = imerode(I1, strel('disk', 15)); rice2 = imsubtract(I1, background); subplot(2, 2, 1), imshow(I1), title('?-ê?í???'); subplot(2, 2, 2), imshow(background), title('±3?°í???'); subplot(2, 2, 3), imshow(rice2), title('′|àíoóμ?í???'); 结果截图: 3.图像的乘法运算-immultiply

数字图像处理实验题目要求

1基于形态学运算的星空图像分割 主要内容: 在获取星图像的过程中,由于某些因素的影响,获得的星图像存在噪声,而且星图像的背景经常是不均匀的,为星图像的分割造成了极大的困难。膨胀和腐蚀是形态学的两个基本运算。用形态学运算对星图像进行处理,补偿不均匀的星图像背景,然后进行星图像的阈值分割。 要求: 1> 图像预处理:对原始星空图像进行滤波去噪处理; 2> 对去噪后的图像进行形态学运算处理; 3> 选取自适应阈值对形态学运算处理后的图像进行二值化; 4> 显示每步处理后的图像; 5> 对经过形态学处理后再阈值的图像和未作形态学处理后再阈值的图像进行对比分析。 待分割图像 直接分割图像 处理后的分割图像 2基于数字图像处理的印刷电路板智能检测方法 主要内容: 通过对由相机实时获取的印刷电路板图像进行焊盘识别,从而提高电子元件的贴片质量,有效提高电路板的印刷效率。 要求: 1> 图像预处理:将原始彩色印刷电路板图像转成灰度图像,对灰度图像进行背景平滑和滤波去噪; 2> 对去噪后的图像进行图像增强处理,增强边缘提取的效果。 3> 对增强后的图像进行边缘提取(至少两种以上的边缘提取算法); 4> 显示每步处理后的图像(原始电路板图像可自行查找); 5> 图像处理后要求能对每个焊盘进行边缘提取,边缘清晰。 3静止背景下的移动目标视觉监控 主要内容: 基于视觉的人的运动分析最有前景的潜在应用之一是视觉监控。视觉监控系统的需求主要来自那些对安全要求敏感的场合,如银行、商店、停车场、军事基地等。通过对静止背景下的目标识别,来提醒监测人员有目标出现。

要求: 1>对原始参考图和实时图像进行去噪处理; 2>对去噪后的两幅图像进行代数运算,找出目标所在位置,提取目标,并将背景置黑; 3> 判断目标大小,若目标超过整幅图像的一定比例时,说明目标进入摄像保护区域,系统对监测人员进行提示(提示方式自选)。 4>显示每步处理后的图像; 5>分析此种图像监控方式的优缺点。 背景目标出现目标提取 4车牌识别图像预处理技术 主要内容: 车辆自动识别涉及到多种现代学科技术,如图像处理、模式识别与人工智能、计算机视觉、光学、机械设计、自动控制等。汽车作为人类生产、生活中的重要工具被广泛的使用,实现自动采集车辆信息和智能管理的车牌自动识别系统具有十分重要的意义: 要求: 1>对原始车牌图像做增强处理; 2>对增强后的彩色图像进行灰度变换; 3>对灰度图像进行直方图均衡处理; 4>选取自适应的阈值,对图像做二值化处理; 5>显示每步处理后的图像; 6>分析此种图像预处理的优缺点及改进措施,简要叙述车牌字符识别方法 原始车牌图像处理后的车牌图像 5医学细胞图像细胞分割图像增强算法研究 主要内容: 医学图象处理利用多种方法对各种图像数据进行处理,以期得到更好的显示效果以便医生根据细胞的外貌进行病变分析。 要求: 1>通过对图像的灰度变换调整改变细胞图像的灰度,突出感兴趣的细胞和细胞核区域。 2>通过直方图修改技术得到均衡化或规定化等不同的处理效果。 3>采用有效的图像平滑方法对细胞图像进行降噪处理,消除图像数字化和传输时所混入的噪声,提高图像的视觉效果。 4>利用图像锐化处理突出细胞的边缘信息,加强细胞的轮廓特征。 5>显示每步处理图像,分析此种细胞分割图像预处理方法的优缺点。 原始细胞图像 图像处理后的细胞图像 6瓶子灌装流水线检测是否液体灌装满瓶体 当饮料瓶子在罐装设备后要进行液体的检测,即:进行判断瓶子灌装流水线是否灌装满瓶体的检测,如液面超过瓶颈的位置,则装满,否则不满,如果不满则灌装液体不合格,需重新进行灌装。 具体要求: 1)将原进行二值化 2)二值化后的图像若不好,将其滤波再进行膨胀处理,并重新进行二值化 3)将图像标记连通域并进行面积计算,找出不符合要求的标记块 4)将不合格的图像进行提取,并记录不合格率

图像处理实验报告.doc

中南民族大学 计算机科学学院 数字图像处理实验报告年级 专业计算机科学与技术 指导教师 学号 姓名 实验类型综合型 2012年6月5日

一、实验安排 1.实验目的 加深对数字图像处理理论课程的理解,进一步熟悉数字图像处理课程的相关算法和原理。 2.实验内容 实验一:略(放假) 实验二: (1)选择一副图像,叠加椒盐噪声,分别用邻域平均法和中值滤波法对该图像进行滤波,显示滤波后的图像,比较和分析各滤波器的效果。 (2)选择一副图像,叠加零均值高斯噪声,设计一种处理方法,既能去噪声,又能保持边缘清晰。 3.实验环境 Matlab7 二、算法原理 领域平均法有力地抑制了噪声,同时也引起了模糊,模糊程度与领域半径成正比。 中值滤波是一种非线性平滑滤波,在一定的条件下可以克服线性滤波如(平滑滤波)等所带来的图像细节模糊问题,而且对过滤脉冲干扰及图像扫描噪声非常有效。但对某些细节多(特别是点,线,尖顶)的图像不宜采用中值滤波方法。中值滤波是用一个有奇数点的滑动窗口,将窗口中心点的值用窗口各点的中值代替。中值滤波器不像平滑滤波器那样使图像边界模糊,它在衰减噪声的同时,保持了图像细节的清晰。 三、Matlab代码 (1)a.叠加椒盐噪声,用邻域平均法对该图像进行滤波 I=imread('eight.jpg'); J=imnoise(I,'salt & pepper',0.02); subplot(231),imshow(I);title('原图象'); subplot(232),imshow(J);title('添加椒盐噪声图象'); k1=filter2(fspecial('average',3),J); k2=filter2(fspecial('average',5),J); k3=filter2(fspecial('average',7),J); k4=filter2(fspecial('average',9),J); subplot(233),imshow(uint8(k1));title('3*3模版平滑滤波'); subplot(234),imshow(uint8(k2));title('5*5模版平滑滤波'); subplot(235),imshow(uint8(k3));title('7*7模版平滑滤波'); subplot(236),imshow(uint8(k4));title('9*9模版平滑滤波'); b.叠加椒盐噪声,用中值滤波法对该图像进行滤波 I=imread('eight.tif'); I=imread('eight.tif'); J=imnoise(I,'salt & pepper',0.02); subplot(231),imshow(I);title('原图象'); subplot(232),imshow(J);title('添加椒盐噪声图象') k1=medfilt2(J); k2=medfilt2(J,[5 5]); k3=medfilt2(J,[7 7]); k4=medfilt2(J,[9 9]); subplot(233),imshow(k1);title('3*3模板中值滤波'); subplot(234),imshow(k2);title('5*5模板中值滤波'); subplot(235),imshow(k3);title('7*7模板中值滤波'); subplot(236),imshow(k4);title('9*9模板中值滤波');

数字图像基本处理实验

题目:图像的基本运算 学生姓名:戚云锦 学生学号:1114020125 系别:电气信息工程学院专业:电子信息工程 年级:11级 任课教师:沈晓波 电气信息工程学院 2013年12月

实验题目:图像的基本运算 学生:戚芸锦 任课教师:沈晓波 电气信息工程学院电子信息工程 1、实验题目 图像的基本运算 2、实验对象 自己的图像和moon 3、实验任务 (1)实现对图像的点运算(加减乘除)具体参数自行规定。 (2)实现对图像的逻辑运算(与或非)。 (3)实现对单幅图像的空间运算(放大、缩小、旋转、平移、X镜像、Y镜像),具体参数自行规定。 以上3个任务要求用一个M文件实现,输出到同一个图片中,按顺序编号,并在每个子图片下方命名,命名规则样例“(2)放大后图像” (4)简单应用:将自己的头像上添加:“姓名第一次作品”,字体规格不限,输出新的图像。 4、实验原理 4.1理论基础 (1)点运算 点运算实际上就是对图像的每个像素点的灰度值按一定的映射关系运算,得到新图像的过程。运用点运算可以改变图像数据所占的灰度值范围。对于一幅输入图像,经过点运算会产生一幅输出图像,输出图像中每个像素点的灰度值仅有相应输入点的灰度值确定。点运算从数学上可以分为线性点运算和非线性点运算两类。 线性点运算是指输入图像的灰度级与目标图像的灰度级呈线性关系。线性点运算的灰度变换函数形式可以采用线性方程描述,即s=ar+b 其中r为相应输出点的灰度值,s为相应输出点的灰度值。 常见的非线性点运算为对数变换和幂次变换。

对数变换的一般表达式为:s=c log(1+r),c为常数,并假定r>=0. (2)代数运算与逻辑运算 代数运算是指对两幅图或两幅图已上输入图像进行点对点的加、减、乘、除运算而得到的目标图像的运算。 加法运算的作用是去除“叠加性”随机噪音和生成图像。减法运算的作用是差影法和混合图像的分离。乘法和除法运算可以用来改变图像的灰度级,实现灰度级变换。除法运算还经常用于消除图像数字化设备随空间所产生的影响。 常见的逻辑运算有与或非等,其主要针对二值图像,在进行图像理解与分析领域比较有用。运用这种方法可以为图像提供模板,与其他运算犯法结合起来可以获得某种特殊的效果。 (3)几何运算 从变换性质来分,几何变换可以分为图像的位置变换(平移、镜像、旋转),形状变换(放大、缩小)及图像的复合变换等。 图像的镜像是指原图像相对于木一照面旋转180度的图像。镜像变换又常称为对称变换,它可以分为水平对称、垂直对称等多种变换。对称变换后,图像宽度和高不变。 图像的旋转变换是指以图像的中心为原点,将图像上所有像素都旋转同一个角度的变换。图像的位置发生了变化。和平移一样,在图像的旋转变换中既可以把转出显示区域的图像截去,也可以扩大显示区域的图像范围以显示图像的全部。 数字图像的比例缩放是指将给定的图像在X方向和Y方向按相同比例a缩放,从而获得一副新的图像,又成为全比例缩放。如果X方向和Y方向缩放的比例不同,则图像的比例缩放会改变原始图像像素间的相对位置,产生几何畸变。若比例所产生的图像中没有相对应的像素点时,就需要进行灰度值的插值运算,一般有以下两种插值处理方法。 ①直接复值为和它最相近的像素灰度值,这种方法称为最近邻插值法,该方法简单、计算量小,但很可能会产生马赛克现象。 ②通过其他数学插值法来计算相应的像素点的灰度值,这类方法处理效果好,但运算量会有所增加。 4.2实际方案

图像处理实验报告

实验报告 实验课程名称:数字图像处理 班级:学号:姓名: 注:1、每个实验中各项成绩按照10分制评定,每个实验成绩为两项总和20分。 2、平均成绩取三个实验平均成绩。

2016年 4 月18日 实验一 图像的二维离散傅立叶变换 一、实验目的 掌握图像的二维离散傅立叶变换以及性质 二、实验要求 1) 建立输入图像,在64?64的黑色图像矩阵的中心建立16?16的白色矩形图像点阵, 形成图像文件。对输入图像进行二维傅立叶变换,将原始图像及变换图像(三维、中心化)都显示于屏幕上。 2) 调整输入图像中白色矩形的位置,再进行变换,将原始图像及变换图像(三维、中 心化)都显示于屏幕上,比较变换结果。 3) 调整输入图像中白色矩形的尺寸(40?40,4?4),再进行变换,将原始图像及变 换图像(三维、中心化)都显示于屏幕上,比较变换结果。 三、实验仪器设备及软件 HP D538、MATLAB 四、实验原理 傅里叶变换作为分析数字图像的有利工具,因其可分离性、平移性、周期性和共轭对称性可以定量地方分析数字化系统,并且变换后的图像使得时间域和频域间的联系能够方便直观地解决许多问题。实验通过MATLAB 实验该项技能。 设),(y x f 是在空间域上等间隔采样得到的M ×N 的二维离散信号,x 和y 是离散实变量,u 和v 为离散频率变量,则二维离散傅里叶变换对一般地定义为 ∑∑ -=-=+-= 101 )],( 2ex p[),(1),(M x N y N yu M xu j y x f MN v u F π,1,0=u …,M-1;y=0,1,…N-1 ∑∑-=-=+=101 )],( 2ex p[),(),(M x N y N uy M ux j v u F y x f π ,1,0=x …,M-1;y=0,1,…N-1

图像处理 实验报告

摘要: 图像处理,用计算机对图像进行分析,以达到所需结果的技术。又称影像处理。基本内容图像处理一般指数字图像处理。数字图像是指用数字摄像机、扫描仪等设备经过采样和数字化得到的一个大的二维数组,该数组的元素称为像素,其值为一整数,称为灰度值。图像处理技术的主要内容包括图像压缩,增强和复原,匹配、描述和识别3个部分。图像处理一般指数字图像处理。 数字图像处理的目的是改善图像的质量,它以人为对象,以改善人的视觉效果为目的。目前,图像处理演示系统应用领域广泛医学、军事、科研、商业等领域。因为数字图像处理技术易于实现非线性处理,处理程序和处理参数可变,故是一项通用性强,精度高,处理方法灵活,信息保存、传送可靠的图像处理技术。本图像处理演示系统以数字图像处理理论为基础,对某些常用功能进行界面化设计,便于初级用户的操作。 设计要求 可视化界面,采用多幅不同形式图像验证系统的正确性; 合理选择不同形式图像,反应各功能模块的效果及验证系统的正确性 对图像进行灰度级映射,对比分析变换前后的直方图变化; 1.课题目的与要求 目的: 基本功能:彩色图像转灰度图像 图像的几何空间变换:平移,旋转,剪切,缩放 图像的算术处理:加、减、乘 图像的灰度拉伸方法(包含参数设置); 直方图的统计和绘制;直方图均衡化和规定化; 要求: 1、熟悉图像点运算、代数运算、几何运算的基本定

义和常见方法; 2、掌握在MTLAB中对图像进行点运算、代数运算、几何运算的方法 3、掌握在MATLAB中进行插值的方法 4、运用MATLAB语言进行图像的插值缩放和插值旋转等 5、学会运用图像的灰度拉伸方法 6、学会运用图像的直方图设计和绘制;以及均衡化和规定化 7、进一步熟悉了解MATLAB语言的应用,将数字图像处理更好的应用于实际2.课题设计内容描述 1>彩色图像转化灰度图像: 大部分图像都是RGB格式。RGB是指红,绿,蓝三色。通常是每一色都是256个级。相当于过去摄影里提到了8级灰阶。 真彩色图像通常是就是指RGB。通常是三个8位,合起来是24位。不过每一个颜色并不一定是8位。比如有些显卡可以显示16位,或者是32位。所以就有16位真彩和32位真彩。 在一些特殊环境下需要将真彩色转换成灰度图像。 1单独处理每一个颜色分量。 2.处理图像的“灰度“,有时候又称为“高度”。边缘加强,平滑,去噪,加 锐度等。 3.当用黑白打印机打印照片时,通常也需要将彩色转成灰白,处理后再打印 4.摄影里,通过黑白照片体现“型体”与“线条”,“光线”。 2>图像的几何空间变化: 图像平移是将图像进行上下左右的等比例变化,不改变图像的特征,只改变位置。 图像比例缩放是指将给定的图像在x轴方向按比例缩放fx倍,在y轴按比例缩放fy倍,从而获得一幅新的图像。如果fx=fy,即在x轴方向和y轴方向缩放的比率相同,称这样的比例缩放为图像的全比例缩放。如果fx≠fy,图像的比例缩放会改变原始图象的像素间的相对位置,产生几何畸变。 旋转。一般图像的旋转是以图像的中心为原点,旋转一定的角度,也就是将图像上的所有像素都旋转一个相同的角度。旋转后图像的的大小一般会改变,即可以把转出显示区域的图像截去,或者扩大图像范围来显示所有的图像。图像的旋转变换也可以用矩阵变换来表示。

图像处理基本实验

图像处理基本实验 1. 读取并显示一幅tif格式的图像,并将新图像存存储成bmp, png格式并显示出来. 所用图片像素为264x264 I=imread('dog_gray.tif'); % 读取tif图像 [m,n]=size(I) % 显示图像规模 imwrite(I,'dog_gray.bmp');% 图像保存为bmp格式 imwrite(I,'dog_gray.png');% 图像保存为png格式 I1=imread('dog_gray.bmp'); %读取bmp图像 I2=imread('dog_gray.png'); %读取png 图像 subplot(1,3,1),imshow(I);% 在1x3子屏中的第1个子图显示为dog_gray.tif title('dog_gray.tif');% 显示图像标题 subplot(1,3,2),imshow(I1); %在1x3子屏中的第2个子图显示为dog_gray.bmp title('dog_gray.bmp');% 显示图像标题 subplot(1,3,3),imshow(I2); % 在1x3子屏中的第2个子图显示为dog_gray.png title('dog_gray.png');% 显示图像标题 m = 264 n = 264

2 读取一幅RGB 彩色图像,在同一窗口输出原图像及R, G, B 三个分量 图像. 所用图片大小为352x351 RGB=imread('fruits.tif'); %读取图像 [m,n,p]=size(RGB) % 矩阵大小 R=RGB(:,:,1); % 显示R 分量 G=RGB(:,:,2); %显示G 分量 B=RGB(:,:,2); %显示B 分量 subplot(2,2,1),image(RGB); % 在2x2子屏中的第1个子图显示原图 title('原图'); % 显示标题 subplot(2,2,2),image(R); % 在2x2子屏中的第2个子图显示R 分量图像 dog g ray.tif dog g ray.bmp dog g ray.png

数字图像处理实验2冈萨雷斯.

实验二灰度直方图及直方图均衡化 一、 实验目的: 1、直方图显示 2、计算并绘制图像直方图 3、直方图均衡化二、实验内容 学习使用函数 imhist(, histeq(, bar(, stem(, plot(, imadjust(,及 title, axis, set 等描述图像工具。 1、直方图显示 显示图 Fig0354(a(einstein_orig.tif,标注图的题目为:EINSTEIN ,作出其直方图,调整参数如下图所示: EINSTEIN

4 2、分别用 bar 和 stem 函数显示直方图 由 h=imhist( 获得直方图;分别用 bar 和 stem 显示直方图 h ,并通过参数调整,改变直方图的显示方式。用 axis 设置轴的最大、最小值(例如:axis([0 255 0 15000];),用 set 设置显示坐标的间隔(例如:set(gca,’xtick ’, 0:50:255)。作出如下的直方图: 00 50

100 150 200 250 3、用 plot 函数显示直方图要求同 2. 12000 1000080006000400020000 0 50 100 150 200 250 300 4、用 imadjust( 函数调整图像对比度,并用 imhist( 查看调整前后直方图的变化。 3 . 2 . 1 . 0 . 4

5、用 histeq( 进行直方图均衡化,并用 imhist( 查看均衡化前后直方图的变化。

4 三、实验要求 将本实验的 10 个图用 MATLAB 显示到屏幕上。程序: i=imread('Fig0354(a(einstein_orig.tif'; imshow(i; title('EINSTEIN'; figure; imhist(i; title('直方图';

相关文档
最新文档