添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
风度翩翩的丝瓜  ·  Container Lifecycle ...·  1 年前    · 
打篮球的煎饼  ·  JS ...·  1 年前    · 
冷静的脆皮肠  ·  visual-studio-code - ...·  1 年前    · 

最近需要做到一部分图像的基本处理,多次用到图像的通道数转换、灰度转换、二值转换和批量更改图片文件类型。网上的教程有些时候很啰嗦,就在这里记录分享一下自己的部分代码。

一般而言,我们会用到的基本图片格式也就是以下这些:RGB/三通道图、单通道图/灰度图(二值图)。

图片格式可以通过图片的属性查看。

三通道:位深度24

单通道:位深度8

单通道转三通道

from PIL import Image image = Image.open("C:\\Users\\lenovo\\Desktop100007.jpg") if image.mode != 'RGB': image = image.convert("RGB") image.save("C:\\Users\\lenovo\\Desktop\\100007.jpg")

三通道转单通道

from PIL import Image import matplotlib.pyplot as plt img=Image.open("C:\\Users\\lenovo\\Desktop\\100007.jpg") #打开图像 r,g,b=img.split() #分离三通道

批量更改文件名

有些时候为了某些特殊需求需要更改文件后缀名。

代码如下(jpg—>bmp)

import os import re path="C:\\MyFiles\\yjs\\su" file_walk = os.walk(path) fileNum = 0 filesPathList = [] for root, dirs, files in file_walk: # print(root, end=',') # print(dirs, end=',') # print(files) for file in files: fileNum = fileNum + 1 filePath = root + '/' + file # print(filePath) filesPathList.append(filePath) protion = os.path.splitext(filePath) # print(protion[0],protion[1]) if protion[1].lower() == '.png': print("正在处理:" + filePath) newFilePath = protion[0] + '.bmp' os.rename(filePath, newFilePath) # print(fileNum) # print(filesPathList)