Neural night vision from the TensorFlow 1.x era
It recovers detail in dark images by decomposing them into illumination and reflectance maps, using 2018-era TensorFlow.

What it does RetinexNet brightens low-light photographs by splitting them into illumination and reflectance components, then enhancing the result. It is a straightforward TensorFlow 1.x implementation of the BMVC 2018 oral paper on deep Retinex decomposition.
The interesting bit The README notes that the model is small enough to train in minutes on a GPU and remains tolerable on a CPU—an almost quaint claim by modern standards, when image models usually demand a small farm.
Key highlights
- Oral BMVC 2018 paper with accompanying LOL dataset and synthetic training pairs.
- Lightweight architecture: training takes minutes on GPU and is described as “affordable” on CPU.
- Ready-to-test pipeline for custom image directories or built-in demo cases.
- Minimal dependency footprint: TensorFlow ≥ 1.5.0, numpy, and PIL.
Caveats
- Locked to TensorFlow 1.x, a framework generation now largely retired.
- The authors caution that deviating from default training parameters can yield “weird results,” so reproducibility requires care.
- No evidence of active maintenance or migration to modern frameworks.
Verdict Useful if you are reproducing 2018 low-light research or need a minimal baseline. Look elsewhere if you require active maintenance or modern framework support.
Frequently asked
- What is weichen582/RetinexNet?
- It recovers detail in dark images by decomposing them into illumination and reflectance maps, using 2018-era TensorFlow.
- Is RetinexNet open source?
- Yes — weichen582/RetinexNet is open source, released under the MIT license.
- What language is RetinexNet written in?
- weichen582/RetinexNet is primarily written in Python.
- How popular is RetinexNet?
- weichen582/RetinexNet has 791 stars on GitHub.
- Where can I find RetinexNet?
- weichen582/RetinexNet is on GitHub at https://github.com/weichen582/RetinexNet.