Я пытаюсь экспортировать файл .mat
который хранит данные, хранящиеся в datatype struc
в формате hd5
, чтобы сделать его совместимым с c++ портированием с использованием coder
. Но hd5
принимает только числовые значения. Код содержит следующую ошибку:
Error using ==> h5write at 54 Argument 'Data' failed validation isnumeric.
Я не уверен, правильно ли я его использую, но здесь мой код
h5write('myfile.h5','/model/filters',model.filters,1,146);
а также попытался, но получил такую же ошибку -
h5write('myfile.h5','/model/filters','face_p146_small.mat',1,146);
Мои сомнения в продолжении с моим предыдущим вопросом здесь. Любую помощь по портированию кода из Matlab в c++, имеющую данные в формате.mat, очень ценится.
Наконец, я нашел ответ для своего сценария. Поскольку используемый мною алгоритм использует очень сложные данные, мне нужно использовать формат двоичных данных, но все форматы двоичных данных, поддерживаемые Matlab, не поддерживаются для преобразования/переноса на C++.
Список всех функций, поддерживаемых при преобразовании кода Matlab в C++
Список форматов данных, поддерживаемых Matlab
http://www.mathworks.in/help/matlab/import_export/supported-file-formats.html
Кажется, что ни одна из функций не поддерживает форматы данных, поддерживаемые матрицей Matlab.
Следовательно, мне обязательно придется переписать код