Ⅰ. 서 론 최근 무인자동차, 드론, 수중 로봇과 같은 모빌리티 (Mobility) 특성을 갖는 기계들은 다양한 조명 및 날씨 환경에 처하게 된다. 즉 캄캄한 밤길이나 비가 내리는 상황에서 주행을 해야 되거나 자욱한 안개가 존재해서 가시성이 떨어지는 상황에서 이동을 해야 되는 경우가 발생하게 된다. 또한 야외에 설치된 CCTV와 같은 고 정된 영상 센서도 다양한 조명 및 날씨 환경에 놓일 수 있다. 이러한 경우 캡처된 영상은 잡음, 블러링, 안개, 빗줄기 등으로 인해 화질의 열화가 발생하게 된다. 이 러한 열화된 영상에서 선명한 화질을 복구하거나 컴퓨 터 비전의 성능을 높이기 위한 작업이 최근에 이루어지 고 있다[1~2]. 왜냐하면 기존의 영상처리나 컴퓨터 비전 기술은 날씨가 청명하고 조도가 충분히 밝은 제약조건 아래에서 개발되어 왔다. 실제로 학습에 사용되는 영상 데이터베이스가 청명한 날씨에서 촬영이 된 것을 볼 수 있다[3~6]. 하지만 실제 필드 상황에서는 영상 데이터베 이스에서 촬영된 조건과 상이하기 때문에 조도나 날씨 논문 2017-54-8-9
심층 컨볼루셔널 신경망 기반의 빗줄기 검출 기법
( Rain Detection via Deep Convolutional Neural Networks )
손 창 환
( Chang-Hwan Sonⓒ) 요 약 본 논문에서는 단일 영상에서 빗줄기가 포함된 영역을 검출하기 위한 빗줄기 검출 기법을 제시하고자 한다. 특히 빗줄기가 포함된 패치와 그렇지 않은 패치들을 각각 수집한 후에 지도 학습 기반으로 심층 컨볼루셔널 신경망을 훈련시키고 빗줄기 영 역을 검출하는 과정에 대해 자세히 소개하고자 한다. 또한 제안한 심층 컨볼루셔널 신경망 기반의 빗줄기 검출 기법이 기존의 사전 학습 기반의 빗줄기 검출 기법과 비교해서 저주파 영역에서 빗줄기 검출 성능이 더 우수함을 보이고자 한다. 그리고 제 안한 빗줄기 검출 기법을 빗줄기 제거 분야에 적용해봄으로써 기존의 사전 학습 기반의 빗줄기 검출 기법보다 저주파 영역에 서 디테일한 성분을 더 정확하게 묘사할 수 있음을 보여주고자 한다. 부가적으로 본 논문에서는 원본 영상에 빗줄기 패턴을 삽입하여 비가 내리는 시각적인 효과를 줄 수 있는 빗줄기 천이 기법에 대해서도 소개하고자 한다. 제안한 빗줄기 천이 기법 은 빗줄기 영상 데이터베이스를 구축할 때 빗줄기의 다양한 패턴을 확보하는 데 유용하게 사용이 될 수 있다. AbstractThis paper proposes a method of detecting rain regions from a single image. More specifically, a way of training the deep convolutional neural network based on the collected rain and non-rain patches is presented in a supervised manner. It is also shown that the proposed rain detection method based on deep convolutional neural network can provide better performance than the conventional rain detection method based on dictionary learning. Moreover, it is confirmed that the application of the proposed rain detection for rain removal can lead to some improvement in detail representation on the low-frequency regions of the rain-removed images. Additionally, this paper introduces the rain transfer method that inserts rain patterns into original images, thereby producing rain effects on the resulting images. The proposed rain transfer method could be used to augment rain patterns while constructing rain database.
Keywords: Rain detection, Deep learning, Rain removal, Dictionary learning, Sparse coding
정회원, 군산대학교 소프트웨어융합공학과
(Department of Software Convergence Engineering, Kunsan National University)
Corresponding Author (E-mail : [email protected]) ※ 이 논문은 2017년도 정부(교육부)의 재원으로 한국
연구재단의 지원을 받아 수행된 기초연구사업임(No. 2017R1D1A3B03030853).
Received ; April 25, 2017 Revised ; July 11, 2017
Accepted ; July 24, 2017
영상에서 빗줄기는 컴퓨터 비전의 성능을 저하시키는 하나의 요인으로 작용한다. 예를 들면 SIFT[8], HOG[9]와 같은 피처(Feature)는 방향에 따른 에지의 값에 의해 모 델링되기 때문에 캡처된 영상에서 빗줄기의 영향을 받 을 수밖에 없다. 이는 곧 최종 컴퓨터 비전의 성능에 부 정적인 영향을 줄 수 있다는 것을 의미한다. 따라서 비 가 내리는 조건에서 컴퓨터 비전의 성능을 개선하기 위 해서는 빗줄기 영역을 찾고 제거하는 과정이 필요하다. 본 논문에서는 빗줄기 영역을 찾는 과정에 더 초점을 맞출 것이다. 특히 단일 영상에서 심층 컨볼루셔널 신경 망(Deep Convolutional Neural Networks)을 적용해서 빗줄기 영역을 찾는 기법에 대해 소개하고자 한다. 그리 고 제안한 빗줄기 영역 검출 기법을 빗줄기 제거 분야 에 적용해서 얼마나 효과적으로 빗줄기를 제거할 수 있 는지를 알아보고자 한다. 부가적으로 빗줄기 영상을 인 위적으로 생성할 수 있는 빗줄기 천이 기법(Rain Transfer)도 소개하고자 한다. 본 논문의 기여도는 다음과 같이 요약될 수 있다. 첫 째, 본 논문에서는 데이터베이스에서 확보된 각각의 빗 줄기 영상에 스크리블(Scribble) 작업을 거쳐 빗줄기 패 치(Rain Patch)를 추출하고 동일하게 빗줄기가 포함되 지 않은 일반 영상으로부터 일반 패치를 추출함으로써, 지도 학습(Supervised Learning) 기반의 빗줄기 검출 기법을 제안하고자 한다. 특히 지도 학습 기법 중에서도 심층 컨볼루셔날 신경망을 사용해서 빗줄기 영역을 검 출하는 기법을 제시하고자 한다. 종래의 빗줄기 검출 기 법은 빗줄기 영역을 사용자가 직접 지정해주거나 또는 수작업(Handcrafted) 기반의 피처 모델링 방식을 사용 하고 있다[10~12]. 하지만 수작업 기반의 피처 설계 기법 은 다양한 빗줄기 패턴을 모델링하기에는 한계가 있다. 최근 이러한 문제를 극복하고자 사전 학습(Dictionary Learning) 기반의 빗줄기 검출 기법이 제안되었다[13]. 이 기법은 입력 영상에서 일반 패치와 빗줄기 패치를 빗줄 기에 최적화된 “빗줄기 사전”(Rain Dictionary)을 사용 해서 각각 복원한 다음에, 복원률의 상대적인 정확도를 척도로 삼아서 빗줄기 패치와 일반 패치를 분류해주는 데 성공하였다. 하지만 저주파 영역에서 빗줄기 영역과 빗줄기가 없는 영역을 잘 구분하지 못하는 단점이 발견 되었다. 따라서 본 논문에서는 심층 신경망(Deep 영역에서 디테일한 성분을 더 세밀하게 묘사할 수 있음 을 보여주고자 한다. 둘째, 본 논문에서는 일반 영상에 빗줄기 패턴을 삽입 하는 빗줄기 천이 기법에 대해서도 제안하고자 한다. 즉 일반 영상에 비가 내리는 효과를 주고 싶을 때 제안한 방 법을 사용할 수 있다. 특히 빗줄기 영상들을 미리 수집한 후에 다양한 빗줄기 패턴을 추출하고 룩 업 테이블에 저 장할 수 있다. 그리고 사용자가 특정 빗줄기 패턴을 선택 하면 일반 영상에 지정된 빗줄기 패턴을 자연스럽게 삽입 하는 빗줄기 천이 과정을 수행하게 된다. 이를 통해 일반 영상에 비가 내리는 시각적인 효과를 제공할 수 있게 된 다. 특히 모바일 폰에서 촬영된 사진에 비가 내리는 특수 효과를 주기 위한 기능으로도 활용이 될 수 있다. 제안한 빗줄기 천이 기법은 빗줄기 영상 데이터베이스를 보다 강 화하는 데에도 사용이 될 수 있다. 지도 학습 기반의 빗줄 기 검출 기법은 라벨링(Labeling) 작업을 필요로 한다. 웹 서치를 통해서 빗줄기 영상을 수집할 수 있지만 제안한 빗줄기 천이 기법을 사용해서 보다 풍부한 빗줄기 영상 데이터베이스를 구축하는 것이 가능하다. Ⅱ. 제안한 빗줄기 천이 기법 먼저 본 절에서는 기 확보된 빗줄기 영상들을 사용해 서 일반 영상에 빗줄기 패턴을 삽입하는 기술, 즉 빗줄 기 천이 기법에 대해 말하고자 한다. 제안한 빗줄기 천 이 기법의 과정은 다음과 같다. 1단계: 먼저 빗줄기 영상 샘플과 빗줄기가 없는 일반 영상을 각각 준비한다. 그리고 그래픽 편집 툴의 선택 도구를 사용해서 빗줄기 영상에서 빗줄기가 존재하는 부분을 검정 색상으로 마스킹(Masking)을 한다. 2단계: 마스킹 된 영역에서 빗줄기 패치들을 추출하고 수집한 다음에 랜덤하게 하나를 추출한다. 그리고 잔여 빗줄기 패치(Residual Rain Patch)를 생성한다. 잔여 빗 줄기 패치는 추출된 빗줄기 패치에서 평균값을 뺌으로 구할 수 있다.
상의 (i,j)번째 위치에 있는 패치에 더해준다. 이 과정을 통해 합성 빗줄기 패치(Synthetic Rain Patch)가 만들어 지게 된다. 이때 잔여 빗줄기 패치에 난수 값을 이득 계 수(Gain Factor)로 곱해준다. 이를 통해 좀 더 자연스러 운 빗줄기 영상을 만들 수 있다. 최초의 (i,j)의 픽셀 좌 표의 위치는 일반 영상의 좌측 상단이 될 것이다. 4단계: 합성 빗줄기 패치들이 중복되는 영역에서는 패 치 밝기의 불일치로 경계면 결함(Boundary Artifacts)이 발생할 수 있다. 이러한 문제를 해결하기 위해, 동적계 획법(Dynamic Programming)을 패치 중복 영역에 적용 해서 밝기의 불일치를 최소화할 수 있는 하나의 절단선 (Cut)을 찾는다[14]. 그런 후에 이 절단선을 기준으로 합 성 빗줄기 패치들을 중복 영역에서 결합한다. 5단계: (i,j)의 픽셀 좌표 위치를 우측으로 한 칸 이동한 후, 2단계에서 4단계까지의 과정을 반복 수행한다. 만약 (i,j)의 픽셀 좌표 위치가 영상의 맨 오른쪽 우측에 도달 하면 상기의 알고리즘이 종료하게 된다. 그림 1은 제안한 빗줄기 천이 기법을 적용해서 생성 그림 1. 빗줄기 영상 샘플, 마스킹된 빗줄기 영상, 빗줄기가 없는 입력 영상, 합성된 빗줄기 영상 (좌측에서 우측) Fig. 1. Rain image samples, masked rain images, input nonrain images, synthetic rain images (left to right). 표 1. 제안한 심층 컨볼루셔널 신경망의 아키텍처
Table1. Architecture of the proposed deep convolutional neural networks.
레이어 번호 1 2 3 4 5
레이어 종류 'conv' 'relu' 'conv' 'relu' 'max pooling' 필터 또는 풀링 사이즈 3x3x1x30 - 3x3x30x30 - 2x2
스트라이드(stride) 1 - 1 - 2 패딩 (padding) 1 - 1 - 0
레이어 번호 6 7 8 9 10
레이어 종류 'conv' 'relu' 'conv' 'relu' 'max pooling' 필터 또는 풀링 사이즈 3x3x30x30 - 3x3x30x30 - 2x2
스트라이드 1 - 1 - 2
패딩 1 - 1 - 0
레이어 번호 11 12 13 14 15
레이어 종류 'conv' 'relu' 'conv' 'relu' 'softmaxloss' 필터 또는 풀링 사이즈 3x3x30x10 - 2x2x10x2 -
-스트라이드 1 - 1 -
-고 세 번째 영상은 빗줄기가 없는 일반 입력 영상이다. 이 입력 영상에 빗줄기 영상의 마스킹 된 영역에서 추 출된 빗줄기 패치를 삽입할 것이다. 맨 우측 그림이 제 안한 빗줄기 천이 기법을 사용해서 생성된 합성 빗줄기 영상이다. 그림에서 볼 수 있듯이, 합성 빗줄기 영상의 빗줄기 패턴이 빗줄기 영상의 빗줄기 패턴과 아주 유사 한 것을 알 수 있다. 따라서 제안한 빗줄기 천이 기법을 빗줄기 영상에 포함된 빗줄기 패턴을 입력 영상에 삽입 하는 기술로 볼 수 있다. 제안한 빗줄기 천이 기법은 종 래의 컴퓨터 그래픽스 분야의 이미지 모달러티 변환 (Image Modality Transform)[14]이나 텍스처 퀄트 (Texture Quilt)[15]의 한 응용 분야로 생각될 수 있다. Ⅲ. 제안한 심층 컨볼루셔널 신경망 기반의 빗줄기 검출 기법 본 논문에서는 빗줄기 영역을 검출하기 위해 지도 학 습 기반의 심층 컨볼루셔널 신경망 기법을 사용하고자 한다. 이를 위해서는 먼저 빗줄기 패치와 빗줄기가 없는 일반 패치를 각각 수집해서 훈련 데이터베이스를 확보 하는 과정이 필요하다. 빗줄기 패치를 수집하기 위해인 터넷에서 다양한 빗줄기 패턴을 갖는 100장의 빗줄기 영상을 수집하였다. 그런 후에 그림 1과 같이 빗줄기 영 상에 마스킹 작업을 수행한 다음, 빗줄기 패치들을 추출 하였다. 물론 앞 절에서 설명한 빗줄기 천이 기법을 사 용해서 빗줄기 패치의 데이터베이스를 좀 더 강화할 수 있다. 그리고 빗줄기가 없는 일반 패치들은 일반 영상데 이터베이스에서 랜덤하게 추출하였다. 추출된 패치의 크기는 16x16이고 학습에 사용된 총 패치의 수는 13189 개이다. 학습될 패치들을 확보한 후, 심층 컨볼루셔널 신경망 의 파라미터를 학습하였다. 본 연구에서 사용된 심층 컨 볼루셔널 신경망의 아키텍처는 컨볼루션(conv), 풀링 (pooling), 정류선형유닛(relu)으로 구성되어 있고 총 레 이어의 수는 15개이다. 사용된 아키텍처의 자세한 사항 은 표 1에 요약되어 있다. 참고로 본 연구에서는 “MatConvNet” 오픈 라이브러리 코드를 사용했으며 표1 에 사용된 용어의 정의는 “MatConvNet” 매뉴얼을 참고 하기 바란다[16]. 그리고 매틀랩 소스 코드와 빗줄기 영 상 데이터베이스는 https://sites.google.com/site/cha nghwan76son 웹사이트에서 다운로드 가능하다. 그림 2의 오른쪽 그림은 제안한 지도 학습 기반의 빗 줄기 검출 기법의 오차를 보여주고 있다. 여기서 오차라 함은 총 패치 개수에 대해서 라벨 추정이 잘못된 개수 의 비율을 의미한다. 그리고 ‘train’과 ‘val’은 각각 학습 에 사용된 패치의 오차와 학습에 사용되지 않은 패치의 오차를 각각 가리킨다. ‘train’과 ‘val’에 사용된 패치의 비율은 5:1로 구성되었다. 그림에서 보듯이 ‘train’의 오 차는 0.09 정도이다. 즉 91%의 정확도를 가지고 있다. 그림 2. 제안한 심층 신경망 기반의 빗줄기 검출의 훈련 및 검증 오차
Fig. 2. Training and validation errors of the proposed rain detection via deep neural networks.
그림 3. 실험 결과; 입력 빗줄기 영상 (첫째 행), 사전 학 습[13] 기반으로 추정된 빗줄기 영역 (둘째 행), 제안한 심층 신경망 기반으로 추정된 빗줄기 영 역 (셋째 행)
Fig. 3. Experimental results: input rain images (first row), estimated rain regions via dictionary learning[13] (middle row), and estimated rain regions via proposed deep neural networks (bottom row).
그리고 ‘val’은 0.15의 오차를 가지고 있으며 85%의 정 확도를 가지고 있음을 알 수 있다. 15% 정도의 오차가 발생하는데 그 이유는 빗줄기 패턴과 일반 패치의 패턴 이 어느 정도의 상관성을 가지고 있기 때문이다. 예를 들어 비가 수직 방향으로 떨어질 때 빗줄기 패턴이 건 물의 경계면의 라인과 유사할 수 있으므로 구별하기가 쉽지 않다. 그림 2에서 왼쪽 그림은 손실 함수, 즉 ‘softmaxloss’의 값이 감소하는 것을 보여주고 있다. 즉 역전파(Backpropagation) 과정을 통해 신경망의 파라미 터 값을 갱신함으로써 손실 함수의 값이 감소되는 것을 확인할 수 있다. 그림 3은 제안한 기법과 종래의 사전 학습 기법[13]을 적용해서 검출된 빗줄기 영역의 결과를 보여주고 있다. 그림에서 보듯이 비가 내리는 영역은 검정색으로 객체 영역은 흰색으로 표시된 것을 볼 수 있다. 즉 빗줄기 패 턴을 포함한 패치 영역은 라벨 값이 ‘0’에 해당하는 검 정색이고, 빗줄기가 없는 일반(또는 객체) 패치는 라벨 값이 ‘255’에 대응하는 흰색으로 표시되었다. 그리고 패 치가 중복되는 영역에서 추정된 라벨 값이 다르면 평균 을 취해서 그레이 색상으로 표현해 주었다. 결과 영상에서 보듯이 제안한 심층 컨볼루셔널 신경 망 기반의 빗줄기 검출 기법이 입력 빗줄기 영상에서 객체 부분과 빗줄기 영역을 잘 분류하고 있음을 알 수 있다. 예를 들어 첫 번째 영상에서 얼굴은 객체 영역으 로 분류가 되었고 비가 내리는 배경 영역은 빗줄기 영 역으로 분류된 것을 볼 수 있다. 다른 영상에서도 유사 그림 4. 실험 결과; 입력 빗줄기 영상 (첫 번째 열), 사전 학습 기반의 빗줄기 제거 기법 (두 번째 열)[7], 스팔스 코드의 수 축 모델링에 기반한 빗줄기 제거 기법[13] (세 번째 열), 제안한 빗줄기 검출 기법과 스팔스 코드의 수축 모델링 기반의 빗줄기 제거 기법 (마지막 열)
Fig. 4. Experimental results: input rain images (first column), rain removal via dictionary learning[7] (second column), rain
removal via shrinkage of sparse codes[13] (third column), and rain removal via shrinkage of sparse codes and the proposed rain detection (last column).
한 결과를 확인할 수 있다. 물론 아직까지는 픽셀 단위 로 빗줄기가 위치한 경계면을 정밀하게 추정하지는 못 하고 있다. 따라서 향후에는 픽셀 단위로 빗줄기의 윤곽 선까지 검출할 수 있는 기법을 개발할 것이다. 반면에 기존의 사전 학습 기반의 빗줄기 추정 기법도 객체 영역과 빗줄기 영역을 분류하는 것이 가능하다. 하 지만 객체 영역의 내부가 빗줄기 영역으로 분류된 것을 볼 수 있다. 즉 기존의 사전 학습 기반의 빗줄기 검출 기법은 평탄한 영역이나 에지의 강도가 약한 저주파 영 역에서 빗줄기 영역과 객체 영역을 잘 구분하지 못함을 알 수 있다. 예를 들어 첫 번째 입력 영상에서는 가슴 부분을 빗줄기 영역으로 분류한 것을 볼 수 있고, 두 번 째 영상 같은 경우에는 어깨 라인이나 세밀한 머리카락 부분을, 마지막 영상 같은 경우에는 목 부분의 주름 영 역을 빗줄기 영역으로 오검출한 것을 볼 수 있다. 이는 저주파 영역에 속한 객체의 패치는 에지의 강도가 아주 작기 때문에 단지 “빗줄기 사전”의 복원 오차로써는 빗 줄기와 객체 영역을 구분하기에는 다소 무리가 있음을 보여준다. Ⅳ. 빗줄기 제거 분야 적용 제안한 빗줄기 검출 기법과 기존의 빗줄기 검출 기법이 최종 화질 개선에 어떤 영향을 주는지를 확인하기 위해 빗줄기 제거 분야에 각각 적용해보았다. 그림 4는 입력 빗줄기 영상에서 빗줄기 패턴을 제거한 결과 영상을 보 여주고 있다. 기존의 사전 학습 기반의 빗줄기 제거 기 법[7]은 입력 영상에서 사전을 학습한 후에 빗줄기 패턴 은 세로 방향의 에지 성분을 가진다는 가정을 기반으로 학습된 “전체 사전”에서 “빗줄기 사전”을 따로 추출한 다. 그리고 “빗줄기 사전”의 스팔스 코드의 값을 ‘0’으로 만듦으로써 빗줄기 패턴을 제거한다. 하지만 사용된 수 작업 기반의 피처 설계 방식은 다양한 빗줄기 패턴을 모델링하기에는 한계가 있기 때문에 “전체 사전”에서 “빗줄기 사전”을 정확하게 분리하는 것은 어렵다. 이러 한 이유로 결과 영상에서 빗줄기 패턴뿐만 아니라 객체 의 에지 성분도 동시에 제거된 것을 볼 수 있다. 물론 가로 방향의 에지 성분은 잘 보존하고 세로 방향의 빗 줄기 패턴은 잘 제거하는 것을 볼 수 있다. 특히 그림 4 의 맨 아래에 위치한 영상에 대해서는 세로 방향의 빗 줄기 패턴을 잘 제거한 것을 볼 수 있다. 기존의 세로 방향의 빗줄기 패턴에 최적화된 사전 학 습 기반의 빗줄기 제거 기법[7]의 단점을 보완하기 위해, 스팔스 코드(Sparse Code)의 수축 모델링에 기반한 빗 줄기 제거 기법이 제안되었다[13]. 이 기법은 먼저 빗줄 기 영역과 객체 영역에 대응하는 사전을 따로 학습한 후에, “빗줄기 사전”만을 사용해서 영상내의 입력 패치 들을 각각 복원한다. 그 다음 “빗줄기 사전”과 “객체 사 전”의 스팔스 코드의 값을 복원된 패치의 정확도에 따 라서 선형적으로 변경해 준다. 이러한 과정을 통해서 객 체 영역의 디테일 한 성분은 보존하고 빗줄기 영역에서 의 빗줄기 패턴을 잘 제거하는 것이 가능하였다. 그림 4 에서 보듯이 스팔스 코드의 수축 모델링 기반의 빗줄기 제거 기법[13]이 기존의 에지 방향에 최적화 된 사전 학 습 기반의 빗줄기 제거 기법[7] 보다 빗줄기 제거 성능 측면에서 상당한 발전을 보이고 있다. 하지만 앞 장에서 논의했듯이 이러한 빗줄기 검출 기법이 저주파 영역에 서 빗줄기와 객체 영역을 잘 분류하지 못하는 결함을 갖고 있다. 이러한 이유로 객체 내부의 저주파 성분에 대응하는 디테일한 성분을 잘 표현하지 못함을 볼 수 있다. 예를 들면 첫 번째 영상에서는 가슴 부위의 근육 을, 두 번째 영상에서는 목 주변의 근육을 잘 표현하지 못함을 알 수 있다. 기존의 스팔스 코드의 수축 모델링에 기반한 빗줄기 제거[13]와 제안한 심층 컨볼루셔널 신경망 기반의 빗줄 기 제거의 차이는 그림 4의 세 번째와 마지막 열에 놓 그림 4의 첫 번째 행 65.582 44.472 40.778 그림 4의 두 번째 행 63.987 46.410 39.623 그림 4의 세 번째 행 53.055 37.310 34.075 그림 4의 네 번째 행 60.4205 71.904 72.362 평균값 60.761 50.024 46.709
인 결과 영상을 비교하면 된다. 그림에서 볼 수 있듯이, 제안한 심층 컨볼루셔널 신경망 기반의 빗줄기 검출 기 법을 기존의 스팔스 코드 수축 모델링 기반의 빗줄기 제거 기법과 결합했을 때, 객체 내부의 디테일의 정확도 를 한 층 더 개선한 것을 볼 수 있다. 마지막 열의 빨간 색 박스에서 이런 효과를 확인해 볼 수 있다. 따라서 그 림 4의 결과로부터 제안한 심층 컨볼루셔널 신경망 기 반의 빗줄기 검출 기법이 저주파 영역에서 기존의 사전 학습 기반의 빗줄기 검출 기법보다도 빗줄기 검출 및 제거 측면에서 더 효과적이라고 말할 수 있다. 정량적인 성능을 평가하기 위해서 본 논문에서는 암 맹 화질 평가(Blind Image Quality Evaluation)를 도입 하였다[17]. 이러한 이유는 빗줄기 영상에 대한 원본 영 상을 알지 못하기 때문이다. 표 2는 암맹 화질 평가의 결과를 보여주고 있다. 참고로 표 2에서 수치가 낮을수 록 영상의 선명도, 색상, 에지 등의 결함이 낮은 것을 의미한다. 즉 수치가 낮을수록 결과 영상의 화질이 더 좋다는 것을 의미한다. 따라서 제안한 심층 컨볼루셔널 신경망 기반의 빗줄기 검출 기법과 기존의 스팔스 수축 모델링 기반의 빗줄기 제거 기법을 결합했을 때 화질의 성능이 제일 우수한 것을 볼 수 있다. 또한 세 번째와 네 번째 마지막 열에 위치한 평균값을 비교했을 때, 즉 기존의 사전 학습 기반의 빗줄기 검출 기법보다 제안한 심층 컨볼루셔널 신경망 기반의 빗줄기 검출 기법을 적 용했을 때 영상의 화질이 더 개선되는 것을 볼 수 있다. 이는 제안한 심층 컨볼루셔널 신경망 기반의 빗줄기 검 출 기법이 기존의 사전 학습 기반의 빗줄기 검출 기법 보다 빗줄기 검출 성능 측면에서 더 효과적임을 보여준 다. 또한 제안한 심층 컨볼루셔널 신경망 기반의 빗줄기 검출 기법이 객체 내부의 디테일한 성분을 표현하는 데 더 강점이 있다는 것을 보여준다. V. 결 론 본 논문에서는 심층 신경망 기반의 빗줄기 검출 기법 을 제안하였다. 제안한 심층 신경망 기반의 빗줄기 검출 기법이 기존의 사전 학습 기반의 빗줄기 검출 기법보다 도 빗줄기 영역과 객체 영역을 좀 더 정확하게 분류할 수 있었다. 특히 제안한 빗줄기 검출 기법은 저주파 영 역에서 빗줄기 영역과 객체 영역을 구별 짓는 능력이 기존의 사전 학습 기반의 빗줄기 검출 기법보다 더 우 수함을 보여주었다. 또한 제안한 심층 학습 기반의 빗줄 기 검출 기법을 기존의 스팔스 수축 모델링 기반의 빗 줄기 제거 기법과 결합했을 때, 객체 내부의 디테일한 부분을 보존하여 결과 영상의 화질을 더 개선할 수 있 었다. 그리고 제안한 빗줄기 천이 기법도 일반 영상에 비가 내리는 시각적인 효과를 보여 줄 수 있었다. REFERENCES
[1] D.-Y. Choi, S.-J. Seo, and B.-C. Song, “DSP optimization for rain detection and removal algorithm,” Journal of The Institute of Electronics and Information Engineers, vol. 52, no. 9, pp. 96-105, Sept. 2015.
[2] S.-K. Kim, K.-H. Choi, and S.-Y. Park, “A framework for object detection by haze removal,” Journal of The Institute of Electronics and Information Engineers, vol. 51, no. 5, pp. 168-176, May 2014.
[3] A Krizhevsky, I Sutskever, GE Hinton, “Imagenet classification with deep convolutional neural networks,” in Proc. Neural Information Processing Systems, 2012.
[4] T.-Y Lin, M. Maire, S. Belongie, L. Bourdev, R. Girshick, J. Hays, P. Perona, D. Ramanan, C. L. Zitnick, P. Dollár, "Microsoft coco: Common objects in context," arXiv:1405.0312, 2014.
[5] C. Liu, J. Yuen and A. Torralba, “Nonparametric scene parsing via label transfer,” IEEE Transactions on Pattern Analysis and Machine Intelligence, vol 33, no. 12, 2011.
[6] B. Zhou, H. Zhao, X. Puig, S. Fidler, A. Barriuso and A. Torralba, “Semantic Understanding of Scenes through ADE20K Dataset,”, arXiv:1608.05442. [7] L.-W. Kang, C.-W. Lin, and Y.-H. Fu,
“Automatic single-image-based rain steaks removal via image decomposition,” IEEE Transactions on Image Processing, vo. 21, no. 4, pp. 1742-1755, Apr. 2012.
[8] D. G. Lowe, “Distinct image features from scale-invariant key points,” International Journal of Computer Vision, vol. 60, no. 2, pp. 91-110, Nov. 2004.
[9] N. Dalal and B. Triggs, “Histograms of oriented gradients for human detection,” in Proc. IEEE International Conference on Computer Vision and Pattern Recognition, San Diego, CA, pp. 886-893, Jun. 2005.
[10] Li Y., Tan R., and Brown M. S. “Rain streak removal using layer priors”, in Proc. IEEE Computer Vision and Pattern Recognition, Las Vegas, NV, USA, pp. 2736-2744, June 2016.
VIC, pp. 914-917, Sept. 2013.
[12] S.-C. Pei, Y.-T. Tsai, and C.-Y. Lee, “Removing rain and snow in a single image using saturation and visibility features,” in Proc. IEEE International Conference on Multimedia and Expo Workshops, Chengdu, pp. 14-18, July 2014. [13] C.-H. Son and X.-P. Zhang, “Rain removal via
shrinkage of sparse codes and learned rain dictionary” in Proc. IEEE International Conference on Multimedia and Expo Workshop, Seattle, pp. 1-6, July 2016.
USA, pp. 327-340, Aug. 2001.
[15] A. A. Efros and W. T. Freeman, “Image quilting for texture synthesis and transfer,” in Proc. 28th annual conference on Computer graphics and interactive techniques, Los Angeles, CA, USA, pp. 341-346, Aug. 2001.
[16] http://www.vlfeat.org/matconvnet
[17] L. Zhang, L. Zhang, and A. C. Bovik, “A feature-enriched completely blind image quality evaluator,” IEEE Transactions on Image Processing, vol. 24, no. 8, pp. 2579-2591, Aug. 2015.
저 자 소 개 손 창 환(정회원)
대한전자공학회 논문지 제 49권 SP편 제 4호 참조