Curvature estimation in contour extracted from gray image

5 visualizaciones (últimos 30 días)
Hi,
I have the edges/contours extacted from the gray image, now I intend to estimate the curvature.
For e.g., I have attached my sample contour here..
Could someone help me with this out ??

Respuesta aceptada

KSSV
KSSV el 24 de Jun. de 2021
Editada: KSSV el 25 de Jun. de 2021
You may use this file exchange function:
Check the code:
load('Test image.mat') ;
[y,x] = find(I) ;
idx = boundary(x,y) ;
x = x(idx) ; y = y(idx) ;
Vertices = [x y] ;
k=LineCurvature2D(Vertices) ;
N=LineNormals2D(Vertices) ;
figure(1)
scatter(x,y,20,k,'filled')
colorbar
title('curvature')
figure(2)
plot(x,y)
hold on
plot([Vertices(:,1) Vertices(:,1)+10*N(:,1)]',[Vertices(:,2) Vertices(:,2)+10*N(:,2)]');
title('Normals')
  11 comentarios
Turbulence Analysis
Turbulence Analysis el 25 de Jun. de 2021
Thanks.. Now,I used, axis equal command, Now It's better.
But, I ddidn't understand why the curvature scatter plot always dipslays in inverted ??
scatter(x,y,50,k,'filled');
axis equal
Turbulence Analysis
Turbulence Analysis el 25 de Jun. de 2021
While executing, N=LineNormals2D(Vertices); it genartes two columns , Is it normal vectors in x, y.. ??

Iniciar sesión para comentar.

Más respuestas (0)

Community Treasure Hunt

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

Start Hunting!

Translated by