IP Library Granted Patent US 8,379,049
Granted Patent B2
US 8,379,049 · App. 13/445,700 · Granted Feb 19, 2013

Structure-preserving clone brush

Inventors: Byong Mok Oh (Newton, MA); Fredo Durand (Boston, MA)
Assignee: EveryScape, 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 8,379,049
App. No.
13/445,700
Granted
Feb 19, 2013
Kind
B2
Abstract

The invention provides tools and techniques for clone brushing pixels in an image while accounting for inconsistencies in apparent depth and orientation within the image. The techniques do not require any depth information to be present in the image, and the data structure of the image is preserved. The techniques allow for color compensation between source and destination regions. A snapping technique is also provided to facilitate increased accuracy in selecting source and destination positions.

Claims (33)

1. A computerized method for clone-brushing in a 2D image comprising

a) specifying a first world plane in the 2D image;

b) providing a source position and destination position in the 2D image;

c) using a computer, identifying a destination region in the 2D image relative to the destination position;

d) using the computer, determining a source region in the 2D image relative to the first world plane and corresponding to the destination region, using the source position and the destination position;

e) using the computer, transforming 2D image information of the source region to 2D image information of the destination region such the perspective of the 2D image relative to the first world plane in the destination region is maintained; and

f) using the computer, painting in the 2D image by copying the transformed 2D image information to the destination region.

2. The method of claim 1 , wherein specifying a first world plane in the 2D image comprises specifying two sets of parallel lines.

3. The method of claim 1 , wherein transforming 2D image information of the source region further comprises a bilinear interpolation of 2D image information in the source region relative to the first world plane.

4. The method of claim 1 further comprising: providing a first color sample region for the source region; providing a second sample color region for the destination region; and, using the computer, -computing a color ratio between the second color sample region and the first color sample region, wherein transforming 2D image information of the source region relative to the first world plane further comprises applying the color ratio to the 2D image information of the source region.

5. The method of claim 4 , wherein the color ratio is computed using Gaussian weighted averages of the first and second sample color regions.

6. The method of claim 4 , wherein the first color sample region is provided with respect to the first world plane.

7. A computer program product for clone-brushing in a 2D image, the computer program product comprising a non-transitory computer readable medium having computer readable program code stored thereon, the computer readable program code including program code for:

a) specifying a first world plane in the 2D image;

b) providing a source position and a destination position in the 2D image;

c) identifying a destination region in the 2D image relative to the destination position;

d) determining a source region in the 2D image relative to the first world plane and corresponding to the destination region, using the source position and the destination position;

e) transforming 2D image information of the source region to 2D image information of the destination region such that the perspective of the 2D image in the destination region relative to the first world plane is maintained; and

f) painting in the 2D image by copying the transformed 2D image information to the destination region.

8. The computer program product of claim 7 , wherein specifying a first world plane in the 2D image comprises specifying two sets of parallel lines.

9. The computer program product of claim 7 , wherein transforming 2D image information of the source region further comprises a bilinear interpolation of 2D image information in the source region relative to the first world plane.

10. The computer program product of claim 7 further comprising program code for: providing a first color sample region for the source region; providing a second sample color region for the destination region; and computing a color ratio between the seocond color sample region and the first color sample region, wherein transforming 2D image information of the source region relative to the first world plane further comprises applying the color ratio to the 2D image information of the source region.

11. The computer program product of claim 10 , wherein the color ratio is computed using Gaussian weighted averages of the first and second sample color regions.

12. The computer program product of claim 10 , wherein the first color sample region is provided with respect to the first world plane.

13. A system for editing a 2D image, the system comprising: a computer comprising a processor, memory, and a display, the memory containing instructions that, when executed by the processor, cause the computer to:

receive an input 2D image; interact with a user to specify a first world plane in the 2D image;

interact with a user to provide a source position and a destination position in the 2D image;

interact with a user to identifying a destination region in the 2D image relative to the destination position;

determine a source region in the 2D image relative to the first world plane and corresponding to the destination region, using the source position and the destination position;

transform 2D image information of the source region to 2D image information of the destination region such that the perspective of the 2D image relative to the first world plane in the destination region is maintained; and

painting in the 2D image by copying the transformed 2D image information to the destination region.

14. The system of claim 13 , wherein the instructions, when executed by the processor, further cause the computer to interact with the user to specify a world plane by drawing two sets of parallel lines.

15. The system of claim 13 , wherein the instructions, when executed by the processor, further cause the computer to interact with the user to: provide a first color sample region for the source region; provide a second sample color region for the destination region; and compute a color ratio between the second color sample region and the first color sample region, wherein the color ratio is applied to the 2D image information of the source region when the 2D information of the source region is transformed to 2D image information of the destination region.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 22, 2012
From: OH, BYONG MOK; DURAND, FREDO
To: MOK3, INC.
Reel/Frame 029165/0100 →
CHANGE OF NAME Recorded Oct 22, 2012
From: MOK3, INC.
To: EVERYSCAPE, INC.
Reel/Frame 029165/0192 →
Continuity (5)
Continuation 12540476 · Aug 13, 2009
Continuation 11951355 · Dec 6, 2007
Continuation 10601842 · Jun 23, 2003
Provisional Application 60466628 · Apr 30, 2003
Related Publication 20120236019A1 · Sep 20, 2012