How could get the texture of a flower in a plant with stdfilt() function in MATLAB?

2 次查看(过去 30 天)
Hello,
How stdfilt() should be used to get the texture of a part of an image?
For example the attached images.
  10 个评论
Walter Roberson
Walter Roberson 2018-10-28
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.

请先登录,再进行评论。

采纳的回答

Image Analyst
Image Analyst 2018-10-28
I'd use imsplit() to get the individual color channels and then call stdfilt() on each color channel individually.
  3 个评论
Image Analyst
Image Analyst 2018-10-28
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.

请先登录,再进行评论。

更多回答(0 个)

Community Treasure Hunt

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

Start Hunting!

Translated by