Hi, I am trying to read a 3*5 24-bit bmp image, divide the channels and recreate the original image from the divided channels. While recreating the image, I used the following code:
reconstruct = red + green + blue;recons = cast(reconstruct,'uint8');recon = zeros(width_dec, height_dec, 3,'uint8');u= 1;for row = height_dec:-1:1 for column = 1:1:width_dec recon(row,column,3) = recons(u,:); fprintf('%d\t',u); recon(row,column,2) = recons(u+1,:); fprintf('%d\t',u+1); recon(row,column,1) = recons(u+2,:); fprintf('%d\t\n',u+2); u = u+3; endend % CHECKING THE RECONSTRUCTED IMAGE
figure;imshow(recon);
When I tried running the code, the dimensions of the reconstructed image changed to 5*5. Actual width of the image is 3 pixels. But in the reconstructed image, the remaining width of 2 pixel is appended with black colour. Why is it happening? Could I get some help regarding this issue?
Thanks in advance.
Best Answer