I have three matrices
labelism is nr x nc binary matrix
colorim is nr x nc x 3 RGB matrix
and skin_img is also nr x nc x 3 RGB matrix with initially all the zeros on it (black image)
I want to use the labelism matrix to create skin_img matrix from colorim matrix.
Following is the code giving perfectly fine answer
for i = 1:nr for j = 1:nc if (labelim(i,j) == 1) skin_img(i,j,:) = colorim(i,j,:); end end end imshow(uint8(skin_img));
But it is slow for big size images. Is there any way to avoid for loop?
Best Answer