IP Library Granted Patent US 7,230,633
Granted Patent B2
US 7,230,633 · App. 11/330,750 · Granted Jun 12, 2007

Method and apparatus for image blending

Assignee: Apple Inc.
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 7,230,633
App. No.
11/330,750
Granted
Jun 12, 2007
Kind
B2
Abstract

Methods and apparatuses for blending two images using vector table look up operations. In one aspect of the invention, a method to blend two images includes: loading a vector of keys into a vector register; converting the vector of keys into a first vector of blending factors for the first image and a second vector of blending factors for the second image using a plurality of look up tables; and computing an image attribute for the blended image using the blending factors.

Claims (141)

1. A computer-implemented method to blend two images, the method comprising:

loading a vector of keys into a vector register;

converting the vector of keys into a first vector of blending factors for a first image and a second vector of blending factors for a second image using a plurality of look up tables in a vector look up unit; and

computing an image attribute for a blended image using the blending factors, the blended image being displayed by a display of a digital processing system.

2. A method as in claim 1 wherein the blending factors are one of:

a) floating point numbers;

b) fixed point numbers; and

c) integers.

3. A computer-implemented method to blend two images, the method comprising:

loading a vector of keys into a vector register;

converting the vector of keys into a first vector of blending factors for a first image and a second vector of blending factors for a second image using a plurality of look up tables in a vector look up unit, where in the converting comprises:

generating a first vector of indices in a vector register by replicating a first subset of the vector of keys as a first subset of the first vector of indices for looking up first blending factors for the first image and replicating the first subset of the vector of keys as a second subset of the first vector of indices for looking up second blending factors for the second image; and

looking up simultaneously the first and second blending factors using the first vector of indices in the vector look up unit; and

computing an image attribute for a blended image using the blending factors, the blended image being displayed by a display of a distal processing system.

4. A method as in claim 3 further comprising:

storing the first blending factors into the first vector of blending factors and the second blending factors into the second vector of blending factors.

5. A computer-implemented method to blend two images, the method comprising:

loading a vector of keys into a vector register;

converting the vector of keys into a first vector of blending factors for a first image and a second vector of blending factors for a second image using a plurality of look up tables in a vector look up unit, wherein the converting comprises:

generating a first vector of indices in a vector register, one key in the vector of keys being replicated as a first plurality of indices in the first vector of indices for looking up respectively a plurality of bit segments of a first blending factor; and

looking up simultaneously a first vector of blending factors comprising the first blending factor using the first vector of indices in the vector look up unit; and

computing an image attribute for a blended image using the blending factors, the blended image being displayed by a display of a digital processing system.

6. A computer-implemented method to blend two images, the method comprising:

loading a first vector of keys into a vector register;

loading a second vector of keys into a vector register;

converting the first vector of keys into a first vector of blending factors for a first image and the second vector of keys into a second vector of blending factors for a second image using a plurality of look up tables in a vector look up unit; and

computing an image attribute for a blended image using the blending factors, the blended image being displayed by a display of a digital processing system.

7. A method as in claim 6 wherein the blending factors are one of:

a) floating point numbers;

b) fixed point numbers; and

c) integers.

8. A computer-implemented method to blend two images, the method comprising:

loading a first vector of keys into a vector register;

loading a second vector of keys into a vector register;

converting the first vector of keys into a first vector of blending factors for a first image and the second vector of keys into a second vector of blending factors for a second image using a plurality of look up tables in a vector look up unit, wherein the converting comprises:

generating a first vector of indices in a vector register by replicating a first subset of the first vector of keys as a first subset of the first vector of indices for looking up first blending factors for the first image and replicating a first subset of the second vector of keys as a second subset of the first vector of indices for looking up second blending factors for the second image; and

looking up simultaneously the first and second blending factors using the first vector of indices in the vector look up unit; and

computing an image attribute for a blended image using the blending factors, the blended image being displayed by a display of the digital processing system.

9. A method as in claim 8 further comprising:

storing the first blending factors into the first vector of blending factors and the second blending factors into the second vector of blending factors.

10. A computer-implemented method to blend two images, the method comprising:

loading a first vector of keys into a vector register;

loading a second vector of keys into a vector register;

converting the first vector of keys into a first vector of blending factors for a first image and the second vector for keys into a second vector of blending factors for a second image using a plurality of look up tables in a vector look up unit, wherein the converting comprises:

generating a first vector of indices in a vector register, one key in the first vector of keys being replicated as a first plurality of indices in the first vector of indices for looking up respectively a plurality of bit segments of a first blending factor; and

looking up simultaneously a first vector of blending factors comprising the first blending factor using the first vector of indices in the vector look up unit; and

computing an image attribute for a blended image using the blending factors, the blending image being displayed by a display of a digital processing system.

11. A computer readable media having stored executable computer program instructions which when executed by a digital processing system cause said system to perform a method to blend two images, the method comprising:

loading a vector of keys into a vector register;

converting the vector of keys into a first vector of blending factors for a first image and a second vector of blending factors for a second image using a plurality of look up tables in a vector look up unit; and

computing an image attribute for a blended image using the blending factors, the blended image being displayed by a display of the digital processing system.

12. A media as in claim 11 wherein the blending factors are one of:

a) floating point numbers;

b) fixed point numbers; and

c) integers.

13. A computer readable media having stored executable computer program instructions which when executed by a digital processing system cause said system to perform a method to blend two images, the method comprising:

loading a vector of keys into a vector register;

converting the vector of keys into a first vector of blending factors for a first image and a second vector of blending factors for a second image using a plurality of look up tables in a vector look up unit, wherein the converting comprises:

generating a first vector of indices in a vector register by replicating a first subset of the vector of keys as a first subset of the first vector of indices for looking up first blending factors for the first image and replicating the first subset of the vector of keys as a second subset of the first vector of indices for looking up second blending factors for the second image; and

looking up simultaneously the first and second blending factors using the first vector of indices in the vector look up unit; and

computing an image attribute for a blended image using the blending factors, the blended image being displayed by a display of the digital processing system.

14. A media as in claim 13 wherein the method further comprises:

storing the first blending factors into the first vector of blending factors and the second blending factors into the second vector of blending factors.

15. A computer readable media having stored executable computer pro gram instructions which when executed by a digital processing system cause said system to perform a method to blend two images, the method comprising:

loading a vector of keys into a vector register;

converting the vector of keys into a first vector of blending factors for a first image and a second vector of blending factors for a second image using a plurality of look up tables in a vector look up unit, wherein the converting comprises:

generating a first vector of indices in a vector register, one key in the vector of keys being replicated as a first plurality of indices in the first vector of indices for looking up respectively a plurality of bit segments of a first blending factor; and

looking up simultaneously a first vector of blending factors comprising the first blending factor using the first vector of indices in the vector look up unit; and

computing an image attribute for a blended image using the blending factors, the blended image being displayed by a display of the digital processing system.

16. A computer readable media having stored executable computer program instructions which when executed by a digital processing system cause said system to perform a method to blend two images, the method comprising:

loading a first vector of keys into a vector register;

loading a second vector of keys into a vector register;

converting the first vector of keys into a first vector of blending factors for a first image and the second vector of keys into a second vector of blending factors for a second image using a plurality of look up tables in a vector look up unit; and

computing an image attribute for a blended image using the blending factors, the blended image being displayed by a display of a digital processing system.

17. A media as in claim 16 wherein the blending factors are one of:

a) floating point numbers;

b) fixed point numbers; and

c) integers.

18. A computer readable media having stored executable computer program instructions which when executed by a digital processing system cause said system to perform a method to blend two images, the method comprising:

loading a first vector of keys into a vector register;

loading a second vector of keys into a vector register;

converting the first vector of keys into a first vector of blending factors for a first image and the second vector of keys into a second vector of blending factors for a second image using a plurality of look up tables in a vector look up unit, wherein the converting comprises:

generating a first vector of indices in a vector register by replicating a first subset of the first vector of keys as a first subset of the first vector of indices for looking up first blending factors for the first image and replicating a first subset of the second vector of keys as a second subset of the first vector of indices for looking up second blending factors for the second image; and

looking up simultaneously the first and second blending factors using the first vector of indices in the vector look up unit; and

computing an image attribute for a blended image using the blending factors, the blended image being displayed by a display of the digital processing system.

19. A media as in claim 18 wherein the method further comprises:

storing the first blending factors into the first vector of blending factors and the second blending factors into the second vector of blending factors.

20. A computer readable media having stored executable computer program instructions which when executed by a digital processing system cause said system to perform a method to blend two images, the method comprising:

loading a first vector of keys into a vector register;

loading a second vector of keys into a vector register;

converting the first vector of keys into a first vector of blending factors for a first image and the second vector of keys into a second vector of blending factors for a second image using a plurality of look up tables in a vector look up unit, wherein the converting comprises:

generating a first vector of indices in a vector register, one key in the first vector of keys being replicated as a first plurality of indices in the first vector of indices for looking up respectively a plurality of bit segments of a first blending factor; and

looking up simultaneously a first vector of blending factors comprising the first blending factor using the first vector of indices in the vector look up unit; and

computing an image attribute for a blended image using the blending factors, the blended image being displayed by a display of the digital processing system.

21. A processing system to blend two images, the system comprising:

means for loading a vector of keys into a vector register;

means for converting the vector of keys into a first vector of blending factors for a first image and a second vector of blending factors for a second image using a plurality of look up tables in a vector look up unit; and

means for computing an image attribute for a blended image using the blending factors, the blended image being displayed by a display of the processing system.

22. A processing system as in claim 21 wherein the blending factors are one of:

a) floating point numbers;

b) fixed point numbers; and

c) integers.

23. A processing system to blend two images, the system comprising:

means for loading a vector of keys into a vector register;

means for converting the vector of keys into a first vector of blending factors for a first image and a second vector of blending factors for a second image using a plurality of look up tables in a vector look up unit, wherein the means for converting comprises:

means for generating a first vector of indices in a vector register by replicating a first subset of the vector of keys as a first subset of the first vector of indices for looking up first blending factors for the first image and replicating the first subset of the vector of keys as a second subset of the first vector of indices for looking up second blending factors for the second image; and

means for looking up simultaneously the first and second blending factor using the first vector of indices in the vector look up unit; and

means for computing an image attribute for a blended image using the blending factors, the blended image being displayed by a display of the processing system.

24. A processing system as in claim 23 further comprising:

means for storing the first blending factors into the first vector of blending factors and the second blending factors into the second vector of blending factors.

25. A processing system to blend two images, the system comprising:

means for loading a vector of keys into a vector register;

means for converting the vector of keys into a first vector of blending factors for a first image and a second vector of blending factors for a second image using a plurality of look up tables in a vector look up unit, wherein the means for converting comprises:

means for generating a first vector of indices in a vector register, one key in the vector of keys being replicated as a first plurality of indices in the first vector of indices for looking up respectively a plurality of bit segments of a first blending factor; and

means for looking up simultaneously a first vector of blending factors comprising the first blending factor using the first vector of indices in the vector look up unit; and

means for computing an image attribute for a blended image using the blending factors, the blended image being displayed by a display of the processing system.

26. A processing system to blend two images, the system comprising:

means for loading a first vector of keys into a vector register;

means for loading a second vector of keys into a vector register;

means for converting the first vector of keys into a first vector of blending factors for a first image and the second vector of keys into a second vector of blending factors for a second image using a plurality of look up tables in a vector look up unit; and

means for computing an image attribute for a blended image using the blending factors, the blended image being displayed by a display of the processing system.

27. A processing system as in claim 26 wherein the blending factors are one of:

a) floating point numbers;

b) fixed point numbers; and

c) integers.

28. A processing system to blend two images, the system comprising:

means for loading a first vector of keys into a vector register;

means for loading a second vector of keys into a vector register;

means for converting the first vector of keys into a first vector of blending factors for a first image and the second vector of keys into a second vector of blending factors for a second image using a plurality of look up tables in a vector look up unit, wherein the means for converting comprises:

means for generating a first vector of indices in a vector register by replicating a first subset of the first vector of keys as a first subset of the first vector of indices for looking up first blending factors for the first image and replicating a first subset of the second vector of keys as a second subset of the first vector of indices for looking up second blending factors for the second image; and

means for looking up simultaneously the first and second blending factors using the first vector of indices in the vector look up unit; and

means for computing an image attribute for a blended image using the blending factors, the blended image being displayed by a display of the processing system.

29. A processing system as in claim 28 further comprising:

means for storing the first blending factors into the first vector of blending factors and the second blending factors into the second vector of blending factors.

30. A processing system to blend two images, the system comprising:

means for loading a first vector of keys into a vector register;

means for loading a second vector of keys into a vector register;

means for converting the first vector of keys into a first vector of blending factors for a first image and the second vector of keys into a second vector of blending factors for a second image using a plurality of look up tables in a vector look up unit, wherein the means for converting comprises:

means for generating a first vector of indices in a vector register, one key in the first vector of keys being replicated as a first plurality of indices in the first vector of indices for looking up respectively a plurality of bit segments of a first blending factor; and

means for looking up simultaneously a first vector of blending factors comprising the first blending factor using the first vector of indices in the vector look up unit; and

means for computing an image attribute for a blended image using the blending factors, the blended image being displayed by a display of the processing system.

Assignments (1)
CHANGE OF NAME Recorded Apr 30, 2007
From: APPLE COMPUTER, INC.
To: APPLE INC.
Reel/Frame 019242/0879 →
Continuity (2)
Division 1003827300 · Dec 31, 2001
Related Publication 20060114264A1 · Jun 1, 2006