Matlab图像处理教程及方法
MATLAB图像处理基础教程
MATLAB图像处理基础教程第一章:MATLAB图像处理简介MATLAB(Matrix Laboratory)是一种强大的数值计算和数据可视化软件,广泛应用于各个领域,包括图像处理。
图像处理是一门研究如何对数字图像进行分析、增强、重建和压缩的学科。
本教程将引导读者逐步了解MATLAB图像处理的基本概念和技术。
第二章:MATLAB图像的读取与显示在MATLAB中,可以使用imread函数读取不同格式的图像文件,并使用imshow函数显示图像。
此外,还可以使用imfinfo函数获取图像的详细信息,如分辨率、颜色空间和位深度等。
第三章:图像的灰度处理灰度处理是一种常见的图像预处理方法。
通过将彩色图像转换为灰度图像,可以减少图像的数据量,简化图像处理的复杂性。
在MATLAB中,可以使用rgb2gray函数将彩色图像转换为灰度图像,并使用imhist函数查看灰度图像的直方图。
第四章:图像的滤波处理滤波是一种常用的图像处理操作,用于对图像进行平滑、增强或去噪。
MATLAB提供了各种滤波函数,如均值滤波、中值滤波和高斯滤波等。
可以根据具体需求选择合适的滤波方法,并使用imfilter函数进行滤波处理。
第五章:图像的二值化处理图像的二值化是将图像转换为黑白两色的过程,常用于物体检测、识别和分割等应用。
在MATLAB中,可以使用im2bw函数将灰度图像转换为二值图像,并可以调整阈值来控制二值化的效果。
第六章:图像的几何变换几何变换是一种常见的图像处理操作,用于对图像进行旋转、缩放、平移和翻转等操作。
MATLAB提供了imrotate、imresize、imtranslate和flip函数等实现各种几何变换。
通过组合这些函数,可以实现复杂的图像变换。
第七章:图像的特征提取图像的特征提取是图像处理中的重要步骤,用于从图像中提取出具有代表性的信息。
在MATLAB中,可以使用各种特征提取函数,如imgradient、imhistogram和imcontour等。
MATLAB技术图像去模糊教程
MATLAB技术图像去模糊教程近年来,图像处理技术得到了广泛的应用,并成为了计算机视觉和图像识别领域中的重要组成部分。
然而,由于种种原因,很多时候我们会遇到图像模糊的问题,这给图像的识别和分析带来了一定的困扰。
幸运的是,MATLAB提供了一系列强大的图像处理工具,可以帮助我们有效地处理图像模糊问题。
本文将介绍一些常用的MATLAB技术,帮助读者学习如何使用MATLAB进行图像去模糊处理。
第一部分:图像模糊的原因与分类在开始学习图像去模糊技术之前,我们首先需要了解图像模糊的原因和分类。
图像模糊主要是由于光的散射、镜头成像失真、图像振动等原因引起的。
根据模糊效果的不同,图像模糊可以分为运动模糊、模糊固定模糊和非固定模糊等。
其中,运动模糊是最常见的一种形式,它是由于镜头或者相机在图像获取过程中的移动引起的。
第二部分:基于轨迹估计的图像去模糊方法现在我们来介绍一种常用的图像去模糊方法,即基于轨迹估计的方法。
这种方法的基本思想是通过分析图像中物体的运动轨迹,来估计图像的模糊程度,并对图像进行相应的处理。
具体流程如下:1. 读取图像并进行预处理,包括灰度化、降噪等。
2. 对图像进行运动估计,可以使用不同的算法,比如光流算法、像素匹配算法等。
这一步的目的是准确估计物体的运动轨迹。
3. 根据运动轨迹估计图像的模糊程度,可以使用不同的指标来衡量,比如轨迹长度、轨迹方向变化等。
4. 根据估计的模糊程度对图像进行去模糊处理。
可以采用不同的方法,比如卷积运算、滤波器设计等。
5. 最后,进行图像评价和结果展示,比较去模糊前后的效果。
第三部分:基于频域滤波的图像去模糊方法除了基于轨迹估计的方法,MATLAB还提供了基于频域滤波的图像去模糊方法。
这种方法的基本思想是通过对图像进行傅里叶变换,将图像的频域信息表示为频谱图,然后根据模糊程度设计相应的滤波器,对频谱图进行滤波,最后再进行傅里叶反变换,得到去模糊后的图像。
具体流程如下:1. 读取图像并进行预处理,包括灰度化、降噪等。
利用Matlab进行图像处理的常用方法
利用Matlab进行图像处理的常用方法概述:图像处理是数字信号处理的一个重要分支,也是计算机视觉领域的核心内容之一。
随着计算机技术的不断发展,利用Matlab进行图像处理的方法变得越来越重要。
本文将介绍一些常用的Matlab图像处理方法,包括图像的读取与显示、图像的预处理、图像的滤波处理、基本的图像增强方法以及图像的分割与检测等。
一、图像的读取与显示在Matlab中,可以使用imread函数直接读取图像。
通过指定图像的路径,我们可以将图像读取为一个矩阵,并且可以选择性地将其转换为灰度图像或彩色图像。
对于灰度图像,可以使用imshow函数将其显示出来,也可以使用imwrite函数将其保存为指定格式的图像文件。
对于彩色图像,可以使用imshow函数直接显示,也可以使用imwrite函数保存为指定格式的图像文件。
此外,还可以使用impixel函数获取图像中指定像素点的RGB值。
二、图像的预处理图像的预处理是指在进一步处理之前对图像进行调整和修复以消除图像中的噪声和不良的影响。
常用的图像预处理方法包括图像的平滑处理、图像增强和图像修复等。
1. 图像平滑处理:常用的图像平滑方法有均值滤波、中值滤波和高斯滤波等。
其中,均值滤波将每个像素点的值替换为其周围像素点的平均值,中值滤波将每个像素点的值替换为其周围像素点的中值,高斯滤波则通过加权平均的方式平滑图像。
2. 图像增强:图像增强是指通过一些方法提高图像的质量和信息内容。
常用的图像增强方法包括直方图均衡化、对比度拉伸和锐化等。
直方图均衡化通过调整图像的灰度分布,以提高图像的对比度和细节。
对比度拉伸是通过将图像的像素值线性拉伸到整个灰度范围内,以增强图像的对比度。
锐化则是通过增强图像的边缘和细节,使图像更加清晰。
三、图像的滤波处理图像的滤波处理是指通过对图像进行一系列滤波操作,来提取图像中的特征和信息。
常用的图像滤波方法包括模板滤波、频域滤波和小波变换等。
1. 模板滤波:模板滤波是基于局部像素邻域的滤波方法,通过定义一个滤波模板,将其与图像进行卷积操作,从而实现图像的滤波。
MATLAB中的图像处理技术详解
MATLAB中的图像处理技术详解图像处理是一门涉及数字图像获取、处理、分析和展示的学科,其在各个领域都有重要的应用。
而MATLAB作为一种强大的科学计算软件,提供了丰富的图像处理工具包,可以帮助用户轻松地进行各种图像处理操作。
本文将详细介绍MATLAB中常用的图像处理技术,包括图像读取、图像显示、灰度转换、滤波操作、边缘检测以及图像分割等。
1. 图像读取和显示首先,在MATLAB中进行图像处理的第一步是读取图像。
MATLAB提供了imread函数,可以快速读取各类图像文件,例如JPEG、PNG、BMP等。
读取的图像可以是灰度图像,也可以是彩色图像。
读取之后,我们可以使用imshow函数将图像显示在MATLAB的图像窗口中,便于后续处理和分析。
2. 灰度转换在实际的图像处理应用中,有时候我们需要将彩色图像转换为灰度图像,以方便后续的处理和分析。
MATLAB提供了rgb2gray函数,可以将彩色图像转换为灰度图像。
转换后的灰度图像只包含一个通道,每个像素点的取值范围为0~255,表示灰度级。
3. 滤波操作滤波操作是在图像处理中常用的一种方法,其可以对图像进行平滑或者增强等处理。
MATLAB中提供了丰富的滤波函数,例如均值滤波、中值滤波、高斯滤波等。
这些滤波函数可以通过设置不同的参数来控制滤波效果,比如滤波窗口的大小、滤波核函数等。
4. 边缘检测边缘检测是图像处理中的一个重要任务,其可以帮助我们识别图像中的边缘信息,进而进行物体检测和分割。
MATLAB中提供了多种边缘检测算法,包括Sobel 算子、Canny算子等。
这些算法可以根据不同的应用场景选择合适的边缘检测方法,并根据需要调整相应的参数。
5. 图像分割图像分割是将图像分成若干个不同区域或者物体的过程,其在图像处理和计算机视觉中具有重要的意义。
MATLAB中提供了多种图像分割算法,例如基于阈值的分割、基于区域的分割以及基于边缘的分割等。
这些算法可以根据要求对图像进行有效的分割,以满足用户的实际需求。
使用MATLAB进行图像处理的基本方法
使用MATLAB进行图像处理的基本方法第一章:介绍MATLAB图像处理工具箱MATLAB是一种用于算法开发、数据可视化和数值计算的高级工具。
图像处理是MATLAB中重要的应用之一,其图像处理工具箱提供了许多功能强大的函数和工具,能够完成各种图像处理任务。
1.1 图像处理基础图像处理是通过计算机对图像进行分析、处理和改变的过程。
它可以用于增强图像的质量、从图像中提取有用的信息或特征,以及实现图像的压缩和恢复等任务。
1.2 MATLAB图像处理工具箱的功能MATLAB图像处理工具箱提供了丰富的函数和工具,包括图像读取和写入、图像增强、图像分割、图像滤波、图像变换等。
这些功能可以帮助用户对图像进行各种处理和分析。
第二章:图像预处理图像预处理是图像处理的第一步,其目的是消除图像中的噪声和其他不必要的信息,使后续的处理更加准确和有效。
2.1 图像读取和显示在MATLAB中,可以使用imread函数读取图像,imshow函数显示图像。
读取图像后,可以对图像进行显示、调整亮度和对比度等操作。
2.2 图像增强图像增强是通过对图像的像素值进行调整,改善图像的视觉质量。
常用的图像增强方法有直方图均衡化、对比度拉伸和滤波等。
第三章:图像分割图像分割是将图像划分成若干个具有独立意义的部分的过程。
图像分割可以帮助我们识别并提取出感兴趣的目标,进行后续的处理和分析。
3.1 基于阈值的图像分割阈值分割是一种简单且有效的图像分割方法,其思想是将图像中的像素分成前景和背景两部分。
MATLAB提供了imbinarize函数用于阈值分割。
3.2 基于边缘的图像分割边缘分割基于图像中物体的边界特征,通过检测图像中的边缘来实现图像分割。
MATLAB中的边缘检测函数包括edge和gradient。
第四章:图像滤波图像滤波是对图像进行平滑或增强处理的过程,它可以帮助去除图像中的噪声、增强图像的边缘和细节等。
4.1 线性滤波线性滤波是一种基于加权和求和的滤波方法,常用的线性滤波器有均值滤波器和高斯滤波器等。
使用Matlab进行信号处理和图像处理
使用Matlab进行信号处理和图像处理信号处理和图像处理在现代科学和工程领域中发挥着重要的作用。
Matlab是一种强大的数学计算和编程软件,被广泛应用于信号处理和图像处理的相关任务。
本文将介绍如何使用Matlab进行信号处理和图像处理,并提供一些常用的技巧和实例。
首先,让我们从信号处理开始。
信号处理是指对信号进行分析、建模、改善和解码的过程。
在Matlab中,有许多内置的函数和工具箱可用于处理不同类型的信号。
下面是一些常用功能的示例。
1.滤波:滤波是信号处理中常用的操作之一,用于去除噪声、提取感兴趣的信息等。
Matlab提供了多种滤波函数,例如FIR滤波器、IIR滤波器等。
通过设置滤波器的参数,可以实现不同的滤波效果。
2.傅里叶变换:傅里叶变换是将信号从时域转换到频域的重要方法。
在Matlab中,可以使用fft函数来进行快速傅里叶变换,ifft函数可以进行傅里叶逆变换。
这些函数可以帮助我们分析信号的频谱特征,提取频域信息。
3.时域分析:Matlab提供了许多函数用于时域分析,如自相关函数、互相关函数、能量谱密度等。
这些函数可以帮助我们理解信号的时域特征,包括信号的自相似性、互相干性等。
4.波形生成:Matlab提供了各种函数用于生成各种类型的波形信号,如正弦波、方波、三角波等。
我们可以根据需要生成特定形式的波形,并进行后续处理。
接下来,让我们转向图像处理。
图像处理是指对图像进行增强、分析、压缩和恢复的过程。
Matlab在图像处理方面提供了丰富的函数和工具箱,使得图像处理变得更加简单和高效。
下面是一些常用功能的示例。
1.图像读取与显示:使用imread函数可以读取图像文件,imshow函数可以显示图像。
我们可以通过这些函数来加载图像,并将其显示在Matlab界面上。
2.图像增强:Matlab提供了多种图像增强函数,如直方图均衡化、滤波器应用、锐化等。
这些函数可以增强图像的对比度、清晰度和细节。
3.图像分割:图像分割是将图像分成多个连续区域或对象的过程。
(完整版)数字图像处理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图像处理实验一、实验目的1、了解Matlab平台下的图像编程环境;2、读入、显示、检查内存中的图像;3、实现直方图均衡化、保存图像、检查新生文件的内容及一些相关的操作。
二、实验内容1、双击桌面上的matlab图标,启动matlab软件。
2、在MATLAB界面右侧“command window”中输入相应的代码,读入并显示一副图像。
3、检查内存中的图像4、改变图像大小(0.8)5、将彩色图像转化为灰度图像,通过save函数,将R、G、B值分别保存成.mat 文件(R.mat,G.mat,B.mat),将灰度图像保存(imwrite),其灰度值用.mat文件保存。
6、实现直方图的均衡化,画出原始图像及其直方图,以及处理之后图像及其直方图(在一个图形窗口中画出)7、保存图像三、实验结果及代码clear;%清空MATLAB工作平台的所有变量close all;%关闭已打开的图形窗口img1 = imread('C:\Users\1\Desktop\实验\Image.jpg');%读入图像文件figure(2);subplot(321);imshow(img1);title('原彩色图');subplot(322);img = imresize(img1,0.8);%改变图像大小imshow(img);title('缩小后的彩色图像');subplot(323);gray = rgb2gray(img);%将彩色图像转化为灰度图像imwrite(gray,'C:\Users\1\Desktop\实验\hui_1.tif'); imshow(gray);title('灰度图像');%实现直方图的均衡化subplot(324)imhist (gray);title('灰度图像直方图');subplot(325);imgGray2 = histeq(gray);%直方图均衡化imshow(imgGray2);title('均衡化灰度图像');subplot(326);imhist(imgGray2);%获取图像数据直方图title('均衡化灰度图像直方图');img = imread('C:\Users\1\Desktop\实验\hui_1.tif'); R = gray(:,:,1);G = gray(:,:,2);B = gray(:,:,3);save('R.mat',R)save('G.mat',G)save('B.mat',B)Gray = img();save('Gray.mat','Gray')如图上图所示,包括原彩色图像、灰度图像、均衡化后的彩色图像、缩小后的彩色图像、原直方图和均衡后的直方图。
如何进行MATLAB图像处理
如何进行MATLAB图像处理一、引言图像处理是计算机视觉和图像分析领域中的重要任务之一。
而MATLAB是一种强大的数学计算软件,也被广泛应用于图像处理。
本文将介绍如何使用MATLAB进行图像处理,并探讨一些常见的图像处理技术。
二、图像处理基础在开始使用MATLAB进行图像处理之前,我们需要了解一些基础知识。
一个图像通常由像素组成,每个像素都有一个灰度值或者RGB(红绿蓝)三个通道的值。
图像的处理可以分为两个主要方面:空间域处理和频域处理。
1. 空间域处理空间域图像处理是指直接对图像的像素进行操作,常见的处理方法包括亮度调整、对比度增强和图像滤波等。
MATLAB提供了一系列函数和工具箱来进行这些处理。
例如,要调整图像的亮度,可以使用imadjust函数。
该函数可以通过调整输入图像的灰度值范围,实现亮度的增强或者降低。
下面是一个简单的例子:```matlabI = imread('image.jpg'); % 读取图像J = imadjust(I,[0.2 0.8],[0 1]); % 调整亮度范围imshow(J); % 显示图像```2. 频域处理频域图像处理是指将图像从空间域转换到频域进行处理,常见的处理方法包括傅里叶变换和滤波等。
MATLAB提供了fft和ifft等函数来进行频域处理。
例如,要对图像进行傅里叶变换,可以使用fft2函数。
该函数将图像转换为频率域表示,可以进一步进行滤波等处理。
下面是一个简单的例子:```matlabI = imread('image.jpg'); % 读取图像F = fft2(I); % 傅里叶变换F = fftshift(F); % 频率域中心化imshow(log(1 + abs(F)),[]); % 显示频率域图像```三、图像处理技术了解了图像处理的基础知识后,我们可以探索一些常见的图像处理技术。
以下将介绍几个常用的技术,并给出相应的MATLAB代码示例。
在Matlab中进行图像处理的基本步骤和方法
在Matlab中进行图像处理的基本步骤和方法图像处理是一门涉及数字图像的处理技术和方法的学科,它可以帮助我们从图像中获取有用的信息,并改进图像的质量。
Matlab是一种广泛应用于科学和工程领域的高级计算机语言和环境,也是图像处理的重要工具之一。
本文将介绍在Matlab中进行图像处理的基本步骤和方法。
一、图像的读取和显示在开始进行图像处理之前,我们首先需要读取和显示图像。
在Matlab中,可以使用imread函数读取图像文件,该函数会返回一个包含图像像素值的矩阵。
通过imshow函数可以将图像显示在Matlab的图像窗口中。
同时,也可以使用imwrite函数将处理后的图像数据保存为图像文件。
二、图像的预处理在进行一系列的图像处理操作之前,通常需要对图像进行预处理,以提高后续处理步骤的效果。
常见的图像预处理方法包括灰度化、降噪、增强对比度等操作。
1. 灰度化灰度化是将彩色图像转化为灰度图像的过程。
在Matlab中,可以使用rgb2gray 函数将彩色图像转化为灰度图像。
灰度图像只有一个通道,每个像素的值表示了该像素的亮度。
2. 降噪图像中常常存在各种噪声,如高斯噪声、椒盐噪声等。
为了提高图像质量和后续处理的准确性,可以使用图像降噪方法来减少这些噪声的影响。
Matlab中提供了一些常用的降噪函数,如medfilt2、wiener2等,可以根据实际需求选择合适的方法来降噪。
3. 增强对比度对比度是指图像中不同亮度之间的差异程度。
当图像的对比度较低时,图像细节会变得不明显。
为了提高图像的可视化效果,可以使用一些增强对比度的方法。
例如,可以使用imadjust函数对图像的像素值进行调整,以拉伸图像的灰度级范围。
三、图像的滤波滤波在图像处理中起到了非常重要的作用,可以用来平滑图像、提取图像的边缘等。
在Matlab中,提供了多种滤波函数,可以根据需求选择合适的滤波方法。
1. 均值滤波均值滤波是一种常见的平滑滤波方法,可以用来消除图像中的高频噪声。
使用Matlab进行实时图像处理与计算机视觉的实践指南
使用Matlab进行实时图像处理与计算机视觉的实践指南引言:计算机视觉是一门涉及图像处理和模式识别的跨学科领域,其在各个应用领域如机器人、医学、自动驾驶等方面有着广泛的应用。
而Matlab作为一种功能强大的科学计算软件,提供了许多图像处理和计算机视觉的工具箱,方便了开发者进行实时图像处理和计算机视觉算法的设计与验证。
本文旨在介绍如何使用Matlab进行实时图像处理与计算机视觉的实践,并分享一些实用的技巧与经验。
一、Matlab图像处理工具箱的使用Matlab图像处理工具箱是Matlab中一个强大的工具集合,提供了丰富的图像处理函数和算法,方便用户进行各种图像处理操作。
我们可以利用Matlab图像处理工具箱进行图像增强、图像滤波、边缘检测等操作,以及更高级的图像分割、特征提取、目标检测等复杂算法。
下面我们将以实例介绍如何使用Matlab图像处理工具箱进行实时图像处理。
实例1: 实时目标检测在计算机视觉领域,目标检测是一项重要的任务。
我们将以实时交通车辆检测为例,演示如何使用Matlab进行实时目标检测。
首先我们需要收集一些交通车辆的图像数据集,并通过Matlab图像采集工具将这些图像导入到Matlab中。
接着,我们可以使用Matlab的图像增强函数对图像进行预处理,如亮度调整、对比度增强等。
然后,我们可以使用Matlab的目标检测函数,如HOG特征提取和SVM分类器,对图像中的交通车辆进行检测和识别。
由于实时目标检测要求处理速度较快,我们可以利用Matlab的并行计算和GPU加速功能来提高算法的运行效率。
同时,我们还可以通过调整算法参数和优化算法设计来进一步提高目标检测的准确性和稳定性。
实例2: 实时图像分割图像分割是计算机视觉中一个重要的任务,它将图像分解为不同的区域或对象,使得后续的处理更加容易和准确。
下面我们将以实时人像分割为例,探讨如何使用Matlab进行实时图像分割。
首先,我们需要收集一些人像的图像数据集,并将其导入到Matlab中。
如何使用MATLAB进行图像分割处理
如何使用MATLAB进行图像分割处理图像分割是计算机视觉领域中的一项重要任务,它可以将图像中的不同区域分割出来,为后续的图像分析和理解提供基础。
MATLAB作为一种强大的数学计算工具和编程语言,提供了丰富的图像处理函数和工具箱,可以方便地进行图像分割处理。
本文将介绍如何使用MATLAB进行图像分割处理。
首先,我们需要加载图像。
MATLAB提供了imread函数用于读取图像文件。
例如,我们可以使用以下代码加载一张名为"image.jpg"的图像:```matlabimage = imread('image.jpg');```加载图像后,我们可以对图像进行预处理。
预处理的目的是为了减少噪声和增强图像的对比度,从而更好地进行分割。
MATLAB提供了丰富的图像预处理函数,如imresize、imadjust、imnoise等。
我们可以根据实际需求选择适当的函数进行预处理。
例如,以下代码使用imadjust函数对图像进行对比度增强:```matlabimage = imadjust(image);```接下来,我们可以选择合适的分割算法对图像进行分割。
MATLAB提供了多种图像分割算法,如阈值分割、区域生长、边缘检测等。
我们可以根据图像的特点和需求选择适合的算法。
以下是一种常用的阈值分割算法的示例代码:```matlabthreshold = graythresh(image);binaryImage = imbinarize(image, threshold);```在上述代码中,graythresh函数计算出一个合适的阈值,然后imbinarize函数将图像转化为二值图像。
通过调整阈值的大小,我们可以控制分割的精度和效果。
除了阈值分割,MATLAB还提供了更复杂的分割算法,如基于区域的分割算法。
这些算法可以根据图像中的区域特征进行分割,例如颜色、纹理、形状等。
以下是一种基于区域的分割算法的示例代码:```matlabsegmented = regiongrowing(image, seed);```在上述代码中,regiongrowing函数根据种子点对图像进行区域生长分割。
MATLAB图像处理与计算教程
MATLAB图像处理与计算教程第一章:MATLAB图像处理基础1.1 MATLAB图像处理介绍MATLAB是一种强大的计算软件,适用于各种领域的数据处理和分析。
图像处理是MATLAB的一个重要应用领域之一,可以帮助用户对数字图像进行分析、增强和处理。
1.2 图像读取和显示MATLAB提供了丰富的函数和工具箱,用于读取、处理和显示图像。
用户可以使用imread函数读取图像文件,然后使用imshow函数显示图像。
1.3 图像基本操作在MATLAB中,用户可以对图像进行一系列基本的操作,如图像的剪裁、旋转、缩放和反转。
这些操作可以通过MATLAB的内置函数来实现,或者通过自定义函数来完成。
1.4 灰度图像处理灰度图像是一种只有灰度信息而没有彩色信息的图像。
在MATLAB中,用户可以对灰度图像进行直方图均衡化、增强对比度、滤波等操作,以改善图像的质量和可读性。
第二章:MATLAB图像滤波和增强2.1 图像滤波滤波是图像处理中常用的技术之一,可以去除图像中的噪声、平滑图像或者增强图像的特定频率成分。
MATLAB提供了多种滤波函数,如均值滤波、中值滤波和高斯滤波,用户可以根据具体需求选择适合的滤波方法。
2.2 图像增强图像增强是一种改善图像质量的技术,可以使图像更清晰、更亮丽。
在MATLAB中,用户可以使用直方图增强、锐化和去雾等方法来增强图像。
2.3 边缘检测边缘是图像中灰度值由低到高或由高到低的区域,边缘检测可以用于提取图像中的边缘特征。
MATLAB提供了多种边缘检测算法,如Sobel算子、Canny算子和Laplacian算子,用户可以根据实际需求选择合适的算法。
第三章:MATLAB图像分割和识别3.1 图像分割图像分割是将图像划分为不同的区域或对象的过程,可以帮助用户提取图像中感兴趣的部分。
在MATLAB中,用户可以使用阈值分割、区域生长和边缘分割等方法来实现图像分割。
3.2 目标识别目标识别是指在图像中找到目标并判断目标的种类或属性。
MATLABImageProcessing图像处理入门教程
MATLABImageProcessing图像处理入门教程MATLAB图像处理入门教程第一章:图像处理基础知识图像处理是指对于数字图像进行各种操作和处理的过程。
在本章中,我们将介绍一些基础的图像处理知识。
1.1 数字图像表示数字图像是由像素组成的二维数组,每个像素表示图像中的一个点。
每个像素的值表示该点的亮度或颜色。
1.2 MATLAB中的图像表示在MATLAB中,图像可以用二维矩阵表示,其中每个元素对应一个像素的亮度或颜色值。
常见的图像格式包括灰度图像和彩色图像。
1.3 图像读取和显示使用MATLAB的imread函数可以读取图像文件,imshow函数可以显示图像。
第二章:图像预处理在进行实际的图像处理之前,通常需要对图像进行预处理,以提取感兴趣的信息或减少噪声。
2.1 图像平滑平滑操作可以减少图像中的噪声。
常见的平滑方法包括均值滤波和高斯滤波。
2.2 边缘检测边缘检测可以找到图像中的边缘区域。
常用的边缘检测算法包括Sobel算子和Canny算子。
2.3 图像分割图像分割可以将图像划分为不同的区域,以便后续的处理。
常见的图像分割算法包括阈值分割和区域生长算法。
第三章:图像增强图像增强可以提高图像的质量和清晰度,使图像更易于理解和分析。
3.1 直方图均衡化直方图均衡化可以增强图像的对比度,使图像的灰度值分布更均匀。
3.2 锐化锐化操作可以增强图像的边缘和细节。
常见的锐化算法包括拉普拉斯算子和Sobel算子。
3.3 噪声去除噪声去除可以降低图像中的噪声,使图像更清晰。
常见的噪声去除方法包括中值滤波和小波去噪。
第四章:图像分析图像分析可以从图像中提取出感兴趣的特征或对象。
4.1 特征提取特征提取可以从图像中提取出具有代表性的特征,可以用于图像分类和识别。
4.2 图像匹配图像匹配可以找到图像中相似的区域或对象。
常见的图像匹配方法包括模板匹配和特征点匹配。
4.3 图像识别图像识别可以根据图像的特征和模式来判断图像中的对象或场景。
如何使用MATLAB进行图像拼接和合成
如何使用MATLAB进行图像拼接和合成概述:图像拼接和合成是一种将多张图片融合成一张完整图片的技术。
MATLAB作为一种功能强大的科学计算软件,提供了许多方便易用的工具包,使得图像拼接和合成变得更加简单。
本文将介绍如何使用MATLAB进行图像拼接和合成的方法和技巧。
一、图像预处理:在进行图像拼接和合成之前,首先需要对原始输入进行一系列的预处理。
这包括图像的尺寸统一、色彩平衡和去噪等操作。
MATLAB提供了许多内置函数和工具箱,可以轻松完成这些预处理工作。
1. 图像尺寸统一:由于不同图片可能具有不同的尺寸和比例,为了实现拼接和合成的目标,我们需要将所有输入图片的尺寸统一。
MATLAB中的imresize函数可以很方便地实现图像的缩放操作,使得所有图像具有相同的尺寸。
2. 色彩平衡:当合成图像中不同部分的色彩不匹配时,我们需要进行色彩平衡操作,使得整体图像具有统一的色调。
MATLAB提供了imadjust函数,可以对图像的亮度和对比度进行调整,以达到色彩平衡的效果。
3. 去噪:在拼接和合成图像时,由于图片在拍摄和处理过程中可能会出现噪点和不完整的部分,我们需要使用去噪算法来提高图像质量。
MATLAB中的imfilter函数可以实现常见的去噪算法,如中值滤波和高斯滤波等。
二、图像拼接:图像拼接是将多个图片按照一定规则拼接成一张完整图片的过程。
MATLAB 提供了多种实现图像拼接的函数和技术,下面列举其中几种常见的方法。
1. 水平拼接:水平拼接是将多张图片按照水平方向排列,形成一张更宽的图片。
MATLAB 中的imresize和imwrite函数可以实现此功能。
首先,将所有输入图片调整为相同的高度和宽度,然后调用imwrite函数将它们水平排列在一起。
2. 垂直拼接:垂直拼接是将多张图片按照垂直方向排列,形成一张更高的图片。
与水平拼接类似,需要先调整所有输入图片为相同的高度和宽度,然后使用imwrite函数将它们垂直排列在一起。
如何在Matlab中进行图像去除与补全
如何在Matlab中进行图像去除与补全一、引言图像是由无数个像素点组成的,每个像素点的颜色值代表了图像的一部分信息。
然而,在现实生活中,图像往往会受到各种噪声的干扰,导致图像质量降低。
为了提高图像的质量,我们需要对图像进行去除与补全。
在本篇文章中,将介绍如何使用Matlab进行图像的去除与补全操作。
二、图像去除图像去除是指通过一定的方法去除图像中的噪声,使图像恢复到原始的清晰状态。
在Matlab中,可以使用各种滤波器进行图像去除操作。
1. 中值滤波器中值滤波器是一种常用的图像去噪方法。
它的原理是将每个像素点的颜色值替换为该像素点周围邻域内颜色值的中值。
通过计算邻域内颜色值的中值,并将该中值作为该像素点的颜色值,可以有效地去除图像中的噪声。
在Matlab中,可以使用medfilt2函数来实现中值滤波。
例如,要对一幅图像img进行中值滤波,可以使用以下代码:filtered_img = medfilt2(img);2. 均值滤波器均值滤波器是另一种常用的图像去噪方法。
它的原理是将每个像素点的颜色值替换为该像素点周围邻域内颜色值的平均值。
通过计算邻域内颜色值的平均值,并将该平均值作为该像素点的颜色值,也可以有效地去除图像中的噪声。
在Matlab中,可以使用imfilter函数来实现均值滤波。
例如,要对一幅图像img进行均值滤波,可以使用以下代码:filtered_img = imfilter(img, fspecial('average', [3 3]));三、图像补全图像补全是指通过一定的方法填补图像中的缺失部分,使图像完整。
在Matlab 中,可以使用插值方法进行图像的补全操作。
1. 最近邻插值最近邻插值是一种简单的插值方法,它的原理是将缺失部分的像素点的颜色值替换为与其最近邻的像素点颜色值相同。
这种方法适用于图像中没有连续变化的情况。
在Matlab中,可以使用imresize函数来进行最近邻插值。
如何进行MATLAB图像增强和修复
如何进行MATLAB图像增强和修复图像增强和修复是数字图像处理的两个重要方面,其目的在于改善图像的质量、清晰度和可视化效果。
在本文中,我们将探讨如何使用MATLAB进行图像增强和修复的方法和技巧。
1. 图像增强图像增强是通过一系列的处理方法来改善图像的视觉质量和增强图像的细节。
MATLAB提供了多种图像增强的函数和工具包,以下是一些常用的方法:灰度拉伸:通过对图像的像素值进行线性变换,将像素值映射到一个更大的范围,从而增加图像的对比度和动态范围。
例如,可以使用imadjust函数来调整图像的灰度级别。
直方图均衡化:该方法通过重新分配图像的像素值,使得图像的直方图在整个灰度级范围内更均衡。
使用histeq函数可以实现直方图均衡化。
滤波:图像中的噪声会降低图像的质量和细节。
通过应用不同的滤波方法,可以去除噪声和平滑图像。
MATLAB提供了多种滤波函数,如均值滤波、中值滤波和高斯滤波。
增强算法:一些特定的图像增强算法,如锐化、边缘增强和局部对比度增强等,可以提高图像的细节和清晰度。
你可以使用imsharpen、edge和adapthisteq等函数来实现这些算法。
2. 图像修复图像修复是通过一系列的处理方法来修复、恢复损坏或退化图像的细节和完整性。
这种损坏可能是由噪声、模糊、运动模糊或其他因素引起的。
以下是一些常用的图像修复方法:去噪:噪声在图像中是常见的问题,因为它会导致图像细节的丢失。
MATLAB 提供了一些函数如wiener2、medfilt2和imnoise等,可以用来去除不同类型的噪声。
模糊去除:运动模糊是由运动物体或相机移动引起的,可以使用维纳滤波器或修复算法来恢复模糊图像的细节。
MATLAB提供了deconvwnr和deconvlucy等函数来实现运动模糊的去除。
图像修复算法:一些先进的图像修复算法,如总变分(Total Variation)和去除重复块(Inpainting)算法,可以从严重损坏的图像中恢复丢失的细节。
数字图像处理教程(matlab版)
FILENAME参数指定文件名。FMT为保存文件采用的格式。 imwrite(I6,'nirdilatedisk2TTC10373.bmp');
/1、图像的读取和显示
三、图像的显示
imshow(I,[low high])
I为要显示的图像矩阵。[low high]为指定显示灰度图像的灰度范围。 高于high的像素被显示成白色;低于low的像素被显示成黑色;介于 High和low之间的像素被按比例拉伸后显示为各种等级的灰色。 figure;imshow(I6);title('The Main Pass Part of TTC10373');
t c logk s
c为尺度比例常数,s为源灰度值,t为变换后的目标灰 度值。k为常数。灰度的对数变换可以增强一幅图像 中较暗部分的细节,可用来扩展被压缩的高值图像中 的较暗像素。广泛应用于频谱图像的显示中。
Warning:log函数会对输入图像矩阵s中的每个元素进行
操作,但仅能处理double类型的矩阵。而从图像文件中得到的 图像矩阵大多是uint8类型的,故需先进行im2double数据类型 转换。
原 图 像
滤 波 后 图
像
/4、空间域图像增强 三、滤波器设计
h=fspecial(type,parameters)
parameters为可选项,是和所选定的滤波器类型type相关的 配置参数,如尺寸和标准差等。
type为滤波器的类型。其合法值如下:
合法取值 ‘average’
‘disk’ ‘gaussian’ ‘laplacian’
DA
DMax A0
DA
使用Matlab进行图像拍摄与图像处理的实践方法
使用Matlab进行图像拍摄与图像处理的实践方法1. 引言人类对于图像的处理和分析,一直是科学和技术领域中的重要课题。
随着数字图像处理技术的不断发展,Matlab成为了研究者们图像处理的利器。
本文将探讨如何使用Matlab进行图像拍摄与图像处理,以帮助读者更好地理解并应用这一工具。
2. 图像拍摄图像拍摄是获取数字图像的第一步。
在拍摄过程中,摄影师需要注意一些关键因素,例如光线条件、曝光时间和焦距等。
Matlab提供了图像采集工具箱,可以与数码相机或摄像机相连,并实时获取图像数据。
通过该工具箱,用户可以调整曝光时间、白平衡和对焦等设置,以满足实际需求。
3. 图像处理预处理图像拍摄后,图像预处理是必不可少的一步。
预处理可以帮助提高图像质量,并减少后续处理的复杂度。
Matlab提供了一系列的图像处理函数,可以实现预处理任务,例如灰度化、平滑滤波和直方图均衡化等。
通过这些函数,用户可以根据需要调整图像的亮度、对比度和细节等参数,以获取更好的效果。
4. 图像处理主要技术图像处理主要包括图像增强、图像复原和图像分割等技术。
Matlab提供了丰富的工具箱和函数,可以实现这些技术的应用。
例如,Matlab中的imadjust函数可以对图像进行亮度和对比度调整,imfilter函数可以实现各种滤波操作,imsharpen函数可以增强图像的边缘和细节等。
通过灵活使用这些函数,用户可以根据实际情况选择合适的方法,并通过实验不断优化处理结果。
5. 图像处理案例为了更好地理解和应用Matlab进行图像处理,下面将介绍一个实际的案例:人脸识别。
人脸识别是一种常见的图像处理应用,可以应用于安防系统、人机交互和身份认证等领域。
Matlab提供了人脸检测工具箱和人脸识别工具箱,可以帮助用户进行人脸检测和特征提取等操作。
用户可以通过这些工具箱,选择适当的算法和参数,实现人脸识别任务。
在具体实现过程中,用户需要先采集包含多张人脸的图像样本,并建立人脸数据库。
使用Matlab进行图像处理的方法
使用Matlab进行图像处理的方法引言:在当今数字化时代,图像处理成为了计算机科学中重要且热门的领域。
图像处理可以用于各种应用,比如医学图像分析、视频监控、人工智能等。
而Matlab作为一种强大的计算工具在图像处理中也发挥着重要的作用。
本文将介绍一些使用Matlab进行图像处理的方法,以帮助读者掌握这一领域的基本技能。
一、读入和显示图像图像处理的第一步是读入和显示图像。
在Matlab中,可以使用imread()函数读取图像,并使用imshow()函数显示图像。
例如,下面的代码将读入名为"image.jpg"的图像,并在Matlab中显示出来。
```image = imread('image.jpg');imshow(image);```二、灰度图像处理在图像处理中,常常需要将彩色图像转换为灰度图像,这可以通过将RGB通道的像素值取平均得到。
Matlab提供了rgb2gray()函数来实现这一转换。
例如,下面的代码将读入一个彩色图像,并将其转换为灰度图像。
```image = imread('image.jpg');gray_image = rgb2gray(image);imshow(gray_image);```三、图像的尺寸调整有时候我们需要调整图像的尺寸,比如缩小或者放大图像,以适应不同的应用场景。
Matlab中提供了imresize()函数来实现这一功能。
下面的代码将读入一个图像,并将其尺寸调整为原来的一半。
```image = imread('image.jpg');resized_image = imresize(image, 0.5);imshow(resized_image);```四、图像的滤波滤波是图像处理中常用的技术,它能够增强或者减弱图像中的某些特征。
在Matlab中,可以使用imfilter()函数来实现各种滤波操作。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
imwrite(A,FILENAME,FMT)
FILENAME参数指定文件名。FMT为保存文件采用的格式。 imwrite(I6,'nirdilatedisk2TTC10373.bmp');
Matlab 数字图像处理
内容安排
/1、图像的读取和显示 /2、图像的点运算 /3、图像的几何变换 /4、空间域图像增强 /5、频率域图像增强 /6、彩色图像处理 /7、形态学图像处理 /8、图像分割 /9、特征提取
/1、图像的读取和显示
一、图像的读取
A=imread(FILENAME,FMT)
t clo kg s
c为尺度比例常数,s为源灰度值,t为变换后的目标灰 度值。k为常数。灰度的对数变换可以增强一幅图像 中较暗部分的细节,可用来扩展被压缩的高值图像中 的较暗像素。广泛应用于频谱图像的显示中。
Warning:log函数会对输入图像矩阵s中的每个元素进行
操作,但仅能处理double类型的矩阵。而从图像文件中得到的 图像矩阵大多是uint8类型的,故需先进行im2double数据类型 转换。
I=imread('nir.bmp');%读入图像
F=fft2(im2double(I));%FFT F=fftshift(F);%FFT频谱平移
F=abs(F); T=log(F+1);%频谱对数变换 figure;imshow(F,[]);title('未经变换的频谱'); figure;imshow(T,[]);title('对数变换后');
rgb2gray;从RGB图创建灰度图,存储类型不变。 im2uint8 将图像转换成uint8类型
im2double 将图像转换成double类型
/2、图像的点运算
一、图像直方图
灰度直方图描述了一副图像的灰度级统计信息,主要应用于图像分 割和图像灰度变换等处理过程中。从数学角度来说,图像直方图描述图 像各个灰度级的统计特性,它是图像灰度值的函数,统计一幅图像中各 个灰度级出现的次数或概率。归一化直方图可以直接反映不同灰度级出 现的比率。横坐标为图像中各个像素点的灰度级别,纵坐标表示具有各 个灰度级别的像素在图像中出现的次数或概率。
添 加 高 斯 白 噪 声
添 加 椒 盐 噪 声
/4、空间域图像增强 二、空间域滤波
滤波过程就是在图像f(x,y)中逐点移动模板,使模板中心和点(x,y)重合,滤波器 在每一点(x,y)的响应是根据模板的具体内容并通过预先定义的关系来计算的。
W(-1,-1) W(-1,0) W(-1,1)
W(0,-1) W(0,0) W(0,1)
h=medfilt2(I1,[m,n]);
m和n为中值滤波处理的模板大小,默认3*3
/4、空间域图像增强
五、图像锐化
图像锐化主要用于增强图像的灰度跳变部分,主要通过运算导数(梯度) 或有限差分来实现。主要方法有:Robert交叉梯度,Sobel梯度,拉普拉 斯算子,高提升滤波,高斯-拉普拉斯变换。
/1、图像的读取和显示
三、图像的显示
imshow(I,[low high])
I为要显示的图像矩阵。[low high]为指定显示灰度图像的灰度范围。 高于high的像素被显示成白色;低于low的像素被显示成黑色;介于 High和low之间的像素被按比例拉伸后显示为各种等级的灰色。 figure;imshow(I6);title('The Main Pass Part of TTC10373');
/3、图像的几何变换 二、图像镜像
B=imtransform(A,TFORM,method); TFORM=makeform(transformtype,Matrix);%空间变换结构
Method合法值 ‘bicubic’ ‘bilinear’ ‘nearest’
含义 双三次插值 双线性插值 最近邻插值
原 图 像
滤 波 后 图
像
/4、空间域图像增强 三、滤波器设计
h=fspecial(type,parameters)
parameters为可选项,是和所选定的滤波器类型type相关的 配置参数,如尺寸和标准差等。
type为滤波器的类型。其合法值如下:
合法取值 ‘average’
‘disk’ ‘gaussian’ ‘laplacian’
[J,T]=histeq(I);%J为输出图像,T为变换矩阵
图像易受光照、视角、方位、噪声等的影响。使得同一类图像的不同变形 体之间的差距有时大于该类图像与另一类图像之间的差距,影响图像识别、 分类。图像归一化就是将图像转换到唯一的标准形式以抵抗各种变换,从 而消除同类图像不同变形体之间的外观差异。也称为图像灰度归一化。
W(1,-1) W(1,0) W(1, 1)
f(x-1,y-1) f(x-1,y) f(x-1,y+1+1)
f(x+1,y-1) f(x+1,y) f(x+1,y+1)
B=imfilter(f,w,option1,option2,…);
f 为要进行滤波操作的图像。 w为滤波操作使用的模板,为一个二维数组,可自己定义。 option1……是可选项,包括: 1、边界选项(’symmetric’、’replicate’、’circular’) 2、尺寸选项(’same’、’full’) 3、模式选项(’corr’、’conv’)
‘log’ ‘prewitt’ ‘sobel’
功能 平均模板 圆形领域的平均模板 高斯模板 拉普拉斯模板 高斯-拉普拉斯模板 Prewitt水平边缘检测算子 Sobel水平边缘检测算子
/4、空间域图像增强 四、中值滤波
中值滤波本质上是一种统计排序滤波器。中值不同于均值,是指排序 队列中位于中间位置的元素的值。中值滤波并非线性滤波器。对于某 些类型的随机噪声具有非常理想的降噪能力。典型的应用就是消除椒 盐噪声。
kittlerMet : 表示kittler 最小分类错误(minimum error thresholding)全局二 值化算法。
直
原
接
图
阈
像
值
分
割
0.25
算 法
算 法 算 法
割
分
法
算
OTSU
Niblack
KittlerMet
Kapur
割
分
值
阈
动
自
/2、图像的点运算
五、直方图均衡化
DBf DA D A M 0 aiD x A 0Hi
BW=im2bw(I,level);%level为人工设定阈值范围为[0 ,1]
thresh=graythresh(I);%自动设定所需的最优化阈值
OTSU算法:最大类间方差法自动单阈值分割。
Kapur算法:一维直方图熵阈值算法
niblack算法:局部阈值分割 阈值的计算公式是T = m + k*v,其中m为以该像素点为中心的区域的平 均灰度值,v是该区域的标准差,k是一个系数。
图像直方图归一化
imhist(I);%灰度直方图
I=imread(‘red.bmp’);%读入图像 figure;%打开新窗口 [M,N]=size(I);%计算图像大小 [counts,x]=imhist(I,32);%计算有32个小区间的灰度直方图 counts=counts/M/N;%计算归一化灰度直方图各区间的值 stem(x,counts);%绘制归一化直方图
/2、图像的点运算
二、灰度的线性变换
D B fD A fA D A fB
Fa>1时,输出图像的对比度将增大;Fa<1时,输出图像对比度将减小。 Fa=1且Fb非零时,所有像素的灰度值上移或下移,使整个图像更暗或 更亮。Fa<0,暗区变亮,亮区变暗。
/2、图像的点运算
三、灰度的对数变换
I=imread('nir.bmp'); figure;imshow(imadjust(I,[],[],0.75)); %gamma=0.5 title('Gamma 0.5');
原 图 像
NIR
Gamma 0.5
Gamma 1.5
四、灰度阈值变换及二值化
f x 2055x x T T
T为指定阈值
/3、图像的几何变换
四、图像中心旋转
B=imrotate(A,angle,method,’crop’);
angle为旋转角度,正值为逆时针旋转。可选参数method为imrotate函数 指定插值方法。‘crop’选项会裁减旋转后增大的图像,保持和原图像 同样大小。
A=imread('nir.bmp'); B=imrotate(A,30,'nearest','crop'); figure;imshow(B);imwrite(B,'逆时针中心旋转30度.bmp');
/2、图像的点运算
三、灰度的Gamma变换
yxesp
其中,x、y的取值范围为[0,1]。esp为补偿系数,r则为Gamma系数。 Gamma变换是根据r的不同取值选择性的增强低灰度区域的对比度 或者高灰度区域的对比度。
J=imadjust(I,[low_in high_in],[low_out high_out],gamma)
/3、图像的几何变换
I=imread('nir.bmp'); se=translate(strel(1),[180 190]); B=imdilate(I,se); figure;subplot(1,2,1),subimage(I);title('原图像'); subplot(1,2,2),subimage(B);title('平移后图像');