У меня есть приложение для Android, в котором я хочу запустить обработку изображений OpenCV
на прямых изображениях с android Camera2
API. В настоящее время, если я не занимаюсь обработкой, я могу получать изображения в функции OnImageAvailble
со скоростью 30 кадров в секунду для обычного кадра 1280x720
.
Теперь, будучи грязным взломом, я запрашиваю изображения из ImageReader в формате JPEG, а затем передаю Bitmap в jni
что сильно снижает производительность.
Какой самый эффективный способ передать кадр YUV в jni
в объекте cv Mat
. Кроме того, я хочу преобразовать этот кадр в RGB
для дальнейшей обработки. Должен ли я изменить формат на стороне Java или передать объект Mat
в jni
и преобразовать только цветовое пространство.