image processing - Finding the concavness pixel/point in binary map using Matlab -
given binary mask object in matlab. going find concavity point of object boundary. concavity point mean here deepest concavity point respect euclidean distance convex hull chords k_1, k_2 ,and k_3 in concavity regions b_1, b_2, b_3, respectively. red dot indicates concavity point want find, in concavity region b_1 draw 3 lines perpendicular chord k_1, deepest concavity point middle 1 since has largest length.
anyone have efficient way/code that? thanks.
another figure below gives example convex hull, red dot indicates valid concavity point.
efficient relative...
how computing convex hull (there standard algorithms it) , shrinking until inside object boundaries. last point touching desired concavity point.
alternative strategy:
- calculate convex hull
- find differences between convex hull , object boundary (have straight lines, k1 k2 k3 in case)
- for every line, rotate image such line horizontal
- take lowest pixel of object boundary below line
Comments
Post a Comment