Gaegul's devlog

[논문 리뷰] Segmentation-Free Dynamic Scene Deblurring (CVPR 2014) 본문

Artificial Intelligence/Research Paper 리뷰 📖

[논문 리뷰] Segmentation-Free Dynamic Scene Deblurring (CVPR 2014)

부지런깨꾹이 2023. 6. 13. 12:46
728x90
반응형

논문 읽기에 앞서서..

deblurring 은 나의 석사 지도 교수님의 메인 분야였다. 하지만, 석사 연구할 당시에는 deblurring 관련 논문을 깊게 읽어본 적이 없었다. (나의 메인 연구가 아니였기에..) 하지만 최근에 관심이 생긴 "high-level 비전인 object detection이나 semantic segmantation의 성능을 높이기 위해 픽셀단(low-level)에서 개선을 시키면 인식률을 높이는데 도움이 되지 않을까?" 하는 단순한 생각을 시작으로 관심을 갖게 되었다. 예를 들면, 움직이는 흐름 또는 속도에 따라서 풍경과 객체에 블러가 생기게 되는데 이러한 블러리해진 객체는 (조금 멀리 있는 객체가 빠르게 움직이면 더 인식률이 떨어지지 않을까?) 인식률이 떨어질 것이다. 또한, motion이 커지면 블러리해지는 현상이 커지며, 이 현상 때문에 자율주행에 코어 엔진인 고정밀 지도를 구축하는 데 있어 차선이나 표지판을 가리는(occulsion) 객체를 인식하기 위한 semantic segmentation에 성능 저하의 영향을 끼칠 것이라고 생각한다. 그래서 최근에 객체 인식률을 높이기 위해 deblurring을 어떻게 처리하면 좋을지에 대해 고민하고 있다. 그래서 관련 논문 리뷰를 읽고 리뷰해보고자 한다.

 

Image Deblurring ?

Image deblurring은 Image Restoration 중 하나이며, blurred Image에 있는 blur를 제거하여 sharp image로 만드는 작업이다. blurred image는 blur kernel (K) or Point Spread function을 latent sharp image와 convolution 연산을 통해 만들어진다. latent sharp image는 블러가 없는 상태를 가정하고, sharp image는 blur kernel에 의해 blurred image로 바뀌게 된다. blur kernel은 어떤 trajectory이며, 카메라가 얼마나 흔들렸는지를 설명한다. (본 그림에서는 trajectory가 위아래로 흔들렸음을 알 수 있다.) 수식에서 보듯이, Blurred Image(B)는 latent sharp image(L)에 blur kernel (K)을 conv 연산하고 추가적인 noise(N)가 합쳐지게 된다.

Image deblurring notation

 

이러한 베이스 개념을 가지고 서울대(저자: 국내에서 비전의 대가, 서울대 이경무 교수님과 한양대 김태현 교수님)에서 submission 한 Segmentation-Free Dynamic Scene Deblurring (CVPR 2014) 논문을 리뷰해보려고 한다. 이후 Image Deblurring의 근본 페이퍼(2023년 6월 기준, 인용수 1642회)라고 칭하는 Deep Multi-Scale Convolutional Neural Network for Dynamic Scene Deblurring (CVPR 2017)을 냈다.

이번 리뷰할 논문인  Segmentation-Free Dynamic Scene Deblurring은 motion segmentation을 통해 deblurring 성능을 높인 논문이다. 

 

Abstract


기존의 정확한 모션 분할을 기반으로 하는 대부분의 SOTA 동적 장면 디블러링 방법은 모션 블러가 작거나 블러를 유발하는 특정 모션 유형을 알고 있다고 가정한다. 

본 논문에서는 기존 방법과 달리 모션 분할이 필요 없는 동적 장면 디블러링 방법을 연구한다. 모션을 locally 하게 (pixel-wise로) 변화하는 선형 모션으로 근사화할 수 있다면 평면을 벗어난 모션, 깊이 변화, 방사형 왜곡 등 카메라 흔들림으로 인해 발생하는 다양한 유형의 블러를 처리할 수 있다. 

 

Segmentation-Free Dynamic Scene Deblurring 

1) robust 한 Total Variation(TV)-L1 모델을 기반으로 motion flow와 latent image를 동시에 추정하는 새로운 에너지 모델을 제안.

2) segmentation 없이 모션의 급격한 변화를 처리한다.

3) 또한, 뚜렷한 움직임이 있는 작은 구조를 복원할 때 아티팩트를 발생시키는 기존의 Coarse-Fine deblurring 프레임워크의 문제를 해결한다.

4) 따라서, 더 coarse-level에서 전파되는 motion flow의 오류를 줄이는 새로운 Kernel Reinitialization 방법을 제안. 또한, (TV)-L1 모델의 계산적 어려움을 완화하는 매우 효율적인 convex optimization-based 솔루션을 구축한다. 챌링징한 Real Blurry Image에 대한 비교 실험 결과를 통해 제안한 방법의 효율성을 입증한다.

 

기존 방법의 Limitation

1. 특정 유형의 motion blur를 알지 못하면 전통적인 결정론적 필터 기반 접근 방식은 다양한 유형의 블러를 처리할 수 있지만, 큰 모션 블러를 처리할 수 없고 노이즈에 민감하다. 

2. 또한, edge statistics을 이용하여 locally 하게 변화하는 blur kernel을 추정할 수도 있지만 이 방법 역시 작은 모션 블러로 제한된다.

3. 그래서 motion blur의 특정 유형을 알지 못해도 큰 블러를 처리하는 데 사용할 수 있는 방법을 연구했다. (로컬 블러 커널이 인접한 블러 커널의 가중치 합으로 표현된다는 가정을 기반으로 한 방법 제안, 커널을 보간하는 방법을 제안)
BUT, 부드럽게 변화하는 블러 커널을 처리할 수 있지만 여러 개의 움직이는 오브젝트가 포함된 동적 장면에서 일반적으로 발생하는 블러 커널의 갑작스러운 변화는 처리할 수 없다.

4. 또한 최근 Dynamic scene deblurring 연구에서 blur kernel, latent image, motion segmentation을 함께 추정하는 방법을 제안했다. 이 방법은 물체 회전과 2D translational motion을 포함한 카메라 흔들림이 존재한다고 가정했지만, 캡처된 이미지가 forward motion, depth variation, radial distortion과 같은 예상치 못한 블러 효과로 흐려질 경우 segmentation과 deblurring에 모두 실패한다고 한다. (아래 결과 그림을 보면 알 수 있다.)

(a), (b), (c) 기존 방법의 한계 / (d) 제안 방법

 

 

Proposed Method

 

1. Dynamic Scene Deblurring Model

이러한 블라인드 deblurring 문제를 해결하기 위해 latent sharp image(선명한 이미지) L와 blur kernel(블러 커널) K을 추정하기 위해 regularization과 data term으로 구성된 다양한 에너지 모델이 제안되어 왔으며, notation (2)에서 data term인 Edata는 data fidelity를 측정하고 regularization term인 Ereg는 blur kernel뿐만 아니라 latent sharp image에 평활도 제약을 적용한다.  저자는 기존 에너지 모델이 주로 모션 분할을 필요로 하기 때문에 dynamic scene deblurring에는 유효하지 않다고 주장했다. 그러나 본 논문에서는 dynamic scene deblurring을 위해 식에 기반한 새로운 에너지 모델을 제안한다. 제안된 모델은 명시적인 모션 분할이 필요하지 않다. 

notation 2.dynamic motion blur를 위한 new energy model
The data term of new energy model (L1 based)

 

1.1 L1-based Robust Blur Model

본 연구에서는 locally 하게 변화하는 blur kernel이 2D 모션 벡터로 선형화할 수 있다고 가정했다. Ringing Artifact (:신호 처리, 특히 디지털 이미지 처리에서 신호의 급격한 전환 근처에서 가짜 신호로 나타나는 아티팩트)를 줄이기 위해 데이터 모델에서 latent 및 blurry 이미지의 gradient map만 사용한다.

또한 제안한 모델은 dynamic scene을 segmentation 하지 않고 디블러링하는 것이 목표이기 때문에 motion boundary에서 blur kernel의 급격한 변화가 가능해야 한다. 따라서 data term에서 flow field의 discontinuities을 허용하는 L1 기반 모델을 제안한다. robust 한 L1 모델은 non-blind deblurring 프로세스에서 latent image를 추정하기 위해 이전에 제안되었지만, 이 모델은 계산상의 어려움으로 인해 우리가 아는 한 blur kernel 추정에는 사용되지 않았다.

 

1.2 TV-based Robust Regularization

문제가 ill-pose 일 때 신뢰할 수 있는 솔루션을 얻기 위해 변수들의 평활성(smoothness)을 적용해야 한다. 본 논문에서 제안하는 에너지 모델에서 두 개의 primal unknown 변수들은 각각 다른 종류의 정규화를 갖는 latent sharp image L과 motion flow u이다. 인접한 픽셀 간에 유사한 blur kernel을 갖기 위해 motion flow를 정규화한다. motion flow를 정규화하는 데 있어 핵심은 motion boundary를 얼마나 잘 보존하냐이다. 여기서 매개변수 m가 정규화의 강도를 제어하고 인접 픽셀 간의 유사도를 측정하는 엣지맵을 얻는다. 매개변수 σ는 감쇠 지수를 의미하고, L0는 coarse-to-fine 프레임워크에서 coarser level으로부터 전파된 중간 latent image이다.  

 

특히 부분적으로 흐린 이미지에는 흐릿하지 않은 영역이 존재할 수 있기 때문에 흐린 이미지 자체도 edge-map을 얻기 위해 사용되며, L0이 smoothed(평활화)될 때 작동한다. edge-aware regularization의 뛰어난 성능은 Figure 4에서 확인할 수 있다. 예상대로 제안된 정규화는 edge-map이 없는 모델보다 움직임 불연속성을 훨씬 더 잘 보존한다.

 

 

Experiment Results

 

Real Challenging Dynamic Challenge에 대한 디블러링 결과와 추정된 모션 흐름 결과

qualitative analysis에서는 모션 블러의 종류에 제한을 두지 않고 segmentation 없이 디블러링된 이미지의 edge들을 선명하게 복원한다. texture가 있는 영역에서 추정된 motion flow의 색상 코드는 심각한 아티팩트가 발생하지 않는 균질한 영역을 제외하고는 예상한 만큼 정확하다. 특히, 맨 아래 줄의 motion flow은 latent image(잠상 이미지)의 depth map에 해당하며 이는 흐릿한 단일 이미지에서 depth map을 추정하는 작업의 또 다른 응용 분야가 될 수 있다. 

 

카메라의 회전 움직임을 포함한 카메라 흔들림에 대한 디블러링 결과

제안된 방법은 locally 선형 블러 커널의 근사치를 기반으로 하기 때문에 텍스처가 적은 영역에서 전체 카메라 움직임을 추정하는 방법의 결과보다 정확하지 않을 수 있다. 그러나 위쪽 줄의 합성 이미지와 아래쪽 줄의 실제 이미지 모두에서 복원된 강한 가장자리를 보면 이 근사법이 작은 회전 카메라 흔들림에 대해 어느 정도 유효하다는 것을 알 수 있다. 

 

다양한 Challenging 한 상황에서 SOTA 디블러링 방법과 결과

1) (a)에서는 심한 radial distortion(방사형 왜곡)으로 인해 흐릿한 이미지가 저하되어 기존 방법에서는 심각한 문제를 일으켰지만, 본 논문에서 제안한 방법은 잘 처리함.

2) (b)에서 흐림의 원인이 기존 방법에서는 처리할 수 없는 specific forward motion (특정 전진 모션)이기 때문에, 기존 방법보다 성능이 우수하고 문자와 화살표의 가장자리를 더 선명하게 복원함. 

3) (c)에서 [26]은 흐릿한 영상에 depth discontinunity(깊이 불연속성)가 존재하기 때문에 디블러링에 실패한다. segmentation 기반 방법으로 디블러링이 가능하지만, [13] 역시 배경이 너무 좁아 세분화하기 어렵기 때문에 디블러링에 실패한다. 따라서 기존의 두 가지 방법 모두 만족스럽지 못한 결과를 제공함.

4) 마지막으로, (d)에서는 depth discontinunity(깊이 불연속성)을 갖는 합성 영상이 카메라의 회전 흔들림에 의해 흐려져 기존 방법 모두 실패한 반면, 본 방법에서는 성공적인 결과를 보여주고 있다.

 

 

Conclusion 

1.  본 연구에서는 강력한 TV-L1 기반 모델을 사용하여 정확한 모션 분할이 필요하지 않은 효율적인 동적 장면 디블러링 방법을 제시함.

2. 제안한 방법은 커널을 선형 모션으로 근사화할 수 있는 경우 다양한 유형의 블러 커널을 처리할 수 있다.

3. TV-L1 모델을 최적화하는 효율적이고 실용적인 솔루션을 제공했으며, 다양한 챌린징한 상황에서 제안한 방법이 최신 방법보다 우수한 성능을 보임을 입증했다.

 

Limitation

반면 모션 블러의 특정 유형을 알고 있는 경우, 1) 기존의 디블러링 방법(전체 카메라 움직임을 추정)이 잘 작동하고 2) 텍스처가 적은 영역에서의 결과가 본 논문의 제안 방법보다 우수하다는 문제가 남는다. 따라서 향후 작업에서는 이러한 global approach(글로벌 접근 방식)과 local approach (로컬 접근) 방식을 통합된 프레임워크에 결합할 것!!

 

728x90
반응형
Comments