Matlab 将位图转换为二进制值
我想将位图文件转换成由二进制值组成的数组;但是,当我使用此脚本时:Matlab 将位图转换为二进制值,matlab,bitmap,binary,Matlab,Bitmap,Binary,我想将位图文件转换成由二进制值组成的数组;但是,当我使用此脚本时: arr=imread('sample.bmp'); arrBin=cell(1140,912,3); for i=1:1140 for j=1:912 for k=1:3 arrBin(i,j,k)=dec2bin(arr(i,j,k)); end; end; end; 调试信息显示: Conversion to cell from char is not
arr=imread('sample.bmp');
arrBin=cell(1140,912,3);
for i=1:1140
for j=1:912
for k=1:3
arrBin(i,j,k)=dec2bin(arr(i,j,k));
end;
end;
end;
调试信息显示:
Conversion to cell from char is not possible.
Error in imgProc (line 9)
arrBin(i,j,k)=dec2bin(arr(i,j,k));
>>
有人吗?提前感谢。您需要与{}
一起使用,以便将字符串值从放入单元格数组arrBin
,如下所示:
arrBin{i,j,k} = dec2bin(arr(i,j,k));
在大图像上,您的解决方案将非常慢。你最好这样做:
I=imread('sample.bmp');
A=dec2bin(I,8);%8bit
% this is how you index to array
i=5;j=35;ch=2;
pixel=A(sub2ind(size(I),i,j,ch),:)
多谢各位,;竖起大拇指,谢谢!