Я полагаю, что это должно повлиять на реализацию вашего приложения. Это java или c ++ (нативное) приложение? Является ли обработка изображений важной нагрузкой для вашего приложения? Вам нужна скорость вычислений или скорость реализации? Во всяком случае, я использовал OpenCV (реализация C ++) в java через JNI и NDK. Ядро моего приложения - обработка изображений, и скорость обработки данных очень меня интересует (почти в реальном времени). Все написано на C ++, так как у меня есть как настольные, так и мобильные реализации моей системы обработки изображений.
В мобильном приложении (для android) моя система обработки изображений встроена в приложение java. Отсюда я вижу обработку, разделенную на две части: получение изображения (через камеру устройства) и обработку изображения (через OpenCV). Получение изображения все сделано в java. Работа не была тривиальной, так как главной проблемой, которую я обнаружил, было получение RGB-кадров с камеры (изначально YUV), передача их в OpenCV, получение результатов от OpenCV и рендеринг их в представление поверхности приложения.
Взаимодействие с камерой и OpenCV может быть головной болью, в основном в зависимости от возможностей вашего устройства и версий SDK. После получения изображения обработка была относительно безболезненной. Вся моя система была ранее отлажена на моем P C, и я точно знал, чего ожидать. Все функции OpenCV вели себя должным образом, поэтому у меня почти не было проблем с этой частью.
Я также потратил много времени на работу в C ++, так что это было фактором, определяющим, какую реализацию выбрать. Теперь приложение в значительной степени настроено. Я могу добавить новые функции и протестировать их в своем P C и довольно быстро обновить мобильный порт.