SentiVeillance SDK

Face identification and movement tracking for video surveillance systems

SentiVeillance SDK is designed for developing software that performs biometric face identification and detects moving pedestrians or vehicles or other objects using live video streams from high-resolution digital surveillance cameras.

The SDK is used for passive identification – when passers-by do not make any efforts to be recognized. List of possible uses includes law enforcement, security, attendance control, visitor counting, traffic monitoring and other commercial applications.

Available as a software development kit that allows solution development for Microsoft Windows and Linux platforms.

Download Brochure (PDF).

Download demo application.

Download 30-day SDK Trial.

Basic Usage Recommendations

Face recognition accuracy of SentiVeillance heavily depends on the quality of a face image in a frame. There are some basic recommendations and constraints when using face recognition applications based on SentiVeillance SDK.

General recommendations

  • Image quality during enrollment is important, as it influences the quality of the face template. Enrollment from photo or video stream is possible.
    • Several images during enrollment are recommended for better facial template quality which results in improvement of recognition quality and reliability.
    • Additional enrollments may be needed when facial hair style changes, especially when beard or mustache is grown or shaved off.
  • 32 pixels is the recommended minimal distance between eyes for a face on image or video stream to perform face template extraction reliably. 64 pixels or more recommended for better face recognition results. Note that this distance should be native, not achieved by resizing an image.
  • 1 MegaPixel or better camera resolution is recommended for face enrollment and recognition. Make sure that native resolution is provided by a camera, as some cameras or webcams may scale up native images to higher resolution without image quality improvement.

Face posture

The SentiVeillance face recognition engine has certain tolerance to face posture:

  • head roll (tilt) – ±180 degrees (configurable);
    • ±15 degrees default value is the fastest setting which is usually sufficient for most near-frontal face images.
  • head pitch (nod) – ±15 degrees from frontal position.
    • The head pitch tolerance can be increased up to ±25 degrees if several views of the same face that covered different pitch angles were used during enrollment.
  • head yaw (bobble) – ±45 degrees from frontal position (configurable).
    • ±15 degrees default value is the fastest setting which is usually sufficient for most near-frontal face images.
    • 30 degrees difference between a face template in a database and a face image from camera is acceptable.
    • Several views of the same face can be enrolled to the database to cover the whole ±45 degrees yaw range from frontal position.

Memory and Performance Constraints During Face Tracking

  • Memory usage. SentiVeillance consumes about 10 MB of memory per minute when tracking one face at a speed of 10 frames per second. The consumed memory is released after the face disappears from a frame.
  • Multiple faces in a frame. If multiple faces are visible in a frame, tracking performance falls down.
  • Minimal frame rate. It is recommended to retrieve at least 10 frames per second from a camera. If less than 10 frames are captured, face tracking feature may be not available.