Object recognition for robotics and computer vision
SentiSight is intended for developers who want to use computer vision-based object recognition in their applications. Through manual or fully automatic object learning it enables searching for learned objects in images from almost any camera, webcam, still picture or live video in an easy, yet versatile, way.
Available as a software development kit that provides for the development of object recognition systems for Microsoft Windows or Linux platforms.
Features and Capabilities
- Reliable, innovative algorithm that is tolerant of variation in appearance, object scale, rotation and pose.
- Accurate detection, processing and tracking of objects in real-time.
- Webcams or other low cost cameras are suitable for obtaining object images.
- Available as multiplatform SDK that supports multiple programming languages.
- Reasonable prices, flexible licensing and free customer support.
SentiSight SDK allows to develop applications and solutions for a wide range of tasks, including:
- Recognition of documents, stamps, labels, packaging and other items for sorting, logo masking, usage monitoring and similar applications
- Object counting and inspection for assembly lines and other industrial applications
- Augmented and extended reality applications for toys, games, devices and Web applications such as: smart toys for children that recognize cards, images, pictograms, etc.; recognition of places based on photographs; recognition of products such as beverages, foods and other consumer goods.
- Robotic vision for navigation and manipulation
- Law enforcement applications for identification, such as tattoo recognition
The SentiSight 3.4 technology is able to perform fully automatic or manual object learning and has these capabilities for advanced visual-based object learning and recognition:
Accurate object detection.
The SentiSight algorithm is able to find out:
- whether a particular object is present in a scene;
- where the object is located within the scene;
- how many instances of the object occur in the scene.
Two algorithms for object recognition.
Depending on the object type, one of these algorithms (or both) may be used for successful recognition:
- The blob-based algorithm uses small details of an object as distinctive features that are extracted into an object model and are used later to recognize the object. This algorithm offers high-speed performance but is not suitable for solid-colored, reflecting or transparent (glass, etc.) objects.
Shape recognitionThe shape-based algorithm is useful for objects which do not have any distinctive details but have stable external edges (boundaries) and/or internal edges. This algorithm performs at slower speeds but allows for the recognition of most objects not identified by the blob-based algorithm.
Click to zoom
- Color usage mode. The blob-based algorithm may be configured to detect object colors and use this information for improving recognition accuracy. This mode enables SentiSight-based applications to distinguish similar objects that only differ in color.
- Object's image quality determination. A quality threshold can be used during object learning to ensure that only the best quality object model will be stored into database.
- Simultaneous multiple object recognition. The SentiSight algorithm provides simultaneous multiple 2D and 3D object detection and recognition.
- Object evaluation. The algorithm makes estimates based on the region an object occupies in a scene, providing additional information about the size, orientation and scale of the recognized object.
- Fast image processing. SentiSight processes video streams in real time, making it useful for real-time applications. The algorithm is able to run several threads on multi-core processors making the recognition several times faster.
- Objects tracking mode. The SentiSight 3.4 library has a multiple-objects tracking mode for tasks that require very fast image processing during the object recognition stage. The tracking works with complex backgrounds and fast-moving objects. Tracking is initialized when an object is recognized and located, and then tracks the object until it changes somewhat in appearance, at which point tracking is reinitialized by recognition. In tracking-mode SentiSight is able to process more that 100 frames per second (320 x 240 pixels, single object in a frame).