PIL save()报错ValueError: unknown file extension: debug日志

Python PIL Image.save() PIL Image.save参数详解 阅读详情

错误代码

#!/user/bin/python
# _*_ coding:utf-8 _*_
#开发人员:徐雨阳
#开发时间2022/6/3 23:28
#文件名称: 图片降像素.py
#开发工具: pycharm
#项目名称 pythonProjects
from PIL import Image
import matplotlib.pyplot as plt
import tqdm
import os
def ResizeImage(scale=1):
    path = '易拉罐'
    outpath = '易拉罐新'
    for a, b, c in os.walk(path):
        print(c)
    for i in tqdm.tqdm(c):
        f = os.path.join(path, i)
        if f.endswith("jpg"):
            # print(f,i)
            img = Image.open(f)
            width = int(img.size[0] * scale)
            height = int(img.size[1] * scale)
            type = img.format
            out = img.resize((width, height), Image.ANTIALIAS)
            print(os.path.join(outpath, i))
            out.save(path=os.path.join(outpath,i),fp='jpeg')
            # plt.imshow(out)
            # plt.axis('off')  # 去坐标轴
            # plt.xticks([])  # 去刻度
            # plt.savefig(os.path.join(outpath, i), bbox_inches='tight', pad_inches=-0.1)  # 注意两个参数
    """
    改变图片大小
    :param filein: 输入图片
    :param fileout: 输出图片
    :param width: 输出图片宽度
    :param height: 输出图片宽度
    :param type: 输出图片类型(png, gif, jpeg...)
    :return:
    """
    # 第二个参数:
    # Image.NEAREST :低质量
    # Image.BILINEAR:双线性
    # Image.BICUBIC :三次样条插值
    # Image.ANTIALIAS:高质量
if __name__ == "__main__":
    print("开始运行")
    ResizeImage(scale=0.3)

在这里插入图片描述
他会报错说是未知的扩展名,不过我检查发现扩展名没有错。而且网上关于这个报错信息讨论较少,我决定记录下今天的debug,给后来的同学避避雷。
源码
在这里插入图片描述
ext=‘.jpg’,我猜测是这里ext多一个’.'的原因,能力有限就不调试了,交给下一个有能力且愿意深挖的同学来解决吧(这个bug改到凌晨1点,吐了)

debug

我导入matplotlib.pyplot曲线救国

            print(os.path.join(outpath, i))
            # out.save(path=os.path.join(outpath,i),fp='jpeg')
            plt.imshow(out)
            plt.axis('off')  # 去坐标轴
            plt.xticks([])  # 去刻度
            plt.savefig(os.path.join(outpath, i), bbox_inches='tight', pad_inches=-0.1)  # 注意两个参数

将out附近的代码更改为plt.savefig()解决了这个问题
舒服了
在这里插入图片描述

Python 中的 PIL 库 文章目录PIL 基础语法一、 简介1、 基本介绍2、 特点3、 安装二、 Image 对象1、 实例化对象1.1 实例化1.2 图像模式2、 对象属性3、 格式转换3.1 save 方法3.2 convert 方法4、 图片缩放5、 创建缩略图6、 图像分离与合并6.1 split 方法6.2 merge 方法6.3 blend 方法7、 图像处理7.1 图像裁剪7.2 拷贝和粘贴8、几何变化8.1 transpose8.2 rotate8.3 transform三、 ImageFilter1、 简介2、 阅读详情

相关推荐

Python——PIL库中的图像读取、裁剪、保存操作

Python——PIL库中的图像读取、裁剪、保存操作

Williamcsj的博客 3777

ValueError:unknown file extension

ValueError:unknown file extension

qq_43733107的博客 3546

【一】Android MediaPlayer整体架构源码分析 -【初始化和创建】

本系列文章分析的安卓源码版本:【Android 10.0 版本】 一、MediaPlayer的简单调用关键流程 【这只是一个简单使用过程示例】 // 此处变量声明省略 private void play() { // 先获取SurfaceHolder mSurfaceView = findViewById(R.id.surface_view); mSurfaceHolder = mSurfaceView.getHolder(); mSurfac

CloverLHao的博客 4347

PIL save()报错ValueError: unknown file extension

PIL save()报错ValueError: unknown file extension

weixin_48781592的博客 6417

微机原理与接口技术第六版周荷琴课后习题答案及解析(期末重点)

第二章 1.8086/8088CPU可直接寻址多少个内存(字节)单元?多少个I/O端口?它们的外部数据总线各有多少根? 8086/8088CPU使用的是20位地址总线,因此可以直接寻址2的20次方个内存单元(即1,048,576),每个单元大小为1字节,因此可以直接寻址2的20次方个字节的内存。 8086/8088CPU有64K个I/O端口,每个端口占用1字节的地址空间,因此可以直接寻址6...

Wmicheng的博客 1万+

Python+Selenium实战:5分钟搞定快手评论区数据采集(附完整代码)

本文详细介绍了如何使用Python和Selenium快速采集快手评论区数据,提供完整的代码实现和优化方案。通过动态加载处理和智能等待策略,5分钟内即可构建高效的评论采集工具,适用于用户行为分析和内容挖掘等场景。

weixin_30415113的博客 344

解决linux环境python的PIL不支持处理webp格式图片的问题

解决linux环境python的PIL不支持处理webp格式图片的问题

weixin_41956627的博客 1843

配置权重_高盛都在用的资产配置模型,BL贝叶斯框架改进Markowitz

前面我们说到,markoviz的均值-方差模型,第一次,用数学的方式严格证明了投资组合存在最优的权重,但它的学术意义大于实战。主要原因有两个:1,人们很难有效的预测期望收益率;2,最优资产组合配置对输入非常敏感,结果往往难以被人理解。还有就是在投资中,定量只是完成初步构建,同步的定性判断依然非常重要:第一,投资者的认知偏好:倾向于关注他们认为被低估,但有发展潜力或者可以确定相对交易价值的小部分股票...

weixin_39892309的博客 715

PIL(Python Imaging Library)中保存图片时,save()函数使用详解

ICC配置文件是一种描述颜色空间和颜色管理信息的文件,用于确保图像在不同设备和软件之间的一致显示和输出。但是,对于大多数图像格式来说,水平和垂直方向上的 DPI 设置为相同的值是足够的。表示在保存图像时设置水平和垂直方向上的 DPI(每英寸点数)为相同的值。在上述示例中,我们将图像的 DPI 设置为 300,并使用。,同时将水平和垂直方向上的 DPI 设置为相同的值。参数,您可以将ICC配置文件嵌入到保存的图像中。以下是示例代码,展示了如何在保存图像时使用。的图像,并将ICC配置文件的路径设置为。

FurtherSkyQ的博客 3万+

工业组态软件Intouch(单机版)入门{第二篇}

第5步:*都装好之后,需要进行测试授权是否生效,测试1:能否正常运行项目和编辑项目(能否编辑项目,取决于你的授权是否包含开发功能,如果只是单一的runtime授权,则只能运行项目,不能编辑项目)。在线第3步:点击第一个框右边的按钮,弹出文件浏览窗口,选中你的XMl授权文件,打开,然后你的授权出现在下方的列表中,勾选你的授权,然后点击Activate,等待几秒,授权就会出现在管理器页面的列表中,并且Status会显示Activated。第1步:软件安装好之后,先要配置好授权服务器。等待几秒,激活完成。

weixin_41571357的博客 1万+

FPGA+滨淞CCD实战:手把手教你搭建S7031/S10142成像电路(附避坑指南)

本文详细介绍了使用FPGA驱动滨淞CCD传感器(S7031/S10142)构建高精度成像系统的完整实战流程。内容涵盖核心器件选型、系统架构规划、电路板(焦面板与接口板)设计要点、FPGA Verilog逻辑实现,并提供了从电源管理、信号调理到数据采集的详细避坑指南,帮助读者从零搭建稳定可靠的成像电路。

weixin_29271263的博客 227

Express兼容ES6-import报错:TypeError [ERR_UNKNOWN_FILE_EXTENSION]: Unknown file extension ““

获取错误 TypeError [ERR_UNKNOWN_FILE_EXTENSION]: Unknown file extension "" for D:\Projects\matri-site\bin\www for Node Js v14 参考解决方案:Question Getting error TypeError [ERR_UNKNOWN_FILE_EXTENSION]: Unknown file extension "" for D:\Projects\matri-site\bin\w...

weixin_43343144的博客 9569

数字后端:版图基础seal ring

seal ring结构是为了防止划片或封装对芯片造成破坏,从而在芯片与划片道(scribe line)之间添加的一圈保护环

m0_61544122的博客 1万+

python使用PIL库实现图像的读取和保存

PIL库支持图像存储、显示和处理,它能够处理几乎所有图片格式,可以完成对图像的缩放、剪裁、叠加以及向图像添加线条、图像和文字等操作。

L888666Q的博客 8131

Failed to connect to gitee.com port 443: Time out 连接超时提示【Bug已完美解决-鸿蒙开发】

在进行Sample导入或Git项目Clone时,遇到连接超时问题是一个常见而令人烦扰的情况。连接超时问题通常源于网络限制,可能是由于防火墙、代理设置或其他网络配置导致。因此,首先要关注网络状态,确保网络通畅。如果在网络受限的情况下,代理服务器配置是一个有效的解决方案。通过在Git全局配置中设置代理信息,可以将网络请求通过代理服务器传输,规避一些网络限制。但在使用代理时,需要确保代理服务器的可用性和稳定性,以免引入新的问题。

一键难忘的博客 4557

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

unknown file extension如何解决?图片输出不了,image.save(),多张图片保存到指定文件夹如何操作?

问题依旧存在,所以我想是保存的问题,具体 查找了image.save的使用后还要加上后缀给图片,resultpath不止是文件夹路径,我选择用os.path.join()加上文件的名字,而且我猜想名字每个肯定要不一样用了f'{ec。处理的图片是四通道的,我想着可能要把图片改写为RGB类型,于是加了一行convert代码。今天在将处理好的矩阵输出时,想着利用image.save()保存到指定文件夹,但是。跑下代码,程序运行成功(附:如果是有问题试着将文件名用字符串换掉)

qq_61776376的博客 1736

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

【TypeScript】在ts文件中导入其它模块,报错:Unknown file extension “.ts“ for XXX.ts

是ESM模块的导出导入语法,而ts项目初始化后默认的是CommonJS的导入导出语法,所以需要在根目录下的package.json中添加。这其实也跟ESM模块有关,需要在执行ts-node命令时,加上–esm的选项。是用于指定项目中使用 ECMAScript 模块(ESM)的声明。这个错误提示很明显了,直接去tsconfig.json里,加上。导出了一个变量,然后在B.ts中使用。错误描述为位置的文件扩展名。重新执行命令,成功输出结果。如果在A.ts中使用。

莫诺库诺的博客 5543

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

TypeError [ERR_UNKNOWN_FILE_EXTENSION]: Unknown file extension “.ts“

TypeError [ERR_UNKNOWN_FILE_EXTENSION]: Unknown file extension ".ts"

Java_web12138667的博客 9747

Python中使用PIL读取,显示,保存图片的方法

目录 一、读取文件夹中的图片 二、打开指定文件夹图片 三、进行图片处理 四、进行显示图片 五、进行图片保存 六、利用PIL进行图片的读取、处理、保存的完整代码 一、读取文件夹中的图片 for picture_name in os.listdir(directory_name): print(picture_name) # 读取图片名称及类型 file_name = directory_name + "/" + picture_name #...

m0_59821641的博客 4万+

执行ts报CTypeError: Unknown file extension “.ts“ for解决

包错信息:CTypeError: Unknown file extension ".ts" for。:“module”】删除,注意将此代码注释是不可以解决这个问题的,必须要注释。

Wx001214的博客 2557

Python的PIL库

Python图像库PIL(Python Image Library)是python的第三方图像处理库; 图像类Image class Image类是PIL中的核心类,比如从文件中加载一张图像,处理其他形式的图像,或者是从头创造一张图像等。Image模块操作的基本方法都包含于此模块内。如open、save、conver、show…等方法。下面是PIL的 Image类中常用的方法和属性: 1. open方法 Image.open(file) Image.open(file, mode) ...

qq_41468616的博客 5199

TypeError: Unknown file extension “.ts“ 【ts-node 执行ts文件报错】

ts-node TypeError: Unknown file extension ".ts"

知识点沉淀包括不限于前端 5867

PythonLibs(3) -- PIL

PIL模块-用与记1.图片导入Image.open()2.图像显示.show()4.查看图片属性.format,.size,.mode3.图像格式转换.convert()4.图像模式“L”,“RGB”,"CYMK"5. 图片旋转.rotate()旋转方式1:旋转不扩展旋转方式2:旋转扩展旋转方式3:旋转,扩展,白色填充6.图片切割.crop()7.图片保存.save() PIL:Python Im...

sinat_40624829的博客 875

ts-node Unknown file extension “.ts“

在开发node的时候,希望使用 ts-node 去运行单个ts文件, 但是写的代码模式是 ESModule的格式会报 TypeError: Unknown file extension。

qq_34793381的博客 4078
上一篇: Scala天天酷跑小游戏
下一篇: 在windows服务器上搭建ftp server
eu_zero
博客等级 码龄7年 43粉丝 9原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值