python读取LMDB中图像的方法


Posted in Python onJuly 02, 2018

本文实例为大家分享了python读取LMDB中的图像具体代码,供大家参考,具体内容如下

图像数据写入LMDB之后最好再按照写入的逻辑反向解析写入的图像,如果图像能够被还原则证明写入方式是没有问题的。

from PIL import Image

def read_from_lmdb(lmdb_path,img_save_to):
 try:
  lmdb_env=lmdb.open(lmdb_path, map_size=3221225472)
  lmdb_txn=lmdb_env.begin()
  lmdb_cursor=lmdb_txn.cursor()
  datum=caffe.Datum()

  datum_index=0
  for key,value in lmdb_cursor:
    datum.ParseFromString(value)
    label=datum.label
    data=datum.data
    channel=datum.channels
    print ('Datum channels: %d' % datum.channels)
    print ('Datum width: %d' % datum.width)
    print ('Datum height: %d' % datum.height)
    print ('Datum data length: %d' % len(datum.data))
    print ('Datum label: %d' % datum.label)

    size=datum.width*datum.height
    pixles1=datum.data[0:size]
    pixles2=datum.data[size:2*size]
    pixles3=datum.data[2*size:3*size]
    #Extract images of different channel
    image1=Image.frombytes('L', (datum.width, datum.height), pixles1)
    image2=Image.frombytes('L', (datum.width, datum.height), pixles2)
    image3=Image.frombytes('L', (datum.width, datum.height), pixles3)
    #注意三通道的顺序,如果LMDB中图像是按照BGR存储的则需要按照:image3,image2,image1的顺序合并为RGB图像。PIL中图像是按照RGB的顺序存储的
    image4=Image.merge("RGB",(image3,image2,image1))
    image4.save(img_save_to+str(key)+".jpg")
    datum_index+=1
    print "extracted"

 finally:
   lmdb_env.close()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python ElementTree 基本读操作示例
Apr 09 Python
python33 urllib2使用方法细节讲解
Dec 03 Python
Windows上使用virtualenv搭建Python+Flask开发环境
Jun 07 Python
python实现一个简单的ping工具方法
Jan 31 Python
django框架事务处理小结【ORM 事务及raw sql,customize sql 事务处理】
Jun 27 Python
深入浅析Python 中的sklearn模型选择
Oct 12 Python
Windows10下Tensorflow2.0 安装及环境配置教程(图文)
Nov 21 Python
Python 从attribute到property详解
Mar 05 Python
django model 条件过滤 queryset.filter(**condtions)用法详解
May 20 Python
Python如何使用ElementTree解析xml
Oct 12 Python
python元组拆包实现方法
Feb 28 Python
Pygame如何使用精灵和碰撞检测
Nov 17 Python
python读写LMDB文件的方法
Jul 02 #Python
对numpy中的数组条件筛选功能详解
Jul 02 #Python
python matlibplot绘制多条曲线图
Feb 19 #Python
python matlibplot绘制3D图形
Jul 02 #Python
对numpy Array [: ,] 的取值方法详解
Jul 02 #Python
Python使用itertools模块实现排列组合功能示例
Jul 02 #Python
python绘制立方体的方法
Jul 02 #Python
You might like
一组PHP加密解密函数分享
2014/06/05 PHP
js获得鼠标的坐标值的方法
2013/03/13 Javascript
javascript与Python快速排序实例对比
2015/08/10 Javascript
jquery实现全屏滚动
2015/12/28 Javascript
简单实现JavaScript图片切换效果
2016/11/28 Javascript
js手机号4位显示空格,银行卡每4位显示空格效果
2017/03/23 Javascript
在 Vue 项目中引入 tinymce 富文本编辑器的完整代码
2018/05/04 Javascript
async/await地狱该如何避免详解
2018/05/10 Javascript
详解node Async/Await 更好的异步编程解决方案
2018/05/10 Javascript
JS实现获取进今年第几天是周几的方法分析
2018/06/27 Javascript
vue-cli脚手架的安装教程图解
2018/09/02 Javascript
在vue中嵌入外部网站的实现
2020/11/13 Javascript
python中使用enumerate函数遍历元素实例
2014/06/16 Python
python通过post提交数据的方法
2015/05/06 Python
python实现的文件同步服务器实例
2015/06/02 Python
Python3.5基础之NumPy模块的使用图文与实例详解
2019/04/24 Python
Python实现aes加密解密多种方法解析
2020/05/15 Python
Python实现自动签到脚本的示例代码
2020/08/19 Python
python实现逻辑回归的示例
2020/10/09 Python
斯洛伐克最大的婴儿食品和用品网上商店:Feedo.sk
2020/12/21 全球购物
电大自我鉴定
2013/10/27 职场文书
旅游管理毕业生自荐书
2014/02/02 职场文书
先进集体获奖感言
2014/02/13 职场文书
《散步》教学反思
2014/03/02 职场文书
技校学生个人职业生涯规划范文
2014/03/03 职场文书
医院义诊活动总结
2014/07/04 职场文书
义务教育学校标准化建设汇报材料
2014/08/16 职场文书
乡镇组织委员个人整改措施
2014/09/16 职场文书
庆六一宣传标语
2014/10/08 职场文书
夫妻房产协议书的格式
2014/10/11 职场文书
2014年酒店前台工作总结
2014/11/14 职场文书
电影地道战观后感
2015/06/04 职场文书
写给汽车4S店的创业计划书,拿来即用!
2019/08/09 职场文书
三年级作文之趣事作文
2019/11/04 职场文书
Python实战之疫苗研发情况可视化
2021/05/18 Python
SQL Server中的游标介绍
2022/05/20 SQL Server