Creation of Rectangular Images from Input Images
First Claim
1. A method comprising:
- a) receiving a plurality of input images;
b) stitching the plurality of input images together to create a stitched image that has irregular boundaries;
c) expanding the stitched image to occupy a target rectangle to create a stretched rectangular image;
d) overlaying a mesh on the stretched rectangular image;
e) warping the mesh back to a shape of the stitched image to create a warped mesh;
f) overlaying the warped mesh on the stitched image;
g) creating, by a hardware processor, an output mesh by changing positions of vertexes of the warped mesh in a way that reduced the value of an energy function which includes a shape preservation function, a straight-line preservation function, and a boundary constraint function; and
h) warping the stitched image according to the output mesh.
3 Assignments
0 Petitions
Accused Products
Abstract
Stitched images generated from combinations of multiple separate images mostly have irregular boundaries. Users generally prefer rectangular boundaries. Techniques for warping an image with irregular boundaries to give the image rectangular boundaries are disclosed herein. Preliminary warping of the image into the rectangle provides a rectangular shape on which to overlay a mesh. The image is reverted to its original shape with irregular boundaries and the mesh is warped accordingly. Global optimization is applied to the image by finding an energy minimum, or reduced energy below a threshold, for a function that gives the image a rectangular shape while preserving shapes and preserving straight lines. The mesh is warped according to the solution of the function and the image is stretched and/or compressed along with the mesh. This approach generates results that are qualitatively more visually attractive than other contemporary techniques.
53 Citations
20 Claims
-
1. A method comprising:
-
a) receiving a plurality of input images; b) stitching the plurality of input images together to create a stitched image that has irregular boundaries; c) expanding the stitched image to occupy a target rectangle to create a stretched rectangular image; d) overlaying a mesh on the stretched rectangular image; e) warping the mesh back to a shape of the stitched image to create a warped mesh; f) overlaying the warped mesh on the stitched image; g) creating, by a hardware processor, an output mesh by changing positions of vertexes of the warped mesh in a way that reduced the value of an energy function which includes a shape preservation function, a straight-line preservation function, and a boundary constraint function; and h) warping the stitched image according to the output mesh. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. Computer storage media storing information that, when accessed by a computing device, instructs the computing devices to perform the acts of:
-
local warping an input image by seam carving to create a first rectangular image; placing a mesh on the first rectangular image; warping the mesh to a shape of the input image to create a warped mesh; placing the warped mesh on the input image; global warping of the input image by transforming the warped mesh to an output mesh to create a second rectangular image. - View Dependent Claims (17)
-
-
18. A system comprising;
-
one or more processing units; a local warping module, in communication with the one or more processing units, configured to warp an irregular-shaped input image into a first rectangular image; a mesh alignment module, in communication with the one or more processing units, configured to; overlay a regular mesh on the rectangular image; warp the mesh to a shape of the irregular-shaped input image making a warped mesh; and overlay the warped mesh on the irregular-shaped input image; a global warping module, in communication with the one or more processing units, configured to warp the irregular-shaped input image into a second rectangular image by transforming the warped mesh into an output mesh such that an output of an energy function describing locations of vertexes in the output mesh is reduced. - View Dependent Claims (19, 20)
-
Specification