Home >Backend Development >Python Tutorial >What is the method to quickly convert jpg to png and resize it in Python?
A very simple small program that can directly convert all .jpg in this folder to .png format. and customize the size.
Need to install pillow library:
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')
Pay attention to the file name, and the size needs to be bracketed.
Disadvantages
Cannot go to white background
# Convert python image format jpg to png (batch processing, unchanged size)
import os import PIL.Image as Image def changeJpgToPng(srcPath, dstPath): # 修改图像大小 image = Image.open(srcPath) # 将jpg转换为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("开始转换...") filename_list = os.listdir(listPath) for d in filename_list: if d.count('.jpg') > 0: changeJpgToPng(srcPath + d, dstPath + d) pass print("完成了...") 二、视频转图像或图像转视频 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/") # 对图像排序 files.sort(key=lambda x: int(x.split(".")[0])) # 获取图像宽高 h, w, _ = cv2.imread("images/" + files[0]).shape # 设置帧数 fps = 30 vid = [] ''' 设置要保存的格式 mp4: mp4v avi: xvid i420 ''' # 保存视频路径和名称 # save_path = "video/video.mp4" # 保存视频路径和名称 MP4格式 save_path = "video/video.avi" # 保存视频路径和名称 av格式 # 准备写入视频 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)) # 写入 for file in files: img = cv2.imread("images/" + file) vid.write(img) if __name__ == '__main__': print("start...") video2image() #image2video() print("OK!")
The above is the detailed content of What is the method to quickly convert jpg to png and resize it in Python?. For more information, please follow other related articles on the PHP Chinese website!