πŸ’»/λ©€ν‹°λ―Έλ””μ–΄

[μ˜μƒμ²˜λ¦¬] 색

ruhz 2020. 12. 10. 06:37

0. μƒ‰μ˜ 물리학

λΉ›(Light)

  - 주파수의 λ²”μœ„λ₯Ό 가진 μ „μžκΈ°νŒŒ
  - κ·Έ 쀑 400-700nm 의 파μž₯을 가진 λΉ›λ§Œ μΈκ°„μ˜ 눈이 해석할 수 있음(κ°€μ‹œκ΄‘μ„ )
  - UV(μžμ™Έμ„ )γ…‘400nm(νŒŒλž‘)γ…‘550nm(초둝)γ…‘700nm(λΉ¨κ°•)γ…‘IR(적외선)
  - μ΅œκ·Όμ—λŠ” μžμ™Έμ„ κ³Ό 적외선도 μ˜λ£Œμ΄λ―Έμ§€, 원격감지 λ“±μ˜ μ˜μ—­μ—μ„œ μ€‘μš”ν•΄μ§€κ³  있음
  - μ΄λ ‡κ²Œ λ‹€μ–‘ν•œ 힘과 주파수λ₯Ό 가진 μ „μžκΈ°νŒŒκ°€ 우리의 눈(ν˜Ήμ€ κ΄‘κ²€μΆœκΈ°)에 λ“€μ–΄μ˜΄

 

μ‘°λͺ…(Illumination)

  - μš°λ¦¬λŠ” 광원이 있기 λ•Œλ¬Έμ— λ³Ό 수 있음. 
  - 사싀상 λͺ¨λ“  μ‘°λͺ…은 파μž₯의 λ²”μœ„κ°€ μžˆλŠ” λΉ›μœΌλ‘œ ꡬ성
  - λ ˆμ΄μ ΈλŠ” ν•˜λ‚˜μ˜ 쒁은 λ²”μœ„μ˜ λŒ€μ—­ν­μ„ 가진 광원
  - 각 μ‘°λͺ…은 파μž₯에 λ”°λ₯Έ μƒλŒ€μ  μ „μžκΈ° μ„ΈκΈ° κ³‘μ„ μœΌλ‘œ ν‘œν˜„λ  수 있음
  - 이 ν‘œμ€€ν™” 방법은 μŠ€νŽ™νŠΈλŸΌ 좜λ ₯ λΆ„ν¬ν•¨μˆ˜(spectral power distribution) = I(λ)

 

λŒ€μƒ(Object)

  - μ‘°λͺ…μ—μ„œ μ „μžκΈ°νŒŒκ°€ λ°©μΆœλ˜μ–΄ λŒ€μƒμ— λ‹ΏμœΌλ©΄, λΆ€λΆ„μ μœΌλ‘œλŠ” 흑수되고, λΆ€λΆ„μ μœΌλ‘œλŠ” λ°˜μ‚¬λ¨
  - λ°˜μ‚¬λ˜λŠ” λΉ„μœ¨μ€ μ‘°λͺ…κ³ΌλŠ” λ¬΄κ΄€ν•˜λ©°, λŒ€μƒμ˜ 파μž₯에 따라 닀름
  - μŠ€νŽ™νŠΈλŸΌ λ°˜μ‚¬ ν•¨μˆ˜(R(λ)), μŠ€νŽ™νŠΈλŸΌ μ „μ†‘ν•¨μˆ˜(T(λ))

 

 

 

1. 인간 μ‹œκ°

색 자극

  - μΈκ°„μ—κ²Œ 색 자극이 가해지면, λŒ€μƒμ˜ 색을 인식
  - λ”°λΌμ„œ 색은 λŒ€μƒμ˜ κ³ μœ ν•œ 속성이 μ•„λ‹˜(μ‘°λͺ…에 따라 λ‹¬λΌμ§ˆ 수 있음)
  - S(λ) = I(λ)R(λ) 

 

인간 μ‹œκ° μ‹œμŠ€ν…œ

  - μš°λ¦¬λŠ” 전체 색 자극 곑선(S(λ)) 이 ν•„μš”ν•˜μ§€λŠ” μ•ŠμŒ
  - 3κ°€μ§€λ‘œ μš”μ•½ν•΄μ„œ 정보λ₯Ό λ°›μ•„λ“€μž„(RGB)
  - μ •λ³΄μ†μ‹€λ‘œ μΈν•œ λͺ¨ν˜Έν•¨μ΄ 생길 μˆ˜λ„ 있음
  - 인간 μ‹œκ° μ‹œμŠ€ν…œ(HVS)의 색 μž¬ν˜„μ—λŠ” μΆ©λΆ„

 

κ΄‘μˆ˜μš©μ²΄(Photoreceptors)

  - 우리 λˆˆμ€ κ΄‘μˆ˜μš©μ²΄λΌλŠ” μ„Όμ„œκ°€ 있고, 두가지 νƒ€μž…μœΌλ‘œ λ‚˜λ‰¨(Cones, Rods)
    - 좔상체(Cones) : 6-7m개, 쀑심와, 색 ꡬ별, 밝을 λ•Œ
    - 간상체(Rods) : 75-150m개, 망막 전체, 전체적인 μž₯λ©΄, μ–΄λ‘μšΈ λ•Œ
  - μ—¬κΈ°μ„œ 좔상체가 색 ꡬ뢄을 λ‹΄λ‹Ή
  - μΆ”μƒμ²΄λŠ” μž₯파μž₯(L-cones), μ€‘νŒŒμž₯(M-cones), λ‹¨νŒŒμž₯(S-cones)둜 λ‚˜λ‰¨
  - μž₯파μž₯κ³Ό μ€‘νŒŒμž₯은 λΉ„μŠ·ν•œ 파μž₯ 민감도λ₯Ό 가지고 있음
  - λ‹¨νŒŒμž₯은 혼자 λ”°λ‘œ λ…ΈλŠ” κ²½ν–₯(망막에 많이 μ—†κ³ , λ„“κ²Œ λΆ„ν¬ν•΄μžˆμŒ)

 

μŠ€νŽ™νŠΈλŸΌ 민감도

  - μž₯파μž₯, μ€‘νŒŒμž₯, λ‹¨νŒŒμž₯에 λŒ€ν•œ λ°˜μ‘ν•¨μˆ˜λ₯Ό 각각 x(λ), y(λ), z(λ)라 ν•  λ•Œ,
  - 민감도(x(λ))와 μƒ‰μžκ·Ή(S(λ))을 κ³±ν•œ 값을 λͺ¨λ‘ λ”ν•˜λ©΄, ν•΄λ‹Ή 파μž₯에 λŒ€ν•΄ 인간이 λ°›μ•„λ“€μ΄λŠ” μžκ·Ήμ„ 계산할 수 있음
  - X = integral(400, 700) [ x(λ)*I(λ)*R(λ) ] dλ,  Y = ...
  - μ΄λ ‡κ²Œ (X, Y, Z)λ₯Ό 가지고 λ‡Œκ°€ νŒλ‹¨ν•¨

 

색 정보

  - (X, Y, Z) >> (R, G, B)둜 λ°›μ•„λ“€μž„
  - X, Y, ZλŠ” 각각 μž₯파μž₯(L), μ€‘νŒŒμž₯(M), λ‹¨νŒŒμž₯(S)에 λŒ€ν•œ μžκ·Ήκ°’μ΄κ³ , L, M, S의 μ΅œκ³ μ μ—μ„œμ˜ 색이 R, G, B와 λΉ„μŠ·
  - 이 RGB둜 λͺ¨λ“  색을 κ΅¬ν˜„ν•  수 있고, μ£Όμš”μƒ‰μ΄λΌκ³  뢈림
  - RGB 말고도 색을 ν‘œν˜„ν•˜λŠ” 방법
    - νœ˜λ„(luminance) : λ‹¨μœ„ 면적당 ν†΅κ³Όν•˜λŠ” λΉ›μ˜ μ–‘
    - 색차chrominance) : 색
    - 색상(hue) : μƒ‰μ˜ μˆœμˆ˜μ„±

 

 

 

2. 비색법(Colorimetry)

색 ν˜Όν•©

  - μ£Όμš”μƒ‰μ„ μ„žμ–΄ 색을 ν‘œν˜„, λ§Žμ€ λ””μŠ€ν”Œλ ˆμ΄(TV/λͺ¨λ‹ˆν„°)κ°€ RGB 광원을 μ‚¬μš©ν•΄ 색을 ν‘œν˜„
  - λΉ¨+초=λ…Έλž‘(Yellow), 초+파=청둝(Cyan), λΉ¨+파=자주(Magenta)
  - μƒ‰μƒμ›μ˜ λ°˜λŒ€νŽΈμ— μžˆλŠ” 관계λ₯Ό 보색 관계라고 함
  - λ°±μƒ‰κ΄‘μ—μ„œ RGB λΉΌλŠ” Subtractive Color System도 있음(ex. WHITE - GREEN = MAGENTA)
  -  색도도(Chromaticity Diagram) : 색 ν˜Όν•©μ„ 보여쀄 λ•Œ μœ μš©ν•˜κ²Œ μ‚¬μš©

 

 

CIE 1931 색 곡간과 μŠ€νŽ™νŠΈλŸΌμ˜ μˆœν™˜

1931λ…„ ꡭ제쑰λͺ…μœ„μ›νšŒ(CIE)κ°€ μ œμ •ν•œ CIE 1931 XYZ 색 곡간(λ˜λŠ” CIE 1931 색 곡간)은 인간...

blog.naver.com

  - 3개 μ£Όμš”μƒ‰μ„ 적절히 μ„žμœΌλ©΄ μ–΄λ–€ 색이든 λͺ¨λ‘ ν‘œν˜„ κ°€λŠ₯
  - μ‘°λͺ…μ˜ 색은 RGB둜 λͺ¨λ‘ ν‘œν˜„ κ°€λŠ₯
  - λŒ€μƒμ˜ 색은 CMY둜 λͺ¨λ‘ ν‘œν˜„ κ°€λŠ₯ (Cyan Magenta Yellow)

 

 

 

3. 색 곡간(Color Space)

색상 λͺ¨λΈ

  - μ„Έκ°œμ˜ μ£Όμš”μƒ‰(RGB)μ΄λ‚˜ 제2차색(secondary colors, CMY)을 νŠΉμ •ν•œ λͺ¨λΈ
  - λͺ…도와 색차λ₯Ό νŠΉμ •ν•œ λͺ¨λΈ(HSB/HSI, YIQ, YCbCr)
  - 색상 λ‹Ή 8bit / ν”½μ…€ λ‹Ή 24bit
  - 2의 8μ œκ³±μ„ 3제곱 ν•œ 것 = 16m개의 색상 수
  - 이미지 ν”½μ…€ μˆ˜μ— 따라 이미지 μš©λŸ‰λ„ 계산 κ°€λŠ₯

 

RGB 곡간

  - Red, Green, Black
  - RμΆ•, GμΆ•, B좕을 두고 0~255 λ²”μœ„μ—μ„œ μƒκΈ°λŠ” μ •μœ‘λ©΄μ²΄ 곡간
  - 원점은 백색

 

CMY 곡간

  - Cyan, Magenta, Yellow
  - CMYλŠ” RGB의 보색
  - 프린터에 자주 μ‚¬μš©(검정이 κ°€μž₯ 많이 μ‚¬μš©λ˜λ―€λ‘œ, blacK을 μΆ”κ°€ν•΄ CMYK)

 

HSI(HSB) 곡간

  - Hue, Saturation, Intensity
  - 색상(Hue) : κ΄€μ°°μžκ°€ μΈμ‹ν•˜λŠ” 지배적인 색상. 지배적인 파μž₯κ³Ό κ΄€λ ¨λœ 속성.
  - 채도(Saturation) : 아무것도 μ„žμ§€ μ•Šμ•„ 원색에 κ°€κΉŒμšΈ 수둝 λ†’μŒ, μƒλŒ€μ μΈ μˆœμˆ˜μ„±
  - λͺ…도(Intensity/Brightness) : λΉ›μ˜ μ„ΈκΈ°
  - λͺ¨λ“  색을 ν‘œν˜„ν•  수 μžˆλ‹€λ©΄, RGB 색상과 μΌλŒ€μΌ λŒ€μ‘μ΄ λ˜μ–΄μ•Ό 함

 

YUV 곡간

  - Y(Luminance, νœ˜λ„), U(, V(색차 μ‹ ν˜Έ)
  - PALμ—μ„œ μ‚¬μš©ν•˜λŠ” 색 곡간
  - μƒ‰μ°¨μ‹ ν˜Έ : 보색 μ‹œμŠ€ν…œμ—μ„œλŠ” λ‡Œκ°€ 색을 (밝기, λΉ¨κ°•-초둝, λ…Έλž‘-νŒŒλž‘)으둜 μΈμ§€ν•œλ‹€κ³  생각(ex. 적둝색맹)
  - λͺ¨λ“  색을 ν‘œν˜„ν•  수 μžˆλ‹€λ©΄, RGB 색상과 μΌλŒ€μΌ λŒ€μ‘μ΄ λ˜μ–΄μ•Ό 함
  - YλŠ” RGBλ₯Ό 적절히 더해 ꡬ할 수 있음, 이 쀑 R, G, B 색상별 κ°€μ€‘μΉ˜λŠ” λͺ¨λ‘ 닀름(ex. 우리 λˆˆμ€ μ΄ˆλ‘μ— κ°€μž₯ 잘 λ°˜μ‘)
  - U, VλŠ” 색상과 μ±„λ„λ‘œ 해석될 수 있음

 

YUV 컬러 μ‹œμŠ€ν…œ

YUVλŠ” 일반적으둜 컬러 이미지 νŒŒμ΄ν”„ 라인의 μΌλΆ€λ‘œ μ‚¬μš©λ˜λŠ” 컬러 인코딩 μ‹œμŠ€ν…œμž…λ‹ˆλ‹€. μ΄λŠ” μΈκ°„μ˜ 인식을 κ³ λ €ν•œ 컬러 이미지 λ˜λŠ” λΉ„λ””μ˜€λ₯Ό μΈμ½”λ”©ν•˜μ—¬ 크둜 λ―Έ λ„ŒμŠ€ ꡬ성 μš”μ†Œμ˜ λŒ€μ—­ν­

www.hisour.com

 

YIQ 곡간

  - Y(Luminance), Inphase, Quadrature
  - NTSC TVμ—μ„œ μ‚¬μš©ν•˜λŠ” 색 곡간
  - 더 μ»΄νŒ©νŠΈν•˜κ²Œ 색을 ν‘œν˜„ν•  수 있음

 

컬러 ν”„λ‘œμ„Έμ‹±(Color Processing)

  - μ–΄λ–€ 색 곡간/ 색 λͺ¨λΈμ„ μ‚¬μš©ν•΄μ•Όν• κΉŒ, 3개의(ex.RGB) 평면을 λ”°λ‘œ μ²˜λ¦¬ν•΄μ•Όν• κΉŒ?
  - λ””μŠ€ν”Œλ ˆμ΄λ‚˜ ν”„λ¦°νŒ… λ“± ν’λΆ€ν•œ μ»¬λŸ¬κ°€ μ€‘μš”ν•  땐 RGB, CMY
  - 색상을 λΆ„μ„μ μœΌλ‘œ μžμ„Έν•˜κ²Œ λ‹€λ£° ν•„μš”κ°€ μžˆμ„ 땐 HSI
  - μ „μ†‘μ΄λ‚˜ μ €μž₯이 ν•„μš”ν•  λ•Œ YIQ, YUV, YCbCr

 

YCbCr

YCbCr은 YUV와 기본적으둜 κ°™λ‹€. 디지털 TV에 μ‚¬μš©λ˜λ©° 8bitλ₯Ό 기본으둜 μ‚¬μš©ν•œλ‹€. μ•„λž˜λŠ” μ–΄λ–€ 이미지λ₯Ό YCbCr κ³΅κ°„μœΌλ‘œ λΆ„ν•΄ν•΄μ„œ, νžˆμŠ€ν† κ·Έλž¨ ν‰ν™œν™”λ₯Ό μ§„ν–‰ν•œ 것이닀. μ½”λ“œμ˜ κ²°κ³Όκ°€ λ§Œμ‘±μŠ€λŸ½μ§€ λͺ»ν•œ κ±Έ 보면 λ­”κ°€ 잘λͺ»λœ 뢀뢄이 μžˆλŠ” 것 κ°™λ‹€. κΉƒν—ˆλΈŒλ‘œ μ œμ•ˆμ€ μ–Έμ œλ“ μ§€ ν™˜μ˜!

 

ruhz3/ImgProcessing

Codes of digital image processing. Contribute to ruhz3/ImgProcessing development by creating an account on GitHub.

github.com

YCbCr Histogram Equalization

 

 

 

4. 색 인식

μ„Όμ„œ 기술(Sensor Technology)

  - CCD(Charged-Couple Device) / CMOS(Complementary Metal-Oxide Semiconductor)
  - Secuential Imaging / Color Filter Array