Как интегрировать библиотеку кода Matlab с Android? - PullRequest
17 голосов
/ 12 марта 2012

У меня есть алгоритм и некоторый другой код, который находится в MATLAB, и я хочу использовать его в своем приложении для Android.

Как я могу это сделать?

  • Могу ли я сделать JAR-файл из MATLAB для использования с Android?
  • Мне нужно сделать что-то еще?

Ответы [ 6 ]

14 голосов
/ 12 марта 2012

Если у вас есть дополнительный продукт, MATLAB Builder JA для Java , вы можете создать файл .jar из своего кода MATLAB.

Однако для файла .jar требуется среда выполнения компилятора MATLAB (свободно распространяемый компонент, который вы получаете вместе с продуктами MATLAB Compiler и MATLAB Builder). MCR занимает гораздо большую площадь, чем подходит для типичного устройства Android (это как копия самой MATLAB без пользовательского интерфейса).

Вы можете подумать о любом

  1. Удаленный запуск файла .jar MATLAB на сервере и подключение к нему приложения Android, или
  2. Вместо того чтобы использовать продукты MATLAB Compiler и Builder, используйте MATLAB Coder , который преобразует подмножество языка MATLAB непосредственно в C-код. Этот код C не требует MCR и может быть скомпилирован для запуска непосредственно на Android. Убедитесь, что ваш алгоритм MATLAB соответствует или может быть выражен в соответствующем подмножестве языка MATLAB.

Редактировать: Начиная с R2015a, функциональность MATLAB Builder JA для Java была заменена новым продуктом MATLAB Compiler SDK .

4 голосов
/ 11 мая 2012

Я разработчик Addi. http://addi.googlecode.com Addi быстро становится полноценным портом Octave (это инструмент с открытым исходным кодом, использующий синтаксис Matlab). У Addi будут намерения, чтобы другие приложения использовали его в качестве своих математических движков или графических движков. Итак, если вы можете запустить свой код в Octave, то очень скоро вы сможете запустить его на Android.

3 голосов
/ 10 мая 2014

Новая функция в Matlab 2014a:

http://www.mathworks.com/help/simulink/samsung-galaxy-android-devices.html

Теперь вы можете напрямую устанавливать (ограниченный набор) моделей на устройства Samsung Android, и это должно работать практически на любом устройстве Android.

3 голосов
/ 30 сентября 2012

Наш единственный вариант - получить код C ++ из M-кода с помощью MATLAB Coder toolbox, который генерирует автономный код C и C ++ из кода MATLAB®.Он поддерживает только некоторое подмножество всех функций Matlab, поэтому может не подходить для ваших нужд.

Имея код на C, вы можете скомпилировать его с помощью NDK.MATLAB Compiler здесь не вариант.

0 голосов
/ 06 апреля 2014

Вы можете преобразовать код Matlab в Python, а затем использовать код Python в Android. Существует много инструментов , чтобы сделать это преобразование.Python хорошо сочетается с Android, чем Matlab.

0 голосов
/ 12 марта 2012

У вас есть 2 варианта:

  1. Создайте JAR, включите его в Java-приложение и начните его использовать.(Я не проверял это, создав JAR вне Eclipse)

  2. Вы можете написать то же самое в C и использовать Android NDK для его обработки.(Это будет быстрее и безопаснее)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...