Vous êtes sur la page 1sur 5

Homomorphic filtering

1. Why do we need a Homomorphic Filter?


2. In what kind of situations should we use Homomorphic filtering?
3. What kind of images need Homomorphic filtering?

1. Because standard linear smoothing (like averaging) tends to filter noise but reduces the
contrast. Image composition is not often linear: cast shadows, occlusions. So linear
methods tend to be suboptimal.
2. When you want to preserve sharp contrasts, for instance with multiplicative noise
(whose intensity varies with image intensity), when you have a slow variation of the
global illumination across the image (like progressive shadowing effect), when you want
to both denoise and enhance
3. Images taken under varying illumination conditions, with noise varying with intensities,
for instance related to temperature (infrared, visible of hot objects).

1. First, I am wondering, how one can decide that an image can be enhanced using
homomorphic filtering? In other words, what is the type of images that require
homomorphic filtering?

2. Second, is homomorphic filtering always used to attenuate the illunimation (low


frequency) and increase the reflectance (high frequency)? Or it can be also used to do
the opposite (attenuate reflectance and highlight illunmiation)?

1- Images that are useful to be enhanced using homomorphic filtering, are images
where the illumination is distributed unequally causing the objects in the image to appear
in a dark colour. In general, these images are dark and so their details are hidden.

2- According to this source, Homomorphic filtering is a frequency domain filtering


process that compresses the brightness (from the lighting condition) while enhancing the
contrast (from the reflectance properties of the object).

Given the fact that homomorphic filtering can be used to split low-frequency illumination
and high frequency reflectance from an image, an obvious use of this is in change
detection. In change detection, when we compare two images we look for changes in
high frequency reflectance part. If we filter away the low frequency illumination part
away, that helps.
Transform coding

Each 8×8 block of each component (Y, Cb, Cr) is converted to a frequency-domain
representation, using a normalized, two-dimensional type-II discrete cosine transform (DCT).
Before computing the DCT of the 8×8 block, its values are shifted from a positive range to
one centered around zero. For an 8-bit image, each entry in the original block falls in the
range [0, 255]. The midpoint of the range (in this case, the value 128) is subtracted from each
entry to produce a data range that is centered around zero, so that the modified range is [-128,
127]. This step reduces the dynamic range requirements in the DCT processing stage that
follows. (Aside from the difference in dynamic range within the DCT stage, this step is
mathematically equivalent to subtracting 1024 from the DC coefficient after performing the
transform – which may be a better way to perform the operation on some architectures since
it involves performing only one subtraction rather than 64 of them).

Because cos(0) is 1, the first (0th) coefficient of DCT-II is the mean of the values being
transformed. This makes the first coefficient of each 8x8 block represent the average tone of
its constituent pixels, which is obviously a good start. Subsequent coefficients add increasing
levels of detail, starting with sweeping gradients and continuing into increasingly fiddly
patterns, and it just so happens that the first few coefficients capture most of the signal in
photographic images. Sin(0) is 0, so the DSTs start with an offset of 0.5 or 1, and the first
coefficient is a gentle mound rather than a flat plain. That is unlikely to suit ordinary images,
and the result is that DSTs require more coefficients than DCTs to encode most blocks. The
DCT just happens to suit. That is really all there is to it.

The criteria for choosing a suitable transform are the compactness (sparseness) of its
transformed coefficients to general images and the complexity of the transform. The
transform has also to be fully recoverable (and easy to implement). 


Weiner filter
In signal processing,
the Wiener filter is a filter used
to produce an estimate of a
desired or target random
process by linear time-invariant
(LTI) filtering of an observed
noisy process, assuming
known stationary signal and
noise spectra, and additive
noise. The Wiener filter
minimizes the mean square
error between the estimated
random process and the
desired process.
Contrast

Contrast stretching is all about increasing the difference between the maximum intensity
value in an image and the minimum one. All the rest of the intensity values are spread
out between this range.
Histogram equalization is about modifying the intensity values of all the pixels in the
image such that the histogram is "flattened" (in reality, the histogram can't be exactly
flattened, there would be some peaks and some valleys, but that's a practical problem).
In contrast stretching, there exists a one-to-one relationship of the intensity values
between the source image and the target image i.e., the original image can be restored
from the contrast-stretched image.
However, once histogram equalization is performed, there is no way of getting back the
original image.

Homogenous coordinates
A redundant representation of two or three dimensional coordinates. An
additional element w is included so that a three dimensional point is written
(x,y,z,w). the equivalent Cartesian coordinate is (x/w,y,w,z/w). The use of
homogenous coordinates allows the perspective transformations to be
implemented using matrix multiplication.
Connected component
Connected components labeling scans an image and groups its pixels into components based
on pixel connectivity. A connected component is a group of pixels in which a 4 or 8
connected path exists between every pair of pixels.

Connected component labeling works on binary or graylevel images and different measures
of connectivity are possible. However, for the following we assume binary input images
and 8-connectivity. The connected components labeling operator scans the image by moving
along a row until it comes to a point p (where p denotes the pixel to be labeled at any stage in
the scanning process) for which V={1}. When this is true, it examines the four neighbors
of p which have already been encountered in the scan (i.e. the neighbors (i) to the left of p,
(ii) above it, and (iii and iv) the two upper diagonal terms). Based on this information, the
labeling of p occurs as follows:

 If all four neighbors are 0, assign a new label to p, else


 if only one neighbor has V={1}, assign its label to p, else
 if more than one of the neighbors have V={1}, assign one of the labels to p and make
a note of the equivalences.

Erosion

The erosion operator gives those points at which the structuring element is totally enclosed
by input pixels. The erosion operator is defined as
consider each of the foreground pixels in the input image in turn.

1. for each foreground pixel (which we will call the input pixel) we superimpose the
structuring element on top of the input image
2. If for every pixel in the structuring element, the corresponding pixel in the image
underneath is a foreground pixel, then the input pixel is left as it is.
3. If any of the corresponding pixels in the image are background, however, the input
pixel is also set to background value.

Dilation
The dilation operator identifies those points for which the input pixels and the translated
structuring element have at least one point in common.

1. For each background pixel (which we will call the input pixel) we superimpose the
structuring element on top of the input image
2. If at least one pixel in the structuring element coincides with a foreground pixel in the
image underneath, then the input pixel is set to the foreground value.
3. If all the corresponding pixels in the image are background, however, the input pixel
is left at the background value.
Graylevel opening

The important thing to notice here is the way in which bright features smaller than
the structuring element have been greatly reduced in intensity, while larger features
have remained more or less unchanged in intensity. Thus the fine grained hair and
whiskers in the image have been much reduced in intensity, while the nose region
is still at much the same intensity as before. Note that the image does have a more
matt appearance than before since the opening has eliminated small specularities
and texture fluctuations.

Graylevel closing
Dark specks in between the bright spots in the hair have been largely filled in to
the same color as the bright spots, while the more uniformly colored nose area is
largely the same intensity as before. Similarly the gaps between the white whiskers
have been filled in.

Vous aimerez peut-être aussi