Which is the best algorithm to \"Estimate and Visulize 2d skeleton using Opencv\" from the drawn contour?
Is the Recursive Centroid algorithm the Best? Any reference
Well, two approaches come to mind at this moment:
Use the local ridge-values of the distance transform of the image - they should give a fast and visually intuitive (but rather imprecise) estimate of what the 2D-skeleton would look like.
Another is a center-line extraction, that initially finds Canny edges, draws a ray along the gradient direction from each edge pixel until it reaches an opposite edge, and marks the mid-point of that line segment. This gives a rough initial feasible solution of the problem. Following this, there are other methods like dense tensor voting etc. to get the 2D skeleton.
Without doing all of your homework, here are some hints:
You have only a contour - a boundary that seperates the inside and the outside. To determine a skeleton you need a contiguous filled in object. A flood-fill algorithm will work.
The skeleton of an object is the object that remains after iterative erosion.