0

MNIST データセット (サイズは 784*60000) を読み取ろうとしています。MNIST バイナリ形式の読み取りの実装には約 20 秒かかりますが、Matio ライブラリを使用して同じデータセットを .mat 形式で読み取ろうとしたところ、はるかに時間がかかりました。約4~5分 これは、マットファイルを読み取ろうとする方法です。私は何か間違ったことをしていますか?

行列構造体

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

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

mat ファイルの読み取り

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!
4

1 に答える 1

0

あなたが示しているコードはmymatを設定していません。

次のようなものが必要です: mymat = Mat_VarRead(openmatfp, "MatrixName");

于 2014-10-09T07:17:51.997 に答える