mir.pe (일반/어두운 화면)
최근 수정 시각 : 2024-10-14 21:26:35

빛의 삼원색

RGB에서 넘어옴

파일:나무위키+유도.png  
은(는) 여기로 연결됩니다.
약어가 RGB인 적색거성가지에 대한 내용은 적색거성 문서
번 문단을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
참고하십시오.
파일:다른 뜻 아이콘.svg  
트루 컬러은(는) 여기로 연결됩니다.
다른 뜻에 대한 내용은 아래 문서를 참고하십시오.
빛의 3원색

1. 개요
1.1. 디지털에서의 색상 처리
2. 대중매체에서의 활용3. 관련 문서

1. 개요

<nopad> 파일:나무_RGB_수정.png
RGB 벤 다이어그램

의 세 가지 기본 색을 뜻하는 말이며 빨간색(Red), 초록색(Green), 파란색(Blue)의 합성어인 RGB를 쓰기도 한다.

색광에서 빨간색과 초록색을 합치면 노란색(Yellow)이 되고, 초록색과 파란색을 합치면 청록색(Cyan)이 되며, 파란색과 빨간색을 합치면 자홍색(Magenta)이 된다. 그리고 세 가지 색을 모두 합치면 흰색(White)이 되고, 반대로 세 가지 색을 모두 제외하면 검은색(Black)이 된다.

이런 식으로 텔레비전이나 컴퓨터 모니터 등 영상 장치의 해상도를 조절하는 표시 장치에 사용된다. 또한 빛을 이용하는 장치가 아닌 인쇄 매체의 경우에는 잉크체계를 사용해 특정 색을 흡수하고 나머지를 반사하기 때문에 RGB가 아닌 CMYK가 적용된다.

RGB가 빛이 삼원색이 될 수 있는 것은 인간의 시각에서 색상을 담당하는 원뿔세포가 세 종류(적색, 녹색, 청색)이며, 각각 R, G, B에 가까운 파장을 흡수하기 때문이다. 인간이 인식하는 빛깔은 이 원뿔세포들에 인식된 빛의 세기가 되므로, RGB 3색만 가지고도 인간이 인식하는 빛깔을 상당 부분 재현할 수 있다. 그럼에도 불구하고, RGB가 인간이 인식 가능한 모든 색상을 표현 가능한 것은 아니다. 특정 파장대역을 샘플링해 얻은 RGB에 의해 표현 가능한 빛깔은 불연속적인 3점의 세기로만 표현되는 반면, 본래 자연에서의 빛은 대부분 연속 스펙트럼의 형태로 나타나기 때문이다.[1] 또한 R, G, B가 나타내는 파장은 생각보다 원추세포가 인식하는 파장[2]과는 다르다는 문제점도 있다. 인간이 인식 가능한 색상을 표현하기 위한 목적으로 만들어진 색상 공간 중에는 인간의 원뿔세포가 받아들이는 색역을 모델링해 만든 CIE XYZ가 있으며, 모니터가 재현 가능한 색 범위를 나타내는 컬러 개멋(Color Gamut) 그래프에서 삼각형[3] 바깥에 나타나는 폐곡선이 바로 CIE XYZ 공간을 나타낸다.

RGB 색상에서 두 가지 색상을 겹쳐서 흰색을 만들 수 있는 경우, 해당되는 두 색상을 보색이라고 한다.[4]

표준 모형에서 나오는 강한 상호작용에도 RGB의 색 개념이 있다. 정확히는 RGB의 개념을 가져다가 쓴거다. 전기에서의 전하는 한 종류 밖에 없는데[5], 쿼크가 가지는 색 전하(color charge)의 경우 기본이 세 가지 종류라는 문제가 있었다.[6][7] 그래서 자연에서 세 가지가 기본인 것 중 가장 쉬운 게 색이어서 그냥 RGB를 가져다 쓰게 된거다. 즉, 실제 색이 있고 그런 건 아니다.

2010년대 중후반기부터는 RGB를 한 개의 소자로 쓸 수 있는 LED도 등장해서 튜닝용으로 징하게 쓰이고 있다. 이렇게 정신 사납게 무지개빛으로 발광하는 기기를 보고 무지개를 상징으로 쓰는 LGBT에 빗대어 RGBT라고 놀리기도 한다.

원색이다 보니까 보다 보면 눈이 꽤 아픈 편이다.

1.1. 디지털에서의 색상 처리

디지털에서는 이산적인 값을 쓰게 되며, 정보량(비트)에 따라서 표현할 수 있는 색의 가지수가 달라지게 된다. 제한된 정보량 안에서 색상을 표현하기 위해서는 잘리는 값이 생기게 된다.

CGA부터 VGA까지 초창기 컬러 그래픽 시대에는 표현할 수 있는 색상의 가짓수가 적었으므로, R, G, B에 각각의 정보량을 할당하는 대신, 팔레트를 사용해 미리 원하는 색상을 집어넣고 필요한 경우 스크린 모드를 전환해 팔레트를 바꾸면서 색을 맞추는 경우도 있었다. 디스플레이가 RGB 컬러를 지원하는 경우에는 색상 출력이 가능했으며, 그래픽 카드와 단색 디스플레이가 호환되는 경우 그레이스케일처럼 명암처리가 되는 경우도 있었다.

색상에 사용되는 정보량은 색심도(color depth)라는 용어가 사용되며, 주로 사용된 색심도는 다음과 같다.

프로세서 등 데이터 처리 과정에선 32비트(4바이트) 단위로 처리하는 경우가 많으므로, RGB에 1바이트 채널 하나를 더해 쓰는 경우도 많다.[13] 비워 두는 경우에는 단순한 패딩이지만, 이 추가 1바이트를 투명도를 나타내는 알파 채널로 쓰는 경우가 많다. 이 경우엔 RGBA라 부르기도 한다. 다만 알파 채널은 어디까지나 직접 출력될 색상을 나타내는 것이 아니며, 그래픽 프로세서 등에서 내부 처리(색상 혼합 = 블렌딩)를 통해 결과 색상을 다시 계산하는 것이므로, 색상을 표현하기 위한 것이 아닌 것에 주의할 필요가 있다. 모니터 페널들은 디더링 기법으로 지원하는 색상 깊이보다 더 깊은 색상을 구현해 원가를 절감하기도 한다.

각 채널별 색 심도를 10비트가 아니라 12비트, 16비트 등으로 더 늘여 쓰는 경우도 있다. 이 경우 총 색상은 36, 48비트 등이 되며, 이 경우에는 10비트처럼 딥컬러 혹은 HDR 등의 용어를 쓴다. 색심도를 더 높게 쓰는 곳이 많지는 않지만, 대표적으로는 다음과 같은 경우에 사용된다.

2. 대중매체에서의 활용

파일:상세 내용 아이콘.svg   자세한 내용은 삼원색(클리셰) 문서
번 문단을
부분을
참고하십시오.

3. 관련 문서



[1] 인간의 시각으로만 한정해도 4색각의 사례가 있다. 4색각의 경우 각 원뿔세포의 파장대역을 3색각자가 인지하는 색상으로 따지면 RYGB로 볼 수 있다. [2] 원뿔세포가 받아들이는 적색역은 거의 노란색의 파장에서 최대가 되며, 청색광도 일부 수용(!)하는 등의 문제가 있다. 또한 세 원뿔세포가 인식하는 빛에너지의 강도가 다르기도 하다. [3] 특정 RGB, 모니터가 재현 가능한 색 범위 [4] CMYK에서는 반대로 두 가지 색상을 섞었을때 검은색이 되는 해당 두 색상이 보색이다. [5] 물리에서나 수학에서나 반대 방향은 보통 같은 종류의 방향으로 친다. 즉, (+)가 있고 (-)가 있으며 서로가 서로의 음수처럼 행동하면 (즉, 반대 방향이면), 그냥 이 둘을 같은 종류로 치는 것이다. 이렇게 표현하는 편이 수학적 전개 상 훨씬 좋기 때문이다. (벡터에서 벡터에다 스칼라를 곱하는 것을 상기하자. 이때 스칼라는 '음수'이어도 상관 없다.) [6] 바로 전 주석을 보면 짐작할 수 있겠지만, 각 종류 별로 음양이 따로 있다. 예컨대 "빨간색" 전하로 부르는 것들의 "음의 전하"에 해당하는 "반-빨강" 전하가 있다는 이야기이다. [7] 한편, 글루온은 [math(\textrm{SU}(3))]의 수반 표현(adjoint representation)에 해당하는 총 8개의 '전하'를 가진다고 볼 수 있다. 다만 이걸 적절히 표현하면 빨강+반-초록, 초록+반-파랑 같은 조합으로 이해할 수 있다. (총 9가지 조합이 있을 것으로 보이나, 그 중 빨강+반-빨강, 초록+반-초록, 파랑+반-파랑의 특정 결합이 [math(\textrm{SU}(3))]에 나타나지 않기 때문에 하나가 빠져 8가지 글루온이 있다고 볼 수 있다.) [8] IBM MDA 허큘리스 그래픽 카드가 단색, 정확히는 2색만을 표현할 수 있다는 말이 있으나, 틀린 말이며 4색까지 표현할 수 있다. 이는 MDA와 허큘리스가 화면을 표시할 때 비디오, 강도 등 2핀을 사용하기 때문이다. 비디오 핀 신호는 색의 ON/OFF를 담당했으며 강도 핀 신호는 색조를 담당했다. 이러한 조합을 통해 이론적으로 검은색, 어두운 회색, 밝은 회색, 흰색을 표현할 수 있었다. 그러나 일반적으로 호환 모니터는 3색의 표현(검은색, 어두운 회색, 흰색)까지만 지원했으며 4색을 모두 사용하는 소프트웨어도 당대에는 극히 드물었다. [9] 다만 이렇게 되면 색이 나타나는 픽셀 전체의 정보량을 맞추기 위해 서브픽셀을 쓴다는 개념으로 이해해야 한다. [10] 청색의 표현 수가 적은 것은 인간의 눈에 있는 청색 원뿔세포가 가장 적고, 적색/녹색 원뿔세포가 단파장을 흡수하지 못하기 때문에 청색에 상대적으로 둔감하기 때문이다. 아날로그 컬러 TV 등에 사용되는 영상용 색상공간에서도 이런 요소가 고려되었으므로, 디지털에서도 큰 차이 없이 적용되었다. [11] 적색/청색 원뿔세포가 같이 받아들일 수 있는데다, 밀도가 상당히 높기 때문에 적색보다도 더 민감하다. [12] AVX의 vpaddb, vpaddw, vpaddd, vpaddq 가 그 예이다. 256비트의 벡터에서 각각 8비트, 16비트, 32비트, 64비트 단위로 연산한다. [13] R 11비트, G 11비트, B 10비트로 할당하는 방법도 있긴 하다.