Merge RGB image and grayscale image MATLAB
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Hi Guys. I have a grayscale image with size of 256*256. Pixels are shown in black, white,gray. Now I want to make the center pixel to red, but other pixels remain the same to before. Anybody can help me?
Thanks a lot.
0 Commenti
Risposta accettata
Guillaume
il 24 Ott 2017
rgbimage = repmat(yourgrayimage, [1 1 3]);
rgbimage(floor(end/2), floor(end/2), :) = [1 0 0]; %if image is of class double; [255 0 0] if uint8
3 Commenti
Guillaume
il 25 Ott 2017
What is the class of your original image, what is the range of gray values in that image, what exact code did you use to set that red pixel and what exact code are you using to display the image?
The result you show would happen if the range of grey values in your original image was 0-255 and yet your image was of type double (it should be uint8 if intensity range is 0-255) and you use plain imshow(rgbimage) to display the image.
If that is the case, then assign [255 0 0] to that centre pixel and use imshow(rgbimage, []).
Più risposte (0)
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!