Я бы порекомендовал следующий код, который может выполнить то, что вы ищете более непосредственно:
srcBitDepth = 8;
dstBitDepth = 2;
img = imread('cameraman.tif');
subplot(1,2,1); imshow(img,[]);
img = bitshift(img, dstBitDepth-srcBitDepth);
subplot(1,2,2); imshow(img,[]);
Вот результат:
Обратите внимание на уменьшение битов от исходного 8-битного изображения до 2-битного изображения.