IP Library Granted Patent US 6,900,806
Granted Patent B2
US 6,900,806 · App. 10/406,530 · Granted May 31, 2005

Method and apparatus for performing perspective transformation

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 6,900,806
App. No.
10/406,530
Granted
May 31, 2005
Kind
B2
Abstract

Methods and apparatus for perspective transforming a plurality of objects in a three-dimensional space into a two-dimensional space, each object having a plurality of vertexes, the methods and apparatus determining whether the plurality of vertexes for each of the objects are localized within the three-dimensional space; performing a first perspective transformation process on the respective plurality of vertexes of the objects when the plurality of vertexes for each of the objects are not localized within the three-dimensional space; and performing a second perspective transformation process on the respective plurality of vertexes of the objects when the plurality of vertexes for each of the objects are localized within the three-dimensional space, wherein the second perspective transformation process requires less calculating power than the first perspective transformation process.

Claims (72)

1. A method of perspective transforming a plurality of objects in a three-dimensional space into a two-dimensional space, each object having a plurality of vertexes, the method comprising:

determining, from the plurality of vertexes for each of the objects, a first respective plurality of vertexes of the objects which are not localized within the three-dimensional space, and a second respective plurality of vertexes of the objects which are localized within the three-dimensional space;

performing a first perspective transformation process on the first respective plurality of vertexes of the objects; and

performing a second perspective transformation process on the second respective plurality of vertexes of the objects,

wherein the first perspective transformation process uses respective scale factors that are inversely proportional to Z(j,i) to perspective transform the respective vertexes of the plurality of objects, where Z(j,i) is a distance from a point of view to a particular vertex, j, of a given object, i, the first perspective transformation process is a normal process and the second perspective transformation process is an approximation process requiring less calculating power than the first perspective transformation process.

2. A method of perspective transforming a plurality of objects in a three-dimensional space into a two-dimensional space, each object having a plurality of vertexes, the method comprising:

determining, from the plurality of vertexes for each of the objects, a first respective plurality of vertexes of the objects which are not localized within the three-dimensional space, and a second respective plurality of vertexes of the objects which are localized within the three-dimensional space;

performing a first perspective transformation process on the first respective plurality of vertexes of the objects, the first perspective transformation process being a normal process; and

performing a second perspective transformation process on the second respective plurality of vertexes of the objects, wherein the second perspective transformation process is an approximation process using representative scale factors that are inversely proportional to Z(i) to perspective transform the respective vertexes of the plurality of objects, where Z(i) is an approximated distance from a point of view to a some or all of the plurality of vertexes of a given object, i.

3. The method of claim 2 , further comprising computing the approximated distances Z(i) using at least one of the following methods: (i) replacement, (ii) primary linear approximation, and (iii) quadratic approximation.

4. A method of perspective transforming a plurality of objects in a three-dimensional space into a two-dimensional space, each object having a plurality of vertexes, the method comprising:

determining, from the plurality of vertexes for each of the objects, a first respective plurality of vertexes of the objects which are not localized within the three-dimensional space, and a second respective plurality of vertexes of the objects which are localized within the three-dimensional space;

performing a first perspective transformation process on the first respective plurality of vertexes of the objects; and

performing a second perspective transformation process on the second respective plurality of vertexes of the objects, wherein the step of determining whether the plurality of vertexes for a given one of the objects are localized within the three-dimensional space includes evaluating whether one or more of the following expressions are satisfied:

|min Z −max Z |÷|min Z|≦K 1 ,

|min Z −max Z |÷|max Z|≦K 1 , or

|min Z −max Z |÷mean Z|≦K 1

where K 1 is a scalar, minZ is a minimum distance from a point of view to one or more of the plurality of vertexes of the given object, maxZ is a maximum distance from a point of view to one or more of the plurality of vertexes of the given object, and meanZ is an average of the distances from a point of view to one or more of the plurality of vertexes of the given object.

5. A method of perspective transforming a plurality of objects in a three-dimensional space into a two-dimensional space, each object having a plurality of vertexes, the method comprising:

determining, from the plurality of vertexes for each of the objects, a first respective plurality of vertexes of the objects which are not localized within the three-dimensional space, and a second respective plurality of vertexes of the objects which are localized within the three-dimensional space;

performing a first perspective transformation process on the first respective plurality of vertexes of the objects; and

performing a second perspective transformation process on the second respective plurality of vertexes of the objects, wherein the step of determining whether the plurality of vertexes for all of the objects are localized within the three-dimensional space includes evaluating whether one or more of the following expressions are satisfied:

|min Z 1 −max Z 1 |÷|mean Z 1 −mean Z 2 |≦ K 2 ,

|min Z 2 −max Z 2 |÷|mean Z 1 −mean Z 2 |≦ K 2 ,

|min Z 2 −max Z 2 |÷|mean Z 2 −mean Z 3 |≦ K 2 ,

|min Z 3 −max Z 3 |÷|mean Z 2 −mean Z 3 |≦ K 2 ,

|min ZM - 1 −max ZM 1 |÷|mean ZM - 1 −mean ZM|≦K 2 , an

|min ZM −max ZM |÷|mean ZM - 1 −mean ZM|≦K 2

where K 2 is a scalar, minZi is a minimum distance from a point of view to one or more of the plurality of vertexes of an ith object (i=1, 2, . . . , M), maxZi is a maximum distance from the point of view to the one or more of the plurality of vertexes of the ith object, and meanZi is an average of the distances from the point of view to the one or more of the plurality of vertexes of the ith object.

6. An apparatus for perspective transforming a plurality of objects in a three-dimensional space into a two-dimensional space, each object having a plurality of vertexes, the apparatus comprising:

a processing unit operable to determine whether the plurality of vertexes for each of the objects are localized within the three-dimensional space; and

a graphics unit operable to perform (i) a first perspective transformation process on the respective plurality of vertexes of the objects when the plurality of vertexes for each of the objects are not localized within the three-dimensional space, and (ii) a second perspective transformation process on the respective plurality of vertexes of the objects when the plurality of vertexes for each of the objects are localized within the three-dimensional space,

wherein the second perspective transformation process requires less calculating power than the first perspective transformation process.

7. The apparatus of claim 6 wherein the first perspective transformation process is a normal process and the second perspective transformation process is an approximation process.

8. The apparatus of claim 7 wherein the first perspective transformation process uses respective scale factors that are inversely proportional to Z(j,i) to perspective transform the respective vertexes of the plurality of objects, where Z(j,i) is a distance from a point of view to a particular vertex, j, of a given object, i.

9. The apparatus of claim 7 , wherein the second perspective transformation process uses representative scale factors that are inversely proportional to Z(i) to perspective transform the respective vertexes of the plurality of objects, where Z(i) is an approximated distance from a point of view to a some or all of the plurality of vertexes of a given object, i.

10. The apparatus of claim 9 , wherein at least one of the processing unit and the graphics unit is further operable to determine the approximated distances Z(i) using at least one of the following methods: (i) replacement, (ii) primary linear approximation, and (iii) quadratic approximation.

11. The apparatus of claim 6 , wherein the processing unit is operable to determine whether the plurality of vertexes for a given one of the objects are localized within the three-dimensional space by determining whether one or more of the following expressions are satisfied:

|min Z −max Z |÷|min Z|≦K 1 ,

|min Z −max Z |÷|max Z|≦K 1 , or

|min Z −max Z |÷mean Z|≦K 1

where K 1 is a scalar, minZ is a minimum distance from a point of view to one or more of the plurality of vertexes of the given object, maxZ is a maximum distance from a point of view to one or more of the plurality of vertexes of the given object, and meanZ is an average of the distances from a point of view to one or more of the plurality of vertexes of the given object.

12. The apparatus of claim 6 , wherein the processing unit is operable to determine whether the plurality of vertexes for all of the objects are localized within the three-dimensional space by evaluating whether one or more of the following expressions are satisfied:

|min Z 1 −max Z 1 |÷mean Z 1 −mean Z 2 |≦ K 2 ,

|min Z 2 −max Z 2 |÷|mean Z 1 −mean Z 2 |≦ K 2 ,

|min Z 2 −max Z 2 |÷|mean Z 2 −mean Z 3 |≦ K 2 ,

|min Z 3 −max Z 3 |÷|mean Z 2 −mean Z 3 |≦ K 2 ,

|min ZM - 1 −max ZM - 1 |÷|mean ZM - 1 −mean ZM|≦K 2 , and

|min ZM −max ZM |÷|mean ZM - 1 −mean ZM|K 2

where K 1 is a scalar, minZi is a minimum distance from a point of view to one or more of the plurality of vertexes of an ith object (i=1, 2, . . . , M), maxZi is a maximum distance from the point of view to the one or more of the plurality of vertexes of the ith object, and meanZi is an average of the distances from the point of view to the one or more of the plurality of vertexes of the ith object.

13. An entertainment system, comprising:

a controller for receiving input commands from a user;

a processing unit operable to receive the input commands from the controller; and

a graphics unit for perspective transforming a plurality of objects in a three-dimensional space into a two-dimensional space in accordance with the input commands received from the processing unit, each object having a plurality of vertexes, and the graphics unit being operable to (i) determine whether the plurality of vertexes for each of the objects are localized within the three-dimensional space, (ii) perform a first perspective transformation process on the respective plurality of vertexes of the objects when the plurality of vertexes for each of the objects are not localized within the three-dimensional space, and (iii) perform a second perspective transformation process on the respective plurality of vertexes of the objects when the plurality of vertexes for each of the objects are localized within the three-dimensional space,

wherein the second perspective transformation process requires less calculating power than the first perspective transformation process.

14. The entertainment system of claim 13 , wherein the first perspective transformation process is a normal process and the second perspective transformation process is an approximation process.

15. The entertainment system of claim 14 , wherein the first perspective transformation process uses respective scale factors that are inversely proportional to Z(j,i) to perspective transform the respective vertexes of the plurality of objects, where Z(j,i) is a distance from a point of view to a particular vertex, j, of a given object, i.

16. The entertainment system of claim 13 , wherein the second perspective transformation process uses representative scale factors that are inversely proportional to Z(i) to perspective transform the respective vertexes of the plurality of objects, where Z(i) is an approximated distance from a point of view to a some or all of the plurality of vertexes of a given object, i.

17. The entertainment system of claim 16 , wherein the graphics unit is further operable to determine the approximated distances Z(i) using at least one of the following methods: (i) replacement, (ii) primary linear approximation, and (iii) quadratic approximation.

18. The entertainment system of claim 13 , wherein the graphics unit is operable to determine whether the plurality of vertexes for a given one of the objects are localized within the three-dimensional space by determining whether one or more of the following expressions are satisfied:

|min Z −max Z |÷|min Z|≦K 1 ,

|min Z −max Z |÷|max Z|≦K 1 , or

|min Z −max Z |÷|mean Z|≦K 1

where K 1 is a scalar, minZ is a minimum distance from a point of view to one or more of the plurality of vertexes of the given object, maxZ is a maximum distance from a point of view to one or more of the plurality of vertexes of the given object, and meanZ is an average of the distances from a point of view to one or more of the plurality of vertexes of the given object.

19. The entertainment system of claim 13 , wherein the graphics unit is operable to determine whether the plurality of vertexes for all of the objects are localized within the three-dimensional space by evaluating whether one or more of the following expressions are satisfied:

|min Z 1 −max Z 1 |÷|mean Z 1 −mean Z 2 |≦ K 2 ,

|min Z 2 −max Z 2 |÷|mean Z 1 −mean Z 2 |≦ K 2 ,

|min Z 2 −max Z 2 |÷|mean Z 2 −mean Z 3 |≦ K 2 ,

|min Z 3 −max Z 3 |÷|mean Z 2 −mean Z 3 |≦ K 2 ,

|min ZM - 1 −max ZM - 1 |÷|mean ZM - 1 −mean ZM|≦K 2 , and

min ZM −max ZM |÷|mean ZM - 1 −mean ZM|≦K 2

where K 2 is a scalar, minZi is a minimum distance from a point of view to one or more of the plurality of vertexes of an ith object (i=1, 2, . . . , M), maxZi is a maximum distance from the point of view to the one or more of the plurality of vertexes of the ith object, and meanZi is an average of the distances from the point of view to the one or more of the plurality of vertexes of the ith object.