专栏首页中科院渣渣博肆僧一枚批量更改图像尺寸到统一大小

批量更改图像尺寸到统一大小

功能

Faster r_cnn 训练神经网络时,从GitHub上clone作者的代码,并创建了自己的数据库。但是由于源代码中输入的图像的大小有一定的限制,一般在500-750之间, 自己创建的图像数据库中图像过大,因此用python 批量更改图像尺寸到统一大小。

从CSDN上找到了一段代码,但是这段代码在运行的时候会报错,导致部分生成的图像无法打开。对其进行了修改,修改后的代码如下所示。错误分析:”‘P’,’RGBA’,’RGB’这是PIL Image读图可能出现的三种mode,每种mode的图片数据都有不同的组织形式

修改部分功能为:将读图的mode全部转换为“RGB“。 修改后的代码(python)

from PIL import Image
import os.path
import glob
def convertjpg(jpgfile,outdir,width=500,height=500):
    img=Image.open(jpgfile)
    try:
        new_img = img.resize((width, height), Image.BILINEAR)
        if new_img.mode == 'P':
            new_img = new_img.convert("RGB")
        if new_img.mode == 'RGBA':
            new_img = new_img.convert("RGB")
        new_img.save(os.path.join(outdir, os.path.basename(jpgfile)))
    except Exception as e:
        print(e)

for jpgfile in glob.glob("G:/my/Process_recent/python/Image_database/figure/spacecraft/*.jpg"):
    # print(jpgfile)
    convertjpg(jpgfile,"G:/my/Process_recent/python/Image_database/figure/spacecraft_unifsize")

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • numpy或pandas中reshape(-1)等用法

    newshape等于-1,列数等于2,行数未知,reshape后的shape等于(8, 2)

    于小勇
  • torch.nn、(一)

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

    于小勇
  • UNIX和Linux操作系统概述

    UNIX的设计理念:在UNIX系统中所有的东西都是文件,所有系统配置数据都存储在正文文件中,每个系统命令都很小、只完成单一功能,避免使用俘获用户的接口,将多个程...

    于小勇
  • Dagger2神器入门(二)

    在Dagger2神器入门(一)中,我们了解了什么是依赖注入,那么在这一章中,我们将逐渐入门Dagger2。接下来我们会通过demo形式给大家展现Dagger2的...

    用户2802329
  • 数据恢复:一则强行关库引发的蝴蝶效应

    李真旭(Roger) ACOUG 核心专家,Oracle ACE,云和恩墨技术专家 这是某网友的维护的一套数据库,据说是正常重启之后就无法启动数据库了。那么我们...

    数据和云
  • 5.Block的内存管理 内存管理内存管理block的循环引用

    陈雨尘
  • 【iOS】block小记

    VV木公子
  • iOS底层原理总结 - 探寻block的本质(一)

    xx_Cc
  • iOS block的一些理解和注意点

    大壮
  • Block 小结block  的 储存位置block  的循环引用

    陈雨尘

扫码关注云+社区

领取腾讯云代金券