Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

How can i color the pixels in red?

Asked by Pamela Paolo on 5 Dec 2012

Hi, for an image I, I want to color in red the pixels having the coordinates x and y stored in the matrix xy

[L C]=size(I);
xy=[x y];

thanks in advance

1 Comment

Walter Roberson on 5 Dec 2012

What kind of image is it? RGB or pseudocolor? If it is pseudocolor is it acceptable that it be converted to RGB using the current colormap ?

Pamela Paolo

Tags

1 Answer

Answer by Image Analyst on 5 Dec 2012

Try this, assuming you want to set pixels in an RGB image to red.

for k = 1 : length(xy)
  row = int32(xy(k,1));
  col = int32(xy(k,2));
  rgbImage(row, col, 1) = 255;
  rgbImage(row, col, 2) = 0;
  rgbImage(row, col, 3) = 0;
end

If you have a monochrome image, you'll first have to convert it to an rgb image:

rgbImage = cat(3, grayImage, grayImage, grayImage);
% After that, then it's the same loop as above.
for k = 1 : length(xy)
    row = int32(xy(k,1));
    col = int32(xy(k,2));
    rgbImage(row, col, 1) = 255;
    rgbImage(row, col, 2) = 0;
    rgbImage(row, col, 3) = 0;
end

0 Comments

Image Analyst

Contact us