How could get the texture of a flower in a plant with stdfilt() function in MATLAB?
1 view (last 30 days)
Show older comments
Hello,
How stdfilt() should be used to get the texture of a part of an image?
For example the attached images.
10 Comments
Walter Roberson
on 28 Oct 2018
Remove the background. Do a detection for bright yellow: if you find it then it must be Yufeng. Otherwise detect green, and find the mean brightness: the Yufeng is notably darker.
Accepted Answer
Image Analyst
on 28 Oct 2018
I'd use imsplit() to get the individual color channels and then call stdfilt() on each color channel individually.
3 Comments
Image Analyst
on 28 Oct 2018
Regions that vary a lot in gray level (complicated parts with lots of leaf edges) will have high values. Regions that are smooth will have low stddev values. Just try it and see:
% Extract the individual red, green, and blue color channels.
redChannel = rgbImage(:, :, 1);
greenChannel = rgbImage(:, :, 2);
blueChannel = rgbImage(:, :, 3);
windowWidth = 15; % Whatever...
sdRed = stdfilt(recChannel, ones(windowWidth));
imshow(sdRed, []);
% Same for green and blue.
More Answers (0)
See Also
Categories
Find more on Detection 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!