U E D R , A S I H C RSS

PNG File Format/Filter Algorithms

범례

  • bpp : bytes per pixel
  • Raw(x) : 실제 픽셀값
  • Sub(x) : zlib 으로 decompress한 바이트배열의 값
  • Prior(x) : 위쪽 스캔라인의 대응위치의 실제 변환된 RGB 값. x<0이면 0.
  • Prior(x-bpp) : 위쪽 스캔라인의 대응위치 왼쪽의 실제 변환된 RGB 값. x<0이면 0.

Filter type 0 : None

  • 그냥 생짜 정보.

Filter type 1 : Sub


Sub(x) = Raw(x) - Raw(x-bpp) 즉, Raw(x) = Sub(x) + Raw(x-bpp)
 

Filter type 2 : Up

Filter type 3 : Average

Filter type 4 : Paeth


Raw(x) = Paeth(x) + PaethPredictor(Raw(x-bpp), Prior(x), Prior(x-bpp))
 
function PaethPredictor (a,b,c)
begin
   ; a = left, b = above; c = upper left
   p = a + b - c
   pa = abs(p-a)
   pb = abs(p-b)
   pc = abs(p-c)
   if pa <= pb and pa <= pc then a
   else if pb <= pc then b
   else c
 
----
PNGFileFormat
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:23:59
Processing time 0.0345 sec