Breeze System Overview
A Breeze system consists of optional cameras, the desktop application Breeze, its Runtime which performs the data analysis and connect to cameras, and optional third party applications that can use the interfaces Breeze offers for system integration. The Breeze architecture is described, and data and settings storage explained.
About Breeze
Breeze is the complete software toolset for hyperspectral imaging with features for data acquisition, interactive data exploration, modelling, automated workflows and real-time analysis of data directly from cameras with third party application support.
Learn more about the benefits of Breeze and how it has been applied to real-world problems at the website www.prediktera.com. If you are curious, you can also read about Hyperspectral imaging at Wikipedia.
On this page we’ll dig deeper into how Breeze works, including how it can be used by third party application to benefit from the Breeze functionality.
Breeze System Overview
A Breeze system consists of:
The Breeze desktop client app which you interact with to acquire, analyze, and model data and to create workflows, reports and export data. Breeze uses the Runtime behind the scenes.
The Breeze Runtime software which runs in the background, connects to cameras and performs all the data analysis.
Optional Cameras, sample movers and other hardware used to acquire data. See Supported hardware. Images on disk are also supported.
In addition, third-party applications can interact with Breeze using its interfaces to send data to Breeze or act on the Breeze workflow’s output data as described below.
This is illustrated in the following picture:

Breeze and Breeze Runtime explained
When you run desktop Breeze, the the Runtime is used in the background to obtain data and perform calculations.
However, the Runtime API can be licensed separately and used without Breeze for industrial real-time applications. Learn more about of benefits on the website at Industrial Integration - Prediktera.
To integrate the Runtime API in a third application, you model data, design and evaluate workflows in desktop Breeze, and then deploy them to run them in Breeze Runtime with your own third party integrations.
Learn more in Introduction to Breeze Runtime development .
Breeze interfaces for third party applications
A third party application can interface with Breeze to automate data acquisition, run complex workflows, perform real-time data analysis and obtain output data from the Breeze models and take action depending on the results.
Third party applications can use these interfaces for sending data to Breeze:
Prediktera Data Server - works as a camera in Breeze, but data is pushed to it programmatically from a third party application using a TCP/IP socket. Can be used to push data when there isn’t native support for the camera hardware in Breeze, and also is used in Breeze Air applications for real-time remote sensing data.
Files on disk can also be analyzed programmatically using the Runtime API, and a workflow that is applied to the files. See the Python Apply Changes example and the documentation for Apply Changes in Developers reference guide .
Third party applications can use these interfaces for obtaining data from Breeze:
Workflow Actions are triggered as a workflow runs. These include Log to file, send signals to hardware, and post data to a Web service hosted by a third party application.
An external Event Serverthat provides a TCP/IP web socket that the Runtime connects to and sends events and errors to.
The Runtime API with a JSON-based command API, event stream with objects information, and TCP socket data streams with output predictions and visualizations of the data. See Introduction to Breeze Runtime development.
Breeze and the Breeze Runtime stores raw measurements (images), and in some cases predictions as files in the Workspace folder on disk. These can be retrieved by file system access.
To use the Breeze Runtime API from a third party application, a license for the Runtime API is required.
Bundled Breeze Runtime API example applications
Breeze includes two applications that use the Runtime API interface the same way as any third-party application would: Breeze Client that that visualizes data from the Breeze Runtime, and Breeze Runtime Demo that is an interactive application that uses the Runtime API to control the Runtime.
Learn more in Introduction to Breeze Runtime development .
Breeze architecture
Breeze is a desktop application written in Java. The Breeze Runtime is a NET application. Both run on Windows and Linux.
Because hyperspectral data is large, Breeze typically benefits from a fast processor, fast solid state disks (SSDs), and lots of memory. Learn more in on the website at Supported Hardware - Prediktera.
Breeze and the Runtime normally run on the same PC, but third party applications can connect to the Runtime over the network.
Breeze is licensed to a specific user of a PC. If another user logs on to the PC, Breeze will be unlicensed. Licensing.
Breeze has basic support for Breeze users, that may have different permissions in Breeze. The users are managed in Workspace Settings and are not connected to the user of the PC itself.
Breeze data storage and management
Breeze stores data in the filesystem on disk, and does not use a database engine.
Breeze stores its settings, project, images, workflows and other data in Workspace which is a folder structure on the file-system. You can have many workspaces and switch between them. See Workspace guide.
Workspace Settings are stored in the
BreezeProperties.xml
file in the root of the Workspace folder.Breeze log files are stored in the
%userprofile%\.Prediktera\Breeze
folder, which means they are shared between all workspaces. See Breeze log files and troubleshooting. This folder also contains asettings.yaml
file which maintains the list of recently used workspaces in Breeze.
If data starts to fill up the storage space, measurements can be deleted from the file system outside Breeze, if desired. Breeze also has a temporary recycle bin which can be emptied. Learn more in the Workspace guide.
Backups are easily made using file system backups, such as manually copying the workspace folder. It is recommended to not using Breeze while doing the backup. You can restore a copy of a workspace to a new folder and point Breeze to the new folder to use it, since Breeze supports switching between workspaces as described in Workspace guide.