日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python批处理进行剪裁图片与图片拼接

發布時間:2024/3/24 python 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python批处理进行剪裁图片与图片拼接 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

今天在做畢設答辯視頻的時候,需要批處理剪裁圖片,并且將批處理圖片兩兩拼接,手動一張一張地改費時費力,于是想到用python實現了批處理,計算機不愧是干重復工作的好幫手。
首先,將圖片剪裁為需要的大小(比如剪裁掉圖片中的空白部分)。這個代碼直接將剪裁后的圖片代替了原來的圖片,如果想要存到不同的文件夾,需要將存儲時的文件夾位置改變。
其中,box1 = (0, 0, 1350, 1074) 表示剪裁后左邊框離原圖左邊的距離、上邊框離原圖上邊的距離、右邊框離原圖左邊的距離、下邊框離原圖上邊的距離,這個距離可以根據img.size打印出的圖片大小來自己衡量剪裁多少。

# coding: utf-8 from PIL import Image import os import os.path import numpy as np# 指明被遍歷的文件夾 rootdir = r'D:\four\' for parent, dirnames, filenames in os.walk(rootdir): # 遍歷每一張圖片for filename in filenames:print('parent is :' + parent)print('filename is :' + filename)currentPath = os.path.join(parent, filename)print('the fulll name of the file is :' + currentPath)img = Image.open(currentPath)print(img.format, img.size, img.mode)box1 = (0, 0, 1350, 1074) # 設置左、上、右、下的坐標image1 = img.crop(box1) # 圖像裁剪#image1.show()image1.save(r"D:\four" + '\\' + filename) # 存儲裁剪得到的圖像

然后,將兩個文件夾中的不同圖片一一對應拼接。比如第一個文件夾中的第一張與第二個文件夾中的第一張圖片拼接。

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批处理进行剪裁图片与图片拼接的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。