news 2026/9/24 6:26:00

PIL库将图片位深度是1、8、32统一转换为24的方法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
PIL库将图片位深度是1、8、32统一转换为24的方法

深度学习中通常遇到各种各样的图片,位深度有的时候各不相同,容易影响训练测试,因此为了避免麻烦,一般将图片统一为位深度是24

  1. 通用转换方法
fromPILimportImagedefconvert_to_24bit(input_path,output_path):""" 将任意位深度的图片转换为24位RGB图像 参数: input_path: 输入图片路径 output_path: 输出图片路径 """# 打开图片img=Image.open(input_path)# 转换为RGB模式(24位)rgb_img=img.convert('RGB')# 保存图片rgb_img.save(output_path)print(f"转换完成:{input_path}->{output_path}")print(f"原始模式:{img.mode}, 转换后模式:{rgb_img.mode}")print(f"原始大小:{img.size}, 转换后大小:{rgb_img.size}")returnrgb_img# 使用示例convert_to_24bit('input.png','output_24bit.jpg')
  1. 针对不同位深度的详细转换方法
fromPILimportImageimportnumpyasnpdefconvert_specific_bit_depth(input_path,output_path):""" 针对不同位深度进行详细转换 """img=Image.open(input_path)print(f"原始图像信息:")print(f" 模式:{img.mode}")print(f" 大小:{img.size}")print(f" 位深度:{img.bits}(如果可用)")# 根据原始模式进行相应处理ifimg.mode=='1':# 1位黑白图像print("处理1位黑白图像...")# 方法1: 直接转换为RGBrgb_img=img.convert('RGB')# 方法2: 通过L模式中转(保留更多控制)# gray_img = img.convert('L')# rgb_img = gray_img.convert('RGB')elifimg.mode=='L':# 8位灰度图像print("处理8位灰度图像...")# 将灰度转换为RGB(三个通道值相同)rgb_img=img.convert('RGB')elifimg.mode=='P':# 调色板模式(通常是4位或8位)print("处理调色板图像...")# 先转换为RGBifimg.palette:print(f" 调色板模式:{img.palette.mode}")rgb_img=img.convert('RGB')elifimg.mode=='RGBA':# 32位RGBA图像print("处理32位RGBA图像...")# 创建白色背景background=Image.new('RGB',img.size,(255,255,255))# 将RGBA图像粘贴到白色背景上background.paste(img,mask=img.split()[3])# 使用alpha通道作为掩码rgb_img=backgroundelifimg.mode=='CMYK':# 32位CMYK图像print("处理CMYK图像...")rgb_img=img.convert('RGB')elifimg.mode=='RGB':# 已经是24位print("图像已经是24位RGB模式")rgb_img=imgelse:# 其他模式print(f"处理未知模式:{img.mode}")rgb_img=img.convert('RGB')# 保存图像rgb_img.save(output_path,quality=95)print(f"转换完成 ->{output_path}")print(f"转换后模式:{rgb_img.mode}")returnrgb_img
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/24 3:58:14

软件工程导论实验报告——商品管理系统(黑龙江大学)

面向对象分析与设计实验一 软件需求分析1.1 业务需求描述该系统在商家和顾客之间搭建了一个桥梁,需要实现商家对商品的售卖和修改,以及顾客的购买商品需求,期间还需要实现对商品和商家的管理以及对顾客的评估和管理。系统本身还需要对商家和顾…

作者头像 李华
网站建设 2026/9/23 18:46:35

不能头脑简单地搞“凡是”:凡是偶数2n(n的变域是N)必∈N

不能头脑简单地搞“凡是”:凡是偶数2n(n的变域是N)必∈N黄小宁设一游击队有无穷多个队员,队中各人都配有一枪。各枪都有枪号,将配有 n 号枪的人记为 n 号人,队中枪与人已一一配对: n 号人↔n 号…

作者头像 李华
网站建设 2026/9/23 10:37:22

Parquet Reading 加速

参考链接 https://zhuanlan.zhihu.com/p/675905983

作者头像 李华
网站建设 2026/9/21 19:04:32

从“写代码”到“定义问题”——AI 时代程序员的生存宣言

本文原创公开首发于 CSDN 如需转载,请在文首注明出处与作者:yu779 从“写代码”到“定义问题”——AI 时代程序员的生存宣言 > “AI 一天写的代码,比我一周都多,那我还有存在的意义吗?” > 带着这个灵魂拷问&am…

作者头像 李华
网站建设 2026/9/23 16:44:51

iPhone运行Android完整指南:Project Sandcastle终极教程

iPhone运行Android完整指南:Project Sandcastle终极教程 【免费下载链接】projectsandcastle Supporting tools for Android/Linux on the iPhone 项目地址: https://gitcode.com/gh_mirrors/pr/projectsandcastle 在iPhone上运行Android系统,这听…

作者头像 李华
网站建设 2026/9/23 21:27:12

微信遥控Mac:WeChatPlugin远程控制终极指南

微信遥控Mac:WeChatPlugin远程控制终极指南 【免费下载链接】WeChatPlugin-MacOS 微信小助手 项目地址: https://gitcode.com/gh_mirrors/we/WeChatPlugin-MacOS 你是否曾经想过,躺在沙发上就能控制远在书房里的Mac电脑?或者在外出时突…

作者头像 李华