c# pdf reader table : Cut pages out of pdf SDK application API .net html winforms sharepoint SzeliskiBook_20100903_draft48-part623

9.3 Compositing
459
vertex cover (Uyttendaele, Eden,andSzeliski2001) often produce similar looking results,
although the former is significantly slower since it optimizes over all pixels, while the latter
is more sensitive to the thresholds used to determine regions of difference.
9.3.3 Application: Photomontage
While image stitching is normally used to composite partially overlapping photographs, it
can also be used to composite repeated shots of a scene taken with the aim of obtaining the
best possible composition and appearance of each element.
Figure9.16showsthePhotomontage system developedbyAgarwala,Dontcheva,Agrawala
et al.(2004),whereusersdrawstrokesoverasetofpre-alignedimagestoindicatewhichre-
gions they wish to keep from each image. Once the system solves the resulting multi-label
graph cut (9.419.42), the various pieces taken from each source photo are blended together
using a variant of Poisson image blending (9.449.46). Their system can also be used to au-
tomatically composite an all-focus image from a series of bracketed focus images (Hasinoff,
Kutulakos, Durand et al. 2009)ortoremovewiresandotherunwantedelementsfromsetsof
photographs. Exercise9.10 has you implement this system and try out some of its variants.
9.3.4 Blending
Once the seams between images have been determined and unwanted objects removed, we
stillneedtoblendthe images tocompensatefor exposuredifferencesandother mis-alignments.
Thespatiallyvaryingweighting (feathering) previouslydiscussedcanoftenbe usedtoaccom-
plish this. However, it is difficultinpracticeto achievea pleasingbalance between smoothing
out low-frequency exposure variations and retainingsharpenoughtransitions to preventblur-
ring (although using a high exponent in feathering can help).
Laplacian pyramid blending. AnattractivesolutiontothisproblemistheLaplacianpyra-
mid blendingtechnique developedbyBurtandAdelson(1983b), whichwe discussed inSec-
tion3.5.5. Instead of using a single transition width, a frequency-adaptive width is used by
creating a band-pass (Laplacian) pyramid and making the transition widths within each level
afunction of the level, i.e., the same width in pixels. In practice, a small number of levels,
i.e., as few as two (BrownandLowe2007), may be adequate to compensate for differences
in exposure. The result of applying this pyramid blending is shown in Figure9.14h.
Gradient domain blending. Analternativeapproachtomulti-bandimageblendingisto
perform the operations in the gradient domain. Reconstructing images from their gradient
fields has a long history in computer vision (Horn1986), starting originally with work in
Cut pages out of pdf - remove PDF pages in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Provides Users with Mature Document Manipulating Function for Deleting PDF Pages
delete pages from pdf preview; delete page in pdf document
Cut pages out of pdf - 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 pages from pdf online; add and remove pages from a pdf
460
Computer Vision: Algorithms and Applications (September 3, 2010 draft)
(a)
(b)
(c)
Figure 9.18 Poisson image editing (P´erez,Gangnet,andBlake2003)  c 2003 ACM: (a)
The dog and the two children are chosen as source images to be pasted into the destination
swimming pool. (b) Simple pasting fails to match the colors at the boundaries, whereas (c)
Poisson image blending masks these differences.
brightness constancy (Horn1974), shape from shading (HornandBrooks1989), and photo-
metric stereo (Woodham1981). More recently, related ideas have been used for reconstruct-
ing images from their edges (ElderandGoldberg2001), removing shadows from images
(Weiss2001), separating reflections from a single image (Levin,Zomet, andWeiss2004;
Levin and Weiss 2007),andtonemappinghighdynamicrangeimagesbyreducingthemag-
nitude of image edges (gradients) (Fattal,Lischinski,andWerman2002).
P´erez, Gangnet, and Blake(2003)showhowgradientdomainreconstructioncanbeused
todo seamless objectinsertion in imageeditingapplications (Figure9.18). Rather than copy-
ing pixels, the gradientsof the newimagefragment arecopiedinstead. Theactual pixelvalues
for the copied area are then computed bysolving a Poisson equation that locally matches the
gradients while obeying the fixed Dirichlet (exact matching) conditions at the seam bound-
ary. P´erez,Gangnet,andBlake (2003) show that this is equivalent to computing an additive
membrane interpolant of the mismatch between the source and destination images along the
boundary.14 In earlier work,Peleg (1981) also proposed addinga smooth function to enforce
consistency along the seam curve.
Agarwala, Dontcheva, Agrawala etal.(2004)extendedthisideatoamulti-sourceformu-
lation, where it no longer makes sense to talk of a destination image whose exact pixelvalues
must be matched at the seam. Instead, each source image contributes its own gradient field
and the Poisson equation is solved using Neumann boundary conditions, i.e., dropping any
equations that involve pixels outside the boundary of the image.
14 Themembraneinterpolantisknowntohavenicerinterpolationpropertiesforarbitrary-shapedconstraintsthan
frequency-domain interpolants (Nielson1993).
VB.NET Image: Image Cropping SDK to Cut Out Image, Picture and
VB.NET Image Cropper Control SDK to Cut Out Part of Image. Do you need to cut out certain unwanted part from one image file by VB.NET code?
delete a page from a pdf; delete pages of pdf preview
C# HTML5 PDF Viewer SDK to view PDF document online in C#.NET
Image: Copy, Paste, Cut Image in Page. Link: Edit URL. Bookmark can view PDF document in single page or continue pages. Support to zoom in and zoom out PDF page.
delete page in pdf; delete page from pdf document
9.3 Compositing
461
Rather thansolvingthe Poisson partialdifferentialequations,Agarwala,Dontcheva,Agrawala
et al.(2004)directlyminimizeavariationalproblem,
min
C(
x
)
krC(x)   r
~
I
l(
x
)
(x)k
2
:
(9.44)
The discretized form of this equation is a set of gradient constraint equations
C(x + ^{)   C(x) =
~
I
l(
x
)
(x + ^{)  
~
I
l(
x
)
(x) and
(9.45)
C(x+
^
|)   C(x) =
~
I
l(
x
)
(x +
^
|)  
~
I
l(
x
)
(x);
(9.46)
where^{ = (1;0) and ^| = (0;1) are unit vectors in the x and y directions.
15
They then solve
the associated sparse least squares problem. Since this system of equations is only defined
up to an additive constraint,Agarwala, Dontcheva,Agrawalaetal.(2004) ask the user to
select the value of one pixel. In practice, a better choice might be to weakly bias the solution
towards reproducing the original color values.
In order to accelerate the solution of this sparse linear system, Fattal, Lischinski, and
Werman(2002)usemultigrid, whereas Agarwala, Dontcheva, Agrawala et al.(2004)use
hierarchical basis preconditioned conjugate gradient descent (Szeliski1990b,2006b) (Ap-
pendixA.5). In subsequent work,Agarwala(2007) shows how using a quadtree represen-
tation for the solution can further accelerate the computation with minimal loss in accuracy,
whileSzeliski,Uyttendaele,andSteedly (2008) show how representing the per-image offset
fields using even coarser splines is even faster. This latter work also argues that blending
in the log domain, i.e., using multiplicative rather than additive offsets, is preferable, as it
more closelymatches texture contrasts across seam boundaries. The resulting seam blending
works very well in practice (Figure9.14h), although care must be taken when copying large
gradient values near seams so that a “double edge” is not introduced.
Copying gradients directly from the source images after seam placement is just one ap-
proachtogradientdomain blending. The paper byLevin,Zomet,Pelegetal.(2004) examines
several different variants of this approach, which they call Gradient-domain Image STitching
(GIST). The techniques they examine include feathering (blending) the gradients from the
source images, as well as using an L1 norm in performing the reconstruction of the image
from the gradient field, rather than using an L2 norm as in Equation (9.44). Their preferred
technique is the L1 optimization of a feathered (blended) cost function on the original image
gradients (which they call GIST1-l
1
). Since L1 optimization using linear programming can
be slow, they develop a faster iterative median-based algorithm in a multigrid framework.
Visual comparisons between their preferred approach and what they call optimal seam on
the gradients (which is equivalent to the approach ofAgarwala,Dontcheva,Agrawalaetal.
(2004)) show similar results, while significantly improving on pyramid blending and feather-
ing algorithms.
15
At seam locations,theright hand side isreplaced by theaverageofthe gradients in the two source images.
VB.NET PDF- View PDF Online with VB.NET HTML5 PDF Viewer
Remove Image from PDF Page. Image: Copy, Paste, Cut Image in can view PDF document in single page or continue pages. Support to zoom in and zoom out PDF page.
delete a page from a pdf in preview; delete pages on pdf online
VB.NET PDF Text Extract Library: extract text content from PDF
Extract highlighted text out of PDF document. Image text extraction control provides text extraction from PDF images and image files.
delete pages from pdf file online; delete pages from a pdf
462
Computer Vision: Algorithms and Applications (September 3, 2010 draft)
Exposure compensation. Pyramidandgradientdomainblendingcandoagoodjobof
compensating for moderate amounts of exposure differences between images. However,
when the exposure differences become large, alternative approaches may be necessary.
Uyttendaele, Eden, and Szeliski(2001)iterativelyestimatealocalcorrectionbetween
eachsourceimageandablendedcomposite. First, a block-basedquadratictransfer functionis
fit betweeneach source image and aninitialfeathered composite. Next, transfer functions are
averaged with their neighbors to get a smoother mapping and per-pixel transfer functions are
computed by splining (interpolating) between neighboring block values. Once each source
image has beensmoothly adjusted, a newfeathered compositeis computed and the process is
repeated (typically three times). The results shown byUyttendaele,Eden,andSzeliski(2001)
demonstrate that this does a better job of exposure compensation than simple feathering and
can handle local variations in exposure due to effects such as lens vignetting.
Ultimately, however, the mostprincipledway todeal withexposure differences is tostitch
images in the radiance domain, i.e., to convert each image into a radiance image using its
exposure value and then create a stitched, high dynamic range image, as discussed in Sec-
tion10.2 (Eden,Uyttendaele,andSzeliski2006).
9.4 Additional reading
The literature on image stitching dates back to work in the photogrammetry community in
the 1970s (Milgram1975,1977;Slama1980). In computer vision, papers started appearing
in the early 1980s (Peleg1981), while the development of fully automated techniques came
about a decade later (MannandPicard1994;Chen1995;Szeliski1996;SzeliskiandShum
1997; Sawhney and Kumar 1999; Shum and Szeliski 2000). Thosetechniquesuseddirect
pixel-based alignment but feature-based approaches are now the norm (Zoghlami,Faugeras,
andDeriche 1997;Capeland Zisserman 1998; Cham and Cipolla 1998;Badra, Qumsieh, and
Dudek 1998; McLauchlan and Jaenicke 2002; Brown and Lowe 2007).Acollectionofsome
of these papers can be found in the book byBenosmanandKang(2001). Szeliski(2006a)
provides a comprehensive survey of image stitching, on which the material in this chapter is
based.
High-quality techniques for optimal seam finding and blending are another important
component of image stitching systems. Important developments in this field include work by
Milgram(1977), Burt and Adelson(1983b), Davis(1998), Uyttendaele, Eden, and Szeliski
(2001),P´erez, Gangnet, , andBlake (2003), Levin, Zomet, Pelegetal. (2004), Agarwala,
Dontcheva, Agrawala et al.(2004), Eden, Uyttendaele, and Szeliski(2006),and Kopf, Uyt-
tendaele, Deussen et al.(2007).
In addition to the merging of multiple overlapping photographs taken for aerial or ter-
C# PDF Text Extract Library: extract text content from PDF file in
Ability to extract highlighted text out of PDF document. Please have a quick test by using the following C# example code for text extraction from all PDF pages.
add and delete pages in pdf; delete blank page in pdf online
C# WPF PDF Viewer SDK to view PDF document in C#.NET
Image from PDF Page. Image: Copy, Paste, Cut Image in PDF pages extract, copy, paste, C#.NET rotate PDF pages, C#.NET Abilities to zoom in and zoom out PDF page.
copy pages from pdf to new pdf; delete blank page from pdf
9.5 Exercises
463
restrial panoramic image creation, stitching techniques can be used for automated white-
board scanning (HeandZhang2005;ZhangandHe2007), scanning with a mouse (Nakao,
Kashitani, and Kaneyoshi 1998), andretinalimagemosaics (Can, Stewart, Roysam et al.
2002).Theycanalsobeappliedtovideosequences(Teodosio and Bender 1993; Irani, Hsu,
and Anandan 1995; Kumar, Anandan, Irani et al. 1995; Sawhney and Ayer 1996; Massey
and Bender 1996; Irani and Anandan 1998; Sawhney, Arpa, Kumar et al. 2002; Agarwala,
Zheng, Pal et al. 2005; Rav-Acha, Pritch, Lischinski et al. 2005; Steedly, Pal, and Szeliski
2005; Baudisch, Tan, Steedly et al. 2006)andcanevenbeusedforvideocompression(Lee,
ge Chen, lungBruce Lin et al. 1997).
9.5 Exercises
Ex 9.1: Direct pixel-based alignment Takeapair of images, computea coarse-to-fineaffine
alignment (Exercise8.2) and thenblendthem usingeither averaging(Exercise6.2) or aLapla-
cian pyramid (Exercise3.20). Extend your motion model from affine to perspective (homog-
raphy) to better deal with rotational mosaics and planar surfaces seen under arbitrary motion.
Ex 9.2: Featured-based stitching Extendyour feature-basedalignmenttechniquefrom Ex-
ercise6.2 to use a full perspective model and then blend the resulting mosaic using either
averaging or more sophisticated distance-based feathering (Exercise9.9).
Ex 9.3: Cylindrical strip panoramas To generatecylindrical or sphericalpanoramas from
ahorizontally panning (rotating) camera, it is best to use a tripod. Set your camera upto take
aseries of 50% overlapped photos and then use the followingsteps to create your panorama:
1. Estimate the amount of radial distortion by taking some pictures with lots of long
straight lines near the edges of the image and then using the plumb-line method from
Exercise6.10.
2. Compute the focal length either by using a ruler and paper, as in Figure6.7 (Debevec,
Wenger, Tchou et al. 2002)orbyrotatingyourcameraonthetripod,overlappingthe
images by exactly 0% and counting the number of images it takes to make a 360
panorama.
3. Convert each of your images to cylindrical coordinates using (9.129.16).
4. Line up the images with a translational motion model using either a direct pixel-based
technique, such as coarse-to-fine incremental or an FFT, or a feature-based technique.
5. (Optional) If doinga complete 360 panorama, align the firstandlastimages. Compute
the amount of accumulated vertical mis-registration and re-distribute this among the
images.
VB.NET PDF - View PDF with WPF PDF Viewer for VB.NET
Image from PDF Page. Image: Copy, Paste, Cut Image in PDF pages extract, copy, paste, C#.NET rotate PDF pages, C#.NET Abilities to zoom in and zoom out PDF page.
delete pages pdf files; delete page numbers in pdf
C# PDF Form Data fill-in Library: auto fill-in PDF form data in C#
Able to fill out all PDF form field in C#.NET. RasterEdge XDoc.PDF SDK package provides PDF field processing features for your C# project.
delete pdf pages acrobat; delete page from pdf file
464
Computer Vision: Algorithms and Applications (September 3, 2010 draft)
6. Blend the resulting images using feathering or some other technique.
Ex 9.4: Coarse alignment Use FFT or phase correlation (Section8.1.2) to estimate the
initial alignment between successive images. How well does this work? Over what range of
overlaps? If it does not work, does aligning sub-sections (e.g., quarters) do better?
Ex 9.5: Automated mosaicing Use feature-based alignment with four-point RANSAC for
homographies (Section6.1.3, Equations (6.196.23)) or three-point RANSAC for rotational
motions (Brown,Hartley,andNist´er2007) to matchup all pairs of overlapping images.
Merge these pairwise estimates together by finding a spanning tree of pairwise relations.
Visualize the resulting global alignment, e.g., by displaying a blend of each image with all
other images that overlap it.
For greater robustness, try multiple spanning trees (perhaps randomly sampled based on
the confidence in pairwise alignments) to see if you can recover from bad pairwise matches
(Zach,Klopschitz,andPollefeys2010). As a measure of fitness, count how many pairwise
estimates are consistent with the global alignment.
Ex 9.6: Global optimization Use the initialization from the previous algorithm to perform
afull bundle adjustment over all of the camera rotations and focal lengths, as described in
Section7.4 and byShumandSzeliski(2000). Optionally, estimate radial distortion parame-
ters as well or support fisheye lenses (Section2.1.6).
As inthe previous exercise, visualize the quality of your registration bycreating compos-
ites of each input image with its neighbors, optionally blinking between the original image
and the composite to better see mis-alignment artifacts.
Ex 9.7: De-ghosting Use the results of the previous bundle adjustment to predict the loca-
tion of each feature in a consensus geometry. Use the difference between the predicted and
actual feature locations to correct for small mis-registrations, as described in Section9.2.2
(ShumandSzeliski2000).
Ex 9.8: Compositing surface Choose a compositing surface (Section9.3.1), e.g., a single
referenceimage extendedtoa larger plane, asphere representedusing cylindricalor spherical
coordinates, a stereographic “little planet” projection, or a cube map.
Project all of your images ontothis surface and blend them with equalweighting, for now
(just to see where the original image seams are).
Ex 9.9: Feathering and blending Compute afeather(distance) mapfor each warpedsource
image and use these maps to blend the warped images.
Alternatively, use Laplacian pyramid blending (Exercise3.20) or gradient domain blend-
ing.
VB.NET PDF - WPF PDF Viewer for VB.NET Program
Image to PDF. Image: Remove Image from PDF Page. Image: Copy, Paste, Cut Image in Users can rotate PDF pages, zoom in or zoom out PDF pages and go to any pages
acrobat remove pages from pdf; delete pages from pdf acrobat reader
VB.NET PDF- HTML5 PDF Viewer for VB.NET Project
Remove Image from PDF Page. Image: Copy, Paste, Cut Image in NET comment annotate PDF, VB.NET delete PDF pages, VB.NET PDF page and zoom in or zoom out PDF page
acrobat extract pages from pdf; delete pages pdf document
9.5 Exercises
465
Ex 9.10: Photomontage and object removal Implementa“PhotoMontage” system inwhich
users can indicate desired or unwantedregions inpre-registered images usingstrokes or other
primitives (such as bounding boxes).
(Optional) Deviseanautomaticmovingobjects remover (or “keeper”) byanalyzing which
inconsistent regions are more or less typical given some consensus (e.g., median filtering) of
the aligned images. Figure9.17 shows an example where the moving object was kept. Try
to make this work for sequences with large amounts of overlaps and consider averaging the
images to make the moving object look more ghosted.
466
Computer Vision: Algorithms and Applications (September 3, 2010 draft)
Chapter 10
Computational photography
10.1 Photometric calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
10.1.1 Radiometric response function . . . . . . . . . . . . . . . . . . . . . 470
10.1.2 Noise level estimation . . . . . . . . . . . . . . . . . . . . . . . . . 473
10.1.3 Vignetting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474
10.1.4 Optical blur (spatial response) estimation . . . . . . . . . . . . . . . 476
10.2 High dynamic range imaging . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
10.2.1 Tone mapping. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 487
10.2.2 Application: Flash photography . . . . . . . . . . . . . . . . . . . . 494
10.3 Super-resolution and blur removal . . . . . . . . . . . . . . . . . . . . . . . 497
10.3.1 Color image demosaicing . . . . . . . . . . . . . . . . . . . . . . . 502
10.3.2 Application: Colorization . . . . . . . . . . . . . . . . . . . . . . . 504
10.4 Image matting and compositing. . . . . . . . . . . . . . . . . . . . . . . . . 505
10.4.1 Blue screen matting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 507
10.4.2 Natural image matting . . . . . . . . . . . . . . . . . . . . . . . . . 509
10.4.3 Optimization-based matting . . . . . . . . . . . . . . . . . . . . . . 513
10.4.4 Smoke, shadow, and flash matting . . . . . . . . . . . . . . . . . . . 516
10.4.5 Video matting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518
10.5 Texture analysis and synthesis . . . . . . . . . . . . . . . . . . . . . . . . . 518
10.5.1 Application: Hole filling and inpainting . . . . . . . . . . . . . . . . 521
10.5.2 Application: Non-photorealistic rendering. . . . . . . . . . . . . . . 522
10.6 Additional reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 524
10.7 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 526
468
Computer Vision: Algorithms and Applications (September 3, 2010 draft)
(a)
(b)
(c)
(d)
Figure 10.1 Computational photography: (a) merging multiple exposures to create high
dynamic range images (DebevecandMalik1997)  c 1997 ACM; (b) merging flash and non-
flash photographs; (Petschnigg,Agrawala,Hoppeetal.2004)
c
2004 ACM; (c) image mat-
ting and compositing; (Chuang,Curless,Salesinetal.2001)  c 2001 IEEE; (d) hole filling
with inpainting (Criminisi,P´erez,andToyama2004)  c 2004 IEEE.
Documents you may be interested
Documents you may be interested