新浪博客

基于MATLAB的图像处理基本操作——显示图片并进行灰度和二值化处理

2018-05-15 13:45阅读:
这两天刚用MATLAB来对图像进行基本的操作,发现MATLAB的功能真是如此的强大,可以对一幅图像进行很多快速地操作,对图像处理可谓是一个很好用的软件。 话不多说,首先来看怎么让MATLAB显示一张我们要处理的图片。
基于MATLAB的图像处理基本操作——显示图片并进行灰度和二值化处理
在MATLAB工作区中编写如上代码,即可显示出一张你需要的图片,其中Pic是你给这张图片起的名字,可以任意起,然后imread('')是图片读取函数,引号里面是你要显示的图片的地址。imshow()是图片显示函数,里面的参数就是你刚才给图片起的名字。
图像显示效果如下
基于MATLAB的图像处理基本操作——显示图片并进行灰度和二值化处理

接下来我们对这张图片进行灰度处理:
基于MATLAB的图像处理基本操作——显示图片并进行灰度和二值化处理
继续在MATLAB工作区中编写如上代码,即可对刚才的那张图片进行灰度处理,并进行显示。
其中pic_gray同样是对灰度处理之后生成的图片起的名字,可以随便起。rgb2gray()是将彩色的的图片转化为灰度图像,即黑白图像,里面的参数就是我们要处理的图片的名字。然后figure,imshow()同样也是显示函数,这里面的figure的意思是可以让MATLAB同时打开多个图像显示窗口,如果不用figure,那么进行灰度处理之后的图像显示出来会把刚才显示的图像覆盖掉。而我们想让处理前的和处理后的都显示出来,那就用figure语句就行了。figure后面的imshow()就还是图像显示函数。
图像显示效果如下
基于MATLAB的图像处理基本操作——显示图片并进行灰度和二值化处理
接下来我们对原始图像进行二值化处理:
基于MATLAB的图像处理基本操作——显示图片并进行灰度和二值化处理
继续在MATLAB工作区中编写如上代码,即可对原始图片进行二值化处理,并进行显示。
其中的graythresh()函数目前我刚接触还不是太理解他是什么意思。而im2bw()函数很明显就是将图片转化为二值化图片,至于里面的参数调用我还是不太了解,以后继续学习。然后就是figure和imshow()对图片进行显示了。
图像显示效果如下
基于MATLAB的图像处理基本操作——显示图片并进行灰度和二值化处理
经过以上的操作,我们已经可以实现对一张图片进行显示、灰度处理、二值化处理等操作,以后对图像的处理我将会继续更新。
总的源代码如下:
pic=imread('C:\Users\Admin\Desktop\picture\2.jpg');
imshow(pic);
pic_gray=rgb2gray(pic);
figure,imshow(pic_gray);
lev=graythresh(pic);
pic_bwimg=im2bw(pic,lev);
figure,imshow(pic_bwing);

我的更多文章

下载客户端阅读体验更佳

APP专享