3.2 그래픽 컬러 처리
Reporting Date: October. 20, 2024
CIE 컬러 모델의 개념을 바탕으로,
하프토닝, 디더링 기법, 감마 수정에 대해 다루고자 한다.
목차01 CIE
02 제품 사진과 실제 제품 간의 색상 차이
03 색상도 차이가 발생하는 이유?
04 색온도
05 다양한 모델이 필요한 이유?
06 슈도
07 과거 색상 저장 기법
08 하프토우닝과 디더링
09 감마수정
컬러 매칭
01 CIE
(Commission Internationale de l'Éclairage)
색을 수학적으로 표현하기 위해
국제 조명 위원회(CIE)에서 개발한 색 공간 모델.
모든 색상은 이 모델에서 위치를 가질 수 있으며,
특히 인간이 인식할 수 있는 색들을 수치로 나타내는 데 중요한 역할을 한다.
이 색도표는 CIE 1931 XYZ 색 공간이라는 모델을 기반으로 하며,
인간의 색각을 수학적으로 설명하려고 만든 것이다.
이 색 공간에서는 색상을 X와 Y 두 개의 좌표로 나타내고,
Z는 밝기를 나타내는 방식으로 계산된다.
1 . 상단의 초록
CIE 색도표에서 가장 상단에 위치한
녹색 영역은 인간의 눈이 가장 민감하게 반응하는 색이다.
녹색 빛은 인간이 잘 인식하기 때문에 색도표의 위쪽에 배치되어 있다.
2 . 좌측 하단의 파랑
색도표의 좌측 하단은 파란색 영역에 해당한다.
파란색은 짧은 파장을 가지며, 색상 차트의 왼쪽 아래에 배치된다.
3 . 우측 하단의 빨강
우측 하단에는 빨간색이 위치한다.
적색은 긴 파장을 가지며, 색도표에서 오른쪽 아래에 배치된다.
4 . 정중앙의 하얀색
CIE 색도표의 정중앙은 흰색 또는 중성색을 나타낸다.
흰색은 모든 색의 조합으로 발생하며, 이 부분은 광원의 균형 잡힌 색을 나타낸다.
이 표는 모든 색상의 조상 격으로 여겨지며,
다양한 색 공간과 기술들이 이 모델을 기반으로 발전했다.
<제품 사진과 실제 제품의 차이가 발생하는 이유?>
제품 사진과 실제 제품이 다르게 보이는 이유는
색 재현 방식의 차이 때문이다.
CIE 색도표는 색의 이론적 범위를 나타내며,
인간이 인지할 수 있는 색의 모든 가능한 범위를 포함하고 있다.
실제 색을 표현하는 방식에 따라 각기 다른 제한된 범위를 가지며,
아래의 모델들은 모두 CIE 색도표 내의 일부 영역에 해당된다.
1 . 컬러 필름
CMY 색상 모델을 사용하여 색을 재현한다.
RGB 색상 모델을 기반으로 동작하지만,
실제 저장은 CMY 염료로 이루어지는 하이브리드 방식이다.
즉, 입력(RGB) → 변환(CMY) → 출력(RGB)
이것은 물리적인 매체에서 색상을 표현하는 방식으로,
각각의 색은 빛을 흡수하고 반사하는 특성에 따라 색을 만들어낸다.
필름에 찍힌 색상은 실제 물체의 색을 기반으로 하므로,
대부분의 경우 실제 제품에 가까운 색을 나타낸다.
이는 CIE 색도표의 대부분의 영역과 일치하기 때문이며,
영화나 사진 인화에 주로 사용된다.
2 . 컬러 모니터
RGB 색상 모델을 사용하여 색을 재현한다.
이 모델은 빛의 색을 혼합하여 색을 만든다.
화면에 나타나는 색은 기본적으로 빛의 발광을 이용하는 방식이므로,
화면에서 보이는 색상은 빛을 내는 방식에 따라 다르게 표현된다.
RGB 모델은 빛을 직접 발산하는 장치에 최적화되어 있으므로,
실제 물체의 색과는 차이가 있을 수 있다.
즉, 컬러 필름보다는 좁은 범위를 가진다.
3 . 프린트
CMYK 색상 모델을 사용한다.
프린터는 잉크를 사용하여 색을 만드므로,
빛을 반사하는 방식이 아닌 물리적 재료의 혼합으로 색을 생성한다.
CMYK 모델은 빛을 반사하는 방식이 아닌,
물체 표면에서의 색을 형성하는 방식이다.
이 때문에 화면에서 보는 색상과 인쇄물에서의 색상도 차이를 보인다.
즉, 가장 좁은 범위의 색범주를 가진다.
<색상도 차이가 발생하는 이유?>
1 . 색의 범위 차이
(Color Gamut)
각 장치는 특정 색 범위만을 재현할 수 있다.
예를 들어, RGB 모니터는 광범위한 색상을 표현할 수 있지만,
CMYK 프린터는 그 범위가 더 제한적이다.
또한, 각 장치마다 색을 표현하는 방식도 다르므로,
동일한 색을 각 장치에서 다르게 인식하고 표현한다.
2 . 빛과 반사의 차이
모니터는 빛을 발산하는 장치이므로 색이 밝고 선명하게 보일 수 있다.
반면, 실제 제품은 빛을 반사하는 물체로, 빛의 강도와
각도에 따라 색상이 달라 보일 수 있다.
3 . 환경과 조건
제품 사진은 촬영 환경에 따라 다르게 보일 수 있다.
조명, 카메라 설정, 색 보정 등이 결과에 영향을 미칠 수 있다.
또한, 인터넷에서 보는 사진은 보통 압축되거나
색상이 다르게 처리되기도 하기 때문이다.
따라서, 사진과 실제 제품이 다르게 보이는 것은 자연스러운 현상이다.
각 장치가 색을 재현하는 방식이 다르므로, 색상 차이가 발생하고,
이는 제품 사진과 실제 제품 사이의 간극을 만들어낸다.
04 색온도
(Color Temperature)
색상, 온도, 디스플레이 장치의 설정은
우리가 보는 화면의 색상에 큰 영향을 미친다.
색온도는 주로 캘빈(K) 단위로 측정되며,
태양광이나 인공 광원에서 방출되는 빛의 색상과 관련이 있다.
1 . 태양광
(太陽光, Solar Light)
태양빛은 우리가 일반적으로 보는 "백색광"으로, 자연광에 가까운 색상이다.
태양빛의 색상은 온도에 따라 달라지며, 이는 색온도로 측정된다.
백색광의 색온도는 대략 5,500K ~ 6,500K 범위로 설정된다.
이 범위에서는 태양빛이 "하얗게" 보이며, 태양이
중간 정도의 고도에 있을 때의 색상이다.
(오전 10시 ~ 오후 3시 사이)
태양이 지평선에 가까운 낮 시간대에 있을 때,
태양광은 더 따뜻한 색상을 띠며, 주로 노란색으로 보인다.
이는 색온도가 낮은 상태(대략 4,000K ~ 5,000K)에서 발생한다.
일몰이나 일출 시에는 붉은색 또는 주황색이 돋보이는데,
이때 태양의 색온도는 매우 낮아져 2,000K ~ 3,000K 수준으로 변한다.
이 때문에 우리는 일출과 일몰 때 태양이 붉고 따뜻한 색조로 보이는 것이다.
2 . 디스플레이 장치
디스플레이에서 색온도는
화면에 표시되는 빛의 색깔을 결정하는 중요한 요소이다.
색온도에 따라 화면의 색상이 달라지며,
각 디스플레이 기술은 특정 색온도를 가지고 있다.
① 삼성 TV
일반적으로 더 화사하고 선명한 색을 강조하는 경향이 있다.
이들은 보통 색온도가 6,500K 이상으로 설정되어, 화면이 밝고 선명하게 보인다.
이 설정은 오락 프로그램이나 연애 프로그램에서 효과적이며,
명확하고 강렬한 색감을 제공한다.
② LG TV
상대적으로 더 자연스러운 광원 표현과 따뜻한 느낌을 주기 위해
색온도를 5,500K 이하로 설정하는 경향이 있다.
이 색온도는 영화와 같은 콘텐츠에서
더욱 자연스럽고 편안한 색감을 제공한다.
3 . 방송사의 카메라
각 방송사의 화면 색상도
그들이 사용하는 카메라 설정에 따라 달라진다.
방송사는 촬영 환경과 카메라 설정에 따라 색온도를 조정하여
각 프로그램의 특성에 맞는 색감을 제공하려 한다.
오락 프로그램에서는 더욱 밝고 화사한 색감을 사용해 생동감을 주며,
드라마나 영화에서는 자연스러운 색조와 부드러운 명암을 추구할 수 있다.
4 . 시각적 효과
사람들에게 특정 감정적 반응을 일으킬 수 있다.
예를 들어, 따뜻한 색온도(예: 3,000K)는 편안하고 아늑한 느낌을 주며,
차가운 색온도(예: 10,000K 이상)는 시원하고 깔끔한 느낌을 전달한다.
각 디스플레이 장치나 방송사의 설정은 화면의 느낌을 결정짓는 중요한 요소이다.
삼성과 LG와 같은 브랜드가 설정하는 색온도에 따라,
동일한 콘텐츠라도 보는 느낌이 달라질 수 있다.
<다양한 모델이 필요한 이유?>
이미지를 다룰 때 다양한 컬러 모델과 변환 방식이 필요한 이유는
각 모델이 특정한 목적에 맞춰 최적화되어 있기 때문이다.
이미지 처리에서는 각기 다른 컬러 모델을 활용하여
이미지를 변환하거나 특정 색을 강조 · 제거하는 작업을 수행한다.
이 과정에서 각 모델의 특성에 따라 다양한 방식으로 이미지를 조작할 수 있다.
1 . 다양한 색 표현
RGB는 디지털 디스플레이(모니터, TV)에서 사용된다.
CMYK는 인쇄용 색상 모델이며, HSV는 색상 조절 및 필터링 용이하다.
2 . 특정 이미지 처리
Grayscale(흑백 변환)은 경계 검출 및 물체 인식 등에 활용된다.
YUV/YCrCb 컬러 모델은 JPEG 및 영상 코덱과 같은
영상 압축 및 전송을 최적화하는 데 사용된다.
3 . 색상 강조 및 변환
특정 색을 강조하거나 제거할 때는
RGB보다 HSV 또는 LAB 컬러 모델이 더욱 유용하다.
4 . 연산 및 압축
영상 코덱(H.264, JPEG)은 RGB 대신
YUV 컬러 모델을 사용하여 데이터 압축 효율을 높인다.
06 슈도
(Pseudo)
가짜의, 유사한, 또는 의사(擬似)라는 의미를 갖는다.
완전히 가짜(fake)인 것은 아니지만 진짜(real)도 아닌 상태.
즉, 현실의 특성을 일부 반영하지만 완벽하게 동일하지 않은 개념이다.
1 . 슈도컬러
(Pseudocolor)
이미지 처리에서 사용되는 기법.
원래는 흑백 또는 단색으로 된 이미지에 색상을 인위적으로 추가하여
데이터를 더 쉽게 시각적으로 분석할 수 있도록 하는 방법.
주로 의료 영상, 위성 사진 등에서 사용된다.
예를 들어, 적외선 이미지를 가시광선 이미지처럼
색상을 변환하여 사람들이 더 쉽게 인식할 수 있게 만든다.
실제 물체의 색상을 반영하지 않고,
의미를 부여한 색상을 적용하여 데이터를 표현한다.
즉, 색상은 임의로 지정되지만 데이터 분석을 돕기 위한 시각적 도구로 작동한다.
2 . 슈도코드
(Pseudocode)
알고리즘을 설명할 때 사용되는 비공식적인 코드 형식으로,
실제 프로그래밍 언어는 아니지만, 논리적 흐름과 구조를 표현한다.
코드의 모양을 갖추고 있지만, 실제 컴퓨터에서 실행될 수 있는 것은 아니다.
프로그래머가 알고리즘의 아이디어나 로직을 설명하는 데 사용한다.
자연어처럼 읽기 쉽고, 코드를 이해하기 위해 사용하는 기호나 규칙을 따른다.
논리적 흐름을 텍스트 중심으로 설명하므로, 특정 프로그래밍 언어에
구애받지 않으며, 코드의 논리를 명확히 설명하는 데 집중한다.
07 과거 색상 저장 기법
과거에는 메모리 제약으로 인해 컴퓨터는
효율적인 색상 저장 방법을 개발해야 했다.
이를 위해 사용된 개념이 바로 칼라표와 인덱스입니다.
이 방식은 메모리 절약을 위해 매우 유용했으며,
그 핵심 원리와 C 언어의 포인터 개념과도 밀접한 관련이 있다.
1 . 칼라표
(Color Table)
과거의 컴퓨터는 메모리 용량이 작아
한 프레임에 모든 색상 정보를 저장하기 어려웠다.
그래서 칼라표라는 색상 목록을 만들어, 모든 색상을
직접 저장하는 대신 색상을 간접적으로 참조하는 방법을 사용했다.
칼라표는 색상의 팔레트로, 일정한 수의 색상이 미리 저장된 테이블입니다.
예를 들어, 256색 팔레트를 사용할 경우, 256개의 색상이 색표에 저장되어 있으며,
이 색상들은 고유한 인덱스 값으로 참조된다.
2 . 인덱스
(Index)
실제 이미지는 인덱스만을 저장한다.
즉, 이미지를 이루는 각 픽셀은 실제 색상을 저장하는 것이 아니라,
칼라표에서 해당 색상을 참조하는 인덱스 번호를 저장한다.
나중에 이미지를 표시할 경우,
디스플레이 장치는 메모리에 저장된 인덱스 값을 보고,
그에 맞는 색상을 칼라표에서 찾아 표시한다.
256개의 색상 팔레트를 사용할 경우,
각 픽셀은 1바이트(8비트) 크기의 인덱스 번호를 저장한다.
이를 통해 메모리 절약이 가능해졌으며, 실제 색상은 칼라표에서 참조된다.
이 구조는 실제 메모리 내에 저장된 인덱스와
칼라표에 저장된 색상 정보가 이중 구조로 작동된다.
이미지 파일에는 색상 인덱스만 저장되며,
이를 통해 메모리를 효율적으로 사용할 수 있었다.
3 . 포인터 개념
메모리 주소를 가리키는 변수.
데이터에 직접 접근하지 않고, 해당 데이터가 저장된
메모리 주소를 참조하는 방식을 사용한다.
이는 칼라표에서 인덱스가 색상을 참조하는 방식과 유사하다.
C 언어에서 포인터는 가장 중요한 개념 중 하나로,
메모리 관리와 효율적인 데이터 처리를 가능하게 한다.
이미지 처리에서도 이러한 포인터 구조는 중요한 역할을 하였으며,
메모리 내 참조를 통해 데이터를 간접적으로 처리한다.
4 . 최근의 변화
최근에는 메모리 용량이 크게 늘어나면서 칼라표와 같은
인덱스 방식의 색상 참조가 많이 사용되지 않지만,
여전히 일부 시스템이나 응용 프로그램에서 사용된다.
리소스가 제한된 임베디드 시스템이나 특정 그래픽 프로그램에서는
여전히 칼라표 방식을 활용하여 메모리 절약이 가능하다.
또한 디더링(dithering) 기법에서 칼라표와 비슷한 원리를 사용하여,
제한된 색상 팔레트를 활용해 더 많은 색상을 표현하는 기법도 여전히 사용된다.
5 . 프로그램의 컬러 모델 배치
어떤 프로그램이든 기본 컬러 팔레트와
특정 컬러를 만드는 모델이 같이 배치되는 경우가 일반적이다.
프로그램은 이를 통해 다양한 색상 변환과
색상 표현을 효율적으로 처리할 수 있다.
특히, 이미지 처리 소프트웨어에서는
여러 컬러 모델을 사용해 특정 색상 변환을 처리하며,
이를 통해 다양한 효과나 필터를 구현한다.
RGB 모델에서 HSV 모델로 색상 공간을 변환하여
색조와 채도를 조정하거나 특정 색상 제거 작업을 수행할 수 있다.
08 하프 토우닝과 디더링
이미지의 색을 표현하는 기술.
특히 해상도가 제한된 디스플레이 장치나
출력 장치에서 효과적으로 색상을 표현하는 방법.
이 두 가지 방법은 각기 다른 방식으로
이미지의 색상 범위와 표현 품질을 조절한다.
1 . 하프 토우닝
(Halftoning)
이미지의 색을 점으로 분할하여
해상도를 낮추고,명암 차이를 만들어내는 방식.
각 점은 흰색과 검은색 또는 다른 색의 점으로 구성되며,
점의 크기나 간격을 조절하여 그라데이션과 같은 복잡한 색을 표현한다.
광원조절
하프톤 기법에서는 각 픽셀을
여러 개의 작은 점으로 분할하여 표현하며,
이 점들의 배치와 밀도를 조절하여 색과 밝기를 조절한다.
하프토우닝의 단점
기본적으로 점 크기와 간격에 의존하므로,
이미지의 해상도가 감소하게 된다.
즉, 세밀한 색상 표현이나 디테일이 부족해질 수 있다.
이 때문에 고해상도 이미지에서는 세부적인 색상 차이와
부드러운 그라데이션을 정확하게 표현하기 어렵다.
2 . 디더링
(Dithering)
색상의 오류를 의도적으로 확산시켜
이미지의 품질을 유지하면서 색을 표현하는 기술.
이미지를 저해상도로 변환할 때 발생할 수 있는
색 차이를 해결하기 위해 사용된다.
이 기법에서는 픽셀 간의 색상 차이를 주변 색상으로 확산시켜,
이미지의 색상 차이를 뿌옇게 만들거나 무작위로 분포시킴으로써
색상이 자연스럽게 보이도록 한다.
오류 확산
색상 차이를 줄이기 위해
의도적으로 인위적인 오류를 퍼뜨리는 기법.
이를 통해 색상의 변화를 더욱 자연스럽게 만든다.
표현할 수 없는 색상이 있을 경우,
가장 가까운 색을 주변에 확산시켜
그라데이션 효과나 부드러운 색상 변화를 구현한다.
디더링의 장점
해상도 감소가 없으며
부드러운 그라데이션을 유지한다.
디더링은 색을 정확하게 나타내는 데 유리하며,
특히 저해상도나 제한된 색상 수(낮은 비트 깊이)에서 유용하다.
해상도를 유지하면서 색의 혼합 효과를 얻을 수 있으므로,
하프 토우닝에 비해 더 좋은 품질을 제공한다.
09 감마 수정
(Gamma Correction)
디지털 이미지 처리에서 밝기나
명암도를 정확하게 표현하기 위한 중요한 과정.
감마 수정을 통해, 이미지에서 밝기가
비선형적으로 표현되는 문제를 해결할 수 있다.
이 과정은 디스플레이 장치나 영상 시스템에서 자주 사용된다.
1 . 감마 수정의 필요성
전자빔의 세기와 실제 화면에 표시되는 밝기는
직선적으로 비례하지 않는다.
전자빔의 세기가 두 배로 증가하더라도,
실제로 화면에 표시되는 밝기는 두 배로 증가하지 않는다.
이는 디스플레이 장치의 물리적 특성에서 비롯된 문제로,
비선형적인 밝기 반응을 보인다.
일반적으로, 디스플레이 장치에서 실제 밝기가 디스플레이 장치의 입력 신호에 비례하지 않으며,
화면에서 표현되는 이미지가 어둡게 보이거나 명암이 부족한 현상이 발생할 수 있다.
2 . 감마 수정 과정
디바이스의 특성(디바이스 상수) 을
고려하여 입력 신호를 조정하는 작업이 필요하다.
감마 수정은 입력 신호의 밝기 값에 대한 감마 값을 적용하여,
출력 신호가 정비례 관계를 이루도록 보정하는 작업이다.
감마 값이 2.2인 경우,
입력 신호의 밝기 값을 2.2의
거듭제곱을 취하여 출력 값을 계산한다.
디스플레이 장치가 갖는 비선형적인 밝기 특성을
보정하기 위해 감마 수정을 수행해야 한다.
이를 통해, 실제로 보여주고자 하는 밝기와
이미지의 밝기가 일치하도록 조정할 수 있다.
3 . 감마 미수정 시
실제보다 더 어두운 이미지가 표시된다.
이는 비선형적인 밝기 반응으로 인해
밝기가 제대로 표현되지 않아 발생하는 문제이다.
그 결과, 이미지의 명암이 왜곡되어
사용자가 기대하는 밝기보다 어둡게 보이며,
화면 밝기와 실제 조명 사이의 일관성이 저하될 수 있다.
4 . 감마 수정 방법
감마 수정을 하기 위한 수학적 접근법은 간단히 다음과 같다.
이 공식을 통해 감마 값을 조정하여 입력 신호에 대한
적절한 출력 신호를 계산할 수 있다.
교제: OpenGL로 배우는 3차원 컴퓨터 그래픽스(p.75)