How do I Interpolate on an array

2 visualizaciones (últimos 30 días)
Maarten
Maarten el 13 de Nov. de 2013
Comentada: Maarten el 13 de Nov. de 2013
For the analysis of quite a large amount of data, I want to measure the distance between 2 pixels on DICOM image, with the same HU-values, to get the length of an object. Currently I'm doing this manually in Excel with linear interpolation, but it's too much work.
A line plot over the object gives me this curve for example:
What I'm looking for is the two X-coordinates, or the distance between the two, where Y = -350.
I've tried to interpolate with interp1(X,Y,-350), but that just results in a error every time ==> The values of X should be distinct.
How can I do this with Matlab?

Respuesta aceptada

G A
G A el 13 de Nov. de 2013
X1=X(Y>=-350);
distance=X1(end)-X1(1);
if precision is not good enough you can interpolate the curve before this
  1 comentario
Maarten
Maarten el 13 de Nov. de 2013
Your solution works great. Looks like I was using the interp1 function in the wrong way.
Thanks a lot G A.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Interpolation en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by