IP Library Granted Patent US 9,135,678
Granted Patent B2
US 9,135,678 · App. 13/677,016 · Granted Sep 15, 2015

Methods and apparatus for interfacing panoramic image stitching with post-processors

Inventors: Dong Feng (Beijing, CN); Jen-Chan Chien (Saratoga, CA); Hailin Jin (San Jose, CA)
Assignee: Adobe Systems Incorporated
G06T3/4038G06T3/0062G06T5/006G06T2200/21G06T2200/32
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,135,678
App. No.
13/677,016
Granted
Sep 15, 2015
Kind
B2
Abstract

Methods and apparatus for describing a projection model, used by a panoramic image stitching module to generate panoramic images and for communicating the projection model to other processes. A post-processing module may access and use the projection model provided by the panoramic image stitching module to perform one or more post-processing methods on the panoramic image, rather than requiring the user to input the projection model via a user interface or requiring the post-processing module to estimate the projection model according to a mathematical analysis of the panoramic image.

Claims (47)

1. A method, comprising:

performing, by one or more computing devices:

generating, by a panoramic image stitching module, a panoramic image from a set of input images according to a projection model by;

projecting the input images onto a virtual sphere; and

projecting the surface of the sphere onto a plane;

passing, by the panoramic image stitching module to a post-processing module, one or more parameters of the projection model, including a virtual focal length for the virtual sphere onto which the input images are projected and an indication of a point at which the plane contacts the sphere, as metadata for the panoramic image; and

applying, by the post-processing module, one or more image processing techniques, including a conversion of an original projection model for an image into an adaptive projection, to the panoramic image according to at least the virtual focal length and the indication of the point at which the plane contacts the sphere.

2. The method as recited in claim 1 , wherein said:

projecting the input images onto the virtual sphere according to at least one parameter of the projection model; and

projecting the surface of the sphere onto the plane according to at least one parameter of the projection model to generate the panoramic image.

3. The method as recited in claim 2 , wherein the one or more parameters of the projection model further include information indicating a particular transformation used in projecting the surface of the sphere onto the plane.

4. The method as recited in claim 3 , wherein the particular transformation is one of perspective transformation, cylindrical transformation, or spherical transformation.

5. The method as recited in claim 1 , wherein the virtual focal length indicates a radius of the sphere.

6. The method as recited in claim 1 , wherein the post-processing module is a post-processing module configured to project one or more images onto a geometric shape to generate a three-dimensional (3D) virtual scene from the one or more images.

7. The method as recited in claim 1 , wherein the post-processing module is configured to perform said applying one or more image processing techniques to the panoramic image according to the one or more parameters of the projection model without receiving user input specifying the one or more parameters of the projection model and without performing analysis of the panoramic image to estimate the one or more parameters of the projection model.

8. A non-transitory computer-readable storage medium storing program instructions, wherein the program instructions are computer-executable to implement:

generating a panoramic image from a set of input images according to a projection model by;

projecting the input images onto a virtual sphere;

projecting the surface of the sphere onto a plane; and

automatically storing one or more parameters of the projection model, including a virtual focal length for the virtual sphere onto which the input images are projected and an indication of a point at which the plane contacts the sphere, as metadata for the panoramic image, the metadata for the panoramic image configured to be accessed to perform one or more post-processing techniques on the panoramic image, including a projection of one or more images onto a geometric shape to generate a three-dimensional (3D) virtual scene from the one or more images, according to at least the virtual focal length and the indication of the point at which the plane contacts the sphere of the one or more parameters of the projection model stored as the metadata for the panoramic image.

9. The non-transitory computer-readable storage medium as recited in claim 8 , wherein, in said generating the panoramic image from the set of input images according to the projection model, the program instructions are computer-executable to implement said:

projecting the input images onto the virtual sphere according to at least one parameter of the projection model; and

projecting the surface of the sphere onto the plane according to at least one parameter of the projection model to generate the panoramic image.

10. The non-transitory computer-readable storage medium as recited in claim 9 , wherein the one or more parameters of the projection model further include information indicating a particular transformation used in projecting the surface of the sphere onto the plane.

11. The non-transitory computer-readable storage medium as recited in claim 10 , wherein the particular transformation is one of perspective transformation, cylindrical transformation, or spherical transformation.

12. The non-transitory computer-readable storage medium as recited in claim 8 , wherein the virtual focal length indicates a radius of the sphere.

13. The non-transitory computer-readable storage medium as recited in claim 8 , wherein the program instructions are further computer-executable to implement, subsequent to said storing:

accessing the one or more parameters of the projection model stored as the metadata for the panoramic image; and

applying one or more image processing techniques to the panoramic image according to the one or more parameters of the projection model.

14. A system, comprising:

one or more processors; and

a memory comprising program instructions that are executable by at least one of the one or more processors to implement a panoramic image stitching module operable to:

generate a panoramic image from a set of input images according to a projection model to;

project the input images onto a virtual sphere; and

project the surface of the sphere onto a plane;

store one or more parameters of the projection model, including a virtual focal length for the virtual sphere onto which the input images are projected and an indication of a point at which the plane contacts the sphere, as metadata for the panoramic image, the metadata for the panoramic image configured to be accessed to perform one or more post-processing techniques on the panoramic image, including a conversion of an original projection model for an image into an adaptive projection, according to at least the virtual focal length and the indication of the point at which the plane contacts the sphere of the one or more parameters of the projection model stored as the metadata for the panoramic image.

15. The system as recited in claim 14 , wherein, to generate the panoramic image from the set of input images according to the projection model, the program instructions are executable by at least one of the one or more processors to said:

project the input images onto the virtual sphere according to at least one parameter of the projection model; and

project the surface of the sphere onto the plane according to at least one parameter of the projection model to generate the panoramic image.

16. The system as recited in claim 15 , wherein the one or more parameters of the projection model further include information indicating a particular transformation used in projecting the surface of the sphere onto the plane.

17. The system as recited in claim 16 , wherein the particular transformation is one of perspective transformation, cylindrical transformation, or spherical transformation.

18. The system as recited in claim 14 , wherein the virtual focal length indicates a radius of the sphere.

19. The system as recited in claim 14 , wherein the program instructions are further executable by at least one of the one or more processors to implement another module operable to:

access the one or more parameters of the projection model stored as the metadata for the panoramic image; and

apply one or more image processing techniques to the panoramic image according to the one or more parameters of the projection model.

20. The system as recited in claim 14 , wherein the one or more post-processing techniques on the panoramic image includes a projection of one or more images onto a geometric shape to generate a three-dimensional (3D) virtual scene from the one or more images.

21. The non-transitory computer-readable storage medium as recited in claim 8 , wherein the one or more post-processing techniques on the panoramic image include a conversion of an original projection model for an image into an adaptive projection.

Assignments (2)
CHANGE OF NAME Recorded Apr 8, 2019
From: ADOBE SYSTEMS INCORPORATED
To: ADOBE INC.
Reel/Frame 048867/0882 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 14, 2012
From: FENG, DONG; CHIEN, JEN-CHAN; JIN, HAILIN
To: ADOBE SYSTEMS INCORPORATED
Reel/Frame 029298/0864 →
Continuity (2)
Provisional Application 61612851 · Mar 19, 2012
Related Publication 20130243351A1 · Sep 19, 2013