[Image-SIG] Stumped ... ImageEnhance not working at all ...

Robert Melton rmelton@xram.com
Wed, 17 Jul 2002 17:49:24 -0400


This is a multi-part message in MIME format.
--------------010806080105020707070105
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit

The PIL Library is great, but the ImageEnhance module seems to just "not 
work" (at least on Microsoft Windows XP [up to date with hotfixes], with 
ActiveState Python 2.2.1 build 222 and PIL 1.1.3).  I would just like to 
know if anyone else had the problem, or if I am doing something totally 
wrong.   My code is below and attached, and the image my code is using 
is also attached.

Start Code (test.py)
=====================================
import Image, ImageFilter, ImageEnhance

myImage = Image.open('hawaii.jpg')

theEnhancer = ImageEnhance.Brightness(myImage)
theEnhancedImage = theEnhancer.enhance(1.5);

theEnhancedImage.save('hawaiiEnhanced.jpg')
=====================================
End Code

--------------010806080105020707070105
Content-Type: image/jpeg;
 name="hawaii.jpg"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
 filename="hawaii.jpg"

/9j/4AAQSkZJRgABAQEA5gDmAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRof
Hh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwh
MjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAAR
CADrAWADASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAA
AgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkK
FhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWG
h4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl
5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREA
AgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYk
NOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOE
hYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk
5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDwWkpaSmUFJilooASjFFFIAoopaAEpaSlo
AKSiigAooooAKKKKBBRRRQMKKKWgBKQ0tHegBKKMUUCCiiigAooooGGKKKKAClpKKQDl+8Kt
r0qmOoq4v3c1Miohj6UhHNONN7VJYlNPpTjTaYCGk70poNAhMUw0+mmmhDaSlxRTEFJS0VRI
mKKKKACiiigAopKKACiijvQAUcUUZoAKKM0UAFFJS0AFJS0cUAFFFFABRRRQAUlLSUAFFFFA
gooooAKKKKACiiigYo61cXG2qXerisNo5qJlRHe1N70u4etN3CpLuIaQ0vHrSGmIbS0lLQAU
xulPpjU0IbSUtFMQUUUVRIlFFFABSUtFACUUUUAFFFFABRRRQAUUUUAFFFA6igAopzoUcrkH
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

--------------010806080105020707070105
Content-Type: text/plain;
 name="test.py"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="test.py"

import Image, ImageFilter, ImageEnhance

myImage = Image.open('hawaii.jpg')

theEnhancer = ImageEnhance.Brightness(myImage)
theEnhancedImage = theEnhancer.enhance(1.5);

theEnhancedImage.save('hawaiiEnhanced.jpg')

--------------010806080105020707070105--