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

Intensity Transformations (Chapter 3)

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 - - - - - - - - - - - - - - - - - - - - - - - - - -

Intensity Transformations (Chapter 3)

CS474/674 – Prof. Bebis

f(x,y)

g(x,y)

Point

Processing

g(x,y)

f(x,y)

Area/Mask

Processing

- Convert a given pixel value to a new pixel value based on some predefined function.

- O(r,c) = 255-I(r,c)

- Stretch gray-level ranges where
we desire more information

(slope > 1).

- Compress gray-level ranges that
are of little interest

(0 < slope < 1).

- Special case of contrast compression

- Highlight specific ranges of gray-levels only.

Same as double

thresholding!

- Highlighting the contribution made by a specific bit.
- For pgm images, each pixel is represented by 8 bits.
- Each bit-plane is a binary image

- Enhance details in the darker regions of an image at the expense of detail in brighter regions.

compress

stretch

- Reverse effect of that obtained using logarithmic mapping.

stretch

compress

- A fully automatic gray-level stretching technique.
- Need to talk about image histograms first ...

- An image histogram is a plot of the gray-level frequencies (i.e., the number of pixels in the image that have that gray level).

- Divide frequencies by total number of pixels to represent as probabilities.

- Histograms clustered at the low end correspond to dark images.
- Histograms clustered at the high end correspond to bright images.

- Histograms with small spread correspond to low contrastimages (i.e., mostly dark, mostly bright, or mostly gray).
- Histograms with wide spread correspond to high contrastimages.

High contrast

Low contrast

- The main idea is to redistribute the gray-level values uniformly.

- In practice, the equalized histogram might not be completely flat.

- Random experiment: an experiment whose result is not certain in advance (e.g., throwing a die)
- Outcome: the result of a random experiment
- Sample space: the set of all possible outcomes (e.g., {1,2,3,4,5,6})
- Event: a subset of the sample space (e.g., obtain an odd number in the experiment of throwing a die = {1,3,5})

- A function that assigns a real number to random experiment outcomes (i.e., helps to reduce space of possible outcomes)

X(j)

X: # of heads

- Consider the experiment of throwing a pair of dice
- Define the r.v. X=“sum of dice”
- X=x corresponds to the event

- The probability density function(pdf) is a real-valued function fX(x) describing the density of probability at each point in the sample space.
- In the discrete case, this is just a histogram!

Gaussian

Gaussian

fX(a)da

non-decreasing

- The integral of fX(x) defines the probability distribution functionFX(x) (i.e., cumulative probability)
- In the discrete case, simply take the sum:

fX(x)

FX(x)

- Suppose Y=T(X)
- e.g., Y=X+1

- If we know fX(x), can we find fY(y)?
- Yes - it can be shown that:

μ=0, σ=1

0

μ=1, σ=1

Proof:

The intensity levels can be viewed as a random variable in [0,1]

ps(s)

pr(r)

For PGM images:

L=256 (graylevels)

k=0,1,2, …, L-1 (possible graylevels)

rk=k/(L-1) (normalized graylevel in [0, 1])

then, de-normalize:

sk x (L-1)

3 bit

64 x 64 image

input histogram

equalized histogram

original images and histograms

equalized images and histograms

only

desired

histogram

is known

fR(r)

fZ(z)

fR(a)da

fZ(a)da

- Histogram equalization yields a uniform pdf only.
- What if we want to obtain a histogram other than uniform?

so, Q(r)=G-1(T(r))

- fS(s) and fV(v) are uniform
- G(z) can be computed by specifying fZ(z) but I2 and I’2 are unknown!
- z=G-1(v) requires that v is a r.v. with uniform pdf
- IDEA: use z=G-1(s) instead of z=G-1(v)
- s is a r.v. with uniform pdf

- The desired transformation is
z=G-1(T(r))

fR(a)da

fz(a)da

- Comments
- We do not need to apply T( ) and G-1( ) separately!
- Combine them: Q=G-1T, thus, z=Q(r)
- Histogram specification assumes that we know G-1 (not always easy to find).
- G( ) must be in [0,1] and must be non-decreasing.

z=G-1(T(r))=Q(r)

3 bit

64 x 64 image

input histogram

specified histogram

actual histogram

- Histogram specification might yield superior results than histogram equalization.

results of histogram equalization

results of histogram specification

G(z)

G-1(z)

- Histogram equalization/specification are global methods.
- The intensity transformation is computed using pixels from the entire image.

- Global transformations are not appropriate for enhancing little details in an image.
- The number of pixels in these areas might be very small, contributing very little to the computation of the transformation.

Idea:

Define a transformation function based on the intensity distribution in a neighborhood of every pixel in the image!

1. Define a neighborhood and move its center from pixel to pixel.

2. At each location, the histogram of the points in the neighborhood is computed. Obtain histogram equalization or histogram specification transformation.

3. Map the intensity of the pixel centered in the neighborhood.

4. Move to the next location and repeat the procedure.

local histogram

equalization

3 x 3 neighborhood

global histogram

equalization

Mean

(average intensity)

n-th moment

around mean

Variance

(2nd moment)

σ is useful for estimating image contrast!

- Useful when parts of the image might contain hidden features.

Task: enhance dark

areas without changing

bright areas.

Idea: Find dark, low contrast

areas using local statistics.

- Intensity operations can yield pixel values outside of the range [0 – 255].
- You should convert values back to the range [0 – 255] to ensure that the image is displayed properly.
- How would you find the following mapping?
[fmin – fmax] [ 0 – 255]