UX/Interaction Designer

Tech+Art Projects

Explorations. Personal projects. Hobbies. Self-learning.



Inpainting is the filling in of missing information in an image in order to execute changes, such as restoring a torn photograph, or removing an object. The aim of inpainting is to fill in these gaps or unwanted regions in such a way that someone with no prior knowledge of the original image would not be able to tell that the image has been altered before. Image editing programs such as Adobe Photoshop allow users to do execute such changes manually, while inpainting algorithms goes one step further to automate this process.

I Implemented inpainting techniques detailed in three research papers, and created a new technique using C++ that combined these algorithms to produce one that was more efficient and accurate. The technique requires a user-drawn mask that approximates the areas to be painted over. This research was conducted in six months during my internship at the Agency for Science, Technology and Research (A*STAR), Singapore.  

The research papers referenced were:

  • Image Inpainting by Marcelo Bertalmio, Guillermo Sapiro, Vicent Caselles and Coloma Ballester
  • An Image Inpainting Technique Based on the Fast Marching Method by Alexandru Telea

  • Texture Synthesis by Non-parametric Sampling by Alexei A. Efros and Thomas K. Leung