欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python使用pil庫實(shí)現(xiàn)圖片合成實(shí)例代碼

 更新時(shí)間:2018年01月20日 14:47:31   作者:lwli  
這篇文章主要介紹了python PIL實(shí)現(xiàn)圖片合成實(shí)例代碼,小編覺得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下

本文研究的主要是python PIL實(shí)現(xiàn)圖片合成的相關(guān)內(nèi)容,具體介紹如下,分享實(shí)例代碼。

在項(xiàng)目中需要將兩張圖片合在一起。遇到兩種情況,一種就是兩張非透明圖片的合成, 一種是涉及到透明png的合成。

相關(guān)API見 http://pillow.readthedocs.io/en/latest/reference/Image.html

第一種情況,直接將兩張圖片合在一起就可以了。如下圖所示,將兩張圖片合在一起

+=

詳細(xì)代碼

from PIL import Image
 #加載底圖
 base_img = Image.open(ur'D:\Desktop\1.png')
 # 可以查看圖片的size和mode,常見mode有RGB和RGBA,RGBA比RGB多了Alpha透明度
 # print base_img.size, base_img.mode
 box = (166, 64, 320, 337) # 底圖上需要P掉的區(qū)域

 #加載需要P上去的圖片
 tmp_img = Image.open(ur'D:\Desktop\2.png')
 #這里可以選擇一塊區(qū)域或者整張圖片
 #region = tmp_img.crop((0,0,304,546)) #選擇一塊區(qū)域
 #或者使用整張圖片
 region = tmp_img

 #使用 paste(region, box) 方法將圖片粘貼到另一種圖片上去.
 # 注意,region的大小必須和box的大小完全匹配。但是兩張圖片的mode可以不同,合并的時(shí)候回自動(dòng)轉(zhuǎn)化。如果需要保留透明度,則使用RGMA mode
 #提前將圖片進(jìn)行縮放,以適應(yīng)box區(qū)域大小
 # region = region.rotate(180) #對(duì)圖片進(jìn)行旋轉(zhuǎn)
 region = region.resize((box[2] - box[0], box[3] - box[1]))
 base_img.paste(region, box)
 #base_img.show() # 查看合成的圖片
 base_img.save('./out.png') #保存圖片

第一種情況時(shí)候規(guī)則的圖片進(jìn)行合并,比如矩形,難以對(duì)于任意形狀的圖片。對(duì)于任意形狀的合并可以考慮使用透明的PNG來完成。

第二種情況,將非透明的圖片放在底部,上面放一張局部透明的png圖片,然后合成一張圖片。

代碼

from PIL import Image
 #加載中間透明的手機(jī)圖片
 base_img = Image.open(ur'D:\Desktop\3.png')
 #新建透明底圖,大小和手機(jī)圖一樣,mode使用RGBA,保留Alpha透明度,顏色為透明
 #Image.new(mode, size, color=0),color可以用tuple表示,分別表示RGBA的值
 target = Image.new('RGBA', base_img.size, (0, 0, 0, 0))
 box = (166, 64, 320, 337) #區(qū)域
 # 加載需要狐貍像
 region = Image.open(ur'D:\Desktop\4.png')
 region = region.rotate(180) #旋轉(zhuǎn)180度
 #確保圖片是RGBA格式,大小和box區(qū)域一樣
 region = region.convert("RGBA")
 region = region.resize((box[2] - box[0], box[3] - box[1]))
 #先將狐貍像合成到底圖上
 target.paste(region,box)
 #將手機(jī)圖覆蓋上去,中間透明區(qū)域?qū)⒑傁耧@示出來。
 target.paste(base_img,(0,0),base_img) #第一個(gè)參數(shù)表示需要粘貼的圖像,中間的是坐標(biāo),最后是一個(gè)是mask圖片,用于指定透明區(qū)域,將底圖顯示出來。
 # target.show()
 target.save('./out.png') # 保存圖片

總結(jié)

以上就是本文關(guān)于python PIL實(shí)現(xiàn)圖片合成實(shí)例代碼的全部?jī)?nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對(duì)本站的支持!

相關(guān)文章

  • 分享11個(gè)Python自動(dòng)化操作Excel的方法

    分享11個(gè)Python自動(dòng)化操作Excel的方法

    這篇文章主要給大家分享的是11個(gè)Python自動(dòng)化操作Excel的方法,自動(dòng)化辦公,我相信很多人都有強(qiáng)烈的需求,今天我教大家如何利用Python自動(dòng)化操作Excel,需要的朋友可以參考一下
    2022-02-02
  • python切片及sys.argv[]用法詳解

    python切片及sys.argv[]用法詳解

    Sys.argv[]是用來獲取命令行參數(shù)的,sys.argv[0]表示代碼本身文件路徑,所以參數(shù)從1開始。下面通過實(shí)例代碼給大家介紹python切片及sys.argv[]用法,需要的朋友參考下吧
    2018-05-05
  • 淺談django orm 優(yōu)化

    淺談django orm 優(yōu)化

    這篇文章主要介紹了淺談django orm 優(yōu)化,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-08-08
  • python str轉(zhuǎn)json的具體步驟

    python str轉(zhuǎn)json的具體步驟

    使用Python內(nèi)置的json模塊,可以將str轉(zhuǎn)換為JSON,本文給大家介紹python str轉(zhuǎn)json的具體步驟,文中補(bǔ)充介紹了Python-字符串str和json格式的轉(zhuǎn)換問題,感興趣的朋友一起看看吧
    2024-01-01
  • Python通過TensorFLow進(jìn)行線性模型訓(xùn)練原理與實(shí)現(xiàn)方法詳解

    Python通過TensorFLow進(jìn)行線性模型訓(xùn)練原理與實(shí)現(xiàn)方法詳解

    這篇文章主要介紹了Python通過TensorFLow進(jìn)行線性模型訓(xùn)練原理與實(shí)現(xiàn)方法,結(jié)合實(shí)例形式詳細(xì)分析了Python通過TensorFLow進(jìn)行線性模型訓(xùn)練相關(guān)概念、算法設(shè)計(jì)與訓(xùn)練操作技巧,需要的朋友可以參考下
    2020-01-01
  • python散點(diǎn)圖實(shí)例之隨機(jī)漫步

    python散點(diǎn)圖實(shí)例之隨機(jī)漫步

    這篇文章主要為大家詳細(xì)介紹了python散點(diǎn)圖實(shí)例之隨機(jī)漫步,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • TensorFlow人工智能學(xué)習(xí)Keras高層接口應(yīng)用示例

    TensorFlow人工智能學(xué)習(xí)Keras高層接口應(yīng)用示例

    這篇文章主要為大家介紹了TensorFlow人工智能學(xué)習(xí)中Keras高層接口的應(yīng)用示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2021-11-11
  • Pytorch實(shí)現(xiàn)將模型的所有參數(shù)的梯度清0

    Pytorch實(shí)現(xiàn)將模型的所有參數(shù)的梯度清0

    這篇文章主要介紹了Pytorch實(shí)現(xiàn)將模型的所有參數(shù)的梯度清0,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • Python多進(jìn)程加鎖的實(shí)現(xiàn)

    Python多進(jìn)程加鎖的實(shí)現(xiàn)

    很多時(shí)候,我們需要在多個(gè)進(jìn)程中同時(shí)寫一個(gè)文件,如果不加鎖機(jī)制,就會(huì)導(dǎo)致寫文件錯(cuò)亂,本文主要介紹了Python多進(jìn)程加鎖的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),感興趣的可以了解一下
    2023-07-07
  • Python的多態(tài)性實(shí)例分析

    Python的多態(tài)性實(shí)例分析

    這篇文章主要介紹了Python的多態(tài)性,以實(shí)例形式深入淺出的分析了Python在面向?qū)ο缶幊讨卸鄳B(tài)性的原理與實(shí)現(xiàn)方法,需要的朋友可以參考下
    2015-07-07

最新評(píng)論