From b6f4a19cd24d75c7888959f02e4a47f9f6cb8a39 Mon Sep 17 00:00:00 2001
From: Elian Dib <elian.dib@inria.fr>
Date: Thu, 16 May 2019 19:29:30 +0200
Subject: [PATCH] Padding light field borders to allow their recovery

---
 LFtoSR.m | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/LFtoSR.m b/LFtoSR.m
index cf1da83..32a1ee2 100644
--- a/LFtoSR.m
+++ b/LFtoSR.m
@@ -19,6 +19,25 @@ numLab = max(Label(:));
 [SRImgSize,SRImgRes,SROff,SRCol,SRLab,SRDisp] = deal(cell(numLab,1));
 [srxqgv,sryqgv] = deal(cell(numLab,1));
 
+% Pad values
+Color = padarray(Color,[1,1,0,0,0],nan,'both');
+Label = padarray(Label,[1,1,0,0,0],nan,'both');
+LFDisp = padarray(LFDisp,[1,1,0,0,0],nan,'both');
+ImgSize(1:2) = ImgSize(1:2)+2;
+LFSize = [ImgSize,ImgRes];
+Offset = Offset-1;
+
+seh = strel('arbitrary',[1,0,1]);
+sev = strel('arbitrary',[1,0,1]');
+
+Color = utils.fillmissing(Color,seh,1);
+Label = utils.fillmissing(Label,seh,1);
+LFDisp = utils.fillmissing(LFDisp,seh,1);
+
+Color = utils.fillmissing(Color,sev,1);
+Label = utils.fillmissing(Label,sev,1);
+LFDisp = utils.fillmissing(LFDisp,sev,1);
+
 % Replace missing values by zero (to avoid interpolation errors)
 Color(isnan(Color))=0;
 Label(isnan(Label))=0;
-- 
GitLab