程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 更多關於編程 >> python處理圖片之PIL模塊簡單使用方法

python處理圖片之PIL模塊簡單使用方法

編輯:更多關於編程

       這篇文章主要介紹了python處理圖片之PIL模塊簡單使用方法,涉及Python使用PIL模塊實現針對圖片的銳化、繪制直線、繪制橢圓等相關技巧,需要的朋友可以參考下

      本文實例講述了python處理圖片之PIL模塊簡單使用方法。分享給大家供大家參考。具體實現方法如下:

      ?

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 #!/usr/bin/env python #encoding: utf-8 import Image class myimg: def __init__(self, open_file, save_file): self.img = Image.open(open_file) self.save_file = save_file def Change_Size(self, percent=100, height=None, width=None): ''''' percent:以百分比來決定大小 height, width:以指定的高、寬來決定大小 ''' if not (height and width): width,height = self.img.size new_img = self.img.resize((width*percent/100,height*percent/100),Image.BILINEAR) new_img.save(self.save_file) def Rotation(self, angle): ''''' angle: 旋轉的度數 ''' rot_img = self.img.rotate(angle) #旋轉 rot_img.save(self.save_file) def Save_as(self, filename): ''''' filename: 另存為圖片格式,直接根據後綴名來 ''' self.img.save(filename) def Draw_Something(self): ''''' 利用ImageDraw來畫圖形 ''' import ImageDraw draw = ImageDraw.Draw(self.img) width,height = self.img.size draw.line(((0,0),(width-1,height-1)),fill=255) #畫直線 draw.line(((0,height-1),(width-1,0)),fill=255) draw.arc((0,0,width-1,height-1),0,360,fill=255) #畫橢圓 self.img.save(self.save_file) def Enhance_Something(self): ''''' 利用 ImageEnhance來增強圖片效果 ''' import ImageEnhance brightness = ImageEnhance.Brightness(self.img) bright_img = brightness.enhance(2.0) ##亮度增強 bright_img.save(self.save_file) sharpness = ImageEnhance.Sharpness(self.img) sharp_img = sharpness.enhance(7.0) #銳度增強 sharp_img.save(self.save_file) contrast = ImageEnhance.Contrast(self.img) #對比度增強 contrast_img = contrast.enhance(2.0) contrast_img.save(self.save_file) if __name__ == "__main__": file_name = r"D:test.png" save_file = r"D:save.png" saveas_file = r"D:save_as.bmp" oimg = myimg(file_name, save_file) oimg.Change_Size(30) oimg.Rotation(45) oimg.Save_as(saveas_file) oimg.Draw_Something() oimg.Enhance_Something()

      原圖:

      處理過的畫圖:(銳化過的)

      PS:此外還有另一個比較常用的模塊,image模塊。

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved