Method and apparatus for generating panoramic image with rotation, translation and warping process
First Claim
1. A transform apparatus applied in an image processing system having an image capture module and an image processing apparatus, the image capture module capturing a 360-degree horizontal field of view and 180-degree vertical field of view to generate a plurality of camera images, the apparatus comprising:
- a geometry information detector for measuring geometry information of the image capture module to determine whether the image capture module is moved;
a parameter setup unit coupled to the geometry information detector for calculating geometry parameters according to the geometry information;
a primitive assembly unit for receiving an original vertex list to generate a vertex/ID flow; and
a geometry processing circuit for performing geometry transform operations over the vertex/ID flow according to the geometry parameters to generate a modified vertex list if the image capture module is moved;
wherein the geometry processing circuit comprises;
a geometry transform unit for sequentially performing the geometry transform operations over a current group of three first vertices with their data structures from the vertex/ID flow according to the geometry parameters to correct equirectangular coordinates of the three first vertices as three temporary vertices if the image capture module is moved; and
a triangle assembly unit for measuring shortest distances along θ
axis among the three temporary vertices and their imaginary points to determine a transformed triangle with three second vertices as a part of the modified vertex list, wherein a difference between each temporary vertex and its corresponding imaginary point is 2π
radians along θ
axis;
wherein the geometry information comprises at least one of a displacement and rotation angles associated with the movement of the image capture module;
wherein the vertex/ID flow comprises a plurality of groups of three first vertices with their data structures, and each group of three first vertices form a corresponding triangle in a polygon mesh modeling a panoramic image from the image processing apparatus;
wherein the modified vertex list comprises a plurality of groups of second vertices with their data structures, and each group of three second vertices form a corresponding triangle in the polygon mesh;
wherein the original vertex list comprises a plurality of third vertices with their data structures, and the original vertex list is obtained by conducting calibration between the plurality of camera images and the panoramic image for the plurality of third vertices;
wherein each of the data structures defines a corresponding vertex mapping between the plurality of camera images and the panoramic image; and
wherein the modified vertex list is inputted to the image processing apparatus and causes the image processing apparatus to generate a modified panoramic image.
1 Assignment
0 Petitions
Accused Products
Abstract
A transform apparatus applied in an image processing system with an image capture module is disclosed. The transform apparatus comprises a geometry information detector, a parameter setup unit, a primitive assembly unit and a geometry processing circuit. The geometry information detector measures geometry information of the image capture module. The parameter setup unit calculates geometry parameters and determines whether to assert an enable signal according to the geometry information. The primitive assembly unit receives an original vertex list and the enable signal to generate a vertex/ID flow. The geometry processing circuit receives the geometry parameters and performs geometry transform operations over the vertex/ID flow in response to whether the first enable signal is asserted to generate a modified vertex list. The geometry information comprises at least one of a displacement and rotation angles of the image capture module.
-
Citations
49 Claims
-
1. A transform apparatus applied in an image processing system having an image capture module and an image processing apparatus, the image capture module capturing a 360-degree horizontal field of view and 180-degree vertical field of view to generate a plurality of camera images, the apparatus comprising:
-
a geometry information detector for measuring geometry information of the image capture module to determine whether the image capture module is moved; a parameter setup unit coupled to the geometry information detector for calculating geometry parameters according to the geometry information; a primitive assembly unit for receiving an original vertex list to generate a vertex/ID flow; and a geometry processing circuit for performing geometry transform operations over the vertex/ID flow according to the geometry parameters to generate a modified vertex list if the image capture module is moved; wherein the geometry processing circuit comprises; a geometry transform unit for sequentially performing the geometry transform operations over a current group of three first vertices with their data structures from the vertex/ID flow according to the geometry parameters to correct equirectangular coordinates of the three first vertices as three temporary vertices if the image capture module is moved; and a triangle assembly unit for measuring shortest distances along θ
axis among the three temporary vertices and their imaginary points to determine a transformed triangle with three second vertices as a part of the modified vertex list, wherein a difference between each temporary vertex and its corresponding imaginary point is 2π
radians along θ
axis;wherein the geometry information comprises at least one of a displacement and rotation angles associated with the movement of the image capture module; wherein the vertex/ID flow comprises a plurality of groups of three first vertices with their data structures, and each group of three first vertices form a corresponding triangle in a polygon mesh modeling a panoramic image from the image processing apparatus; wherein the modified vertex list comprises a plurality of groups of second vertices with their data structures, and each group of three second vertices form a corresponding triangle in the polygon mesh; wherein the original vertex list comprises a plurality of third vertices with their data structures, and the original vertex list is obtained by conducting calibration between the plurality of camera images and the panoramic image for the plurality of third vertices; wherein each of the data structures defines a corresponding vertex mapping between the plurality of camera images and the panoramic image; and wherein the modified vertex list is inputted to the image processing apparatus and causes the image processing apparatus to generate a modified panoramic image. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A transform method applied in an image processing system having an image capture module and an image processing apparatus, the image capture module capturing a 360-degree horizontal field of view and 180-degree vertical field of view to generate a plurality of camera images, the method comprising:
-
when the image capture module is moved, performing transform operations over a vertex/ID flow until all first vertices from the vertex/ID flow are processed to generate a modified vertex list, wherein the modified vertex list is inputted to the image processing apparatus and causes the image processing apparatus to generate a modified panoramic image; wherein the step of performing the transform operations comprises; first, sequentially performing geometry transform operations over a current group of three first vertices with their data structures from the vertex/ID flow according to geometry parameters to correct equirectangular coordinates of the three first vertices as three temporary vertices; and then, measuring shortest distances along θ
axis among the three temporary vertices and their imaginary points to determine a transformed triangle with three second vertices as a part of the modified vertex list, wherein a difference between each temporary vertex and its corresponding imaginary point is 2π
radians along θ
axis; andrepeating the steps of sequentially performing the geometry transform operations and measuring until all the first vertices from the vertex/ID flow are processed; wherein the geometry parameters comprise at least one of a rotation matrix, an inverse rotation matrix and a displacement associated with the movement of the image capture module; and wherein the vertex/ID flow comprises a plurality of groups of three first vertices with their data structures, and each group of three first vertices form a corresponding triangle in a polygon mesh modeling a panoramic image from the image processing apparatus; wherein the modified vertex list comprises a plurality of groups of second vertices with their data structures, and each group of three second vertices form a corresponding triangle in the polygon mesh; and wherein each of the data structures defines a corresponding vertex mapping between the plurality of camera images and the panoramic image. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
-
-
27. An image processing system for receiving an original vertex list from a calibration system and generating a panoramic image, comprising:
-
an image capture module for capturing a 360-degree horizontal field of view and 180-degree vertical field of view to generate a plurality of camera images; a transform apparatus for generating a modified vertex list according to the original vertex list if the image capture module is moved; and an image processing apparatus for performing rasterization, texture mapping and blending operations to form a modified panoramic image according to the modified vertex list if the image capture module is moved; wherein the transform apparatus comprises; a geometry information detector for measuring geometry information of the image capture module to determine whether the image capture module is moved; a parameter setup unit coupled to the geometry information detector for calculating geometry parameters according to the geometry information; a primitive assembly unit for receiving the original vertex list to generate a vertex/ID flow; and a geometry processing circuit for performing geometry transform operations over the vertex/ID flow according to the geometry parameters to generate the modified vertex list if the image capture module is moved; wherein the geometry processing circuit comprises; a geometry transform unit for sequentially performing the geometry transform operations over a current group of three first vertices with their data structures from the vertex/ID flow according to the geometry parameters to correct equirectangular coordinates of the three first vertices as three temporary vertices if the image capture module is moved; and a triangle assembly unit for measuring shortest distances along θ
axis among the three temporary vertices and their imaginary points to determine a transformed triangle with three second vertices as a part of the modified vertex list, wherein a difference between each temporary vertex and its corresponding imaginary point is 2π
radians along θ
axis;wherein the geometry information comprises at least one of a displacement and rotation angles associated with the movement of the image capture module; wherein the vertex/ID flow comprises a plurality of groups of three first vertices with their data structures, and each group of three first vertices form a corresponding triangle in a polygon mesh modeling the panoramic image; wherein the modified vertex list comprises a plurality of groups of second vertices with their data structures, and each group of three second vertices form a corresponding triangle in the polygon mesh; wherein the original vertex list comprises a plurality of third vertices with their data structures, and the calibration system conducts calibration between the plurality of camera images and the panoramic image for the plurality of third vertices to generate the original vertex list; and wherein each of the data structures defines a corresponding vertex mapping between the plurality of camera images and the panoramic image. - View Dependent Claims (28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39)
-
-
40. A geometry processing circuit applied in an image processing system having an image capture module and an image processing apparatus, the image capture module capturing a field of view up to 360 degrees horizontally and 180 degrees vertically to generate a plurality of camera images, the geometry processing circuit comprising:
-
a geometry transform unit for sequentially performing geometry transform operations over a current group of three first vertices with their data structures from a vertex/ID flow according to geometry parameters to correct equirectangular coordinates of the three first vertices as three temporary vertices when the image capture module is moved; and a triangle assembly unit for measuring shortest distances along θ
axis among the three temporary vertices and their imaginary points to determine a transformed triangle with three second vertices as a part of the modified vertex list, wherein a difference between each temporary vertex and its corresponding imaginary point is 2π
radians along θ
axis;wherein the vertex/ID flow comprises a plurality of groups of three first vertices with their data structures, and each group of three first vertices form a corresponding triangle in a polygon mesh modeling the panoramic image; wherein the modified vertex list comprises a plurality of groups of second vertices with their data structures, and each group of three second vertices form a corresponding triangle in the polygon mesh; wherein each of the data structures defines a vertex mapping between a plurality of camera images from the image capture module and the panoramic image; wherein the geometry parameters comprise at least one of a rotation matrix, an inverse rotation matrix and a displacement associated with the movement of the image capture module; and wherein the modified vertex list is inputted to the image processing apparatus and causes the image processing apparatus to generate a modified panoramic image. - View Dependent Claims (41, 42, 43, 44, 45, 46, 47, 48, 49)
-
Specification