python PIL圖像處理


新建圖像

  1. # 三個參數分別代表圖像的模式:常用的為RGB(3通道) 、RGBA(4通道為透明通道,0為完全透明, 256為不透明)
    # 第二個參數為圖像的長寬參數
    # 第三個為默認的填充顏色,RGB時長度為3,RGBA是長度為4
    img =Image.new('mod',(width,height),(color1, color2, color3, color4))

     

打開圖像

  1. # 打開已存在的圖像,兩個參數分別表示圖像路徑及模式
    img =Image.open('path','mode')

     

預覽&保存

  1. # 加入到緩存中,並打開圖片展示,常用於測試環境中
    img.show()
    # 保存圖片
    img.save('path','mode')

     

修改圖像參數

  1. # 修改圖片大小
    img =img.resize((width,height))
    # 修改模式 常用的模式: RGB、RGBA、1(二值圖)、L(灰度圖),當轉換為二值圖時,默認將128以下的轉為黑色,128以上的像素轉換為白色,為滿足多樣化需求,可以使用自定義方法: img.point(table, 'model'),但是在使用自己的字典轉換后的圖片與使用模式'1'的差別很大,目前無解,隨后有需要了再重新看這個地方
    img = img.convert('mode')

     

透明度處理

  1. # 透明度處理僅為RGBA模式才會有,如為非RGBA,則可進行轉換
    img = img.convert('RGBA')
    # 獲取alpha(透明度層圖像),可以像普通圖片一樣修改相應的透明度
    img.split()[3]
    # 設置圖片的透明圖層,新增或替換透明圖層,注意透明圖層與原圖像的大小要相同
    img.putalpha(alpha)

     

圖像粘貼

  1. img =''
    # 可以將部分圖片粘貼到指定位置,有三個參數,粘貼的內容,粘貼的位置:如果長度為2,則表示起始位置,如果長度為4,則表示起始與結束位置; mask:蒙板層,當img1的模式為RGB模式時,設置為None,如果為RGBA,即存在透明圖層時,因為粘貼時無法將圖片的透明圖層復制過來,所以需要在這里手動指定透明圖層
    img2.paste(img1,(x, y), mask=img.split()[3])

     

其它的操作

  1. # 獲取指定位置的顏色
    img.getpixel((x, y))
    # 設置指定位置的顏色
    img.putpixel((x, y),(color1....))
    # 圖片的旋轉,常用的有三個參數:逆時針旋轉的角度
    # 旋轉過后的圖片過濾器,默認的效果較差,可以指定另外幾種類型
    # expand 偏轉后是否改變長寬來顯示所有內容
    img = img.rotate(angle, resample=NEAREST, expand=0)

     

基本上就這么多內容了,其它的隨后用到時再補…………


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM