From 759699c3a731f1636964b02826a4769af2911dc4 Mon Sep 17 00:00:00 2001 From: Waddah Moghram <16141123+wmoghram@users.noreply.github.com> Date: Fri, 26 Apr 2019 04:39:36 -0500 Subject: [PATCH] Errors when no outliers are detected in first frame MATLAB Version 9.5.0.1067069 (R2018b) Update 4 MATLAB License Number: 837756 Operating System: Microsoft Windows 7 Professional Version 6.1 (Build 7601: Service Pack 1) Java VM Version: Java 1.8.0_152-b16 with Oracle Corporation Java HotSpot(TM) 64-Bit Server VM mixed mode Movie 1 - Y:\Waddah\Official TFM Videos 3\Bead 2\Displacement Control\Displacement Control Bead 2 Epi ROI\movieData.mat: -- Step 3: Displacement Field Correction Error using detectVectorFieldOutliersTFM (line 145) Matrix dimensions must agree. Error in correctMovieDisplacementField (line 140) parfor j= 1:nFrames Error in Process/run (line 254) obj.funName_(obj.getOwner(), varargin{:}); Error in packageGUI_RunFcn>userfcn_runProc_dfs (line 633) userData.crtPackage.processes_{procID}.run(); % throws exception Error in packageGUI_RunFcn>start_processing_movies_in_series (line 217) userfcn_runProc_dfs(procID, procRun{iMovie}, handles); % user data is retrieved, updated and submitted Error in packageGUI_RunFcn (line 162) movieException = start_processing_movies_in_series(movieRun,handles,movieException,procRun); Error in packageGUI_OpeningFcn>@(hObject,eventdata)packageGUI_RunFcn(hObject,eventdata,guidata(hObject)) (line 380) set(handles.pushbutton_run, 'Callback', @(hObject,eventdata)packageGUI_RunFcn(hObject,eventdata,guidata(hObject))); ====================================================================================================================== MATLAB Version 9.5.0.1067069 (R2018b) Update 4 MATLAB License Number: 837756 Operating System: Microsoft Windows 7 Professional Version 6.1 (Build 7601: Service Pack 1) Java VM Version: Java 1.8.0_152-b16 with Oracle Corporation Java HotSpot(TM) 64-Bit Server VM mixed mode Movie 1 - Y:\Waddah\Official TFM Videos 3\Bead 2\Displacement Control\Displacement Control Bead 2 Epi ROI\movieData.mat: -- Step 3: Displacement Field Correction Error using > Matrix dimensions must agree. Error in detectVectorFieldOutliersTFM (line 145) idAwayVectors = distance2>neighborhood_distance | isnan(distance2); Error in correctMovieDisplacementField (line 155) [outlierIndex,sparselyLocatedIdx,~,neighborhood_distance(j)] = detectVectorFieldOutliersTFM(dispMat,outlierThreshold,1); Error in Process/run (line 254) obj.funName_(obj.getOwner(), varargin{:}); Error in packageGUI_RunFcn>userfcn_runProc_dfs (line 633) userData.crtPackage.processes_{procID}.run(); % throws exception Error in packageGUI_RunFcn>start_processing_movies_in_series (line 217) userfcn_runProc_dfs(procID, procRun{iMovie}, handles); % user data is retrieved, updated and submitted Error in packageGUI_RunFcn (line 162) movieException = start_processing_movies_in_series(movieRun,handles,movieException,procRun); Error in packageGUI_OpeningFcn>@(hObject,eventdata)packageGUI_RunFcn(hObject,eventdata,guidata(hObject)) (line 380) set(handles.pushbutton_run, 'Callback', @(hObject,eventdata)packageGUI_RunFcn(hObject,eventdata,guidata(hObject))); --- software/detectVectorFieldOutliersTFM.m | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/software/detectVectorFieldOutliersTFM.m b/software/detectVectorFieldOutliersTFM.m index e1a039f..ba3b0ed 100644 --- a/software/detectVectorFieldOutliersTFM.m +++ b/software/detectVectorFieldOutliersTFM.m @@ -135,13 +135,19 @@ % elseif n==1 && fitError % threshDist = 2*mean(distance2); % end + +% ----------- DeBugged by Waddah Moghram on 4/27/2019 threshDist = nanmean(distance2)+2*nanstd(distance2); -idxCloseVectors = distance2neighborhood_distance | isnan(distance2); -idxCloseEnoughVectors = distance2neighborhood_distance) | isnan(distance2); +idxCloseEnoughVectors = (distance2threshold)])); outlierIndex = ind(idata(idCloseEnoughVectors(r>threshold))); -sparseIndex = ind(idata(idAwayVectors)); \ No newline at end of file +sparseIndex = ind(idata(idAwayVectors));