지식

룩업 테이블 (LUT, lookup table)

OPIM_NukeTip 2014. 4. 12. 17:02





What is a 1D LUT?

처리과정에서 연산 횟수를 줄이기 위해, 미리 연산의 결과를 메모리에 저장 후, 이를 이용하여 신속히 처리하는 행렬이다.





  A = [모서리 값 + (둘러싼 3개의 값)/3]/2

  B = [사이드 값 + (둘러싼 5개의 값)/5]/2

  C = [중간 값 + (둘러싼 8개의 값)/8]/2


 




What is a 3D LUT?

이동의 폭을 줄이고, 연산의 수를 감소시키며, 동시에 세가지 채널을 제어하는 입체 행렬이다.




P1에서 P2로 이동하려면, B를 10 이동하면 쉽게 P2에 도달한다.

이럴 경우에는 단지 B의 이동만으로, 세 채널의 값을 생성할 수 있다.



빠른 이미지 처리 속도를 달성하기 위해서, 정확성을 희생시킨다.

10bit 이미지는 채널 당 1,024 값이다.

즉, 1024(R) x 1024(G) x 1024(B) = 1억가지 색상이다.


일반적으로 3D LUT는 1024 대신 17을 쓴다.

17(R) x 17(G) x 17(B) = 4,913 색상이다.

인간의 눈이 완벽하지 않은 점을 이용하여, 나머지의 색은 보간해서 나타낸다.