Size: a a a

Android NDK (C++) — русскоговорящее сообщество

2018 November 15

DD

Denis Dodonov in Android NDK (C++) — русскоговорящее сообщество
Justin L0we
Короче либы создаются, но есть по пути
app\build\intermediates\cmake\debug\obj

и по пути
\build\intermediates\transforms\stripDebugSymbol\debug\0\lib

Мне же надо в /src/main/libs скопировать те, которые по первому пути?
Это опенсв? Наверное да
источник

JL

Justin L0we in Android NDK (C++) — русскоговорящее сообщество
Denis Dodonov
Это опенсв? Наверное да
Не, мои нативные, которые для моих cpp создаются. Опенсвшные я закинул из их архива
источник

DD

Denis Dodonov in Android NDK (C++) — русскоговорящее сообщество
Justin L0we
Не, мои нативные, которые для моих cpp создаются. Опенсвшные я закинул из их архива
Ну у меня градлом автоматом в апкашку собирается
источник
2018 November 16

JL

Justin L0we in Android NDK (C++) — русскоговорящее сообщество
Denis Dodonov
Ну у меня градлом автоматом в апкашку собирается
А есть вариант ускорить работу вот это всего? Ибо каскады Хаара ну жесть как медленно работают, даже если разрешение сменить. Гугловский мл кит на порядок быстрее. Причем, как понимаю, даже если на яве целиком писать, то то же обнаружение лиц все равно будет медленным. Иначе какой смысл в опенсв на андроиде)
источник

DD

Denis Dodonov in Android NDK (C++) — русскоговорящее сообщество
Justin L0we
А есть вариант ускорить работу вот это всего? Ибо каскады Хаара ну жесть как медленно работают, даже если разрешение сменить. Гугловский мл кит на порядок быстрее. Причем, как понимаю, даже если на яве целиком писать, то то же обнаружение лиц все равно будет медленным. Иначе какой смысл в опенсв на андроиде)
Вообще обычно они относительно быстро работают. А какое разрешение, устройство, время выполнения? Ну если юзать java opencv то оно всё равно в ндк работает.
источник

DD

Denis Dodonov in Android NDK (C++) — русскоговорящее сообщество
Просто делал фейс детект на распери, там кадров 15 выдавал алгоритм с каскадами. Может можно поиграться с параметрами.
источник

DD

Denis Dodonov in Android NDK (C++) — русскоговорящее сообщество
А, ещё опиши как работает это всё? Кадры откуда берутся?
источник
2018 November 17

JL

Justin L0we in Android NDK (C++) — русскоговорящее сообщество
Denis Dodonov
А, ещё опиши как работает это всё? Кадры откуда берутся?
У меня xiaomi redmi note 3 pro со снапом 650 на 8.1 андроиде. Разрешение камеры я ставил 640х480, иначе совсем грустно.

Я создаю обьект JavaCameraView и в методе onCameraFrame получаю кадр mRgba = inputFrame.rgba(); ну и потом вызываю функцию обнаружения нативного класса OpencvNativeClass.faceDetection(mRgba.getNativeObjAddr());
источник

DD

Denis Dodonov in Android NDK (C++) — русскоговорящее сообщество
Justin L0we
У меня xiaomi redmi note 3 pro со снапом 650 на 8.1 андроиде. Разрешение камеры я ставил 640х480, иначе совсем грустно.

Я создаю обьект JavaCameraView и в методе onCameraFrame получаю кадр mRgba = inputFrame.rgba(); ну и потом вызываю функцию обнаружения нативного класса OpencvNativeClass.faceDetection(mRgba.getNativeObjAddr());
Ясно, вообщем не хаар медленный :)
источник

DD

Denis Dodonov in Android NDK (C++) — русскоговорящее сообщество
Камера опегсивишная конвертит Mat в Bitmap и отрисовывает это всё дело на канвасе
источник

DD

Denis Dodonov in Android NDK (C++) — русскоговорящее сообщество
Попробуй вот не вызывать нативный метод а ретурнить сразу матрицу ту что пришла, думаю что скорость не увеличиться особо. А мелкое разрешение камере ещё растягивать обратно нужно. У меня на телефоне с высоким разрешением и лучшим процессором работало быстрее чем на ином.
источник

DD

Denis Dodonov in Android NDK (C++) — русскоговорящее сообщество
На s9 опенсивишная камера работает в 12 ФПС максимум.
источник

DD

Denis Dodonov in Android NDK (C++) — русскоговорящее сообщество
Вообщем тебе нужно юзать обычную камеру или камера2 и отрисовывать сверху отдельной вьюхой аутпут
источник

JL

Justin L0we in Android NDK (C++) — русскоговорящее сообщество
Если не вызывать нативный метод, а просто сразу возвращать что приходит, то опенсвшная камера работает быстро (и с большим разрешением). Попробую с обычной камерой тогда
источник

DD

Denis Dodonov in Android NDK (C++) — русскоговорящее сообщество
Justin L0we
Если не вызывать нативный метод, а просто сразу возвращать что приходит, то опенсвшная камера работает быстро (и с большим разрешением). Попробую с обычной камерой тогда
0_о ну значит у тебя реально чёт медленно
источник

DD

Denis Dodonov in Android NDK (C++) — русскоговорящее сообщество
Попробуй сначала просто измерить время выполнения нативного метода, System.currentTimeMillis - startTime...если медленно то и смысла нет
источник

JL

Justin L0we in Android NDK (C++) — русскоговорящее сообщество
ну тогда смысла нет, потому что тут без замеров видно, что ппц как долго выполняется
источник

R

RoyNX7 in Android NDK (C++) — русскоговорящее сообщество
В Opencv 3.4 камера делает ок 25 фпс на 1920х1080 на galaxy s7. скачайте пакет отдельно и посмотрите как работает samples. Я тож долго варился со скоростью на хаара, а всё изза кривого корейца, который выложил на ютуб кривое руководство.
источник

R

RoyNX7 in Android NDK (C++) — русскоговорящее сообщество
LBP кстати побыстрее на 20%, а качество похуже на 5
источник

R

RoyNX7 in Android NDK (C++) — русскоговорящее сообщество
И еще в каскаде важен такой параметр как setMinObjectSize, чем больше объект для поиска, тем быстрее фурычит
источник