Color transfer between images
Project description
Color transfer between images
- Paper: Color Transfer between Images by Erik Reinhard, Michael Ashikhmin, Bruce Gooch and Peter Shirley.
- This is the re-implementation based on: https://github.com/chia56028/Color-Transfer-between-Images.
- The transfer process performed in numpy array instead of looping over pixel to improve performance.
- Support on pytorch and numpy.
Requirements
- numpy
- opencv-python>=4.7.0.72
- torch>=1.13.0
Usage
pip install color_transfer_py
Numpy usage
import cv2
from color_transfer import color_transfer
src = cv2.imread("examples/1/src.jpeg")
target = cv2.imread("examples/1/target.png")
out = color_transfer(src, target)
cv2.imwrite("examples/1/output.jpeg", out)
Pytorch usage
import torch
from color_transfer import color_transfer_pytorch
# In pytorch, you can run multiple images at once
# but images must have the same size
src = torch.rand(4, 3, 224, 224)
target = torch.rand(4, 3, 224, 224)
outs = color_transfer_pytorch(src, target)
# Outs shape: (4, 3, 224, 224), output range is [0, 1]
Transfer results
Source | Target | Output |
---|---|---|
Benchmark results
- The benchmark results can be reproduce by running
python3 benchmark.py
This implementation | chia56028 implementation |
---|---|
0.02 second | 1.337 second |
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for color_transfer_py-0.0.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b07d2a7b4a18112f9e77c01c6d1b98fd715a5dbe52e1040c67bb0e3286588bac |
|
MD5 | 721a649d82b80e791c3da3df75feb629 |
|
BLAKE2b-256 | fe136da7b341f174c548fd1a706a4a399a1e6322a222046b852ad661c11b8ee8 |