示例#1
0
# encoding: utf-8
from __future__ import print_function

from PIL import ImageOps, ImageChops, ImageEnhance as enhancers
from clu.abstract import Slotted
from clu.predicates import tuplize
from instakit.abc import abstract, ABC, Processor
from instakit.exporting import Exporter

exporter = Exporter(path=__file__)
export = exporter.decorator()


@export
class EnhanceNop(ABC, metaclass=Slotted):

    __slots__ = tuplize('image')

    def __init__(self, image=None):
        self.image = image

    def adjust(self, *args, **kwargs):
        return self.image


@export
class Adjustment(Processor):
    """ Base type for image adjustment processors """
    __slots__ = tuplize('value')

    def __init__(self, value=1.0):