我正在使用一个简单的python脚本运行
*** Error in `python': free(): invalid pointer: 0x00000000029b7420 *** ======= Backtrace: ========= /lib/x86_64-linux-gnu/libc.so.6(+0x777e5)[0x7f23d6dc67e5] /lib/x86_64-linux-gnu/libc.so.6(+0x8037a)[0x7f23d6dcf37a] /lib/x86_64-linux-gnu/libc.so.6(cfree+0x4c)[0x7f23d6dd353c] /usr/lib/x86_64-linux-gnu/libprotobuf.so.9(_ZN6google8protobuf8internal28DestroyDefaultRepeatedFieldsEv+0x1f)[0x7f23ae6e18af] /usr/lib/x86_64-linux-gnu/libprotobuf.so.9(_ZN6google8protobuf23ShutdownProtobufLibraryEv+0x8b)[0x7f23ae6e0b3b] /usr/lib/x86_64-linux-gnu/libmirprotobuf.so.3(+0x233b9)[0x7f2398fc03b9] /lib64/ld-linux-x86-64.so.2(+0x10de7)[0x7f23d7346de7] /lib/x86_64-linux-gnu/libc.so.6(+0x39ff8)[0x7f23d6d88ff8] /lib/x86_64-linux-gnu/libc.so.6(+0x3a045)[0x7f23d6d89045] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf7)[0x7f23d6d6f837] python(_start+0x29)[0x4933e9]
我的示例代码是
import sys
sys.path.append('../../python')
import caffe
import io
from PIL import Image
import numpy as np
import math
import leveldb
video_list = 'images/test_list.txt'
f = open(video_list, 'r')
f_lines = f.readlines()
f.close()
linenum = 0
predict_right = 0;
db1 = leveldb.LevelDB('./rgb_test_rst')
db2 = leveldb.LevelDB('./depth_test_rst')
datum1 = caffe.proto.caffe_pb2.Datum()
datum2 = caffe.proto.caffe_pb2.Datum()
for idx, line in enumerate(f_lines):
key_str = '%06d' %(linenum)
value1 = db1.Get(key_str)
value2 = db2.Get(key_str)
datum1.ParseFromString(value1)
datum2.ParseFromString(value2)
。 。 。 使用Ubuntu 16.04运行, Numpy 1.14.0。 Python 2.7
此外,我已经检查过我的所有文件都是从文本文件中正确读取的。