380 likes | 610 Views
Point Operations. General Image Operations. Three type of image operations Point operations Geometric operations Spatial operations. Point Operations. Point Operations. Operation depends on Pixel's value. Context free (memory-less). Operation can be performed on the Histogram. Example:.
E N D
General Image Operations • Three type of image operations • Point operations • Geometric operations • Spatial operations
Point Operations • Operation depends on Pixel's value. • Context free (memory-less). • Operation can be performed on the Histogram. • Example:
Geometric Operations • Operation depend on pixel's coordinates. • Context free. • Independent of pixels value. • Example:
Spatial Operations • Operation depends on Pixel's value and coordinates. • Context dependant. • Spatial v.s. Frequency domain. • Example:
Point Operations • A point operation can be defined as a mapping function: where v stands for gray values. • M(v) takes any value v in the source image into vnew in the destination image. • Simplest case - Linear Mapping: M(v) q’ p’ v p q
If it is required to map the full gray-level range (256 values) to its full range while keeping the gray-level order - a non-decreasing monotonic mapping functionis needed: M(v) 255 stretching v 255 contraction
Contrast Enhancement • If most of the gray-levels in the image are in [u1 u2], the following mapping increases the image contrast. • The values u1 and u2 can be found by using the image’s accumulated histogram. M(v) 255 v u1 u2 255
The Negative Mapping M(v) 255 v 255
Point Operations and the Histogram • Given a point operation: • M(va) takes any value va in image A and maps it into vb in image B. • Requirement: the mapping M is a non descending function (M-1 exists). • In this case, the area under Ha between 0 and va is equal to the area under Hb between 0 and vb
A point operation and the induced histograms: A Ca Ha M(v) M-1(v) B Cb Hb
The area under Ha between 0 and va is equal to the area under Hb between 0 and vb=M(va) v M(v) v Hb Ha v
Q: Is it possible to obtain Hb directly from Ha and M(v)? • A: Since M(v) is monotonic, Ca(va)=Cb(vb) therefore: v M(v) v Cb Ca v
The histogram of image B can be calculated: A Ca Ha M(v) M-1(v) M(v) B Hb Cb
Q: Is it possible to obtain M(v) directly from Ha and Hb? • A: Since Cb is monotonic and Cb(vb)=Ca(va) • Alternatively M(va)=vb if Ca(va)=Cb(vb) A Ca Ha M(v) B Hb Cb
Calculating M(v) from Ca and Cb: M(v) vb v Cb Ca v va
Histogram Equalization • Visual discrimination between objects depends on the their gray-level separation. • How can we improve discrimination after image has been acquired? Hard to discriminate Doesn’t help This is better What about this?
Histogram Equalization • For a better visual discrimination of an image we would like to re-assign gray-levels so that gray-level resource will be optimally assigned. • Our goal: finding a gray-level transformation M(v) such that: • The histogram Hb is as flat as possible. • The order of gray-levels is maintained. • The histogram bars are not fragmented.
Histogram Equalization: Algorithm • Define: • Assign: A Ha Ca Hb Cb
Hist. Eq.: The two pointers algorithm old 0 1 2 3 4 5 6 7 8 9 10 11 0 0 0 1 1 1 3 5 8 9 9 11 new
30 25 30 20 (30) 25 15 (22) (21) (20) 20 10 15 5 10 0 0 1 2 3 4 5 6 7 8 9 10 11 (5) (4) (4) (4) 5 (3) (3) (3) (1) 0 0 1 2 3 4 5 6 7 8 9 10 11 Hist. Eq.: The two pointers algorithm Original Goal 30 Result 25 old 0 1 2 3 4 5 6 7 8 9 10 11 0 0 0 1 1 1 3 5 8 9 9 11 20 new 15 10 5 0 0 1 2 3 4 5 6 7 8 9 10 11
Hist. Eq.: Example 1 Original Equalized
Hist. Eq.: Example 2 Original Equalized
Histogram matching • Transforms an image A so that its histogram will match that of another image B. • Usage: before comparing two images of the same scene (change detection) acquired under different lighting conditions or different camera parameters. source target mapped source
However, in cases where corresponding colors between images are not “consistent” this mapping may fail: from: S. Kagarlitsky: M.Sc. thesis 2010.
Surprising usage: Texture Synthesis (Heeger & Bergen 1995). • Start with a random image. • Step1: multi-resolution decomposition • Step2: histogram matching for each resolution • Iterate synthesis
Discussion: • Histogram matching produces the optimal monotonic mapping so that the resulting histogram will be as close as possible to the target histogram. • This does not necessarily imply similar images.
Example: hist. match results
The Slice Transform (SLT): Hel-Or & Shaked 2008 • The Slice Transform (SLT) can be seen as a representation of a signal using a linear sum of “slice” signals: = Signal xA
Tone mapping using SLT: • The Slice Transform can represents tone mapping (point operations) in a linear form. = =
Tone mapping using SLT: • If a signal A can be mapped into signal B we have: • In practice we find an optimal q so that image A will be as close as possible to image B in a LS sense: • Takes into account spatial information as well. • Mapping is not necessarily monotonic.
Example: SLT results Hist. Eq.