Sim, o Channel State Information pode conter mudanças repetíveis causadas por um gesto, e um classificador pode aprender essas mudanças. O desafio não é desenhar uma onda, mas coletar pacotes representativos, manter emissor e receptor estáveis, definir rótulos repetíveis e provar que o modelo não aprendeu apenas a sala, a pessoa ou a sessão.
Um primeiro projeto deve usar três a seis gestos deliberados, além de repouso ou desconhecido. Registre horários, pessoa, sessão, distância e condições da sala. Depois teste uma pessoa ou sala que não participou do treino. Para simples presença ou movimento, os guias específicos de presença e movimento são mais adequados.
WIDAR3 e SignFi ajudam a comparar pré-processamento e modelos, mas seus dispositivos, protocolos e ambientes podem ser diferentes. Cada resultado precisa estar ligado a uma fonte de sinal, uma regra de rotulagem e uma divisão de teste clara.
O que o reconhecimento de gestos por WiFi CSI realmente reconhece
CSI descreve como o canal sem fio muda entre subportadoras, antenas e momentos. Uma mão em movimento altera os caminhos múltiplos e as relações de fase. O modelo não enxerga um gesto legível; ele recebe uma janela de medições depois de limpeza, calibração, normalização e extração de características.
Uma tarefa com cinco gestos, um vocabulário de língua de sinais e reconhecimento de atividade em uma sala são problemas diferentes. Alta precisão com uma pessoa e uma sala não demonstra portabilidade.
- Começar com três a seis gestos e uma classe de repouso ou desconhecido.
- Retornar classe, confiança e estado desconhecido quando a janela for ambígua.
- Separar presença, movimento, pose, identidade e gesto na especificação.
Do sinal capturado às classes de gestos
Um pipeline reproduzível documenta a fonte dos pacotes, o receptor CSI, as antenas, o canal e a sala. Preserve timestamps, participante, gesto, distância e sessão antes de aplicar filtros complexos.
O pré-processamento define a fronteira do modelo. Remova pacotes corrompidos, normalize com cuidado e aprenda parâmetros apenas nos dados de treino. Um filtro calculado sobre toda a gravação pode vazar informação do teste.
- Guardar dados brutos ou minimamente processados para auditoria.
- Registrar firmware, canal, largura de banda, antenas e cadência de pacotes.
- Separar sessões antes de criar janelas sobrepostas.
Hardware: confirme acesso ao CSI, não apenas o nome comercial
Um ESP32 compatível com CSI é um ponto de partida de baixo custo quando placa, versão do ESP-IDF, firmware, origem dos pacotes e antenas estão documentados. A placa é um componente de captura, não um sensor de gestos pronto.
Um laptop Linux com placa de rede compatível oferece outro caminho de captura. Um Raspberry Pi pode hospedar logs, inferência ou visualização sem ser automaticamente um receptor CSI. Classifique cada projeto como ferramenta de captura, dataset, código de modelo ou aplicação.
- Confirmar CSI real, e não somente RSSI ou um recurso comercial de sensing.
- Fixar transmissor, receptor, canal e distância na primeira referência.
- Usar o guia ESP32 CSI quando o caminho de hardware não estiver claro.
Datasets e rótulos: WIDAR3, SignFi e sua própria sala
Datasets públicos ajudam a reproduzir trabalhos e testar ideias de pré-processamento. WIDAR3 e SignFi oferecem contexto de pesquisa, mas hardware, amostragem, rótulos e ambientes podem divergir do seu sistema.
Para implantação, colete repetições em velocidades diferentes, repouso, movimentos acidentais e casos negativos. Preserve identificadores de pessoa e sessão, e faça a divisão antes de criar janelas sobrepostas.
- Escrever uma instrução curta e igual para cada gesto.
- Incluir ventilador, porta, animal, passagem e sala vazia como interferências.
- Não tratar a precisão publicada como garantia para sua sala.
Pré-processamento e treinamento do modelo
Comece com uma linha de base fácil de inspecionar: características de amplitude ou fase, janela fixa, classificador simples e matriz de confusão. Só depois compare redes convolucionais, recorrentes ou modelos de atenção.
Aumento de dados pode ajudar, mas não substitui variação real. Reserve uma sessão final e informe macro-F1, recall por classe, latência, previsões desconhecidas e falsos acionamentos durante o repouso.
- Dividir por sessão ou participante antes de usar janelas sobrepostas.
- Inspecionar confusões entre gestos parecidos e a classe de repouso.
- Aprender parâmetros de pré-processamento apenas no treino.
Como validar entre pessoas e salas
O teste mais importante geralmente não é outra janela da mesma gravação. Teste uma nova pessoa, sala, dia, posição do receptor e movimentos negativos que representem o uso pretendido.
Mantenha a instrução do gesto, mas permita velocidade e postura naturais. Compare recall por classe, falsos alarmes e falhas representativas. Um estado desconhecido é melhor que uma classe confiante em toda janela.
- Divisão dentro da sessão serve para depuração, não para provar generalização.
- Divisão por pessoa testa se o modelo aprendeu um estilo individual.
- Casos negativos e desconhecidos testam se o sistema consegue recusar uma classe.
Limites, privacidade e o próximo passo
CSI depende de geometria, firmware, tráfego, paredes, móveis, antenas e pessoas. O mesmo gesto pode mudar em outra sala e outro movimento pode parecer uma classe treinada. Não descreva um classificador de gestos como câmera, reconhecimento de identidade ou sistema médico sem evidência específica.
Mesmo sem câmera, o sensing de rádio pode revelar presença, movimento e rotina. Prefira processamento local, retenção curta, consentimento e estado desconhecido. Para começar, escolha uma captura ESP32 ou dataset público e defina a divisão por pessoa e sala antes do treino.
- Tratar vocabulário, sala, pessoas e hardware como parte da especificação.
- Não inferir identidade, saúde ou atividade escondida.
- Ligar cada métrica à divisão, ao número de sessões e à definição de falha.
Referências técnicas principais
FAQ de reconhecimento de gestos por WiFi CSI
Reconhecimento de gestos é igual a detecção de movimento WiFi?
Não. Detecção de movimento procura uma mudança, enquanto reconhecimento associa uma janela a uma de várias classes definidas.
Um ESP32 consegue reconhecer gestos sozinho?
Um ESP32 compatível consegue capturar CSI, mas ainda são necessários fonte de pacotes, rótulos, pré-processamento, modelo e validação.
Quantos gestos o primeiro dataset deve ter?
Três a seis gestos mais repouso ou desconhecido são um começo administrável. Adicione classes depois de testar novas sessões e pessoas.
Qual é o melhor dataset de gestos WiFi CSI?
Não existe um melhor universal. Escolha hardware, vocabulário, amostragem e diversidade compatíveis com a pergunta, e use dados locais para implantação.
Por que o modelo funciona em uma sala e falha em outra?
Caminhos múltiplos, móveis, antenas, tráfego e pessoas mudam o CSI. Sem testes de sala, o modelo pode aprender o ambiente em vez do gesto.
WiFi CSI pode identificar uma pessoa ou diagnosticar saúde?
Um classificador de gestos não deve ser usado para isso. Essas afirmações exigem tarefas próprias, evidência, consentimento, controles de privacidade e validação independente.