Detecting curves from binary image?

3 Ansichten (letzte 30 Tage)
Sebbe Blokhuizen
Sebbe Blokhuizen am 24 Nov. 2018
Kommentiert: Image Analyst am 10 Jul. 2019
I am trying to detect curves with a pre-determined shaped from a dataset. The input image will be similar to the following picture: data.png
I want to find a line through the left-most and right-most points, as roughly indicated in the following picture:
data_lines.png
So far, I can imagine two ways to get this result:
  • First find a way to extract the left-most points and right-most points and using a 3rd/5th degree polynomial or a hyperbolic sine fit through these points.
  • Using something like a hough transform but applying it for curved lines.
So far, I have not found a good way to get the results I need, also caused by the fact that the data set is quite large [8890x1312] (above images are stretched in the x direction), making it extremely slow to loop over each pixel.
Do you guys have any ideas to tackle this problem?
  2 Kommentare
Zihan Wu
Zihan Wu am 9 Jul. 2019
Hi Sebbe,
I have the same problem with yours. How did you solve this problem in the end?
Thank you!
Image Analyst
Image Analyst am 10 Jul. 2019
He accepted the answer below so I assume that is what he used. If boundary() is not working for you, then please post your image in a new question.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Image Analyst
Image Analyst am 24 Nov. 2018
Try boundary()

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by