数字图像处理以及运用MATLAB实现的基本方法
2014-08-08谷晓琳潘迪杨润耀
谷晓琳+潘迪+杨润耀
摘要:21世纪是信息化的世纪,在现代高速发展的社会中,获取信息的技术不断得到改进,因此,对于图像——这一最基本的消息载体的处 理也有着越来越高的要求。数字化的图像处理已经成为现代科学领域的研究热点。而MATLAB软件具有十分强大的处理信号及图像的功能,在它的函数中具有傅里叶变换及其反变换等比较常用的功能,而图像处理经常用到的小波变换如哈尔小波变换等也可以运用MATLAB来实现。
关键词:数字图像处理;运用;MATLAB
1数字信号的概念
信号根据其在幅值和时间上的连续与否可以分为模拟信号和数字信号。在我们的生活中大部分信号都是模拟信号,如声音,图像等等。但是在数字计算机中能够处理的信号是数字化以后的信号,即在幅值上和时间上都是离散的信号,也就是我们通常所说的“数字信号”。(模拟信号是指信息参数在给定范围内表现为连续的信号)。
2实现数字图像处理的系统
一般情况下,实现数字图像处理的系统基本的流程如下:图像输入的模拟信号经过图像数字化设备将其转换为数字计算机可以处理的数字信号,继而由图像处理计算机(软件)来实现对于图像的进一步处理(图像的压缩,复原,及进行边缘检测等),最后由图像输出设备输出经过处理的图像,整个数字图像处理得以完成。
3MATLAB实现平均值降噪
一般情况下,由实际的场景图像转换为数字信息时,会有各种噪声的影响,导致失真的发生。下面就是当图片受到高斯噪声的影响时,运用平均值降低噪声影响的一个实例。
图1
图2图3
当运用imread 函数读图片信息后(保存在X中),在workspace里生成一个512*512的矩阵,每个单元存放的数据为8bits,而后将原图片加上高斯噪音组成图2所示图片。利用1000次相加求其平均值的算法,将噪声的影响减小,得出图3所示的处理后的图像。
此外值得注意的是,当两个矩阵相加时,在MATLAB中需要其大小和数据类型相同,因此才有了G0=im2double(G)的语句。运用MATLAB实现“差影法”从混合图片中取出所需图片如在加有高斯噪声【G~N(0.0.01)】的图片中采样噪声的信息,其主要程序编码如下:
G=imsubtract(H,I);
subplot(1,3,1);imshow(H);
subplot(1,3,2);
imshow(I);subplot(1,3,3);imshow(G);
图4图5图6
由于噪声是和原图片混叠在一起的,我们现在需要给提取噪声,因此,利用“差影法”很容易就实现了,其函数为subtract(H,I),即将两幅图片做减法运算。在用MATLAB实现的编码很简单,但是我们会发现有一个很明显的问题,即在图6中大部分区域为黑色,会造成图像看起来很不方便,因此常常采用将图片求反后输出,例程如下:
>>I=imread(‘lenna_gray.png);
H=imnois(I,gaussian,0,0,01);
G=imsubtract(H,I);
subplot(1,3,1);imshow(H);
subplot(1,3,2);imshow(I);
subplot(1,3,3);imshow(G);
>>G0=255-G;
>>imshow(G0);
图7图像经取反后的输出
以上两个实例是MATLAB在数字图像处理中的基本应用,另外,利用MATLAB可以实现小波变换,如哈尔小波变换,其公式如下:
设H=则A是H的哈尔变换即
这是最简单的二维变换。还有DCT,KLT等很多的变换都可以用MATLAB完成,有利而方便的分析图像内所包含的信息,对图像进行处理。
4意义及应用
图像是人类获取和交换信息的主要来源,因此,图像处理的应用领域必然涉及到人类生活和工作的方方面面。随着人类活动范围的不断扩大,图像处理的应用领域也将随之不断扩大。基于MATLAB的数字图像处理技术也更加的受到人们的重视,数字图像处理技术还有着很大的发展和提升空间。
摘要:21世纪是信息化的世纪,在现代高速发展的社会中,获取信息的技术不断得到改进,因此,对于图像——这一最基本的消息载体的处 理也有着越来越高的要求。数字化的图像处理已经成为现代科学领域的研究热点。而MATLAB软件具有十分强大的处理信号及图像的功能,在它的函数中具有傅里叶变换及其反变换等比较常用的功能,而图像处理经常用到的小波变换如哈尔小波变换等也可以运用MATLAB来实现。
关键词:数字图像处理;运用;MATLAB
1数字信号的概念
信号根据其在幅值和时间上的连续与否可以分为模拟信号和数字信号。在我们的生活中大部分信号都是模拟信号,如声音,图像等等。但是在数字计算机中能够处理的信号是数字化以后的信号,即在幅值上和时间上都是离散的信号,也就是我们通常所说的“数字信号”。(模拟信号是指信息参数在给定范围内表现为连续的信号)。
2实现数字图像处理的系统
一般情况下,实现数字图像处理的系统基本的流程如下:图像输入的模拟信号经过图像数字化设备将其转换为数字计算机可以处理的数字信号,继而由图像处理计算机(软件)来实现对于图像的进一步处理(图像的压缩,复原,及进行边缘检测等),最后由图像输出设备输出经过处理的图像,整个数字图像处理得以完成。
3MATLAB实现平均值降噪
一般情况下,由实际的场景图像转换为数字信息时,会有各种噪声的影响,导致失真的发生。下面就是当图片受到高斯噪声的影响时,运用平均值降低噪声影响的一个实例。
图1
图2图3
当运用imread 函数读图片信息后(保存在X中),在workspace里生成一个512*512的矩阵,每个单元存放的数据为8bits,而后将原图片加上高斯噪音组成图2所示图片。利用1000次相加求其平均值的算法,将噪声的影响减小,得出图3所示的处理后的图像。
此外值得注意的是,当两个矩阵相加时,在MATLAB中需要其大小和数据类型相同,因此才有了G0=im2double(G)的语句。运用MATLAB实现“差影法”从混合图片中取出所需图片如在加有高斯噪声【G~N(0.0.01)】的图片中采样噪声的信息,其主要程序编码如下:
G=imsubtract(H,I);
subplot(1,3,1);imshow(H);
subplot(1,3,2);
imshow(I);subplot(1,3,3);imshow(G);
图4图5图6
由于噪声是和原图片混叠在一起的,我们现在需要给提取噪声,因此,利用“差影法”很容易就实现了,其函数为subtract(H,I),即将两幅图片做减法运算。在用MATLAB实现的编码很简单,但是我们会发现有一个很明显的问题,即在图6中大部分区域为黑色,会造成图像看起来很不方便,因此常常采用将图片求反后输出,例程如下:
>>I=imread(‘lenna_gray.png);
H=imnois(I,gaussian,0,0,01);
G=imsubtract(H,I);
subplot(1,3,1);imshow(H);
subplot(1,3,2);imshow(I);
subplot(1,3,3);imshow(G);
>>G0=255-G;
>>imshow(G0);
图7图像经取反后的输出
以上两个实例是MATLAB在数字图像处理中的基本应用,另外,利用MATLAB可以实现小波变换,如哈尔小波变换,其公式如下:
设H=则A是H的哈尔变换即
这是最简单的二维变换。还有DCT,KLT等很多的变换都可以用MATLAB完成,有利而方便的分析图像内所包含的信息,对图像进行处理。
4意义及应用
图像是人类获取和交换信息的主要来源,因此,图像处理的应用领域必然涉及到人类生活和工作的方方面面。随着人类活动范围的不断扩大,图像处理的应用领域也将随之不断扩大。基于MATLAB的数字图像处理技术也更加的受到人们的重视,数字图像处理技术还有着很大的发展和提升空间。
摘要:21世纪是信息化的世纪,在现代高速发展的社会中,获取信息的技术不断得到改进,因此,对于图像——这一最基本的消息载体的处 理也有着越来越高的要求。数字化的图像处理已经成为现代科学领域的研究热点。而MATLAB软件具有十分强大的处理信号及图像的功能,在它的函数中具有傅里叶变换及其反变换等比较常用的功能,而图像处理经常用到的小波变换如哈尔小波变换等也可以运用MATLAB来实现。
关键词:数字图像处理;运用;MATLAB
1数字信号的概念
信号根据其在幅值和时间上的连续与否可以分为模拟信号和数字信号。在我们的生活中大部分信号都是模拟信号,如声音,图像等等。但是在数字计算机中能够处理的信号是数字化以后的信号,即在幅值上和时间上都是离散的信号,也就是我们通常所说的“数字信号”。(模拟信号是指信息参数在给定范围内表现为连续的信号)。
2实现数字图像处理的系统
一般情况下,实现数字图像处理的系统基本的流程如下:图像输入的模拟信号经过图像数字化设备将其转换为数字计算机可以处理的数字信号,继而由图像处理计算机(软件)来实现对于图像的进一步处理(图像的压缩,复原,及进行边缘检测等),最后由图像输出设备输出经过处理的图像,整个数字图像处理得以完成。
3MATLAB实现平均值降噪
一般情况下,由实际的场景图像转换为数字信息时,会有各种噪声的影响,导致失真的发生。下面就是当图片受到高斯噪声的影响时,运用平均值降低噪声影响的一个实例。
图1
图2图3
当运用imread 函数读图片信息后(保存在X中),在workspace里生成一个512*512的矩阵,每个单元存放的数据为8bits,而后将原图片加上高斯噪音组成图2所示图片。利用1000次相加求其平均值的算法,将噪声的影响减小,得出图3所示的处理后的图像。
此外值得注意的是,当两个矩阵相加时,在MATLAB中需要其大小和数据类型相同,因此才有了G0=im2double(G)的语句。运用MATLAB实现“差影法”从混合图片中取出所需图片如在加有高斯噪声【G~N(0.0.01)】的图片中采样噪声的信息,其主要程序编码如下:
G=imsubtract(H,I);
subplot(1,3,1);imshow(H);
subplot(1,3,2);
imshow(I);subplot(1,3,3);imshow(G);
图4图5图6
由于噪声是和原图片混叠在一起的,我们现在需要给提取噪声,因此,利用“差影法”很容易就实现了,其函数为subtract(H,I),即将两幅图片做减法运算。在用MATLAB实现的编码很简单,但是我们会发现有一个很明显的问题,即在图6中大部分区域为黑色,会造成图像看起来很不方便,因此常常采用将图片求反后输出,例程如下:
>>I=imread(‘lenna_gray.png);
H=imnois(I,gaussian,0,0,01);
G=imsubtract(H,I);
subplot(1,3,1);imshow(H);
subplot(1,3,2);imshow(I);
subplot(1,3,3);imshow(G);
>>G0=255-G;
>>imshow(G0);
图7图像经取反后的输出
以上两个实例是MATLAB在数字图像处理中的基本应用,另外,利用MATLAB可以实现小波变换,如哈尔小波变换,其公式如下:
设H=则A是H的哈尔变换即
这是最简单的二维变换。还有DCT,KLT等很多的变换都可以用MATLAB完成,有利而方便的分析图像内所包含的信息,对图像进行处理。
4意义及应用
图像是人类获取和交换信息的主要来源,因此,图像处理的应用领域必然涉及到人类生活和工作的方方面面。随着人类活动范围的不断扩大,图像处理的应用领域也将随之不断扩大。基于MATLAB的数字图像处理技术也更加的受到人们的重视,数字图像处理技术还有着很大的发展和提升空间。