Desenvolvimento de detecção de rosto Android com base na implementação opencv

 

 

 

 

download do opencv SDK  https://opencv.org/releases/

Desenvolvimento Android com OpenCV   https://docs.opencv.org/3.4.10/d5/df8/tutorial_dev_with_OCV_on_Android.html

https://docs.opencv.org/3.4.10/d9/d3f/tutorial_android_dev_intro.html

tutorial opencv  https://docs.opencv.org/3.4.10/d9/df8/tutorial_root.html

Detecção humana e facial  https://docs.opencv.org/3.4.10/d2/d64/tutorial_table_of_content_objdetect.html

Detecção de rosto e efeito de rastreamento:

 

    $ adb devices
    List of devices attached
    emulator-5554 device
    emulator-5555 device

    $ adb -s emulator-5555 install helloWorld.apk

 

Pontos de conhecimento básicos a saber: https://docs.opencv.org/3.4.10/d9/d3f/tutorial_android_dev_intro.html

  1.  Linguagem de programação Java que é a principal tecnologia de desenvolvimento para o sistema operacional Android. Além disso, você pode achar   úteis os documentos Oracle sobre Java .
  2. Java Native Interface (JNI),  que é uma tecnologia de execução de código nativo na máquina virtual Java. Além disso, você pode achar   úteis os documentos Oracle sobre JNI .
  3. Atividade Android  e seu ciclo de vida, que é uma classe de API Android essencial.
  4. O desenvolvimento do OpenCV certamente exigirá algum conhecimento das   especificações da câmera Android .

Android NDK

Para compilar o código C ++ para a plataforma Android, você precisa do Android Native Development Kit ( NDK ).

Você pode obter a versão mais recente do NDK na  página de download . Para instalar o Android NDK, basta extrair o arquivo para alguma pasta em seu computador. Aqui estão  as instruções de instalação .

Construir parte nativa do aplicativo a partir da linha de comando

  1. Abra o console e vá para a pasta raiz de um aplicativo Android

    cd <pasta raiz do projeto> /

  2. Execute o seguinte comando

    <path_where_NDK_is_placed> / ndk-build

Construindo parte nativa do aplicativo do  Eclipse  (CDT Builder)

 

 

========================================================== =======================

Etapa 2: instalar e configurar o OpenCV4Android SDK-download, importar e configurar opencv SDK, executar amostras

https://docs.opencv.org/3.4.10/da/d2a/tutorial_O4A_SDK.html

Resumo: Instale 2 coisas, (1) opencv android SDK, (2) instale o OpenCV Manager no telefone ou emulador

Você pode obter mais informações aqui:  Android OpenCV Manager e nestes  slides .

 

Conecte seu dispositivo com a ferramenta adb do Android SDK ou crie um emulador com suporte para câmera.

========================================================== =======================

Etapa 3: Desenvolvimento do Android com desenvolvimento da biblioteca opencv chamada OpenCV

Visão geral: escreva seu próprio código C ++ e chame opencv, configure 2 arquivos (1) Application.mk (2) Android.mk, uma rotina simples de hellow

https://docs.opencv.org/3.4.10/d5/df8/tutorial_dev_with_OCV_on_Android.html

O ambiente de software a ser instalado (se baseado em eclipse)

Método 1: Recomendar o desenvolvimento de aplicativos com inicialização assíncrona

Usar a inicialização assíncrona é uma   maneira recomendada para o desenvolvimento de aplicativos. Ele usa o OpenCV Manager para acessar as bibliotecas OpenCV instaladas externamente no sistema de destino.

方式 2 : Desenvolvimento de aplicativos com inicialização estática

De acordo com essa abordagem, todos os binários do OpenCV são incluídos no pacote do aplicativo. Ele é projetado principalmente para fins de desenvolvimento. Esta abordagem está obsoleta para o código de produção, o pacote de lançamento é recomendado para se comunicar com o OpenCV Manager por meio da inicialização assíncrona descrita acima.

 

Use  a  invocação manual do ndk-build ou  configure o Eclipse CDT Builder  para construir o JNI lib nativo antes de (re) construir a parte Java e criar um APK.

 

O aplicativo mais simples centrado no OpenCV deve implementar a inicialização do OpenCV, criar sua própria visualização para mostrar a visualização da câmera e implementar a interface CvCameraViewListener2 para obter os quadros da câmera e processá-los.

 

Resumindo:

Usando a interface Android do OpenCV, para exibir a entrada de vídeo da câmera, você pode usar a classe CameraBridgeViewBase e, em seguida, usar o código na função pública Mat onCameraFrame (CvCameraViewFrame inputFrame):

     mRgba = inputFrame.rgba (); // quadro de cores
     mGray = inputFrame.gray (); // quadro cinza

Para obter cada quadro do vídeo da câmera, execute vários processamentos nesta função. Finalmente, após retornar mRgba, ele pode ser exibido na interface
https://blog.csdn.net/wunghao8/article/details/38868281

 

 

Materiais de referência:

OpenCV é usado no Android (a análise de demonstração do código-fonte de detecção de rosto opencv4 é muito detalhada!)  Https://www.jianshu.com/p/4871d3dee4fa

Opencv baseado no desenvolvimento de DEMO do Android Studio sobre o reconhecimento facial do Android (descreve em detalhes as etapas de importação do opencv sdk na forma de texturas e fornece os resultados do reconhecimento de imagens de rosto)  https://blog.51cto.com/yangzheng0809/ 2173165

Base de desenvolvimento do Android opencv: realize o reconhecimento do olho humano e mudança de cor do zero (a teoria e o processo são muito claros)  https://blog.csdn.net/qq_35029531/article/details/103193349

Detecção de rosto Android baseada em OpenCV + Android https://www.cnblogs.com/numen-fan/p/10009425.html

OpenCV no Android realiza detecção de rosto agora que é tão simples  https://www.jianshu.com/p/3f076d65c2e6

opencv_3.4.1_android_sdk + android studio + detecção de rosto + reconhecimento de rosto + demonstração de detecção de olhos https://download.csdn.net/download/hongtaoershi/10607396

Use o OpenCV para detectar rostos no Android (versão Android Studio)  https://blog.csdn.net/qq_35952946/article/details/79036909

Três maneiras de o Android acessar a biblioteca OpenCV  https://www.cnblogs.com/xiaoxiaoqingyi/p/6676096.html

O desenvolvimento de opencv na plataforma Android [1] -android studio integrado opencv-sdk  https://www.jianshu.com/p/1dd3fc8f91b8

O reconhecimento dinâmico de rosto + detecção de rosto da câmera Android é baseado em OpenCV (OpenCVManager não é necessário) https://blog.csdn.net/qq_28931623/article/details/73528102

Sobre armeabi, armeabi-v7a, arm64-v8a e x86 no android

https://www.jianshu.com/p/f29ad4beef59

    defaultConfig {
        ndk {
            abiFilters "armeabi-v7a"
        }
    }

Acho que você gosta

Origin blog.csdn.net/qq_18276949/article/details/105852090
Recomendado
Clasificación