1

I have been trying to segment the tread from images. The expected segmentation(manually segmented) is 1

enter image description here

The methods I have tried so far,

  • Found out the edges using the Line segment detector in OpenCV. Then grouped line segments based on nearness and orientation. From the groups, sampled the points to fit a two-degree polynomial. Using the curve equations, I found the mask for the tread.
  • Treated the problem as a binary segmentation problem and trained a CNN to get the mask. Since I don't have enough samples to train, I cannot use this method.
  • Tried out the watershed method. Failed due to poor marker construction.

Please note that I cannot use color thresholding as the background color changes.

Below is the image I want to segment.

enter image description here

Any idea on how I should approach this problem or which techniques will be useful will be of great help. I'm constrained to use Python and OpenCV.

Thanks.

1 Answer 1

1

Bunch of links for you to check out:

Does your camera angle and framing change as well? If it's not, there's nothing bad in abusing it and fitting pre-defined curves.

Sign up to request clarification or add additional context in comments.

2 Comments

Thank you for the links- I have seen a few links are using deep learning which unfortunately I cannot use. My camera is fixed but the wheel rolls. Can you elaborate on how pre-defined curve fitting works?
Sometimes easiest solutions are best. Just define your fixed ROI as mask and do some tuning step to help fix the camera angle upon equipment setup. That would be super fast and would only add a bit of an overhead. This is just one-time-expense, so comparing to time in production it would be trivial.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.