MATLAB: Kurtosis and skewness detection

boundary descriptionregion properties

I want to calculate Kurtosis and skewness of a region whose area is 1287 and perimeter is 166.3575, but kurtosis value of total image is obtain. How Kurtosis value of a single region is obtained.

Best Answer

See my demo on image moments, attached below in blue. It calculates skew and kurtosis of the histogram. Feel free to adapt it to your needs.
How were you getting the kurtosis of the entire image up to now? To get it for any particular blob, you have to call regionprops and ask for pixelList, as shown in my BlobsDemo tutorial in my File Exchange. Then loop over all blobs getting their kurtosis:
for k = 1 : numberOfBlobs % Loop through all blobs.
% Get list of pixels in current blob.
thisBlobsPixels = blobMeasurements(k).PixelIdxList;
% Get kurtosis of this blob, using your recipe or Image Analyst's.
kurtosis(k) = ComputeKurtosis(thisBlobsPixels);
end