1000張圖片如何拼接

1000張+圖片怎樣拼接在一起,當然不能靠PS,也不能用美圖秀秀,必須是編程來實現(xiàn),而且一定要用Python。

用的是第三方庫 PIL , 官方文檔 http://effbot.org/imagingbook/

The Python Imaging Library (PIL) adds image processing capabilities to your Python interpreter. This library supports many file formats, and provides powerful image processing and graphics capabilities.

PIL已經(jīng)是Python平臺事實上的圖像處理標準庫。PIL功能強大,簡單易用。

Image 類是 PIL 庫中一個非常重要的類,通過這個類來創(chuàng)建實例可以有直接載入圖像文件,讀取處理過的圖像。

還是看看我要實現(xiàn)的N張圖片的拼接,怎么做?
基本的操作就是創(chuàng)建一張圖片,把要拼接的圖片讀取進來,順序貼(paste)到創(chuàng)建的這張圖中。

以下是Image類幾個最常用的方法。

new('RGBA', (x,y))

創(chuàng)建一張圖片,默認是黑色的??梢孕薷膮?shù)。

image = Image.new('RGB', (width, height), (255, 255, 255))

open(filename) , save(outfilename)

open(filename) 打開一個圖片文件把圖片讀進來。save(outfilename)保存圖片。

resize(size,size)

調(diào)整圖片大?。s放圖片)。近2000張圖片,先要縮小一下。

paste(fromImage,where)

把圖片貼進來,坐標系,左上角是(0,0)

完整代碼:

# -*- coding:utf-8 -*-
# 圖片拼接
import PIL.Image as Image
import os, sys

mw = 133 # 圖片大小+圖片間隔
ms = 5 

msize = mw * ms


fpre = "x" #圖片前綴
toImage = Image.new('RGBA', (msize, msize))

for y in range(1, 6):  ## 先試一下 拼一個5*5 的圖片
    for x in range(1, 6):
        
        # 之前保存的圖片是順序命名的,x_1.jpg, x_2.jpg ...
        fname = "x_%s.jpg" % (ms*(y-1)+x)

        fromImage = Image.open(fname)
        #fromImage =fromImage.resize((mw, mw), Image.ANTIALIAS)   # 先拼的圖片不多,不用縮小
       
        toImage.paste(fromImage, ((x-1) * mw, (y-1) * mw))

toImage.save('/Users/apple/Desktop/toimg/toImage_0.jpg')

為了防止密集恐怖,我隨(jing)機(xin)選了25張來拼接。你們看看我的朋友圈顏值如何。


PS: 你一定好奇,這些圖片是怎么來的,當然不是一張一張手動保存下來。對,是Python爬蟲。還有什么有趣的微信朋友圈數(shù)據(jù),敬請期待。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • # Python 資源大全中文版 我想很多程序員應(yīng)該記得 GitHub 上有一個 Awesome - XXX 系列...
    aimaile閱讀 26,822評論 6 427
  • GitHub 上有一個 Awesome - XXX 系列的資源整理,資源非常豐富,涉及面非常廣。awesome-p...
    若與閱讀 19,291評論 4 417
  • 環(huán)境管理管理Python版本和環(huán)境的工具。p–非常簡單的交互式python版本管理工具。pyenv–簡單的Pyth...
    MrHamster閱讀 3,949評論 1 61
  • 170301 漫天大雪,洋洋灑灑,猝不及防的把我從春季帶入了不明時空。 花了一下午的時間訂好了行程,碎碎念的事情終...
    XxXxXxN閱讀 193評論 0 0
  • 在使用環(huán)信的 EaseUI 給 app 集成即時通訊功能時,編譯項目出現(xiàn)問題,提示項目的 .dex 文件中的方法數(shù)...
    Android_小生閱讀 413評論 0 1

友情鏈接更多精彩內(nèi)容