  When enhancing low-light images, many deep learning algorithms are based on
the Retinex theory. However, the Retinex model does not consider the
corruptions hidden in the dark or introduced by the light-up process. Besides,
these methods usually require a tedious multi-stage training pipeline and rely
on convolutional neural networks, showing limitations in capturing long-range
dependencies. In this paper, we formulate a simple yet principled One-stage
Retinex-based Framework (ORF). ORF first estimates the illumination information
to light up the low-light image and then restores the corruption to produce the
enhanced image. We design an Illumination-Guided Transformer (IGT) that
utilizes illumination representations to direct the modeling of non-local
interactions of regions with different lighting conditions. By plugging IGT
into ORF, we obtain our algorithm, Retinexformer. Comprehensive quantitative
and qualitative experiments demonstrate that our Retinexformer significantly
outperforms state-of-the-art methods on thirteen benchmarks. The user study and
application on low-light object detection also reveal the latent practical
values of our method. Code, models, and results are available at
https://github.com/caiyuanhao1998/Retinexformer
