Banded seam carving of images with pyramidal retargeting
First Claim
1. A system, comprising:
- one or more processors; and
a memory coupled to the one or more processors and storing program instructions executable by the one or more processors to implement;
accessing data representing an image;
generating an acceleration data structure representing a lower-resolution version of the image;
determining a respective energy value for each pixel of the lower-resolution version of the image dependent on values associated with the pixels of the lower-resolution version of the image;
identifying a seam of the lower-resolution version of the image having a lowest cost, wherein the cost of the seam is dependent on the respective energy values for all pixels of the seam; and
performing a resizing operation on a portion of the image to produce a resized version of the image, wherein the portion of the image on which the resizing operation is performed is dependent on the identified seam of the lower-resolution version of the image.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method for expansion and reduction of images uses pyramidal retargeting to reduce complexity in image resizing. An image pyramid may be generated dependent on a function of pixel data or energy values for each pixel of an input image. An image resizing solution may be developed by applying seam carving techniques to a lower-resolution version of the input image represented by the image pyramid, and may identify bands in the higher-resolution input image to be resized. A resizing operation may then be applied the bands based on local content. The resizing operation may include seam carving techniques, scaling techniques, and/or hybrid resizing techniques, and may be selectable by a user. Identified bands may be expanded to obtain a smoother solution. Different bands may be expanded by different amounts, based on local content. The number of bands and the expansion factors may be configurable based on user input.
-
Citations
39 Claims
-
1. A system, comprising:
-
one or more processors; and a memory coupled to the one or more processors and storing program instructions executable by the one or more processors to implement; accessing data representing an image; generating an acceleration data structure representing a lower-resolution version of the image; determining a respective energy value for each pixel of the lower-resolution version of the image dependent on values associated with the pixels of the lower-resolution version of the image; identifying a seam of the lower-resolution version of the image having a lowest cost, wherein the cost of the seam is dependent on the respective energy values for all pixels of the seam; and performing a resizing operation on a portion of the image to produce a resized version of the image, wherein the portion of the image on which the resizing operation is performed is dependent on the identified seam of the lower-resolution version of the image. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A non-transitory computer-readable storage medium, comprising program instructions computer-executable to implement:
-
accessing data representing an image; generating an acceleration data structure representing a lower-resolution version of the image; determining a respective energy value for each pixel of the lower-resolution version of the image dependent on values associated with the pixels of the lower-resolution version of the image; identifying a seam of the lower-resolution version of the image having a lowest cost, wherein the cost of the seam is dependent on the respective energy values for all pixels of the seam; and performing a resizing operation on a portion of the image to produce a resized version of the image, wherein the portion of the image on which the resizing operation is performed is dependent on the identified seam of the lower-resolution version of the image. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27)
-
-
28. A computer-implemented method, comprising:
-
accessing data representing an image; generating an acceleration data structure representing a lower-resolution version of the image; determining a respective energy value for each pixel of the lower-resolution version of the image dependent on values associated with the pixels of the lower-resolution version of the image; identifying a seam of the lower-resolution version of the image having a lowest cost, wherein the cost of the seam is dependent on the respective energy values for all pixels of the seam; and performing a resizing operation on a portion of the image to produce a resized version of the image, wherein the portion of the image on which the resizing operation is performed is dependent on the identified seam of the lower-resolution version of the image. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39)
-
Specification