2016-10-17 1 views
0

rgb2xyz() 함수를 사용할 때 MATLAB이 무엇을하는지 궁금합니다. rgb2xyz 변환 행렬을 사용하여 결과를 다시 생성 할 수 없습니다. 또한 makecform ('srgb2xyz')과 rgb2xyz()를 사용하는 데 차이가 있습니까? 그들은 makecform('srgb2xyz')에 대한matlab의 makecform ('srgb2xyz')과 rgb2xyz()의 차이점

답변

1

기본 흰색 점은 rgb2xyz 기본값 반면 D65에, D50 것으로 보인다 .. 차이의 결과를 생산하고 있습니다. makecform에 대한 설명서 대신 rgb2xyz보다 최근의를 사용하여 제안

>> applycform([.2 .3 .4],makecform('srgb2xyz','AdaptedWhitePoint',whitepoint('D65'))) 

ans = 

0.0638 0.0690 0.1356 

>> rgb2xyz([.2 .3 .4]) 

ans = 

0.0638 0.0690 0.1356 

>> applycform([.2 .3 .4],makecform('srgb2xyz')) 

ans = 

0.0617 0.0679 0.1024 

>> rgb2xyz([.2 .3 .4],'WhitePoint','D50') 

ans = 

0.0616 0.0679 0.1025 

참고. 행렬을 사용하여 결과를 재현하는 것에 대한 귀하의 의견은 일반적으로 행렬이 선형에서 파생/적용된다는 점에 유의하십시오. 데이터 결과를 재현하려면 srgb 감마 보정을 모델링해야합니다.

+0

설명해 주셔서 감사합니다. 도움이 !!! –

+0

그러나 D65 또는 D50을 선택하는 데 어떤 선호가 있습니까 ?? 나는 세분화 작업을하고 있는데 어떻게 든 'rgb2xyz'명령을 사용하면 훨씬 좋은 결과를 얻을 수 있습니다 .. –

+0

입력 이미지가 다른 색상 공간으로 인코딩 된 것을 알지 못한다면 D65가 좋은 추측입니다. 웹상의 대부분의 이미지는 sRGB 디스플레이를 가정하여 인코딩되며 sRGB는 가장 일반적인 모니터에 대한 합리적인 설명입니다. sRGB는 흰색 점을 D65로 정의합니다. 그런데 내 대답을 찾으면 유용하다고 표시해주세요. –