matlab下的彩色图像转换成二值图像并保存
在matlab平台下,为了得到二值图像,先是用函数im2bw将彩色图像转换成二值图像,然后用imwrite函数生成指定路径的二值图像。
这里用到的例子是将彩色图像(64×64×3 uint8型图像数组)转换成二值图像(64×64 logical型图像数组)。
matlab程序如下:
//读数据
subplot(1, 2, 1);
a = imread('watermark2.bmp');
imshow(a);
title('原图');
//彩色图像二值化
subplot(1, 2, 2);
thresh = graythresh(a);//自动确定阈值
b = im2bw(a, thresh);
imshow(b);
title('二值化');
//生成bmp格式的二值图像
str1 = 'C:\路径\';
str2 = 'binary_image2';
str3 = '.bmp';
save_path = [str1, str2, str3];
imwrite(b, save_path);
程序执行结果:
除此之外,在指定的文件夹中会生成一个二值图像"binary_image2.bmp"