Albumentations
Description​
Albumentations is a fast and flexible image augmentation library designed for machine learning and deep learning tasks. It supports a wide range of transformations for image augmentation, such as rotations, translations, scaling, cropping, and various random transformations that help improve model generalization. The library is optimized for high performance and is compatible with major machine learning frameworks like PyTorch and TensorFlow.
General details​
- Developer(s): Alex Parinov, Vladimir Iglovikov, Alexander Buslaev, and the Albumentations team.
- Open source: Yes
- Language(s): Python
- Repository: https://github.com/albumentations-team/albumentations
- License: MIT
- Operating system(s): Compatible with Linux, Windows, and macOS.
- Actively maintained: Yes (within the past week)
Intended use on the device​
The SOUP is used in the medical device for the following specific purposes only:
- Implement data augmentation pipelines to improve model predictions at the inference stage.
- Create data preprocessing pipelines for predictive models in a modular, configurable and simple way.
Requirements​
For the integration and safe usage of this SOUP within a software system, it's important to outline both functional and performance requirements. These requirements help mitigate risks and ensure compatibility and performance standards are met.
Functional​
- Diverse augmentations: Support for a comprehensive set of image augmentation techniques, including geometric transformations, color space adjustments, image filters, and more.
- Framework compatibility: Compatibility with major deep learning frameworks, specifically PyTorch and TensorFlow, to ensure seamless integration into data preprocessing pipelines.
- Image formats: Ability to work with various image formats, including standard formats like JPEG, PNG, and also support for multi-channel images beyond the standard RGB.
- Batch processing: Efficient processing of image batches to leverage vectorization and parallel processing, reducing preprocessing time in training and inference pipelines.
- Extensibility: Easy customization of augmentation pipelines and the ability to add custom transformations as per specific requirements.
Performance​
- Speed: High performance in executing image augmentations, leveraging optimized Python code and native libraries where applicable to minimize processing time.
- Resource utilization: Efficient memory usage to handle large volumes of images and high-resolution images without excessive consumption of system resources.
- Scalability: Ability to scale with increasing image sizes and batch sizes, maintaining performance and efficiency across diverse hardware configurations.
- Consistency and reproducibility: Ensure consistent output of augmentations with the same seed across different runs and platforms for reproducible development.
System requirements​
Establishing minimum software and hardware requirements is important to mitigate risks, such as security vulnerabilities, performance issues, or compatibility problems, and to ensure that the SOUP functions effectively within the intended environment.
Software​
After evaluation, we find that there are no specific software requirements for this SOUP. It works properly on standard computing devices, which includes our environment.
Hardware​
After evaluation, we find that there are no specific hardware requirements for this SOUP. It works properly on standard computing devices, which includes our environment.
Documentation​
The official SOUP documentation can be found at https://albumentations.ai/docs/.
Additionally, a criterion for validating the SOUP is that all the items of the following checklist are satisfied:
- The vendor maintains clear and comprehensive documentation of the SOUP describing its functional capabilities, user guidelines, and tutorials, which facilitates learning and rapid adoption.
- The documentation for the SOUP is regularly updated and clearly outlines every feature utilized by the medical device, doing so for all integrated versions of the SOUP.
Related software items​
We catalog the interconnections between the microservices within our software architecture and the specific versions of the SOUP they utilize. This mapping ensures clarity and traceability, facilitating both the understanding of the system's dependencies and the management of SOUP components.
Although the title of the section mentions software items, the relationship with SOUP versions has been established with microservices (also considered software items, by the way) because each one is inside a different Docker container and, therefore, has its own isolated runtime environment.
SOUP version | Software item(s) |
---|---|
1.4.2 | AGPPGA APASI-CLASSIFIER ASCORAD-CLASSIFIER ICD MULTICLASS CLASSIFIER ICD BINARY CLASSIFIER BINARY REFERRER QUALITY VALIDATOR |
Related risks​
The following are risks applicable to this SOUP from the table found in document R-TF-013-002 Risk management record_2023_001
:
- 58. SOUP presents an anomaly that makes it incompatible with other SOUPs or with software elements of the device.
- 59. SOUP is not being maintained nor regularly patched.
- 60. SOUP presents cybersecurity vulnerabilities.
Lists of published anomalies​
The incidents, anomalies, known issues or changes between versions for this SOUP can be found at:
History of evaluation of SOUP anomalies​
29 Feb 2024​
- Reviewer of the anomalies: Alejandro Carmena Magro
- Version(s) of the SOUP reviewed: 1.4.2
No anomalies have been found.
Record signature meaning​
- Author: JD-017 or JD-009
- Reviewer: JD-003
- Approver: JD-005