How to calculate the curvature of a boundaries in binary images?

26 views (last 30 days)
Dear all,
I have a binary image that contains one shape as I show below:
I want to represent the curvature using color coding of the boundariessimilar to image I got from the video in this link http://en.wikipedia.org/wiki/Curvature
Does anyone knows how to do that?
Any help or suggestion will be appreciated.
Meshoo

Accepted Answer

Image Analyst
Image Analyst on 27 Nov 2014
Use bwboundaries to get a list of the (x,y) boundary coordinates. Run around that border taking a section of the curve, say 9 elements, and fit a polynomial to it. Knowing the derivative of the curve model you used, and the coefficients polyfit() gave you, you can get the curvature at each point. Then run around the list of (x,y) edge coordinates using a marker color that corresponds to the curvature. Try to program that up. If you can't do it all , then post what you have and I'll try to help with the rest.
  19 Comments
Francesco Pignatelli
Francesco Pignatelli on 9 Dec 2022
@Image Analyst I have followed this post and I saw your comments and you mentioned that "Knowing the derivative of the curve model you used, and the coefficients polyfit() gave you, you can get the curvature at each point.". My question is, how is it possible to get the derivatives?
At the current stage, I am at:
boundaries = bwboundaries(binaryImage);
x = boundaries{1}(:, 2);
y = boundaries{1}(:, 1);
So I have x and y now.
Image Analyst
Image Analyst on 10 Dec 2022
@Francesco Pignatelli see attached demo that does what I said. Adapt as needed. If you need more help, start your own discussion thread and attach your (x,y) data.

Sign in to comment.

More Answers (3)

Preetham Manjunatha
Preetham Manjunatha on 2 Aug 2021
Edited: Preetham Manjunatha on 4 Aug 2021
Here this function measures the curvature and other shape properties. In addition, it displays the curvature.
Here is the T-section with sharp corners:

linda cummings cummingslinda14@gmail.com
Very nice. Have you worked in gray image the this code ? Have you tried?
Linda Cummings
cummingslinda14 at gmail.com

sana3 sal
sana3 sal on 18 Jun 2018
Hello Mr @Image Analyst, I am wondering how to read the curvature? or how to analyse it?
  3 Comments
cyril grandjean
cyril grandjean on 10 Apr 2020
Hello I read the code well but I was not sure that I understood correctly. So the coefficient provided in this code corresponds to the overall curvature of my form or a trend is that right?
thank you in advance

Sign in to comment.

Categories

Find more on Mathematics and Optimization in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!