MATLAB图像处理:人为加噪声及图像读取

需积分: 1 0 下载量 154 浏览量 更新于2024-07-12 收藏 3.74MB PPT 举报
本文档是关于在MATLAB中人为加噪声进行图像处理的讲义,主要介绍了如何使用`imnoise`函数添加不同类型的噪声到图像中,以及MATLAB中的图像读取、显示和信息获取的基本操作。 在MATLAB中,人为加噪声是一个常见的图像处理任务,用于模拟现实世界中图像可能遇到的各种干扰。`imnoise`函数是一个强大的工具,能够方便地向图像添加噪声。在提供的代码示例中,`imnoise`被用来向名为'eight.tif'的图像添加三种不同类型的噪声:高斯噪声、椒盐噪声和乘性噪声。这些噪声类型分别通过函数的不同参数设置实现: 1. `J1=imnoise(I, 'gaussian',0,0.02);` 这一行向图像添加了均值为0,标准差为0.02的高斯噪声。高斯噪声通常模拟环境温度变化等随机影响。 2. `J2=imnoise(I, 'salt & pepper',0.02);` 椒盐噪声则会随机在图像上插入黑色(盐)和白色(胡椒)像素,比例为0.02,模拟传感器缺陷或灰尘。 3. `J3=imnoise(I, 'speckle',0.02);` 乘性噪声是基于图像本身强度的噪声,这里乘以一个0.02的标准差随机变量,导致局部亮度的不均匀变化。 `subplot`函数在MATLAB中用于多图像的布局和显示。在示例中,它将窗口分为2行2列的四个部分,并按照顺序显示原图和三种噪声处理后的图像,便于比较分析。 此外,讲义还简要提到了MATLAB图像处理的一些基础操作: - `imread`函数用于读取图像文件,可以返回图像数据矩阵`X`以及颜色映射`MAP`(如果图像为索引图像)。例如,`I=imread('filename')`会读取指定图像文件并将其数据存储在变量`I`中。 - `imfinfo`函数可以获取图像文件的相关信息,如图像尺寸、类型、颜色空间等,返回的结果是一个结构体。 - MATLAB中的图像类别主要包括真彩图像、索引图像、灰度图像和二值图像,每种类型的图像数据格式和处理方式都有所不同。 - 图像显示主要用到的函数有`imshow`,它能显示图像,并可选设置灰度级;`colorbar`创建与图像相关的颜色条;`subimage`用于在一个窗口内显示多个子图像,常用于比较。 这个讲义涵盖了MATLAB图像处理的基本操作,特别是加噪声的实用方法,对于理解和实践图像处理非常有帮助。