- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
图像运算实验报告解析
评分
实验报告
课程名称 医学图像处理
实验名称 图像运算
专业班级
姓 名
学 号
实验日期
实验地点
2015—2016学年度第 2 学期
实验目的
MATLAB的图像处理工具箱提供了图像运算函数。本实验将具体介绍Matlab中的图像点运算、代数运算、几何和邻域操作运算。 二、实验环境
1、硬件配置:处理器:Intel(R) Core(TM) i7-3770 CPU @3.40GHz 3.40GHz
安装内存(RAM):4.00GB 系统类型:64位操作系统
软件环境:MATLAB R2013b软件 三、实验内容
利用Matlab对图像进行点运算、加法运算、减法运算、乘法运算、除法运算、改变图像的大小、旋转图像、图像的剪切、图像的邻域操作。
四、实验结果与分析
(包括实验原理、数据的准备、运行过程分析、源程序(代码)、图形图象界面等)
注:本项可以增加页数
例1 图像点运算
skull=imread(skull.tif); %读取图像
subplot(131),imshow(skull) %生成一行三列三块区域,并在第一块区域绘制图像
I=double(skull); %转换为双精度类型
J=I*0.43+60; %利用该函数对输出图像进行压缩,使其对比度减小,图像变暗
skull2=uint8(J); %转换为uint8
subplot(132),imshow(skull2) %在第二块区域绘制图像
J=I*1.5-60; %利用该函数对输出图像进行对比度级数拓展,使其对比度增强,图像变亮
skull3=uint8(J); %转换为uint8
subplot(133),imshow(skull3) %在第三块区域绘制图像
运行结果:
图1 原图像 图2 对比度减小的图像 图3 对比度增强的图像
分析:1)subplot是用于将多个图像画到一个平面上的函数。subplot(m,n,p,)中的m表示m行,n表示n列,p表示从左到右的第几块区域;
2)uint8表示8位无符号的整型数据类型,以此方式存储的图像称作8位图像;而Matlab中数值一般采用double型的存储和运算,因此在进行本题的灰度变换运算时,应先把skull图像转化为double格式;
3)线性灰度变换函数 当a=1,b=0时,输出图像像素不发生变化;当a=1,时,输出图像所有灰度值上移或下移;当时,输出图像灰度级压缩,对比度减小,如图2所示;当时,输出图像灰度级拓展,对比度增强,如图3所示;当
时,输出图像暗区域变亮,亮区域变暗,图像求反。
2、图像的代数运算
例2 图像加法运算
skull=imread(skull.tif); %读取图像
imshow(skull) %显示图像
J=imread(cameraman.tif); %读取图像
figure,imshow(J) %显示图像
I=imresize(skull,[256,256]); %将skull图像转换为的大小
K=imadd(I,J); %对两幅图像的灰度值进行加法运算
figure,imshow(K) %显示图像
K2=imadd(I,J,uint16); %对两幅图像的灰度值进行加法运算,并转化为uint16
figure,imshow(K2,[]) %显示图像
RGB=imread(skull.tif); %读取图像
RGB2=imadd(RGB,50); %将图像skull与常数50相加
imshow(RGB) %显示RGB图像
figure,imshow(RGB2) %显示亮度增强50的RGB图像
RGB3=imadd(RGB,100); %
文档评论(0)