- 143 Views
- Uploaded on
- Presentation posted in: General

5. Homogeneous Point Processing

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

- 3가지 image processing operations
* in A simplified approach to image processing, by Randy Crane.

- Point processing
- Modifies a pixel’s value based on that pixel’s original value or position
- Chapter 4

- Area processing
- Modifies a pixel’s value based on its original value and the values of neighboring pixels
- Chapters 8-11

- Geometric processing
- Changes the position or arrangement of the pixels
- Chapters 14

- Frame processing
- Generates pixle values based on operations on two or more images

- Point processing

- Image quality (qualitative) 용어들
- washed out (smeared, blurred)
- brighter
- Contrast
- ….

- Processing 목적
- Noise suppression
- Enhancement 등

- Histogram
- Color image matching & retrieval 응용
- Pixel value reduction 등의 많은 응용
- PMF(Probability Mass Function)
- 식 4.1 ~ 4.3

- 예) 0~255사이 값을 갖는 64개 pixel
- 0값 32개, 128값 16개, 255값 16개 pixels
- Histogram in Figure 4-1
ValuePMF

0 32/64

128 16/64

255 16/64

- Histogram
- CMF (Cumulative Mass Function)
- 식 4.6

- 예)
- Histogram in Figure 4-2
ValuePMFCMF

0 32/64 0.5

128 16/64 0.75

255 16/64 1.0

- Histogram in Figure 4-2

- CMF (Cumulative Mass Function)
- Histogram modification
- CMF를 lookup table로 사용하여 PMF 변경
- Image enhancement 응용

- Histogram class
- In gui package
- RGB (24 bits/pixel) image
- 총 224 16 million color values
- PMF is too sparse
- 그래서 RGB 각각에 대한 histogram (each with 256 equal bins)
- 예) figure 4.3
// histogram computation

histArray = new double[256];

for(int i=0; i<width; i++)

for(int j=0; j<height; j++)

histArray[plane[i][j] & 0xFF]++;

- Point operation
- vij’ = fij(vij)

- Homogeneous point operation
- vij’ = f(vij)
- Independent of pixel location

- Linear map
- f(vij) = vij
- No change
- Figure 4-4

- Negative image
- f(vij) = 255 – vij
- Figure 4-5

- Power function
- f(vij) = 255 * ( vij/255)pow
- For pow<1.0, brightening but loss of contrast
- 예) pow=0.9
- Figure 4-6
- 7번 적용 후 bright but washed out

- 예) pow=0.9
- For pow>1.0, darkening
- 예) pow=1.5
- Figure 4-7 & 4-8
- Darkened
- Histogram shifted to the left and narrowed: Figure 4-9

- 예) pow=1.5

- Linear transform
- Linear brightness and contrast adjustment
- vij’ = c*vij + b
- c=contrast
- b=brightness

- 예) c=2, b=-90
- Figure 4-10
- 범위 넘는 값은 0과 255로 clipping

- Display의 dynamic range에 따른 조정
- D = Dmax – Dmin
- Dmax=maximum value that can be displayed
- Dmin=minimum value that can be displayed

- V = Vmax – Vmin
- Vmax=maximum value in the image
- Vmin=minimum value in the image

- Linear transform 수식
- vij’ = c*vij + b
- c= D / V
- b=(Dmin*Vmax – Dmax*Vmin) / V

- vij’ = c*vij + b

- D = Dmax – Dmin

- Display의 dynamic range에 따른 조정
- 예
- Dmin=0, Dmax=255
- Vmin=10, Vmax=90
- vij’ = (255/80)*vij – 2550/80
= 3.19*vij – 31.9

- Figure 4-11
- Applying결과: Figure 4-13
- Histogram being spread out
- Contrast enhancement

- lut (lookup table) 사용한 구현
- public short linearMap(short v, double c, double c)
- public void linearTransform(double c, double br)

- 예

- Histogram stretch
- Histogram shrink
- Histogram slide
- Histogram equalization
- …..

shrunk

original

stretched

shifted

- Clustering of pixel values low-contrast images, so image details 잘 보이지 않음
- Histogram equalization
- Histogram modification에서 가장 보편적인 기법
- Image contrast 개선 목적

- UNAHE
- Create a uniform PMF from an image that has a non-uniform PMF
- Using a scaled version of the CMF as a lookup table
- CMF given by
Pv(a) = i=0,a pv(i) =p(V<=i)

a [0..K-1]

- The goal
- Finding a function vij’ = f(vij) having a uniform PMF

- UNAHE algorithm
- vij’ = f(vij) = V*Pv(vij)
- Pv(vij) : CMF
- V = Vmax - Vmin
- Vmax=maximum value in the image
- Vmin=minimum value in the image

- UNAHE 적용 예
- 3 bits/pixel (Vmax=7, Vmin=0, V=7)
- 4*4 image
3324

3566

2356

2366

- vij PMF Pv(vij)
0 0 0

1 0 0

2 3/16 3/16

3 5/16 8/16

4 1/16 9/16

5 2/16 11/16

6 5/16 16/16

7 0 16/16

- UNAHE 적용 예
- f(vij) = 7*Pv(vij)
f(0) = 7*0 = 0 0

f(1) = 7*0 = 0 0

f(2) = 7*(3/16) = 1.31 1

f(3) = 7*(8/16) = 3.5 4

f(4) = 7*(9/16) = 3.93 4

f(5) = 7*(11/16) = 4.81 5

f(6) = 7*(16/16) = 7 7

f(7) = 7*(16/16) = 7 7

- 영상에 적용
4414

4577

1457

1477

- f(vij) = 7*Pv(vij)

- Effect of UNAHE
- Figure 4.14: original & UNAHE 적용
- Figure 4.15: histograms of original and UNAHE
- Figure 4.16: UNAHE and linear transform
- UNAHE 적용 영상이 much higher contrast
- Higher quality ??

- Low-contrast detail enhancement, but increase the contrast of noise

- Skip !!

- 지역별로 다른 특성을 갖는 영상
- 특히, document 영상

- AUHE (Adaptive Uniform Histogram Equalization)
- 영상을 여러 개의 부 영상으로 분할
- 각각 부 영상에 대해 uniform histogram equalization 적용
- Fine-grained vs. coarse-grained subdivision

- 적용 예
- Figure 4.22 & 4.23

- Artifact 발생
- Figure 4.24
- How to solve this problem ??