python批處理將圖片進行放大實例代碼
python批處理圖片放大
有時候對于網絡識別,將原始圖片放進網絡中并不能達到自己想要的效果,但是有時候如果將圖片放大之后,識別率卻能夠達到意想不到的結果,現(xiàn)在提供一種將文件中的圖片進行批處理放大的代碼:
import os
?
from PIL import Image
import sys
#獲取path目錄下的所有文件
def get_imlist(path):
return[os.path.join(path,f)
for f in os.listdir(path)]
def change_size(path):
directorys=get_imlist(path)
for directory in directorys:
#不是圖片文件就跳過
print(directory)
if not(directory.endswith('.jpg') or directory.endswith('.png') or directory.endswith('.bmp')): ##b
pass
else:
img=Image.open(directory)
s="/"
#獲取文件名(含后綴)
oimage_name=directory[directory.rfind(s)+1:]
(oimage_width,oimage_height)=img.size
new_width=oimage_width * 3
new_height=oimage_height * 3
out=img.resize((new_width,new_height),Image.ANTIALIAS)
out.save("%s" %oimage_name) #直接替換
if __name__ == '__main__':
change_size("F:\桌面\\test")
python 圖片比例縮放、批處理(分步驟完成)
問題:實現(xiàn)將像素n*n的圖片 等比例縮放為 30*30
0、環(huán)境要求:Python3.x 需要安裝pillow模塊:
pip install pillow
1、縮放一個圖片:
from PIL import Image
img = Image.open("2.png") # 讀取圖片
out = img.resize((30,30)) # 等比例縮放為30*30像素
out.save("2.png") # 保存圖片(覆蓋原圖)
2、批處理:
/* 目錄結構
E:\data_eg\lip_train:
----------folder1:
--------pic1.png
--------pic2.png
--------pic3.png
----------folder2:
--------pic1.png
--------pic2.png
--------pic3.png
--------pic4.png
--------pic5.png
----------folder3:
--------pic1.png
--------pic2.png
*/
import os
from PIL import Image
path_target = "E:\data_eg\lip_train" # liptrain路徑下是文件夾,文件夾下是多張圖片
path_list=os.walk(path_target) # 使用os.walk()方法,遍歷所有路徑,文件
# filenames 保存所有圖片名的 list
# root 保存二級目錄
for root, dirs, filenames in path_list:
for filename in filenames: # 遍歷包含 所有文件名 的list
file_path = os.path.join(root,filename) # 合成得到每個圖片的 絕對路徑
print(file_path) # 打印 絕對路徑 至屏幕
img = Image.open(file_path) # 打開 此絕對路徑 的圖片
out = img.resize((30,30)) # 等比例縮放至 30*30 像素
#out = img.convert('L') # 轉換為灰度圖像
out.save(file_path) # 保存,覆蓋原圖片
總結
到此這篇關于python批處理將圖片進行放大的文章就介紹到這了,更多相關python批處理圖片放大內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
python連接sql?server數(shù)據(jù)庫的方法實戰(zhàn)
當我們用Python來編寫網站,必須要能夠通過python操作數(shù)據(jù)庫,下面這篇文章主要給大家介紹了關于python連接sql?server數(shù)據(jù)庫的相關資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下2022-08-08
Django1.11配合uni-app發(fā)起微信支付的實現(xiàn)
這篇文章主要介紹了Django1.11配合uni-app發(fā)起微信支付的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-10-10
PyQt5.6+pycharm配置以及pyinstaller生成exe(小白教程)
這篇文章主要介紹了PyQt5.6+pycharm配置以及pyinstaller生成exe,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-06-06
django中使用POST方法獲取POST數(shù)據(jù)
這篇文章主要介紹了django中使用POST方法獲取POST數(shù)據(jù),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-08-08

