Pipeline Components

An overview of the pipeline, its components and their development.

The pipeline consists of various services, each working independently of each other. A brief overview:

  • Front-end: user-facing application that takes media or parameter data from user input. Parameter data is stored in the database, while media is stored in the BLOB, triggering the OpenFace service.

  • OpenFace container: a REST service bundled with OpenFace that receives the BLOB container, downloads it and runs the OpenFace analysis. The resulting data is uploaded to the BLOB, triggering the analysis service.

  • Analysis module: takes the OpenFace data and compares it to the chosen parameter set. This data is forwarded to the reporting service.

  • Reporting service: compiles the analysis data and stores it in the database.

Aside from the core services, there are supporting services:

  • Azure Functions: used to link services together. Triggered based on data being uploaded to the BLOB.

  • Data storage: BLOB storage for files/media and a database for parameters and analysis results.

  • Application Insights: used to view, query and manage logs and therefore track the status of jobs.

Last updated