2013-03-10 2 views
1

일부 이미지 처리를하고 있는데 일부 용어로 약간 혼란 스럽습니다. 특히, "비트 깊이"의 의미에 대해 혼란 스럽습니다.이미지 처리 용어 : 비트 심도

비트 맵의 ​​구조에 대해 잘 알고 있습니다. 기본적으로 M x N x channels 행렬입니다. 따라서 RGB 비트 맵은 M x N x 3이고 RGBA (알파 채널이있는 RGB)는 M x N x 4 매트릭스가됩니다.

그러나, 다른 변수 비트 깊이 (또는 색 농도) 인 여기있다. Wikipedia article에 따르면, 비트 심도는 픽셀에 대한 비트 수를 나타냅니다. 그래서는 RGB 비트 맵은 그러나 24

의 비트 깊이를 가질 것, 나는 C++에서 libpng 놀아 있었고, libpng채널 당 으로 비트의 수를 비트 깊이를 정의하는 것 픽셀 단위가 아닌 따라서 RGB 비트 맵은 비트 심도가 8이므로 채널당 1 바이트 (8 비트)를 의미하므로 픽셀 당 24 비트를 의미합니다.

특히 libpng API 함수 png_get_bit_depth은 24 비트 RGB 비트 맵의 ​​경우 8을 반환합니다. Wikipedia 기사에서 용어를 잘못 사용하고 있습니까? 아니면 libpng 여기에 잘못입니까? 아니면 용어 자체가 다소 모호한가요?

+0

몇 년 전에는 16 비트 bpp의 비트 수를 가진 High-Color 그래픽 모드가있었습니다 : 적색 및 청색 채널은 5 비트, 녹색 채널은 6 비트 (인간의 눈은 녹색 색에 더 민감하기 때문에 톤). 채널 비트 깊이가 항상 같지 않을 때 libpng이 어떤 경우에보고했는지 궁금합니다. – stakx

답변

2

픽셀 깊이를 지정하는 것이 훨씬 더 일반적이긴하지만 어느 쪽도 잘못은 아닙니다. 일반적으로 컴포넌트 깊이가 전문가에게만 전달되는 유일한 시간입니다. 구성 요소 깊이를 나타내는 8 비트 및 10 비트 버전이있는 x264도 참조하십시오.