9
0

Redistributor: Transforming Empirical Data Distributions

Abstract

We present an algorithm and package, Redistributor, which forces a collection of scalar samples to follow a desired distribution. When given independent and identically distributed samples of some random variable SS and the continuous cumulative distribution function of some desired target TT, it provably produces a consistent estimator of the transformation RR which satisfies R(S)=TR(S)=T in distribution. As the distribution of SS or TT may be unknown, we also include algorithms for efficiently estimating these distributions from samples. This allows for various interesting use cases in image processing, where Redistributor serves as a remarkably simple and easy-to-use tool that is capable of producing visually appealing results. For color correction it outperforms other model-based methods and excels in achieving photorealistic style transfer, surpassing deep learning methods in content preservation. The package is implemented in Python and is optimized to efficiently handle large datasets, making it also suitable as a preprocessing step in machine learning. The source code is available at https://github.com/paloha/redistributor.

View on arXiv
Comments on this paper