Visual Surveillance

Sample Image - maximum width is 600 pixels

Visual surveillance is an attempt to detect, recognize and track certain objects from image sequences, and more generally to understand and describe object behaviors.

Motivation for Surveillance Systems

Anomaly Detection

The ability to learn what normal behaviors and anomalies are.
For example it is known that in an office building entrance, people usually go straight to the lobby after entering the building. Thus individuals that go in a different direction can be considered harmful.

Automated Security

Increases effectiveness of the entire surveillance process by paying attention only to certain events instead of watching and analyzing several different surveillance cameras as happens today. Such a system can also decrease costs.

Crowed Flux Statistics

For example, by knowing how many cars are using a certain road and how many are coming from road A or B we can decide which road to widen.

Blood Squirting Halloween skull

Just a nice usage found on coding4fun, not all reasons have to be dead serious.

SURF feature detection


Mouse Gesture Recognition

Learning and recognition of mouse gestures using hidden Markov model-based classifiers and Hidden Conditional Random Fields.

2D Organizing

2D Organizing sample application

This very simple application demonstrates self organizing feature of Kohonen artificial neural networks. Initially the application creates a neural network with neurons’ weights initialized to coordinates of points in rectangular grid. After that the network is continuously fed by coordinates of previously generated random points. While these points are presented to the network, it does organization of its structure. Visualizing the neural network by treating neurons’ weights as coordinates of points shows a picture, which is close to the picture of randomly generated map, which was fed to the network.

SOM Coloring

SOM Coloring sample application

This application represents another sample showing self organization feature of Kohonen neural networks and building color clusters. All network’s neurons have 3 inputs and initially 3 corresponding weights of each neuron are initialized randomly in the [0, 255] range. Weights of each neuron may be treated as RGB tuple, which means that initially neural network represents a rectangle of random colors. During training phase, the network is fed by random colors, which results to network’s self organizing and forming color clusters.

Skin Recognition

Sample Image - Skin_RecC_.jpg

This application demonstrates the usage of Image Processing Algorithms to Detect Human Skin in a picture, this can be used in a wide variety of AI projects.