Presentation is loading. Please wait.

Presentation is loading. Please wait.

IMAGE PROCESSING LIBRARY (PIL) This is a package that you can import into python and it has quite a few methods that you can process image files with.

Similar presentations


Presentation on theme: "IMAGE PROCESSING LIBRARY (PIL) This is a package that you can import into python and it has quite a few methods that you can process image files with."— Presentation transcript:

1 IMAGE PROCESSING LIBRARY (PIL) This is a package that you can import into python and it has quite a few methods that you can process image files with. There are loaders for the majority of the popular file formats The following import is required from PIL import Image The above works already in Anaconda. If you are building your own world using IDLE then you would need to download PIL and install in your environment. Auto generates x values here!

2 EXAMPLE COMMANDS IN PIL The Image module is quite useful. Here are some examplesImage module from PIL import Image im = Image.open("bride.jpg") #Read in the image im.rotate(45) #Returns a rotated image, 45 degrees im.crop(box) # Returns a copy of a rect. sub-region im.filter(filter) #Returns a copy of an image filtered by the given #filter. For a list of available filters, see the ImageFilter module.ImageFilter im.load() #Returns a high speed pixel access object. im.resize() # Returns the image resized. im.save(“Name”) #Save the image into file “Name”

3 STRUCTURE OF A 24 BIT IMAGE cols,rows=im.size rows=18 and cols=35 Contents=(R,G,B) tuple i.e. (255,34,128) (14,14) Location=(col,row)

4 LOOKING AT EVERY PIXEL In order to process each pixel in the image we need to use a double loop. Here is a simple example. for c in range(3): #col values for r in range(5): #row values print c,r 0 0 1 0 2 col 0 0 3 0 4 1 0 1 1 2 col 1 1 3 1 4 2 0 2 1 2 2 col 2 2 3 2 4

5 ANTIALISING This is a process that is used in image production that smooths out hard edges with a visual trick. Here is an example. antialiased no antialising

6 PAINT.NET ANTIALISING Every image processing program has a button or icon to click to turn on/off antialising. The above is paint.nets method. Note you must be in one of the drawing tools, ie pen to see the control. Turn it off or on BEFORE you draw.

7 I CREATED THIS IMAGE WITHOUT ANTIALISING Lets turn this red to grey

8 CONVERT RED PIXELS TO GRAY BY LOOPING THRU EVERY PIXEL import matplotlib.pyplot as plt from PIL import Image im = Image.open('thingsnoanti.png') # read in image pix = im.load() #allows fast access for pixel access cols,rows=im.size #get dimensions from size tuple #look at every single pixel and if red turn it to gray. Capice?! for r in range(rows): for c in range(cols): if (pix[c,r] == (255,0,0)): #if pixel is red pix[c,r]=(220,220,220) #set it gray plt.imshow(im) plt.show() Note that you can do anything you want to every pixel using the above method. Just change the blue lines.

9 USING FILTERS The filter operations (BLUR, SMOOTH, SHARPEN etc) will loop thru the entire image for you. Here is the result of blur as applied to our original image.

10 AND HERE IS THE CODE import matplotlib.pyplot as plt from PIL import Image from PIL import ImageFilter im = Image.open('thingsnoanti.png') plt.figure(1) #work on figure 1 plt.imshow(im) #show original image plt.show() im1 = im.filter(ImageFilter.BLUR) #lets blur it plt.figure(2) #Work on figure 2 plt.imshow(im1) #show new image plt.show() From ImageFilter module BLUR CONTOUR DETAIL EDGE_ENHANCE EDGE_ENHANCE_MORE EMBOSS FIND_EDGES SMOOTH SMOOTH_MORE SHARPEN

11 PLOT A HISTOGRAM OF A GRAY-SCALE IMAGE import matplotlib.pyplot as plt from PIL import Image im = Image.open('sea.gif') plt.figure(1) plt.imshow(im) #show original image plt.show() hist = im.histogram() #note that the hist here is a list not an image plt.figure(2) plt.plot(hist) #So we must plot the list NOT imshow() plt.show()

12 HERE IS AN EXAMPLE


Download ppt "IMAGE PROCESSING LIBRARY (PIL) This is a package that you can import into python and it has quite a few methods that you can process image files with."

Similar presentations


Ads by Google