2014-10-10 3 views
0

Мне было интересно, можно ли использовать все функции opencv в android opencv. Я планирую сделать свой проект PG в андроиде Open CV. Потому что я знаком с Android, но не с opencv. Можно ли реализовать все функции, используемые в opencv (windows) для Android opencv?Разница между opencv и Android opencv

ответ

4

К сожалению, Java API не предоставляет доступа ко всем функциям, как в случае с C++ API. Во-первых, я расскажу о том, какие все инструменты необходимы для этого, а затем как мы можем использовать родной (C/C++) в Android.

Toolkits Необходимые

Для разработки Android приложений с использованием OpenCV библиотеки, нам понадобятся следующие инструменты (все они являются либо Open Source или свободное программное обеспечение, или оба) -

  1. Eclipse, с ADT Bundle (вы можете выбрать любую другую IDE, такую ​​как Android Studio)
  2. OpenCV4Android (хотя вы можете скомпилировать исходный код, рекомендуется, чтобы начинающие пользователи загружали двоичные файлы.)
  3. CygWin (только для Windows, не требуется на Linux или Mac)
  4. Java JDK (JRE не будет достаточно)
  5. Android Native Toolkit Development (НДК) (необходим для запуска родной C/C++ код)

Вам нужно будет установить переменные окружения в ОС для правильной настройки инструментов.

В качестве альтернативы, nVidia также предлагает набор инструментов для разработки - TADP. Преимущество TADP над методом «по частям» заключается в том, что вам не нужно следовать часто запутанной задаче настройки среды разработки. При установке по умолчанию будет загружено множество ненужных пакетов, которые не нужны (размер загрузки может превышать 2 ГБ, а при медленных подключениях к Интернету он может превратиться в продолжительную активность.), Скорее выберите пакеты вручную во время загрузки (появится диалоговое окно появится, просим вас выбрать либо полный, Выборочный или вручную.)

Используя код с/C++ в Android

Вы можете получить доступ к родной функциональности C/C++ в Android по

  1. Here является официальным руководством по OpenCV по настройка.
  2. Кроме того, ознакомьтесь с Mixed Processing Sample в папке «Образцы» в папке Android4OpenCV. В этом примере показано, как вы можете передать изображение и его оттенки серого, эквивалентные встроенной функции, и обнаруживать объекты на изображении с помощью обнаружения функций FAST.

Полезные книги и учебники

Там не так много учебного материала прямо сейчас, но я думаю, эти 2 источника являются лучшими -

  1. Программирование приложений Android с OpenCV на Packt Издательский.

  2. Примеры программ в папке OpenCV4Android.

+0

Я спрашивал о разнице людей ... opencv и opencv для android .. –

+0

Нет никакой разницы. OpenCV i.e. C/C++ API написан для выполнения Compter Vision в среде рабочего стола, а OpenCV4Android является официальным Java API для разработки мобильных устройств. Код, написанный с использованием C/C++ API (OpenCV), быстрее, чем код, написанный в Java API (OpenCV4Android), но будет добавлена ​​дополнительная загрузка JNI. Что касается размера API, OpenCV4Android не охватывает все функции, как в случае OpenCV. – bikz05

+0

хорошо .. будет ли в будущем релизе андроида открыть cv может выполнять все функции openvc? спасибо за ответ :) –

1

Да, безусловно, возможно использовать все функции в OpneCV на Android. Но вы должны заметить, что OpenCV4Android включает в себя 2 части: часть Java и родную часть.

Фактически часть Java предоставляет большинство функций библиотеки OpenCV. Если вы хотите иметь доступ к более функциональным возможностям и более быстрой скорости, то просто пойдите для разработки на месте. Библиотека .so в пакете SDK OpenCV предоставляет все собственные функции. На самом деле, если вы знакомы с собственной разработкой, вы можете даже напрямую использовать библиотеку OpenCV C++, точно так же, как люди используют FFMPEG для Android.

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