Software Copyright (C) 2004-2005 Michal Zmiri-Yaniv, Moshe Ofry, Ami Bruker, and Tal Hassner
ImageCompletion is a Windows
XP implementation of the algorithm described in the paper:
Y. Wexler, E. Shechtman and
M. Irani "Space-Time
Video Completion" Computer Vision and Pattern Recognition (CVPR),
Washington, June 2004.
The software performs image
completion (a.k.a. "image hole filling," "image inpainting"). That is,
filling-in holes in images. Note that this is only a partial
implementation of the original algorithm, and can only handle images (video is
currently not supported).
Although the authors of the original algorithm were kind enough to offer advice and assistance, this tool is by no means an official implementation of their work, and its output should not be taken as representing the quality obtainable by a full implementation of their algorithm.
This software was written by
Michal Zmiri-Yaniv, Moshe Ofry, and Ami Bruker as a final (workshop) project,
for a BA degree at the Academic College of
Tel-Aviv Yaffo, under the supervision of Tal
Hassner.
Choose an image.
TIP: For best results, the object to be removed should be
large, and its background should be textured. See the examples below to get an idea of the types of
images ImageCompletion is best suited for.
Use any standard image editing software (e.g.,
MS-Paint, Photoshop, Paintshop Pro, etc.) to draw a uniformly colored mask over the area
to be completed and save image.
TIP: If an object is to be removed, make sure that the mask
is
larger than the object by a margin of at least a few pixels.
TIP: Do not save the image as a JPEG (or any other
lossy compression format), as
this might spoil the mask's color.
Start ImageCompletion.
Click "Set File" to load the masked image.
Click within the mask in the image to let the software know what is the color associated with the hole.
Choose values for the three parameters as follows:
"Number of Levels": Number of resolution levels. Depends on the size of the hole. For the examples in this page 2-4 levels were used.
"Neighborhood Radius": Size of patches used. Depends on the size of the texture elements of the background. 1=3x3, 2=5x5, 3=7x7 etc. For the examples in this page we used 2-4.
"Number of Rounds": The current version does not stop automatically on convergence. Instead, the number of iterations for each resolution scale must be explicitly entered. This value was usually more than 5, and less than 20.
Press "Fix Hole!" to start the completion process. Note that the current implementation can take a long time to complete an image (for the example images, over two hours) and plenty of memory (several hundred MBs).
Click on the images to view the original full size pictures.
Original Image |
Image with Mask (Input) |
Final Result (Output) |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
![]() |
![]() |
![]() |
If you hold the copyright to one of these images and would like it removed from this page, please contact Tal Hassner, and we will remove it immediately.
Software Copyright (C) 2004-2005 Michal Zmiri-Yaniv, Moshe Ofry, Ami Bruker,
and Tal Hassner
The SOFTWARE ("ImageCompletion") is provided "as is", without any
guarantee made as to its suitability or fitness for any particular use.
It may contain bugs, so use of this tool is at your own risk. We take
no responsibility for any damage that may unintentionally be caused
through its use.
You may not use the source to SOFTWARE or distribute SOFTWARE in any
form, without express written permission of the copyright holders.
The SOFTWARE makes use of the approximate nearest neighbor package [1], which is protected under the GNU Lesser General Public License. A copy of this license is included in the distribution.
Version 1.01 is available for download
here.
Requirements: ImageCompletion runs on Windows XP and requires the
".net" framework.
S. Arya, D. Mount, N. Netanyahu, R. Silverman, and A. Wu. An optimal algorithm for approximate nearest neighbor searching in fixed dimensions. Journal of the ACM, 45(6), 1998. Source code available from www.cs.umd.edu/~mount/ANN/.
Y. Wexler, E. Shechtman and M. Irani "Space-Time
Video Completion" Computer Vision and Pattern Recognition (CVPR),
Washington, June 2004.
For any question, requests, problems etc. please feel free to contact Tal Hassner.
This page maintained by
Tal Hassner
Last update: 13-Aug-2006