1. 程式人生 > >利用python進行影象處理

利用python進行影象處理

我的系統上python的版本是32位,python2.7.9: 在進行影象處理前需要按照PIL模組,參考了很多人的建議,最後選用了pillow, https://pypi.python.org/pypi/Pillow/2.7.0,直接下載了exe版本: 注意若之前安裝過PIL,需先解除安裝PIL再安裝pillow,碼程式碼的時候需要把import Image換成from PIL import Image。 (1)介紹下PIL Image模組的一些簡單操作:
#coding:utf-8

from PIL import Image
#開啟圖片
img = Image.open("001.jpg")

#調整圖片大小,原來的圖書是200*200,Image.BILINEAR表示使用雙線性法對畫素點插值
newImg = img.resize((100,100), Image.BILINEAR)
newImg.save("newImg001.jpg")

#旋轉圖片
rotImg = newImg.rotate(90)
rotImg.save("rotImg.jpg") #若想進行格式轉換,可直接改字尾名,PIL會自動完成

#對圖片畫素點進行直方圖統計,執行後會看到
print rotImg.histogram()
(2)介紹下PIL ImageEnhance模組的一些簡單操作:
#coding:utf-8

from PIL import Image, ImageEnhance
#開啟圖片
img = Image.open("001.jpg")

#影象增強
brightness = ImageEnhance.Brightness(img) #得到Brightness類例項
newImg = brightness.enhance(1.5) #亮度增強1.5倍
newImg.save("newImg001.jpg")
結果如下:             
#coding:utf-8

from PIL import Image, ImageEnhance
#開啟圖片
img = Image.open("001.jpg")

#影象尖銳化
sharpness = ImageEnhance.Sharpness(img) #得到Sharpness類例項
newImg = sharpness.enhance(5.0) 
newImg.save("newImg001.jpg")
結果如下:        
#coding:utf-8

from PIL import Image, ImageEnhance
#開啟圖片
img = Image.open("001.jpg")

#增強圖片對比度
contrast = ImageEnhance.Contrast(img) #得到contrast類例項
newImg = contrast.enhance(3.0) 
newImg.save("newImg001.jpg")
結果如下:
     
(3)介紹下PIL Draw模組的一些簡單操作:
#coding:utf-8

from PIL import Image, ImageDraw
#開啟圖片
img = Image.open("001.jpg")
draw = ImageDraw.Draw(img)

width, height = img.size

#畫直線,線的顏色
draw.line(((0,width/2), (width-1, height/2)), fill = 255)
img.save("newImg001.jpg")

#畫圓
#(0,0,width-1,height-1)指定了所畫弧線的界限 
#0,360是所畫弧線的起始角度和終止角度
draw.arc(((0,0), (width-1, height-1)), 0, 360, fill = 255)
img.save("newImg002.jpg")

#除此之外,還可以畫矩形,多邊形,橢圓,扇形等~~~