matlab图像处理综合实验实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《数字图像处理》
实验报告
学院:
专业:
班级:
姓名:
学号:
实验一
实验名称:图像增强
实验目的:1.熟悉图像在Matlab下的读入,输出及显示;
2.熟悉直方图均衡化;
3.熟悉图像的线性指数等;
4.熟悉图像的算术运算及几何变换.
实验仪器:计算机,Matlab软件
实验原理:
图像增强是为了使受到噪声等污染图像在视觉感知或某种准则下尽量的恢复到原始图像的水平之外,还需要有目的性地加强图像中的某些信息而抑制另一些信息,以便更好地利用图像。图像增强分频域处理和空间域处理,这里主要用空间域的方法进行增强。空间域的增强主要有:灰度变换和图像的空间滤波。
图像的直方图实际上就是图像的各像素点强度概率密度分布图,是一幅图像所有像素集合的最基本统计规律,均衡化是指在每个灰度级上都有相同的像素点过程。
实验容如下:
I=imread('E:\cs.jpg');%读取图像
subplot(2,2,1),imshow(I),title('源图像')
J=rgb2gray(I)%灰度处理
subplot(2,2,2),imshow(J) %输出图像
title('灰度图像') %在原始图像中加标题
subplot(2,2,3),imhist(J) %输出原图直方图
title('原始图像直方图')
I=imread('E:\cs.jpg');%读取图像
subplot(1,2,1),imshow(I);
theta = 30;
K = imrotate(I,theta);
subplot(1,2,2),imshow(K)
对数运算:
I=imread('E:\dog.jpg');
subplot(2,2,1),imshow(I),title('源图像')
J=rgb2gray(I)%灰度处理
subplot(2,2,2),imshow(J),title('灰度变换后图像') J1=log(1+double(J));
subplot(2,2,3),imshow(J1,[]),title('对数变换后')
指数运算:
I=imread('E:\dog.jpg');
f=double(I);
g=(2^2*(f-1))-1
f=uint8(f); g=uint8(g);
subplot(1,2,1);subimage(f),title('变换一') subplot(1,2,2);subimage(g),title('变换二')
加法运算:
clc;clear all;close all; i = imread('E:\dog.jpg');
j = imnoise(i,'gaussian',0,0.02);
subplot(1,3,1),imshow(i),title('图一') subplot(1,3,2),imshow(j),title('图二') k=zeros(242,308); for p=1:100
j = imnoise(i,'gaussian',0,0.02); j1 = im2double(j); k = k + j1; end k=k/100;
subplot(1,3,3),imshow(k),title('图三')
变换一
200400600
100200
300400500变换二
200
400
600
100200300400500
实验二
实验名称:图像变换
实验目的:
(1)进一步对matlab的了解和使用;
(2)学习如何在matlab中对数字图像的处理;
实验原理:
图像和其他信号一样,既能在空间域处理,也能在频率域处理。把图像信息从空域变换到频域,可以更好的分析加工处理。因为图像信息的频域处理具有如下特点:
(1)能量守恒,但能量重新分配;
(2)有利于提取图像的某些特征;
(3)正交变换具有能量集中作用,可以实现图像的高效压缩编码;
(4)频域用快速算法;
实验器材:电脑matlab软件
实验容:
(1)了解正交变换基本概念
(2)掌握图像的离散傅里叶和离散余弦变换
(3)熟悉图像的沃尔什及哈达玛变换
实验过程如下:
傅里叶变换
I = imread('E:\dog.jpg')
I = rgb2gray(I)
J = fft2(I)
subplot(2,2,1),imshow(I),title('灰度变换')
J = fftshift(J)
subplot(2,2,2),imshow(log(abs(J)),[]),title('傅里叶变换') J(abs(J)<5000)=0
subplot(2,2,3),imshow(log(abs(J)+eps),[]),title('滤波') J = ifftshift(J)
K = ifft2(J)
subplot(2,2,4),imshow(K,[0 255]),title('傅里叶逆变换')
余弦变换:
clear all;
RGB=imread('E:\dog.jpg');
I=rgb2gray(RGB);