image_not_found

Information

  • Date : 2014
  • Languages : C,Python
  • Tech Stack : Tensorflow
  • Client : ThingBrain Barcelona

Project Brief:

For ThingBrain, an IoT startup based in Barcelona - Spain, we built a machine learning plaform for the Internet of Things which included support for:

  • Sensor Intelligence: Leverages machine learning to detect anomalies in sensor measurements, search for patterns in sensor data streams, forecast sensor measurements and predict external events using statistical models. Digital Signal Processing algorithms including sensor fusion, noise filters, Auto/crosscorrelation, Convolution, Window functions and others.
  • Computer Vision: State-of-the-art computer vision for the Internet of Things using deep neural networks. Track objects on video streams, classify images, extract feature points from images, detect faces, text and other objects.
  • Prediction / Learning: Predict external events using sensor output or other data. Reinforcement Learning turns IoT devices and robots into intelligent agents that learn actions based on rewards. Bayesian optimization of black-box functions for sensor networks and robotics.
image_not_found

Anomaly Detection

Detect events and sensor measurements that do not conform to expected patterns. Outlier and novelty detection using supervised or unsupervised methods. Supported algorithms include Three Sigma, Seasonal Hybrid ESD, Multi-layer Neural Networks and Support Vector Machines.

image_not_found

Prediction

Unleash the power of machine learning to predict external events based on sensor measurements. Trained models are available online as a service and also can be downloaded for offline scoring. Multiple algorithms supported: Deep Learning, Ensembles of Decision Trees and Linear Models.

image_not_found

Forecasting

Forecast sensor measurements or any Time Series using Autoregressive–moving-average models (ARIMA, ARMAX, ARIMAX, SARIMAX, etc.), Recursive Least Squares or Long short term memory recurrent neural networks (LSTM-RNN).

image_not_found

Sensor Mining

Measure similarity between two sensor measurements using Dynamic Time Warping (DTW), Symbolic Aggregate approXimation (SAX), Cosine Distance or Likelihood analysis. Determine whether one sensor output is useful in forecasting another Time Series using Granger causality analysis.

image_not_found

Sensor Filtering

Turn sensor output into useful information applying algorithms to correct jitter, drift and noise of digital sensors. Untangle noisy signals with high/low/band pass filters including Butterworth, Chebyshev and Elliptic. Filter random variations and other inaccuracies using Kalman filters.

image_not_found

Sensor Fusion

Combine measurements from multiple sensors (ie. accelerometer and gyroscope) into a better signal using sensor fusion algorithms. Includes support for 3-, 6- and 9-axis fusion options, programmable sampling, fusion rates, frame of reference and more.

image_not_found

Digital Signal Processing

Wide variety of Digital Signal Processing tools including Frequency / Amplitude / Phase Estimation, Fast Fourier Transforms, Hamming, Hanning and Rectangular windowing functions, Autocorrelation, Crosscorrelation, Convolution, Particle Filter and Hidden Markov Models.

image_not_found

Object Tracking

Track in real time arbitrary objects on video streams using Tracking Learning Detection (TLD). Algorithms supported include Predator, Meanshift and Camshift. Simply provide the coordinates of the object to be tracked and obtain the coordinates in subsequent frames of the moving object.

image_not_found

Object Detection

Find instances of real-world objects such as faces, people or cars in images or videos. Supported algorithms include SURF Cascade, Integral Channel Features and Deformable Part Models. Provide an image as well as the object to detect and if found, its coordinates are returned.

image_not_found

Image Classification

Classify images using Deep Convolutional Neural Networks, an artificial neural network topology that is inspired by the biological visual cortex. Images are classified into hundreds of supported categories such as airplane, dog, laptop, table, train, etc.

image_not_found

Feature Extraction

Implementation of the Scale Invariant Feature Transform (SIFT) algorithm to detect, describe and extract local features in images.

image_not_found

Text Detection

Word and text detection in natural images using the Stroke Width Transform (SWT) algorithm. This fast and robust algorithm can detect text in many fonts and languages.

image_not_found

Reinforcement Learning

Reinforcement Learning allows an agent (an IoT device or robot) to learn behaviour by interacting with the environment via its sensors. Inspired by behaviorist psychology, an agent learns from the consequence of its actions which are assigned a numeric reward. After a time the agent learns to perform actions that maximize the accumulated reward over time.

image_not_found

Predictive Analytics

Unleash the power of machine learning to predict external events based on sensor output or other data. Trained models are available online as a service and also can be downloaded for offline scoring. Multiple algorithms supported: Deep Learning, Ensembles of Decision Trees and Linear Models.

image_not_found

Bayesian Optimization

Bayesian optimization of black-box functions with conditional, real-valued and discrete dimensions for sensor networks and robotics. Multiple optimization algorithms available: Gaussian Process models, Tree of Parzen Estimators (TPE) and Random Search.