16
我已經使用caffe提取了一些功能,它會生成一個.mdb文件。 然後我試圖用Python讀取它並將其顯示爲可讀的數字。Caffe:從Python中讀取LMDB
import lmdb
lmdb_env = lmdb.open('caffefeat')
lmdb_txn = lmdb_env.begin()
lmdb_cursor = lmdb_txn.cursor()
for key, value in lmdb_cursor:
print str(value)
這打印出一行很長的不可讀,破碎的字符。
然後我試圖打印INT(value),它返回如下:
ValueError: invalid literal for int() with base 10: '\x08\x80 \x10\x01\x18\x015\x8d\x80\xad?5'
浮動(值)給出了以下幾點:
ValueError: could not convert string to float:? 5????5
這是一個與lmdb文件本身的問題,還是它與數據類型的轉換有關?
您在這裏解決的這個錯誤是否源自用編碼圖像創建的lmdb? – Shai
@Shai是的,請參閱[討論](https://groups.google.com/d/msg/digits-users/CzHG1aHizsw/QYE3qWpxBgAJ) –
謝謝您鏈接到相關主題。在此添加適當的上下文。你能編輯你的答案,以反映它與編碼lmdb的相關性嗎?聲明錯誤消息以及根本原因是非常好的:lmdb中的編碼圖像。謝謝! – Shai