[Vision] Color Transform

JeongMin·2023년 10월 18일
0

ComputerVision

목록 보기
2/9

Color Physics

  • 흰색은 모든 볼 수있는 주파수로 구성됨(400-700)
  • 사람이 볼 수 있는 빛은 400nm(blue) ~ 700nm(red)
  • 자외선과 x선은 매우 짧은 파장을 가짐
  • 적외선과 전파는 긴 파장을 가짐

색공간

색공간에는 다양한 종류가 있다.

  • RGB
  • HVS(HIS)
  • GRAY
  • BINARY
  • NRG

NRG(Normalized Red and Green)

밝기 변화에 둔감하게 하기 위해 사용.

r=RR+G+Bg=GR+G+Bb=BR+G+Br=\frac{R}{R+G+B} \\ \\ g=\frac{G}{R+G+B} \\ b=\frac{B}{R+G+B}

b=1(r+g)b = 1-(r+g) 이기 때문에 저장해놓을 필요없다.

HSV

HSV는 다음을 뜻한다.

  • Hue: 색의 종류 (각도)
  • Saturation: 색의 진하기 (반경)
  • Value: 밝기 (높이)

HSV 색공간은 컴퓨터 그래픽스와 컴퓨터비전에서 사용됨.

S=1 이면 온전한 색, 0이면 회색

HSV - RGB

HSV는 2차원의 색성분(HS)와 1차원의 밝기(V)를 가짐.

RGB에서 HSV의 변환 수식은 다음과 같다.

H={60×GBmax(R,G,B)min(R,G,B)+0,where max(R,G,B)=R60×BGmax(R,G,B)min(R,G,B)+120,where max(R,G,B)=G60×RGmax(R,G,B)min(R,G,B)+240,where max(R,G,B)=BH=\left\{\begin{matrix} 60\times\frac{G-B}{max(R,G,B)-min(R,G,B)}+0, where\ max(R,G,B)=R \\ 60\times\frac{B-G}{max(R,G,B)-min(R,G,B)}+120, where\ max(R,G,B)=G \\ 60\times\frac{R-G}{max(R,G,B)-min(R,G,B)}+240, where\ max(R,G,B)=B \\ \end{matrix}\right.
S=max(R,G,B)min(R,G,B)max(R,G,B)S=\frac{max(R,G,B)-min(R,G,B)}{max(R,G,B)}
V=max(R,G,B)V = max(R,G,B)

HSV에서 RGB의 변환 수식은 다음과 같다.

H[0,360],S[0,1],V[0,1]H\in[0,360], S\in[0,1],V[0,1]

H=H60H’=\frac{H}{60}

C=V×SC=V\times S

X=C×(1Hmod21)X=C\times (1-|H’mod2 - 1|)

(R,G,B)={(C,X,0)  if 0H<1(X,C,0)  if 1H<2(0,C,X)  if 2H<3(0,X,C)  if 3H<4(X,0,C)  if 4H<5(X,0,X)  if 5H<6(R',G',B')=\left\{\begin{matrix} (C,X,0)\ \ if\ 0\leq H' < 1\\ (X,C,0)\ \ if\ 1\leq H' < 2\\ (0,C,X)\ \ if\ 2\leq H' < 3\\ (0,X,C)\ \ if\ 3\leq H' < 4\\ (X,0,C)\ \ if\ 4\leq H' < 5\\ (X,0,X)\ \ if\ 5\leq H' < 6\\ \end{matrix}\right.
(R,G,B)=(R+m,G+m,B+m) where m=VC(R, G,B) = (R'+m,G'+m,B'+m)\ where\ m=V-C

Sepia Tone

세피아(Sepia)는 어두운 갈색이다.

전통적으로 오징어의 먹물에서 이 색깔을 추출하였으며, 세피아라는 이름 역시 오징어를 뜻하는 고대 그리스어 σηπα에서 유래되었다. - [wiki]

RGB 이미지로 Sepia Tone 이미지 만들기

  • RGB를 HSV로 변환
  • H와 S를 고정값으로 바꿔줌
  • HSV를 합치고 RGB로 변환
profile
영상처리와 AI에 관심이 있는 학생입니다.

0개의 댓글

관련 채용 정보