Set pixel value to zero in intensity image

I wish to set the value of a pixel at a certain coordinate to zero in an image. Any idea how to do this? The coordinate is (641,513) (the middle).
Thanks in advance,
JB

 Risposta accettata

Nitin
Nitin il 25 Giu 2013
I = imread(img);
I(614,513)=0;

3 Commenti

Thanks a lot! Actually did this myself but interestingly didn't work as the x and y axes had somehow switched. Think it may be to do with using the fftshift function before setting the pixel to zero
So for this I had to use I(513,614) for the centre even though the matrix was originally 1280x1024. It had changed to 1024x1280 after performing fftshift.
x is column, y is row. So I(x,y) is not the same location as I(row, column). If you want x = 20, y = 100, you need to do I(100, 20), not I(20,100) because the row (the y value) index comes first. This is a common source of confusion and errors and you need to always watch out for this.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Images in Centro assistenza e File Exchange

Richiesto:

J B
il 25 Giu 2013

Community Treasure Hunt

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

Start Hunting!

Translated by