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.
77 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