how to select neighbouring 5 pixels of an image

1 Ansicht (letzte 30 Tage)
Elysi Cochin
Elysi Cochin am 23 Apr. 2019
Kommentiert: Walter Roberson am 24 Apr. 2019
I wanted to take one pixel from an image say im(x,y)
then take the neighbouring 5 pixels of position im(x,y)
find the maximum value of the 5 pixels and save it in maxIm(x,y)
please can someone help me write the code - i also want to do it for all the pixels in the image, so that i get maxIm the same size as im
(5 must be 4-neighbourhood pixels, including the center pixel)

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 23 Apr. 2019
imdilate(YourImage, ones(11,11) )
The 11 is determined as "5 pixels in each direction relative to the center pixel".
It is plausible that you might want ones(5,5) instead, in which case the neighbourhood would be
*****
*****
**C**
*****
*****
where C marks the center pixel.
Your question is ambiguous about what the 5 means.
  6 Kommentare
Elysi Cochin
Elysi Cochin am 24 Apr. 2019
No, not a vector, must be a single value
Walter Roberson
Walter Roberson am 24 Apr. 2019
YourMatrix./imdilate(YourMatrix, [0 1 0;1 1 1;0 1 0])

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by