Python?jpg快速轉(zhuǎn)png并調(diào)整大小方式
Python jpg轉(zhuǎn)png并調(diào)整大小
很簡(jiǎn)單的小程序,可以直接將本文件夾下所有 .jpg 轉(zhuǎn)為 .png 格式,并自定義大小。
依賴(lài)
需要安裝 pillow 庫(kù):
pip install pillow
代碼
# -*- coding:utf-8 -*-
# file name: jpg2png.py
import os
from PIL import Image
list = os.listdir()
for i in list:
? ? if i != 'jpg2png.py':
? ? ? ? print(i)
? ? ? ? Image.open(i).convert('RGBA').resize((512, 512)).save(i[:i.find('.')] + '.png')注意本文件名,還有調(diào)整大小需要括號(hào)起來(lái)。
缺點(diǎn)
- 不能去白底
python把jpg圖片批量轉(zhuǎn)化為png圖片
# python圖片格式j(luò)pg轉(zhuǎn)換為png(批量處理,尺寸不變)
import os
import PIL.Image as Image
def changeJpgToPng(srcPath, dstPath):
# 修改圖像大小
image = Image.open(srcPath)
# 將jpg轉(zhuǎn)換為png
png_name = str(dstPath)[0:-len('.jpg')] + '.png'
# image.save(png_name)
# print(png_name)
# image = image.convert('RGBA')
image = image.convert('RGB')
image.save(png_name)
pass
if __name__ == '__main__':
listPath = 'D:/BYLW666/deeplabv3-plus-pytorch-main/VOCdevkit/VOC2007/jpg/'#jpg圖片
srcPath = 'D:/BYLW666/deeplabv3-plus-pytorch-main/VOCdevkit/VOC2007/src/'#jpg圖片
dstPath = 'D:/BYLW666/deeplabv3-plus-pytorch-main/VOCdevkit/VOC2007/png/'#png圖片
print("開(kāi)始轉(zhuǎn)換...")
filename_list = os.listdir(listPath)
for d in filename_list:
if d.count('.jpg') > 0:
changeJpgToPng(srcPath + d, dstPath + d)
pass
print("完成了...")
二、視頻轉(zhuǎn)圖像或圖像轉(zhuǎn)視頻
import cv2
import os
def video2image():
cap = cv2.VideoCapture("video/01.mp4")
count = 1
while True:
success, frame = cap.read()
if success == False:
break
cv2.imwrite("images/%d.jpg" % count, frame)
count += 1
def image2video():
# 得到圖像路徑
files = os.listdir("images/")
# 對(duì)圖像排序
files.sort(key=lambda x: int(x.split(".")[0]))
# 獲取圖像寬高
h, w, _ = cv2.imread("images/" + files[0]).shape
# 設(shè)置幀數(shù)
fps = 30
vid = []
'''
設(shè)置要保存的格式
mp4:
mp4v
avi:
xvid
i420
'''
# 保存視頻路徑和名稱(chēng)
# save_path = "video/video.mp4" # 保存視頻路徑和名稱(chēng) MP4格式
save_path = "video/video.avi" # 保存視頻路徑和名稱(chēng) av格式
# 準(zhǔn)備寫(xiě)入視頻
vid = cv2.VideoWriter(save_path, cv2.VideoWriter_fourcc(*'mp4v'), fps, (w, h))
# vid = cv2.VideoWriter(save_path, cv2.VideoWriter_fourcc(*'xvid'), fps, (w, h))
# vid = cv2.VideoWriter(save_path, cv2.VideoWriter_fourcc(*'i420'), fps, (w, h))
# 寫(xiě)入
for file in files:
img = cv2.imread("images/" + file)
vid.write(img)
if __name__ == '__main__':
print("start...")
video2image()
#image2video()
print("OK!")
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
詳解Python+OpenCV進(jìn)行基礎(chǔ)的圖像操作
OpenCV是一個(gè)用于計(jì)算機(jī)視覺(jué)和圖像操作的免費(fèi)開(kāi)源庫(kù),有數(shù)千種優(yōu)化的算法和函數(shù)用于各種圖像操作。本文將使用OpenCV在Python中進(jìn)行一些圖像操作,感興趣的可以學(xué)習(xí)一下2022-02-02
Python數(shù)據(jù)類(lèi)型--字典dictionary
這篇文章主要介紹了Python數(shù)據(jù)類(lèi)型字典dictionary,字典是另一種可變?nèi)萜髂P?,且可存?chǔ)任意類(lèi)型對(duì)象。下面詳細(xì)內(nèi)容需要的小伙伴可以參考一下,希望對(duì)你有所幫助2022-02-02
Python PyQt5實(shí)戰(zhàn)項(xiàng)目之網(wǎng)速監(jiān)控器的實(shí)現(xiàn)
PyQt5以一套Python模塊的形式來(lái)實(shí)現(xiàn)功能。它包含了超過(guò)620個(gè)類(lèi),600個(gè)方法和函數(shù)。它是一個(gè)多平臺(tái)的工具套件,它可以運(yùn)行在所有的主流操作系統(tǒng)中,包含Unix,Windows和Mac OS。PyQt5采用雙重許可模式。開(kāi)發(fā)者可以在GPL和社區(qū)授權(quán)之間選擇2021-11-11
Python openpyxl 遍歷所有sheet 查找特定字符串的方法
今天小編就為大家分享一篇Python openpyxl 遍歷所有sheet 查找特定字符串的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-12-12
Numpy中np.vstack()?和?np.hstack()?的實(shí)現(xiàn)
本文主要介紹了Numpy中np.vstack()和np.hstack()的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-04-04
Python如何對(duì)圖像補(bǔ)全并分割成多塊補(bǔ)丁
這篇文章主要介紹了Python如何對(duì)圖像補(bǔ)全并分割成多塊補(bǔ)丁,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-05-05

