matlab 细化函数,MATLAB图像处理工具箱函数(细化篇).doc

本文详细介绍了使用MATLAB进行图像处理的步骤,包括读取和显示图像、直方图均衡化、背景扣除、对比度调节、二值化、对象检测和统计分析。通过实例展示了如何对灰度图像进行一系列高级操作,如形态学开运算、图像减背、调整对比度、阈值处理、对象计数和属性测量。
摘要由CSDN通过智能技术生成

MATLAB图像处理工具箱函数(细化篇)

第3章 MATLAB数字图像处理工具箱

3.1 MATLAB图像预处理

3.1.1 图像处理的基本操作

1. 读入并显示一幅图像

clear %清除所有的工作平台变量

close all %关闭已打开的图形窗口

I=imread ('pout.tif'); %读取图像pout.tif(该图像是图像处理工具箱自带的图像),

%存储在一个名为I的数组中

imshow(I) %显示图像I

2. 检查内存中的图像

whos %查看图像数据I是如何存储在内存中的。

3. 实现直方图均衡化

figure %生成一个新的图形窗口,避免后面的图像覆盖前面图像的显示

imhist(I) %创建描述图像I灰度分布的直方图

I2=histeq(I); %将图像的灰度值扩展到整个灰度范围,从而提高图像数组I的对比度。

figure,imshow(I2) %显示修改过的图像I2

figure,imhist(I2) %显示拓展后的灰度值的分布情况

4. 保存图像

imwrite(I2,'pout.png'); %将图像I2以PNG图像文件格式保存到磁盘

5. 检查新生成文件的内容

imfinfo('pout2.png') %观察保存的图像文件信息

3.1.2 图像处理的高级应用

主要对一幅灰度图像rice.tif进行一些较为高级的操作为例说明整个过程。

1. 读取和显示图像

clear %清除所有的工作平台变量

close all %关闭已打开的图形窗口

I=imread('rice.png'); %读取图像rice.png (该图像是图像处理工具箱自带的图像)

imshow(I) %显示图像

2. 估计图像背景

background=imopen(I,strel('disk',15)); %对图像I进行形态学开操作,删除那些不完全包括

%在半径为15的圆盘中的对象,实现对背景亮度的估计

figure,imshow(background)

figure,surf(double(background(1:8:end,1:8:end))),zlim([0 255]); %以表面形式显示背景

3. 从原始图像中减去背景图像

I2=imsubtract(I,background); %将背景图像background从原始图像I中减去

figure,imshow(I2)

4. 调节图像对比度

I3=imadjust(I2,stretchlim(I2),[0 1]); %调节图像的对比度

figure,imshow(I3);

5. 使用阈值操作将图像转换为二进制图像

level=graythresh(I3);

bw=im2bw(I3,level);

figure,imshow(bw)

6. 检查图像中的对象个数

[labeled,numObjects]=bwlabel(bw,4); %确定图像中的米粒个数

numObjects

101

7. 检查标记矩阵

grain=imcrop(labeled) %选择并显示已标记的对象和部分背景内的像素

RGB_label=label2rgb(labeled,@spring,'C','shuffle');

%将标记矩阵显示为一副伪彩色的索引图像,在伪彩色的彩色图像中,

%标记矩阵中的每一个对象都将被映射为相关调色板中的不同颜色

imshow(RGB_label);

8.计算图像中对象的统计属性

graindata=regionprops(labeled,'basic')

%测量图像或者区域的属性,并返回一个结构数组。当用于一个标记图像时,%它还为每一个标记分量创建一个结构元素。

graindata(51).Area %显示第51个元素的属性

graindata(51).BoundingBox,graindata(51).Centroid %寻找最近的边缘和中心

allgrains=[graindata.Area]; %创建一个新的向量allgrains,其包含每个米粒的范围

allgrains(51) %查看第51个元素的范围

max(allgrains) %获取最大的米粒大小

biggrain=find(allgrains==404) %返回最大米粒的标记号

mean(allgrains) %获取米粒的平均大小

hist(allgrains,20) %绘制包含20个柱的直方

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值