A chatterbox application with speech synthesis and speech recognition tacked on to it. Demonstrating how to build increasingly sophisticated recognition rules.
Automating Semantic Mapping of a Document With Natural Language Processing
Natural Language Processing (NLP) intends to enable computers to derive meaning from human or natural language input. This demonstration extracts entities, keywords, topics, events, themes and concepts. Other than themes and concepts, the results are essentially keywords or phrases. The extracted "strings" often have an associated relevance or strength, count or frequency, and/or sentiment value. We used the features of our NLP Engine to provide some filtering capabilities of RSS feeds, enabling the user to create filters based on the extracted strings and additional values.
Vision on Virtual Commands
This application is used to show how a computer interacts with a human and converts his/her motion in command actions. It detects motion and converts that motion into the respective command actions.
To detect motion, it uses a simple algorithm of subtracting two images. Every image is made up of three layers: red, blue, and green. Thus, each of the pixels in an image holds three values corresponding to its RGB.
Computer Vision: Virtual Buttons
Wouldn't it be great if you could control your computer with your hands? In this demonstration, you will see a small application to control the Windows Media Player with my hand motion and an ordinary web-cam. You can see the picture above; this application creates three "hot-spots" in the web-cam view, and you can assume that these hot-spots are virtual buttons, and they get activated when you make a click movement in them.
PatternRecognizer is a fast machine learning algorithm library . It contains support vector machine, neural networks, bayes, boost, k-nearest neighbor, decision tree, ..., etc.
This sample demonstrates learning chess board pattern with support vector machine, chess board pattern is a 640 random points formed synthetic dataset.
legend: squares are support vectors.
BAOA (Big Data Online Analysis)
BAOA is the most popular for data stream mining. It includes a collection of machine learning algorithms (classification, regression, clustering, outlier detection, concept drift detection and recommender systems) and tools for evaluation.
BAOA (Big Data On-line Analysis) is a framework for data stream mining. It includes tools for evaluation and a collection of machine learning algorithms. The goal of BAOA is a benchmark framework for running experiments in the data stream mining context by proving
- storable settings for data streams (real and synthetic) for repeatable experiments
- a set of existing algorithms and measures form the literature for comparison and
- an easily extendable framework for new streams, algorithms and evaluation methods.
The workflow in BAOA follows the simple schema depicted below: first a data stream (feed, generator) is chosen and configured, second an algorithm (e.g. a classifier) is chosen and its parameters are set, third the evaluation method or measure is chosen and finally the results are obtained after running the task.
To run an experiment using BAOA, the user can choose between a graphical user interface (GUI) or a command line execution. BAOA currently supports stream classification, stream clustering, outlier detection, change detection and concept drift and recommender systems. We are working on extending BAOA to support other mining tasks on data streams.
Face Detection (Haar object detector)
Face detection using the Face detection based in Haar-like rectangular features method often known as the Viola-Jones method.
Face (or object) tracking using Viola-Jones for face detection and Camshift as the object tracker. Can be used in RGB and HSL color spaces (may require some tuning for HSL).