Home

Awesome

LIME: Low-light Image Enhancement

This is a MATLAB implementation of the paper, "LIME: Low-Light Image Enhancement via Illumination Map Estimation". It was done as a course project for Digital Image Processing (ECN-316), under the guidance of Prof. Saumik Bhattacharya.

How to Use

Clone the repository:

git clone https://github.com/estija/LIME.git

  Open MATLAB, go to the git repository folder.

Add paths

  Run the following to the MATLAB command window:

addpath('./BM3D');
addpath('./imgs');

Load images and run

  Run the following commands in the MATLAB command window:

img_in = imread('x.bmp'); 
[Ti, Tout, img_out, Iout] = lime_main_module(img_in, mu, rho, ds, ss, flag); 

Table for optimized hyperparameters

Namemurhodsss
building0.011.188101.5
cars0.0451.13450.75
lamp0.81.070.11
land0.51.090.34
moon0.011.210.5
paint0.31.1510.5
robot0.011.25101
table0.0021.0351001
wires0.011.16510.6

Information regarding other files:

Results

<img width = "100%" src = "assets/8_combined.png" />

First column: Low-light images, second column: heat map of initial illumination map, third column: heat map of estimated illumination map, fourth column: enhanced results, fifth column: denoised results via bilateral filtering.

<p align = "left"><img width = "100%" src = "assets/datasets_results.png"></p>

Some low-light images from ExDark dataset, and results obtained from our implementation.

Citation

If you find this code helpful and use it in your research, please cite the following work:

@ARTICLE{guo_lime,
  author={X. {Guo} and Y. {Li} and H. {Ling}},
  journal={IEEE Transactions on Image Processing}, 
  title={LIME: Low-Light Image Enhancement via Illumination Map Estimation}, 
  year={2017},
  volume={26},
  number={2},
  pages={982-993},}