Blickfeld Percept Processing
The Blickfeld Percept Processing module offers a gRPC interface for initiating and terminating pipelines, as well as fetching data of various types from these pipelines.
A pipeline is constructed by applying various processing steps to the raw data acquired from one or multiple Qb2 devices. These steps are designed to extract high-level information, such as volume or intrusion status. Users can access this high-level information and the point clouds captured by the devices through this module.
In the Output Data Types section you can find more information about the data types available for retrieval.
Architecture
This is an overview of how the module works:
Clients can communicate with the module using gRPC, and there are two primary services at their disposal. The Pipeline service handles requests for initiating or terminating the pipeline. Internally, it utilizes gRPC communication with the relevant module to commence the pipeline.
Other services are available for retrieving data of various types, and they initiate communication with the appropriate module to launch the pipeline. Once the pipeline is up and running, Blickfeld Percept Processing will receive the necessary data from the pipeline to fulfill the client’s requests.
Output Data Types
These are the messages supported from the module and that can be retrieved:
-
Point Cloud Frame for point cloud messages.
-
States which contains information generated by zones of different types (i.e. volume measurement).
-
Volume Map 2.5D representation of the volume zone that is used for monitoring the volume.
-
Health for Health messages representing the state of the running pipeline.
Services
Blickfeld Percept Processing offers the following services:
-
Pipeline
-
States
-
PointCloud
-
VolumeMap
-
Health
Pipeline
The Pipeline service can be used to start and stop pipelines and to get information about the available data.
Data Retrieval
The Point Cloud and
States and
Volume Map
services enable the client to retrieve data of the corresponding types. You can find more information about this in the
Data Types Services page. There are two ways of retrieving data from the running pipeline. The first is to directly call the
Stream method from the service offering the required data type (i.e., States.Stream
for streaming states messages),
which will automatically start the pipeline if not already running and then stream the requested data.
A pipeline started using this option will automatically stop if the number of active clients reaches zero.
The second option is to explicitly start the pipeline using the
Start request and then retrieve the data of different types using the corresponding
Stream method. By using the
Start request, the pipeline is running headless and to stop it the
Stop request needs to be explicitly called. Please look at the corresponding page for more details about the services.
Health
The Health service can be used to get or stream information about the current status of the pipeline and the module itself.