bootstrap: Remove code to prune documentation
[Ale.git] / doc / localhost / ALE / download / ale-0.5.1-tech / merging / index.html
blob8aab6c9bad4f229b7570814ac04be7df7d7617d9
1 <html>
2 <title>Merging</title>
3 <style type="text/css">
4 TABLE.ba { max-width: 678; text-align: center; padding-bottom: 15; padding-top: 5}
5 TABLE.inline { padding-right: 300; clear: left}
6 TD.text_table {padding-left: 2; padding-right: 2; border-width: 1}
7 H2 {clear: left}
8 P {max-width: none; padding-right: 300; clear: left}
9 BLOCKQUOTE {padding-right: 400 }
10 LI {max-width: 640; clear: left}
11 P.footer {max-width: none; width: auto; padding-left: 0}
12 P.header {max-width: none; width: auto; padding-left: 0}
13 HR.main {max-width: 640; clear: left; padding-left: 0; margin-left: 0}
14 HR.footer {clear: both}
15 </style>
16 </head><body>
20 <table align=right valign=top width=160>
21 <td valign=top height=600 width=160>
22 <a href="http://auricle.dyndns.org/ALE/">
23 <big>ALE</big>
24 <br>
25 Image Processing Software
26 <br>
27 <br>
28 <small>Deblurring, Anti-aliasing, and Superresolution.</small></a>
29 <br><br>
30 <big>
31 Local Operation
32 </big>
33 <hr>
34 localhost<br>
35 5393119533<br>
36 </table>
40 <p><b>[ <a href="../">Up</a> ]</b></p>
41 <h1>Merging</h1>
43 Merging uses bilinear interpolation to determine each frame's contribution to
44 the accumulated image, and each contribution is assigned equal weight.
45 Sections below outline the merging algorithm and its properties.
47 <h2>Calculating the <i>Overlapping Value</i></h2>
49 <p>(This section is a very verbose explanation of bilinear interpolation.)
51 <p>Determining what values from the new frame overlap pixels in the accumulated
52 image is an important part of merging. Since transformations may involve
53 sub-pixel alignment, and the accumulated image may be configured to be of finer
54 resolution than the input frames, the manner in which these values are
55 determined is not necessarily obvious.
57 <p>ALE uses the following rules to determine the <i>overlapping value</i>:
59 <ol>
60 <li>If the new frame overlaps the accumulated image pixel in such a manner that
61 the accumulated image pixel is aligned with a pixel in the new frame, then the
62 value of this pixel is the overlapping value. <br><br>
64 <li>If the point overlapping the accumulated image pixel falls on a line between
65 two pixels in the new frame, then the overlapping value is a linear
66 interpolation between these pixels in the coordinate system of the new frame.
67 <br><br>
69 <li>If the point overlapping the accumulated image pixel falls within a
70 quadrilateral outlined by the four closest pixels in the new frame, then the
71 overlapping value is a bilinear interpolation among these pixels in the
72 coordinate system of the new frame.<br><br>
74 <li>If none of the above conditions apply, then there is no overlapping value
75 for the accumulated image pixel in the new frame.<br><br>
76 </ol>
78 <h2>Calculating the <i>Merged Value</i></h2>
80 <p>The <i>merged value</i> for an accumulated image pixel is a weighted average
81 between the current accumulated image pixel value and the overlapping value.
82 The weights are selected so that overlapping values from all frames contribute
83 with equal weight.
85 <h2>Definition of <i>Merging</i></h2>
87 <p><i>Merging</i> a new frame replaces the existing value of each accumulated
88 image pixel with the merged value.
90 <h2>Properties</h2>
92 <h3>Density and false local minima</h3>
94 <p>The merging method outlined above has the property of always updating a
95 dense set of pixels in the accumulated image, even when the accumulated image
96 is of finer resolution than the new frame. This ensures that the area of
97 defined pixels in the accumulated image is dense and that any uniform change in
98 intensity is reflected uniformly over a dense area. The absence of these
99 properties may cause alignment to fail due to entrapment in local minima, and
100 so merging is always used internally to create the renderings used by the
101 alignment algorithm. Except in the case of a large pixel footprint, <a
102 href="../drizzling">drizzling</a> does not share these properties.
104 <h3>Convolution with the Bartlett (triangle) filter as the limiting case</h3>
106 <p>Assuming predicates for translation, point sampling with simple optics, and
107 a very large, uniform input sequence, the result of merging is equivalent to
108 convolution of pixel data with the Bartlett, or triangle, filter. This is
109 derived from the fact that bilinear interpolation of an image defined at
110 discrete points is equivalent to convolution with a Barlett filter. This
111 property is still approximately true even when the translation predicate is not
112 satisfied, so long as large changes in scale do not occur.
114 <br><br>
116 <hr>
117 <i>Copyright 2002, 2003 <a href="mailto:dhilvert@auricle.dyndns.org">David Hilvert</a></i>
118 <p>Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.
119 </body>
120 </html>