Bringing Old Photos Back to Life

Ziyu Wan Bo Zhang Dongdong Chen Pan Zhang Dong Chen Jing Liao Fang Wen
City University of Hong Kong Microsoft Research Asia Microsoft Cloud AI USTC
CVPR 2020, Oral Presentation
Paper Supplementary(31.4M) Code(GitHub) Dataset Video(YouTube) Poster Bibtex
Teaser

Abstract

We propose to restore old photos that suffer from severe degradation through a deep learning approach. Unlike conventional restoration tasks that can be solved through supervised learning, the degradation in real photos is complex and the domain gap between synthetic images and real old photos makes the network fail to generalize. Therefore, we propose a novel triplet domain translation network by leveraging real photos along with massive synthetic image pairs. Specifically, we train two variational autoencoders (VAEs) to respectively transform old photos and clean photos into two latent spaces. And the translation between these two latent spaces is learned with synthetic paired data. This translation generalizes well to real photos because the domain gap is closed in the compact latent space. Besides, to address multiple degradations mixed in one old photo, we design a global branch with a partial nonlocal block targeting to the structured defects, such as scratches and dust spots, and a local branch targeting to the unstructured defects, such as noises and blurriness. Two branches are fused in the latent space, leading to improved capability to restore old photos from multiple defects. The proposed method outperforms state-of-the-art methods in terms of visual quality for old photos restoration.

triplet_domain_translation

Framework Overview

(I.) We first train two VAEs: VAE1 for images in real photos r ∈ R and synthetic images x ∈ X, with their domain gap closed by jointly training an adversarial discriminator; VAE2 is trained for clean images y ∈ Y. With VAEs, images are transformed to compact latent space. (II.) Then, we learn the mapping that restores the corrupted images to clean ones in the latent space with partial non-local block.

framework

Comparison

comparison

More Results

more