IP Library Granted Patent US 6,856,705
Granted Patent B2
US 6,856,705 · App. 10/417,937 · Granted Feb 15, 2005

Image blending by guided interpolation

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,856,705
App. No.
10/417,937
Granted
Feb 15, 2005
Kind
B2
Abstract

A blended result image is computed using guided interpolation to alter image data within a destination domain. The destination domain may be altered based on a guided interpolator that is either dependent or not dependent upon a source image. When blending a source region into a destination region of an image, guided interpolation eliminates or minimizes apparent seams between the inserted region and the rest of the image. A variety of interpolation guides may be used to yield different effects in the blended results image. Such interpolation guides may include without limitation an identity guide, a smooth guide, a filtering guide, a transparent guide, a masking guide, and a weighted average combination of various guides.

Claims (50)

1. A method of computing a blended result image from a destination image, the method comprising:

defining a destination domain having a boundary in the destination image,

providing a guided interpolator including an interpolation guide and a boundary condition associated with the boundary of the destination domain; and

computing the blended result image based on the guided interpolator to satisfy the boundary condition at the boundary of the destination domain and to minimize a difference across the destination domain between the interpolation guide and a gradient of the blended result image.

2. The method of claim 1 wherein the providing operation comprises:

providing a masking interpolation guide as the interpolation guide, the masking interpolation guide including a gradient of the destination image within the destination domain where the gradient of the destination image satisfies a predetermined criterion.

3. The method of claim 1 wherein at least a portion of a source image is blended into the destination image to generate the blended result image, the interpolation guide being a function of the source image.

4. The method of claim 1 wherein at least a portion of a source image is blended into the destination image to generate the blended result image and further comprising:

defining a source domain having a boundary in the source image.

5. The method of claim 4 wherein the providing operation comprises:

providing a filtering interpolation guide as the interpolation guide, the filtering interpolation guide including a gradient of the source image within the source domain.

6. The method of claim 4 wherein the providing operation comprises:

providing a transparent interpolation guide as the interpolation guide, the transparent interpolation guide including a greater of a gradient of the source image within the source domain and a gradient of the destination image within the destination domain.

7. The method of claim 1 wherein the boundary condition requires each value of image data in the blended result image at the boundary of the destination domain to equal each corresponding value of image data in the destination image at the boundary.

8. The method of claim 1 wherein the guided interpolator is represented by a functional minimization

min ƒ ∫∫ Ω |∇ƒ−v| 2 ,

having the boundary condition ƒ| ∂Ω =ƒ*| ∂Ω , where v represents an interpolation guide, ƒ represents the blended result image within the destination domain, and ƒ* represents the blended result image outside the destination domain.

9. A computer program product encoding a computer program for executing on a computer system a computer process for computing a blended result image from a destination image, the computer process comprising:

defining a destination domain having a boundary in the destination image,

providing a guided interpolator including an interpolation guide and a boundary condition associated with the boundary of the destination domain; and

computing the blended result image based on the guided interpolator to satisfy the boundary condition at the boundary of the destination domain and to minimize a difference across the destination domain between the interpolation guide and a gradient of the blended result image.

10. The computer program product of claim 9 wherein the providing operation comprises:

providing a masking interpolation guide as the interpolation guide, the masking interpolation guide including a gradient of the destination image within the destination domain where the gradient of the destination image satisfies a predetermined criterion.

11. The computer program product of claim 9 wherein at least a portion of a source image is blended into the destination image to generate the blended result image, the interpolation guide being a function of the source image.

12. The computer program product of claim 9 , wherein at least a portion of a source image is blended into the destination image to generate the blended result image, further comprising:

defining a source domain having a boundary in the source image.

13. The computer program product of claim 12 wherein the providing operation comprises:

providing a filtering interpolation guide as the interpolation guide, the filtering interpolation guide including a gradient of the source image within the source domain.

14. The computer program product of claim 12 wherein the providing operation comprises:

providing a transparent interpolation guide as the interpolation guide, the transparent interpolation guide including a greater of a gradient of the source image within the source domain and a gradient of the destination image within the destination domain.

15. The computer program product of claim 9 wherein the boundary condition requires each value of image data in the blended result image at the boundary of the destination domain to equal each corresponding value of image data in the destination image at the boundary.

16. The computer program product of claim 9 wherein the guided interpolator is represented by a functional minimization

min ƒ ∫∫ Ω |∇ƒ−v| 2 ,

having the boundary condition ƒ| ∂Ω =ƒ*| ∂Ω , where v represents an interpolation guide, ƒ represents the blended result image within the destination domain, and ƒ* represents the blended result image outside the destination domain.

17. A system for computing a blended result image from a destination image, the system comprising:

a domain definition module defining a destination domain having a boundary in the destination image,

an interpolation guide datastore storing a guided interpolator including an interpolation guide and a boundary condition associated with the boundary of the destination domain; and

a blending computation module computing the blended result image based on the guided interpolator to satisfy the boundary condition at the boundary of the destination domain and to minimize a difference across the destination domain between the interpolation guide and a gradient of the blended result image.

18. The system of claim 17 wherein the interpolation guide includes a gradient of the destination image within the destination region.

19. The system of claim 17 wherein the interpolation guide equals zero.

20. The system of claim 17 wherein the interpolation guide includes a gradient of the destination image within the destination domain where the gradient of the destination image satisfies a predetermined criterion.

21. The system of claim 17 wherein at least a portion of a source image is blended into the destination image to generate the blended result image, the interpolation guide being a function of the source image.

22. The system of claim 17 , wherein at least a portion of a source image is blended into the destination image to generate the blended result image, further comprising:

defining a source domain having a boundary in the source image.

23. The system of claim 22 wherein the interpolation guide includes a gradient of the source image within the source domain.

24. The system of claim 22 wherein the interpolation guide includes a greater of a gradient of the source image within the source domain and a gradient of the destination image within the destination domain.

25. The system of claim 17 wherein the boundary condition requires each value of image data in the blended result image at the boundary of the destination domain to equal each corresponding value of image data in the destination image at the boundary.

26. The system of claim 17 wherein the guided interpolator is represented by a functional minimization

min ƒ ∫∫ Ω |∇ƒ−v| 2 ,

having the boundary condition ƒ| ∂Ω =ƒ*| ∂Ω , where v represents an interpolation guide, ƒ represents the blended result image within the destination domain, and ƒ* represents the blended result image outside the destination domain.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034541/0477 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 16, 2003
From: PEREZ, PATRICK; GANGNET, MICHEL; BLAKE, ANDREW
To: MICROSOFT CORPORATION
Reel/Frame 013985/0127 →