Frequently asked questions.

What is an Aapp?
An Aapp is a machine learning model created by Stream’s analytics engine. An Aapp, is an abbreviation of the term ‘Algorithm application’, sometimes called a model or algorithm.
Do I have to put my custom Aapp into the public online Store?
No.  You can publish your Aapp and have it hosted for private use only. This option provides exclusive use to members of your organization.  Only those users invited to your account can use a private Aapp.
Does it cost to create my own Aapp?
Every account is enabled with five hours of processing time which is often enough to create a new Aapp. If you exceed the number of processing hours in a month, additional hours can be purchased.
How do I know if the camera or spectrometer I have already supports the ONSI API?
You can look for your hardware model in the list of supported hardware under the Hardware/Available menu in the analytics site, once you have signed in.
How do I go about choosing the best camera / spectrometer for the job?
There are several factors to consider, so there is not a single easy answer. While Stream’s primary role is to analyze the data and provide predictions, we are happy to make introductions to partners who might be able to help.
Where can I learn more about gantry’s or robots, drones, airplanes, or other ways to move a camera?
Stream works with a variety of System Integrators and suppliers, and is happy to make some introductions.
Can I just use my cell phone camera?
Yes, as an RGB (color) camera like the one in your cell phone can be a great place to start.
What is a LabFlow device?
A LabFlow is a specific configuration of a spectrometer, lightsource and all contained in a single housing. Labflows also include Cloud Connect to simplify moving captured scans directly into your analytics account. Samples placed in standard petri dishes are inserted into a LabFlow, which rotates the sample to allow for multiple scans to be averaged while controlling other factors which could influence readings.

The LabFlow device is currently offered as a version 1.0

Cloud Connect functionality is embedded into LabFlow, together with support for the ONSI software. This allows direct communication between a Labflow device and Stream’s analytics engine.

If I have my own Spectrometer, what else do I need?

If you have an Ocean Optics or SouthNest Spectrometer:

Ocean Optics and SouthNest Spectrometer API’s are supported via Cloud Connect and OSNI. If you install the software onto a computer connected to your spectrometer,  Stream analytics engine can communicate directly with that spectrometer.

Or you can drag and drop Ocean Optics files into folders in your Stream analytics account.

If you have a different make of spectrometer:

You can check with the Stream support team to know if your spectrometer is supported. Alternatively, you can look under the  Hardware/Available section at

If Stream’s analytics engine is aware of a your spectrometers file format, direct drag and drop support is also possible.

Any spectrometer manufacturer can choose to support the Cloud Connect/ONSI software for direct support. Contact your spectrometer manufacturer directly, or drop us a note at Stream support. We may already be in discussion with the manufacturer of your device.

As a camera manufactures how do I get our line of cameras using Stream’s analytics engine?
You can support the Open Source ONSI (Open Network Spectral Interface) API available here.

If you have an RGB camera – basic drag and drop functionality should just work.

If you want drag and drop support for multi-spectral or hyper-spectral cameras – contact our support team.

Why are many existing Aapps focused on agriculture?

The initial interest has come from the agriculture sector interested in disease, fungus, nutrient levels, chemical residues and more often associated with various crops like wheat, canola , barley and specialty crops like grapes, potatoes.

While multispectral analytics has been used with satellite data for years,  the resolution of spectral data and the computing power to leverage machine learning is taking spectroscopy to a more practical usable level.

Do I need to download an Application for my phone to see reports and results?

No. View the result on your phone, tablet or computer using your browser.

What is Stream’s analytics engine?

This is the analytics engine running behind the scenes – in the cloud. Streamss analytics engine is optimized to analyze spatial and spectral data, and is highly automated so non technical users can use it to create Aapps.

The analytics engine is made up of a variety of neural nets and pre-processing techniques designed to create machine learning models or  Algorithm applications – Aapps. The analytics engine is also used to make Predictions – analyzing untested samples with an existing Aapp.

What is a Prediction?

A Prediction is a “result” produced by a sample being analyzed using an Aapp.

For example; A Wheat Aapp analyzing the amount of protein  in a sample of grain could determine the Result or Prediction to be a value, such as 9.5%.

Predictions, when analyzing pictures,  could be a false-colored images where pixels are colorized to highlight a target found.

Once a Prediction is made it is stored together with the sample, in a Prediction Set, in your account at

What is a Prediction Set?

A Prediction set is a collection of files, and predicted results from an Aapp, stored as a single set that a user can name.  Prediction Sets are available from the navigation menu within your account. A Prediction Set includes the sample image(s)  a user wants a prediction made on.  The Prediction Set also includes the Aapp used by the analytics engine to run a prediction. Once an actual prediction is made the prediction itself (your result) is also stored in the Prediction Set.

For example:  I just took a scan of some wheat seeds from farmer Joes granary #4.

The Prediction Set could be named “Protein Level Joe’s Wheat – Granary 4”

The actual prediction is: 9.5%

The Aapp used may have been called Protein in Wheat. 

What are Royalties?

Royalties refer to money paid to account holders who have created an Aapp, and who have signed a Royalty Partner Agreement.

The Agreement contains the terms and conditions on which royalties will be paid.

Royalties are a percentage of the net revenues generated from the subscriptions to an Aapp.

Royalties are paid to the registered owner of the account of the company which published the Aapp.

Royalties can also be offset against Training and Storage charges, if applicable. 

Is an RGB Camera just a color camera?

Yes. A regular color camera has 3 spectral bands – red, green and blue (RGB).

These cameras are optimized for human viewing, not as a measurement device.

They can be very useful to capture images used to detect spatial differences, or changes in shape or size.

What is a model, or a machine learning model?

A model is the formula  or algorithm, created by a machine learning process which uses training data. In the case of Stream’s analytics engine a model will find a particular target derived from labelled training data. We call these models Algorithm applications or Aapps.

While it can take a significant amount of computer processing time to create a model from training data, once a model is created it can then be used to analyze a sample image – very fast.

Models or Aapps are typically named to indicate what they are designed to do.

What is Sign in / Sign up ?

Sign in his refers to logging into an account on the website at Sign up is required the first time you attempt to login, and are required to create an account.

Signing up for an account is free.

Who sets the cost per prediction of an Aapp?
Whoever publishes the Aapp sets the price.

The price is based on a per prediction rate.

There is a minimum price per prediction, for each Aapp, which Stream sets.

What is a hardware profile?

A hardware profile if a file that stores the settings for a particular data capture device. For a camera this might contain the setting for things such as ‘Gain’, ‘Exposure’ and ‘Pixel Depth’.  For a spectrometer it may include the settings for Boxcar, Average or Exposure Time.

A single capture device may have several hardware profiles. Different profiles may be required for different conditions.

What is “sample data”?

Sample data is the image or scans used for training

And …

Sample data is ALSO the image or scan, against which the user wants a prediction made.

For example” I may use sample data or images of a diseased potato leaf, and images of non-diseased potato leaf, as training data to build a Potato Disease Aapp.

I would later use a an image of a different unknown potato leaf to use as the ‘sample data’ with the Potato Aapp – expecting a prediction as to whether the leaf was diseased or not.

What is Training Data?

Training data are the sample images or scans (files) used by the analytics engine to build (train) an Aapp.

To build an Aapp using supervised learning, it is best to have sample images where a set of images, some which for sure contain the target of interest; and other images that for sure do not contain the target. It’s the job of the deep machine learning to look at all the pictures and determine the item that you want found. It will learn the difference between the images with the target and without the target –  was indeed the target.

That is why its just as important to have as many images with the target as without. That too explains why more images are better.

In some cases the user can highlight only the ‘pixels of interest’ in a scene, and give only those pixels a known label.

In some cases the analytics engine will figure out the differences based on the entire image.