Object-based image inpainting
First Claim
1. A computer-executable method, comprising:
- selecting by a computing device, a first visual object to be a model for synthesizing a part of an image via object-based inpainting;
generating a second visual object from the first visual object;
wherein generating the second visual object includes geometrically matching features of the second visual object to features of the first visual object, wherein geometrically matching features includes identifying and matching a main axis of symmetry in the first and second visual objects, wherein the main axis of symmetry is identified by;
i) calculating a weight center of a visual object;
ii) searching a plurality of lines that pass through the weight center that separate the visual object into two partitions; and
iii) selecting a line of the plurality of lines as the main axis of symmetry based on a length of the line of the plurality of lines and a relative position of the line of the plurality of lines; and
inpainting the second visual object into the part of the image.
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods provide object-based image inpainting. The object-based inpainting can recover part of a missing object or can synthesize visual objects that are entirely missing. In one implementation, an exemplary system generates a target visual object to be inpainted into an image, by geometrically matching key features with a model visual object that can be selected from the same or another image. Borders of the target object are refined through pixel-based contour deformation and textures for the target object are obtained either by pixel interpolation or by patch-based modeling of pre-existing texture in the image. Graph-cut segmentation rectifies image overlap as the target object is embedded in the image. Poisson editing filters visual seams, and edge filling completes visual gaps around the border of the target object.
-
Citations
18 Claims
-
1. A computer-executable method, comprising:
-
selecting by a computing device, a first visual object to be a model for synthesizing a part of an image via object-based inpainting; generating a second visual object from the first visual object;
wherein generating the second visual object includes geometrically matching features of the second visual object to features of the first visual object, wherein geometrically matching features includes identifying and matching a main axis of symmetry in the first and second visual objects, wherein the main axis of symmetry is identified by;i) calculating a weight center of a visual object; ii) searching a plurality of lines that pass through the weight center that separate the visual object into two partitions; and iii) selecting a line of the plurality of lines as the main axis of symmetry based on a length of the line of the plurality of lines and a relative position of the line of the plurality of lines; and inpainting the second visual object into the part of the image. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A system, comprising:
-
a coarse object construction engine for generating via a computing device, an object to embed in a part of an image to be inpainted via geometrical matching with features of a source model object; and a texture generator to model texture patches to apply to the object with respect to contours and symmetry axes of the object, wherein a symmetry axis of the object is identified by; i) calculating a weight center of an object; ii) searching a plurality of lines that pass through the weight center that separate the object into two partitions; and iii) selecting a line of the plurality of lines as the main axis of symmetry based on a length of the line of the plurality of lines and a relative position of the line of the plurality of lines. - View Dependent Claims (15, 16, 17)
-
-
18. A computing device comprising:
-
a processor; and a memory coupled to the processor, the memory comprising computer-program instructions executable by the processor for; selecting a first visual object to be a model for synthesizing a part of an image via object-based inpainting; generating a second visual object from the first visual object;
wherein generating the second visual object includes geometrically matching features of the second visual object to features of the first visual object, wherein geometrically matching features includes identifying and matching a main axis of symmetry in the first and second visual objects, wherein the main axis of symmetry is identified by;i) calculating a weight center of a visual object; ii) searching a plurality of lines that pass through the weight center that separate the visual object into two partitions; and iii) selecting a line of the plurality of lines as the main axis of symmetry based on a length of the line of the plurality of lines and a relative position of the line of the plurality of lines; and inpainting the second visual object into the part of the image.
-
Specification