영상처리 색변환

트루 컬러(3채널) 영상을 그레이스케일(1채널)로 변환 공식

 

R, G, B 색상 성분중에서 녹색에 해당하는 G성분에 대한 가중치를 가장 많이 준다.

(RGB모델에서는 <그림1>에서와 같이 녹색(G)부분에 대한 영역폭이 크기 때문이다)

<그림1>

 

색모델을 알아보며 색상에 대해 자세히 알아보자.

Red, Gree, Blue 그리고, 그것의 subset인 Cyan, Mangenta, Yellow는 가장 기본적인 색 모델을 형성한다.

이 모델들이 가지는 색체계는 우리들이 색을 지각하는 방식과 유사하다. 부가적인 색들은 RGB(CMY) 라는 이 기본적인 색상들의 혼합을 조절함으로 만들어진다. 대표적인 경우 빛에 의해 생성되는 경우로 일반적으로 좋은 보기는 TV스크린, 컴퓨터 모니터이다. 더 나아가 부가적인 색상은 물리적인 안료의 혼합에 의해 탄생힌다. 좀 독특한 다른경우는 매우 빠르게 움직이는 원판에서 설명되어 질수 있다. 이 원판은 표면에 물리적인 색이 영역들로 나누어져 있는 원판이다. 이 원판을 높은 속도로 돌리면 인간은 그 색상의 혼합을 볼수 없을것이다. ( <그림2> 참조 )

<그림2>

 

어떤 색들은 물질적인 안료들이 백생광의 일부 파장들을 흡수하고, 부분적으로 반사했을때 보여진다.

이러한 색상들은 우리 주변에서 쉽게 관찰된다. 어떤 색상을 가지는 물체는 빛의 파장대역에서 약간의 파장을 흡수하고 일부는 반사한다. 이 때 반사된 파장대역의 특성을 우리는 그 물체의 색상으로 인식한다. 우리가 하는 작업들 중에서 인쇄물과 같은 CMY(K)모델들의 특성이 이러한 경우이다.

 

RGB

백생광을 스펙트럼으로 분해해서 얻을수 있는 색상중에서 빨강, 녹색, 파랑의 색상은 인간의 색 지각에 있어 기본적인 색상이다. 모든 다른 종류의 색상들은 이 기본적인 색상들로부터 출발된다. 이것은 컴퓨터 TV와 같은 매체들에서 또는 Web과 같은 실무적인 영역에서 다뤄져야 하는 모델이다. 그러나 이것은 인쇄물과 같은 영역에서 사용될수 있는 것은 아니다. 이 초보적인 색상들은 다른 종류의 또 다른 기본셋트인 CMY 색상을 만든다.

 <그림3>

 

CMY(K)

Cyan, Magenta, Yellow 의 색상군들은 인쇄잉크와 같은 영역에서 이루어지는 색상의 혼합에서 가장 기본적인 색체계를 이룬다. 이 색상군들은 기본적인 색상군에서 출발하는 또 하나의 기본셋트이다. 이 색상들은 RGB의 색상들에서 창조되었지만, RGB에서 창조된 색상과 동일하지는 않다. 그것은 CMY의 체계가 기본적으로 RGB의 명도(밝기?) 등을 계승할수 없기 때문이다.

 

<그림4>

이 색상들의 체계들은 그 자체가 광원인 RGB방식의 색상체계와는 달리 다른 광원에 반사하거나 흡수함으로 자신의 색상으로서의 특성을 나타낸다. CMY모델은 보편적으로 인쇄체계안에 부분적으로 중복되거나 계산적으로 병치된 색상들의 조합으로 사람들에게 보여진다. 각각의 색상들은 계획적으로 분포되는데, 대체로 그것은 백분률로 표시된다.

 

<그림5>

 

위 돋보기가 있는 <그림5>에서 우리는 바탕의 짙은 녹색을 보게 되는데, 사실 그것은 교묘하게 조정된 색상의 혼합이다.  <그림5>위의 그램에서 처럼 그것은 Magenta 17%, Cyan 100%, Yellow 87%가 섞여진 것으로 그것은 다시 돋보기 안에서 자세히 확대되어 보여지고 있다.

이론적으로만 본다면, Cyan, Meganta, Yellow가 각각 100%일 경우 그것은 검정색이며 모든 CMYK 빛은 흡수되어진다. 그러나 실제적으로 검정을 표현하기 위해 CMY만 사용되어 질 수 없다. 잉크의 불완전성 그리고 빛의 전체적인 흡수가 사실상 불가능한 점 등으로 인해 CMY만의 조합만으로는 짖은 갈색정도까지 밖에 만들수 없다. 이 불완전한 색상의 조합을 보완하기 위해 진짜 검정 잉크를 덧 쒸워 바른다.

 

이렇게 하여 기본적인 인쇄의 색셍체계에는 검저(K)가 추가되고, 실제적으로 사용되어 지는 인쇄색상체계는 보통 4색의 CMYK로 알려져 있다. <그림1>은 이러한 4도 색상체계의 인쇄 예이다.

 

CMYK 색상 체계의 한계

RGB 또는 CMYK색상체계에 CMY(K)색상 체계가 갖는 한계는 주목할 만한 논의대상이다. 인간이 지각할 수 있는 전체색상 대역은 무척 폭넓다. 반면 CMY(K)의 색상체계는 그러한 인간이 지각 가능한 색상체계 전부를 표현하거나 보여주지 못한다.
1931 CIE가 제시한 인간이 지각할 수 있는 전체색상 대역에서 보편적인 RGB, 또는 CMY(K)색상체계가 표시할 수 있는 색상대역은 다음과 같이 표시될 수 있다.

 

<그림6>

 

이러한 손실은 RGB보다도 CMYK에서 더욱 크다. 위 그래프가 그것은 보여주고 있다. 이 그래프가 표시하는 것은 그야말로 일반적인 경우이고, 실제에 잇어서는 모든 RGB 장치 즉, 디스플레이, 모니터, 색스캐너, 등등과 인쇄산업의 색상 제품들의 잉크, 프린트기, 종이 들과 같은 구체적인 요소(변수)들에 의해 이 한계들을 줄어들거나 늘어난다.

 

HSI

HSI 색모델은 색상(Hue), 채도(Saturation), 명도(Intensity)로써 색을 표현하는 방식이다. 색상은 빨간색, 노란색, 녹색, 파란색, 보라색 등의 색 종류를 의미하며, 채도는 색의 탁하고 선명한 정도를 표현하고, 명도는 빛의 밝기를 나타낸다. HSI 모델은 두개의 우너뿔을 상하로 붙여놓은 형태로 정의되는데, 이때 색상은 원형으로 정의되며, 그렇기 때문에 보통 0~360도 사이의 각도로 표현한다. 명도는 원뿔의 아래쪽 꼭지점에서 최소값 0을 갖고, 위쪽 꼭지점에서 최대값 1을 갖는다. 채도는 명도를 고정하였을 때 나타나는 원형 모향에서 원의 중심으로부터의 방사형으로 뻗어나가는 거리를 표현,  색상의 값이 0도에 해당할때 색상은 빨간색을 갖는다. 각도가 점점 증가하면 120도 에서 녹색, 240도 에서 파란색, 다시 360도 에서 빨간색으로 돌아오게 된다. 채도값이 0이면 색은 오직 명도로만 표현되고 색상은 무시된다. (채도가 0 이라는것은 그레이스케일 형태의 영상으로 표현되는 것)

명도가 0에 가까우면 색이 어둡게 느껴지고, 명도가 1에 가까워지면 밝게 느껴진다.

<그림7>

 

<그림8>

Color Model

색상에 대한 정형화를 위한 노력은 표준의 컬러 모델을 만들기 위한 연구로 진행되었다. 아래 첫 번째 그림<그림9>은 회화의 영역에서 일반적으로 사용되는 munsell칼라 모형이다. 이 모델의 높이는 명도를 의미하고, 중심부와 주변부는 세츄레이션을, 중심축을 중심으로 색상군들이 보색, 유색군의 관계에 따라 위치한다. 그 옆은 이러한 개념을 좌표로 해석하기 위해 재정리된 것으로 통상 이러한 개념의 색모델을 CIE Lab (1976)모델이라한다. 이러한 CIE Lab모델은 이전 모델에서 발전되었는데, Lab모델과 함께 대체로 2차원의 평면구조에서 주로 사용되는 부러진 돌도끼 같은 이 색상편을 CIE xyz라고 하며, <그림10>은 그것의 개념을 보여주고 있다.

 

<그림9>

<그림10>

 

 

 

인간의 색인식 체계


<그림11>


대체로 모든 종류의 색재현 매체 -  필름, 디지털카메라 등 - 은 완벽한 방식으로 색을 기록하는 법을 모른다. 일반적인 경우 디지털 카메라는 자신의 메카니즘이 채용하고 있는 컬라필터를 통한 '완벽하지 않은' 색을 기록한다. 그렇다면 무엇이 '완벽한 방식' 일까? 

색은 다양한 전자기파들의 분포중 가시광선 대역 400~700nm의 전자기파(빛)에 의해 인간의 두뇌에서 만들어 진다. 우리눈의 망막에는 빨강, 연녹색, 파랑에 민감한 색소자들을 가지고 있어서 자연계에 존재하는 색상정보들을 해석한다. 이러한 정교한 장치에 대한 이해는 인간의 시각기관을 연구하는 과학자들에게서 자세히 얻을 수 있다.

과학자들은 보통 자극수치에 대해서 그것이 어떻게 반응/결과(?)로 나타나는 가는 통계할 것이다.

뿐만 아니라 우리의 색지각 체계는 탁월한 색상보정 능력을 가지고 있다.
이것은 색체심리학의 부분과 관련되는 부분이다.
만약 빛이 일반적인 백색의 가시광선과 달리 매우 따뜻하다면 우리의 두뇌는 그것을 정상적인 경우에 맞게 교정할 것이다. 그래서 우리는 백열전구나 형광등 아래서도 가족들의 얼굴을 생소하지 않게 마주할 수 있게 되는 것이다. 이는 교정, 판단, 2차 정보의 생산까지의 우리 뇌의 복잡한 색 지각체계와 맞 닿아 있다.

그리고 또 한가지 중요한 점은, 우리의 색지각은 스틸사진과 같이 정적이지 않다는 점이다. 우리의 색지각에 있어 하나의 정적인 화면은 존재하지 않는다. 그것은 끝임없는 시점의 이동이고, 시간의 경과이다. 우리가 동시에 두 개를 볼 수 없다는 것, 또는 동시에 두곳에 신경을 쓸 수 없다는 것이 우리의 색지각 시스템이 이미지를 구성하는 것과 더불어 그 이미지의 정보를 '보정'하거나 '해석'하고, '추론'하는 복잡한 인식체계와 연동되고 있음을 보여 준다. 어쨌거나 이런점은 우리가 햇볕이 든 부분과 그렇지 않은 부분을 같이 조망하는 조건에서 햇볕이 든 부분에의 색상에 큰 영향을 주지 않고도 그늘진 부분에 드리운 Blue Shadow을 제거할 수 있게 해준다.

결국 우리가 디지털 카메라와 같은 색재현 매체에서 지향하는 완벽한 방식은 사람의 색지각체계를 관련장비가 최대한 닮아 주기를 바라는 것이다. 그러나 지금까지의 관련 장비의 획기적 발전이 있었다 할 지라도, 아직 기계눈은 사람의 그것에 미치지 못하고 있다.

그것은 특히나 탁월한 색교정 능력과 시각정보를 해석하는 해석기의 성능에서 그렇다. 앞으로도 이런 장비들은 사람의 눈을 끊임없이 닮아 가려 할 것이다.
왜냐하면 사람의 눈을 닮는 것이 바로 앞서 말한 '완벽한 방식'이기 때문이다.

물체의 유사성(correspondence) 찾기 - 수정중

  물체의 Correspondence(유사성)을 찾기 위한 접근 방법으로 크게 두가지 방법으로 분류할수 있다.

첫번째는 Feature에 기반한 방법, 두번째는 Area에 기반한 방법이다. Feature에 기반한 방법은 이미지에서 나타나는 feature(keypoint) - 추적하기 좋은곳(쉬운곳) 즉, edge나 corner점들을 이용해 매칭점을 찾아내는 방법이다. Feature에 기반한 방법은 속도가 빠르고 매칭점 들이 비교적 정확한 장점이 있지만, 하나의 feature로는 위치를 판별해 내기 어렵다. 하지만 Area에 기반한 방법은,  전체에 대한 dense 매칭에 대한 정보를 얻을수 있지만, 그에 따라 속도가 매우 느리고, Feature기반 방법보다 부정확한 단점이 존재한다.

 

Feature기반의 매칭점을 찾는 알고리즘의 순서는 보통 아래와 같은 순서로 진행된다.

 

 (1) 두 이미지로 부터 Feature점들을 추출한다.

 (2) 추출한 Feature점들을 이용해 근방 픽셀 밝기값을 물체의 orientation, descriptor를 구한다.

 (3) 두 이미지의 Feature점들간의 대략적인 Matching point를 찾는다.(KD-Tree, LSH...)

 (4) outlier 제거 한뒤 Inlier를 갖고 Homography를 추정한다.(RANSAC, PROSAC...)

 (5) H를 통해 두 이미지 간의 관계를 설정한다.

 

(3)의 과정에서 Feature keypoint점들 간에 대략적인 매칭을 위해서, 매칭되는 keypoint주위의 원도우 영역에

서 유사 정도를 가지고 대략적인 매칭을 수행한다. 대표적인 유사도 측정 방법은 SAD(Sum of Absolute

Differences), SSD(Sum of Squared Differences), NCC(Normalized Cross Correlation)등이 있다.

 

 

'컴퓨터비전/영상처리 > Non Library ' 카테고리의 다른 글

영상처리 색변환  (0) 2014.01.28