Multimedia Programming 11: Histogram Equalization/ Image Halftoning Departments of Digital Contents Sang Il Park
Histogram Equalization Image Processing 3-1 Histogram Equalization Alexei Efros
Image Histogram Histogram: Counting the number of pixels with the same brightness image histogram http://www.accusoft.com/resourcecenter/tutorials/dip/VQ/lesson1c.htm
Histogram Equalization Modify the image to have a well-distributed histogram
Cumulative Histogram Number of the pixels below the brightness image http://www.accusoft.com/resourcecenter/tutorials/dip/VQ/lesson1c.htm
Cumulative histogram Cumulative Histograms Why is it so important?
Why is it so important? Let’s focus on the first image. output input 255 192 128 64 output input Let’s focus on the first image.
Why is it so important? Using Cumulative histogram as a function. 255 192 128 64 input output output input Using Cumulative histogram as a function.
Histogram Equalization
Coding Practice Make your own code for histogram equalization For each color channel (R, G, B) 1. Compute the histogram 2. Compute the cumulative histogram 3. Set the maximum value as 255 4. Using the cumulative histogram as a mapping function 255 192 128 64
A colorful underwater world! http://www.dive.snoack.de/
Image Processing 3-2 More Filters Alexei Efros
Smart Blurring?
Bilateral filter How to conserve the edges of the image yet smoothing the noises out?
Point Processing 4-1 Image Halftoning
Image Halftoning (이미지 하프토닝) 한정된 색상만으로 그림을 효과적으로 표현하는 것 언제 사용하는 가? 인쇄물 (신문, 잡지, 책), 흑백프린터 예전 흑백 모니터 시절 그림의 개성적인 표현 점묘화 팝아트 Pen-and-Ink Illustration
흑백인쇄물 흑백의 잉크만으로 명암을 표현 1873년 최초의 사진 인쇄물
칼라인쇄물 4색 CMYK(시안, 마젠타, 옐로우, 키(블랙))만으로 표현
점묘화 사람의 눈과 지각의 특성을 이용하여 점들이 모여 색을 이룬다는 데 착안한 그림법 신인상주의 대표적 화가: 조르주피에르 쇠라 (Georges-Pierre Seurat) “퍼레이드” 그림의 일부분 그랑드 자트 섬의 일요일 오후, 1884년-1886년, 시카고 미술관
Pop art Roy Lichtenstein (1923~1997) Andy Warhol (1928~1987)
Halftoning 한정된 색: 흑/백 효과적으로: 원본과 최대한 비슷하게 한정된 색만을 사용하여 원본을 최대한 효과적으로 표현 수업시간에는: 한정된 색: 흑/백 효과적으로: 원본과 최대한 비슷하게
Halftoning 가장 기본적인 세가지 방법: Thresholding (경계값법) Patterning (패턴법) Dithering (디더링법)
Thresholding (경계값법) 각 점마다 밝기를 읽어와 특정값(경계값) 미만/이상으로 나누어 각각 처리 f yes g = 255 no
Thresholding 사용 가능 색이 여러 개라면: yes f no yes no yes no g=0 g=85 g=170
Thresholding 다른 표현법: 각 점마다 그 점의 색과 가장 가까운 색으로 바꾸어줌 g = 0 d1<d2 f f - g1 = d1 f - g2 = d2 g = 255 d2<d1
Thresholding 사용 가능 색이 여러 개라면? 각 점마다 그 점의 색과 가장 가까운 색으로 바꾸어줌 g = g1 min=d1 f - g1 = d1 g = g2 min=d2 f - g2 = d2 f f - g3 = d3 g = g3 min=d3 f - g4 = d4 g = g4 min=d4
Thresholding 장점: 구현이 쉽다 단점: 사용 가능색이 흑/백 만 있으면 원래 그림의 정보를 많이 잃어 버린다
Patterning (패턴법) 밝기에 따른 특정한 무늬를 골라서 대입하는 것 기본 아이디어: 기본 면적에 흑색의 비율이 많으면 어두워 보임 기본 면적에 백색의 비율이 많으면 밝아 보임 밝기 단계에 해당하는 패턴을 정한다
Patterning (패턴법) 5단계 밝기에 대응하는 패턴법: 한 점을 2*2=4개의 점으로 표현하고, 밝기로부터 점의 패턴을 결정한다. f
Patterning (패턴법) 원본 (Size(w,h)) 이미지로부터 같은 크기의 patterning 이미지 얻는 방법: 이미지를 블러링한다 (3*3 mean filter) 한 점씩 건너 띄며 원본으로부터 색을 얻는다 밝기가 가장 비슷한 2*2 패턴을 찾는다 한 점을 표현하는 데 점 4개가 필요 해상도가 절반으로 감소
Patterning (패턴법) 10단계 밝기에 대응하는 패턴법: 한 점을 3*3=9개의 점으로 표현하고, 점의 패턴을 결정한다. f
Patterning (패턴법) 장점: 패턴법의 단점: 적은 수의 색만으로 명암을 표현할 수 있다 점의 분포가 규칙적이다 밝기의 경계면이 뚜렷하다 해상도를 잃어버린다.
? Dithering (디더링법) 점을 불규칙하게 찍되 최대한 원본이미지와 비슷하게 만드는 법 dithering original thresholding patterning
Dithering (디더링법) 기본적으로는 Thresholding과 같다. 단, 점을 찍은 뒤, 점의 색의 차이를 원본 주변에 반영 시켜준다. f - g = d thresholding d f g f f d f f f 원본 출력 원본
Dithering (디더링법) f 위치에 따른 에러 반영 비율: (Floyd-Steinberg 디더링법) 7 d 16 3 5
Pen & Ink Drawing 흑/백 + 곡선으로 그림을 표현 http://webspace.ringling.edu/~anovak/west.htm http://emptyeasel.com/wp-content/uploads/2007/08/huntmemorialnycbymelissab.tubbs.jpg
Pen & Ink Drawing 명암의 표현법 - 해칭 (hatching) 곡선의 밀도는 물체의 명암 을 표현 곡선의 방향은 물체의 모양 을 표현
컴퓨터가 만들어 내는 pen-and-ink 이미지