This is a mini project I have done during my research internship at school of Information Science and Technology (IST), VISTEC, under the supervision of Prof. Supasorn Suwajanakorn.
The literature Image Inpainting for Irregular Holes Using Partial Convolutions shows that image inpainting network can be utilised for object removal task. Hence, an image inpainting network is used in this project.
In this project partial convolutions for image inpainting with pre-trained weight on ImageNet is used to perform the furniture removal task. Technically, to remove furniture objects in an image, a mask image of furniture objects in the image needs to be created first. The mask image and the original image will be fed into the network, and the network will then output the image with no the furniture objects which are represented in the mask image.
Download ADE20K dataset
Install the dependencies of this project as listed in requirements_network.txt
and requirements_preprocess.txt
.
The configuration is in config.py
- considered_obj: a list of considered objects to be removed
Follow steps in extract_segment.ipynb
Follow steps in prediction.ipynb