1 / 26

Gamma 와 Linear-Color-Space

Gamma 와 Linear-Color-Space. 이민웅 Shader Study http://cafe.naver.com/shader. 뭔가 부드럽다 … 왜 (?). 간지난다 !. sRGB. HP, MS 에서 지정한 표준 컬러 스페이스 , 1996 감마는 2.2 윈도우 sRGB (2.2) 맥 color sync(1.8) HDTV, 모니터 , 프린터 , 인터넷용 블랙으로는 1, 화이트로는 2.4 로 비균일. CIEXYZ 다이어 그램에서 삼각형은 sRGB 의 표현영역

ocean
Download Presentation

Gamma 와 Linear-Color-Space

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Gamma와 Linear-Color-Space 이민웅 Shader Study http://cafe.naver.com/shader

  2. 뭔가 부드럽다… 왜(?) 간지난다!

  3. sRGB • HP, MS에서 지정한 표준 컬러 스페이스, 1996 • 감마는 2.2 • 윈도우 sRGB(2.2) 맥 color sync(1.8) • HDTV, 모니터, 프린터, 인터넷용 • 블랙으로는 1, 화이트로는 2.4로 비균일 CIEXYZ 다이어 그램에서 삼각형은 sRGB의 표현영역 CIEXYZ 모두를 표현할 수 있는 디바이스는 없음 Gamma, Color Space의 이해 이장호 - kasa

  4. 시각의 특성 • 인간의 시각은 베버의 법칙에 따라 밝기에 대해 비선형적으로 반응 • 베버의 법칙 • 감각기에서 자극의 변화를 느끼기 위해서는 처음 자극에 대해 일정 비율 이상으로 자극을 받아야 된다는 법칙 • 예를 들면 • 처음에 약한 자극을 받으면 자극의 변화가 적어도 그 변화를 인지할 수 있다. 하지만 처음에 강한 자극을 받으면 자극의 변화가 커야지 그 변화를 인지할 수 있음 • 즉, 자극 사이의 절대적인 차이가 아닌, 자극 사이의 비율이 중요 ( 인간 시각의 비선형성 때문 )

  5. 선형 부호화 • 밝기를 선형적으로 나눈것 • 0이 검정, 255가 흰색 • 어두분 부분은 25, 26 차이는 사람이 매우 크게 느낌 • ( (26/255 - 25/255)/ (25/255) *100 ) • 밝기 차이 비율 : 4% • 밝은부분은200, 201의 차이는 거의 못 느낌 • ( (201/255 - 200/255)/ (200/255) *100 ) • 밝기 차이 비율 : 0.5% • 빛의 밝기를 선형적으로 나누어 부호화하면 어두운 부분은 사람이 보기에 밝기 변화가 매우 큰 현상이 나타남 • Posterization , contouring(윤곽?), banding(변색?) Posterization : 분해된 사진의 원판을 써서 연속적인 톤[색조]의 사진 등에서 불연속적인 톤[색조]의 복제를 만드는 기법 네이버 백과사전 (포스터라이제이션)

  6. 선형으로 부호화를 하게 되면, 밝은 부분에서는 시각이 지각할 수 없는 쓸모 없는 데이터가 많아지고, 어두운 부분에서는 데이터가 부족해서 화질이 떨어지게 됩니다

  7. 채널 당 8 bit와 같이 한정된 정보양 안에서 선형적으로 빛의 밝기를 기록하면, 사람의 눈이 민감하게 반응하는 '어두운 부분'의 경우 밝기가 변할 때 부드럽게 느껴지지 않고 단절되어 보이는 현상(posterization, contouring, banding)이 발생합니다. 따라서, 주어진 정보양의 한계 안에서 최적의 화질을 보여주기 위해선 비선형적으로 부호화하여 '어두운 부분'의 차이를 세밀하게 기록할 필요가 있다. Rec. 709 transfer function과 같은 비선형 함수를 사용합니다. 비선형적으로 부호화 다음 그래프의 파란색 부분을 보면 입력값(tristimulus value) 0~0.018은 이 함수를 거치면 0~0.081 사이의 값이 됩니다. 즉, 어두운 부분의 경우 세밀하게 나누어 기록합니다. 이에 반해 입력값0.92~1는 이 함수를 거치면 0.96~1 사이의 값이 됩니다. 즉, 밝은 부분은 큰 차이가 나야만 서로 다른 값으로 기록되게 됩니다

  8. 비선형적으로 기록한 데이터를 사람에게 보여주기 위해서는 보여주는 기기(보통 컴퓨터)에서 다음 그림의 녹색 함수와 유사한 함수를 사용하여 원래의 밝기대로 보여주어야 합니다.

  9. Gamma • Gamma encoding, Decoding을 의미 • Gamma = 감마 부호화 = 감마보정 • 감마보정의 잘못된 속설 • 모니터의 출력 특성 때문 • LCD 모니터들은 CRT가 아니기 때문에 감마 특성과 별 관련이 없음 • 감마 보정의 이유 • 주어진 대역폭 내에서 최대한의 화질을 보여주기 위해서 (Gamma encoding) (Gamma correction)

  10. Gamma Correction • gamma가 1.0이 되어야 함을 의미 1보다 작으면 인코딩(compression) 1보다 크면 디코딩(expansion)

  11. Gamma Space • 게임에서 쓰는 모든 텍스쳐는 감마가 적용된 텍스쳐! • 디스플레이 출력 시, 올바른 색상을 표현하기 위해서, 1 / 2.2로 감마를 상쇄 감마보정 CRT감마

  12. Texture는 Gamma Space Pixel Shader는 Linear Space

  13. Gamma / linear space example Linear (contrasted) Gamma (contrasted) Source image (16 b/ch) Kaplanyan-CryEngine3(SIGGRAPH 2010 Advanced RealTime Rendering Course)

  14. 감마 보정 sRGB읽기 sRGB쓰기 0.45 1/2.2 2.2 Uncharted 2: HDR Lighting

  15. 감마 보정

  16. 감마 보정 보정전 보정후

  17. 감마 보정 Diffuse 텍스쳐를 가져올때 감마적용 float3 diffuseCol = pow( tex2D( diffTex, texCoord ), 2.2 );    최종 칼라를 리턴할때 감마보정 return float4( pow(finalCol, 1.0 / 2.2), pixelAlpha);    sampler2D SamplerColor = sampler_state{ …SRGBTexture=FALSE;}; 하드웨어 사용시 Texture : D3DSAMP_SRGBTEXTURE RenderTarget write: D3DRS_SRGBWRITEENABLE technique PostProcess{    pass P0    { …. SRGBWRITEENABLE=FALSE; }} 기본적으로 SRGBTexture는 꺼져있음 하드웨어 감마 보정시는 켜야 함

  18. 연기, GUI, 총 Glow 볼것

  19. Reference 감마 보정(gamma correction), 감마 인코딩(gamma encoding)의 이해(http://shotgunlee.egloos.com/10607756) http://www.w3.org/TR/PNG-GammaAppendix.html http://www.poynton.com/PDFs/Rehabilitation_of_gamma.pdf http://www.poynton.com/notes/Timo/index.html 위키백과 감마 보정 http://ko.wikipedia.org/wiki/%EA%B0%90%EB%A7%88_%EB%B3%B4%EC%A0%95 위키백과베버의 법칙 http://ko.wikipedia.org/wiki/%EB%B2%A0%EB%B2%84%EC%9D%98_%EB%B2%95%EC%B9%99 Gamma, Color Space의 이해 – 이장호 – Kasa GDC2008_PostProcessingInTheOrangeBox Ndc11 올바른 HDR을 이용한 Bloom과 Dof㈜소프트네트 이창희 GPU Gems3 chapter24_the_importance_of_being_linear Hable-Uncharted2(SIGGRAPH 2010 Advanced RealTime Rendering Course) Uncharted2-Hdr-Lighting gamma(감마) – 임정환 Picture Perfect - Gamma Through the Rendering Pipeline Kaplanyan-CryEngine3(SIGGRAPH 2010 Advanced RealTime Rendering Course)

More Related