如何用MATLAB将图片转换只含有0,1的矩阵

2025-04-15 21:46:23

1、首先,读取目标图像;matlab代码如图所示tu=imread('C:\Users\Administrator\Desktop\111.png'); %也可以直接读取,但图像须在默认目录内。

如何用MATLAB将图片转换只含有0,1的矩阵
如何用MATLAB将图片转换只含有0,1的矩阵

2、将目标图像灰度化,代码如下,如图所示。x=rgb2gray(tu);>> subplot(122);>> imshow(x);>> title('灰度图像');

如何用MATLAB将图片转换只含有0,1的矩阵
如何用MATLAB将图片转换只含有0,1的矩阵

3、灰度图像二值化:设定阈值,将灰度图转化为黑白图像,阈值的设定根据自传陔侔抒己的情况而定,比如设置0.48,也可以使用matlab调用graythresh(x)自动获取阈值。自动阈值:thresh1=graythresh(x): %thresh1=0.5216 tu2 = im2bw(x,thresh1); %如图所示

如何用MATLAB将图片转换只含有0,1的矩阵
如何用MATLAB将图片转换只含有0,1的矩阵

4、RGB图像二值化:和灰度二值化相同,既可以自己设置阈值,也可以调用函数获取阈值。自动获取:thresh2=graythresh(tu):%thresh1=0.5843 tu3 = im2bw(x,thresh2);%如图所示由于两图阈值比较接近,故二值化图像没有明显变化。

如何用MATLAB将图片转换只含有0,1的矩阵
如何用MATLAB将图片转换只含有0,1的矩阵

5、訇咀喃谆将二值化图像转化为矩阵,就能实现将图像转化为只含有0和1的矩阵。图像转换数字矩阵只需用Matlab读取二值化图像即可。例:Matrix1=imread('tu2&垆杪屑丝#39;); Matrix3=imread('tu3');2、或者在以上步骤的基础上导出二值化(tu2,tu3)结果即可(在Matlab中Workspace) ,csvwrite('0和1矩阵x.csv',tu2); % 导出矩阵csvwrite('0和1矩阵tu.csv',tu3); % 导出矩阵如图所示。

如何用MATLAB将图片转换只含有0,1的矩阵
如何用MATLAB将图片转换只含有0,1的矩阵
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢