How to put or replace color in rgb/greyscale picture

조회 수: 4 (최근 30일)
Ravin Rayeok
Ravin Rayeok 2020년 2월 29일
댓글: Ravin Rayeok 2020년 2월 29일
Hello!
Need some assistance here
Anyone knows how to put the blue color as presented in these pictures below?
Seems like the bubbles blobs (White/grey) has the same rgb value to the other non-bubble area. Black blobs are pores.
  댓글 수: 2
Image Analyst
Image Analyst 2020년 2월 29일
Can you explain in words, what properties the blue regions of the gray surround have that the gray regions don't? And why do you want the blue but don't want the gray?
Ravin Rayeok
Ravin Rayeok 2020년 2월 29일
Sorry my question was not clear, may be I can change the picture to simplify.
So how to change color of the picture as following, from white to blue and yellow to green?
Its a picture of different liquid phase in a pore medium.

댓글을 달려면 로그인하십시오.

채택된 답변

Image Analyst
Image Analyst 2020년 2월 29일
Try this:
rgbImage = imread('image.jpeg');
subplot(2, 1, 1);
imshow(rgbImage);
% Extract the individual red, green, and blue color channels.
redChannel = rgbImage(:, :, 1);
greenChannel = rgbImage(:, :, 2);
blueChannel = rgbImage(:, :, 3);
% Get the yellow mask
yellowMask = redChannel > 128 & greenChannel > 128;
% Get the white mask
whiteMask = redChannel > 128 & greenChannel > 128 & blueChannel > 128;
% Make yellow mask green
redChannel(yellowMask) = 0;
greenChannel(yellowMask) = 255;
blueChannel(yellowMask) = 0;
% Make the white mask blue
redChannel(whiteMask) = 0;
greenChannel(whiteMask) = 0;
blueChannel(whiteMask) = 255;
% Recombine separate color channels into a single, true color RGB image.
rgbImage2 = cat(3, redChannel, greenChannel, blueChannel);
subplot(2, 1, 2);
imshow(rgbImage2);

추가 답변 (0개)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by