|
楼主 |
发表于 2012-8-29 21:17:20
|
显示全部楼层
- clc; clear all;
- A = imread('rice.png');
- [r, c] = size(A);
- % 读取图片,获取图像阵行列大小
- A_bin1 = []; A_bin2 = []; A_bin3 = []; A_bin4 = [];
- A_bin5 = []; A_bin6 = []; A_bin7 = []; A_bin8 = [];
- % 分别存储8位
- for i = 1 : r
- r_bin1 = []; r_bin2 = []; r_bin3 = []; r_bin4 = [];
- r_bin5 = []; r_bin6 = []; r_bin7 = []; r_bin8 = [];
- % 分别存储8位矩阵对应的行
- dec_col = zeros(1, 8);
- for j = 1 : c
- num_bin = dec2bin( A(i, j) );
- for k = 1 : length(num_bin)
- str_bin = '00000000';
- % uint8占1bit,8位
- str_bin(k) = num_bin( length(num_bin) - k + 1 );
- % 获取对应的位上的数值
- dec_temp = bin2dec(str_bin);
- % 转成十进制的
- dec_col(k) = dec_temp;
- end
- r_bin1 = [r_bin1, dec_col(1)]; r_bin2 = [r_bin2, dec_col(2)];
- r_bin3 = [r_bin3, dec_col(3)]; r_bin4 = [r_bin4, dec_col(4)];
- r_bin5 = [r_bin5, dec_col(5)]; r_bin6 = [r_bin6, dec_col(6)];
- r_bin7 = [r_bin7, dec_col(7)]; r_bin8 = [r_bin8, dec_col(8)];
- end
- A_bin1 = [A_bin1; r_bin1]; A_bin2 = [A_bin2; r_bin2];
- A_bin3 = [A_bin3; r_bin3]; A_bin4 = [A_bin4; r_bin4];
- A_bin5 = [A_bin5; r_bin5]; A_bin6 = [A_bin6; r_bin6];
- A_bin7 = [A_bin7; r_bin7]; A_bin8 = [A_bin8; r_bin8];
- end
- figure;
- subplot(3, 3, 1); imshow(A); title('origin image');
- subplot(3, 3, 2); imshow(A_bin1); title('1 image');
- subplot(3, 3, 3); imshow(A_bin2); title('2 image');
- subplot(3, 3, 4); imshow(A_bin3); title('3 image');
- subplot(3, 3, 5); imshow(A_bin4); title('4 image');
- subplot(3, 3, 6); imshow(A_bin5); title('5 image');
- subplot(3, 3, 7); imshow(A_bin6); title('6 image');
- subplot(3, 3, 8); imshow(A_bin7); title('7 image');
- subplot(3, 3, 9); imshow(A_bin8); title('8 image');
复制代码 |
|