안녕하세요 오늘은 ACCV 2018에 accept된 unsupervised stereo matching 관련 논문을 리뷰하려고 합니다.
해당 논문은 occlusion을 고려해서 unsupervised learning을 하였습니다.
아래 그림을 보시면 occlusion을 고려한 것이 고려하지 않았을 때 보다 훨씬 개선이 된 것을 확인할 수 있습니다.
error가 줄어든 영역이 늘어났으며, improved 된 영역이 많이 증가됨을 확인할 수 있습니다.
그럼 해당 논문의 network architecture를 보도록 하겠습니다.
굉장히 간단합니다. 해당 논문은 left image와 right image를 먼저 sub network인 occlusion network에 넣어주고 occlusion map을 얻습니다. 그리고 난 후 occlusion map과 input image와 concat을 한 후 이를 이용해 feature extraction and matching을 합니다.
Loss function은 아래와 같습니다.
먼저 해당 loss는 image reconstruction loss이며 S는 여기서 SSIM을 의미합니다. Il(p)는 원래의 image, i^l(p)는 warping해서 얻은 image를 뜻합니다. image reconstruction loss는 해당 블로그의 아래 posting을 참고하시면 될 것 같습니다.
그 다음 (4)번 loss는 left right consistency check loss입니다. 이 또한 위의 image reconstruction과 비슷한 개념입니다.
구한 left disparity를 right disparity를 통해서 warping하고, 이를 기존에 구한 left disparity와의 차이를 계산하는 것입니다. 해당 논문에서는 O(p) 개념을 사용해서 occlusion이 아닌 영역에 대해서만 해당 loss를 적용해주었습니다.
그다음으로 (5)번 수식은 disparity와 occlusion의 smoothness loss 입니다.
그리고 마지막으로 (6)번 수식은 occlusion과 관련된 loss 입니다. occlusion이 아닌 영역에 대해서는 loss를 적용했는데요, occlusion인 부분에 대해서는 loss를 주지 않았습니다. 따라서 해당 논문에서는 occlusion인 영역에 불필요하거나 이상한 값이 들어가지 않게 하기 위해서 (6)번 수식을 추가해주었습니다.
식을 보시면 occlusion영역인 경우 left disparity와 right disparity를 left disparity를 이용해서 warping한 결과가 비슷하지 않아야한다는 것이고, occlusion이 아닌 부분에 대해서는 left disparity와 right disparity를 left disparity를 이용해서 warping한 결과가 비슷해야 한다는 loss 입니다.
해당 논문은 Alternative 하게 training을 하였습니다.
먼저 OI를 고정한 후 DC를 이와 맞는 loss를 사용해서 training하고, 그다음으로 DC를 고정하고 OI를 이와 맞는 loss를 사용해서 training 하는 식으로 train을 하였습니다.
결과는 다음과 같습니다. 해당 논문에서는 unsupervised 방식들과 성능 평가를 진행하였는데요, 결과를 확인해보면 다른 논문들에 비해서 성능이 잘 나오는 것을 확인할 수 있습니다.
이상으로 해당 논문 리뷰를 마치도록 하겠습니다.
혹시 잘못된 부분이 있거나 질문이 있으시면 댓글로 남겨주세요!