This major release expands the camera-traps application with several new capabilities:
- New Oracle plugin for collecting ground truth data.
- This plugin utilizes data about the image labels as well as events generated by all of the other plugins to create a "image_mapping_final.json" file that can be used to evaluate the performance of individual plugins as well as the overall performance of the application.
- Incorporation of new CKN daemon for gathering performance data.
- This program runs as a standalone process (a separate container) and sends performance data to the cloud via a Kafka broker.
- It gathers data from the image_mapping_final.json file generated by the Oracle plugin.
- Several enhancements to the Image Scoring plugin:
- Added support for streaming (input) data from a zip archive file defined by a publicly accessible URL.
- Added support for dynamically configuring the ML model; plugin will fetch the model (pt) files at start up, as needed, from the URL specified by the CKN Model Graph API.
- Overhaul of the existing Power Monitoring Plugin.
- Support was added for the Power Joular backend, a production-grade power monitoring tool written in Ada. This mitigates concerns with the lack of maintenance of Scaphandre, which appears to be abandoned.
- The code for the plugin was completely rewritten to simplify maintenance and improve modularity and extensibility so that adding support for additional tools will be easier.
-
New installer command-line program to facilitate installations with a high degree of customization.
-
Complete integration test suite for end-to-end testing of the Camera Traps application (maintained in a separate repo). This test suite is triggered by GitHub actions.
-
Added support for Jetson Nanos through a series of updates and code refactoring.
- Implementation of power monitoring plugin for x86 and ARM architectures.
- Implementation of oracle plugin to analyze simulation results.
- Various bug fixes.
- Runtime configuration updates, principally involving changes to the releases directory structure.
- Improved release procedure documentation in top-level README file.
Interum release with Rust support for 2 new power monitoring events.
- Removal of image_uuid field from ImageLabelScore type used in ImageScoredEvent.
- MonitorPowerStartEvent and MonitorPowerStopEvent implemented in Rust (Python support in progress).
- The image_store_plugin deletes files of all types associated with an image when that image is deleted.
Initial release of camera-traps images with the following features:
- Event Engine v0.2.0.
- Internal Rust production plugins image_recv_plugin, image_store_plugin and observer_plugin. The image_recv_plugin always writes the image to the configured images directory. The image_store_plugin determines if an images, based on its score, should be kept or deleted. If kept, its scores are written to a similarly named file with a .score suffix.
- Internal Rust test plugins image_gen_plugin and image_score_plugin. These plugins can be used when not running the cooresponding external plugins.
- External Python production plugins image_gen_plugin and image_score_plugin. The image_gen_plugin injects serveral built-in images into the application and image_score_plugin calls the Microsoft detector with its MegaDetector model to score the images for animal content.