Image tapestry
First Claim
1. A method comprising:
- a) receiving at least one input image;
b) identifying at least two input image regions of the at least one input image, each input image region including a portion of the at least one input image;
c) determining an objective function including a quality of each of the at least two input image regions;
d) optimizing the objective function with respect to a tapestry image containing the at least two input image regions based on the optimizing;
e) storing the optimized tapestry image in a data store of a computing device; and
f) displaying an output image comprising the optimized tapestry image on a display of the computing device.
2 Assignments
0 Petitions
Accused Products
Abstract
An output image formed from at least a portion of one or more input images may be automatically synthesized as a tapestry image. To determine which portion or region of each input image will be used in the image tapestry, the regions of each image may be labeled by one of a plurality of labels. The multi-class labeling problem of creating the tapestry may be resolved such that each region in the tapestry is constructed from one or more salient input image regions that are selected and placed such that neighboring blocks in the tapestry satisfy spatial compatibility. This solution may be formulated using a Markov Random Field and the resulting tapestry energy function may be optimized in any suitable manner. To optimize the tapestry energy function, an expansion move algorithm for energy functions may be generated to apply to non-metric hard and/or soft constraints.
-
Citations
22 Claims
-
1. A method comprising:
-
a) receiving at least one input image; b) identifying at least two input image regions of the at least one input image, each input image region including a portion of the at least one input image; c) determining an objective function including a quality of each of the at least two input image regions; d) optimizing the objective function with respect to a tapestry image containing the at least two input image regions based on the optimizing; e) storing the optimized tapestry image in a data store of a computing device; and f) displaying an output image comprising the optimized tapestry image on a display of the computing device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 21)
-
-
13. A method comprising:
-
a) receiving at least two unregistered input images; b) identifying at least two input image regions of the at least two unregistered input images, each input image region including a portion of one of the at least two input images; c) determining an objective function for evaluating a quality of each of the at least two input image regions; d) optimizing the objective function with respect to a tapestry image containing the at least two input image regions based on the optimizing; e) storing the optimized tapestry image in a data store of a computing device; and f) displaying an output image comprising the optimized tapestry image on a display of the computing device. - View Dependent Claims (14, 15, 16, 22)
-
-
17. One or more computer readable storage media having computer executable instructions for performing steps comprising:
-
a) receiving a plurality of input images; b) dividing each input image of the plurality of input images into a plurality of regions; c) selecting at least two salient regions from the plurality of regions; d) applying a region coherence constraint to at least one of the at least two salient regions to cluster a plurality of salient image regions from a single input image; e) applying a region uniqueness constraint to the at least two salient regions to reduce duplication of an input image region; and f) optimizing a tapestry image containing the at least two salient regions based on the application of the region coherence constraint and the region uniqueness constraint. - View Dependent Claims (18, 19, 20)
-
Specification