Converts image to binary representation and dyes it with two random colors. The code ensures that the colors and channel values will never be the same.
A=imread('kytka256.jpg'); Ag = rgb2gray(A);% covert to grayscale colors = randperm(256,6) -1;% get 6 random numbers from 0 to 255 Ab = imbinarize(Ag);%convert to binary image Ab_3D = repmat(Ab,[1 1 3]);%replicate binary image to 3 dimensions R = Ab*colors(1) + ~Ab*colors(2);% 1 * color = color G = Ab*colors(3) + ~Ab*colors(4); B = Ab*colors(5) + ~Ab*colors(6); Ab_RGB = cat(3,R,G,B);%merging in 3th dimension imshow(uint8(Ab_RGB));
Something is wrong? Let us know right here