matlab灰度图能做什么,Matlab对图像分别进行灰度化与二值化

该博客介绍了如何使用MATLAB进行图像处理,包括将RGB图像转化为灰度图,然后自动确定阈值进行二值化。作者强调了在二值化后对图像求反的重要性,以确保正确计算图像特征的分形维数。博客中提供了代码示例,展示了批量处理和保存二值化图像的过程。
摘要由CSDN通过智能技术生成

function z = r2gb( data )

%函数的功能为将一个rgb图像数据转化为灰度数据、二值数据

gray_data = rgb2gray(data);

%把RGB图像(三维矩阵)转化成灰度图像,得到的gray_data是一个八阶灰度的二维矩阵

%这里的gray_data是uint8类型的数据,是不能被fraclab处理的

threshold = graythresh(gray_data);%自动确定二值化阈值

binary_data = im2bw(gray_data,threshold);%对图像进行二值化

%把一个灰度图像转化成二值图像,这里得到的binary_data是一个逻辑型数据,无法被FracLab识别

binary_data_double = double(binary_data);%把逻辑型数据转化成双精度的数值型数据以用于后续的操作

binary_data_reverse_double = double(~binary_data);%对二值数据求反并转换为数值型数据

%%=======================================这里很重要==========================================

%之所以要求反,是因为对于二值图像而言白色区域为1,黑色区域为0

%很多图像的图像特征是用黑色曲线来表征的,这样的图像经过二值化之后数值为1的点对应的是背景

%导致最终计算得到的是背景的分形维数而不是我们想要的曲线的分形维数,这种情况下需要对图像进行求反

%后续的数据操作对象为binary_data_reverse

%如果图像本身就是用白色曲线来表征它的特征,则后续的数据操作对象为binary_data

%%=================

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值