Панорама изображений в Android
В моем приложении мне нужно делать непрерывные изображения и делать их панорамными.Для этого требуется вычисление вращения датчика android.Акселерометр тангажа, крена, Азимута возвращает значения, основанные на ориентации.Но это не точно,т. е. предположим, что если изображение взято в начале как начальное изображение, то следующее изображение должно быть нажато только после достаточного поворота устройства.Точно так же он должен взять несколько 5-6 изображений и сделать одно панорамное изображение.
Здесь проблема такова:
Как это сделать? рассчитайте вращение устройства(используя дополненную реальность, если это возможно) и автоматически делайте снимки?
Любая помощь приветствуется.Спасибо
1 ответ:
Мой ответ на самом деле не о гироскопе, и я не знаю, если это все еще актуально для вас, но надеюсь, что это будет полезно для кого-то.
Функция панорамы уже реализована в стандартной камере android, по крайней мере, начиная с Android 4.0 (возможно, она была доступна даже в более ранних версиях, но я не уверен, вы можете проверить это), поэтому, поскольку исходный код открыт для всех, это может быть самый простой способ просто скопировать необходимую функциональность.Хотя вы можете скачать исходники приложений из https://android.googlesource.com/ (вы хотите LegacyCamera или Camera), вы не можете просто открыть проект любого стандартного приложения в Eclipse или другой IDE. Например, LegacyCamera зависит от Gallery2 и других зависимостей, которые могут быть трудно разрешимы.
Я потратил несколько дней, пытаясь переместить функцию панорамы в отдельный проект. Вы можете скачать его здесь: https://github.com/yankeppey/PanoramaSample . Несколько замечаний:
Функциональное ядро (создание одного панорамное изображение из нескольких, уведомления о прогрессе и т. д.) находится в родной части.
Я использовал java-код от LegacyCamera, который использовался в Android 4.0-4.1, а не 4.2, потому что это было значительно проще для меня. Нативная часть взята из 4.2, она имеет только незначительные изменения внутри и почти те же интерфейсы JNI.
Этот проект просто поможет вам переместить функцию панорамы в ваше собственное приложение, это не похоже на библиотеку, не ожидайте чистого кода без ошибок, это просто довольно грязный и глючный проект. Если у меня будет время, я постараюсь сделать его чище, но гарантии нет :)
Comments