T-70 é um projeto Rust inspirado na Unidade de Infantaria de Combate Automatizada Cyberdyne Série 70 ("O Exterminador do Futuro"). O projeto realiza verificação facial em tempo de execução usando OpenCV por meio de ligações opencv-rust e integra um CascadeClassifier com modelos MobileNetV2 para detecção de rosto e comparação de similaridade. O sistema foi projetado para ser executado como um executável independente, tornando-o ideal para implantação em ambientes onde a verificação facial em tempo real é essencial.
Detecção de VM : O projeto inclui lógica de detecção de máquina virtual para determinar se o executável está sendo executado em um ambiente virtualizado. Se uma VM for detectada, o executável será excluído automaticamente.
Detecção e comparação de rostos : o sistema captura imagens usando uma câmera conectada, detecta rostos e compara incorporações da transmissão ao vivo com uma imagem de referência para calcular pontuações de similaridade.
Ação automatizada : com base na pontuação de similaridade, o sistema pode executar o shellcode se uma correspondência for encontrada.
main.rs
: O principal ponto de entrada do projeto.
Módulos :
camera
: Lida com a inicialização e entrada da câmera.
classifier
: gerencia a inicialização do classificador de detecção facial.
face_detection
: Responsável por detectar rostos e processar a imagem de referência.
similarity
: calcula pontuações de similaridade entre as faces detectadas e as faces de referência.
Funções Externas :
Funções como GetProcessCountViaSnapShot
, GetUniqueUserCountViaSnapshot
e VmDetection
são integradas ao projeto para recursos avançados de tempo de execução.
Este projeto depende do seguinte:
OpenCV : Especificamente, é necessária uma versão compilada estaticamente da biblioteca OpenCV.
ligações opencv-rust : Fornece as ligações Rust para OpenCV. Verifique o repositório GitHub opencv-rust para obter mais informações.
Antes de construir o projeto, certifique-se de que o OpenCV seja compilado estaticamente. Siga a documentação do OpenCV para configurar uma versão compilada estaticamente da biblioteca em seu sistema.
No diretório scripts
, você encontrará scripts Python que ajudam a baixar versões offline dos modelos MobileNetV2 e CascadeClassifier. Eles são necessários para executar os componentes de detecção e comparação facial.
Depois que o OpenCV for compilado e os modelos baixados, você poderá construir o projeto usando Cargo:
compilação de carga --liberação
Depois de construir o projeto, você pode executar o executável para iniciar o processo de detecção e verificação facial:
./target/release/T-70.exe
Agradecimentos especiais à twistedfall pela manutenção do projeto opencv-rust
, que foi fundamental para o desenvolvimento do sistema T-70.
O T-70 é licenciado sob a licença MIT.
Inspirado na Unidade de Infantaria de Combate Automatizada Cyberdyne Série 70 ("O Exterminador do Futuro").
Mais informações: Terminador Cyberdyne Série 70