DOI QR코드

DOI QR Code

Rain Detection and Removal Algorithm using Motion-Compensated Non-local Means Filter for Video Sequences

동영상을 위한 움직임 보상 기반 Non-Local Means 필터를 이용한 우적 검출 및 제거 알고리즘

  • Received : 2014.10.08
  • Accepted : 2014.12.25
  • Published : 2015.01.30

Abstract

This paper proposes a rain detection and removal algorithm that is robust against camera motion in video sequences. In detection part, the proposed algorithm initially detects possible rain streaks by using intensity properties and spatial properties. Then, the rain streak candidates are selected based on Gaussian distribution model. In removal part, a non-rain block matching algorithm is performed between adjacent frames to find similar blocks to the block that has rain pixels. If the similar blocks to the block are obtained, the rain region of the block is reconstructed by non-local means (NLM) filter using the similar neighbors. Experimental results show that the proposed algorithm outperforms the previous works in terms of subjective visual quality of de-rained video sequences.

본 논문에서는 카메라 움직임에 강인한 동영상 내 비 검출 및 제거 기법을 제안한다. 검출 파트는 비의 밝기 특성과 공간적 특성을 활용하여 초기 비 영역을 검출한다. 그런 다음 가우시안 분포 모델을 적용하여 최종적인 비 영역을 결정한다. 제거 단계에서는 인접한 영상 간 상관성을 이용하여 비 영역을 중심으로 인접 프레임 간 블록 정합 기법을 수행한다. 그 후 정합 결과에 기반한 non-local mean (NLM) 필터링을 통해 비 영역을 보상한다. 마지막으로 깜박임 효과를 제거하고 가시성을 향상시키기 위해 후처리를 수행한다. 실험 결과를 통해 제안 기법의 화질이 기존 기법에 비해 동영상의 비 제거 성능에 있어 현저하게 우수함을 볼 수 있다.

Keywords

Ⅰ. 서 론

비나 눈이 내리는 궂은 날씨에 촬영된 영상은 피사체에 대한 인식률이 크게 떨어진다. 일반적으로 영상 내 비나 눈성분들은 영상의 가시성을 저하시키고 영상 컨텐츠에 폐색영역을 생성한다. 또한 이것들은 특징점 추출, 트래킹, 모션추정 등과 같은 컴퓨터 비전이나 영상처리 알고리즘들의 성능을 떨어뜨린다. 본 논문은 여러 날씨 현상들 중 비에 초점을 맞춘다.

비가 있는 영상들에서의 상기 문제들을 해결하기 위해 다양한 비 검출이나 제거 기법들이 제안되었다[1-6]. 대부분의 기존 비 검출이나 제거 기법들은 고정된 카메라로부터 촬영된 영상을 가정한다[1][2]. 이 가정은 비 영역 검출과 제거 문제를 단순화해주기는 하지만 피사체나 카메라의 움직임이 있는 경우 성능을 크게 저하시키는 원인이 된다.

본 논문은 카메라 및 물체의 움직임이 있는 환경에서 촬영된 동영상 내의 빗줄기 검출 및 제거 기법을 제안한다. 먼저 비의 밝기 특성을 활용하여 초기 비 성분을 검출한다. 그 다음 빗줄기의 크기와 각도 등 두 가지 구조적 특성을 이용하여 초기 비 영역들 중 아웃라이어들을 제거한다. 그리고 가우시안 분포 모델을 적용하여 적절한 빗줄기의 범위와 세기를 추정한다. 비 검출 과정이 끝나면 검출된 비를 제거하는 과정이 시작된다. 먼저 인접 프레임 간 블록 정합을 수행한다. 이를 통해 비를 포함한 현재 블록과 가장 유사한 블록들을 선택한다. 이들의 적절한 가중치 합으로 해당 블록 내 비 영역을 복원한다. 마지막으로 에지 보존 필터링과 가시성 향상 알고리즘을 적용하여 비로 인한 깜빡임 현상을 제거하고 가시성을 향상시킨다. 실험 결과는 제안 기법이 카메라가 움직이는 환경에서도 종래 기법 대비 검출, 제거, 그리고 디테일 보존성능이 우수함을 보인다.

본 논문의 차별화 포인트는 다음과 같이 크게 두 가지이다. 하나는 동영상에서의 비 검출 과정에서 시간적 특징 대신 공간적 특징과 구조적 특징을 이용하여 다른 기법들과 달리 카메라 움직임에 강인하고 초점이 맞지 않는 비 성분이나 멀리 떨어진 비 성분 등 다양한 세기의 비 검출이 가능하다는 점이다. 두 번째는 비 제거 과정에 동영상의 시간적 상관성을 고려하여 블록매칭 기반의 Non-local Mean (NLM) 필터를 적용함으로써, 디테일을 보존하면서도 효과적으로 비 영역 복원을 할 수 있다는 점이다.

 

Ⅱ. 관련 연구

비 검출 제거 기법은 크게 시간적-광학적 특성을 이용한 방법, 시간적-색상적 특성을 이용한 방법, 그리고 주파수 영역 기반 방법 등이 있다[1-6].

Garg와 Nayar는 인접 프레임 간 차이 값과 비의 광학적 특성 기반 모델을 이용하여 비를 검출하는 방법을 제안하였다[1]. 그러나 단순히 프레임 차에 의존하기 때문에 비가 많이 내리는 영상이나 밝은 조명이 있는 영상 등에 취약하고, 수십 프레임의 정보를 사용하기 때문에 연산량이 방대하다.

Zhang 등은 시간적 특성과 색상적 특성을 결합한 기법을 제안하였다[2]. 먼저, 같은 위치의 픽셀들을 시간 축으로 축적하고, 축적된 화소값들에 K-means clustering을 적용하여 비의 영향을 받은 픽셀과 받지 않은 픽셀로 구분한다. 비성분으로 분류된 픽셀들 중에서 색상 변화량을 고려하여 최종적인 비 픽셀들을 검출한다. 이 방법은 시간적 정보와 색상적 정보를 모두 사용하여 고정된 카메라 환경에서는 상당히 좋은 결과를 보이지만 피사체나 카메라의 움직임이 존재할 경우에는 결과 영상이 심하게 망가진다. 게다가 분류 기반 기법을 사용하기 때문에 큰 메모리가 필요하고 연산시간이 오래 걸린다.

Barnum 등은 주파수 영역 기반의 빗줄기 검출 및 제거 방법을 제안하였다[3][4]. 이들은 blurred Gaussian model과 통계적 특성을 결합하여 주파수 영역에서의 빗줄기 특징을 새롭게 모델링하였다. 기존 기법들과 달리 시간적 특성을 이용하지 않아 카메라나 물체의 움직임에 강인하지만 모델에서 벗어난 빗줄기는 검출하지 못하는 한계를 가진다.

한편, Xue 등은 시간적 특성과 웨이블릿 변환을 결합하여 카메라 움직임을 고려한 빗줄기 검출 방법을 제안하였다[5]. 이 방법은 웨이블릿 변환을 이용한 고주파 영역 검출방법을 통해 초기 검출 영역 내 아웃라이어를 제거하였다. 그러나 그들이 제안한 시간적 특성을 이용한 초기 검출 방법이 비가 많이 내리는 영상에 취약하여 성능은 그다지 좋지 못했다.

최근에 Kim 등은 kernel regression 기법을 이용한 단일 영상 기반 비 검출 및 제거 기법을 제안하였다[6]. 이 기법은 gradient값들로 공분산 행렬을 만든 뒤, 서포트 벡터 머신으로 이를 분리하여 커널들의 각도, 가로-세로 비 등 특징을 추출한다. 그리고 여러 제약조건을 만족하는 특징을 가진 픽셀들을 비 픽셀로 검출한 뒤, Non-local mean (NLM) 기법을 활용하여 비 픽셀을 제거한다. 이 기법은 kernel regression을 이용하여 잡음에 강인한 검출기법을 제안했지만 gradient 기반의 방법이기 때문에 motion-blur 특성을 갖는 빗줄기들을 검출하기 어렵다. 또한 한 장의 영상만을 사용하므로 제거 성능의 한계를 가진다.

본 논문은 카메라 움직임 및 폭우에 강인하기 위해 공간 영역에서 비의 밝기 특성과 구조적 특성을 이용하여 비를 검출하고, 검출된 비 영역에 한해서만 시간축 특성을 반영한 움직임 보상 기반 Non-local mean (NLM) 필터를 이용하여 비를 제거하는 고성능의 비 제거 기법을 제안한다.

 

Ⅲ. 제안 기법

1. 우적 검출 기법

동영상 내 비는 잡음과 유사하게 시간적 공간적 상관도가 매우 낮기 때문에 대부분의 기존 알고리즘들은 카메라 움직임이 없다고 가정하고 인접 프레임 간 차이 값을 고려하여 초기 비 영역을 검출했다[1][2][5]. 그러나 이러한 방식에는 크게 세 가지 단점이 존재한다. 첫째, 폭우가 내리는 경우 비 영역의 증가로 인해 연속된 프레임에서 비 영역이 중복될 확률이 높다. 둘째, 물체나 카메라가 빠르게 움직일 경우 비 움직임에 의한 변화 영역과 영상 컨텐츠 움직임에 의한 변화 영역을 구분할 수 없다. 마지막으로 기존 기법들은 어느 정도의 성능을 내기 위해서는 프레임 당 10-30프레임 정도의 주변 영상 정보가 필요하기 때문에 매우 많은 연산량이 요구된다.

시간적 특성을 이용한 종래 비 검출 방식들의 문제점을 극복하기 위해 우리는 비의 밝기 특성과 구조적 특성 같은 공간적 특성만을 이용한 고성능 비 검출 방법을 제안한다. 또한, 가우시안 분포의 특성을 이용하여 비 줄기 영역과 세기를 측정하여, 이어지는 제거 파트의 성능을 향상시키기 위해 이용한다.

1.1 밝기 특성을 이용한 비 검출

빗방울은 대기 중에서 렌즈와 같이 주변의 빛들을 흡수한다[7]. 이러한 이유로 비 성분은 그림 1 (b)와 같이 주변 성분보다 높은 밝기 값을 가진다. 또한, 수직에 가까운 각을 유지하며 내리는 게 일반적이다. 따라서 우리는 비의 중심이 수평 방향으로 지역적 최대 밝기 값이라고 가정한다.

그림 1.(a) 비가 내리는 영상, (b) 각 박스의 중심에서 가로방향의 밝기 값 Fig. 1. (a) Rainy image, (b) the intensity value at horizontal axis of each box center

먼저 잡음에 의한 영향을 억제하기 위해 전형적인 가우시안 저주파 통과 필터링을 수행한다. 그 다음, 아래 식 (1)과 같이 중심 픽셀이 주변 2K개의 픽셀들보다 큰 값을 가지면서 그들의 평균 밝기 값과 적절한 차이를 갖는 성분들을 초기 비 후보 영역으로 선정한다.

여기서 I(x,y)는 (x,y) 위치에서의 밝기 레벨 값이며, R(x,y)는 비 지도로서 1이면 비 성분, 0이면 비가 아닌성분을 의미한다. M(x,y)는 식 (2)와 같이 (x,y)위치로 부터 좌, 우 각각 K 픽셀들의 평균을 의미한다. ϵ1은 단순한 오프셋 상수이다. 한편, 우리는 다양한 비 동영상들의 관찰을 통해 대부분의 비 성분이 [40, 80] 범위의 밝기 값을 가지는 것을 실험적으로 확인하였다. 그렇기 때문에, 상기 범위를 고려하여 실험적으로 상계 값 τ1를 설정하고 τ1이 상의 강한 밝기 값을 가지는 픽셀은 자신이 지역적 최댓값이라 하여도 비 성분이 아니라 잡음이나 에지로 분류한다. 이와 같은 과정을 통해 초기 빗줄기 지도 R(x,y)를 생성한다.

이렇게 만들어진 빗줄기 지도로부터 빗줄기 후보군을 결정한다. 먼저 구해진 빗줄기 지도를 labeling 한다. Labeling을 위해서 8-연결성에 기반한 MATLAB 내 함수 bwlabel를 사용하였다. 여기서 labeling의 결과 N개의 빗줄기 후보가 만들어진다. 그 다음 각 label Ln (n=1, 2, ... ,N)의 각도와 크기를 계산한다.

1.2 구조적 특성을 이용한 outlier 제거

1.1절에서 밝기 특성을 이용하여 초기 검출된 비 후보 군들 중 아웃라이어를 제거하기 위해 우리는 비의 구조적 특성을 추가적으로 이용한다. 비는 카메라 노출시간 때문에 블러된 선의 형태와 균일한 방향성을 가진다[3][4]. 즉, 비는 일정 크기 이상의 길이와 서로 비슷한 에지 각도를 갖는 구조적 특성을 갖는다. 이러한 특징을 이용해 다음과 같이 아웃라이어를 제거한다.

먼저, 식 (3)과 같이 각 라벨들 Ln 의 크기를 계산하여 비지도 상에서 아웃라이어를 제거한다.

여기서 #(Ln)은 Ln 에 속한 픽셀 개수를 나타낸다. 라벨 크기가 너무 작으면 비 성분이라고 보기 어렵기 때문에 #(Ln)이 특정 문턱값 τ2 보다 작으면 비 후보군에서 제외한다. 제안하는 기법에서 문턱값 τ2는 5로 실험적으로 결정하였다.

다음으로 각도를 이용한 아웃라이어 제거를 수행한다. θn 은 라벨 Ln 의 각도이고, 그 중 가장 빈도가 높은 각도를 θ라고 하자. 초기 검출이 신뢰도가 충분하다면 가장 빈번한 각도 θ 주변의 각도를 갖는 후보만이 비라고 할 수 있다. 이제 θ ± δ 범위에 속한 라벨들만을 비라고 판단하고 그 이외의 각도를 갖는 후보들은 비가 아니라고 판단한다. 결과적으로 식 (4)처럼 가장 빈도가 큰 각도 θ로부터 ± 10°범위, 즉, δ = 10°내 라벨들까지 비 성분으로 간주한다.

그림 2는 비의 구조적 특성을 이용하여 아웃라이어를 제거하기 전과 후의 비 지도 예이다.

그림 2.(a) 그림 1 (a)의 초기 검출 결과, (b) 그림 2 (a)의 outlier 제거 결과 Fig. 2. (a) Initial detection result for Fig. 1 (a), (b) the outlier reduction result for Fig. 2 (a)

1.3 비의 범위와 세기 결정

일반적으로 비는 실제 비 영역뿐만 아니라 주변도 열화시키기 때문에 비 영역의 경계가 뚜렷하지 않다. 따라서 어디까지를 비 영역으로 볼 것인지는 매우 중요한 이슈이다. 빗줄기의 세기 분포는 대개 가우시안 형태와 비슷하기 때문에[4], 우리는 가우시안 분포 모델을 통해 빗줄기 영역의 범위와 세기를 결정한다.

Ip 와 Iq 는 각각 앞에서 검출된 비 영역 내 특정 픽셀의 밝기 값과 Ip 의 양쪽 주변 픽셀 중 하나의 밝기 값이라고 하자. 우리는 Ip 을 중심으로 가우시안 영역의 95%를 포함하는 비의 경계 값 Iδ 를 식 (5)와 같이 정의한다.

본 논문에서는 가우시안 분포의 표준편차 σ를 Ip/10로 설정하였다. 우리는 비의 중심인 Ip 에서부터 양쪽으로 Iδ 이상의 밝기 값을 갖는 주변 화소들까지 비의 범위를 확장한다.

비의 범위가 결정되면 평균이 Ip 이고, 표준편차가 σ인 가우시안 분포를 이용하여 Ip 에서의 비 성분의 세기 F(x,y)를 식 (6)과 같이 결정한다.

여기서, Iq 화소의 위치가 (x,y)이다.

그림 3은 제안 비 검출 기법이 최종적으로 영상 내 빗줄기 세기와 두께를 밝기 값에 근거하여 적절하게 추정함을 보여준다. 본 절의 비 검출 단계에서 구해진 비의 위치 정보 R(x,y)와 세기 정보 F(x,y)는 이어지는 비 제거 단계에서 영상 복원에 활용된다.

그림 3.(a) 그림 1의 빗줄기 영역, (b) 빗줄기 지도 R, (c) 비 세기 지도 F Fig. 3. (a) A rain region of Fig. 1, (b) the rain map R, (c) the rain strength map F

2. 우적 제거

대부분의 종래 기법들은 비 제거를 위해 주로 공간적 특성에 기반한 알파 블렌딩이나 미디언 필터링과 같은 간단한 방법을 채택하였다[1-5]. 그러나 이런 방법들은 카메라 움직임이 있는 경우 물체의 에지 경계에서 블러 현상이나 계단 현상 아티팩트를 야기할 수 있다.

우리는 시간적 상관성을 고려하여 인접 프레임 간 움직임을 보상함으로써 카메라 움직임에 강인한 우적 제거 기법을 제안한다. 그림 4는 제안한 제거 방법의 블록도이다. 먼저 비 검출 결과를 참조해 인접 프레임 간 비가 아닌 영역 중심의 블록 매칭을 수행하고 유사한 블록 후보들을 선정한다. 그 다음, 추가적인 유사도 확인 과정을 거쳐 각 블록에 대해 가장 유사한 블록들을 선별한다. 그런 후 선별된 블록들을 이용한 NLM필터링을 통해 비 영역을 복원한다. 마지막 후처리 과정으로서 에지 보존 필터링과 가시성 향상 알고리즘을 적용하여 동영상 내 깜빡임 효과를 제거하고 가시성을 향상시킨다.

그림 4.제안하는 빗줄기 제거 기법의 블록도 Fig. 4. The block diagram of the proposed rain removal algorithm

2.1 블록 매칭을 이용한 유사 블록 후보군 생성

영상에서 비 성분은 시간적, 공간적으로 무질서하기 때문에 매우 불규칙한 잡음이라고 볼 수 있다. 따라서 비를 포함한 영상 간 움직임 보상을 위해 직접적으로 블록 정합을 적용할 경우 신뢰할만한 결과를 얻을 수 없다[8][9]. 다만 일정 세기 이하의 비 화소는 비의 영향이 작기 때문에, 블록매칭 과정에서 사용할 수도 있다. 따라서 일정 크기 이상의 세기를 갖는 강한 비 성분만을 취한 강한 비 지도 Rs(x,y)를 R(x,y)와 F(x,y)를 이용해 식 (7)과 같이 만든다.

실험적으로 0.2 이하의 세기를 갖는 비 성분은 주변을 열화시키는 정도가 매우 약하므로 τ3 은 0.2으로 정했다.

결과적으로 Rs(x,y)를 참조하여 식 (8)과 같이 블록 내비가 아닌 픽셀들만을 이용해 블록 매칭을 수행한다.

여기서 Ω는 참조 프레임 내 탐색 영역을 의미하며, Bc 는 현재블록, Br 은 참조블록을 의미한다. 일반적으로 탐색 영역 Ω는 영상의 움직임 정도에 의해 결정되는데, 본 논문에서는 ±32 으로 정하였다. 최적의 움직임 벡터인 (xmin,ymin)에 대응하는 참조 블록을 복원에 사용할 후보로 결정한다.

그러나 비가 심한 영상의 경우 여러 프레임에 걸쳐 비슷한 위치에서 비가 관찰되기 때문에 SAD가 최소인 블록 하나만으로는 정보가 매우 부족하다. 따라서 우리는 충분한 수의 후보군을 확보하기 위해 SAD가 낮은 순위로 top 20개의 블록들을 후보군으로 선정한다.

2.2 유사도 측정을 이용한 outlier 제거

2.1절에서 비가 아닌 영역에 기반한 블록 정합 기법을 통해 얻어진 후보 블록들은 복원하고자 하는 비 영역의 정보가 전혀 정합에 이용될 수 없었기 때문에 이상적인 정보와 유사하다는 보장이 없다. 그림 5(a)는 실제로 2.1 절에서 선정된 모든 블록을 이용하여 복원한 결과이다. 에지 경계에서 블러 현상을 관찰할 수 있다. 그래서 우리는 상대적인 SAD 분포를 이용해 식 (10)과 같이 후보 유사 블록들과 현재 블록 간 유사도를 계산하여 유사도가 낮은 아웃라이어 블록들을 제거한다.

그림 5.(a) outlier 제거 전의 복원 결과, (b) outlier 제거 후의 복원 결과 Fig. 5. (a) The reconstruction result before outlier removal, (b) the reconstruction results after outlier removal.

SADmax 와 SADmin 은 식 (8)로부터 얻어진 각 블록들의 SAD들 중 최대값과 최소값을 의미하며, SADk 과 ϵ2 은 번째 후보 블록과 현재 블록 간 SAD와 오프셋 상수이다. k번째 후보 블록과 현재 블록 간 유사도 Sk 는 SADk 가 SADmin 에 가까울수록 높아지고 상대적으로 SADk 가 커질수록 작아진다. 결과적으로 유사도가 특정 문턱값 τ4 보다 큰 후보블록들을 신뢰할만하다고 판단하고 최종 블록군에 포함시킨다. 그림 5 (b)는 유사도 측정을 통해 outlier를 제거한 후 복원한 영상으로 그림 5 (a)와 비교할 때 에지가 더 선명하고 고스트 아티팩트도 제거된 것을 알 수 있다.

2.3 비 제거

유사도 측정을 통해 걸러진 신뢰할만한 후보 블록들의 가중치 합을 구하고, 이를 최종적으로 비가 제거된 블록으로 활용한다. 본 논문은 앞서 구해진 후보 블록의 SAD와 후보 블록이 비를 포함하고 있는 비율을 이용해 가중치를 계산한다. 비 포함 비율은 식 (11)과 같이 나타낼 수 있다.

여기서 Ck 는 k번째 후보 블록을, #(Ck)는 Ck 내 총 픽셀 수를, #(NRk)는 Ck 내 비가 아닌 픽셀의 수를 각각 의미한다. 블록 내 비가 아닌 영역의 비율은 해당 블록 픽셀들의 열화 정도와 연관된다. 주변에 비 성분이 많이 존재하는 픽셀은 그렇지 않은 픽셀보다 비 성분에 의해 열화 되었을 가능성이 높다. 따라서 Ck 에 대한 가중치 wk 는 식 (12) 과 같이 Ck 내 비가 아닌 영역비율 P(k)에 비례하고현재 블록과의 차이인 SADk 값에는 반비례하게 결정된다.

여기서 구해진 가중치는 정규화하여 사용된다. 결과적으로 비가 제거된 복원 영상 Ir(x,y)은 식 (13)과 같이 블록들의 가중치 합으로 계산된다.

여기서 Rk(x,y)은 k번째 후보 블록에 대한 빗줄기 지도이다. 위와 같은 복원 과정을 영상 전체에서 블록 단위로 반복적으로 수행하여 1차 비 제거 영상을 얻는다.

2.4 hole filling

검출 과정에서 포함된 아웃라이어나 프레임마다 중복된 위치의 비 성분은 여전히 제거되지 않고 영상 내 hole로 남게 된다. 그림 6은 제안하는 hole 제거 방법의 블록도이다. 우선 hole 주변의 일정 영역을 포함하여 바운딩 박스를 설정하고 동시에 영상의 복잡도 지도를 구한다. 복잡도 지도는 복잡한 픽셀은 1, 그렇지 않은 픽셀은 0의 값을 가지는 이진 지도로 지역적 분산 값과 지역적 엔트로피를 이용해 계산하였다[11]. 이제 바운딩 박스 내 hole을 제외한 영역의 복잡도 지도를 이용하여 해당 영역이 복잡한지 평탄한지 결정한다. 평탄한 영역일 경우 해당 영역에서 hole이 아닌 주변 값들의 평균을 계산하여 hole을 채우고, 복잡한 영역의 hole은 2.1~2.3과정을 다시 수행하여 해당 영역의 에지 등을 훼손하지 않고 복원한다. 이 과정까지 수행하고도 남아있는 hole들은 모든 참조 프레임에 해당 위치에 대한 정보가 없는 경우라고 할 수다. 이런 경우는 검출 과정에서 오 검출된 영역일 확률이 높다. 따라서 마지막까지 살아남은 hole 영역은 해당 위치의 원본 값을 그대로 사용하여 영상을 복원한다.

그림 6.Hole filling 방법 블록도 Fig. 6. The block diagram of hole filling method

2.5 후 처리

앞서 언급한 바와 같이 영상 내 비 성분은 비 영역 외 주변 영역도 열화시켜 잔상현상 등을 일으킬 수 있다. 그리고 공기 중의 수증기로 인해 가시성 또한 낮다. 우리는 에지 보존 필터링과 가시성 향상 기법을 통해 비 영상에서 관찰되는 잔상현상과 낮은 가시성을 개선하였다.

먼저, 잔상 현상을 제거하기 위해 우리는 널리 사용되는 에지 보존 필터 중 하나인 guided image filter를 적용한다[12]. 비 제거 영상 Ir 에 guided filtering을 적용한 결과 영상 Ir,g 은 식 (14)과 같다.

여기서 wt 는 현재 화소를 포함하는 overlapping window 이고, (i,j)는 각 window의 중심 위치를 나타낸다. |w| 는 wt 에 속한 픽셀의 숫자이다. a(i,j) = σ(i,j)2/(σ(i,j)2 + ϵ3), b(i,j) = (1 - a(i,j)2)μ(i,j) 이고, σ(i,j)2와 μ(i,j)는 위치에서의 의 지역적 분산 값, 지역적 평균 값이다. σ(i,j)2가 ϵ3 보다 크면 클수록 b(i,j)가 결과 값에 적게 관여하기 때문에 원본 픽셀 값과 유사한 결과 값을 얻게 되고, ϵ3 보다 작으면 작을수록 b(i,j)가 결과 값에 많이 관여 하게 되어 지역적 평균 값과 비슷한 결과 값을 얻게 된다. 즉, 에지를 보존하며 평탄한 영역의 잡음들이 제거된 결과를 얻을 수 있다.

그 다음, 우리는 수증기 때문에 흐려진 영상을 깨끗하게 만들기 위해 적절한 가시성 향상 알고리즘을 적용한다. Tarel과 Hautiere는 Koschmieder’s law를 활용하여 깨끗한 영상과 안개에 의해 흐려진 영상 간의 관계를 아래 식 (15)와 같이 설정하였다[13].

여기서 Iout(x,y)는 가시성이 향상된 최종 결과 영상이다. V(x,y)는 atmospheric veil이고 Is 는 화이트 밸런스 값으로서 우리는 255로 설정하였다. 여기서 V(x,y)만 구하면 복원 영상 을 구할 수 있다. V(x,y)를 구하는 자세한방법은 Tarel의 논문[13]을 참조하면 된다.

위와 같이 두 가지 후처리 과정을 통해 우리는 영상의 컨텐츠를 보존하면서 지저분한 잔상현상을 제거하고 가시성을 향상시킨 최종 비 제거 영상을 얻을 수 있다.

 

Ⅳ. 실험 결과

제안한 기법의 성능을 검증하기 위해 여러 논문에서 실험 영상으로 사용된 바 있는 영화 “매그놀리아” 내 비오는 장면과 SONY HDR-CX130으로 직접 촬영한 동영상을 사용하였다. 직접 촬영한 동영상의 경우 카메라 움직임에 대한 강인성을 보기 위해 비오는 환경에서 카메라를 움직이며 촬영되었으며, 720x480@30Hz의 포맷을 갖는다.

우리는 제안 기법을 Zhang 방법[2]과 Xue 방법[5]과 비교하였다. 제안 기법에서 τ1, τ2, τ3, τ4 는 각각 100, 5, 0.2, 0.2로 설정되었다. σ 와 Ω는 각각 10°과 ±32으로 설정하였다. 이 값들은 실험용 영상들 외 다른 영상들을 통해 최적으로 선정된 값들이다.

그림 7, 8은 카메라 움직임이 없는 매그놀리아 영화에서의 비 영역 검출과 제거 결과를 보여준다. 물체의 움직임이 없는 배경의 경우 제안 기법은 물론 종래 기법들도 비를 잘 검출한다. 그러나 그림 7 (b)와 같이 Zhang 방법은 카메라가 정지한 상황에서도 물체가 움직이는 영역에 대해서는 많은 아웃라이어를 포함하는 것을 알 수 있다. 그리고 Xue의 방법은 아웃라이어는 비교적 적지만 제안 기법과 비교 했을 때 검출하지 못한 비가 많은 것을 알 수 있다. 반면 그림 7 (d)와 같이 제안하는 기법은 많은 빗줄기들과 그 영역을 검출한 것을 알 수 있다. 그 결과, 제안 기법의 그림 8 (d)가 다른 기법들의 결과인 그림 8 (b), (c)과 비교하여 아티팩트 없이 우수한 결과를 보였다.

그림 7.(a) 카메라 움직임이 없는 영상, (b) [2]의 빗줄기 검출 결과, (c) [5]의 빗줄기 검출 결과, (d) 제안 알고리즘의 빗줄기 검출 결과 Fig. 7. (a) Original image without camera motion, (b) The detection result in [2], (c) The detection result in [5], (d) The proposed detection result.

그림 8.(a) 카메라 움직임이 없는 영상, (b) [2]의 빗줄기 제거 결과, (c) [5]의 빗줄기 제거 결과, (d) 제안 알고리즘 빗줄기의 제거 결과 Fig. 8. (a) Original image without camera motion, (b) The rain removal result in [2], (c) The rain removal result in [5], (d) The proposed rain removal result.

그림 9, 10는 카메라 움직임이 있는 환경에서 비 검출과 제거 결과를 보여준다. 그림 9 (d)와 같이 제안 기법은 카메라 움직임에 강인한 검출 결과를 보인다. 반면 그림 9 (b)와 그림 9 (c)에서 보듯이 기존 기법들은 많은 아웃라이어를 포함하고 있거나 비를 제대로 검출하지 못하는 것을 알 수 있다. Zhang 방법의 경우, 비 영역을 제거할 때도 시간적 정보를 활용하는 방식 때문에 카메라가 움직이는 상황에서 비 제거가 완전히 실패하는 것을 그림 10 (b)를 통해 알 수 있다. Xue 기법의 경우에는 인페인팅 기법을 활용하였으나 검출 성능이 떨어져 좋은 결과를 얻지 못하였다. 반면, 제안하는 기법은 비 영역을 고려한 블록 매칭 기법을 사용했기 때문에 카메라가 움직이고 많은 비가 내리는 상황에 대해서도 신뢰도 높은 주변 정보들을 참조하여 우수한 복원 성능을 보였다. 게다가 후 처리를 통해 그림 10 (d)와 같이 좀 더 보기 좋은 영상을 생성하였다.

그림 9.(a) 카메라 움직임이 있는 영상, (b) [2]의 빗줄기 검출 결과, (c) [5]의 빗줄기 검출 결과, (d) 제안 알고리즘의 빗줄기 검출 결과 Fig. 9. (a) Original image with camera motion, (b) The detection result in [2], (c) The detection result in [5], (d) The proposed detection result.

그림 10.(a) 카메라 움직임이 있는 영상, (b) [2]의 빗줄기 제거 결과, (c) [5]의 빗줄기 제거 결과, (d) 제안 알고리즘 빗줄기의 제거 결과 Fig. 10. (a) Original image with camera motion, (b) The rain removal result in [2], (c) The rain removal result in [5], (d) The proposed rain removal result.

 

Ⅴ. 결 론

본 논문에서 우리는 카메라 움직임에 강인한 새로운 비검출과 제거 기법을 제안했다. 비의 공간적 특성만을 이용하여 카메라 움직임에 강인할 뿐만 아니라 다양한 세기의 비 성분들을 검출할 수 있었다. 그리고 가우시안 모델 분포를 적용하여 열화 된 주변 영역까지 커버함으로써 제거 성능에 도움을 주었다.

제거 기법에서는 처음으로 움직임을 보상할 수 있는 비검출 정보를 이용한 블록 매칭 기반 방법을 적용하여 뛰어난 복원 성능을 보였다. 특히 유사도 측정과 블록 내 비 성분의 비율을 고려한 새로운 가중치 계산을 통해 물체의 경계를 보존하고 블러 효과를 방지하였다.

마지막으로 에지 보존 필터링과 가시성 향상 기법을 통해 열화 된 비 영상의 화질을 전체적으로 개선하였다. 이러한 제안 기법의 우수성은 실험결과를 통해 정성적으로 확인할 수 있었다.

References

  1. K. Garg and S. K. Nayar, “Detection and removal of rain from videos,” in Proc. IEEE Conf. Comput. Vis. Pattern Recognit., Jun. 2004, vol. 1, pp. 528–535.
  2. X. Zhang, H. Li, Y. Qi, W. K. Leow, and T. K. Ng, “Rain removal in video by combining temporal and chromatic properties,” in Proc. IEEE Int. Conf. Multimedia Expo., Toronto, ON, Canada, Jul. 2006, pp. 461–464.
  3. P. Barnum, T. Kanade, and S. G. Narasimhan, “Spatio-temporal frequency analysis for removing rain and snow from videos,” in Workshop on Photometric Analysis for Computer Vision, in Conjunction with International Conference on Computer Vision, 2007.
  4. P. Barnum, S. Narasimhan, and T. Kanade, “Analysis of rain and snow in frequency space,” Int. J. Comput. Vis., vol. 86, no. 2/3, pp. 256–274, Jan. 2010. https://doi.org/10.1007/s11263-008-0200-2
  5. X. Xue, X. Jin, C. Zhang, and S. Goto, “Motion robust rain detection and removal from videos,” in Proc, IEEE Int. Workshop on Multimedia Signal Processing, 2012, pp.170-174.
  6. J. H. Kim, C. Lee, J. Y. Sim and C. S. Kim, “Single-image deraining using an adaptive nonlocal means filter,” in Proc. IEEE Conf. Image Process., Sept. 2013, pp.914-917.
  7. K. Garg and S.K. Nayar, “Vision and rain,” Int. J. Comput. Vis., vol. 75, no. 1, pp.3–27, Jan. 2007. https://doi.org/10.1007/s11263-006-0028-6
  8. J. H. Lee, K. W. Lim, B. C. Song, and J. B. Ra, “A fast multi-resolution block matching algorithm and its LSI architecture for low bit-rate video coding,” IEEE Trans. Circuits and Systems for Video Technology, vol. 11, no. 12, pp.1289–1300, Dec. 2001. https://doi.org/10.1109/76.974683
  9. A. M. Tourapis, O. C. Au, and M. L. Liou, “Highly efficient predictive zonal algorithms for fast block-matching motion estimation,” IEEE Trans. Circuits and Systems for Video Technology, vol. 12, no. 10, pp. 934- 941, Oct. 2002. https://doi.org/10.1109/TCSVT.2002.804894
  10. A. Buades, B. Coll, and J.-M. Morel, “A non-local algorithm for image denoising”, in Proc. IEEE Conf. Comput. Vis. Pattern Recognit., vol. 2, pp. 60-65, Jun. 2005.
  11. W. Ahn and J.-S. Kim, “Flat-region detection and false contour removal in the digital TV display,” in Proc. IEEE Int. Conf. Multimedia and Expo, Armsterdam, The Netherlands, July 2005, pp. 1338-1341.
  12. K. He, J. Sun, and X. Tang, “Guided Image Filtering,” in Proc. European Conf. Computer Vision, pp. 1-14, 2010.
  13. J. P. Tarel and N. Hautiere, “Fast visibility restoration from a single color or gray level image,” in Proc. IEEE Int. Conf. Comput. Vis., Kyoto, Japan, 2009, pp. 2201–2208.