2019 is a new start!

很久没有更啦~希望不要懒惰。(虽然不努力真滴很舒服诶)

今天就来说一下之前在处理图片时候用到的一些知识。

数据增强

在接触Alexnet网络结构模型的时候,第一步就有要求图片要处理为224X224,刚开始以为就是一个预处理的过程,使得图片具有稳定性。最近才知道,原来小小的一个步骤可以用来达到数据增强的作用。

什么是数据增强?

答:一般而言,比较成功的神经网络需要大量的参数,许许多多的神经网路的参数都是数以百万计,而使得这些参数可以正确工作则需要大量的数据进行训练,而实际情况中数据并没有我们想象中的那么多。简单来说,就是要获得更多有用的数据,让数据集更丰富。

数据增强的作用是什么?

答:1.增加训练的数据量,提高模型的泛化能力,防止过拟合。

2.增加噪声数据,提升模型的鲁棒性

(关于过拟合的影响可参考:https://www.cnblogs.com/arachis/p/data_augmentation.html)

常用的数据增强的方法有什么?

答:一种方法是获得新的数据,这种方法比较麻烦,需要大量的成本,而第二种方法则是对数据进行增强,即利用已有的数据比加噪音、调整尺寸、翻转和镜像,创造出更多的数据,来使得神经网络具有更好的泛化效果。

今天主要讲一下运用调整尺寸或者说裁剪完成数据增强。

调整尺寸(裁剪)为什么可以增强数据?

调整尺寸也就是说比如原来图片为256X256,现把图片的尺寸改为224X224,这样一个操作。这一个操作,这样我们就可以多获得(256-224)²=32X32=1024个数据集,也就是(原来-现在)²个。

代码出场了~

批量修改一个文件下面所有图片的尺寸(速度很快!可推)

#提取目录下所有图片,更改尺寸后保存到另一目录

from PIL import Image

import os.path

import glob

def convertjpg(jpgfile,outdir,width=224,height=224):

img=Image.open(jpgfile)

try:

new_img=img.resize((width,height),Image.BILINEAR)

new_img.save(os.path.join(outdir,os.path.basename(jpgfile)))

except Exception as e:

print(e)

for jpgfile in glob.glob(('F:/itti17/*.png')):

convertjpg(jpgfile,"F:/itti")

验证一下:(此代码为输出图片尺寸)

from PIL import Image

import os.path

infile = 'F:/itti17/1.png'

infile_1 ='F:/itti/1.png'

im = Image.open(infile)

im_1 = Image.open(infile_1)

(x, y) = im.size # read image size

(x1,y1) = im_1.size

print ('original size: ', x, y)

print ('current size: ', x1, y1)

结果

python 图片数据增强_数据增强之批量修改图像尺寸大小(附Python实现)相关推荐

  1. python重点知识归纳_一文了解机器学习知识点及其算法(附python代码)

    一文了解机器学习知识点及其算法(附python代码) 来源:数据城堡 时间:2016-09-09 14:05:50 作者: 机器学习发展到现在,已经形成较为完善的知识体系,同时大量的数据科学家的研究成 ...

  2. 图片头顶距离顶部百分比怎么修改_PS中,新手该怎么修改图像尺寸?看老师傅们都采用哪些方法?...

    关于昨天学习到的在PS中打开文件,大家应该和我一样大概已经学习到了,那么今天要学习的是通过PS,如何修改图像的尺寸?大家不要觉得很简单哦,因为这里面还包含很多的小细节,足以证明了PS的强大之处,下面就 ...

  3. 使用Python的tkinter模块实现界面化的批量修改文件名(续)

      之前的<使用Python的tkinte模块实现界面化的批量修改文件名>主要实现了批量移除文件名中的指定字符串,无法进行替换,本文在前面工作的基础上,增加批量替换文件名中指定字符串的功能 ...

  4. python数据分析模块包括_数据开发必会 | Python数据分析模块

    作为数据开发,Python强大的数据分析模块还是必须要会的,横向拓展数据分析与挖掘技术栈也是很有必要的.本文将对Pandas.NumPy.SciPy.Matplotlib等分析挖掘库的安装和使用进行简 ...

  5. python数据分析前景如何_数据分析师的前景怎么样?

    数据分析师已经存在多年了.但是,对该职业的需求在2020年再次成为头条新闻.接下来,我将带领大家了解为什么,并帮助分析一下数据分析行业在2020年的发展情况. 一.数据分析师的需求猛增,前景一片大好! ...

  6. python处理数据可视化_数据整理101:使用Python提取,处理和可视化NBA数据

    python处理数据可视化 由Viraj Parekh | 2017年4月6日 (by Viraj Parekh | April 6, 2017) This is a basic tutorial u ...

  7. python图形界面实践_数据可视化之实践篇——python

    一.10个可视化例子 import matplotlib.pyplot as plt import seaborn as sns import numpy as np import pandas as ...

  8. python怎么实现数据可视化_数据之美,python实现数据可视化!

    我们这次主要用到两个库来画图,Matplotlib 库和 seaborn 库. 我们先要安装这两个库,分别用 pip 命令安装即可. pip install matplotlib pip instal ...

  9. python 调用gpu算力_数据科学家需要算力,GPU 如何实现?-控制器/处理器-与非网...

    数据科学家需要算力.无论您是用 pandas 处理一个大数据集,还是用 Numpy 在一个大矩阵上运行一些计算,您都需要一台强大的机器,以便在合理的时间内完成这项工作. 在过去的几年中,数据科学家常用 ...

最新文章

  1. java 虚拟机的工作原理
  2. 《数据科学:R语言实现》——2.5 使用Excel文件
  3. 领扣(LeetCode)对称二叉树 个人题解
  4. python 示例_Python日历类| yeardatescalendar()方法与示例
  5. 一种H.264高清视频的无参考视频质量评价算法(基于QP和跳过宏块数)
  6. windows下使用Wireshark调试chrome浏览器的HTTP/2流量
  7. NIUDAY 七牛美图 AI 共享日 | 大咖云集 邀您共同探索各场景下的 AI 应用与落地...
  8. 在Android手机上对https请求进行抓包
  9. 驱动精灵修复服务器,驱动精灵系统漏洞需要修复吗
  10. Java指定屏幕区域截屏
  11. 听说crmeb多商户增加了种草功能?
  12. 问题解决:虚拟机无法复制粘贴文件
  13. git项目提交报rejected问题解决
  14. 虹膜手机元年,支付是杀手级场景
  15. 【托业】【语法题】笔记
  16. js连接mqtt进行通信
  17. 前端HTML点击图片放大效果展示
  18. J2EE三层架构概述
  19. 一加手机换鸿蒙os,一加手机支持氢OS和ColorOS一键切换?官方辟谣:太假了
  20. day13-web前端之JS与JQuery

热门文章

  1. 1秒后跳转页面(延时setTimeout)
  2. 罗翔 ---- 落俗不可避免,浪漫至死不渝
  3. vue ---- 组件
  4. MySQL5.7--项目数据库不同出现的问题
  5. 进程与线程的四个区别
  6. spring boot的学习(1)杂
  7. Python: ord()函数
  8. Android Oreo 常见问题 2.0 | Android 开发者 FAQ Vol.9
  9. Session自定义存储及分布式存储
  10. python----设置默认编码