這篇文章將為大家詳細講解有關如何利用python實現(xiàn)一個合成圖片功能,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
python的PIL庫簡直好用的不得了,PIL下面的Image庫更是封裝了很多對圖片處理的函數(shù),關于Image庫的介紹和使用,看這里:http://effbot.org/imagingbook/image.htm
這里用我半個月前看到的一篇博客寫的demo作為背景,做一下圖片的合成
圖片可以看作是很多像素點組成的,每個像素點都是一個RGB顏色,(red, green, blue), 那么合成兩張照片就有辦法了,我們可以在一張新的RGB色的圖片里一個像素點取圖片一的對應位置的像素,下一個像素點取圖片二的像素,直到遍歷完成,代碼如下:
from PIL import Image ##這里采用傳入圖片地址調(diào)用此函數(shù) #這個方法目前不支持按比例合成,默認為1:1 #各取一個像素點合并,傳入的參數(shù)為兩張圖片的地址 def merge1(img1_address,img2_addess): status=100 #狀態(tài)碼100為正常 # 200為地址錯誤 try: img1=Image.open(img1_address) img2=Image.open(img2_address) except: status=200 img_new="" else: width=min(img1.size[0],img2.size[0]) height=min(img1.size[1],img2.size[1]) print(width,height) img_new = Image.new('RGB',(width,height)) for x in range(width): for y in range(height): if y%2==0: pixel=img1.getpixel((x,y)) img_new.putpixel((x,y),pixel) else: pixel=img2.getpixel((x,y)) img_new.putpixel((x,y),pixel) finally: return img_new,status
網(wǎng)站題目:如何利用python實現(xiàn)一個合成圖片功能-創(chuàng)新互聯(lián)
URL地址:http://www.chinadenli.net/article42/didjhc.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供云服務器、微信公眾號、企業(yè)建站、網(wǎng)站設計、定制開發(fā)、標簽優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)