Stream’s analytics platform allows non technical people to create machine learning models (Aapps) to analyze images and other spectral or sensor data.

Here is an overview of how Stream’s analytics site works.

It starts with a problem – for example: Determine if a plant is healthy or diseased.

Assuming there is no solution in the online store already, one can be created.

The Aapp creator (person creating the machine learning model) begins by capturing images (or scans) of plants.

Roughly an equal number of images of both healthy and diseased plants are taken and uploaded into the Aapp creator’s account at analytics.streamtechinc.com.

The images are labelled as either “Healthy” or “Diseased”. It is important that this labelling is done correctly.

These images provide the data used by Stream’s analytics engine to train, the machine learning model.

The output from the engine is the model itself, which Stream refers to as the Algorithm application, or Aapp.

The Aapp has learned how to distinguish the healthy plants from those which are diseased.

Remember: the distinguishing factor(s) may or may not be visible to your eye.

The Aapp is then published into the online store, with the price for its future use determined by the App creator.

By default, the Aapp is made available to the public, but can be restricted for private use if required.


This brings us to the step of actually using the Aapp to test an unknown sample.

Someone now looking to determine if their plant is healthy or diseased, can subscribe to use the Aapp.

By signing into their account, the subscriber simply uploads an image of the plant they would like to test and applies the Aapp.

The result, or prediction, is made within seconds, indicating the likelihood the unknown sample is either healthy or diseased.

Predictions can be viewed anytime, and are stored together with the sample and Aapp as a Prediction Set within the subscriber’s account.


The platform is centered around two fundamental concepts: Using and creating Aapps

        1. Use of an Aapp – each Aapp is created to solve a particular problem with the result being a “Prediction”.
        2. Creation of an Aapp – for ultimate flexibility, if there is no Aapp to address your particular problem, it is very simple to create your own.

To use the platform, create your own account at analytics.streamtechinc.com.

If you would like to review how to get started, you can view screenshots of how to use the platform at Stream’s analytics site by clicking here.

Use an Aapp

To use an existing Aapp there are three basic steps.

  1. The first step is to capture an image or scan, of the thing you would like to detect.
  2. Second, analyze this input data with an Aapp from the online store.
  3. Finally, view the Aapp’s results.

Take a picture or scan of what you would like to analyze.

To capture the image or scan you need a camera or spectrometer.
Depending on what you want to detect, certain cameras or spectrometers are going to be more effective than others.
The image is placed into a folder – which is done through an upload step. If your camera or spectrometer is ONSI compliant and registered to your account, the file will be put into your folder automatically.
(Read more...)

As a general rule, if your target is visible to the naked eye (especially if it requires some expertise), a multispectral camera may be the best device to take pictures with. If your target is completely invisible (eg. protein in grain) a spectrometer might be best. If your target is based on shape or size you might be able to use a good color camera.

Choose an Aapp

The Aapp is the algorithm or model used by the analytics engine to find the target in your scan or image. Aapps are available from the Stream online Aapp store.
(Read more...)

If an Aapp is not available for your specific target, you can build your own.  This walk through will assume you’ve found an appropriate Aapp in the online store.
To make a prediction using the Aapp, create a new Prediction Set by selecting the image you want to analyze, and then selecting the Aapp that knows how to find the target you want to identify. The prediction itself is then stored in this same Prediction Set.

View  your results

Results are saved and can be viewed through your account, inside a Prediction Set.  We call the final results a prediction, which could be a number, a percentage, or a false-colored image,depending on what the Aapp was trained to predict.
With your free account, the first 25 predictions per month for every Aapp are free. Give it a try.
In this example the Aapp was already in the store. One of the key features of Stream Analytics Platform is that you can create your own Aapp from your own samples. Even that process can be free.
Check out how to build your own Aapp.
Check out how to build your own Aapp.

Create your own Aapp

If there is no existing Aapp which you can use to detect your specific target of interest, you can build your own.

  1. Gather together all the samples you will use train your Aapp
  2. Capture the data from your samples (your training data will be stored in your account.)
  3. Click the Train button to create your Aapp.

You can then go back to the store and subscribe to your own Aapp and use it to make predictions. See above the section on using an Aapp.


Organize and label your actual samples.

Your physical samples need to be organized and labelled.  The data your capture from these samples will be used to train your Aapp.
If you are planning to create an Aapp that can tell the difference between two different things that look similar (a classification Aapp), you might label your samples Type 1, Type 2 etc.  In the example displayed here the labels for different types of wheat are used and given numbers, 802 and 767.
(Read more...)

Types of Labeling

Images – from cameras
Label the entire image
  • Put all your images with the target in one folder
  • Put all your images without the target in a different folder
  • When you build your Aapp – chose the appropriate images
Label the pixels
  • Put all your your images in folders
  • Open the image and draw a shape around the pixels of interest in the scene.
  • When you build your Aapp – the appropriate pixels will be used
Spectral data – from spectrometers
Label data according  to the Aapps requirements

Capture the training data from your samples

To capture the image or scan you need a camera or spectrometer and depending on what you want to detect, certain cameras or spectrometers are going to be more effective than others.
The image or scan can be uploaded into a folder  manually, or uploaded automatically as the data is captured.
(Read more...)

As a general rule, if your target is visible to the naked eye (especially if it requires some expertise), a multispectral camera may be the best device to take pictures with. If your target is completely invisible (eg. protein in grain) a spectrometer might be best. If your target is based on shape or size you may be able to use a good color camera.

Train your Aapp.

Clicking the Train button creates the Aapp and once training is complete it will be ready to use to make predictions.

Publish it to the store so you can subscribe to it and use it.

How can a camera be use to find something like a disease – that I can’t even see?

  • Light reflects off every surface differently, depending on how the wavelengths of light interact with the properties of that surface.  So different wavelengths of light will bounce off a plant with a disease ever so slightly different than the same plant without the disease.
  • Using machine learning with hyper-tuned neural nets, we first analyze every pixel in the images of your samples (plants with a disease, plants without the disease) for every wavelength. Our analytics engine will try to find differences, and once it does it can use what it has learned in a machine learning model or algorithm.  Stream is calling these Algorithm applications – Aapps. This is the training, or Aapp creation step.
  • Next time you take a picture, your image is sent to our analytics engine which uses an Aapp to make a prediction, or guess, if this picture contains the disease.  Assuming the image is of the same type of plant that the Aapp was trained on, it will likely make an accurate guess.
  • When you upload an image, our analytics engine presents a list of appropriate Aapps that match your data, based on the type of pictures you’re taking, and the hardware you have registered with your account.
  • If you are just making a few predictions a month, the cost is typically free.  In a business setting you might use it more often and the next tier of usage might require a monthly subscription fee.
  • Since your business, products or materials are often unique to you, your quality control assurance may also be unique to you. That’s why we build into our platform the ability for anyone to build their own Aapp, unique to their specific needs.