Pesquisar

Aplicativo de visão computacional em Python/OpenCV

05/06/2026 às 12:54

Descrição do Projeto:

Descrição do projeto: Olá! Preciso de um desenvolvedor Python (nível júnior ou pleno) com experiência em visão computacional para criar um aplicativo local (para rodar em Windows) de monitoramento de fluxo de pessoas a partir de uma câmera/webcam comum. O aplicativo será desenvolvido para uso pela Contag.

O objetivo do sistema é capturar a imagem da webcam em tempo real, identificar quem passa em frente à câmera, rastrear o indivíduo para evitar contagens duplicadas, inferir o gênero e a faixa etária da pessoa e persistir esses dados em um relatório local.

Toda a lógica de Inteligência Artificial deve rodar de forma 100% local e offline (sem custos de APIs em nuvem). O motor de inferência demográfica recomendado é o framework DeepFace.

Requisitos Funcionais e Técnicos:

Interface Gráfica (GUI):
- Interface intuitiva desenvolvida em Tkinter.
- Exibição do feed de vídeo em tempo real integrado na janela.
- Botões para "Iniciar Monitoramento", "Encerrar" e um painel lateral mostrando os contadores acumulados (Total de pessoas únicas, divisão por Gênero e divisão por Faixa Etária).

Rastreamento de Pessoas (Centroid Tracking):
- O sistema deve calcular o centroide geométrico de cada rosto detectado. O cálculo do centroide C a partir da caixa delimitadora de largura w e altura h deve seguir a fórmula:
$$C = \left( x + \frac{w}{2}, \ y + \frac{h}{2} \right)$$
- Deve ser usada a distância euclidiana para associar o mesmo ID a uma pessoa em frames consecutivos:
$$d = \sqrt{(x_2 - x_1)^2 + (y_2 - y_1)^2}$$

- Evitar recontagem: se uma pessoa ficar parada em frente à câmera por minutos, ela deve manter o mesmo ID e ser contada apenas uma vez.
- Tolerância de sumiço: o ID deve ser mantido na memória por um intervalo de tolerância (ex.: 30 a 50 frames) caso ocorra uma oclusão rápida, evitando gerar um novo ID quando a pessoa reaparecer.

Análise Demográfica (DeepFace local):
- No momento em que um novo ID estável for registrado pelo rastreador de centroides, o sistema deve extrair o frame do rosto e chamar o método DeepFace.analyze para obter o gênero e a idade.
- O resultado da idade numérica deve ser agrupado nas seguintes categorias exatas:
- 10 a 25 (De 10 a 25 anos)
- 26 a 50 (De 26 a 50 anos)
- 50 mais (Acima de 50 anos)

Persistência de Dados (Relatório local):
- Gravação em tempo real em um arquivo Excel simples formatado em .csv (ex: relatorio_presenca.csv) contendo as colunas: ID_Pessoa, Data_Hora_Evento, Genero_Estimado, Faixa_Etaria.

Otimizações Obrigatórias (Evitar Instabilidades):
Como o software rodará de forma contínua em ambiente Windows, o desenvolvedor deve prever as seguintes proteções em código:
- Multithreading: a leitura do OpenCV e o processamento do DeepFace devem rodar em threads separadas para evitar que a interface gráfica (GUI) congele durante as chamadas da IA.
- Controle de chamadas da IA: o DeepFace deve ser executado apenas uma vez por ID detectado (no momento do cadastro do ID), e não em todos os frames, minimizando o estresse de CPU/GPU e prevenindo superaquecimento (thermal throttling).
- Prevenção de memory leaks: tratamento correto de liberação de memória em loops (coleta de lixo com gc.collect()) devido a vazamentos conhecidos no backend do Keras/TensorFlow.

Entregáveis:
- Código-fonte completo em Python 3.11 estruturado de forma limpa, modular e comentado.
- Arquivo requirements.txt com todas as dependências especificadas.
- Instruções claras de instalação e configuração do ambiente no Windows.

Habilidades Desejadas: Python, OpenCV, Tkinter, DeepFace, TensorFlow/Keras, Programação Assíncrona / Multithreading.

Habilidades Principais (Obrigatórias)
- Python: A linguagem de programação que servirá como base para todo o projeto.
- OpenCV: A biblioteca essencial que o programador usará para acessar a webcam e tratar os quadros de vídeo.
- Inteligência Artificial (ou Criação & Integração com IA): necessária porque o aplicativo usará modelos de rede neural para inferir idade e gênero.
- Machine Learning (ou Aprendizado de Máquina): o DeepFace e o TensorFlow/Keras são tecnologias que pertencem a este campo.
- Desenvolvimento Desktop: como o aplicativo será instalado e executado diretamente no Windows.

Habilidades Secundárias (Recomendadas para refinar os candidatos)
- Tkinter: a ferramenta nativa do Python que o desenvolvedor usará para desenhar as janelas, botões e os contadores da tela.
- Visão Computacional: a especialidade da inteligência artificial focada em processamento e reconhecimento de imagens.
- TensorFlow (ou Keras): os frameworks de código aberto que rodam por baixo do motor DeepFace.
- Pandas: a biblioteca de Python que facilita a manipulação de dados e a geração organizada do arquivo de relatório .csv.
- Git: o sistema de controle de versão que garantirá a segurança e o histórico de alterações do código durante o desenvolvimento.

Atividades do cliente nesse projeto:

Última visualização: 05/06/2026 às 14:50

Informações adicionais

Categoria: Web, Mobile & Software
Subcategoria: Desenvolvimento Desktop
Orçamento: Aberto
Nível de experiência: Intermediário
Visibilidade: Público
Propostas: 46
Interessados: 57
Tempo restante:
Valor Mínimo: R$ 50,00

Cliente

Propostas (46)
  • Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer Premium Felipe P.
    Top Freelancer Plus
    Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer Premium Patrick S.
    Top Freelancer Plus
    Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer Premium Otávio Q.
    Top Freelancer Plus
    Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer Premium André K.
    Top Freelancer Plus
    Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer Premium Adriano C.
    Top Freelancer
    Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer Pro Ailton C.
    Top Freelancer Plus
    Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer Pro Denilson J.
    Top Freelancer Plus
    Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

+ 26 propostas

Nenhuma proposta foi encontrada.

Carregando...
Projetos semelhantes no 99Freelas

Comparador de preços entre marketplaces para desktop Windows - Descrição pública Preciso desenvolver um software desktop para Windows, preferencialmente em Python, com interface simples. O sistema deverá coletar preços de p...

Publicação e gerenciamento de licenças de software - Estamos na fase final de desenvolvimento de um software para engenharia. Precisamos de alguém que finalize o código para que o programa seja publicado, configurando a ferramenta de in...

Carregando...

Carregando...

Pesquisar

FREELANCERS
PROJETOS
Ocorreu um erro inesperado. Caso o erro persista, entre em contato conosco através do e-mail suporte@99freelas.com.br.