欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python讀取LMDB中圖像的方法

 更新時(shí)間:2018年07月02日 11:35:15   作者:Searching_Bird  
這篇文章主要為大家詳細(xì)介紹了python讀取LMDB中圖像的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了python讀取LMDB中的圖像具體代碼,供大家參考,具體內(nèi)容如下

圖像數(shù)據(jù)寫(xiě)入LMDB之后最好再按照寫(xiě)入的邏輯反向解析寫(xiě)入的圖像,如果圖像能夠被還原則證明寫(xiě)入方式是沒(méi)有問(wèn)題的。

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存儲(chǔ)的則需要按照:image3,image2,image1的順序合并為RGB圖像。PIL中圖像是按照RGB的順序存儲(chǔ)的
    image4=Image.merge("RGB",(image3,image2,image1))
    image4.save(img_save_to+str(key)+".jpg")
    datum_index+=1
    print "extracted"

 finally:
   lmdb_env.close()

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • python使用logging模塊記錄日志的操作

    python使用logging模塊記錄日志的操作

    在編寫(xiě)?Python?程序時(shí),日志記錄是一個(gè)非常重要的部分,日志不僅幫助你在開(kāi)發(fā)過(guò)程中調(diào)試代碼,還可以在程序正式運(yùn)行時(shí)提供診斷信息,幫助定位問(wèn)題,在本文中,我們將介紹?Python?的?logging?模塊,幫助你了解如何使用這個(gè)模塊來(lái)記錄和管理日志,需要的朋友可以參考下
    2024-10-10
  • Python?matplotlib實(shí)現(xiàn)多子圖布局

    Python?matplotlib實(shí)現(xiàn)多子圖布局

    多子圖布局是指在一個(gè)圖像中同時(shí)顯示多個(gè)子圖,每個(gè)子圖可以是獨(dú)立的圖形或者是相互關(guān)聯(lián)的圖形,下面我們就來(lái)了解下matplotlib是如何實(shí)現(xiàn)多子圖布局的吧
    2023-12-12
  • python Tornado框架的使用示例

    python Tornado框架的使用示例

    這篇文章主要介紹了python Tornado框架的使用示例,幫助大家更好的利用python進(jìn)行web開(kāi)發(fā),感興趣的朋友可以了解下
    2020-10-10
  • python實(shí)現(xiàn)將Word文檔中的文字轉(zhuǎn)換成語(yǔ)音的操作步驟

    python實(shí)現(xiàn)將Word文檔中的文字轉(zhuǎn)換成語(yǔ)音的操作步驟

    在Python中實(shí)現(xiàn)文字轉(zhuǎn)語(yǔ)音(Text-to-Speech, TTS)功能,能夠廣泛應(yīng)用于多種場(chǎng)景,如語(yǔ)音助手、有聲讀物、無(wú)障礙閱讀等,本文將結(jié)合具體案例,詳細(xì)介紹如何在Python中實(shí)現(xiàn)文字轉(zhuǎn)語(yǔ)音功能,需要的朋友可以參考下
    2024-08-08
  • python程序中調(diào)用其他程序的實(shí)現(xiàn)

    python程序中調(diào)用其他程序的實(shí)現(xiàn)

    本文主要介紹了python程序中調(diào)用其他程序的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • python enumerate函數(shù)的使用方法總結(jié)

    python enumerate函數(shù)的使用方法總結(jié)

    這篇文章主要介紹了python enumerate使用方法總結(jié),enumerate函數(shù)用于遍歷序列中的元素以及它們的下標(biāo),有興趣的可以了解一下
    2017-11-11
  • python tkinter組件擺放方式詳解

    python tkinter組件擺放方式詳解

    這篇文章主要介紹了python tkinter組件擺放方式詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-09-09
  • python常見(jiàn)字符串處理函數(shù)與用法匯總

    python常見(jiàn)字符串處理函數(shù)與用法匯總

    這篇文章主要介紹了python常見(jiàn)字符串處理函數(shù)與用法,結(jié)合實(shí)例形式詳細(xì)分析了Python字符串操作函數(shù)find、join、replace及split功能、使用技巧與操作注意事項(xiàng),需要的朋友可以參考下
    2019-10-10
  • python實(shí)現(xiàn)交并比IOU教程

    python實(shí)現(xiàn)交并比IOU教程

    這篇文章主要介紹了python實(shí)現(xiàn)交并比IOU教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-04-04
  • 如何使用Python快速生成gif圖

    如何使用Python快速生成gif圖

    這篇文章主要給大家介紹了關(guān)于如何使用Python快速生成gif圖的相關(guān)資料,我們需要用到 imageio 庫(kù),文章通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-02-02

最新評(píng)論