Realizado

Mauro Teixeira - Camera virtual

Publicado em 18 de Setembro de 2024 dias na TI e Programação

Sobre este projeto

Aberto

Escopo do Projeto:
Substituição da Câmera Nativa:

Desenvolver uma aplicação que se registre como uma câmera disponível no sistema Android
Integrar a câmera virtual para que seja selecionável em qualquer aplicativo que utilize a câmera nativa.
Interação com Aplicações:

Garantir que a câmera virtual possa ser utilizada por qualquer aplicativo que solicite acesso à câmera.
Testar a compatibilidade com aplicativos populares que utilizam a câmera.
Reprodução de Imagem em TextureView:

Implementar uma função que permite carregar e exibir uma imagem estática em um TextureView.
Simular um feed de vídeo contínuo com a imagem estática.
Requisitos de Vivacidade para Reconhecimento Facial:

Adicionar funções para alterar a imagem estática de forma a atender aos requisitos de vivacidade do reconhecimento facial.
Implementar técnicas para simular piscar de olhos e movimentos faciais leves.
Sensores de Movimento:

Utilizar os sensores de acelerômetro e giroscópio do dispositivo para simular movimento da câmera.
Criar uma função que mova a imagem estática de acordo com os dados dos sensores, simulando movimentos de avanço e recuo.
Layout do Projeto:
1. Estrutura de Diretórios:

css
Copiar código
camera-virtual-app/

├── src/
│  ├── main/
│  │  ├── java/
│  │  │  ├── com/
│  │  │  │  ├── cameraVirtual/
│  │  │  │  │  ├── MainActivity.java
│  │  │  │  │  ├── CameraService.java
│  │  │  │  │  ├── TextureViewRenderer.java
│  │  │  │  │  ├── LivenessHandler.java
│  │  │  │  │  ├── AdversarialAttack.java
│  │  │  │  │  ├── MotionSensorHandler.java
│  │  ├── res/
│  │  │  │  ├── layout/
│  │  │  │  │  ├── activity_main.xml
│  │  │  │  ├── drawable/
│  │  │  │  │  ├── example_image.png
│  ├── test/
│  │  ├── java/
│  │  │  ├── com/
│  │  │  │  ├── cameraVirtual/
│  │  │  │  │  ├── MainActivityTest.java
│  │  │  │  │  ├── CameraServiceTest.java
2. Funcionalidades Detalhadas:

MainActivity.java

Inicialização da interface do usuário.
Configuração do TextureView.
CameraService.java

Registro da câmera virtual no sistema.
Manuseio de solicitações de aplicativos externos.
TextureViewRenderer.java

Carregamento e exibição da imagem estática em um TextureView.
Simulação de feed de vídeo.
LivenessHandler.java

Implementação de técnicas para atender aos requisitos de vivacidade.
Simulação de piscar de olhos e movimentos faciais leves na imagem estática.
AdversarialAttack.java

Implementação de técnicas de ataque adversarial.
Modificação da imagem para enganar algoritmos de reconhecimento facial, se necessário.
MotionSensorHandler.java

Captura de dados do acelerômetro e giroscópio.
Simulação de movimento da câmera com base nos dados dos sensores.
3. Tecnologias e Ferramentas:

Linguagem de Programação: Java/Kotlin.
IDE: Android Studio.
Bibliotecas: OpenCV (para manipulação de imagem), TensorFlow Lite (para ataques adversariais).
APIs: SensorManager (para sensores de movimento).

Categoria TI e Programação
Subcategoria Programação de Apps para Android, iOS e outros

Prazo de Entrega: Não estabelecido

Outro projetos publicados por A. S.