人脸图像读取

  1. 首先,先调用三个库
 import numpy as npimport cv2import zipfile
  1. 然后确定一下主程序,搞清楚我们这个程序的目的。是为了从解压解压上读取图像。
  if __name__ == '__main__':path = 'D:\\DeepBlue\\samples\\celeba\\Eval\\Img\\img_ali.gn_cel.eba.zip'  # 解压路径ca = CelebA()cv2.imshow(ca.imgs[1000])cv2.waitKey()
  1. 然后定义一个类CelebA,在构造方法里 ,定义imgs。
class CelebA:def __init__(self,path):self.imgs = []
  1. 紧接着放一个with语句对zipfile.ZipFile(path)做一个抛出异常操作,并将zipfile.ZipFile(path)命名为zf(zipfile.ZipFile(path)就是openc中解压文件的方法)
 with zipfile.ZipFile(path) as zf:  # 解压文件
  1. 用is_dir函数判断info文件否是文件夹,如果是就跳过。
for info in zf.filelist:if info.is_dir(): continue # is_die(检查是否是目录)————>bool
  1. 首先从我们的filename中提取出流数据,并转化成uint8数据,最后对uint8数据进行解码使其形成图片
img = zf.read(info.filename)
img = np.frombuffer(img, np.uint8)  # frombuffer 收集数据,uint8:将收集的数据转制为八位的数组
img = cv2.imdecode(img, 1)  # cv2.imdecode:解码成图,1是彩图,2是灰度图
  1. 然后找出名字并将图像存储到imgs列表中
 name = info.filename[info.filename.rfind('/')+1:]self.imgs.append(img)
  1. 因为不断地输出名字会显得很杂乱无章,所以这里我们让他每完成10000组图像的读取进行一次说明
  if len(self.imgs) % 10000 == 0:print('Read %d imgs' % len(self.imgs))
  1. 最后输出完成语句

print('Read %d imgs from %s successfully!' % (len(self.imgs),path),flush=True)          #flush参数主要是刷新, 默认flush = False,不刷新,True则反之

完整代码:

import zipfile
import numpy as np
import cv2
class CelebA:def __init__(self,path):self.imgs = []with zipfile.ZipFile(path) as zf:  # 解压文件for info in zf.filelist:if info.is_dir(): continue# is_die(检查是否是目录)————>boolimg = zf.read(info.filename)img = np.frombuffer(img, np.uint8)  # frombuffer 收集数据,uint8:将收集的数据转制为八位的数组img = cv2.imdecode(img, 1)  # cv2.imdecode:解码成图,1是彩图,2是灰度图name = info.filename[info.filename.rfind('/')+1:]self.imgs.append(img)if len(self.imgs) % 10000 == 0:print('Read %d imgs' % len(self.imgs))print('Read %d imgs from %s successfully!' % (len(self.imgs),path),flush=True)          #flush参数主要是刷新, 默认flush = False,不刷新,True则反之。if __name__ == '__main__':path = 'D:\\DeepBlue\\samples\\celeba\\Eval\\Img\\img_ali.gn_cel.eba.zip'  # 解压路径ca = CelebA()cv2.imshow(ca.imgs[1000])cv2.waitKey()

结果如图:

小白深度学习起步中——读取人像图像相关推荐

  1. 深度学习数据集标注工具、图像语料数据库等资源

    NLP+VS︱深度学习数据集标注工具.图像语料数据库.实验室搜索ing... 2017年02月07日 12:12:01 阅读数:27032 ~~因为不太会使用opencv.matlab工具,所以在找一 ...

  2. 什么是生成对抗网络(GAN)| 小白深度学习入门

    小白深度学习入门系列 1. 直观理解深度学习基本概念 2. 白话详解ROC和AUC 3. 什么是交叉熵 4. 神经网络的构成.训练和算法 5. 深度学习的兴起:从NN到DNN 6. 异军突起的激活函数 ...

  3. 【AI初识境】深度学习模型中的Normalization,你懂了多少?

    文章首发于微信公众号<有三AI> [AI初识境]深度学习模型中的Normalization,你懂了多少? 这是<AI初识境>第6篇,这次我们说说Normalization.所谓 ...

  4. 深度学习训练中关于数据处理方式--原始样本采集以及数据增广

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/SMF0504/article/details/78695908 好久没有写博客,一直想重新调整自己的 ...

  5. 寻找下一款Prisma APP:深度学习在图像处理中的应用探讨

    在9月23日到9月24日的MDCC 2016年中国移动者开发大会"人工智能与机器人"专场中,阿里云技术专家周昌进行了题为<寻找下一款Prisma APP:深度学习在图像处理中 ...

  6. Python 中的可执行对象 eval,exec 和 compile与其在深度学习训练中的应用实例

    Python 中的可执行对象 eval,exec 和 compile 与其在深度学习训练中的应用实例 eval 计算指定表达式的值.也就是说它要执行的python代码只能是单个表达式(注意eval不支 ...

  7. 基于深度学习的青菜病害区域图像语义分割与定位

    基于深度学习的青菜病害区域图像语义分割与定位 1.研究思路 提出了一种基于深度学习的青菜灾害区域图像语义分割的方法,通过 fine-tune FCN 以像素级精度分割出图像中作物灾害区进行识别,并借助 ...

  8. 深度学习框架中的魔鬼:探究人工智能系统中的安全问题

    ISC 2017中国互联网安全大会举办了人工智能安全论坛. 我们把论坛总结成为一系列文章,本文为系列中的第一篇. 深度学习引领着新一轮的人工智能浪潮,受到工业界以及全社会的广泛关注. 虽然大家对人工智 ...

  9. FPGA在深度学习应用中或将取代GPU

    FPGA在深度学习应用中或将取代GPU 本文来源:AI前线 作者 | Ben Dickson 译者 | 大小非 人工智能的兴起触发了市场对 GPU 的大量需求,但 GPU 在 AI 场景中的应用面临使 ...

最新文章

  1. Docker 与 DevOps自动化部署实践
  2. 200t不稳定_技术革新!将不可能变为可能 这家企业是怎么做到的?
  3. [ 转载 ] Java基础14--创建线程的两个方法
  4. 随想录(推荐『步步惊芯 - 软核处理器内部设计分析』这本书)
  5. Layui--颜色选择器layui.colorpicker
  6. 【文献阅读】ResNet-Deep Residual Learning for Image Recognition--CVPR--2016
  7. 设计模式(十六)迭代器模式 Iterator
  8. windows server 2008 R2 集成USB3.0驱动--成功实现
  9. mysql 5.7 64位 解压版安装
  10. AutoCAD.Net 实现创建wipeout遮罩实体
  11. [唯一分解定理]感谢ZLY讲解
  12. 无座火车票为什么不能半价?
  13. python Stark 组件
  14. 作业帮发布新品学习机,首创“AI老师一对一”模式
  15. 给我半首歌的时间,给你说明白Immutable List
  16. 108将的绰号及其归宿
  17. Wince系统设置开机启动方式--注册表方式
  18. IEEE Trans 2006 使用K-SVD构造超完备字典以进行稀疏表示(稀疏分解)
  19. 有什么毫不起眼,却可以闷声发大财的工作?
  20. Java企业员工信息管理系统源码

热门文章

  1. 【Grafana】【一】Grafana 简介
  2. 企业微信审批弹窗在苹果手机弹不出来的可能问题之一
  3. 小武学fpgaStep1
  4. 改造家里的开关成为智能开关,保留原有开关控制,零火版,射频遥控器篇(二)
  5. 2020-12-01
  6. CodeFun-UI 设计稿智能生成前端源代码
  7. [洛谷1849] 拖拉机
  8. Android 更改menu的背景颜色和字体颜色
  9. 中国3D打印软件市场现状分析及发展前景预测报告
  10. Zemax-偏振、膜层和散射