/color_transfer

Performs color transfer between two images. Loosely based on the "Color Transfer between Images" paper by Reinhard et al., 2001.

Primary LanguagePythonMIT LicenseMIT

Super fast color transfer between images

The color_transfer package is an OpenCV and Python implementation based (loosely) on Color Transfer between Images [Reinhard et al., 2001] The algorithm itself is extremely efficient (much faster than histogram based methods), requiring only the mean and standard deviation of pixel intensities for each channel in the L*a*b* color space.

For more information, along with a detailed code review, take a look at this post on my blog.

#Requirements

  • OpenCV
  • NumPy

#Install To install, make sure you have installed NumPy and compiled OpenCV with Python bindings enabled.

From there, there easiest way to install is via pip:

$ pip install color_transfer

#Examples Below are some examples showing how to run the example.py demo and the associated color transfers between images.

$ python example.py --source images/autumn.jpg --target images/fallingwater.jpg Autumn and Fallingwater screenshot

$ python example.py --source images/woods.jpg --target images/storm.jpg Woods and Storm screenshot

$ python example.py --source images/ocean_sunset.jpg --target images/ocean_day.jpg Sunset and Ocean screenshot