IP Library Granted Patent US 7,796,787
Granted Patent B2
US 7,796,787 · App. 11/670,963 · Granted Sep 14, 2010

Face component replacement

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,796,787
App. No.
11/670,963
Granted
Sep 14, 2010
Kind
B2
Abstract

A method is provided for cloning a facial feature template image into an original image including a face to form a new image. The method includes detecting the face and facial features in the original image, reducing the original and the template images, cloning the reduced template image into the reduced original image to form a new image, enlarging the new image, and displaying the enlarged new image. The method may use Poisson cloning where a resulting system of linear equations is solved by applying a Thomas algorithm to determine an initial solution and applying a Conjugate Gradient algorithm using the initial solution to determine a final solution to the system of linear equations.

Claims (62)

1. A method for cloning a template image of a facial feature into an original image including a face to include the facial feature, comprising:

detecting facial features in the original image;

reducing one or more of the original image and a template with the template image and a template mask in size;

cloning, using a programmed processor, the reduced template image into the reduced original image at a location based on the reduced template mask and locations of the facial features on the reduced original image to form a new image, comprising:

placing the reduced template mask on the reduced original image at the location based on the locations of the facial features to determine a cloning area to clone the reduced template image into the reduced original image; and

applying Poisson cloning to clone the reduced template image into the reduced original image at the cloning area to form the new image;

enlarging the new image; and

displaying the enlarged new image.

2. The method of claim 1 , wherein said enlarging the new image comprises:

directly enlarging the reduced template image to match the template image at its original size where the enlarged reduced template image is missing pixels between known pixels;

subtracting known pixels in of the enlarged reduced template image from corresponding pixels in the template image to form a difference image;

applying bilinear interpolation to the difference image to fill in missing pixels in the difference image; and

adding the difference image to the template image to form a portion of the enlarged new image.

3. The method of claim 2 , after said enlarging the new image and prior to said displaying the enlarged new image, further comprising:

cloning a portion of the template image at its original size into a boundary margin of missing pixels between the portion and an other portion of the enlarged new image.

4. The method of claim 3 , wherein said cloning a portion of the template image at its original size into a boundary margin of missing pixels between the portion and an other portion of the enlarged new image comprises:

applying Poisson cloning to clone the portion of the template image into the boundary margin of missing pixels between the portion and the other portion of the enlarged new image.

5. The method of claim 3 , after said cloning a portion of the template image and prior to said displaying the enlarged new image, further comprising:

smoothing a boundary between the portion and the other portion of the enlarged new image.

6. The method of claim 5 , wherein said smoothing a boundary comprises:

applying Poisson cloning to clone a source image into a destination image having same size as the enlarged new image to form an alpha image, all pixel in the source image having values of 0, all pixels within the boundary in the destination image having values of 0, and all pixels outside of the boundary in the destination image having values of 255; and

using the alpha image to merge the enlarged new image and the original image.

7. The method of claim 1 , 4 , or 6 , wherein said applying Poisson cloning comprises:

generating a system of linear equations;

applying a Thomas algorithm to determine an initial solution; and

applying a Conjugate Gradient algorithm using the initial solution to determine a final solution to the system of linear equations.

8. The method of claim 7 , wherein said applying a Thomas algorithm comprises:

determining a first solution to the system of linear equations by row;

determining a second solution to the system of linear equation by column; and

averaging the first and the second solutions to create the initial solution.

9. The method of claim 8 , wherein said applying a Conjugate Gradient algorithm comprises applying block matrix operations to determine the final solution to the system of linear equations.

10. A non-transitory computer-readable storage medium encoded with executable instructions for execution by a processor to clone a template image of a facial feature into an original image including a face to include the facial feature, the executable instructions comprising:

detecting facial features in the original image;

reducing one or more of the original image and a template with the template image and a template mask in size;

cloning, using a programmed processor, the reduced template image into the reduced original image at a location based on the reduced template mask and locations of the facial features on the reduced original image to form a new image, comprising:

placing the reduced template mask on the reduced original image at the location based on the locations of the facial features to determine a cloning area to clone the reduced template image into the reduced original image; and

applying Poisson cloning to clone the reduced template image into the reduced original image at the cloning area to form the new image;

enlarging the new image; and

displaying the enlarged new image.

11. The non-transitory computer-readable medium of claim 10 , wherein said enlarging the new image comprises:

directly enlarging the reduced template image to match the template image at its original size where the enlarged reduced template image is missing pixels between known pixels;

subtracting known pixels in the enlarged reduced template image from corresponding pixels in the template image to form a difference image;

applying bilinear interpolation to the difference image to fill in missing pixels in the difference image; and

adding the difference image to the template image to form a portion of the enlarged new image.

12. The non-transitory computer-readable medium of claim 11 , after said enlarging the new image and prior to said displaying the enlarged new image, wherein the executable instructions further comprise:

cloning a portion of the template image at its original size into a boundary margin of missing pixels between the portion and an other portion of the enlarged new image.

13. The non-transitory computer-readable medium of claim 12 , wherein said cloning a portion of the template image at its original size into a boundary margin of missing pixels between the portion and an other portion of the enlarged new image comprises:

applying Poisson cloning to clone the portion of the template image into the boundary margin of missing pixels between the portion and the other portion of the enlarged new image.

14. The non-transitory computer-readable medium of claim 12 , after said cloning a portion of the template image and prior to said displaying the enlarged new image, the executable instructions further comprise:

smoothing a boundary between the portion and the other portion of the enlarged new image.

15. The non-transitory computer-readable medium of claim 14 , wherein said smoothing a boundary comprises:

applying Poisson cloning to clone a source image into a destination image having same size as the enlarged new image to form an alpha image, all pixel in the source image having values of 0, all pixels within the boundary in the destination image having values of 0, and all pixels outside of the boundary in the destination image having values of 255; and

using the alpha image to merge the enlarged new image and the original image.

16. The non-transitory computer-readable medium of claim 10 , 13 , or 15 , wherein said applying Poisson cloning comprises:

generating a system of linear equations;

applying a Thomas algorithm to determine an initial solution; and

applying a Conjugate Gradient algorithm using the initial solution to determine a final solution to the system of linear equations.

17. The non-transitory computer-readable medium of claim 16 , wherein said applying a Thomas algorithm comprises:

determining a first solution to the system of linear equations by row;

determining a second solution to the system of linear equation by column; and

averaging the first and the second solutions to create the initial solution.

18. The non-transitory computer-readable medium of claim 17 , wherein said applying a Conjugate Gradient algorithm comprises applying block matrix operations to determine the final solution to the system of linear equations.

Assignments (2)
RELEASE OF SECURITY INTEREST Recorded Nov 13, 2015
From: EAST WEST BANK
To: ARCSOFT, INC.; MULTIMEDIA IMAGE SOLUTION LIMITED; ARCSOFT (HANGZHOU) MULTIMEDIA TECHNOLOGY CO., LTD.; ARCSOFT (SHANGHAI) TECHNOLOGY CO., LTD.; ARCSOFT HANGZHOU CO., LTD.
Reel/Frame 037109/0027 →
SECURITY INTEREST Recorded Aug 14, 2014
From: ARCSOFT, INC.; ARCSOFT (SHANGHAI) TECHNOLOGY CO., LTD.; ARCSOFT (HANGZHOU) MULTIMEDIA TECHNOLOGY CO., LTD.; MULTIMEDIA IMAGE SOLUTION LIMITED; ARCSOFT HANGZHOU CO., LTD.
To: EAST WEST BANK
Reel/Frame 033535/0537 →