Rua Tupi 280 – Santa Cecilia - São Paulo - SP
+ 55 11 3826-5144

SENTIVEILLANCE SDK

SentiVeillance SDK é projetado para desenvolver softwares que executam identificação biométrica de Faces e detectam pedestres ou veículos em movimento ou outros objetos usando streams de vídeo ao vivo de câmeras de vigilância digital de alta resolução.

O SDK é usado para identificação passiva - quando os transeuntes não fazem esforços para serem reconhecidos. A lista de possíveis usos inclui aplicação da lei, segurança, controle de atendimento, contagem de visitantes, monitoramento de tráfego e outras aplicações comerciais.

Disponível como um kit de desenvolvimento de software que permite o desenvolvimento de soluções para plataformas Microsoft Windows e Linux.

CARACTERÍSTICAS E CAPACIDADES

  • Detecção de Face em tempo real, extração e identificação contra lista especificas da base de dados (lista Branca ou Negra).
  • Rastreamento simultâneo de várias faces ou objetos em vídeo ao vivo.
  • Detecção e classificação avançada de objetos em movimento para rastreamento de pedestres e veículos.
  • Classificação de gênero, avaliação de idade, detecção de expressão facial, óculos e cabelos faciais.
  • Registros de operação automática e relatórios de eventos, além de registrar novas faces do vídeo stream e adicioná-las à lista de observação automaticamente.
  • Suporte de grandes sistemas de vigilância conectando até 10 câmeras a um único computador e sincronização rápida entre computadores em rede.
  • Disponível como SDK multiplataforma que ofereçe suporte a várias linguagens de programação.
  • Servidor pronto para uso para integração em sistemas de gerenciamento de vídeo (VMS - video management systems) opcionalmente disponível.
  • Preços razoáveis, licenciamento flexível e suporte ao cliente gratuito.

A tecnologia SentiVeillance 6.0 possui essas capacidades específicas:

  • Desempenho em tempo real. A tecnologia SentiVeillance realiza o reconhecimento de Faces, pedestres ou objetos e rastreamento em tempo real. A tecnologia é projetada para ser executada em processadores multi-core para alcançar um desempenho rápido.
  • Dois algoritmos para sistemas de vigilância. Dependendo do projeto do sistema de vigilância, um desses algoritmos pode ser usado:
    • O algoritmo biométrico de reconhecimento de Face é baseado em redes neurais profundas e fornece essas capacidades para sistemas de vigilância:
      • Detecção múltipla de Face, extração de recursos e comparação de padrões com o banco de dados interno em tempo real.
      • A confiabilidade da identificação facial permite o uso de grandes bancos de dados da lista de vigilância (watchlist).
      • O rastreamento de Face é executado em todos os frames sucessivos do vídeo até que eles desapareçam do campo de visão da câmera. O algoritmo de rastreamento de Face usa templates dinâmicos de predição de Face e movimento que o tornam robusto para obstruções, como outros objetos ou até mesmo outras Faces. O algoritmo é capaz de continuar rastreando uma Face, mesmo quando reaparece após ter sido totalmente coberto por alguma obstrução (como paredes, móveis, cartazes, etc.).
      • Classificação de sexo – masculino – feminino (opcional) para cada pessoa no quadro.
      • Determinação de idade (opcional) para cada pessoa no quadro.
      • Sorriso, boca aberta, olhos fechados, óculos, óculos escuros, detecção de atributos de barba e bigode (configurável).
  • O algoritmo de detecção e rastreamento de movimento executa a detecção avançada de objetos em movimento na cena, sua classificação e rastreamento até desaparecerem. Esses recursos estão disponíveis para sistemas de vigilância:
    • Classificação de objetos. Após a calibração, a SentiVeillance permite realizar a classificação do objeto com base no tamanho e na velocidade de movimento. Por exemplo, os usuários podem configurar um sistema de vigilância para determinar se um objeto rastreado é um veículo, um único pedestre ou grupo de pedestres.
    • Controle de áreas restritas. O algoritmo SentiVeillance pode detectar e denunciar se pessoas ou objetos entraram, saíram ou ficaram em áreas restritas. Os eventos são desencadeados quando pessoas ou objetos cruzam linhas pré-definidas ou entram em áreas em forma de polígono.
    • Tolerância às condições climáticas. O algoritmo ignora chuva e neve, bem como árvores e arbustos, que são movidos pelo vento.
  • Operação automática. Um sistema baseado no SDK SentiVeillance 6.0 é capaz de registrar a aparência da Face, de um pedestre ou objeto, desaparecimento e rastreamento. As faces detectadas são comparadas com a lista no banco de dados interno e os Faces reconhecidos são imediatamente reportados ao sistema. O sistema usa rastreamento de Face para cadastro automático do stream de vídeo e adiciona novos padrões faciais para a lista em tempo real
  • Suporte a grandes sistemas de vigilância. O SentiVeillance 6.0 SDK permite integrar sua tecnologia em sistemas de vigilância com múltiplas câmeras e vários nós (nodes) de processamento de dados. Um único computador pode processar dados de vídeo de até 10 câmeras simultaneamente. Múltiplos computadores com o software SentiVeillance em execução podem sincronizar rapidamente dados biométricos e de vigilância entre eles através da rede. A sincronização pode ser personalizada, pois o SDK inclui exemplos c/ Códigos Fonte (sample source code) para usar os processos de comunicação e sincronização.
  • Processamento de arquivos de vídeo. SentiVeillance também aceita dados de arquivos de vídeo. Os arquivos de vídeo são processados ??em tempo real como provenientes de uma câmera virtual, portanto, um vídeo de uma hora será processado em uma hora.

CONTEÚDO DO SDK

O SDK SentiVeillance 6.0 é baseado na tecnologia SentiVeillance 6.0 especialmente projetado para integrar o reconhecimento facial biométrico em sistemas de vide vigilância. Os Templates de face criados com SentiVeillance SDK são totalmente compatíveis com a tecnologia multi-biométrica VeriLook SDK e MegaMatcher SDK.

O SDK SentiVeillance 6.0 inclui a biblioteca do Gerenciador de Dispositivos (Device Manager) para Microsoft Windows e Linux que permite a captura simultânea de várias câmeras.

Componentes

Microsoft Windows

(somente 64 bit)

Linux

(somente 64 bit)

 • SentiVeillance componente p/ 2 câmeras

1 licença por computador

 • SentiVeillance componente p/ 10 câmeras

Opcionalmente disponível

 • Face Extractor componente

1 licença por computador

 • Biblioteca Gerenciadora de Device

+

+

Exemplos de Programação

 • C++

+

+

 • C#

+

 

 • Visual Basic .NET

+

 

Tutoriais de Programação

 • C

+

+

 • C#

+

 

 • Java

+

+

Documentação

 • Documentação SentiVeillance 6.0 SDK

+

 

SENTIVEILLANCE 2 - COMPONENTE DE CÂMERA

O componente de câmera SentiVeillance 2 foi projetado para ser usado em sistemas de videovigilância em pequena escala com várias câmeras. O componente realiza detecção e rastreamento em tempo real de todas as faces detectadas de até 2 streams de vídeo ao vivo. As instalações dos componentes podem ser executadas em vários computadores distribuídos por rede e sincronizar dados entre eles.

O componente SentiVeillance é capaz de rastrear várias faces simultaneamente e compará-las com Faces de banco de dados interno (ou seja, uma lista de suspeitos ou uma lista de funcionários da empresa). Novas faces podem ser inscritas no banco de dados de forma automática ou manual a partir de arquivos de imagem. O gênero da pessoa pode ser determinado opcionalmente para cada pessoa em um quadro.

As exemplos em C # e VB .NET do SDK mostram como usar o componente.

Uma licença do componente de câmera SentiVeillance 2 está incluída no SDK SentiVeillance 6.0. Mais licenças para este componente podem ser adquiridas a qualquer momento pelos clientes SDK SentiVeillance 6.0.

 

SENTIVEILLANCE 10 - COMPONENTE DE CÂMERA

O componente de câmera SentiVeillance 10 é projetado para ser usado em grandes sistemas de vigilância com várias câmeras e possui a mesma funcionalidade que o componente SentiVeillance 2. Ele suporta entrada de até 10 streams de vídeo ao vivo no mesmo PC ou servidor. As instalações dos componentes podem ser executadas em vários computadores distribuídos por rede e sincronizar dados entre eles.

As licenças dos componentes da câmera SentiVeillance 10 podem ser compradas a qualquer momento pelos clientes do SDK SentiVeillance 6.0.

 

COMPONENTE FACE EXTRACTOR

O Face Extractor cria Templates de face a partir de imagens. O componente destina-se a cadastrar faces de imagens estáticas em um sistema de vigilância e fornece sua funcionalidade a um preço razoável.

O componente extrai um Template de face única em 1.34 segundos. O desempenho especificado requer um PC ou laptop com pelo menos um processador Intel Core 2 Q9400 (2,67 GHz).

Face Extractor pode generalizar um Template de face de várias imagens que incluem a mesma face para melhorar a qualidade do Template.

Mais licenças para este componente podem ser adquiridas a qualquer momento pelos clientes SDK SentiVeillance 6.0.

 

BIBLIOTECA DEVICE MANAGER

A biblioteca Device Manager funciona em Microsoft Windows e Linux e fornece funcionalidades para a captura simultânea de várias câmeras. A biblioteca suporta uma gama de câmeras de vigilância digital em alta resolução e outras câmeras que fornecem interface DirectShow para plataforma Windows ou interface GStreamer para plataforma Linux.

A lista de câmeras suportadas está disponível abaixo nos requisitos do sistema.

O Device Manager inclui uma estrutura de plug-in que permite aos integradores escrever plug-ins para suportar suas câmeras usando a API fornecida. A documentação SentiVeillance SDK contém as informações detalhadas e amostras.

Um arquivo de vídeo também pode ser usado como fonte de dados para SentiVeillance. A entrada do arquivo é processada como proveniente de uma câmera virtual, portanto, o vídeo é processado em tempo real.

 

RECOMENDAÇÕES BÁSICAS DE USO

A precisão de reconhecimento de face da SentiVeillance depende imprescindivelmente da qualidade de uma imagem da face no quadro. Existem algumas recomendações e restrições básicas ao usar aplicativos de reconhecimento de face com base no SDK SentiVeillance.

 

RECOMENDAÇÕES GERAIS

  • A qualidade da imagem durante o cadastro é importante, pois influencia a qualidade do template de face. É possível cadastrar a partir de fotos ou stream de vídeo.
    • Várias imagens durante o cadastro são recomendadas para melhorar a qualidade do template facial, o que resulta na melhoria da precisão e confiabilidade do reconhecimento.
    • Cadastros adicionais podem ser necessários quando o estilo de cabelo facial muda, especialmente quando a barba ou o bigode estão crescidos ou foram raspados.
  • 32 pixels é a distância mínima recomendada entre os olhos para uma face na imagem ou na transmissão de vídeo para executar a extração do template de face de forma confiável. 64 pixels ou mais são recomendados para melhores resultados de reconhecimento de face. Observe que essa distância deve ser nativa, não feita por redimensionamento de uma imagem.
  • É recomendável 1 MegaPixel ou melhor resolução de câmera para o cadastro e reconhecimento da face. Certifique-se de que a resolução é nativa da câmera, uma vez que algumas câmeras ou webcams podem expandir as imagens nativas para uma resolução maior sem melhoria da qualidade da imagem.

 

POSTURA FACIAL

O motor de reconhecimento de face SentiVeillance tem certa tolerância em relação a postura:

  • head roll (inclinação Lateral) - ± 15 graus;
     
  • head pitch (Inclinação Frontal) - ± 15 graus da posição frontal.
    • A tolerância de inclinação da cabeça pode ser aumentada até ± 25 graus se várias imagens da mesma face em diferentes ângulos forem usadas durante o cadastro.
       
  • head yaw (Giro Lateral) - ± 45 graus da posição frontal (configurável).
    • O valor padrão de ± 15 graus é a configuração mais rápida que geralmente é suficiente para a maioria das imagens da face frontal.
       
    • A diferença de 30 graus entre um template de face (em um banco de dados) e uma imagem da face é aceitável.
       
    • Várias visualizações da mesma face podem ser inscritas no banco de dados para cobrir toda a faixa de ± 45 graus da posição frontal.

REQUISITOS DO SISTEMA E CÂMARAS SUPORTADAS

  • PC ou servidor com processador compatível com x86-64 (64 bits):
  • Processador de 3 GHz ou melhor com 4 núcleos de processador é recomendado para sistemas com 1 ou 2 câmeras conectadas ao mesmo PC ou servidor. Os sistemas com mais câmeras precisarão de uma unidade de processamento gráfico (veja abaixo).
  • É necessário um suporte SSE2. Processadores que não suportam SSE2 não podem executar o algoritmo SentiVeillance. Verifique se o seu modelo de processador suporta o conjunto de instruções SSE2.
  • Pelo menos 2 núcleos de processador são necessários para processar os dados de vigilância de uma câmera com várias faces em um quadro. Se houver mais de 2 câmeras em um sistema de vigilância, serão necessários vários PCs em rede ou um servidor multiprocessador para processar os dados das câmeras.
    • Se for esperado um grande número de faces de uma vez, podem ser necessários mais núcleos no processador, um processador mais poderoso ou mesmo um servidor multiprocessador para processar os dados de vigilância e manter o desempenho aceitável.
  • É necessária uma unidade gráfica de processamento / placa de vídeo (GPU) para um sistema de vigilância com mais de 2 câmeras conectadas ao mesmo PC ou servidor.
    • Uma placa de vídeo NVIDIA GeForce GTX 1080 GPU ou melhor é recomendada para sistemas com até 10 câmeras.
    • 1 GB de vRAM é recomendado para qualquer quantidade de câmeras.
    • Recomenda-se 2 GB de vRAM se o monitor for utilizado.
    • A capacidade de cálculo 3.5 ou superior deve ser suportada pela GPU.
    • O toolkit CUDA 8.0 ou posterior é necessário.
    • A biblioteca cuDNN 7 é necessária.
  • Pelo menos 8 GB de RAM.
  • Uma câmera digital de alta resolução. A resolução da câmera pode variar dependendo da aplicação atual. A resolução recomendada é de cerca de 2 MegaPixel, pois o processamento de vídeo de câmeras com maior resolução exigirá mais RAM livre e um processador mais poderoso para manter a taxa de quadros aceitável. Estas câmeras suportadas são adequadas para uso do SDK SentiVeillance 6.0:
    • Qualquer câmera IP, que suporte RTSP (Real Time Streaming Protocol):
      • Somente RTP sobre UDP é suportado.
      • O framework VLC pode ser opcionalmente usado para ler transmissões de vídeo.
      • H.264 / MPEG-4 AVC ou Motion JPEG devem ser usados para codificar a transmissão de vídeo.
    • Essas câmeras específicas de alta resolução também são suportadas:
      • Câmera Axis M1114 (Microsoft Windows e Linux)
      • Câmera IP Basler BIP2-1600-25c-DN (Microsoft Windows e Linux)
      • Câmera Cisco 4500 IP (apenas Microsoft Windows)
      • Câmera PiXORD N606 (Microsoft Windows e Linux)
      • Câmera Prosilica GigE Vision (Microsoft Windows e Linux)
      • Câmera Sony SNC-CS50 (Microsoft Windows e Linux)
      • Câmera Uniview IPC2322EBR-DPZ28
    • Qualquer câmera digital de alta resolução acessível usando:
      • Interface DirectShow para plataforma Microsoft Windows;
      • Interface GStreamer para plataforma Linux.
    • Qualquer outro suporte de dispositivo pode ser adicionado por clientes que usam o Framework de Plug-in da Gerenciadora de Devies fornecida. Consulte a documentação SentiVeillance 6.0 SDK para obter informações detalhadas.
  • Microsoft Windows específico:
    • Microsoft Windows Vista / 7/8/10 / Server 2008 / Server 2008 R2 / Server 2012, de 64 bits.
    • Microsoft .NET framework 4.5 ou posterior (para o uso de componentes .NET).
    • Microsoft DirectX 9.0 ou posterior.
    • Um dos seguintes ambientes de desenvolvimento para desenvolvimento de aplicativos:
      • Microsoft Visual Studio 2012 ou posterior (para desenvolvimento de aplicativos em C / C ++, C #, Visual Basic .Net)
      • Sun Java 1.6 SDK ou posterior
  • Linux específico:
    • Ubuntu 16.04 SO
    • glibc 2.11.3 ou mais recente
    • GStreamer 1.2.2 ou posterior com plugins gst-vaapi instalados para decodificação de vídeo acelerada por hardware
    • libgudev-1.0 164-3 ou mais recente
    • wxWidgets 3.0.0 ou mais recentes libs e pacotes de dev (para criar e executar amostras de SDK e aplicativos com base neles)
    • Sun Java 1.6 SDK ou posterior (para desenvolvimento de aplicativos com Java)

ESPECIFICAÇÕES TÉCNICAS

SentiVeillance SDK inclui algoritmos separados para reconhecimento biométrico de face, detecção e rastreamento de movimento. Dependendo do projeto do sistema de vigilância, um desses algoritmos podem ser usados. Abaixo estão as especificações para esses algoritmos.

Especificações técnicas para algoritmo biométrico de reconhecimento facial

4% do lado maior do quadro (pelo menos 32 pixels) é a distância mínima recomendada entre os olhos para um rosto na transmissão de vídeo ou imagem para realizar o rastreamento de face confiável e extração do template. As velocidades de rastreamento da face, extração do padrão e comparação com um banco de dados dependem do tamanho real de um rosto no quadro, e não do tamanho de todo o quadro.

SentiVerillance tem certa tolerância em relação a postura para garantir a detecção e rastreamento da face:

  • head roll (Inclinação Lateral) - ± 15 graus da posição frontal;
  • head pitch (Inclinação Frontal) - ± 15 graus da posição frontal.
  • head yaw (Giro Lateral) - ± 45 graus da posição frontal.

Veja também toda a lista de recomendações e restrições para o uso da SentiVervision.

As especificações de desempenho são fornecidas para o processador Intel Core i7-4771, com taxa de 3,5 GHzclock e 1920 x 1080 pixels de vídeos.

Especificações técnicas do algoritmo de reconhecimento biométrico de face SentiVeillance 6.0

Taxa de quadros ao rastrear até 5 faces

Mais de 25 quadros por segundo

Tempo de Identificação do banco de dados (1)

Menos de 0.5 segundos

Tamanho do Template de face uma única Face (kilobytes)

5.0 ou 7.0 (configurável)

Tamanho máximo do banco de dados de faces

Limitado por quantidade de RAM livre

(1) até 20.000 registros de faces no banco de dados; um banco de dados maior deve ter um tempo de resposta mais lento. Observe que cada pessoa pode ser representada por vários registros no banco de dados com diferentes variações de aparência, diferentes ângulos de captura, etc.

Especificações técnicas para o algoritmo de detecção e rastreamento de movimento

40 x 40 pixels é o tamanho mínimo de um objeto móvel para sua detecção e rastreamento. Os pedestres ou o desempenho de rastreamento de objetos em movimento dependem do tamanho real de um objeto em um quadro, e não do tamanho de todo o quadro.

As especificações de desempenho são fornecidas para o processador Intel Core i7-4771, com taxa de 3,5 GHzclock e 1920 x 1080 pixels de vídeos.

Especificações técnicas do algoritmo de detecção e rastreamento de movimento SentiVeillance 6.0

Taxa de quadros ao rastrear até 3 pedestres

Mais de 30 quadros por segundo

Taxa de quadros ao rastrear até 4 carros e pedestres ocasionais

Mais de 27 quadros por segundo

 

MODELO DE LICENCIAMENTO

DESENVOLVIMENTO DE PRODUTO

Um integrador deve obter um SDK SentiVeillance 6.0 (EUR 790) para desenvolver um produto para o usuário final baseado na tecnologia SentiVeillance. O SDK precisa ser comprado apenas uma vez e pode ser usado para todos os projetos e por todos os desenvolvedores dentro da empresa do integrador.

SentiVeillance 6.0 SDK inclui:

  • Uma licença de computador único para o componente de câmera SentiVeillance 2
  • Uma licença de computador único para o componente Face Extractor

As licenças de componente de câmera SentiVeillance 10 não estão incluídas no SDK SentiVeillance 6.0, mas podem ser compradas separadamente.

Os integradores podem obter licenças de componentes adicionais se forem necessárias para o processo de desenvolvimento.

 

DESENVOLVIMENTO DO PRODUTO

Para implantar seus produtos desenvolvidos, um integrador precisa obter licenças de componentes para cada computador ou dispositivo onde o componente será instalado, junto com o produto do integrador. Os integradores podem comprar licenças adicionais de componente SentiVeillance se necessário, a qualquer momento.

 

OPÇÕES DE ATIVAÇÃO DE LICENÇA

Os componentes estão protegidos contra cópia. As seguintes opções de ativação de licença estão disponíveis:

  • Os números de série são usados ??para ativar licenças para componentes específicos do SentiVeillance em determinado computador ou dispositivo. A ativação é feita via internet ou por e-mail. Após a ativação, a conexão de rede não é necessária para uso de licença de computador único.
  • Nota: a ativação por número de série não é adequada para ambientes virtuais.
  • Ativação pela Internet. Um arquivo de licença especial é armazenado em um computador; o arquivo da licença permite executar componentes específicos da SentiVeillance nesse computador depois de verificar a licença pela Internet. A conexão à internet deve estar disponível periodicamente por um curto período de tempo. Uma licença de computador único pode ser transferida para outro computador movendo o arquivo de licença e esperando até que a ativação anterior expire.
  • Gerenciador de licenças por volume. As licenças podem ser armazenadas em um dongle (token) de gerenciador de licenças por volume. A ativação da licença pode ser realizada sem conexão com a internet e é adequada para ambientes virtuais. O gerenciador de licenças por volume é usado no site por integradores ou usuários finais para gerenciar licenças dos componentes SentiVeillance das seguintes maneiras:
  • Ativando licenças de computador único - Uma licença de instalação para um componente SentiVeillance será ativada para uso em um computador específico. O número de licenças disponíveis no gerenciador de licenças será diminuído pelo número de licenças ativadas.
  • Gerenciando licenças de computador único via LAN ou Internet - O gerenciador de licenças permite o gerenciamento de licenças de instalação para componentes SentiVeillance em vários computadores ou dispositivos móveis / incorporados em uma LAN ou através da Internet. O número de licenças gerenciadas é limitado pelo número de licenças no gerenciador de licenças. Não é necessária nenhuma ativação da licença e a quantidade da licença não é diminuída. Uma vez emitida, a licença é atribuída a um computador ou dispositivo específico na rede.
  • Usando o gerenciador de licenças como um dongle - Um gerenciador de licenças de volume contendo pelo menos uma licença para um componente SentiVeillance pode ser usado como um dongle, permitindo que o componente SentiVeillance seja executado em um computador específico onde o dongle está vinculado.
  • As licenças adicionais do componente SentiVeillance para o gerenciador de licenças podem ser compradas a qualquer momento.

 

VALIDADE DAS LICENÇAS

Todas as licenças de SDK e componentes são perpétuas e não têm prazo de validade. Não há taxa anual ou quaisquer outras taxas, exceto a taxa de compra de licença. É possível mover licenças de um computador ou dispositivo para outro. A FingerSecfornece uma maneira de renovar a licença se o computador sofrer alterações devido a manutenção técnica.

 

ACORDO DE LICENCIAMENTO

O Contrato de licenciamento contém todos os termos e condições de licenciamento.

Observe que você aceitará inequivocamente este acordo, fazendo um pedido usando o serviço de pedidos junto à FingerSec, por e-mail ou outros meios de comunicação. Leia o acordo antes de fazer um pedido.

Nome Descrição Data Tamanho (KB)
SENTIVEILLANCE SDK IDENTIFICAÇÃO DE FACE E RASTREAMENTO DE MOVIMENTO PARA SISTEMAS DE VIGILÂNCIA POR VÍDEO 11/12/2017 799.870