Image Grey to Color
2 views (last 30 days)
Show older comments
Hi there, I am trying to perform certain task on the image:
In which I should divide it into three equal parts, then extract the RGB planes seperately and fuse all of them in a one color image:
img = imread('image.jpg');
[h, w] = size(img);
h_one = h / 3;
B = imcrop(img,[1, 1, w, h_one]);
G = imcrop(img,[1, 1*h_one, w, h_one]);
R = imcrop(img,[1, 2*h_one, w, h_one]);
colorImg(:,:,1) = R;
colorImg(:,:,2) = G;
colorImg(:,:,3) = B;
imshow(colorImg)
but the grader of the course doesn't accept it and tells me: Variable B must be of size [341 400]. It is currently of size [342 400], and I don't know to to handle it.
The result image:
Answers (1)
Walter Roberson
on 12 Jul 2020
B = imcrop(img,[1, 1, w, h_one]);
What is the first row number that will be extracted when you do that? What is the last row number that will be extracted when you do that?
G = imcrop(img,[1, 1*h_one, w, h_one]);
What is the first row number that will be extracted when you do that? What is the last row number that will be extracted when you do that?
Is the black border extracted above the top image the same height as the black border extracted above the middle image?
Is the black border extracted below the bottom image the same height as the black border extracted below the middle image?
0 Comments
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!