오늘은 맑음

Dithering, Floyd-Steinberg 본문

Video Processing

Dithering, Floyd-Steinberg

자전거 타는 구구 2021. 5. 19. 19:54
반응형

 Dithering은 quantization error가 최소화 되도록 dither를 추가해서 데이터의 낮은 해상도를 보완하는 것을 의미합니다. 대표적인 예시로 아날로그 데이터를 디지털 데이터로 바꿀 때 quantization을 하게 되는데, 이 때 발생하는 quantization error로 인해 이미지가 변형됩니다. 특히 natural image에서 이러한 현상이 더욱 부각되어 보입니다.

 

Example of analog data to ditigal data quantization 

  혹은 픽셀의 bit-depth를 줄일 때도 동일한 현상이 나타납니다. Bit-depth가 클 수록 많은 색상을 표현할 수 있기 때문인데요, 예를 들면 Bpp가 16-bit에서 8-bit로 줄어들게 되면 전체적으로 표현할 수 있는 색이 줄어들게 되므로 위의 현상과 비슷한 현상이 발생합니다.

https://en.wikipedia.org/wiki/Color_depth

 

Color depth - Wikipedia

From Wikipedia, the free encyclopedia Jump to navigation Jump to search Number of bits used to indicate the color of a single pixel or number of bits used for each color component of a single pixel Color depth or colour depth (see spelling differences), al

en.wikipedia.org

 

 따라서 image processing에서 입력되는 bit-depth 대비 출력되는 bit-depth가 낮아지는 경우 dithering을 통해 발생하는 quantization error를 줄여 화질이 떨어지는 것을 보완해 줍니다.

 

 Dithering의 기본적인 방법은 다음과 같습니다. 

 1. 기존 bit-depth에서의 pixel값과 바뀌는 bit-depth의 pixel값을 빼서 오차를 구한다.

 2. 주변의 pixel에 오차값을 더해준다.

 

 다른 엣지 또는 컨벌루션 필터링과 방법은 비슷합니다. 이번에는 그 중에서 Floyd-Steinberg dithering에 대해서 알아보겠습니다. Floyd-Steinberg dithering은 quantization error를 전파하는 주변 pixel이 4개에 불과합니다. 방법은 아래와 같습니다.

 현재 픽셀을 X라고 한다면, 바로 오른쪽 픽셀과 다음 라인의 아래 세개 픽셀에만 quant error를 전파하고 있습니다. 

 

 Pseudo code 및 결과는 아래의 링크를 참고하시기 바랍니다. 저도 조만간 실습을 통해 결과를 확인해보도록 하겠습니다.

 

https://en.wikipedia.org/wiki/Floyd%E2%80%93Steinberg_dithering

 

Floyd–Steinberg dithering - Wikipedia

Floyd–Steinberg dithering A 1-bit image of the Statue of David, dithered with Floyd–Steinberg algorithm Floyd–Steinberg dithering is an image dithering algorithm first published in 1976 by Robert W. Floyd and Louis Steinberg. It is commonly used by i

en.wikipedia.org

 

R. W. Floyd and L. Steinberg, “An Adaptive Algorithm for Spatial Grayscale,” Proceedings of the Society of Information Display, Vol. 17, No. 2, 1976, pp. 75-77.

반응형

'Video Processing' 카테고리의 다른 글

Baseline JPEG for hardware  (0) 2021.12.30
Video raster scan(raster scan order)  (0) 2021.04.17
YUV/YCbCr file format의 종류  (0) 2021.04.17
DCT  (1) 2017.11.18
Comments