This an implementation of the color transfer method Color Transfer Between Images made with WebGL. The user interface was created with React, Typescript and TailwindCSS.
You can experiment it on here.
The overall performance is still pretty bad, it works fine with small images (I tested images with the resolution 100x100 from https://source.unsplash.com/random/100x100), but for images that are much bigger WebGL loses its context and the browser may crash. Also the quality of the result images are far from the ones presented on the original paper.
In order the run this repo locally, run npm install
and npm start
in the root folder. If npm shows an error, try using a different Node version with nvm. All the logic present in the original paper is within the file ResultCanvas.tsx.