图像的二值化处理matlab
时间: 2023-10-22 17:28:36 浏览: 112
matlab图像二值化处理
在MATLAB中,可以使用不同的方法进行图像的二值化处理。其中一种方法是通过imbinarize函数,该函数用于将灰度图像转换为二值图像。首先,使用rgb2gray函数将RGB图像转换为灰度图像。然后,使用imbinarize函数确定一个阈值,将图像分成背景和目标两部分。最后,使用imshow函数显示二值图像。以下是一个示例代码:
I = imread('keyan.jfif'); %读取原图
Ih = rgb2gray(I); % RGB图像转化成灰度图像
I2 = imbinarize(Ih); % 使用imbinarize函数进行二值化处理
subplot(121)
imshow(Ih) % 显示灰度图
title('灰度图');
subplot(122)
imshow(I2) % 显示二值图
title('二值图');
另外,还可以使用im2bw函数进行二值化处理。该函数可选择自动确定阈值或手动设定阈值。以下是一个示例代码:
I = imread('keyan.jfif'); %读取原图
Ih = rgb2gray(I); % RGB图像转化成灰度图像
thresh1 = graythresh(I); % 针对原图自动确定二值化阈值
I21 = im2bw(I,thresh1); % 对图像直接进行二值化
subplot(223)
imshow(I21) % 显示二值化之后的图像
title('RGB图像转化为二值化图像')
另外,还可以使用histeq函数进行二值化处理。该函数可将图像的灰度级数改为指定的值,例如2,即得到二值图像。以下是一个示例代码:
I = imread('keyan.jfif'); %读取原图
Ih = rgb2gray(I); % RGB图像转化成灰度图像
I22 = histeq(Ih,2); % 将图像灰度级数改为2,即二值图像
subplot(224)
imshow(I22) % 显示二值图像
title('灰度图像转化为二值化图像')
需要注意的是,这些函数需要MATLAB的Image Processing Toolbox。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [MATLAB图像处理(二):图像转二值图](https://blog.csdn.net/wmz_Gavin/article/details/128449046)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
阅读全文