Esempio n. 1
0
    def _apply_filters(self, img):
        '''
        
        '''
        if self.color.get():
            filt = ImageFilter.UnsharpMask(radius=25,
                                           percent=200,
                                           threshold=30)
            img = img.filter(filt)

        if self.edge.get():
            #img = img.convert("LA")
            #filt = ImageFilter.SHARPEN()
            #img = img.filter(filt)
            #enh = ImageEnhance.Brightness(img)
            #img = enh.enhance(0.25)
            enh = ImageEnhance.Contrast(img)
            image = enh.enhance(1.5)
            #enh = ImageEnhance.Brightness(img)
            #img = enh.enhance(0.75)
            filt = ImageFilter.UnsharpMask(radius=50,
                                           percent=150,
                                           threshold=30)
            img = img.filter(filt)
            filt = ImageFilter.EDGE_ENHANCE_MORE()
            img = img.filter(filt)
            filt = ImageFilter.CONTOUR()
            img = img.filter(filt)

        return img
Esempio n. 2
0
def applyFilter(imgObj, outpLoc, filterType, customArgs=[0]):
    """Aplly filter to an image, if arguments arr required use the list customArgs
    Help from: https://hhsprings.bitbucket.io/docs/programming/examples/python/PIL/ImageFilter.html"""
    # format the output dir: if it doesnt exist create it
    if os.path.isdir(outpLoc):
        pass
    else:
        os.makedirs(outpLoc)
    # check if the imgObj is a thumbnail already
    if "filtr" in imgObj.fileName:
        # don't do anything
        return False
    # apply filter based on filter type:
    # open image file
    im = Image.open(imgObj.fileLOC)
    # apply filter based on filterType argument
    if filterType == "BLUR":
        currImFltr = im.filter(ImageFilter.BoxBlur(customArgs[0]))
    elif filterType == "CONTOUR":
        currImFltr = im.filter(ImageFilter.CONTOUR())
    elif filterType == "DETAIL":
        currImFltr = im.filter(ImageFilter.DETAIL())
    elif filterType == "EDGE_ENHANCE":
        currImFltr = im.filter(ImageFilter.EDGE_ENHANCE_MORE())
    elif filterType == "EMBOSS":
        currImFltr = im.filter(ImageFilter.EMBOSS())
    elif filterType == "FIND_EDGES":
        currImFltr = im.filter(ImageFilter.FIND_EDGES())
    elif filterType == "UNSHARP_MASK":
        currImFltr = im.filter(
            ImageFilter.UnsharpMask(radius=customArgs[0],
                                    percent=customArgs[1],
                                    threshold=customArgs[2]))
    else:
        print(f"no filter for filter type: {filterType}")
        return False
    # save filtered image
    currImFltr.save(outpLoc + "filtr-" + filterType + "-" + imgObj.fileName)
Esempio n. 3
0
def edge_enhance_plus(image: Image.Image) -> Image.Image:
    return _apply_filter(image, ImageFilter.EDGE_ENHANCE_MORE())