Я не знаю об этом конкретном фильтре, но могу рассказать вам, как выполнить шаги Coincoin в PIL . На самом деле я не запускал код, но вы можете использовать его в качестве справки:
Загрузка исходного и целевого JPEG-файлов
from PIL import Image
img1 = Image.open('image1.jpg')
img2 = Image.open('image2.jpg')
Преобразование пикселей из цветового пространства RGB в цветовое пространство L a b (или любое другое цветовое пространство с яркой информацией)
# Color matrix for Lab
colorMatrix = (
x1, y1, z1, 0,
x2, y2, z2, 0,
x3, y3, z3, 0
)
img1 = img1.convert("RGB", colorMatrix)
img2 = img2.convert("RGB", colorMatrix)
Сохранение целевых цветовых каналов и замена их канала яркости на яркость источника
l1, a1, b1 = img1.split()
l2, a2, b2 = img2.split()
img1.putdata(zip(l1.getdata(), a2.getdata(), b2.getdata()))
Преобразование обратно в пространство RGB
# Color matrix for RGB
RGBcolorMatrix = (
x1, y1, z1, 0,
x2, y2, z2, 0,
x3, y3, z3, 0
)
img1 = img1.convert("RGB", RGBcolorMatrix)
Сохранить JPEG
img1.save('new_image.jpg')