상기 목적을 달성하기 위하여 본 발명에 따른 색온도 변환 방법은 휘도 신호 및 색차 신호를 포함하는 영상 신호 및 사용자 설정 색온도를 입력받고 입력된 영상 신호의 각 화소의 휘도에 따라 입력된 화소의 색온도를 변환하는 색온도 변환 방법에 있어서, (a) 변환 대상 영역의 결정 변수를 결정하는 단계; (b) 상기 입력된 화소가 상기 변환 대상 영역내에 존재하는지 여부를 판단함으로써 상기 입력된 화소가 변환 대상인지 여부를 판단하는 단계; (c) 상기 입력된 화소가 변환 대상인 경우 변환 목표 색좌표를 계산하는 단계; 및 (d) 상기 변환 목표 색좌표로 색좌표상의 원점을 옮기는 정도에 상응하여 상기 입력된 화소의 색좌표를 변환하는 색좌표 변환 단계를 포함하여 이루어지는 것을 특징으로 한다.
바람직하게는, 상기 변환 대상 영역의 결정 변수는 상기 변환 영역 대상이 색좌표상에 소정의 회전 각도로 기울어진 타원인 경우 상기 타원의 기본 길이, 장축 길이, 및 단축 길이, 및 상기 타원의 회전 각도로부터 회전 행렬 계수를 포함하는 것을 특징으로 한다.
바람직하게는, 상기 (c) 단계는 (c1) 입력된 화소의 휘도에 근접한 2개의 샘플 휘도를 구하는 단계; (c2) 사용자 설정 색온도를 입력받고, 상기 2개의 샘플 휘도별 상기 사용자 설정 색온도에 근접한 색좌표들을 구하는 단계; 및 (c3) 상기 샘플 휘도 신호들 및 상기 색좌표들을 색좌표 보간하여 변환 목표 색좌표를 구하는 단계를 포함하는 것을 특징으로 한다.
바람직하게는, 상기 (c) 단계는 입력된 사용자 설정 색온도로부터 직접 변환 목표 색좌표를 구하는 단계인 것을 특징으로 한다.
바람직하게는, 상기 (d) 단계는 상기 변환 대상 영역이 소정의 회전 각도로 기울어진 타원인 경우 (d1) 상기 타원과의 제1 교점과의 거리를 구하는 단계; 및 (d2) 색좌표상의 원점에서 상기 제1 교점까지의 거리, 상기 입력된 화소의 색좌표, 상기 변환 목표 색좌표를 이용하여 상기 입력 화소의 변환된 색좌표를 구하는 단계를 포함하는 것을 특징으로 한다.
바람직하게는, 상기 (d1) 단계는 (d11) 상기 타원을 상기 색좌표상의 원점으로 이동시키는 단계; (d12) 상기 타원 및 상기 입력된 화소의 색좌표를 회전행렬을 이용하여 소정의 회전 각도로 회전시키는 단계; (d13) 상기 색좌표의 원점과 상기 소정의 회전 각도로 회전된 상기 입력된 화소를 통과하는 직선 및 상기 변환 대상 영역과의 제2 교점을 구하는 단계; 및 (d14) 상기 제2 교점과 상기 색좌표상의 원점과의 거리를 구하는 단계를 포함하여 이루어지는 것을 특징으로 한다.
본 발명의 다른 태양에 의하면, 컴퓨터 프로그램 생성물이 제공되는데, 상기 컴퓨터 프로그램 생성물은 상기 방법들중 어느 하나의 방법을 수행하기 위한 단계 들을 포함하는 것을 특징으로 한다.
본 발명의 다른 태양에 의하면, 색 온도 변환 장치가 제공되는데, 휘도 신호 및 색차 신호를 포함하는 영상 신호 및 사용자 설정 색온도를 입력받고 입력된 영상 신호의 각 화소의 휘도에 따라 입력된 화소의 색온도를 변환하는 색온도 변환 장치에 있어서, 휘도별 조절 계수 및 변환 대상 영역에 대한 조절 계수를 포함하는 제1 정보를 저장하는 제1 저장부; 상기 제1 저장부로부터 상기 제1 정보를 독출하여 상기 변환 대상 영역에 대한 제2 정보를 계산하는 제1 계산부; 영상 신호를 입력받고, 입력된 영상 신호의 화소의 색좌표가 상기 변환 대상 영역내에 존재하는지 여부를 판단함으로서 색온도 변환 대상인지 여부를 판단하는 판단부; 휘도별로 샘플링된 다수의 색온도들 및 상기 다수의 색온도들에 대응하는 색좌표들에 대한 제2 정보를 저장하는 제2 저장부; 상기 제2 저장부로부터 독출된 상기 제2 정보 및 사용자 설정 색온도를 입력받아 색좌표 보간을 통해 변환 목표 색좌표를 계산하는 제2 계산부; 및 상기 제2 계산부에서 계산된 상기 변환 목표 색좌표를 원점으로 변환하는 정도에 상응하여 입력되는 화소의 색좌표를 변환하는 색좌표 변환부를 포함하는 것을 특징으로 한다.
바람직하게는, 상기 색온도 변환 장치는 제3 저장부를 더 포함하며, 상기 제3 저장부는 휘도별 사용자 설정 색온도를 저장하는 것을 특징으로 한다.
바람직하게는, 상기 제1 정보는 상기 변환 대상 영역이 타원인 경우 적어도 상기 타원의 장축 길이 및 단축 길이에 대한 조절 계수, 상기 타원의 회전 각도, 및 화소 휘도 조절 계수를 저장하는 것을 특징으로 한다.
바람직하게는, 상기 제2 정보는 상기 변환 대상 영역이 타원인 경우 상기 타원의 기본 길이, 장축 길이, 단축 길이, 및 회전 행렬 계수인 것을 특징으로 한다.
본 발명의 다른 태양에 의하면 색온도 변환 장치가 제공되는데, 상기 장치는 휘도 신호 및 색차 신호를 포함하는 영상 신호 및 사용자 설정 색온도를 입력받고 입력된 영상 신호의 각 화소의 휘도에 따라 입력된 화소의 색온도를 변환하는 색온도 변환 장치에 있어서, 변환 대상 영역에 대한 제1 정보를 저장하는 제1 저장부; 영상 신호를 입력받고, 상기 제1 저장부로부터 제1 정보를 독출하여 입력된 영상 신호의 화소의 색차 신호가 상기 변환 대상 영역내에 존재하는지 여부를 판단함으로서 현재 입력된 화소가 색온도 변환 대상인지 여부를 판단하는 판단부; 휘도별로 샘플링된 다수의 색온도들 및 그에 대응하는 색좌표들에 대한 제2 정보를 저장하는 제2 저장부; 및 상기 판단부에서의 판단 결과 현재 입력된 화소가 색온도 변환 대상인 경우 상기 제2 저장부에 저장된 제2 정보로부터 현재 화소의 휘도에 가장 근접한 색좌표를 변환 목표 색좌표로 하고, 상기 변환 목표 색좌표를 원점으로 변환하는 정도에 상응하여 입력되는 화소의 색좌표를 변환하는 색좌표 변환부를 포함하는 것을 특징으로 한다.
바람직하게는, 상기 제1 정보는 상기 변환 대상 영역이 타원인 경우 상기 타원의 장축 길이, 단축 길이, 및 회전 행렬 계수를 저장하는 것을 특징으로 한다.
이하, 첨부한 도면을 참조하면서 본 발명에 따른 색온도 변환 방법 및 장치의 바람직한 실시예를 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 한해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호로 표기되었음에 유의하여야 한다. 또한, 하기의 설명에서는 구체적인 회로의 구성소자 등과 같은 많은 특정사항들이 도시되어 있는데, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐 이러한 특정사항들 없이도 본 발명이 실시될 수 있음은 이 기술분야에서 통상의 지식을 가진 자에게는 자명하다 할 것이다. 그리고, 본 발명을 설명함에 있어서, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다.
도 1은 본 발명의 일 실시예에 따른 색온도 변환 장치(100)의 구성도로, 변환 대상 화소 여부 판단부(110), 변환 대상 범위 결정 변수 계산부(120), 변환 대상 범위 결정 변수 및 조절 인자 저장부(130), 사용자 설정 색온도 대응 색좌표 계산부(140), 샘플 밝기별 색온도별 대응 색좌표 룩업 테이블(150), 색좌표 변환부(160)를 포함하여 이루어진다.
도 1을 참조하면, 변환 대상 화소 여부 판단부(110)는 외부 장치로부터 화소의 밝기 신호 및 색차 신호로 이루어진 영상 신호 및 변환 대상 범위 결정 변수 계산부(120)로부터 입력된 변환 대상 범위 결정 변수를 이용하여 해당 화소가 반환 대상 범위내에 존재함으로써, 변환 대상인지 여부를 판단한다. 한편, 본 명세서에서 화소의 밝기와 휘도는 동일한 의미로 사용된다.
변환 대상 범위 결정 변수 계산부(120)는 외부 장치로부터 화소의 밝기 신호 및 색차 신호로 이루어진 영상 신호 및 변환 대상 범위 결정 변수 및 조절 인자 저장부(130)로부터 입력된 정보를 입력받아 반환 대상 범위 결정 변수를 계산하고, 그 계산 결과를 변환 대상 화소 여부 판단부(110)로 출력한다.
변환 대상 범위 결정 변수 및 조절 인자 저장부(130)는 변환 대상 범위의 결정 변수 및 각종 조절 인자를 저장하고 있으며, 상기 변환 대상 범위 결정 변수 계산부(120)로 저장된 각종 변수 및 조절 인자를 출력한다.
사용자 설정 색온도 대응 색좌표 계산부(140)는 샘플 밝기별 색온도별 대응 색좌표 룩업 테이블(150), 사용자 설정 색온도를 참조하여 현재 처리 대상 화소의 밝기 신호, 색차 신호에 대응하는 변환 목표 색좌표를 계산한다.
샘플 밝기별 색온도별 대응 색좌표 룩업 테이블(150)은 영상 디스플레이 장치의 특성에 따른 샘플 밝기별 다수의 색온도 및 상기 색온도에 해당하는 색좌표 공간상의 색좌표를 저장하고 있다.
색좌표 변환부(160)는 변환 목표 색좌표로 색좌표의 원점을 옮기는 정도에 상응하는 색좌표 변환을 입력되는 화소에 대해 행한다.
도 2는 본 발명의 일 실시예에 따른 색온도 변환 방법의 흐름도로, 변환 대상 범위 결정 변수 계산 단계(S201), 변환 대상 화소 여부 판단 단계(S202), 사용자 설정 색온도 대응 색좌표 계산 단계(S203), 색좌표 변환 단계(S204)를 포함하여 이루어진다.
도 2를 참조하면, 우선 S200 단계에서는 외부로부터 밝기 신호(Y) 및 색차 신호(Cb, Cr)로 이루어진 영상 신호가 입력되면, 변환 대상 범위 결정 변수 계산부(120)는 변환 대상 범위 결정 변수 및 조절 인자 저장부(130)로부터 정보를 입력받아 해당 화소에 대응하는 변환 범위 결정 변수를 계산한다. 이러한 도면 부 호 130에 저장되는 변수들은 타원 장축 길이 조절 인자, 타원 단축 길이 조절 인자, 타원 장축의 X축에 대한 회전 각도, 및 휘도 스케일링 인자 등으로 구성될 수 있으며, 표 1에는 이러한 한가지 실시예를 도시하고 있다.
인덱스 |
구 분 |
테이블의 내용 |
1 |
타원 장축 길이 조절 인자 |
α |
2 |
타원 단축 길이 조절 인자 |
β |
3 |
타원 장축의 x축에 대한 회전 각도 |
θ |
4 |
휘도 스케일링 인자 |
k |
변환 대상 범위 결정 변수 계산 단계(S210)에서는 표 1의 인자들을 가지고 변환 대상 범위 결정 변수를 계산한다. 이하 상세히 기술하면 다음과 같다.
(1) 먼저, 타원 장축의 기본 길이(Base_Dist)를 계산한다. 장축의 기본 길이(Base_Dist)는 다음과 같이 정의된다.
여기서, Y는 입력된 화소의 밝기, 즉 휘도(Luminance)를 의미한다.
(2) 다음, 타원의 장축 길이(a)는 조절 인자(α)를 승산하여 다음과 같이 계산한다.
(3) 그리고, 타원의 단축 길이(b)는 조절 인자(β)를 승산하여 다음식과 같이 계산한다.
(4) 다음에는, 타원 장축 길이에 대한 회전 각도(θ)로부터 회전 행렬의 계수 값을 다음 수학식 4 및 5와 같이 구한다.
(5) 또한, 타원 장축 길이의 제곱 값을 다음 식과 같이 계산한다.
(6) 역 타원 단축 길이 제곱 값은 다음 식과 같이 계산한다.
변환 대상 화소 여부 판단 단계(S202)에서는 변환 대상 화소 여부 판단부(110)에서 상기 계산된 반환 대상 범위 결정 변수들을 이용하여 입력된 화소가 변환 대상 화소인지 아닌지를 판단한다. 이하에 S202 단계를 상세히 기술하기로 한다.
(1) 먼저 처리할 영상을 입력하며, 입력된 영상은 한 화소씩 처리된다.
(2) 다음, 변환 대상 범위 결정 변수 계산부(120)에서 계산된 미리 계산된 변수들 m1,m2, f, g를 입력한다.
(3) 그리고, 입력된 화소의 색 P(x, y)의 회전된 좌표 값 P1(p1x, p1y)은 다음 식과 같이 구한다.
(4) 마지막으로, 입력된 화소인 P(x, y)가 변환 대상 화소인지를 다음 수학식 (10)에 의해 검사한다. 즉, 수학식 (10)을 만족하면 입력된 화소는 변환 대상이며, 그렇지 않은 경우라면 변환 대상 화소가 아닌 것으로 판단한다. 이 경우에는 다음 화소를 처리하는 과정으로 진행한다.
사용자 설정 색온도 대응 색좌표 계산 단계(S203)에서는 사용자 설정 색온도 대응 색좌표 계산부(140)에서 샘플 밝기별 색온도별 대응 색좌표 룩업 테이블(150)을 참조하여 현재 처리 대상 화소의 밝기 신호, 색차 신호에 대응하는 변환 목표 색좌표를 계산한다. 표 2는 샘플 밝기별 색온도별 대응 색좌표 룩업 테이블(150)의 예시를 나타내고 있으며, 변환 목표 색좌표를 계산하는 과정을 아래에 상세하게 기 술하기로 한다.
인덱스 |
휘도 |
T1
|
T2
|
.... |
TM-1
|
TM
|
1 |
Y1
|
Cb1_T1, Cr1_T1
|
Cb1_T2, Cr1_T2
|
.... |
Cb1_TM-1, Cr1_TM-1
|
Cb1_TM, Cr1_TM
|
2 |
Y2
|
Cb2_T1, Cr2_T1
|
Cb2_T2, Cr2_T2
|
.... |
Cb2_TM-1, Cr2_TM-1
|
Cb2_TM, Cr2_TM
|
3 |
Y3
|
Cb3_T1, Cr3_T1
|
Cb3_T2, Cr3_T2
|
.... |
Cb3_TM-1, Cr3_TM-1
|
Cb3_TM, Cr3_TM
|
4 |
Y4
|
Cb4_T1, Cr4_T1
|
Cb4_T2, Cr4_T2
|
.... |
Cb4_TM-1, Cr4_TM-1
|
Cb4_TM, Cr4_TM
|
.... |
.... |
.... |
..... |
.... |
.... |
|
N-1 |
YN-1
|
CbN-1_T1, CrN-1_T1
|
CbN-1_T2, CrN-1_T2
|
.... |
CbN-1_TM-1, CrN-1_TM-1
|
CbN-1_TM, CrN-1_TM
|
N |
YN
|
CbN_T1, CrN_T1
|
CbN_T2, CrN_T2
|
.... |
CbN_TM-1, CrN_TM-1
|
CbN_TM, CrN_TM
|
(1) 우선 샘플 밝기별 색온도별 대응 색좌표 룩업 테이블(150)으로부터 다음 식을 만족하는 두개의 샘플 밝기 신호(Yl, Yh)를 찾는다.
여기서, 샘플 밝기 신호 Yl, Yh는 미리 정해진 값이며, 8비트 데이터를 다루는 경우 0에서 255까지의 값을 가질 수 있으며, 만약 샘플 밝기가 16개(N=6)이고, 등간격으로 밝기를 샘플링한 경우 각 단계는 16의 차이를 가지는 값이 될 수 있다. 즉, 0, 16, 32, 48 등의 값을 구성될 수 있다. 이 경우, 만약 Y가 37의 값을 가진다면, Yl=32, Yh =48이 된다.
(2) 다음, 샘플 색온도별 대응 색좌표 룩업 테이블(150)로부터 다음을 만족하는 두개의 샘플 색온도 값(Tl, Th)를 찾는다.
(3) 그리고, 두개의 샘플 밝기 신호 Yl, Yh에 대해 각각 사용자 설정 색온도 Tu에 해당하는 색좌표를 다음과 같이 보간으로 구한다. 하나의 샘플 밝기에서 Tl, Th에 해당하는 색좌표를 각각 (CbTl, CrTl), (CbTh, Cr
Th)라 할 때, Tu에 해당하는 색좌표 (CbTu, CrTu)는 다음과 같이 두개의 색온도와 사용자 설정 색온도의 차이에 따라 가중치를 구하고, 이를 이용하여 색좌표 보간함으로써 구해진다. 이러한 개념의 이해를 위해 색온도에 따른 색좌표 보간의 도식적 표현을 도 3에서 도시하고 있다.
(4) (3)의 과정을 통해 두개의 샘플 밝기 신호 Y1, Yh에 대해 각각 구해진 사용자 설정 색온도 Tu에 해당하는 색좌표를 각각 (CbTu_l, CrTu_l), (CbTu_h
, CrTu_h)라 할 때, 입력 화소의 밝기 신호 Y에 대응하는 사용자 설정 색온도 대응 Tu에 대응하는 색좌표는 두개의 샘플 밝기 신호와 입력 화소의 밝기 신호 Y의 차이에 따라 가 중치를 구하고 이를 이용하여 색좌표 보간함으로써 구해진다. 이때 구해지는 색좌표가 변환 목표 색좌표가 된다. 도 4에는 이러한 밝기에 따른 색좌표 보간의 개념을 도식화하여 나타내고 있다.
색좌표 변환 단계(S204)에서는 색좌표 변환부(160)에서 변환 목표 색좌표로 원점을 옮기는 정도에 상응하는 변환을 입력 화소의 좌표에 대해 행하는 색좌표 변환을 수행한다. 이하에서 그 과정을 상세히 기술하기로 한다.
(1) 먼저, 입력 화소의 좌표값 P(x,y)의 두 요소가 모두 0인지 검사한다. 만약 두 요소 모두 0이면, 즉 x = y = 0이면 변환된 좌표 P'(x',y')는 변환 목표 색좌표인 Tu(Cbu, Cru)로 단순히 대체되고, 즉 x'=Cbu, y'=Cr
u로 하고 아래 과정은 수행하지 않고, 다음 화소의 처리 단계로 진행한다. 그 외의 경우 아래 단계를 수행한다.
(2) 다음에는, 원점에서 P1(p1x, p1y)를 지나는 직선이 타원의 경계와 만나는 점까지의 거리 r을 다음 수식과 같이 계산한다.
여기서,
로 정의되며, 입력 화소의 좌표와 원점을 잇는 직선의 방정식을 y=Bx라 할 때, 그 기울기가 B에 해당한다. 만약, p
1x=0(p
1y≠0)이면 r=1/g로 하고, p
1y=0(p
1x≠0)이면 r=1/f로 한다. 한편, (x
c. y
c)는 직선과 타원이 만나는 교점의 좌표이다.
(3) 그리고, 색좌표 변화량 가중치인 wm값을 다음식과 같이 계산한다.
여기서, P(x, y)는 입력 화소의 색좌표에 해당한다.
(4) 또한, 변환된 좌표 P'(x', y')를 다음 식 (23)과 같이 계산한다. 변환 목표 색좌표 T(xt, yt) = Tu(Cbu, Cru)이며, 앞 단계에서 구해진 값이다.
S205 단계에서는 색좌표 변환 단계이후 모든 화소가 처리되었는지를 검사하고, 모든 화소가 처리되었으면, 상기의 과정들을 종료하고, 처리할 화소가 남아 있는 경우에는 모든 화소가 처리될 때까지 상기의 과정들을 반복적으로 수행한다.
도 5는 본 발명의 다른 태양에 따른 색온도 변환 장치(500)의 구성도로, 변환 대상 화소 여부 판단부(510), 변환 대상 범위 결정 변수 룩업 테이블(520), 샘플 밝기별 색온도별 대응 색좌표 룩업 테이블(550), 색좌표 변환부(560)를 포함하여 이루어진다. 도 5의 경우에는 도 1의 실시예의 기본 개념을 반영하되, 계산이 요구되는 부분은 미리 룩업테이블로 저장한다는 점이 다르다.
도 5를 참조하면, 변환 대상 화소 여부 판단부(510)는 변환 대상 범위 결정 변수 룩업 테이블(520)으로부터 변환 대상 범위 결정 변수를 직접 입력받는다.
변환 대상 범위 결정 변수 룩업 테이블(520)은 표 3에서와 같이 구성되며, 입력 가능한 화소의 각각의 밝기에 대응하여 변환 대상 범위를 결정하는 변수 값을 저장하고 있다. 또한 입력 밝기에 대응한 변수 값을 변환 대상 화소 여부 판단부(510)로 전달한다.
인덱스 |
휘도 |
변 수 |
1 |
Y1
|
m1_1, m1_2, f1, g1
|
2 |
Y2
|
m2_1, m2_2, f2, g2
|
3 |
Y3
|
m3_1, m3_2, f3, g3
|
4 |
Y4
|
m4_1, m4_2, f4, g4
|
.... |
.... |
|
N-1 |
YN-1
|
mN-1_1, mN-1_2, fN-1, gN-1
|
N |
YN
|
mN_1, mN_2, fN, gN
|
반환 대상 범위 결정 변수 룩업테이블(520)은 입력 가능한 모든 밝기에 대응 하여 준비되지 않은 경우에도 입력 화소를 표 3에 존재하는 가장 가까운 밝기 값에 대응시키고, 그에 해당하는 변수 값을 입력 화소에 적합한 변환 대상 범위 결정 변수로 설정하는 방법으로 변환 대상 범위 결정 변수를 얻는 것이 가능하다.
색좌표 변환부(560)는 샘플 밝기별 색온도별 대응 색좌표 룩업테이블(550)으로부터 변환 목표 색좌표를 직접 입력받아 변환 목표 색좌표로 색좌표의 원점을 옮기는 정도에 상응하는 색좌표 변환을 입력되는 화소에 대해 행한다. 이러한 과정은 도 1 및 도 2의 경우에서와 동일하므로, 반복적인 설명은 피하기로 한다.
다만, 도 1의 색온도 변환 장치의 경우는 변환 대상 범위 결정 변수와 사용자 설정 색온도 대응 색좌표를 샘플 데이터를 이용하여 보간하는 형태로 계산하는 반면에, 도 5의 색온도 변환 장치의 경우는 이 2가지 항목을 모두 샘플 데이터를 직접 사용한다는 점에서 차이가 있다. 따라서, 도 1의 장치의 경우는 적은 저장 용량을 사용해서 구현이 가능하나 계산량이 많아 그에 따른 처리 시간이 길어지나, 반면에 도 5의 색온도 변환 장치의 경우는 그 반대의 결과가 된다.
도 6는 본 발명의 다른 실시예에 따른 색온도 변환 장치(600)의 구성도로, 변환 대상 화소 여부 판단부(610), 변환 대상 범위 결정 변수 계산부(620), 밝기별 목표 색온도 룩업 테이블(630), 사용자 설정 색온도 대응 색좌표 계산부(640), 샘플 밝기별 기본 색온도별 대응 색좌표 룩업 테이블(650), 색좌표 변환부(660), 변환 대상 범위 결정 변수 및 조절 인자 저장부(670)를 포함하여 이루어진다.
도 6의 경우에는 도 1과 비교하여 밝기별 목표 색온도 룩업 테이블(630)이 추가되었으며, 사용자 설정 색온도 대응 색좌표 계산부(640)는 도 1에서와는 다르 게 기능한다. 한편, 표 4에 밝기별 목표 색온도 룩업 테이블(630)의 한 예를 도시하고 있다.
인덱스 |
휘도 |
색좌표 |
1 |
Y1
|
T1_t
|
2 |
Y2
|
T2_t
|
3 |
Y3
|
T3_t
|
4 |
Y4
|
T4_t
|
.... |
.... |
.... |
N-1 |
YN-1
|
TN-1_t
|
N |
YN
|
TN_t
|
(1) 우선 샘플 밝기별 색온도별 대응 색좌표 룩업테이블(630)로부터 다음 식을 만족하는 2개의 샘플 밝기 신호(Yl, Yh)를 찾는다.
여기서, 샘플 밝기 신호 Yl, Yh는 미리 정해진 값이며, 8비트 데이터를 다루는 경우 0에서 255까지의 값을 가질 수 있으며, 만약 샘플 밝기가 16개(N=6)이고, 등간격으로 밝기를 샘플링한 경우 각 단계는 16의 차이를 가지는 값이 될 수 있다. 즉, 0, 16, 32, 48 등의 값을 구성될 수 있다. 이 경우, 만약 Y가 37의 값을 가진다면, Yl=32, Yh =48이 된다.
(2) 다음, 2개의 샘플 밝기 신호(Yl, Yh)에 대응하는 목표 색온도를 밝기별 목표 색온도 룩업테이블(630)로부터 얻는다. 그리고 샘플 밝기별 색 온도별 대응 색좌표 룩업 테이블(650)로부터 다음을 만족하는 두개의 샘플 색온도 값(Tl, Th)를 찾는다.
(3) 그리고, 두개의 샘플 밝기 신호 Yl, Yh에 대해 각각 목표 색온도 Tl_t
, Th_t에 해당하는 색좌표를 수학식 (13) 내지 (16)으로부터 구한다.
(4) 과정 (3)을 통해 2개의 샘플 밝기 신호 Yl, Yh에 대해 각각 구해진 목표 색온도 Tl_t, Th_t에 해당하는 색좌표를 각각 (CbTu_l, CrTu_l
), (CbTu_h, CrTu_h)라 하자. 그러면, 입력 화소의 밝기 신호 Y에 대응하는 사용자 설정 색온도 Tu에 대응하는 색좌표는 두 샘플 밝기 신호와 입력 화소의 밝기 신호 Y의 차이에 따라 가중치를 구하고, 이를 이용하여 색좌표 보간함으로써 구해진다. 계산과정은 수학식 (17) 내지 (20)에 표현되어 있다.
도 6에 따른 색온도 변환 장치의 경우 외부에서 입력되는 사용자 설정 색온도 대신 장치 내부에 미리 결정된 값을 갖는 밝기별 목표 색온도 룩업 테이블(630)을 가지고 있다. 이렇게 함으로써, 밝기별로 서로 다른 색온도를 재현하는 것이 가능하다. 또한 이를 응용하여 밝기별 목표 색온도 룩업테이블(630)에 사용자 설정 색온도를 입력하고, 그 상호 관계를 활용하여 밝기별로 서로 다른 색온도 변환을 구현하는 것이 가능하다.
도 7 및 도 8은 입력된 화소의 색좌표 변환 관계의 이해를 돕기 위한 도면으로, 도 7은 사용자 설정 색온도에 대응하여 입력되는 화소의 색좌표 변환 관계를 도시하며, 도 8은 도 7에서 거리(r)를 구하기 위한 과정을 도시하는 도면이다.
우선 도 7을 참조하여, 입력된 영상의 화소의 색좌표를 P=(x, y)라 할 때, 변환 후의 색 좌표 P'=(x', y')를 찾는 과정을 수식을 부가하여 기술하기로 한다.
도 7에서 도시된 바와 같이, 변환 목표 색좌표 R' 및 입력되는 화소의 색좌표(P)가 모두 변환 대상 영역(700)내에 존재하는 경우 입력되는 화소의 색좌표 P에 상응하는 변환된 색좌표 P'의 계산이 가능하다.
우선 기준 색좌표 R과 변환 목표 색좌표 R'와의 거리(s)와 색좌표 변환후의 색 좌표 P'와의 거리는 수학식 (27)과 같다.
여기서, a를 양변에 절대값을 취한 크기를 고려하여 다시 표현하면, 수학식 (28)과 같다.
여기서, r=r1+r2=r1+∥P-R∥이므로, 변환 후의 색좌표 P'를 다시 표현하면, 수학식 (29)와 같다.
수학식 (29)에서 보는 바와 같이, 결국 P'는 R, R', P 및 r에 의해 결정되므로, 매 입력되는 화소의 변환된 색좌표를 구하기 위해서는 r을 계산할 필요가 있다. 만약, 변환 대상 영역(700)이 원인 경우에는 r은 모든 각도에서 동일하고, 그 크기는 원의 반경과 동일하므로 계산이 더욱 수월해진다.
도 8은 r을 구하기 위해 (1) 소정의 회전 각도로 기울어진 변환 대상 영역인 타원(800)을 원점을 중심으로 이동시키고, (2) 타원의 장축을 x축과 타원의 단축을 y축과 평행하게 한 후(810), (3) 직선(821)과의 교점을 통해 거리 r을 구하는 과정(820)을 도시한 도면이다.
도면 부호 820에서 타원의 방정식은 fx2+gy2=1이며, 여기서 f=1/a2, g=1/b
2이다. 원점 및 변환된 후의 색좌표값을 지나는 직선(821)과 타원의 교점은 (xc, yc)이라고 하자. 상기 직선의 방정식을 타원의 방정식으로부터 거리 r은 다음과 같이 계산이 가능하다.