将3D矩阵十进制实体转换为3D二进制实体

时间:2018-03-21 08:15:34

标签: matlab

基本上我有一个rgb实体的3d矩阵,我想把它改成一个8位的3d二进制实体,如果有任何身体可以帮助的话。

A(:,:,1) = [123 7 8; 1 98 4; 64 39 6];
A(:,:,2) = [1 0 4; 3 6 5; 9 8 80];
A(:,:,3) = [7 96 3; 4 5 67; 129 9 98];

B(:,:,1) = [01111010 00000111 00001000; 00000001 01100010 00000100; 01000000 00100111 00000110];
B(:,:,2) = [00000001 00000000 00000100; 00000011 00000110 00000101; 00001001 00001000 01010000];
B(:,:,3) = [00000111 01100000 00000011; 00000100 00000101 01000011; 10000001 00001001 01100010];

1 个答案:

答案 0 :(得分:2)

dec2bin将十进制转换为二进制字符向量。 cellstr用于将它们转换为单元格数组,以使所需的reshaping成为可能。

B = reshape(cellstr(dec2bin(A)), size(A));