python批处理进行剪裁图片与图片拼接
生活随笔
收集整理的這篇文章主要介紹了
python批处理进行剪裁图片与图片拼接
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
今天在做畢設答辯視頻的時候,需要批處理剪裁圖片,并且將批處理圖片兩兩拼接,手動一張一張地改費時費力,于是想到用python實現了批處理,計算機不愧是干重復工作的好幫手。
首先,將圖片剪裁為需要的大小(比如剪裁掉圖片中的空白部分)。這個代碼直接將剪裁后的圖片代替了原來的圖片,如果想要存到不同的文件夾,需要將存儲時的文件夾位置改變。
其中,box1 = (0, 0, 1350, 1074) 表示剪裁后左邊框離原圖左邊的距離、上邊框離原圖上邊的距離、右邊框離原圖左邊的距離、下邊框離原圖上邊的距離,這個距離可以根據img.size打印出的圖片大小來自己衡量剪裁多少。
然后,將兩個文件夾中的不同圖片一一對應拼接。比如第一個文件夾中的第一張與第二個文件夾中的第一張圖片拼接。
from os import listdir from PIL import Image import os.pathdef pinjie():rootdir1 = r'D:\four\多圖片文件夾1'rootdir2 = r'D:\four\多圖片文件夾2' path1=[] #存放圖片路徑path2=[]for parent, dirnames, filenames in os.walk(rootdir1): # 遍歷每一張圖片for filename in filenames:# print(filename)currentPath = os.path.join(parent, filename)path1.append(currentPath)for parent, dirnames, filenames in os.walk(rootdir2): # 遍歷每一張圖片for filename in filenames:# print(filename)currentPath = os.path.join(parent, filename)path2.append(currentPath)print(path1)print(path2)for i in range(0, 36):#這個范圍是你要做拼接的次數。currentPath1 = path1[i]currentPath2 = path2[i] img1 = Image.open(currentPath1)img2 = Image.open(currentPath2)width, height = img1.size# print(width,height)# # 創建空白長圖result = Image.new(img1.mode, (width*2, height))result.paste(img2, box=(0,0)) #把圖片2的左上角位置粘到(0,0)的位置result.paste(img1, box=(1350,0)) #圖片1的左上角位置粘到(圖片2的寬度,0)的位置# result.show()# 保存圖片 result.save(r"D:\four\%d.png"%i)if __name__ == '__main__':pinjie()于是,實現了中國地圖與世界地圖的拼接.
+
=完成后:
總結
以上是生活随笔為你收集整理的python批处理进行剪裁图片与图片拼接的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 结构化分析方法及其图形工具
- 下一篇: 牛顿法python代码_一文看懂牛顿法(