• 대한전기학회
Mobile QR Code QR CODE : The Transactions of the Korean Institute of Electrical Engineers
  • COPE
  • kcse
  • 한국과학기술단체총연합회
  • 한국학술지인용색인
  • Scopus
  • crossref
  • orcid

  1. (School of Electrical and Electronic Engineering, Yonsei University, Korea.)



Convolutional Sparse Coding, Retinex, Human Vision System, Color Constancy

1. 서 론

디지털 카메라와 같은 머신 시각 시스템에 의해 결정된 물체의 색은 물체로부터 반사된 광량에 기초한다. 반면 인간 시각 시스템은 주변 환경의 세부 사항과 전체 조명의 변화를 고려하여 물체의 색상을 결정한다 (1). 복잡한 인간 시각 시스템은 조명의 변화를 자동으로 인식하고 물체의 원래 색상을 쉽게 인식한다. 인간 시각 시스템의 이 기능을 색 항상성이라고 하며 오랜 기간 연구되었다 (2),(3). 다양한 조명 조건에서 머신 시각 시스템과 인간 시각 시스템의 불일치로 인해 머신은 인간이 얻은 것과 동일한 이미지를 디지털 카메라에서 얻을 수 없다. 이러한 불일치는 또한 색상 분리, 패턴 인식 및 객체 추적과 같은 기능에서 알고리즘 오류를 발생시킨다. 따라서 머신 시각 시스템의 성능을 향상시키려면 인간 시각 시스템의 색 항상성을 이해하는 것이 중요하다.

Retinex의 개념은 망막(Retina)과 피질(Cortex)를 결합한 것으로 Land와 McCann에 의해 제시되었고(4)-(7), 이는 인간 시각 시스템 (HVS)이 어떻게 색상을 인식하는지 설명한다. $S$를 공간 영역 $ohm$에 정의된 주어진 이미지의 값이라고 하면, Retinex 모델에서 이미지 값은 이미지의 객체에 비치는 조명원의 양과 이미지에서의 객체에 의해 반사되는 조명의 양, 두 가지 주요 요인에 따라 달라진다. 이 두 가지 구성 요소를 기반으로 조명 함수 $L$과 반사율 함수 $R$로 $S$를 구성할 수 있다.

$0<L(x)<\infty$ and $0<R(x)\le 1$, $\forall x\in ohm$

이를 바탕으로 이미지 $S$는 조명 함수 $L$과 반사율 함수 $R$의 곱으로 표현할 수 있다.

$S(x)=L(x)\bullet R(x)$, $\forall x\in ohm$.

인간 시각 시스템은 이러한 조명 부분과 반사율 부분을 모두 인식하고, 조명 부분을 제거하여 인식할 수 있다. 이것이 색 항상성이다. 따라서 인간 시각 시스템은 변화하는 조명을 무시하고 객체의 일정한 색을 인식할 수 있다. 인간 시각 시스템의 색 지각 특성에 의해 모티브가 된 Retinex 이론은 고 대비 이미지를 향상해 저조도 부분에서 더 많은 세부 사항과 색을 관찰할 수 있도록 한다 (8)-(13). 또한, Retinex 이론은 그림자 제거에도 효과적으로 사용할 수 있다 (14).

Retinex 이론들 중 대표적인 물리적 기반 방법으로, 반사율 함수의 총 변동량을 계산하여 정규화 매개 변수를 사용한 Retinex 모델이 있다 (10),(15). 최근에는 효과적인 반사율과 조명의 분해를 위해 그라디언트 영역에서 반사율의 희소성과 주파수 영역에서 조명의 희소성을 사용한 Retinex 모델(16)이 제시되었다. 그러나 이러한 기존의 Retinex 방법은 이미지 내에서 조명이 급격하게 변하는 경우 이미지 내의 복잡한 영역에서의 세부적인 사항들이 제대로 반영되지 못하고 흐려지거나, 조명과 반사율이 정확하게 분해되지 못하는 문제가 발생하였다. 대부분 물리 기반 Retinex에서 조명의 경우 부드러운 조건을 가지고, 반사율의 경우 세부적인 구조를 나타내게 되므로 반사율 함수를 보다 정교하게 생성할 수 있다면, 조명이 급격하게 변할 때 복잡한 영역의 세부적인 묘사가 잘 보존되어 이미지의 조명과 반사율을 정확하게 분해할 수 있을 것이다. 특히 희소성을 고려한 Retinex 모델(16)의 경우 반사율 성분이 주파수 도메인에서 희소하다는 가정을 하게 되는데, 복잡한 영역을 가지는 이미지의 경우(랭크가 높을 경우) 세부적인 성분이 많이 존재한다. 이 경우 반사율의 분해가 적절히 되지 않고, 반사율 함수에서의 오차가 조명 함수에 영향을 끼치게 되어 결과적으로 반사율과 조명을 제대로 분해할 수 없게 된다. 따라서 이러한 한계를 해결하기 위하여 반사율 함수의 성분을 정확하게 생성하는 새로운 방법론이 필요하다.

본 논문에서는 컨볼루션 희소 코딩을 사용하여 Retinex 이론 기반의 반사율과 조명을 분해한다. 반사율 함수에서 컨볼루션 희소 코딩을 사용하여 사전(Dictionary)을 생성하고 이러한 미리 생성된 사전을 사용하여 반사율 함수의 성분을 생성하는 기법을 제안한다. 이 접근 방식의 장점은 Retinex 모델의 반사율 성분을 사전을 통해 학습할 수 있고, 컨볼루션을 사용하여 이미지의 다양한 비선형적인 형태를 표현함으로써 정확하게 반사율 성분을 표현할 수 있다는 것이다. 이를 통해 제안된 방법은 기존의 물리 기반 Retinex의 알고리즘과 비교하여 이미지의 조명과 반사율을 효과적으로 분해할 수 있다.

2. 본 론

2.1 물리 기반 Retinex 모델

물리 기반 Retinex 모델은 일련의 방정식 또는 최적화 문제를 통해 Retinex 이론을 보다 물리적인 형태로 변환하여 문제를 해결한다. 이러한 알고리즘은 이미지에서 전체적인 조명을 제거할 수 있는 능력 때문에 최근 몇 년 동안 널리 연구되었다. 이 범주의 알고리즘은 앞서 언급한 바와 같이 이미지 값 $S$를 다음과 같이 조명 함수 $L$과 반사율 함수 $R$의 곱으로 표현한다.

(1)
$S(x)=L(x)\bullet R(x)$, $\forall x\in ohm$.

여기서 $0<L(x)<\infty$, $0<R(x)\le 1$ 이고, 따라서 이를 정리하면 $0<S\le L$ 로 표현할 수 있다. 식(1)과 같이 곱하기 형태의 이미지 값 $S$를 로그 도메인으로 변경하면 더하기 형태의 식으로 (1)을 변경할 수 있다.

(2)
$s=r+l$

이때, $s=\log(S)$, $l=\log(L)$, $r=-\log(R)$ 이고 $r\ge 0$, $l GEs$ 으로 표현된다. 이렇게 로그 도메인으로 변경하여 더하기 형태의 식으로 변경하면, 조명 성분 $l$과 반사율 성분 $r$을 쉽게 분해할 수 있게 된다.

2.1.1 Total Variation Retinex(TVR) model

TVR model에서는 조명과 반사율의 전체 변동량을 고려한 Retinex 모델을 제안하였다(10), (15). 이 모델은 조명 함수가 공간적으로 부드럽고 반사율 함수가 부분적으로 일정하다는 가정을 기반으로 설계되었다. 이를 기반으로 HVS이 색상을 인식하는 방법을 설명하기 위해 아래와 같은 에너지 함수가 설계되었다.

(3)

$E(r,\:l)=\int_{ohm}|Dr| +\dfrac{\alpha_{1}}{2}\int_{ohm}|\nabla l|^{2}dx +\dfrac{\alpha_{2}}{2}\int_{ohm}|l-r-s|^{2}dx$

$+\dfrac{\mu}{2}\int_{ohm}l^{2}dx$

이때,

$\int_{ohm}|Dr |$

$=\sup _{p \in C_{c}^{1}\left(\Omega, \mathrm{R}^{2}\right)}\left\{-\int_{\Omega} r d i v p d x:|p(x)| \leq 1\right\}$

이고, $\alpha_{1}$, $\alpha_{2}$ 와 $\mu$는 정규화 매개 변수를 위한 양의 상수이다. $|p|=\sqrt{p_{1}^{2}+p_{2}^{2}}$ (단, $p=(p_{1,\:}p_{2})$) 이고, $di v$ 와 $del$은 각 divergence와 그라디언트 연산자이다. 결과적으로 다음과 같은 $l$과 $r$에 대한 최적화 식을 통하여 조명과 반사율을 분해한다.

(4)
$\min_{(r,\:l)\in\Lambda}E(r,\:l)$, $\Lambda =\left\{(r,\:l)\in BV(ohm)\times W^{1,\:2}(ohm),\: r\ge 0,\: l\ge s\right\}$, $BV(ohm)=\left\{r\in L^{1}(ohm):|r|_{TV}<+\infty\right\}$.

그러나 이러한 방식의 경우 반사율을 함수를 구성할 때 $\int_{ohm}|Dr|$ 부분을 통해서 전체 이미지의 총 변동량을 계산하게 된다(10). 이때, 지역적인 변동을 반사율 함수에 적절하게 반영하지 못하게 되고, 이것이 조명 함수에 영향을 주게 되어 조명 함수에 반사율 함수의 성분이 반영된다. 따라서, 이 경우 반사율과 조명 성분을 정확하게 분해할 수 없게 된다.

2.1.2 Sparse Source Separation Retinex(SSSR) model

SSSR model에서는 조명과 반사율을 그라디언트 영역으로 변경하여 각 함수의 희소성을 통해 조명과 반사율을 분해하는 Retinex 모델을 제안하였다 (16). 반사율은 부분적으로 상수값을 가지기 때문에 $delr$은 공간적으로 희소성을 가지게 되고 이는 이미지에서 모서리 정보로 표현될 수 있다. 조명의 경우 공간적으로 부드러운 성질을 가지기 때문에 $dell$은 부분적으로 상수값을 가지고 주파수 도메인에서 희소성을 가지게 된다. 이를 바탕으로 설계된 에너지 함수는 아래와 같다.

(5)
$E(r,\:l)=\arg\min_{\nabla r,\:\nabla l\in\vec{R}^{ohm}}" "||\nabla r||_{1}+\lambda ||D\nabla l||_{1}$ $+\int_{ohm}\left[\dfrac{\alpha_{1}}{2}(\nabla l-\nabla r-\nabla s)^{2}+\dfrac{\alpha_{2}}{2}(l-r-s)^{2}\right]dx " "$

SSSR 모델에 따르면 Retinex 모델의 조명과 반사율 함수 성분의 분해 정확도는 $delr$과 $D dell$의 희소성과 비례하고, $||\nabla r||_{1}+||D\nabla l||_{1}\le\dfrac{1}{2}\sqrt{\dfrac{OHM}{2}}$의 Restricted Isometry Property 조건을 만족하면 완벽하게 조명과 반사율 성분을 분해할 수 있다 (16). 이는 이미지 행렬의 랭크가 충분히 작아야 함을 나타낸다. 그러나 일반적으로 이러한 조건은 1920×1080 크기의 이미지일 때, 0.02% 정도의 랭크를 가진다. 따라서 복잡한 이미지일수록 이미지 행렬의 랭크가 크기 때문에 이 경우 반사율과 조명을 정확하게 분해할 수 없게 된다.

2.2 컨볼루션 희소 코딩(Convolutional Sparse Coding)

컨볼루션 희소 코딩 모델 (17),(18)은 입력신호에 대하여 사전(Dictionary)과 희소 계수 맵의 컨볼루션을 사용하여 아래와 같은 식으로 표현하는 것이다.

(6)
$x=\sum_{k=0}^{K}d_{k}\ast z_{k}$

이때, $x\in\vec{R}^{n_{1}\times n_{2}}$ 는 입력신호, $d_{k}\in\vec{R}^{s\times s}$ 는 지역 컨볼루션 필터, $z_{k}\in\vec{R}^{n_{1}\times n_{2}}$는 $d_{k}$의 요소를 가지는 희소 계수 맵, $\ast$는 컨볼루션 연산자이다. 컨볼루션 희소 코딩의 $l_{1}$ 최소화 문제는 다음과 같이 공식화된다.

(7)

$\arg\min_{d,\:z}\dfrac{1}{2}||x-\sum_{k=0}^{K}d_{k}\ast z_{k}||^{2}+\lambda\sum_{k=0}^{K}||z_{k}||_{1}$

subject to $||d_{k}||_{2}^{2}\le 1$, $\forall k\in\{1,\:...,\:K\}$.

컨볼루션 희소 코딩의 입력신호 $x$는 패치(또는 세그먼트)로 분할되지 않고 전체 이미지를 입력신호로 사용한다. 컨볼루션 희소 코딩 모델의 본질은 컨볼루션의 사용으로 공간적인 불변성을 가지기 때문에 특정 모서리 방향의 학습된 요소는 전체 이미지에서 해당 방향의 모든 모서리를 전체적으로 나타낼 수 있다. 컨볼루션 희소 코딩과 달리 고전적인 희소 코딩에서의 요소들 중 다수는 다른 오프셋에 대해 동일한 방향의 가장자리를 학습하는 경향이 있다.

2.3 제안하는 컨볼루션 희소 코딩 기반 Retinex 모델

2.3.1 제안하는 Retinex 모델의 반사율 함수

앞서 TVR의 경우 반사율 함수의 성분이 $\int_{ohm}|Dr|$ 로 표현되고, 이것은 전체 이미지의 총 변동량을 고려하므로 지역적인 반사율의 특징을 반영하지 못하였고, 이것이 조명 함수의 오류가 되어 조명 함수에 상대적으로 반사율 성분이 남아있게 된다. 또한, SSSR의 경우에는 $||\nabla r||_{1}+||D\nabla l||_{1}$ 와 같이 이미지 행렬의 랭크에 영향을 받게 되므로 충분히 랭크가 작은 이미지가 아닐 경우 반사율의 희소성을 보장받지 못하게 되므로 반사율과 조명을 정확하게 분해하지 못하게 된다. 이러한 한계를 극복하기 위해 새로운 형태의 반사율 함수를 제안하였다.

제안하는 Retinex 모델의 반사율 함수의 성분은 다음과 같다.

(8)
$\dfrac{1}{2}||r-\sum_{k=0}^{K}d\ast z ||_{2}^{2}$

본 논문에서는 반사율 함수를 구성함에 있어서 식(8)과 같이 컨볼루션 희소 코딩을 활용하여 반사율 함수에 대한 제약 조건을 가지지 않게 하였다. 따라서, 사전 학습을 통하여 사전을 생성하게 되고, 이러한 사전의 컨볼루션을 통해 반사율을 생성하게 된다. 컨볼루션을 사용하여 반사율 함수의 성분을 생성하게 되면 이미지의 다양한 비선형적인 형태를 표현할 수 있고, 지역적인 특징 또한 반영할 수 있게 된다. 따라서, 기존의 방법보다 복잡한 영역에서도 반사율과 조명을 정확하게 분해할 수 있다. 컨볼루션 희소 코딩에서 학습의 경우 앞서 방법들에 비해 많은 시간이 걸리지만 실제로 사전을 학습해 놓으면 테스트 단계에서 반사율 함수의 성분을 생성할 때 저장된 사전을 통해서 빠르게 알고리즘을 진행할 수 있다.

2.3.2 제안하는 Retinex 모델

본 논문에서는 이미지의 조명과 반사율을 효과적으로 구분하기 위해 컨볼루션 희소 코딩을 Retinex 모델에 적용한다. 컨볼루션 희소 코딩의 주요 아이디어는 반사율 함수에 대해 사전에서 적절한 기초를 검색하고 그러한 기초에 의해 반사율 함수에서 보다 상세한 구조 또는 특징을 파악하여 조명을 분해하는 것이다. 따라서 핵심 단계는 입력 이미지를 표현하기 위한 사전을 구성하는 것이다. 일반적으로 조명 함수는 공간적으로 부드럽기 때문에 정규화 부분으로써 $\int_{OHM}|del l|^{2}$로 표현할 수 있다. 또한 반사율의 경우에는 컨볼루션 희소 코딩에 의해 생성되는 것으로 대체하여 사용한다. 2.3.1절의 컨볼루션 희소 코딩으로부터 반사율 함수는 다음과 같은 방식의 정규화 부분인 $\dfrac{1}{2}||r-\sum_{k=0}^{K}d\ast z ||_{2}^{2}+\delta\sum_{k=0}^{K}||z ||_{1}$로 표현할 수 있다. 또한, 앞서 언급한 바와 같이 $r\ge 0$, $l GEs$ 이므로 이를 제한 조건으로 추가하게 되면 다음과 같이 식을 구성할 수 있다.

(9)
$\min_{r\ge 0,\:l\ge s,\:D,\:z}E(r,\: l,\: D,\: z)$ $=\left\{\dfrac{1}{2}||r-\sum_{k=0}^{K}d\ast z ||_{2}^{2}+\dfrac{\alpha_{1}}{2}||\nabla l ||_{2}^{2}+\int_{ohm}\dfrac{\alpha_{2}}{2}(l-r-s)^{2}dx+\delta\sum_{k=0}^{K}||z ||_{1}\right .$

이때, $r, l \in \mathbb{R}^{N \times M}, \Omega$은 이미지 전체의 영역을 나타내고, $\alpha_{1}$, $\alpha_{2}$는 정규화 매개 변수로써 사용된다.

위의 모델에서 반사율은 TVR 모델보다 학습된 사전으로 더 잘 표현될 수 있고, 식(9)의 첫 번째 항과 4번째 항은 반사율 $r$에 대한 정규화된 항으로 해석할 수 있다. 또한, 위의 모델에서 반복 알고리즘을 적용하여 알고리즘이 반복될 때마다 최적의 반사율을 구성할 수 있는 사전을 구성하도록 한다. 따라서 식(9)의 방정식을 풀기 위해 다음과 같은 Alternating minimization 방식(10)을 사용한다.

2.3.3 알고리즘

1. 초기의 $p=0$, $l^{0}=s$ 는 초기 조명 함수라고 하자.

2. $p$번째 반복에서는 다음과 같다.

◼ $l^{p}$가 주어졌을 때, $r^{k+\dfrac{1}{2}}$는 다음과 같다.

(10)
$\min_{r,\:D,\:z}E_{1}(r,\:D,\:z)$ $=\left\{\dfrac{1}{2}||r-\sum_{k=0}^{K}d\ast z ||_{2}^{2}+\int_{ohm}(l^{p}-r-s)^{2}dx+\delta\sum_{k=1}^{K}||z ||_{1}\right\}$

그리고 $r^{p+1}$은 다음과 같다.

(11)
$r^{p+1}=\max\left\{r^{p+\dfrac{1}{2}},\:0\right\}$

◼ $r^{p+1}$이 주어졌을 때, $l^{p+\dfrac{1}{2}}$는 다음과 같다.

(12)
$\min_{l}E_{2}(l)=\left\{\dfrac{\alpha_{1}}{2}||\nabla l||_{2}^{2}+\int_{ohm}\dfrac{\alpha_{2}}{2}(l-r^{p}-s)^{2}dx\right\}$

그리고 $l^{p+1}$은 다음과 같다.

(13)
$l^{p+1}=\max\left\{l^{k+\dfrac{1}{2}},\:s\right\}$

3. $\dfrac{||l^{p+1}-l^{p}||}{l^{p+1}}\le\epsilon_{l}$, $\dfrac{||r^{p+1}-r^{p}||}{r^{p+1}}\le\epsilon_{r}$ 을 만족하지 않으면 2번 순서로 돌아가서 알고리즘을 반복한다.

식(10)을 풀기 위하여 컨볼루션 희소 코딩 방법(17)을 적용하면 다음과 같이 표현할 수 있다.

(14)
$\arg\min_{d,\:z}\dfrac{1}{2}\sum_{m}^{M}(||c^{m}-Z^{m}d||_{2}^{2}+\delta ||Z^{m}||_{1}+"\in d"_{C}(d))$ $+\int_{ohm}\dfrac{\alpha_{2}}{2}(l^{p}-r-s)^{2}dx$

이때, $d=[d_{1}^{T}... d_{k}^{T}]^{T}$, $d\in\vec{R}^{(n_{1}\times n_{2}\times K)\times 1}$이고, $"\in d"_{C}(\bullet)$은 각 필터에 대한 추가 페널티 함수이며 $C=\left\{x| ||Gx||_{2}^{2}\le 1\right\}$, $G$는 역 푸리에 변환을 계산하고 결과를 각 필터의 공간에 투영하기 위한 $\vec{R}^{(s\times s)\times(n_{1}\times n_{2})}$ 인 행렬이다. $Z^{k}=[Z_{1}^{m}...Z_{K}^{m}]$ 인 연결된 토플리츠(Toeplitz) 행렬이고, 각각의 희소 계수 맵인 $z_{k}^{m}(Z^{m}\in\vec{R}^{(n_{1}\times n_{2})\times(n_{1}\times n_{2}\times K)})$의 컨볼루션을 표현한다. 식(14)는 필터 $d$의 부분과 계수 맵 $z$부분으로 구분하여 풀 수 있고, 주어진 $Z$에 대하여 필터 부분 $d$의 하위 문제는 다음과 같다.

(15)

$\arg\min_{u}\dfrac{1}{2}\sum_{h=0}^{H}||c_{h}-Z_{h}d_{h}||_{2}^{2}+"\in d"_{C}(u)+\int_{ohm}\dfrac{\alpha_{2}}{2}(l^{p}-r-s)^{2}dx$

subject to $d_{h}-u = 0$ $\forall h\in\{1,\:...,\:H\}$

$H$는 각각의 데이터벡터 $c$와 희소 계수 행렬 $Z$를 분할하여 병렬로 처리하기 위한 인덱스이고, $h$번째 집합 $(c_{h,\:}Z_{h,\:}d_{h})$을 각각 계산할 수 있다. 식(15)는 Alternating Direction Method of Multipliers(ADMM) 방법(17),(18)을 사용하여 필터 $d$를 계산할 수 있다. 다음으로 계수 맵 부분 $z$의 하위 문제는 다음과 같다.

(16)
$\arg\min_{z}\dfrac{1}{2}\sum_{h=0}^{H}||c_{h}-Dz_{h}||_{2}^{2}+\delta ||z_{h}||_{1}+\int_{ohm}\dfrac{\alpha_{2}}{2}(l^{p}-r-s)^{2}dx$

희소 계수 맵 $z$도 필터 $d$와 같은 방식으로 ADMM 방법을 사용하여 계산한다.

3. 실험 및 결과

본 장에서는 제안한 방법과 SSSR, TVR 방법과의 비교 분석을 통해서 알고리즘을 검증한다. 제안한 방법과 SSSR, TVR 방법은 컬러 이미지에 HSV Retinex 모델을 적용하여 알고리즘을 구현하였고, HSV Retinex는 HSV 색 채널의 Value 부분에만 Retinex 알고리즘을 적용하여 색상의 변화를 줄이기 위한 방법이다. 최종 이미지는 $S=R'L'$ 으로 생성되며 $R'=\left(\dfrac{S}{L}\right)$

그림 1 사전 학습과 테스트를 위한 실제(real) 이미지

Fig. 1 Real image for dictionary training and test

../../Resources/kiee/KIEE.2020.69.3.486/fig1.png

이고, $L'= w\left(\dfrac{L}{w}\right)^{1/\gamma}$으로 표현하여 조명 $L$에 감마 보정을 적용한다. $w$는 8-bit 이미지에서 흰색의 값인 255로 정의하고, $\gamma$는 2.2를 사용한다. 또한, 제안한 알고리즘과 SSSR, TVR에서 사용된 매개 변수 $\alpha_{1}=1$, $\alpha_{2}=0.1$으로 고정하였고, TVR에서 $\mu =10^{-5}$이 사용되었다. 알고리즘 실행 프로그램으로는 Matlab 2019 버전을 사용하였다. 학습할 사전의 크기가 더 작을수록 제안된 방법의 계산을 더 빨리 완료할 수 있으나 사전의 크기가 클수록 반사율 함수를 계산할 때 더욱 복잡한 함수를 계산할 수 있게 된다. 그러나 계산 복잡도가 증가하기 때문에 적절한 사전의 크기를 선택해야 한다. 본 논문에서는 실험적으로 사전의 크기를 $11\times 11$의 크기로 사용하고, 100개의 필터 개수를 사용하였다. 또한, 식(14)를 풀기 위해서 주파수 영역으로 변환하고 컨볼루션 연산을 곱하기 연산으로 변환한 후 ADMM을 사용하였다 (17).

그림 2 그림 1의 실험 이미지로부터 학습된 사전

Fig. 2 The Learned dictionary from the experimental image in Fig. 1

../../Resources/kiee/KIEE.2020.69.3.486/fig2.png

그림 1은 학습과 테스트를 진행하기 위한 실제 예시 이미지들이고 이를 컨볼루션 희소 코딩으로 학습하여 그림 2와 같은 학습된 사전을 생성한다. 사전을 학습시킨 후 테스트 단계에서는 학습된 사전을 활용하여 실험을 진행하게 되고 알고리즘에서 전체 반복 횟수 $p$는 5로 고정하여 실험을 진행하였다.

3.1 합성(synthesis) 이미지

본 논문에서는 초기 이미지(ground truth)가 없는 이미지를 사용하므로 객관적 테스트를 위해 초기 이미지로부터 합성 이미지를 생성하여 객관적 검증을 진행하였다. 합성 이미지는 조명이 없는 초기 이미지가 존재하고(그림 3(a)), 초기 이미지에서 검은 조명을 합성한 임의의 이미지(그림 3(b))로 생성한다. 객관적 검증을 위해서 공간적인 오류와 색상 오류를 측정하는데 효과적이고 유용한 S-CIELAB color metric(18)을 사용한다.

그림 3 (a) 초기 이미지; (b) 초기 이미지에서 검은색 그림자를 입힌 이미지; (c) TVR 결과; (d) (c)와 (a)의 차이 부분; (e) SSSR 결과; (f) (e)와 (a)의 차이 부분; (g) 제안한 방법 결과; (h) (g)와 (a)의 차이 부분

Fig. 3 (a) The initial image; (b) the dark image; (c) the TVR result; (d) the residual component between (c) and (a); (e) the SSSR result; (f) the residual component between (e) and (a); (g) the proposed result; (h) the residual component between (g) and (a)

../../Resources/kiee/KIEE.2020.69.3.486/fig3.png

그림 3에서 초기의 조명이 없는 이미지 (a)가 있고, 각 Retinex 모델에 합성 이미지 (b)를 입력 이미지로 하여 결과를 비교한다. 합성 이미지 그림 3(b) 로부터 각 알고리즘의 결과 이미지를 그림 3의 (c), (e), (g)와 같이 생성하고, 그림 3(a) 초기이미지와의 차이를 계산하여 그림 3의 (d), (f), (h)와 같이 차이 이미지들을 얻을 수 있다. 초기 이미지와 색의 차이가 클수록 차이 이미지에서 더 많은 색이 나타나게 되고, 차이 성분은 TVR 및 SSSR과 비교하여 제안된 모델이 더 적게 나타나므로 색을 잘 유지함을 알 수 있다. 그림 4에서는 S-CIELAB color metric을 사용한 결과를 나타낸다. 각 방법의 결과들과 초기의 이미지 (a)를 차이를 비교한 그림 3의 (d), (f), (h)를 통하여 S-CIELAB 오차가 30 단위를 초과할 때 그림 4의 (a), (c), (e)에서 녹색을 표시하게 한다. 이때, 제안한 방법에서 가장 적은 녹색 표시를 나타내고, 이는 가장 적은 오차가 나타남을 알 수 있다. 또한, 그림 4의 (b), (d), (f)에서는 차이 단위에 대한 히스토그램 분포를 나타내고, 제안하는 방법이 가장 0에 근접하여 차이를 나타냄을 볼 수 있다.

그림 4 (a) 그림 3의 (a)와 (c)의 오차가 30 unit 이상인 결과를 초록색으로 표시(TVR); (b) 그림 4(a)의 S-CIELAB 히스토그램 분포; (c) 그림 3의 (a)와 (e)의 오차가 30 unit 이상인 결과를 초록색으로 표시(SSSR); (d) 그림 4(c)의 S-CIELAB 히스토그램 분포; (e) 그림 3의 (a)와 (g)의 오차가 30 unit 이상인 결과를 초록색으로 표시(proposed method); (f) 그림 4(e)의 S-CIELAB 히스토그램 분포

Fig. 4 (a) Spatial distribution of errors between Fig. 3(a)and (c) that are 30 units or higher, marked in green(TVR); (b) S-CIELAB histogram distribution in Fig. 4(a); (c) Spatial distribution of errors between Fig. 3 (a) and (e) that are 30 units or higher, marked in green(SSSR); (d) S-CIELAB histogram distribution in Fig. 4(c); (e) Spatial distribution of errors between Fig. 3(a) and (g) that are 30 units or higher, marked in green(proposed method); (f) S-CIELAB histogram distribution in Fig. 4(e)

../../Resources/kiee/KIEE.2020.69.3.486/fig4.png

수치상으로 표 1에서 볼 수 있듯이, 이 테스트에서 제안된 방법의 S-CIELAB 오류 값은 이미지의 5.7%, TVR 방법은 28.8%, SSSR 방법은 8.1%가 30 단위를 초과하였다. 이러한 수치로 볼 때 객관적 테스트가 나타내는 것은, 이미지를 반사율과 조명으로 분해할 때, 제안하는 방법이 객관적으로 정확하게 분해하는 것을 알 수 있다.

표 1 S-CIELAB 오차

Table 1 S-CIELAB error

TVR

SSSR

Proposed method

S-CIELAB error

>30(unit)

28.8%

8.1%

5.7%

3.2 실제(real) 이미지

그림 5, 그림 6그림 1의 실제 이미지를 입력 이미지로 하여 테스트를 진행한 실험결과 이미지이다. 그림 5에서 (a) 행은 제안한 방법, (b) 행은 TVR 방법, (c) 행은 SSSR 방법을 통해 실험한 결과이고, 첫 번째 열은 개선된 이미지, 두 번째 열은 조명 부분, 세 번째 열은 반사율 부분을 나타낸다. 두 번째 열의 분해된 조명 부분을 보면, 제안한 방법이 다른 방법들에 비해서 조명의 부드러운 특징을 잘 나타내어 전체적으로 부드럽게 보인다. 또한, 반사율 부분에서도 제안한 방법의 동상의 머리 위 상단 부분의 나뭇가지 부분, 동상의 얼굴 부분을 보면 조명과 반사율의 분해가 TVR 보다 정확하게 이루어졌음을 볼 수 있다.

그림 5 (a) 행은 제안한 방법, (b) 행은 TVR 방법, (c) 행은 SSSR 방법, 첫 번째 열은 개선된 이미지, 두 번째 열은 조명 부분, 세 번째 열은 반사율 부분

Fig. 5 (a) row shows the proposed method, (b) row shows the TVR method, (c) row shows the SSSR method, The first column is the enhanced image, the second column is the illumination component, and the third column is the reflectance component

../../Resources/kiee/KIEE.2020.69.3.486/fig5.png

그림 6에서는 (a), (d), (g) 행은 제안한 방법, 두 번째, (b), (e), (h) 행은 TVR 방법, (c), (f), (i) 열은 SSSR 방법을 통한 실험결과이고, 첫 번째 열은 개선된 이미지, 두 번째 열은 조명 부분, 세 번째 열은 반사율 부분을 나타낸다. 전체적으로 제안한 방법의 개선된 이미지의 모서리 부분, 색 등이 TVR과 SSSR 방법보다 좋은 것을 확인할 수 있는데, 이것은 제안한 방법의

그림 6 (a), (d), (g) 행은 제안한 방법, (b), (e), (h) 행은 TVR 방법, (c), (f), (i) 열은 SSSR 방법을 통한 실험결과, 첫 번째 열은 개선된 이미지, 두 번째 열은 조명 부분, 세 번째 열은 반사율 부분

Fig. 6 (a), (d), (g) rows show the proposed method, and (b), (e), (h) rows show the TVR method, and (c), (f), (i) rows shows the SSSR method, The first column is the enhanced image, the second column is the illumination part, and the third column is the reflectance part

../../Resources/kiee/KIEE.2020.69.3.486/fig6.png

컨볼루션 희소 코딩을 통해 반사율 함수 $R$과 조명 함수 $L$을 더 정확하게 분해하였기 때문이다. 조명 부분에서 앞서 언급한 바와 같이 조명의 부드러운 특징을 정확하게 표현하여 다른 방법들보다 부드러운 조명의 이미지를 얻었다. 이에 따라 세 번째 열의 반사율도 세부 묘사가 잘 나타난 특징을 정확하게 표현한 것을 볼 수 있다. 이러한 반사율의 분해 결과는 각 실험 이미지의 모서리 부분이나, 복잡하게 표현된 나무 잎사귀, 수풀 등의 영역에서 더욱 두드러진다.

4. 결 론

본 논문에서는 컨볼루션 희소 코딩을 사용하여 Retinex 모델 기반의 조명과 반사율을 효과적으로 분해하는 기법을 제안하였다. Retinex 알고리즘 중에서 물리 기반의 알고리즘은 최적화 모델링을 통해 효과적으로 물체의 조명과 반사율로 분해할 수 있다. 그러나 기존의 방법의 경우 전체 변동량 계산, 반사율 함수에 대한 제한 조건 등으로 인해 이미지 내에서 조명이 급격하게 변할 경우, 랭크가 큰 복잡한 이미지의 경우에 조명과 반사율을 적절하게 분해하지 못한다. 반면에 제안하는 방법에서는 컨볼루션 희소 코딩을 통해 이미지의 반사율 함수를 사전 학습을 통해 구성하고, 컨볼루션을 사용하여 반사율 함수의 성분을 생성함으로써 이미지의 다양한 비선형적인 형태를 표현할 수 있고, 지역적인 특징도 반영할 수 있게 된다. 또한, 정확한 반사율 함수를 생성함으로써 조명을 효과적으로 분해할 수 있다. 이러한 작업을 통해 조명을 분해하여 이미지 내의 그림자를 제거할 수 있고 이를 통해 이미지의 온전한 색 정보를 바탕으로 다양한 애플리케이션에서 활용될 수 있을 것이다.

References

1 
A. Rizzi, J. J. McCann, 2007, On the behavior of spatial models of color, Proc. SPIE, Vol. 6493DOI
2 
M. Ebner, 2007, Color Constancy, John Wiley & Sons, HobokenGoogle Search
3 
R. Palma-Amestoy et al., 2009, A perceptually inspired variational framework for color enhancement, IEEE Trans. Pattern Anal. Mach. Intell., Vol. 31, No. 3, pp. 458-474DOI
4 
E. H. Land, J. J. McCann, pp 1-11 1971, Lightness and Retinex theory, J. Opt. Soc. Am., Vol. 61DOI
5 
E. Land, 1977, The Retinex theory of color vision, Sci. Am., Vol. 237, pp. 108-128Google Search
6 
E. Land, 1983, Recent advances in the Retinex theory and some implications for cortical computations: color vision and the natural image, Proc. Natl. Acad. Sci., Vol. u. s. a., No. vol. 80, pp. 5163-5169DOI
7 
J. McCann, C. Parraman, A. Rizzi, 2010, Pixel and spatial mechanisms of color constancy, Proc. SPIE, Vol. 7528DOI
8 
R. Kimmel, 2003, A variational framework for Retinex, Int. J. Comput. Vis., Vol. 52, No. 1, pp. 7-23DOI
9 
M. Bertalmío, V. Caselles, E. Provenzi, 2009, Issues about retinex theory and contrast enhancement, Int. J. Comput. Vis., Vol. 83, pp. 101-119DOI
10 
M. Ng, W. Wang, 2011, A total variation model for Retinex, SIAM J. Imaging Sci., Vol. 4, No. 1, pp. 345-365DOI
11 
J. Morel, A. Petro, C. Sbert, 2009, Fast implementation of color constancy algorithms, Proc. SPIE, Vol. 7241DOI
12 
Z. Rahman, D. J. Jobson, G. Woodell, 2004, Retinex processing for automatic image enhancement, J. Electron. Imaging, Vol. 13, No. 1, pp. 100-110Google Search
13 
J. Morel, A. Petro, C. Sbert, 2010, A PDE formalization of Retinex theory, IEEE Trans. Image Process., Vol. 19, No. 11, pp. 2825-2837DOI
14 
G. D. Finlayson, S. D. Hordley, M. S. Drew, 2002, Removing shadows from images using retinex, in Color and Imaging Conference, 10th Color and Imaging Conference Final Program and Proceedings, Vol. society for imaging science and technology, pp. 73-79Google Search
15 
Wenye Ma, Stanley Osher, 2012, A TV Bregman iterative model of Retinex theory, Inverse Problems and Imaging vol. 6, Vol. no. 4, pp. 697-708DOI
16 
J. Yoon, J Choi, Y Choe, 2017, Efficient image enhancement using sparse source separation in the Retinex theory, Optical Engineering, Vol. 56, No. 11, pp. 113103DOI
17 
Biswarup Choudhury, Consensus convolutional sparse coding, Proceedings of the IEEE International Conference on Computer Vision. 2017.Google Search
18 
M. Zeiler, D. Krishnan, G. Taylor, R. Fergus, 2010, Decon- volutional networks, in Proc. of 2010 IEEE Conference on Computer Vision and Pattern Recognition, Vol. ieee, pp. 2528-2535DOI
19 
X. Zhang, B. A.Wandell, 1997, A spatial extension of CIELAB for digital color-image reproduction, J. Soc. Inf. Display, Vol. 5, No. 1, pp. 61-63DOI

저자소개

윤종수 (Jongsu Yoon)
../../Resources/kiee/KIEE.2020.69.3.486/au1.png

He received his BS degree in electrical and electronic engineering from Yonsei University, Seoul, Republic of Korea, in 2014.

Currently, he is pursuing his M.S. degree and Ph.D. in electronic and electrical engineering at Yonsei University, Seoul, Korea.

His current research interests include computer vision, color perception, and image processing.

최윤식 (Yoonsik Choe)
../../Resources/kiee/KIEE.2020.69.3.486/au2.png

He received the B.S. degree in electrical engineering from Yonsei University, Seoul, South Korea, in 1979, the M.S.E.E. degree in systems engineering from Case Western Reserve University, Cleveland, OH, USA, in 1984, the M.S. degree in electrical engineering from Pennsylvania State University, State College, PA, USA, in 1987, and the Ph.D. degree in electrical engineering from Purdue University, West Lafayette, IN, USA, in 1990.

From 1990 to 1993, he was a Principal Research Staff with the Industrial Electronics Research Center, Hyundai Electronics Company, Ltd.

Since 1993, he has been with the Department of Electrical and Electronic Engineering, Yonsei University, where he is currently a Professor.

His research interests include video coding, video communication, statistical signal processing, and digital image processing.