Skip to content

HeartCam é uma aplicação web que estima batimentos cardíacos em tempo real, a partir das câmeras de dispositivos móveis ou computadores.

License

Notifications You must be signed in to change notification settings

DanielKGM/heartcam

DOI Contributors Forks Stargazers Issues Unlicense License LinkedIn


Logo

HeartCam: Batimentos Cardíacos Online

HeartCam é uma aplicação web que estima batimentos cardíacos em tempo real, a partir das câmeras de dispositivos móveis ou computadores.

ACESSAR WEBSITE »

Reportar Erro · Sugerir Algo

Clique Aqui para Exibir o Sumário
  1. Sobre o Projeto
  2. Instalação Local
  3. Usando o HeartCam
  4. Contato
  5. Licença e Citação
  6. Agradecimentos

Sobre o Projeto

Logo

O HeartCam é um sistema desenvolvido para fotopletismografia remota (rPPG), um monitoramento não invasivo de sinais vitais. Utilizando a técnica de Eulerian Video Magnification (EVM) e análise espectral (FFT), o sistema consegue detectar as micro-variações de cor na pele causadas pela circulação sanguínea, invisíveis a olho nu.

Este projeto foi desenvolvido para a disciplina Processamento de Imagens (2025.2) da Universidade Federal do Maranhão (UFMA).

(voltar ao topo)

Principais Tecnologias

Aplicação
Python Linguagem principal do backend e processamento de dados.
Flask Framework web para gerenciamento de rotas e servidor.
NumPy Cálculos matemáticos, manipulação de arrays e FFT.
OpenCV Visão computacional, detecção facial (Haar Cascades) e construção de pirâmides gaussianas para o algoritmo EVM.
SocketIO Comunicação bidirecional em tempo real entre cliente e servidor.
Bootstrap Estilização da interface e componentes responsivos.
JavaScript Chart.js Lógica do cliente e gráficos dinâmicos.
HTML Estrutura semântica das páginas web.
Docker Containerização da aplicação para fácil distribuição e deploy.

(voltar ao topo)

Instalação Local

Siga este guia passo a passo para configurar e rodar o HeartCam no seu computador pessoal. Você pode optar por rodar via Python (recomendado para desenvolvimento) ou Docker (recomendado para uso prático isolado).

Pré-requisitos

Antes de começar, certifique-se de que sua máquina possui as ferramentas necessárias instaladas.

Instalação

1º PASSO: Obtenha o Código Fonte

Você pode clonar o repositório usando o Git ou baixar o arquivo ZIP manualmente.

  • Opção A: Via Git Clone (Recomendado)

    Abra seu terminal e execute:

    git clone https://github.com/DanielKGM/heartcam.git
  • Opção B: Via Download ZIP

    1. Clique no botão verde Code no topo desta página.
    2. Selecione Download ZIP.
    3. Extraia o conteúdo para uma pasta de sua preferência.

2º PASSO: Acesse a Pasta do Projeto

Abra o terminal de comandos do seu sistema operacional e execute o seguinte comando, substituindo todo texto entre colchetes (colchetes inclusos) pelo diretório em que foi baixado o projeto no passo anterior:

cd [DIRETÓRIO O QUAL FOI BAIXADO]

3º PASSO: Execute a Aplicação

Escolha apenas um dos métodos abaixo para rodar o projeto.

  • Método A: Rodando com Python (Ambiente Virtual)

    Este método é ideal se você deseja modificar o código ou não quer instalar o Docker. Siga a sequência de números gregos e execute os comandos de acordo com seu sistema operacional:

    # I. Crie o ambiente virtual
    python -m venv .venv
    # No Linux, se der erro, use: python3 -m venv .venv
    
    # II. Espere gerar os arquivos e ative o ambiente virtual
    .\.venv\Scripts\Activate.ps1 # Windows PowerShell
    .\.venv\Scripts\activate.bat # Windows CMD
    source .venv/bin/activate # Linux/MAC
    
    # III. Instale as dependências do projeto
    pip install -r requirements.txt
    
    # IV. Inicie o servidor
    python app.py
  • Método B: Rodando com Docker

    Este método garante que a aplicação rode em um ambiente isolado e idêntico ao do website, sem precisar instalar Python ou bibliotecas manualmente.

    1. Abra o programa Docker Desktop (Windows) ou rode o serviço Docker (Linux/MAC) pelo comando: sudo systemctl start docker
    2. Construa a imagem (Build) com o comando docker build -t heartcam .
    3. Rode o container pelo comando docker run -p 5000:5000 heartcam

4º PASSO: Visualize no Navegador

Após iniciar o servidor (pelo Método A ou B) sem erros, o serviço está ativo (geralmente na porta 5000).

(voltar ao topo)

Usando o HeartCam

Diagrama de Fluxo do Usuário

Orientações

  • 💡 Iluminação: Use o sistema em um ambiente bem iluminado. A luz deve incidir no seu rosto de forma uniforme.
  • 🎯 Estabilidade: Mantenha o rosto próximo da câmera e parado. A área verde deve estar posicionada sobre a testa. Falar ou mexer a cabeça interfere na leitura da luz.
  • 👓 Acessórios: Óculos grossos ou franjas cobrindo a testa podem impedir a detecção correta.
  • Paciência: Aguarde cerca de 10 a 30 segundos após o rosto ser detectado para amostragem e estabilização do gráfico.

(voltar ao topo)

Contato

Daniel Galdez · danielgaldez10@hotmail.com

(voltar ao topo)

Licença e Citação

Este projeto é distribuído sob a licença GNU General Public License v3 (GPLv3), que garante a liberdade de usar, estudar, modificar e redistribuir o software, desde que o código-fonte seja mantido aberto e as versões derivadas utilizem a mesma licença. Para mais informações, consulte o arquivo LICENSE.md ou a aba de licença do repositório.

Caso utilize este projeto em trabalhos acadêmicos ou científicos, utilize a seguinte referência BibTeX:

@software{HeartCam_2026,
  author  = {Campos Galdez Monteiro, Daniel},
  month   = jan,
  title   = {{HeartCam: Remote Photoplethysmography (rPPG) System}},
  url     = {https://github.com/DanielKGM/heartcam},
  version = {1.0.0},
  year    = {2026}
}

(voltar ao topo)

Agradecimentos

(voltar ao topo)