#---------------------------------------------------------------------- # Introduction to image processing # # Copyright (C) October 2, 2017 -- Dr. William T. Verts #---------------------------------------------------------------------- #---------------------------------------------------------------------- # Brighten an image by amount input by user (amount can be negative) #---------------------------------------------------------------------- def Main(): Filename = pickAFile() print Filename Canvas = makePicture(Filename) show(Canvas) W = getWidth(Canvas) H = getHeight(Canvas) print "Width = ", W print "Height = ", H Amount = input("Enter Brightness Offset --- ") for Y in range(H): for X in range(W): PX = getPixel(Canvas,X,Y) setRed(PX,getRed(PX) + Amount) setGreen(PX,getGreen(PX) + Amount) setBlue(PX,getBlue(PX) + Amount) repaint(Canvas) return #---------------------------------------------------------------------- # Brighten only the dark pixels in an image #---------------------------------------------------------------------- def Main2(): Filename = pickAFile() print Filename Canvas = makePicture(Filename) show(Canvas) W = getWidth(Canvas) H = getHeight(Canvas) print "Width = ", W print "Height = ", H Amount = input("Enter Brightness Offset --- ") for Y in range(H): for X in range(W): PX = getPixel(Canvas,X,Y) # Do something funky here with red, green, and blue Brightness = (getRed(PX) + getGreen(PX) + getBlue(PX)) / 3 if (Brightness < 128): setRed(PX,getRed(PX) + Amount) setGreen(PX,getGreen(PX) + Amount) setBlue(PX,getBlue(PX) + Amount) repaint(Canvas) return #---------------------------------------------------------------------- # Make an image B&W. Brightness threshold can be changed. #---------------------------------------------------------------------- def Main3(): Filename = pickAFile() print Filename Canvas = makePicture(Filename) show(Canvas) W = getWidth(Canvas) H = getHeight(Canvas) print "Width = ", W print "Height = ", H for Y in range(H): for X in range(W): PX = getPixel(Canvas,X,Y) # Do something funky here with red, green, and blue Brightness = (getRed(PX) + getGreen(PX) + getBlue(PX)) / 3 if (Brightness < 96): setRed(PX,0) setGreen(PX,0) setBlue(PX,0) else: setRed(PX,255) setGreen(PX,255) setBlue(PX,255) repaint(Canvas) return