Ejemplo n.º 1
0
    def do_color(self):
        """usage: color <image:pic1>

        Enhance color in the top image.
        """
        import ImageEnhance
        factor = float(self.do_pop())
        image = self.do_pop()
        enhancer = ImageEnhance.Color(image)
        self.push(enhancer.enhance(factor))
Ejemplo n.º 2
0
    def do_sharpness(self):
        """usage: sharpness <image:pic1>

        Enhance sharpness in the top image.
        """
        import ImageEnhance
        factor = float(self.do_pop())
        image = self.do_pop()
        enhancer = ImageEnhance.Color(image)
        self.push(enhancer.enhance(factor))
Ejemplo n.º 3
0
def adjustImage(infile):
    im = Image.open(infile)
    for f in range(40, 20, -1):
        factor = f / 20.0
        outfile = os.path.splitext(infile)[0] + ('-%f.png' % factor)
        enhancer = ImageEnhance.Brightness(im)
        tmp = enhancer.enhance(factor)
        enhancer = ImageEnhance.Contrast(tmp)
        tmp = enhancer.enhance(1.15)
        enhancer = ImageEnhance.Color(tmp)
        enhancer.enhance(1.15).save(outfile)
Ejemplo n.º 4
0
 def getImage(self):
     """Returns a PIL Image instance."""
     buffer, width, height = self.getBuffer()
     if buffer:
         if self.color:
             return ImageTk.Image.fromstring('RGB', (width, height), buffer,
                                             'raw', 'BGR', 0, -1)
         else:
             return ImageEnhance.Color(
                 ImageTk.Image.fromstring('RGB', (width, height), buffer,
                                          'raw', 'BGR', 0,
                                          -1)).enhance(self.color)
Ejemplo n.º 5
0
def enhance_signature(img):
    bw = ImageEnhance.Color(img).enhance(0.0)
    bright = ImageEnhance.Brightness(bw).enhance(2.2)
    contrast = ImageEnhance.Contrast(bright).enhance(2.0)

    sign = contrast.convert("RGBA")
    datas = sign.getdata()

    #--- Algo to detect non-signatured areas and reduce its alpha to zero --#
    newData = []
    for item in datas:
        if item[0] > 200 and item[1] > 200 and item[2] > 200:
            newData.append((255, 255, 255, 0))
        else:
            newData.append(item)

    sign.putdata(newData)
    sign.save("signature_alpha.png", "PNG")
Ejemplo n.º 6
0
def enhance(pixbuf,
            brightness=1.0,
            contrast=1.0,
            saturation=1.0,
            sharpness=1.0,
            autocontrast=False):
    """Return a modified pixbuf from <pixbuf> where the enhancement operations
    corresponding to each argument has been performed. A value of 1.0 means
    no change. If <autocontrast> is True it overrides the <contrast> value,
    but only if the image mode is supported by ImageOps.autocontrast (i.e.
    it is L or RGB.)
    """
    im = pixbuf_to_pil(pixbuf)
    if brightness != 1.0:
        im = ImageEnhance.Brightness(im).enhance(brightness)
    if autocontrast and im.mode in ('L', 'RGB'):
        im = ImageOps.autocontrast(im, cutoff=0.1)
    elif contrast != 1.0:
        im = ImageEnhance.Contrast(im).enhance(contrast)
    if saturation != 1.0:
        im = ImageEnhance.Color(im).enhance(saturation)
    if sharpness != 1.0:
        im = ImageEnhance.Sharpness(im).enhance(sharpness)
    return pil_to_pixbuf(im)
Ejemplo n.º 7
0
 def enhance(image, factor):
     image = ImageEnhance.Color(image).enhance(factor / 5)
     image = ImageEnhance.Contrast(image).enhance(factor)
     return image
Ejemplo n.º 8
0
 def _decolor_fired(self):
     print "Color diminishing the image!"
     im = Image.open("image.jpg")
     im_decolor_enhanced = ImageEnhance.Color(im).enhance(0.5)
     im_decolor_enhanced.save("image.jpg", "JPEG")
     self.display_image()
Ejemplo n.º 9
0
 def _color_fired(self):
     print "Color enhancing the image!"
     im = Image.open("image.jpg")
     im_color_enhanced = ImageEnhance.Color(im).enhance(2)
     im_color_enhanced.save("image.jpg", "JPEG")
     self.display_image()
Ejemplo n.º 10
0
        out = channelMap(divide, self.black).convert("RGBA")

        out.putalpha(maskgray)
        return out

    def save(self, *args):
        self.create().save(*args)


for filename in files:
    filesuffix = filename.replace("arrow", "", 1)
    im = Image.open(filename)
    im_alpha = (im.copy().split())[-1]
    im_bright = ImageEnhance.Brightness(im).enhance(2)
    im_dark = ImageEnhance.Brightness(im).enhance(.5)
    im_weak = ImageEnhance.Color(im_dark).enhance(.2)
    im_bright.putalpha(im_alpha)
    im_weak.putalpha(im_alpha)
    im_dark.putalpha(im_alpha)

    im_middle = im_weak  # depends on active/inactive?

    (imw, imh) = im.size
    skippix = 4  # should be factor of imh (typically 64)

    holdtypes = {"_active": im_bright, "_inactive": im_dark, "_dead": im_weak}
    for im_middle_name, im_middle in holdtypes.iteritems():

        # stepmania has bottomcap, but we're scrolling the other direction
        htopcap = NotBrokenRGBA((imw, imh))  #Image.new("RGBA", (imw, imh))
        hbody = NotBrokenRGBA((imw, 2 * imh))  # Image.new("RGB", (imw, 2*imh))
Ejemplo n.º 11
0
    x = x - h2 / 2
    y = y - h1 / 2
    sigma = 1.5
    g = np.exp(-(x**2 + y**2) / (2 * sigma**2))
    return g / g.sum()


filename = options.filename
print filename, options.alpha
im = Image.open(filename)

outputDir = options.output

print "loading image ", filename, "... ",

enhancer = ImageEnhance.Color(im)

imGray = enhancer.enhance(0.).convert("L").resize(
    (options.res_size, options.res_size),
    Image.ANTIALIAS).filter(ImageFilter.MedianFilter(options.kernel_size))

print "done."

print "applying threshold... ",

hist = scipy.ndimage.filters.gaussian_filter1d(np.array(
    imGray.histogram()[100:200]),
                                               sigma=10)
val = np.argmin(hist) + options.threshold

contrast = ImageEnhance.Contrast(imGray)