how to find mean absolute deviation image?
Show older comments
I want to display mean absolute deviation image from a given input jpg Image. MAD is an energy measure that represents regularity of texture.
Answers (2)
Guillaume
on 20 Feb 2018
I don't see what's difficult about that. Assuming an greyscale image:
mad = mean(abs(yourimage(:) - mean(yourimage(:))))
Image Analyst
on 20 Feb 2018
Cast to double, subtract, then get the mean:
mad = mean2(abs(double(image1) - double(image2)));
mad is a scalar. If you want the IMAGE then don't use mean2():
mad = abs(double(image1) - double(image2));
You need to cast to double so that you don't clip to zero if they're unsigned integer images.
5 Comments
Khushal Gumgaonkar
on 21 Feb 2018
Guillaume
on 21 Feb 2018
Perhaps you need to give a more formal definition of what the mean absolute deviation is for you.
I've given you an answer that follows this definition for the mean absolute deviation around the mean. This assumes a single image and gives you a scalar.
Image Analyst uses a different definition that requires two different images and gives you either a scalar or an image.
Khushal Gumgaonkar
on 22 Feb 2018
Guillaume
on 22 Feb 2018
I'll repeat:
give a formal definition of what the mean absolute deviation is for you
Image Analyst's answer computes the mean of the absolute deviation between two images
What you want, an image from a single image, does not appear to match either definition.
Image Analyst
on 22 Feb 2018
I agree with Guillaume. Explain EXACTLY what an "MAD image" is.
Categories
Find more on Image Arithmetic in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!