Другие варианты сохранения изображений без потерь в Android? - PullRequest
2 голосов
/ 28 февраля 2011

Мое приложение должно сохранять большие изображения в формате без потерь. Я готов пожертвовать некоторым дисковым пространством ради скорости сохранения, и я бы предпочел сохранять в каком-то стандартизированном формате вместо того, чтобы катиться по собственной.

Я обнаружил, что встроенный кодер .PNG работает довольно медленно для моих нужд, иногда требуется около 5 секунд для сохранения изображения 1000x1000. Я обнаружил, что могу гораздо быстрее сохранять изображения, сохраняя необработанные значения пикселей на диск (т.е. без сжатия) и сохраняя необработанные значения пикселей, сжатые с помощью класса deflate Java с измененными настройками сжатия. К сожалению, я не знаю, как изменить уровень сжатия PNG в Android.

Какие варианты у меня есть?

Я готов использовать NDK, но я осторожен с использованием внешней библиотеки, которая не была хорошо протестирована на Android. Например, libtiff был бы кандидатом, но я не могу найти какую-либо информацию о том, как это работает в NDK и насколько стабильно оно работает.

1 Ответ

0 голосов
/ 28 февраля 2011

Просто добавьте это, но новейшая версия OpenCV 2.2 поставляется с портом NDK для Android. Это включает в себя несколько библиотек изображений, включая libpng и libtiff.

Я лично не проверял их использование через интерфейс JNI или стабильность, но по крайней мере он легко компилируется для Android с использованием NDK.

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