Digital Image Processing

Slides:



Advertisements
Similar presentations
Digital Image Processing
Advertisements

Image Processing Lecture 4
CS & CS Multimedia Processing Lecture 2. Intensity Transformation and Spatial Filtering Spring 2009.
Chapter 3 Image Enhancement in the Spatial Domain.
Chapter - 2 IMAGE ENHANCEMENT
Intensity Transformations (Chapter 3)
EE 4780 Image Enhancement. Bahadir K. Gunturk2 Image Enhancement The objective of image enhancement is to process an image so that the result is more.
EE663 Image Processing Histogram Equalization Dr. Samir H. Abdul-Jauwad Electrical Engineering Department King Fahd University of Petroleum & Minerals.
Digital Image Processing
Histogram Processing The histogram of a digital image with gray levels from 0 to L-1 is a discrete function h(rk)=nk, where: rk is the kth gray level nk.
ECE 472/572 - Digital Image Processing
Image Enhancement in the Spatial Domain II Jen-Chang Liu, 2006.
Image Enhancement in the Spatial Domain
Intensity Transformations
Digital Image Processing
Image Enhancement by Modifying Gray Scale of Individual Pixels
Lecture 4 Digital Image Enhancement
Digital Image Processing In The Name Of God Digital Image Processing Lecture3: Image enhancement M. Ghelich Oghli By: M. Ghelich Oghli
Digital Image Processing
Chapter 3: Image Enhancement in the Spatial Domain
Image Enhancement To process an image so that the result is more suitable than the original image for a specific application. Spatial domain methods and.
6/9/2015Digital Image Processing1. 2 Example Histogram.
Machine Vision and Dig. Image Analysis 1 Prof. Heikki Kälviäinen CT50A6100 Lectures 6&7: Image Enhancement Professor Heikki Kälviäinen Machine Vision and.
Digital Image Processing
CS 376b Introduction to Computer Vision 02 / 25 / 2008 Instructor: Michael Eckmann.
Image Enhancement.
Lecture 2. Intensity Transformation and Spatial Filtering
 Image Enhancement in Spatial Domain.  Spatial domain process on images can be described as g(x, y) = T[f(x, y)] ◦ where f(x,y) is the input image,
Digital Image Processing
University of Ioannina - Department of Computer Science Intensity Transformations (Point Processing) Christophoros Nikou Digital Image.
Digital Image Processing Lecture 4: Image Enhancement: Point Processing Prof. Charlene Tsai.
Intensity Transformations or Translation in Spatial Domain.
Intensity Transformations (Histogram Processing)
Digital Image Processing, 2nd ed. © 2002 R. C. Gonzalez & R. E. Woods  Process an image so that the result will be more suitable.
Ch5 Image Restoration CS446 Instructor: Nada ALZaben.
İmage enhancement Prepare image for further processing steps for specific applications.
Lecture Reading  3.1 Background  3.2 Some Basic Gray Level Transformations Some Basic Gray Level Transformations  Image Negatives  Log.
Digital Image Processing Lecture 4: Image Enhancement: Point Processing January 13, 2004 Prof. Charlene Tsai.
EE 7730 Image Enhancement. Bahadir K. Gunturk2 Image Enhancement The objective of image enhancement is to process an image so that the result is more.
Digital Image Processing, 2nd ed. © 2002 R. C. Gonzalez & R. E. Woods Chapter 3 Image Enhancement in the Spatial Domain Chapter.
Image Enhancement in the Spatial Domain.
Image Subtraction Mask mode radiography h(x,y) is the mask.
Lecture Six Figures from Gonzalez and Woods, Digital Image Processing, Second Edition, Copyright 2002.
Image enhancement algorithms & techniques Point-wise operations
IMAGE ENHANCEMENT TECHNIQUES
Image Enhancement.
Digital Image Processing
Image Analysis Image Restoration.
Intensity Transformations and Spatial Filtering
Digital Image Processing
Histogram Histogram is a graph that shows frequency of anything. Histograms usually have bars that represent frequency of occuring of data. Histogram has.
Image Processing – Contrast Enhancement
Image Enhancement in the Spatial Domain
Lecture 3 (2.5.07) Image Enhancement in Spatial Domain
CSC 381/481 Quarter: Fall 03/04 Daniela Stan Raicu
Image Enhancement Gray level transformation Linear transformation
Digital Image Processing
Digital Image Processing
Chapter 3 Image Enhancement in the Spatial Domain
Digital Image Processing Week III
Histogram Equalization
Digital Image Procesing Introduction to Image Enhancement Histogram Processing DR TANIA STATHAKI READER (ASSOCIATE PROFFESOR) IN SIGNAL PROCESSING IMPERIAL.
Grey Level Enhancement
CIS 4350 Image ENHANCEMENT SPATIAL DOMAIN
Intensity Transformations and Spatial Filtering
IT523 Digital Image Processing
IT523 Digital Image Processing
The spatial domain processes discussed in this chapter are denoted by the expression
Image Enhancement in the Spatial Domain
Presentation transcript:

Digital Image Processing Image Enhancement 12/5/2018 Duong Anh Duc - Digital Image Processing

Image Enhancement To process an image so that output is “visually better” than the input, for a specific application. Enhancement is therefore, very much dependent on the particular problem/image at hand. Enhancement can be done in either: Spatial domain: operate on the original image g(m,n) = T[f(m,n)] Frequency domain: operate on the DFT of the original image G(u,v) = T[F(u,v)], where F(u,v) = F[f(m,n)], and G(u,v) = F [g(m,n)], 12/5/2018 Duong Anh Duc - Digital Image Processing

Duong Anh Duc - Digital Image Processing Image Negative Contrast Stretching Compression of dynamic range Graylevel slicing Image Subtraction Image Averaging Histogram operations Smoothing operations Median Filtering Sharpening operations Derivative operations Histogram operations Low pass Filtering Hi pass Filtering Band pass Filtering Homomorphic Filtering Histogram operations False Coloring Full color Processing 12/5/2018 Duong Anh Duc - Digital Image Processing

Duong Anh Duc - Digital Image Processing Point Operations Output pixel value g(m, n) at pixel (m, n) depends only on the input pixel value at f(m, n) at (m, n) (and not on the neighboring pixel values). We normally write s = T(r), where s is the output pixel value and r is the input pixel value. T is any increasing function that maps [0,1] into [0,1]. 12/5/2018 Duong Anh Duc - Digital Image Processing

Image Negative T(r) = s = L-1-r, L: max grayvalue 12/5/2018 Duong Anh Duc - Digital Image Processing

Duong Anh Duc - Digital Image Processing Negative Image 12/5/2018 Duong Anh Duc - Digital Image Processing

Duong Anh Duc - Digital Image Processing Contrast Stretching Increase the dynamic range of grayvalues in the input image. Suppose you are interested in stretching the input intensity values in the interval [r1, r2]: Note that (r1- r2) < (s1- s2). The grayvalues in the range [r1, r2] is stretched into the range [s1, s2]. 12/5/2018 Duong Anh Duc - Digital Image Processing

Duong Anh Duc - Digital Image Processing Contrast Stretching Special cases: Thresholding or binarization r1 = r2 , s1 = 0 and s2 = 1 Useful when we are only interested in the shape of the objects and on on their actual grayvalues. 12/5/2018 Duong Anh Duc - Digital Image Processing

Duong Anh Duc - Digital Image Processing Contrast Stretching 12/5/2018 Duong Anh Duc - Digital Image Processing

Duong Anh Duc - Digital Image Processing Contrast Stretching Special cases (cont.): Gamma correction: S1 = 0, S2 = 1 and 12/5/2018 Duong Anh Duc - Digital Image Processing

Duong Anh Duc - Digital Image Processing Contrast Stretching Gamma correction 12/5/2018 Duong Anh Duc - Digital Image Processing

Compression of Dynamic Range When the dynamic range of the input grayvalues is large compared to that of the display, we need to “compress” the grayvalue range --- example: Fourier transform magnitude. Typically we use a log scale. s = T(r) = c log(1+r) 12/5/2018 Duong Anh Duc - Digital Image Processing

Compression of Dynamic Range Saturn Image Mag. Spectrum Mag. Spectrum in log scale 12/5/2018 Duong Anh Duc - Digital Image Processing

Compression of Dynamic Range Graylevel Slicing: Highlight a specific range of grayvalues. 12/5/2018 Duong Anh Duc - Digital Image Processing

Compression of Dynamic Range Example: Highlighted Image (no background) Original Image Highlighted Image (with background) 12/5/2018 Duong Anh Duc - Digital Image Processing

Compression of Dynamic Range Bitplane Slicing: Display the different bits as individual binary images. 12/5/2018 Duong Anh Duc - Digital Image Processing

Compression of Dynamic Range 12/5/2018 Duong Anh Duc - Digital Image Processing

Duong Anh Duc - Digital Image Processing Image Subtraction In this case, the difference between two “similar” images is computed to highlight or enhance the differences between them: g(m,n) = f1(m,n)-f2(m,n) It has applications in image segmentation and enhancement 12/5/2018 Duong Anh Duc - Digital Image Processing

Example: Mask mode radiography f1(m, n): Image before dye injection f2(m, n): Image after dye injection g(m, n): Image after dye injection, followed by subtraction 12/5/2018 Duong Anh Duc - Digital Image Processing

Image Averaging for noise reduction Noise is any random (unpredictable) phenomenon that contaminates an image. Noise is inherent in most practical systems: Image acquisition Image transmission Image recording Noise is typically modeled as an additive process: g(m,n) = f(m,n) + (m,n) Noisy Image Noise-free Image Noise 12/5/2018 Duong Anh Duc - Digital Image Processing

Image Averaging for noise reduction The noise h (m, n) at each pixel (m, n) is modeled as a random variable. Usually, h (m, n) has zero-mean and the noise values at different pixels are uncorrelated. Suppose we have M observations {gi(m, n)}, i=1, 2, …, M, we can (partially) mitigate the effect of noise by “averaging” 12/5/2018 Duong Anh Duc - Digital Image Processing

Image Averaging for noise reduction In this case, we can show that: Therefore, as the number of observations increases (M  ), the effect of noise tends to zero. 12/5/2018 Duong Anh Duc - Digital Image Processing

Image Averaging Example Noisy Image Noise Variance = 0.05 Noise-free Image 12/5/2018 Duong Anh Duc - Digital Image Processing

Image Averaging Example 12/5/2018 Duong Anh Duc - Digital Image Processing

Image Averaging Example 12/5/2018 Duong Anh Duc - Digital Image Processing

Image Averaging Example 12/5/2018 Duong Anh Duc - Digital Image Processing

Some Averaging Filters 12/5/2018 Duong Anh Duc - Digital Image Processing

Duong Anh Duc - Digital Image Processing Histograms The histogram of a digital image with grayvalues r0, r1, …, rL-1 is the discrete function The function p(rk) represents the fraction of the total number of pixels with grayvalue rk. Histogram provides a global description of the appearance of the image. 12/5/2018 Duong Anh Duc - Digital Image Processing

Duong Anh Duc - Digital Image Processing Histograms If we consider the grayvalues in the image as realizations of a random variable R, with some probability density, histogram provides an approximation to this probability density. In other words, Pr[R=rk]  p(rk) 12/5/2018 Duong Anh Duc - Digital Image Processing

Some Typical Histograms The shape of a histogram provides useful information for contrast enhancement. 12/5/2018 Duong Anh Duc - Digital Image Processing

Some Typical Histograms (cont.) The shape of a histogram provides useful information for contrast enhancement. 12/5/2018 Duong Anh Duc - Digital Image Processing

Example: Histogram Stretching 12/5/2018 Duong Anh Duc - Digital Image Processing

Histogram Equalization Idea: find a non-linear transformation g = T(f ) to be applied to each pixel of the input image f(x,y), such that a uniform distribution of gray levels in the entire range results for the output image g(x,y). 12/5/2018 Duong Anh Duc - Digital Image Processing

Histogram Equalization Let us assume for the moment that the input image to be enhanced has continuous grayvalues, with r = 0 representing black and r = 1 representing white. We need to design a grayvalue transformation s = T(r), based on the histogram of the input image, which will enhance the image. As before, we assume that: T(r) is a monotonically increasing function for 0r1 (preserves order from black to white) T(r) maps [0,1] into [0,1] (preserves the range of allowed grayvalues). 12/5/2018 Duong Anh Duc - Digital Image Processing

Histogram Equalization 12/5/2018 Duong Anh Duc - Digital Image Processing

Histogram Equalization Let us denote the inverse transformation by r = T-1(s). We assume that the inverse transformation also satisfies the above two conditions. We consider the grayvalues in the input image and output image as random variables in the interval [0, 1]. Let pin(r) and pout(s) denote the probability density of the grayvalues in the input and output images. 12/5/2018 Duong Anh Duc - Digital Image Processing

Histogram Equalization If pin(r) and T(r) are known, and T-1(s) satisfies condition 1, we can write (result from probability theory): One way to enhance the image is to design a transformation T(.) such that the grayvalues in the output is uniformly distributed in [0, 1], i.e. pout(s)=1, 0 s1 12/5/2018 Duong Anh Duc - Digital Image Processing

Histogram Equalization In terms of histograms, the output image will have all grayvalues in “equal proportion.” This technique is called histogram equalization. Consider the transformation 12/5/2018 Duong Anh Duc - Digital Image Processing

Histogram Equalization Note that this is the cumulative distribution function (CDF) of pin(r) and satisfies the previous two conditions. From the previous equation and using the fundamental theorem of calculus, 12/5/2018 Duong Anh Duc - Digital Image Processing

Histogram Equalization Therefore, the output histogram is given by The output probability density function is uniform, regardless of the input. 12/5/2018 Duong Anh Duc - Digital Image Processing

Histogram Equalization Thus, using a transformation function equal to the CDF of input grayvalues r, we can obtain an image with uniform grayvalues. This usually results in an enhanced image, with an increase in the dynamic range of pixel values. 12/5/2018 Duong Anh Duc - Digital Image Processing

Example: Histogram Equalization Original image Pout after histogram equalization 12/5/2018 Duong Anh Duc - Digital Image Processing

Example: Histogram Equalization 12/5/2018 Duong Anh Duc - Digital Image Processing

Histogram Equalization For images with discrete grayvalues, we have L: Total number of graylevels nk: Number of pixels with grayvalue rk n: Total number of pixels in the image 12/5/2018 Duong Anh Duc - Digital Image Processing

Histogram Equalization The discrete version of the previous transformation based on CDF is given by: 12/5/2018 Duong Anh Duc - Digital Image Processing

Duong Anh Duc - Digital Image Processing Example Consider an 8-level 64 x 64 image with grayvalues (0, 1, …, 7). The normalized grayvalues are (0, 1/7, 2/7, …, 1). The normalized histogram is given in the table: k rk nk p(rk)=nk/n 790 0.19 1 1/7 1023 0.25 2 2/7 850 0.21 3 3/7 656 0.16 4 4/7 329 0.08 5 5/7 245 0.06 6 6/7 122 0.03 7 81 0.02 12/5/2018 Duong Anh Duc - Digital Image Processing

Duong Anh Duc - Digital Image Processing Example(cont.) 12/5/2018 Duong Anh Duc - Digital Image Processing

Duong Anh Duc - Digital Image Processing Example(cont.) Applying the previous transformation, we have (after rounding off to nearest graylevel): Notice that there are only five distinct graylevels --- (1/7, 3/7, 5/7, 6/7, 1) in the output image. We will relabel them as (s0, s1, …, s4). 12/5/2018 Duong Anh Duc - Digital Image Processing

Duong Anh Duc - Digital Image Processing Example(cont.) With this transformation, the output image will have histogram k sk nk p(sk)=nk/n 1/7 790 0.19 1 3/7 1023 0.25 2 5/7 850 0.21 3 6/7 985 0.24 4 448 0.11 12/5/2018 Duong Anh Duc - Digital Image Processing

Duong Anh Duc - Digital Image Processing Example(cont.) Note that the histogram of output image is only approximately, and not exactly, uniform. This should not be surprising, since there is no result that claims uniformity in the discrete case. 12/5/2018 Duong Anh Duc - Digital Image Processing

Duong Anh Duc - Digital Image Processing Example(cont.) Original image Equalized image 12/5/2018 Duong Anh Duc - Digital Image Processing

Example(cont.) Histogram of original image Histogram of equalized image 12/5/2018 Duong Anh Duc - Digital Image Processing

Duong Anh Duc - Digital Image Processing Example(cont.) Original image Equalized image 12/5/2018 Duong Anh Duc - Digital Image Processing

Example(cont.) Histogram of original image Histogram of equalized image 12/5/2018 Duong Anh Duc - Digital Image Processing

Duong Anh Duc - Digital Image Processing Example(cont.) Original image Equalized image 12/5/2018 Duong Anh Duc - Digital Image Processing

Example(cont.) Histogram of original image Histogram of equalized image 12/5/2018 Duong Anh Duc - Digital Image Processing

Duong Anh Duc - Digital Image Processing Example(cont.) Original image Equalized image 12/5/2018 Duong Anh Duc - Digital Image Processing

Example(cont.)-Histograms Histogram of original image Histogram of equalized image 12/5/2018 Duong Anh Duc - Digital Image Processing

Histogram Equalization Histogram equalization may not always produce desirable results, particularly if the given histogram is very narrow. It can produce false edges and regions. It can also increase image “graininess” and “patchiness.” 12/5/2018 Duong Anh Duc - Digital Image Processing

Histogram Specification Histogram equalization yields an image whose pixels are (in theory) uniformly distributed among all graylevels. Sometimes, this may not be desirable. Instead, we may want a transformation that yields an output image with a prespecified histogram. This technique is called histogram specification. Again, we will assume, for the moment, continuous grayvalues. 12/5/2018 Duong Anh Duc - Digital Image Processing

Histogram Specification Suppose, the input image has probability density pin(r). We want to find a transformation z = H(r), such that the probability density of the new image obtained by this transformation is pout(z), which is not necessarily uniform. First apply the transformation This gives an image with a uniform probability density. 12/5/2018 Duong Anh Duc - Digital Image Processing

Histogram Specification If the desired output image were available, then the following transformation would generate an image with uniform density: From the grayvalues  we can obtain the grayvalues z by using the inverse transformation, z = G-1(). 12/5/2018 Duong Anh Duc - Digital Image Processing

Histogram Specification If instead of using the grayvalues n obtained from (**), we use the grayvalues s obtained from (*) above (both are uniformly distributed!), then the point transformation z = H(r) = G-1[T(r)] will generate an image with the specified density pout(z), from an input image with density pin(r) For discrete graylevels, we have 12/5/2018 Duong Anh Duc - Digital Image Processing

Histogram Specification If the transformation zk  G(zk) is one-to-one, the inverse transformation sk  G-1(sk), can be easily determined, since we are dealing with a small set of discrete grayvalues. In practice, this is not usually the case (i.e., zk  G(zk) is not one-to-one) and we assign grayvalues to match the given histogram, as closely as possible. 12/5/2018 Duong Anh Duc - Digital Image Processing

Ex.: Histogram Specification Consider the previous 8-graylevel 64 x 64 image histogram: k rk nk p(rk)=nk/n 790 0.19 1 1/7 1023 0.25 2 2/7 850 0.21 3 3/7 656 0.16 4 4/7 329 0.08 5 5/7 245 0.06 6 6/7 122 0.03 7 81 0.02 12/5/2018 Duong Anh Duc - Digital Image Processing

Ex.: Histogram Specification It is desired to transform this image into a new image, using a transformation z=H(r)= G-1[T(r)], with histogram as specified below: k zk pout(zk) 0.00 1 1/7 2 2/7 3 3/7 0.15 4 4/7 0.20 5 5/7 0.30 6 6/7 7 12/5/2018 Duong Anh Duc - Digital Image Processing

Ex.: Histogram Specification The transformation T(r) was obtained earlier (reproduced below): risk nk p(sk) r0  s0 = 1/7 790 0.19 r1  s1 = 3/7 1023 0.25 r2  s2 = 5/7 850 0.21 r3,r4  s3 = 6/7 985 0.24 r5, r6,r7  s4=1 448 0.11 12/5/2018 Duong Anh Duc - Digital Image Processing

Ex.: Histogram Specification Next we compute the transformation G as before 12/5/2018 Duong Anh Duc - Digital Image Processing

Ex.: Histogram Specification Notice that G is not invertible. But we will do the best possible by setting G-1(0) = ? (This does not matter since s0) G-1(1/7) = 3/7 G-1(2/7) = 4/7 (This does not matter since s2/7) G-1(3/7) = 4/7 (This is not defined, but we use a close match) G-1(4/7) = ? (This does not matter since s4/7) G-1(5/7) = 5/7 G-1(6/7) = 6/7 G-1(1) = 1 12/5/2018 Duong Anh Duc - Digital Image Processing

Ex.: Histogram Specification Combining the two transformation T and G-1, we get our required transformation H rT(r)=s sG-1(s)=z rG-1 [T(r)]=H(r)=z r0 = 0  1/7 0  ? r0 = 0  z3= 3/7 r1 = 1/7  3/7 1/7  3/7 r1 = 1/7  z4= 4/7 r2 = 2/7  5/7 2/7  4/7 r2 = 2/7  z5= 5/7 r3 = 3/7  6/7 3/7  4/7 r3 = 3/7  z6= 6/7 r4 = 4/7  6/7 4/7  ? r4 = 4/7  z6= 6/7 r5 = 5/7  1 5/7  5/7 r5 = 5/7  z7= 1 r6 = 6/7  1 6/7  6/7 r6 = 6/7  z7= 1 r7 = 1  1 1  1 r7 = 1  z7= 1 12/5/2018 Duong Anh Duc - Digital Image Processing

Ex.: Histogram Specification Applying the transformation H to the original image yields an image with histogram as below: k zk nk nk/n (actual hist.) pout(zk) (spec. hist.) 0.00 1 1/7 2 2/7 3 3/7 790 0.19 0.15 4 4/7 1023 0.25 0.20 5 5/7 850 0.21 0.30 6 6/7 985 0.24 7 448 0.11 12/5/2018 Duong Anh Duc - Digital Image Processing

Ex.: Histogram Specification 12/5/2018 Duong Anh Duc - Digital Image Processing

Ex.: Histogram Specification Again, the actual histogram of the output image does not exactly but only approximately matches with the specified histogram. This is because we are dealing with discrete histograms. 12/5/2018 Duong Anh Duc - Digital Image Processing

Duong Anh Duc - Digital Image Processing Example Original image and its histogram 12/5/2018 Duong Anh Duc - Digital Image Processing

Duong Anh Duc - Digital Image Processing Example Histogram equalized image Actual histogram of output 12/5/2018 Duong Anh Duc - Digital Image Processing

Duong Anh Duc - Digital Image Processing Example Histogram specified image, Actual Histogram, and Specified Histogram 12/5/2018 Duong Anh Duc - Digital Image Processing

Enhancement Using Local Histogram Used to enhance details over small portions of the image. Define a square or rectangular neighborhood, whose center moves from pixel to pixel. Compute local histogram based on the chosen neighborhood for each point and apply a histogram equalization or histogram specification transformation to the center pixel. Non-overlapping neighborhoods can also be used to reduce computations. But this usually results in some artifacts (checkerboard like pattern). 12/5/2018 Duong Anh Duc - Digital Image Processing

Enhancement Using Local Histogram Another use of histogram information in image enhancement is the statistical moments associated with the histogram (recall that the histogram can be thought of as a probability density function). For example, we can use the local mean and variance to determine the local brightness/contrast of a pixel. This information can then be used to determine what, if any transformation to apply to that pixel. Note that local histogram based operations are non-uniform in the sense that a different transformation is applied to each pixel. 12/5/2018 Duong Anh Duc - Digital Image Processing