Açıklama: Verilen resimdeki bit tabakalarını çizer.

Girdi: img -> Renkli veya gri seviye resim

Çıktı: Yok

Örnek:

% Diskten bir resim okuyalim
imgem = imread('test_resmim.png');
bitTabakalariniGoster(imgem)

Kaynak kod

% bitTabakalariniGoster.m: Verilen resimdeki bit tabakalarini cizer
%
% Girdi: img -> Renkli veya gri seviye resim
% Cikti: Yok
%
% Ornek: imgem = imread('test_resmim.png'); % Diskten bir resim okuyalim
%        bitTabakalariniGoster(imgem)
% 
 
function bitTabakalariniGoster(img)
% Gelen resim renkli (RGB) ise griye cevirelim
if size(img, 3) == 3
    imgGri = rgb2gray(img);
end
 
% Resmin formatini 0-255 arasi tam degerlere donusturelim
imgGri = im2uint8(imgGri);
 
k = 128; % 8 bitlik dusunursek 128 == 10000000, yani en onemli biti 1, digerleri 0
 
for b = 1:8 % En soldakinden/onemliden baslayarak her bir bit icin
    subplot(2, 4, b); % Cizilecek hucreyi sec
 
    imgBit = bitand(imgGri, k); % Resim ile k'yi bit bit ve operatorunden gecir
    imgBit = im2bw(imgBit, 0); % 0 Olmayan yerler beyaz olsun, 0'lar siyah.
 
    imshow(imgBit)
    title(['Onem sirasina gore ' int2str(b) '. bit tabakasi'])
 
    k = k/2; % Sagdaki bite atla
end