Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Detect Plants in a grass Image

I'm new in the Computer Vision. I would like to detect some kind of plants in a grass images.

Original Image Original Image

Canny Edge Detection Algorithmus Canny Edge Detection Algorithmus

Hough Line Transform (After Edge Detection) enter image description here

I have already tried:

  • to remove the grass in the background with comparing th average of white pixels in a a region.
  • line detection with the hough line transform algorithm (the grass adds wrong lines)

What's in your opinion the best approach to detect this plant?

like image 574
james Avatar asked Mar 14 '23 07:03

james


1 Answers

Dummy solution came in my mind. Since the grass is more detailed that the plant itself:

  1. Apply Canny or any other edge detector.
  2. Pass through the image using a window (let us say 10*10). For each window:
    • Compute the Density (number of white pixel if using Canny)
    • store it in array
  3. Threshold the values in the array using Otsu algorithm. The less values represent the windows that are part of the plant.
  4. Remap all needed window to the original picutre.
  5. if a window is computed as not part of the object but in the same time it is surrouned by windows of the object, it is part of it.
like image 83
Humam Helfawi Avatar answered Mar 24 '23 11:03

Humam Helfawi