In this deliverable, all the three stages in image quilting are finished, and the synthesized textures are applied to more complicated scenes.
In addition to introducing overlap of the blocks and choose one which agrees with its neighbors, which were done in the first deliverable, what we do now is to find a cut of the overlap region, such that the "error" (the difference between the colors of the overlap region) along the cut is minimum in some sense. Suppose the texture we want to synthesize consists of m rows and n columns of blocks. First, a block is chosen from the template randomly and it is pasted on the top left corner of the new texture. Then a second block is chosen such that its overlap region with the first block which we have just pasted is small, and the vertical minimum boundary cut is calculated before we paste this second block to the right of the first one. This procedure is continued until all the blocks on the first row are done. The (n+1)st block is pasted in a similar way except that we are now calculating the horizontal minimum cut instead of the vertical one. When it's time to paste the (n+2)nd block, the problem is that we have to compute both the vertical and horizontal minimum cut with the block to its left and the one above it, and find the intersection of these two cuts. In this procedure, the user has to specify both size of the block and size of the overlap region, which play an important role in this algorithm.
Texture mapping is revised so that more than one kind of texture can be used for the same scene, or even the same object. In the snapshot below, the textures of the sky, the ground, the wagon, bark of the tree are synthesized from smaller texture templates. For the objects like the sky and the ground, we use few polygons, which means that the texture to be mapped onto them should be very large, or the scene would be very obscure. That is one of the reason why we need to do texture synthesis.
In each group,
first one: template
second one: synthesized texture with minimum boundary cut
third one (if there is a third one): synthesized texture without minimum boundary cut
From the above images we can see that making the minimum boundary cuts is not a crucial part of the algorithm for most textures.
A Snapshot of Texture Mapping
Goto Third Deliverable
Last modified: May 06, 2002