The Hydra system contains four modules with well defined tasks.

Format

The first Hydra module, called Feeder, ensures that each image is correctly formatted for the given model. Feeder will automatically resize an image if the shape is different from that used to train the model.

Distribute

In the event there are multiple instances of the predict module running, the distribute model distrubtes images in a round robin fashion to the various instances of predict.

Predict

Predict is responsible for loading the models, waiting for inference requests, running inference with the appropriate models, generating GradCAM heat maps, and writing a report to be analyzed by the Action module.

Action

The action module is responsible for analyzing the reports generated from the predict process and performing any number of actions as a result of those reports. This could include raising an alarm (visual or audible), saving the image for labeling, saving the image for viewing on the Log page, and updating the KeeperStatus table.