c# pdf reader table : Delete pages from pdf reader Library application component .net html asp.net mvc SzeliskiBook_20100903_draft18-part590

3.5 Pyramids and wavelets
159
(a)
(b)
(c)
(d)
Figure 3.40 Steerable shiftable multiscale transforms (Simoncelli,Freeman,Adelsonetal.
1992)
c
1992 IEEE: (a) radial multi-scale frequency domain decomposition; (b) original
image; (c) a set of four steerable filters; (d) the radial multi-scale wavelet decomposition.
implementation of shiftable multi-scale transforms or, more succinctly, steerable pyramids.
Their representation is not only overcomplete (which eliminates the aliasing problem) but is
alsoorientationally selective and has identicalanalysis andsynthesis basis functions, i.e., it is
self-inverting, just like “regular” wavelets. As a result, this makes steerable pyramids a much
more useful basis for the structural analysis and matching tasks commonly used in computer
vision.
Figure3.40a shows how such a decomposition looks in frequency space. Instead of re-
cursively dividing the frequency domain into 2  2 squares, which results in checkerboard
high frequencies, radial arcs are used instead. Figure3.40b illustrates the resulting pyramid
sub-bands. Even through the representation is overcomplete, i.e., there are more wavelet co-
efficients than input pixels, the additional frequency and orientation selectivity makes this
representationpreferable for tasks such as texture analysis andsynthesis (PortillaandSimon-
celli 2000)andimagedenoising(Portilla, Strela, Wainwright et al. 2003;Lyu andSimoncelli
2009).
Delete pages from pdf reader - remove PDF pages in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Provides Users with Mature Document Manipulating Function for Deleting PDF Pages
best pdf editor delete pages; acrobat extract pages from pdf
Delete pages from pdf reader - VB.NET PDF Page Delete Library: remove PDF pages in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Visual Basic Sample Codes to Delete PDF Document Page in .NET
delete page pdf acrobat reader; delete blank page from pdf
160
Computer Vision: Algorithms and Applications (September 3, 2010 draft)
(a)
(b)
(c)
(d)
Figure 3.41 Laplacian pyramid blending(BurtandAdelson1983b)  c 1983 ACM:(a) orig-
inal image of apple, (b) original image of orange, (c) regular splice, (d) pyramid blend.
3.5.5 Application: Image blending
One of the most engaging and fun applications of the Laplacian pyramid presented in Sec-
tion3.5.3 is the creation of blended composite images, as shown in Figure3.41 (Burtand
Adelson 1983b). Whilesplicingtheappleandorangeimagestogetheralongthemidline
produces a noticeable cut, splining them together (asBurtandAdelson(1983b) called their
procedure) creates a beautiful illusion of a truly hybrid fruit. The key to their approach is
that the low-frequency color variations between the red apple and the orange are smoothly
blended, while the higher-frequency textures on each fruit are blended more quickly to avoid
“ghosting” effects when twotextures are overlaid.
To create the blended image, each source image is first decomposed into its own Lapla-
cian pyramid (Figure3.42, left and middle columns). Each band is then multiplied by a
smooth weighting function whose extent is proportional to the pyramid level. The simplest
and most general way to create these weights is to take a binary mask image (Figure3.43c)
and to construct a Gaussian pyramid from this mask. Each Laplacian pyramid image is then
C# PDF File & Page Process Library SDK for C#.net, ASP.NET, MVC
VB.NET Page: Insert PDF pages; VB.NET Page: Delete PDF pages; VB.NET Annotate: PDF Markup & Drawing. XDoc.Word for XImage.OCR for C#; XImage.Barcode Reader for C#
delete page pdf file; delete pages pdf
C# PDF Page Insert Library: insert pages into PDF file in C#.net
how to merge PDF document files by C# code, how to rotate PDF document page, how to delete PDF page using C# .NET, how to reorganize PDF document pages and how
delete blank pages in pdf files; copy page from pdf
3.5 Pyramids and wavelets
161
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
(j)
(k)
(l)
Figure 3.42 Laplacian pyramid blending details (BurtandAdelson1983b)  c 1983 ACM.
Thefirst three rows showthehigh, medium, andlowfrequencypartsof the Laplacianpyramid
(taken from levels 0, 2, and 4). The left and middle columns show the original apple and
orange images weighted by the smoothinterpolationfunctions, while the right column shows
the averaged contributions.
VB.NET PDF Page Insert Library: insert pages into PDF file in vb.
Page: Insert PDF Pages. |. Home ›› XDoc.PDF ›› VB.NET PDF: Insert PDF Page. Add and Insert Multiple PDF Pages to PDF Document Using VB.
delete blank pages from pdf file; add and delete pages in pdf online
VB.NET PDF delete text library: delete, remove text from PDF file
Visual Studio .NET application. Delete text from PDF file in preview without adobe PDF reader component installed. Able to pull text
delete pages from pdf without acrobat; delete page pdf
162
Computer Vision: Algorithms and Applications (September 3, 2010 draft)
(a)
(b)
(c)
(d)
Figure 3.43 Laplacian pyramid blend of two images of arbitrary shape (BurtandAdelson
1983b) c 1983ACM:(a)firstinputimage;(b)secondinputimage;(c)regionmask;(d)
blended image.
multiplied by its corresponding Gaussian mask and the sum of these two weighted pyramids
is then used to construct the final image (Figure3.42, right column).
Figure3.43 shows that this process can be applied to arbitrary mask images with sur-
prising results. It is also straightforward to extend the pyramid blend to an arbitrary number
of images whose pixel provenance is indicated by an integer-valued label image (see Exer-
cise3.20). This is particularly useful in image stitching and compositing applications, where
the exposures may vary between different images, as described in Section9.3.4.
3.6 Geometric transformations
In the previous sections, we saw how interpolation and decimation could be used to change
the resolution of an image. In this section, we look at how to perform more general transfor-
mations, such as image rotations or general warps. In contrast to the point processes we saw
in Section3.1, where the function applied to an image transforms the range of the image,
g(x) = h(f(x));
(3.87)
C# PDF Page Rotate Library: rotate PDF page permanently in C#.net
batch changing PDF page orientation without other PDF reader control. NET, add new PDF page, delete certain PDF page, reorder existing PDF pages and split
pdf delete page; delete pdf pages reader
C# PDF delete text Library: delete, remove text from PDF file in
Delete text from PDF file in preview without adobe PDF reader component installed in ASP.NET. C#.NET PDF: Delete Text from Consecutive PDF Pages.
delete page in pdf online; delete a page from a pdf in preview
3.6 Geometric transformations
163
f
x
h
f
f
g
h
g
h
h
g
x
f
x
g
x
Figure 3.44 Image warping involves modifying the domain of an image functionrather than
its range.
y
x
similarity
Euclidean
affine
projective
translation
Figure 3.45 Basic set of 2D geometric image transformations.
here we look at functions that transform the domain,
g(x) = f(h(x))
(3.88)
(see Figure3.44).
We begin by studying the global parametric 2D transformation first introduced in Sec-
tion2.1.2. (Such a transformation is called parametric because it is controlled by a small
number of parameters.) Wethenturnour attentiontomorelocal general deformations suchas
those defined on meshes (Section3.6.2). Finally, weshowhowimage warps canbe combined
with cross-dissolves to create interesting morphs (in-between animations) in Section3.6.3.
For readers interested in more details on these topics, there is an excellent survey byHeck-
bert(1986)aswellasveryaccessibletextbooksby Wolberg(1990), Gomes, Darsa, Costa
et al.(1999)and Akenine-M¨oller and Haines(2002). NotethatHeckbert’ssurveyisontex-
ture mapping, which is how the computer graphics community refers to the topic of warping
images onto surfaces.
3.6.1 Parametric transformations
Parametric transformations apply aglobal deformationtoan image, where the behavior of the
transformation is controlled by a small number of parameters. Figure3.45 shows a few ex-
VB.NET PDF Page Extract Library: copy, paste, cut PDF pages in vb.
C:\test1.pdf") Dim pdf2 As PDFDocument = New PDFDocument("C:\test2.pdf") Dim pageindexes = New Integer() {1, 2, 4} Dim pages = pdf.DuplicatePage(pageindexes
delete pages out of a pdf; delete pages on pdf
C# PDF Page Extract Library: copy, paste, cut PDF pages in C#.net
C#.NET PDF Library - Copy and Paste PDF Pages in C#.NET. Easy to C#.NET Sample Code: Copy and Paste PDF Pages Using C#.NET. C# programming
delete page from pdf; delete pdf pages ipad
164
Computer Vision: Algorithms and Applications (September 3, 2010 draft)
Transformation
Matrix
#DoF
Preserves
Icon
translation
h
I
t
i
23
2
orientation
rigid (Euclidean)
h
R
t
i
23
3
lengths
S
S
S
S
similarity
h
sR
t
i
23
4
angles
S
S
affine
h
A
i
23
6
parallelism
projective
h
~
H
i
33
8
straight lines
Table 3.5 Hierarchy of 2D coordinate transformations. Each transformation also preserves
the properties listed in the rows below it, i.e., similarity preserves not only angles but also
parallelism andstraight lines. The 23 matrices are extendedwith a third [0
T
1] row toform
afull 3  3 matrix for homogeneous coordinate transformations.
amples of suchtransformations, which are based onthe 2D geometric transformations shown
in Figure2.4. The formulas for these transformations were originally given in Table2.1 and
are reproduced here in Table3.5 for ease of reference.
In general, given a transformation specified by a formula x
0
=h(x) and a source image
f(x), how do we compute the values of the pixels in the new image g(x), as givenin (3.88)?
Think about this for a minute before proceeding and see if you canfigure it out.
If you are like most people, youwill come upwith analgorithm that looks somethinglike
Algorithm3.1. This process is called forward warping or forward mapping and is shown in
Figure3.46a. Can you think of any problems with this approach?
procedure forwardWarp(f;h;out g):
For every pixel x in f(x)
1. Compute the destination location x
0
=h(x).
2. Copy the pixel f(x) to g(x
0
).
Algorithm 3.1 Forward warping algorithm for transforming an image f(x) into an image
g(x
0
)through the parametric transform x
0
=h(x).
3.6 Geometric transformations
165
x
x’
x’=h(x)
f(x)
g(x’)
x
x’
x’=h(x)
(a)
(b)
Figure 3.46 Forward warping algorithm: (a) a pixel f(x) is copied to its corresponding
location x
0
=h(x) in image g(x
0
); (b) detail of the source and destination pixel locations.
In fact, this approach suffers from several limitations. The process of copying a pixel
f(x) to a location x
0
in g is not well defined when x
0
has a non-integer value. What do we
do in such a case? What would you do?
You can round the value of x0 to the nearest integer coordinate and copy the pixel there,
but the resulting image has severe aliasing and pixels that jump around a lot when animating
the transformation. You can also “distribute” the value among its four nearest neighbors in
aweighted (bilinear) fashion, keeping track of the per-pixel weights and normalizing at the
end. This technique is called splatting and is sometimes used for volume rendering in the
graphics community (LevoyandWhitted1985;Levoy1988;Westover1989;Rusinkiewicz
and Levoy 2000). Unfortunately,itsuffersfrombothmoderateamountsofaliasinganda
fair amount of blur (loss of high-resolution detail).
The second major problem with forward warping is the appearance of cracks and holes,
especially when magnifying an image. Filling such holes with their nearby neighbors can
lead to further aliasing and blurring.
What canwe do instead? Apreferable solution is to use inverse warping (Algorithm3.2),
where each pixel in the destination image g(x0) is sampled from the original image f(x)
(Figure3.47).
How does this differ from the forward warping algorithm? For one thing, since
^
h(x
0
)
is (presumably) defined for all pixels in g(x
0
), we no longer have holes. More importantly,
resampling an image at non-integer locations is a well-studied problem (general image inter-
polation, see Section3.5.2) and high-quality filters that control aliasing can be used.
Where does the function
^
h(x0) come from? Quiteoften, itcan simply becomputed as the
inverse of h(x). In fact, all of the parametric transforms listed in Table3.5 have closed form
solutions for the inverse transform: simply take the inverse of the 3 3matrix specifying the
transform.
In other cases, it is preferable to formulate the problem of image warping as that of re-
sampling a source image f(x) given a mapping x =
^
h(x
0
)from destination pixels x
0
to
source pixels x. For example, in optical flow (Section8.4), we estimate the flow field as the
166
Computer Vision: Algorithms and Applications (September 3, 2010 draft)
procedure inverseWarp(f;h;out g):
For every pixel x
0
in g(x
0
)
1. Compute the source location x =
^
h(x
0
)
2. Resample f(x) at location x and copy to g(x
0
)
Algorithm 3.2 Inverse warping algorithm for creating an image g(x
0
)from an image f(x)
using the parametric transform x
0
=h(x).
x
x’
x=h(x’)
f(x)
g(x’)
x
x’
x=h(x’)
(a)
(b)
Figure 3.47 Inverse warping algorithm: (a) a pixel g(x
0
)is sampled from its corresponding
location x =
^
h(x
0
)in image f(x); (b) detail of the source and destination pixel locations.
location of the source pixel which produced the current pixel whose flow is being estimated,
as opposedtocomputing the destination pixel towhichit is going. Similarly, whencorrecting
for radial distortion (Section2.1.6), we calibrate the lens by computing for each pixel in the
final (undistorted) image the corresponding pixel location in the original (distorted) image.
What kinds of interpolation filter are suitable for the resampling process? Any of the fil-
ters westudied in Section3.5.2canbe used, including nearestneighbor, bilinear, bicubic, and
windowed sinc functions. While bilinear is often used for speed (e.g., inside the inner loop
of a patch-tracking algorithm, see Section8.1.3), bicubic, and windowed sinc are preferable
where visual quality is important.
To compute the value of f(x) at a non-integer location x, we simply apply our usual FIR
resampling filter,
g(x;y) =
X
k;l
f(k;l)h(x  k;y   l);
(3.89)
where (x;y) are the sub-pixelcoordinate values and h(x;y) is some interpolatingor smooth-
ing kernel. Recallfrom Section3.5.2thatwhendecimationis being performed, the smoothing
kernel is stretched and re-scaled according to the downsampling rate r.
Unfortunately, for a general (non-zoom) image transformation, the resampling rate r is
not well defined. Consider a transformation that stretches the x dimensions while squashing
3.6 Geometric transformations
167
x
y
x’
y’
x
y
x’
y’
x
y
x’
y’
a
y’y
a
y’x
a
x’x
a
x’y
(a)
(b)
(c)
major axis
minor axis
Figure 3.48 Anisotropic texture filtering: (a) Jacobian of transform A and the induced
horizontal and vertical resampling rates fa
x0x
;a
x0y
;a
y0x
;a
y0y
g; (b) elliptical footprint of an
EWA smoothing kernel; (c) anisotropic filtering using multiple samples along the major axis.
Image pixels lie at line intersections.
the y dimensions. The resampling kernel should be performing regular interpolation along
the x dimension and smoothing (to anti-alias the blurred image) in the y direction. This gets
even more complicated for the case of general affine or perspective transforms.
What can we do? Fortunately, Fourier analysis can help. The two-dimensional general-
izationof the one-dimensional domain scaling lawgiven in Table3.1 is
g(Ax) , jAj
1
G(A
T
f):
(3.90)
For all of the transforms in Table3.5 except perspective, the matrix A is already defined.
For perspective transformations, the matrix A is the linearized derivative of the perspective
transformation (Figure3.48a), i.e., the local affine approximation to the stretching induced
bythe projection (Heckbert1986;Wolberg1990;Gomes,Darsa,Costaetal.1999;Akenine-
M¨oller and Haines 2002).
To prevent aliasing, we need to pre-filter the image f(x) with a filter whose frequency
response is the projection of the final desired spectrum through the A
T
transform (Szeliski,
Winder, and Uyttendaele 2010). Ingeneral(fornon-zoomtransforms), , this filteris non-
separable and hence is very slow to compute. Therefore, a number of approximations to this
filter are used in practice, include MIP-mapping, elliptically weighted Gaussian averaging,
and anisotropic filtering (Akenine-M¨ollerandHaines2002).
MIP-mapping
MIP-mapping was first proposed byWilliams(1983) as a means to rapidly pre-filter images
being used for texture mapping in computer graphics. A MIP-map18 is a standard image
18
Theterm ‘MIP’stands formulti in parvo, meaning ‘many in one’.
168
Computer Vision: Algorithms and Applications (September 3, 2010 draft)
pyramid (Figure3.32), where each level is pre-filtered with a high-quality filter rather than
apoorer quality approximation, such as Burt and Adelson’s (1983b) five-tap binomial. To
resample an image from a MIP-map, a scalar estimate of the resampling rate r is first com-
puted. For example, r can be the maximum of the absolute values in A (which suppresses
aliasing) or it can be the minimum (which reduces blurring). Akenine-M¨ollerandHaines
(2002) discuss these issues in more detail.
Once a resampling rate has been specified, a fractional pyramid level is computed using
the base 2 logarithm,
l= log
2
r:
(3.91)
One simple solution is to resample the texture from the next higher or lower pyramid level,
depending on whether it is preferable to reduce aliasing or blur. A better solution is to re-
sample both images and blend them linearly using the fractional component of l. Since most
MIP-map implementations use bilinear resampling within each level, this approach is usu-
ally called trilinear MIP-mapping. Computer graphics rendering APIs, such as OpenGL and
Direct3D, have parameters that can be used to select which variant of MIP-mapping (and of
the sampling rate r computation) should be used, depending on the desired tradeoff between
speed and quality. Exercise3.22 has you examine some of these tradeoffs in more detail.
Elliptical Weighted Average
The Elliptical Weighted Average (EWA) filter invented byGreeneandHeckbert(1986) is
basedonthe observationthat the affine mapping x = Ax
0
defines a skewed two-dimensional
coordinate system in the vicinity of each source pixel x (Figure3.48a). For every destina-
tion pixel x
0
,the ellipsoidal projection of a small pixel grid in x
0
onto x is computed (Fig-
ure3.48b). This is then used to filter the source image g(x) with a Gaussian whose inverse
covariance matrix is this ellipsoid.
Despite its reputationas a high-quality filter (Akenine-M¨ollerandHaines2002), we have
found in our work (Szeliski,Winder,andUyttendaele2010) that because a Gaussian kernel
is used, the technique suffers simultaneously from both blurring and aliasing, compared to
higher-quality filters. The EWA is also quite slow, although faster variants based on MIP-
mapping have been proposed (Szeliski,Winder,andUyttendaele (2010) provide some addi-
tional references).
Anisotropic filtering
An alternative approach to filtering oriented textures, which is sometimes implemented in
graphics hardware (GPUs), is touse anisotropic filtering(Barkans1997;Akenine-M¨ollerand
Haines 2002). Inthisapproach,severalsamplesatdifferentresolutions(fractionallevelsin
the MIP-map) are combinedalong the major axis of the EWA Gaussian (Figure3.48c).
Documents you may be interested
Documents you may be interested