How to compare the intensity of the central pixel with its 8 neighboring pixel in an image? Can anyone help me with its matlab code? Also I have to save my central pixel if its intensity value is greater than other pixels.

6 Ansichten (letzte 30 Tage)
How to compare the intensity of the central pixel with its 8 neighboring pixel in an image? Can anyone help me with its matlab code? Also I have to save my central pixel if its intensity value is greater than other pixels.

Akzeptierte Antwort

David Young
David Young am 9 Aug. 2015
Some of the answers here should help.
  1 Kommentar
Image Analyst
Image Analyst am 9 Aug. 2015
Except that those answers were written before the built-in function came out that does this. I don't recommend what I answered there and instead recommend my answer below.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Image Analyst
Image Analyst am 9 Aug. 2015
What does "compare" mean to you? If you want to scan an image with a 3x3 window and just create an output image where the the pixel is true if it's the greatest/highest value in a 3x3 window, use imregionalmax():
% See where the pixel is greater then the 8 surrounding neighbors
regionalMaxImage = imregionalmax(grayImage, 8);
Attached below the image is the full demo:
  2 Kommentare
kiruthika r
kiruthika r am 9 Aug. 2015
regionalMaxImage = imregionalmax(grayImage, 8); This instruction will give output even when the neighboring pixel has same value as central pixel. Only the central pixel should have the higher value than the 8 neighbor pixel.
Image Analyst
Image Analyst am 9 Aug. 2015
In that case, use imdilate() with a ring-shaped structuring element and a < comparison:
% Create a kernel to get the max of the 8 surrounding pixels
structuringElement = [1,1,1;1,0,1;1,1,1];
% Do the dilation
dilatedImage = imdilate(grayImage, structuringElement);
% See where the pixel is greater then the 8 surrounding neighbors
itsBigger = dilatedImage < grayImage;
% Display the local max image.
subplot(2, 1, 2);
imshow(itsBigger, []);
axis on;
title('Local Max', 'FontSize', fontSize, 'Interpreter', 'None');

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Geometric Transformation and Image Registration finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by