1 / 23

Image (and Video) Coding and Processing Lecture 5: Point Operations

Image (and Video) Coding and Processing Lecture 5: Point Operations. Wade Trappe. Lecture Overview. Today’s lecture will focus on: Point-Operations: These are operations that basically do not involve any explicit spatial memory Examples: Contrast stretching Noise Clipping

livana
Download Presentation

Image (and Video) Coding and Processing Lecture 5: Point Operations

An Image/Link below is provided (as is) to download presentation 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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Image (and Video) Coding and ProcessingLecture 5: Point Operations Wade Trappe

  2. Lecture Overview • Today’s lecture will focus on: • Point-Operations: These are operations that basically do not involve any explicit spatial memory • Examples: • Contrast stretching • Noise Clipping • Histogram Equalization • Note: Most of this talk is borrowed from a lecture by my colleague Min Wu at UMD

  3. v output gray level input gray level u Point Operations / Intensity Transform • Basic idea • “Zero memory” operation • each output only depend on the input intensity at the point • Map a given gray or color level uto a new level v, i.e.v = f ( u ) • Doesn’t bring in new info. • But can improve visual appearance or make features easier to detect • Example-1: Color coordinate transformations • RGB of each pixel  luminance + chrominance components  etc. • Example-2: Scalar quantization • quantize pixel luminance/color with fewer bits

  4. L’ L’ = a U U U ~ logL ~ L1/ L Gamma Characteristics & Gamma Correction • Non-linearity in CRT display • Voltage U vs. Displayed luminance L’ • L’ ~ U  where  = 2.0 ~ 2.5 • Use preprocessing to compensate -distortion • U ~ L 1/  • log(L) gives similar compensation curve to -correction • good for many practical applications • Camera may have L1/c capturing distortion with c = 1.0-1.7 • Power-law transformations are also useful for general purpose contrast manipulation

  5. Typical Types of Gray-level Transformation Figure is from slides at Gonzalez/ Woods DIP book website (Chapter 3)

  6. Example: Negative Transformation Figure is from slides at Gonzalez/ Woods DIP book website (Chapter 3)

  7. Example: Log Transformation Figure is from slides at Gonzalez/ Woods DIP book website (Chapter 3)

  8. Example: Effects of Different Gammas L0 ( “vectors” sample image from Matlab ) L01/2.2 L02.2

  9. Luminance Histogram • Represents the relative frequency of occurrenceof the various gray levels in the image • For each gray level, count the # of pixels having that level • Can group nearby levels to form a big bin & count #pixels in it ( From Matlab Image Toolbox Guide Fig.10-4 )

  10. Luminance Histogram (cont’d) • Interpretation • Treat pixel values as i.i.d random variables • Histogram is an estimate of the probability distribution of the r.v. • “Unbalanced” histogram doesn’t fully utilize the dynamic range • Low contrast image ~ histogram concentrating in a narrow luminance range • Under-exposed image ~ histogram concentrating on the dark side • Over-exposed image ~ histogram concentrating on the bright side • Balanced histogram gives more pleasant look and reveals rich content

  11. Example: Balanced and Unbalanced Histograms Figure is from slides at Gonzalez/ Woods DIP book website (Chapter 3)

  12. v  output gray level   a b o input gray level u Contrast Stretching for Low-Contrast Images • Stretch the over-concentrated graylevels in histogram via a nonlinear mapping • Piece-wise linear stretching function • Assign slopes of the stretching region to be greater than 1

  13. Contrast Stretching: Example original stretched

  14. v output gray level  a b o input gray level u v output gray level T o input gray level u Clipping & Thresholding • Clipping • Special case of contrast stretching with  =  = 0 • Useful for noise reduction when interested signal mostly lie in range [a,b] • Thresholding • Special case of clipping with a = b = T • Useful for binarization of scanned binary images • documents, signatures, fingerprints

  15. ( From Matlab Image Toolbox Guide Fig.10-10 & 10-11 ) Examples of Histogram Equalization

  16. Equalization Example (cont’d) original equalized

  17. Histogram Equalization • Goal: Map the luminance of each pixel to a new value such that the output image has approximately uniform distribution of gray levels • To find what mapping to use: first model pixels as i.i.d. r.v. • How to generate r.v. with desired distribution?  Match c.d.f • Want to transform one r.v. with certain p.d.f. to a new r.v. with uniform p.d.f. • For r.v. U with continuous p.d.f. over [0,1], construct a new r.v. V by a monotonically increasing mapping v(u) such that • Can show V is uniformly distributed over [0,1]  FV(v) = v • FV(v) = P(V v) = P( FU(u) v) = P( U  F-1U(v) ) = FU( F-1U(v) ) = v • For u in discrete prob. distribution, the output v will be approximately uniform

  18. P(V<=v) P(U<=u) 1 1 Fu0 Fu0   c.d.f c.d.f   u0 v0 o o gray level v 255 gray level u 255 How to Do Histogram Equalization? Approach: map input luminance u to the corresponding v • v will be approximately uniform for u with discrete prob. distribution • b/c all pixels in one bin are mapped to a new bin (no splitting)

  19. u v v’ Uniform quantization pU(xi) v [0,1] • Map discrete v [0,1] to v’ {0,…,L-1} • vmin is the smallest positive value of v • vmin  0 1  L-1 Histogram Equalization Algorithm

  20. Histogram Equalization: A Mini-Example • xi 0 1 2 3 4 5 6 7 (L=8) • p(xi) 0.1 0.2 0.4 0.15 0.1 0.05 0 0 • v 0.1 0.3 0.7 0.85 0.95 1.0 1.0 1.0 • v’ 0 [1.5] [4.7] [5.8] [6.6] 7 7 7 (L-1)/(1-vmin) = 7.78 0 2 5 6 7 7 7 7

  21. v  P(V<=v) P(U<=u) output gray level  1 1 Fu0 Fu0    a b c.d.f c.d.f o input gray level u   u0 v0 o o gray level v 255 gray level u 255 Summary: Contrast Stretching vs. Histogram Eq. • What are in common? • What are different?

  22. Generalization of Histogram Equalization • Histogram specification • Want output v with specified p.d.f. pV(v) • Use uniformly distributed r.v. W as an intermediate step • W = FU(u) = FV(v) V = F-1V (FU(u)) • Approximation in the intermediate step needed for discrete r.v. • W1 = FU(u) , W2 = FV(v) take v s.t. its w2 is equal to or just above w1 Figure is from slides at Gonzalez/ Woods DIP book website (Chapter 3)

  23. For Next Time… • Next time we will focus on quantization

More Related