2014-02-26 59 views
0

我試圖使用flann與大hdf5文件(尺寸爲1kk x 1k)。FLANN和大HDF5文件

但所有的flann_example.cpp失敗的功能

Matrix<float> dataset; 
load_from_file(dataset, "carray.hdf5", "carray"); 
上線

dataset = flann::Matrix<T>(new T[dims_out[0]*dims_out[1]], dims_out[0], dims_out[1]); 

,因爲它似乎想與new

我使用分配的大內存塊win32與2Gb.Is有沒有辦法處理這樣的大數據?

我也試圖與蟒蛇

def using_pyflann(): 
    N=10000*6 # for 100k x 1k don't work 
    dim=1000 
    type=np.int32 #int8 can't be used? 
    x = np.array(np.random.rand(N, dim)*10, dtype=type) 
    perm = np.random.permutation(N) 
    fl= FLANN() 
    fl.build_index(x) 
    pt= np.array(np.random.rand(1, dim)*10, dtype=type) 
    t0= time.time() 
    res, dist= fl.nn_index(pt) 
    print (time.time()-t0) 
    print res 
    print dist 
    print 'done' 
+0

恐怕你必須逐張閱讀它。 – patrickvacek

回答