2014-01-17 2 views
0

Я пытаюсь прочитать набор данных MNIST (размер 784 * 60000). Моя реализация чтения бинарного формата MNIST занимает около 20 секунд, но я попытался использовать библиотеку Matio для чтения того же набора данных в формате .mat и это занимает гораздо больше времени около 4 ~ 5 мин. вот как я пытаюсь прочитать файл мата. Я делаю что-то неправильно?Производительность Matio

Матрица структура

struct Matrix { 
size_t col; 
size_t row; 
float *members; 

Matrix() { 
    members = NULL; 
    col = 0; 
    row = 0; 
} 
}; 

Чтение файла мат

mat_t *openmatfp; 
matvar_t *mymat; 
Matrix matrix; 
openmatfp = Mat_Open("trainingdata.mat",MAT_ACC_RDONLY); 
matrix.row = mymat->dims[0]; 
matrix.col = mymat->dims[1]; 
matrix.elements = new float[matrix.row * matrix.col]; 
memcpy(matrix.members, mymat->data,mymat->nbytes);//problem should be here! 

ответ

0

код, который вы показываете не установлено mymat.

Вам нужно что-то вроде: mymat = Mat_VarRead (openmatfp, "MatrixName");

Смежные вопросы