A function to find peaks (brightest pixels in a grayscale image) ?
6 views (last 30 days)
Show older comments
Hi,
Is there any function as an alternative to FastPeakFind() to find brightest pixels in a grayscale image.
The problem of the FastPeakFind() function is that it can not find peaks correctly if they are piled. Since, FastPeakFind() function assumes that 'peaks are sparse'. So, even if we change the threshold value, this function can only detect peaks if they are separated. If there is a piled peak then this function can not show all pixels under the peak (it only shows ONE pixel for this kind of peaks. Therefore, we can not find correct number of bright pixels at a piled peak region.
Is there any alternative to this function ? I want to find number of brightest pixels and density of brightest regions in a grayscale image
Thanks
0 Comments
Answers (1)
Image Analyst
on 11 Jan 2016
See if the function imregionalmax() will do what you want. It finds local maxima and gives you a binary image indicating their location.
BW = imregionalmax(I) returns the binary image BW that identifies the regional maxima in I. Regional maxima are connected components of pixels with a constant intensity value, and whose external boundary pixels all have a lower value. In BW, pixels that are set to 1 identify regional maxima; all other pixels are set to 0. By default, imregionalmax uses 8-connected neighborhoods for 2-D images and 26-connected neighborhoods for 3-D images. For higher dimensions, imregionalmax uses conndef(ndims(I)),'maximal').
5 Comments
Maitham
on 21 Jan 2017
Image Analyst. Thank you very much for your answer. I have made a new question about Strehl ratio: https://www.mathworks.com/matlabcentral/answers/321398-strehl-ratio-for-a-point-source-image
Very kind regards. Maitham
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!