From 9eafb58d4c14c5328e5e1c29923264532920513e Mon Sep 17 00:00:00 2001 From: Elian Dib <elian.dib@inria.fr> Date: Tue, 9 Jul 2019 16:02:31 +0200 Subject: [PATCH] Using gridded interpolation --- LFtoSR.m | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/LFtoSR.m b/LFtoSR.m index 1cc7590..0b743e9 100644 --- a/LFtoSR.m +++ b/LFtoSR.m @@ -112,10 +112,7 @@ for lab = 1:numLab LFXsub = LFX(mgv{:},v); LFYsub = LFY(mgv{:},v); - [Xq,Yq,LFXsub,LFYsub] = utils.gridCoords(LFXsub,LFYsub,SRXq,SRYq); - - LFXsub = LFXsub(:); - LFYsub = LFYsub(:); + [LFXsub,LFYsub,Xq,Yq] = utils.gridCoords(LFXsub,LFYsub,SRXq,SRYq); M = isnan(Xq)|isnan(Yq); @@ -125,28 +122,25 @@ for lab = 1:numLab % Interpolate color for c = 1:numChan Colsub = Color(mgv{:},c,v); - Colsub = Colsub(:); - temp = griddata(LFXsub,LFYsub,Colsub,Xq,Yq,Method); + temp = interp2(LFYsub,LFXsub,Colsub,Yq,Xq,Method); temp(M) = nan; SRCol{lab}(:,:,c,v) = temp; end % Interpolate disparity LFDispsub = LFDisp(mgv{:},v); - LFDispsub = LFDispsub(:); - temp = griddata(LFXsub,LFYsub,LFDispsub,Xq,Yq,Method); + temp = interp2(LFYsub,LFXsub,LFDispsub,Yq,Xq,Method); temp(M) = nan; SRDisp{lab}(:,:,1,v) = temp; % Interpolate label Labelsub = Label(mgv{:},v); - Labelsub = Labelsub(:); - temp = griddata(LFXsub,LFYsub,Labelsub,Xq,Yq,'nearest'); + temp = interp2(LFYsub,LFXsub,Labelsub,Yq,Xq,'nearest'); temp(M) = nan; Lab = temp; % Replace out of boundary values in label using cubic interpolation - NaNLab = isnan(griddata(LFXsub,LFYsub,Labelsub,Xq,Yq,'cubic')); + NaNLab = isnan(interp2(LFYsub,LFXsub,Labelsub,Yq,Xq,'cubic')); Lab(NaNLab) = nan; SRLab{lab}(:,:,1,v) = Lab; end -- GitLab