【python】修改文件后缀,将JPG转换为PNG/PNG转换为JPG 您所在的位置:网站首页 如何把img照片变成jpg格式文件夹 【python】修改文件后缀,将JPG转换为PNG/PNG转换为JPG

【python】修改文件后缀,将JPG转换为PNG/PNG转换为JPG

2024-06-20 23:28| 来源: 网络整理| 查看: 265

【python】修改文件后缀,将JPG转换为PNG/PNG转换为JPG 前言os.renamereplace

前言

本文只要有两种方法实现将JPG格式图片转换为PNG,第一种为应用os.rename直接修改文件后缀;第二种为应用replace,二者的通用性都很高,几乎所有文件格式都可以转换,但也有略微差异,话不多说,直接开整。

os.rename import os #注意文件路径格式中要用“C:/file/img.jpg” #或“C:\\file\\img.jpg” #或r‘C:\file\img.jpg’ filename = 'textx4.jpg' transF = os.path.splitext(filename) #将文件名与后缀分开。transF[0]为文件名,transF[1] 为后缀 new_name = transF[0] + '.png' os.rename(filename, new_name)

如果有多个文件要改为多种后缀的话可以采用下文批量操作:

import os def Rename(filename): transF = os.path.splitext(file) if transF[1] == '.jpg': new_name = ext[0] + '.png' os.rename(filename, new_name) elif transF[1] == '.txt': new_name = ext[0] + '.py' os.rename(filename, new_name) def transform(file_path): # 读取所有文件 allFiles = os.listdir(file_path) for file in allFiles: file_path1 = os.path.join(file_path, file) if os.path.isdir(file_path1): transform(file_path1) else: os.chdir(file_path) Rename(file) if __name__ == '__main__': # 文件夹路径 file_path = “C:/file” transform(file_path) replace

以图片为例,应用opencv另存为图片,同时删除png图片的透明度通道,转化为3通道png图片

import cv2 def transFor(filename): # img = cv2.imread(filename, 1) filename = filename.replace(".JPG", ".png") img = cv2.imread(filename, 1) jpg_img = cv2.cvtColor(img, cv2.COLOR_BGRA2BGR) #下面注释的这行最后这个数字0表示压缩程度,取值0-10,越大图片越模糊 # cv2.imwrite('textx2.png', jpg_img,[cv2.IMWRITE_PNG_COMPRESSION, 0]) cv2.imwrite('text1.png', jpg_img) if __name__ == '__main__': filename = 'text.jpg' transFor(filename)

两者格式转换对于图片的差异如下,下图为应用两种方法对同一张JPG格式进行装换,转为png格式左图为方法1右图为方法2,可能是删去一个通道的原因,感觉方法2的稍微更模糊一丢丢

在这里插入图片描述



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有