I have already found the distance between the centroid to A as well as B, and I have tried couple of ways to find C and D but still can't get it. How can do this? I really need help on this. Thank you.

5 commentaires

Image Analyst
Image Analyst le 19 Déc 2018
Look at your distances plot.
  1. C is 1400
  2. D is 500
  3. A is about 1300, and
  4. B is about 650.
Evelynn Tan
Evelynn Tan le 19 Déc 2018
How can I plot C and D in the binary image as well as the distance plot? I need the results to be shown.
Image Analyst
Image Analyst le 19 Déc 2018
D, A, and B are plotted on the graph with the line() function. They are plotted on the image with plot(). C is a little tricky since it's at the start of the graph. If you know for a fact that the widest part of the mouth is always the left most pixel, then you can just find out if the distances(1) or distances(end) is greater, and that will be the C distance. If C is not the outermost peak, then it should be found by findpeaks() just like A is.
Evelynn Tan
Evelynn Tan le 19 Déc 2018
Thanks! But i have another problem, the magenta line can show the result on the distance plot but in the binary image, it overlapped with the yellow line. How can I show it like point D above?
Image Analyst
Image Analyst le 19 Déc 2018
Yes. Just use plot() like the others. You can help us to help you if you upload your original binary image (not a screenshot again) and the code you used.

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by