interpolation between sequnce of images

9 visualizaciones (últimos 30 días)
tala
tala el 27 de Nov. de 2016
Comentada: KSSV el 28 de Nov. de 2016
hello i am a beginner in matlab. i have 10 frames of echocardiography so each frame is in a time index.(t1,t3,t5...) i want to interpolate between these images in time domain to make 10 frame to 20 frames to increase the frame rate. could anyone help me. its possible to use interp1 for each pixel, how cani do it? thanks

Respuesta aceptada

KSSV
KSSV el 28 de Nov. de 2016
m = 100; n = 100 ;
I = rand(m,n,10) ; % your frames
fr = 1:2:20 ; % frame time
fri = 2:2:20 ; % frame time to be inteprolated
Ii = zeros(m,n,length(fri)) ; % initiliaze the interpolated frames
%%inteproaltion
for i =1:m
for j = 1:n
I_ij = squeeze(I(i,j,:)) ;
Ii_ij = interp1(fr,I_ij,fri,'spline') ;
Ii(i,j,:) = reshape(Ii_ij,1,1,length(fri)) ;
end
end
You can vectorize the above one.
  2 comentarios
tala
tala el 28 de Nov. de 2016
hello sir thanks for your attention could you please tell me what are m and n? and what does rand do here?
KSSV
KSSV el 28 de Nov. de 2016
m, n are dimensions....rand, I created a random matrix to replicate the frames.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

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

Community Treasure Hunt

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

Start Hunting!

Translated by