seamless image stitching in the gradient domain

12
Seamless Image Stitching in the Gradient Domain Anat Levin Assaf Zomet Shmuel Peleg Yair Weiss E-Mail: {alevin,zomet,peleg,yweiss}@cs.huji.ac.il School of Computer Science and Engineering, The Hebrew University of Jerusalem, 91904, Jerusalem, Israel Abstract. The quality of image stitching is measured by the similarity of the stitched image to each of the input images, and by the visibility of the seam between the stitched images. In order to define and get the best possible stitching, we introduce several formal cost functions for the evaluation of the quality of stitching. In these cost functions, the similarity to the input images and the visibility of the seam are defined in the gradient domain, minimizing the disturbing edges along the seam. A good image stitching will optimize these cost functions, overcoming both photometric inconsistencies and geometric misalignments between the stitched images. This approach is demonstrated in various applications, including generation of panoramic images, object blending, and removal of compression artifacts. Comparisons with existing methods show the benefits of optimizing the measures in the gradient domain.

Upload: shamash

Post on 30-Nov-2023

0 views

Category:

Documents


0 download

TRANSCRIPT

Seamless Image Stitching in the Gradient Domain

Anat Levin Assaf Zomet Shmuel Peleg Yair Weiss

E-Mail: {alevin,zomet,peleg,yweiss}@cs.huji.ac.il

School of Computer Science and Engineering,The Hebrew University of Jerusalem,

91904, Jerusalem, Israel

Abstract. The quality of image stitching is measured by the similarity of the stitched image to each of the input images,and by the visibility of the seam between the stitched images.In order to define and get the best possible stitching, we introduce several formal cost functions for the evaluation of thequality of stitching. In these cost functions, the similarity to the input images and the visibility of the seam are definedin the gradient domain, minimizing the disturbing edges along the seam. A good image stitching will optimize these costfunctions, overcoming both photometric inconsistencies and geometric misalignments between the stitched images.This approach is demonstrated in various applications, including generation of panoramic images, object blending, andremoval of compression artifacts. Comparisons with existing methods show the benefits of optimizing the measures in thegradient domain.

21 Introduction

Image stitching is a common practice in the generation of panoramic images and applications such as object insertion, superresolution [10] and texture synthesis [6]. An example of image stitching is shown in Fig 1. Two imagesI1,I2 capture differentportions of the same scene, with an overlap region viewed in both images. The images should be stitched to generate a mosaicimageI. A simple pasting of a left region fromI1 and a right region fromI2 produces visible artificial edges in the seambetween the images, due to differences in camera gain, scene illumination or geometrical misalignments.

Input image11 Pasting ofI1 andI2

Input imageI2 Stitching result

Fig. 1. Image stitching. On the left are the input images. The darkened rectangles mark the overlap regionω. On top right is a simple pastingof the input images. On the bottom right is the result of the GIST1 algorithm.

The aim of a stitching algorithm is to produce a visually plausible mosaic with two desirable properties: First, the mosaicshould be assimilar as possible to the input images, both geometrically and photometrically. Second, the seam between thestitched images should beinvisible. While these requirements are widely acceptable for visual examination of a stitchingresult, their definition as quality criteria was either limited or implicit in previous approaches.

In this work we present several cost functions for these requirements, and define the mosaic image as their optimum. Thestitching quality in the seam region is measured in the gradient domain. The mosaic image should contain a minimal amountof seam artifacts, i.e. a seam should not introduce a new edge that does not appear in eitherI1 or I2. As image dissimilarity,the gradients of the mosaic imageI are compared with the gradients ofI1, I2. This reduces the effects caused by globalinconsistencies between the stitched images. We call our framework GIST: Gradient-domain Image STitching.

We demonstrate this approach in several applications, including panoramic mosaicing, object blending and removal ofcompression artifacts. Analytical and experimental comparisons of our approach to existing methods show the benefits inworking in the gradient domain, and in directly minimizing gradient artifacts.

1.1 Related Work

There are two main approaches to image stitching in the literature, assuming that the images have already been aligned. Op-timal seam algorithms[13, 6, 5] search for a curve in the overlap region on which the differences betweenI1, I2 are minimal.Then each image is copied to the corresponding side of the seam. In case the difference betweenI1, I2 on the curve is zero,no seam gradients are produced in the mosaic imageI. However, the seam is visible when there is no such curve, for example

3when there is a global intensity difference between the images. This is illustrated on the first row of Fig. 2. In addition, opti-mal seam methods are less appropriate when thin strips are taken from the input images, as in the case of manifold mosaicing[15].

The second approach minimizes seam artifacts by smoothing the transition between the images. In Feathering [20] or alphablending, the mosaic imageI is a weighted combination of the input imagesI1, I2. The weighting coefficients (alpha mask)vary spatially as a function of the distance from the seam. In pyramid blending[1], different frequency bands are combinedwith different alpha masks. Lower frequencies are mixed over a wide region around the seam, and fine details are mixed ina narrow region around the seam. This produces gradual transition in lower frequencies, while reducing edge duplications intextured regions. A related approach was suggested in [14], where a smooth function was added to the input images to forcea consistency between the images in the seam curve. In case there are misalignments between the images[20], these methodstend to leave artifacts in the mosaic image such as double edges, as illustrated on the second row of Fig. 2.

In our approach we compute the mosaic imageI by an optimization process that uses image gradients. Computation inthe gradient domain was recently used in compression of dynamic range[7], image editing [16], image inpainting [2] andseparation of images to layers [23, 19, 8, 11]. The closest work to ours was done by Perez et. al. [16], who suggest to editimages by manipulating their gradients. One of the editing application is object insertion, where an object is cut manuallyfrom an image, and inserted to a new background image. The insertion is done by solving the Poisson equation for thegradient field of the inserted object, with boundary conditions defined by the background image. In the discussion section wecompare our approach to the work by Perez et. al.

Input image 11 Input image 12 Feathering Pyramid blending Optimal Seam GIST

Fig. 2. Comparing stitching methods with various sources for inconsistencies between the input images. The left side ofI1 is stitched toright side ofI2. Optimal seam methods produce a seam artifact in case of photometric inconsistencies between the images (first row).Feathering and pyramid blending produce double edges in case of horizontal misalignments (second row). With vertical misalignments(third row), the stitching is less visible when Feathering and GIST are used.

2 GIST: Image Stitching in the Gradient Domain

We describe two approaches to image stitching in the gradient domain. Section 2.1 describes GIST1, where the mosaic imageis inferred directly from the derivatives of the input images. Section 2.2 describes GIST2, a two-steps approach to imagestitching. Section 2.3 compares the two approaches to each other, and with other stitching algorithms.

2.1 GIST1: Optimizing a Cost Function over Image Derivatives

The first approach, GIST1, computes the stitched image by minimizing a cost functionEp. Ep is a dissimilarity measurebetween the derivatives of the stitched image and the derivatives of the input images.

4Specifically, letI1, I2 be two aligned input images. Letτ1 (τ2 resp.) be the region viewed exclusively in imageI1 (I2 resp.),and letω be the overlap region, as shown in Fig. 1, withτ1 ∩ τ2 = τ1 ∩ ω = τ2 ∩ ω = ∅. Let W be a weighting mask image.

The stitching resultI of GIST1 is defined as the minimum ofEp with respect toI:

Ep

(I; I1, I2, W

)= dp(∇I ,∇I1, τ1, W ) + dp(∇I ,∇I2, τ2, U −W ) + dp(∇I ,∇I1, ω, W ) + dp(∇I ,∇I2, ω, U −W ) (1)

whereU is a uniform image, anddp(J1, J2, φ, W ) is the weighted distance between the two fieldsJ1, J2 onφ:

dp(J1, J2, φ, W ) =∑

q∈φ

W (q) ‖ J1(q)− J2(q) ‖pp (2)

with ‖ · ‖p as the p-norm.The first two terms in Eq. 1 express the dissimilarity of the mosaic image to the input images in the respective regions. A

dissimilarity in the gradient domain is invariant to the mean intensity of the image. In addition it is less sensitive to smoothglobal differences between the input images, e.g. due to non-uniformness in the camera photometric response and due toscene shading variations.

The last two terms in Eq. 1 constrain the gradients in the overlap region, penalizing for derivatives which are inconsistentwith any of the input images. In image locations where bothI1 andI2 have low gradients, these terms penalize for highgradient values in the mosaic image. This property is useful in eliminating false stitching edges.

The choice of norm (parameterp) has implications on both the optimization algorithm and the mosaic image. The min-imization ofEp (Eq.1) forp ≥ 1 is convex, and hence efficient optimization algorithms can be used. Section 3 describes aminimization scheme forE2 by existing algorithms, and a novel fast minimization scheme forE1. The mask imageW waseither a uniform mask (forE1) or the Feathering mask (forE2), which is linear with the signed-distance from the seam. Theinfluence of the choice ofp on the result image is addressed in the following sections, with the introduction of alternativestitching algorithms in the gradient domain.

2.2 GIST2: Stitching Derivative Images

A simpler approach is to stitch the derivatives of the input images:

1. Compute the derivatives of the input images∂I1∂x ,∂I1

∂y ,∂I2∂x ,∂I2

∂y .

2. Stitch the derivative images to form a fieldF = (Fx, Fy). Fx is obtained by stitching∂I1∂x and ∂I2

∂x , andFy is obtained bystitching ∂I1

∂y and ∂I2∂y .

3. Find the mosaic image whose gradients are closest toF . This is equivalent to minimizingdp(∇I, F, π, U) whereπ isthe entire image area andU is a uniform image.

In stage (2) above, any stitching algorithm may be used. We have experimented with Feathering, pyramid blending [1], andoptimal seam. For the optimal seam we used the algorithm in [6], finding the curvex = f(y) that minimizes the sum ofabsolute differences in the input images. Stage (3), the optimization under`1, `2, is described in Section 3. Unlike the GIST1algorithm described in the previous section, we found minor differences in the result images when minimizingdp under`1and`2.

2.3 Which Method to Use ?

In the previous sections we presented several stitching methods. Since stitching results are tested visually, selecting the mostappropriate method may be subject to personal taste. However, based on the following analysis in conjunction with theexperiments in Section 4, we recommend using GIST1 under`1.

In Theorem 1 we show that GIST1 under`1 is as good as the optimal seam methods when a perfect seam exists. Hencethe power of GIST1 under1 to overcome geometric misalignments similarly to the optimal seam methods. The advantage ofGIST1 over optimal seam methods is when there is no perfect seam, for example due to photometric inconsistencies betweenthe input images. This was validated in the experiments.

Theorem 2 shows an equivalence between GIST1 under`2 and Feathering of image derivatives (GIST2) under`21.

Both theorems provide insight into the difference between GIST1 under`1 and under 2: Under`2, the algorithm tends tomix the derivatives and hence blur the texture in the overlap region. Under`1, the algorithm tends to behave similarly to theoptimal seam methods, while reducing photometric inconsistencies.

1 Note that Feathering of image derivatives is different from Feathering of the images.

5

Optimal seam Pyramid blending Feathering

Optimal seam on the gradients Pyramid blending on the gradients GIST1

Fig. 3. Stitching in the gradient domain. The input images appear in Fig 1, with the overlap region marked by a black rectangle. With theimage domain methods (top panels) the stitching is observable. Gradient-domain methods (bottom panels) overcome global inconsistenciesbetween the images.

Theorem 1. Let I1, I2 be two input images for a stitching algorithm, and assume there is a curvex = f(y), such that foreachq ∈ {(f(y), y)}, I1(q) = I2(q). LetU be a uniform image. Then the optimal seam solutionI, defined below, is a globalminimum ofEp(I; I1, I2, U) defined in Eq.1, for any0 < p ≤ 1.

I ={

I1(x, y) x < f(y)I2(x, y) x ≥ f(y)

Proof: Let ω be the overlap region. Letψ1 be the region wherex < f(y) and letψ2 be the regionx ≥ f(y). The value ofEp(I; I1, I2, U) on the imageI is:

Ep (I; I1, I2, U) = 0 + dp(∇I,∇I1, ω, U) + dp(∇I,∇I2, ω, U) =∑q∈ω∩ψ2

‖ ∇I(q)−∇I1(q) ‖pp +

∑q∈ω∩ψ1

‖ ∇I(q)−∇I2(q) ‖pp=∑

q∈ω‖ ∇I2(q)−∇I1(q) ‖p

p

Let I be another solution. Using the concavity of`p, 0 < p ≤ 1, we show thatEp(I; I1, I2, U) ≥ Ep(I; I1, I2, U):

Ep(I; I1, I2, U) =dp(∇I ,∇I1, ω, U) + dp(∇I ,∇I2, ω, U) + dp(∇I,∇I1, τ1, U) + dp(∇I ,∇I2, τ2, U) ≥∑

q∈ω(‖ ∇I(q)−∇I1(q) ‖p

p + ‖ ∇I(q)−∇I2(q) ‖pp) ≥∑

q∈ω‖ ∇I2(q)−∇I1(q) ‖p

p= Ep(I; I1, I2, U)

Result 1 GIST1 under 1 and the optimal seam method give the same result when there is a consistent seam between theinput images

In case there is no consistent seam, the optimal seam method and GIST1 give different results. In Section 4 we comparetheir results, and show the benefit in using GIST1.

The second result shows the equivalence between GIST1 under`2 and Feathering of image derivatives under`2 (GIST2):

Theorem 2. Let I1, I2 be two input images for a stitching algorithm, and letW be a Feathering mask. Letω, the overlapregion ofI1, I2, be the entire image (without loss of generality, asW (q) = 1 for q ∈ τ1, andW = 0 for q ∈ τ2). LetIGist

be the minimum ofE2(I; I1, I2, W ) defined in Eq. 1. LetF be the following field:

F = W (q)∇I1(q) + (1−W (q))∇I2(q)

ThenIGist is the image with the closest gradient field toF under`2Proof: Letfx, fy be the derivative convolution operators, and letFxj = Ij ∗ fx, Fyj = Ij ∗ fy. Then:

E2(I; I1, I2,W ) =∑q∈ω W (q)

[((I ∗ fx)(q)− Fx1(q))2 + ((I ∗ fy)(q)− Fy1(q))2

]+∑

q∈ω(1−W (q))[((I ∗ fx)(q)− Fx2(q))2 + ((I ∗ fy)(q)− Fy2(q))2

]

6DefinePW as the linear operator multiplying each image locationq by a weightW (q), and letfrx , fr

y be the adjoint operatorsof fx, fy. Taking the derivatives ofE2(I; I1, I2,W ) with respect toI and equating to 0, we get for each image locationq:

frx ∗ PW (I ∗ fx) + fr

x ∗ P1−W (I ∗ fx) + fry ∗ PW (I ∗ fy) + fr

y ∗ P1−W (I ∗ fy) =fr

x ∗ PW (Fx1) + frx ∗ P1−W (Fx2) + fr

y ∗ PW (Fy1) + fry ∗ P1−W (Fy2)

Noting thatP1−W + PW is the identity operator, we get the Poisson equation:

4I(q) = div(W (q)F1(q) + (1−W (q))F2(q))

Where4 is the Laplacian operator,F1 = (Fx1, Fy1), F2 = (Fx2, Fy2). Hence the minimum ofE2(I; I1, I2) is obtained withthe image having the closest derivatives toF under`2 norm.

Result 2 GIST1 under 2 is equivalent to Feathering of the gradient images followed by a solution of the Poisson equation(GIST2)

3 Implementation details

We have implemented a minimization scheme for Eq. 1 under`1 and under 2.Eq. 1 defines a set of linear equations in the image intensities, with the derivative filter taps as the equations coefficients.

Similarly to [23, 19], we found that good results are obtained using forward-differencing derivative filters12 [1 −1] . In the

`1 case, the results were further enhanced by incorporating additional equations using derivative filters in multiple scales. Inour experiments we added the filter corresponding to forward-differencing in the 2nd level of a Gaussian pyramid. This filteris obtained by convolving the filter[1 0 −1] with a vertical and a horizontal Gaussian filter (1

4 [1 2 1] ). Color imageswere handled by applying the algorithm to each of the color channels separately.

The minimum to Eq. 1 under2 with maskW was shown in theorem 2 to be the image with the closest derivatives to thefollowing field F under`2 norm :

F =

W (q)∇I1(p) q ∈ τ1

W (q)∇I1(x, y) + (1−W (q))∇I2(x, y)) q ∈ ω∇I2(x, y) q ∈ τ2

The solution can be obtained by various methods, e.g. de-convolution [23], FFT [9] or multi-grid solvers [17]. The resultspresented in this paper were obtained by FFT.

As for the`1 optimization, we found using a uniform maskU to be sufficient. Solving the linear equations under`1 canbe done by linear programming as follows [4]:

Min :∑

i(z+i + z−i )

Subject to :Ax + (z+ − z−) = bx ≥ 0, z+ ≥ 0, z− ≥ 0

The entries in matrixA are defined by the coefficients of the derivative filters, and the vectorb contains the known derivativesof imagesI1, I2. x, the vector of unknowns, is a vectorization of the result image.

The linear program was solved using LOQO, an efficient software package [21]. A typical execution time for a200× 300image on a Pentium 4 using this package was around 2 minutes. Since no boundary conditions were used, the solution wasdetermined up to a uniform intensity shift. This shift can be determined in various ways. We chose to set it according to themedian of the values of the input imageI1 and the median of the corresponding region in the mosaic image.

3.1 Iterative `1 Optimization

A faster implementation for the1 optimization can be achieved by an iterative algorithm in the image domain. We firstdescribe the algorithm when the forward differencing derivatives are used with kernel1

2 [1 −1] , and then generalize toother convolution filters.

Let Dxj , Dyj be the forward-differencing derivatives of input imageIj . The iterative`1 optimization is performed asfollows:

– Initialize the solution imageI

7– Iterate until convergence:• for all x,y in the image, updateI(x, y) as follows:

I(x, y) ← 2 ∗median(∪k{ I(x + 1, y)−Dxk(x, y), I(x− 1, y) + Dxk(x− 1, y),I(x, y + 1)−Dyk(x, y), I(x, y − 1) + Dyk(x, y − 1) }) (3)

For an even number of samples, the median is taken to be the average of the two middle samples. In regionsτj where a singleimageIj is used, the median is taken on the predictions ofI(x, y) given its four neighbours and the derivatives of imageIj .For example, when the derivatives of imageIj are 0, the algorithm performs an iterated median filter of the neighbouringpixels. In the overlap regionω of I1, I2, the median is taken over the predictions from both images.

With the forward-differencing derivatives, the algorithm has a simple implementation for parallel architectures. Definea ’checkerboard’ partitions of the pixels, with the ’black’ locations asB = {(x, y)|mod(x − y, 2) = 0} and the ’White’locations asW = {(x, y)|mod(x − y, 2) = 1}. Since in each iteration, the pixels inW are influenced only by pixels inBand vice-versa, the update stage (3) can be applied to all pixels inW in parallel, and similarly to all pixels inB.

The generalization of the algorithm for other kernels is straight-forward. Let{fk(u, v)} be the derivative kernels. LetDk

j = Ij ∗ fk, where ’*’ is the convolution operator. The update stage (3) is modified to a weighted median:

I(x, y) ← weightedMedianj,k,(u,v)|fk(u,v)6=0({(Dk

j (u, v)−∑(m,n)6=(x,y) fk(u−m, v − n)I(m,n)

fk(u, v),

1fk(u, v)

)})

whereu = u − x, v = v − y, and a weighted median of a set of sorted samples{si}Ni=1 and their corresponding weights

{wi}Ni=1 is defined by:

weightedMedian(si, wi) ≡ sj |j = argmink

i≤k

wi ≥ 12

i≤N

wi

At every iteration, the algorithm performs a coordinate descent and improves the cost function (unless a stationary pointis reached). Since the cost function is bounded from below, the algorithm always converges. However, although the costfunction is convex, the algorithm does not always converge to the global optimum of the function2. To improve the algorithmconvergence and speed, we combined it in a multi-resolution scheme. In extensive experiments we have conducted with themulti-resolution extension the algorithm always converged to the global optimum.

4 Experiments

In the experiments we applied GIST to various applications including mosaicing, object blending and reduction of compres-sion artifacts.

First, we compared our method to existing image stitching techniques, which work on the image intensity domain: Feath-ering [20], Pyramid Blending [1], and ’optimal seam’ (Implemented as in [6]). The experiments (Fig. 3) validated the ad-vantage in working in the gradient for overcoming photometric inconsistencies. Second, we examined the various techniquesdescribed in Section 2.2 and compared their results with GIST1. See for example Fig. 4, 5.

4.1 Stitching Panoramic Views

The natural application for image stitching is the construction of panoramic pictures from multiple ordinary pictures. Thereare several sources of inconsistencies between the input images. Geometrical misalignments between input images is causedby lens distortions, by the presence of moving objects, and by motion parallax. Photometric inconsistencies between inputimages may be caused by a varying gain, by lens vignetting, by illumination changes, specularities etc.

The input images in our experiments were captured from different camera positions, and were aligned by a 2D parametrictransformation. Local misalignments were unavoidable due to parallax, and photometric inconsistencies were due to differ-ences in illumination and in camera gain. Results of Panoramic mosaicing are shown in Figs 3,4,5. Fig 3 compares gradientmethods vs. image domain methods. Fig. 4,5 demonstrate the performance of the stitching algorithms when the input imagesare misaligned. In all our experiments GIST1 under`1 gave the best results, in some cases comparable with other techniques:In Fig. 4 comparable with Feathering, and in 5 comparable with ’optimal seam’.

2 Consider for example an image whose left part is white and the right part is black. When applying the algorithm on the derivatives ofthis image, the uniform image is a stationary point of the algorithm

8

Input image 1 Input image 2 GIST1

(a) Optimal seam (b) Feathering (c)Pyr blending (d)Optimal seam - G (e)Feathering - G (f)Pyr blending - G. (g) GIST1 -`1

Fig. 4. A comparison between various image stitching methods. On top are the input image and the result of GIST1 under`1. The imageson bottom are cropped from the results of various methods. (a-c) Image domain methods, (d-f) GIST2, (g) GIST1 -`1. The seam is visiblein (a),(c) and (d).

9

Input image 1 Input image 2 GIST1

(a) Optimal seam (b) Feathering (c)Pyr blending (d)Optimal seam - G (e)Feathering - G (f)Pyr blending - G. (g) GIST1 -`1

Fig. 5. A comparison between various image stitching methods. On top are the input image and the result of GIST1 under`1. The imageson bottom are cropped from the results of various methods. (a-c) Image domain methods, (d-f) GIST2, (g) GIST1 -`1. When there arelarge misalignments, optimal seam and GIST1 produce less artifacts.

10

Fig. 6. A police application for generating composite portraits. The top panel shows the image parts used in the composition. The bottompanel shows, from left to right, the results of pasting the original parts, GIST1 under`1, GIST1 under 2 and pyramid blending in thegradient domain. Note the discontinuities in the eyebrows.

4.2 Stitching Object Parts

Here we consider combining images of objects of the same class having different appearances. Objects parts from differentimages are combined to generate the final image. This can be used, for example, by the police, in the construction of asuspect’s composite portrait from parts of faces in the database. Fig 6 shows an example for this application, where GIST1 iscompared to pyramid blending in the gradient domain. Another example for combination of parts is shown in Fig. 8.

4.3 Removing Compression Artifacts

generate images with gradient artifacts along the block boundaries. A modified version of GIST1 was applied to highlycompressed JPEG images in order to reduce block artifacts, by minimizing the following criterion:

Ep (I; I0) = dp(∇I, I0,∪i, π, W ) + k2

∑i

∑p∈ψi

|I(p)−DCi| (4)

WhereI0 is the compressed input image,ψi is the i − th image block,W is uniform except block boundaries, whereit has a low valuek1, andDCi is theDC component of blocki. The parameter2k1, k2 can be tuned to control the resultsmoothness.

5 Discussion

A novel approach to image stitching was presented, with two main components: First, images are combined in the gradientdomain rather than in the intensity domain. This reduces global inconsistencies between the stitched parts due to illumina-tion changes and changes in the camera photometric response. Second, the mosaic image is inferred by optimization overimage gradients, thus reducing seam artifacts and edge duplications. Experiments comparing gradient domain stitching algo-rithms and existing image domain stitching show the benefit of stitching in the gradient domain. Even though each stitchingalgorithm works better for some images and worse for others, we found that GIST1under`1 always worked well and werecommend it as the standard stitching algorithm. The use of the`1 norm was especially valuable in overcoming geometricalmisalignments of the input images.

11

Fig. 7. Reduction of compression artifacts. See text for details.

(a) (b) (c) (d)

Fig. 8. A combination of images of George W. Bush taken at different ages. On top are the input images and the combination pattern. Onthe bottom left are, from left to right, the results of GIST1 Stitching under`1 (a) and under2 (b), the results of pyramid blending in thegradient domain (c), and pyramid blending in the image domain(d).

12 The closest approach to ours was presented recently by Perez et. al. [16] for an application of image editing. There aretwo main differences with this work: First, in this work we optimize over the gradients ofboth images in the overlapregion,while Perez et. al. optimized over the gradients of the inserted object and the intensities of the background image. Second,the optimization is done under different norms, while the Poisson equation is defined for the`2 norm. Both differences haveconsiderable influence on the results, especially in textured regions.

Image stitching was presented as a search for an optimal solution to an image quality criterion. The optimization of thiscriterion under norms1, `2 is convex, having a single solution. Encouraged by the results obtained by this approach, webelieve that it will be interesting to explore alternative criteria for image quality. One direction can use results on statisticsof filter responses in natural images [12, 18, 22]. Another direction is to incorporate additional image features in the qualitycriterion, such as local curvature. Successful results in image inpainting[2, 3] were obtained when image curvature was usedin addition to image derivatives.

References

1. E. H. Adelson, C. H. Anderson, J. R. Bergen, P. J. Burt, and Ogden J. M. Pyramid method in image processing.RCA Engineer,29(6):33–41, 1984.

2. C. Ballester, M. Bertalmio, V. Caselles, G. Sapiro, and J. Verdera. Filling-in by joint interpolation of vector fields and gray levels.IEEE Trans. Image Processing, 10(1), August 2001.

3. M. Bertalmo, G. Sapiro, V. Caselles, and C. Ballester. Image inpainting. InSIGGRAPH, July 2000.4. V. Chvatal. Linear Programming. W.H. Freeman and CO., New York, 1983.5. J.E. Davis. Mosaics of scenes with moving objects. InConf. on Computer Vision and Pattern Recognition, pages 354–360, 1998.6. A.A. Efros and W.T. Freeman. Image quilting for texture synthesis and transfer.Proceedings of SIGGRAPH 2001, pages 341–346,

August 2001.7. R. Fattal, D. Lischinski, and M. Werman. Gradient domain high dynamic range compression.Proceedings of SIGGRAPH 2001, pages

249–356, July 2002.8. G.D. Finlayson, S.D. Hordley, and M.S. Drew. Removing shadows from images. InEuropean Conf. on Computer Vision, page IV:823,

2002.9. R.T. Frankot and R. Chellappa. A method for enforcing integrability in shape from shading algorithms.IEEE Trans. on Pattern

Analysis and Machine Intelligence, 10(4):439–451, July 1988.10. W.T. Freeman, E.C. Pasztor, and O.T. Carmichael. Learning low-level vision. InInt. Conf. on Computer Vision, pages 1182–1189,

1999.11. A. Levin, A. Zomet, and Y. Weiss. Learning to perceive transparency from the statistics of natural scenes. InAdvances in Neural

Information Processing Systems, volume 15. The MIT Press, 2002.12. S.G. Mallat. A theory for multiresolution signal decomposition: The wavelet representation.IEEE Trans. on Pattern Analysis and

Machine Intelligence, 11(7):674–693, July 1989.13. D.L. Milgram. Computer methods for creating photomosaics.IEEE Trans. Computer, 23:1113–1119, 1975.14. S. Peleg. Elimination of seams from photomosaics.Computer Graphics and Image Processing, 16(1):90–94, May 1981.15. S. Peleg, B. Rousso, A. Rav-Acha, and A. Zomet. Mosaicing on adaptive manifolds.IEEE Trans. on Pattern Analysis and Machine

Intelligence, 22(10):1144–1154, October 2000.16. P. Perez, M. Gangnet, and A. Blake. Poisson image editing.Proceedings of SIGGRAPH 2003, pages 313–318, July 2003.17. W.H. Press, B.P. Flannery, S.A. Teukolsky, and W.T. Vetterling.Numerical Recipes: The Art of Scientific Computing. Cambridge

University Press, Cambridge (UK) and New York, 2nd edition, 1992.18. E.P. Simoncelli. Bayesian denoising of visual images in the wavelet domain.BIWBM, 18:291–308, 1999.19. M.F. Tappen, W.T. Freeman, and E.H. Adelson. Recovering intrinsic images from a single image. InAdvances in Neural Information

Processing Systems, volume 15. The MIT Press, 2002.20. M. Uyttendaele, A. Eden, and R. Szeliski. Eliminating ghosting and exposure artifacts in image mosaics. InConf. on Computer Vision

and Pattern Recognition, pages II:509–516, 2001.21. R. Vanderbei. Loqo, http://www.orfe.princeton.edu/ loqo/, 2000.22. M.J. Wainwright and E.P. Simoncelli. Random cascades of gaussian scale mixtures for natural images. InInt. Conf. on Image

Processing, pages I:260–263, 2000.23. Y. Weiss. Deriving intrinsic images from image sequences. InInt. Conf. on Computer Vision, pages II: 68–75, 2001.