Agml

Latest version: v0.7.3

Safety actively analyzes 720919 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 5

0.7.3

This release introduces the **iNatAg** dataset (and its companion dataset **iNatAg-mini**), one of the world's largest datasets of agricultural images. This introduces over 4.7 million images into AgML, across 2,900+ species.

You can load the iNatAg dataset with `agml.data.AgMLDataLoader.from_parent('iNatAg')`, and specify various `filters` to load specific subsets of specific species.

In addition, this release contains a couple of small bugfixes and updates.

0.7.2

This is a relatively major release that introduces a significant number of new datasets into AgML, alongside various bugfixes and improvements.

New Datasets

The following new datasets have been introduced: **`embrapa_wgisd_grape_detection`**, **`growliflower_cauliflower_segmentation`**, **`strawberry_detection_2023`**, **`strawberry_detection_2022`**, **`almond_harvest_2021`**, **`almond_bloom_2023`**, **`gemini_flower_detection_2022`**, **`gemini_leaf_detection_2022`**, **`gemini_pod_detection_2022`**, **`gemini_plant_detection_2022`**, **`paddy_disease_classification`**, **`onion_leaf_classification`**, **`chilli_leaf_classification`**, **`orange_leaf_disease_classification`**, **`papaya_leaf_disease_classification`**, **`blackgram_plant_leaf_disease_classification`**, **`arabica_coffee_leaf_disease_classification`**, **`banana_leaf_disease_classification`**, **`coconut_tree_disease_classification`**, **`rice_leaf_disease_classification`**, **`tea_leaf_disease_classification`**, **`betel_leaf_disease_classification`**, **`java_plum_leaf_disease_classification`**, **`sunflower_disease_classification`**, and **`cucumber_disease_classification`**. This is the largest individual release to-date of datasets. Specifically, 10+ datasets designed for disease classification have been introduced, alongside a variety of publicly-sourced object detection datasets.

Documentation

New documentation has been introduced for AgML. At the moment, it provides an interface for inspecting data online with ease, and will expand to include more information about library usage in general. Check out the documentation at: https://project-agml.github.io/AgML/index.html.

Major Updates

- The `agml.synthetic` API has been improved and is now tested to work on Windows, in addition to Mac and Linux. Breaking changes that had been introduced into Helios have now been integrated into the AgML API as well.
- The Raditation API that is introduced in Helios, for more accurate and efficient synthetic data generation, has also been incorporated into AgML in an early stage.

Quality Changes

- New tools for testing and uploading datasets, as well as version management on PyPi have been introduced.
- Code quality has been improved throughout the library, improving readability.

More Detailed Information
* Dev by amogh7joshi in https://github.com/Project-AgML/AgML/pull/58
* Add Radiation Project by smbanx in https://github.com/Project-AgML/AgML/pull/59
* pyproject_toml and use uv to sync deps. by lalmei in https://github.com/Project-AgML/AgML/pull/60
* feat/tests by lalmei in https://github.com/Project-AgML/AgML/pull/61
* Add format and linter by lalmei in https://github.com/Project-AgML/AgML/pull/62
* add documentaiton config init by lalmei in https://github.com/Project-AgML/AgML/pull/63
* release draft fix by lalmei in https://github.com/Project-AgML/AgML/pull/64
* docs:hot-fix by lalmei in https://github.com/Project-AgML/AgML/pull/65
* fix lesser filter by lalmei in https://github.com/Project-AgML/AgML/pull/67
* Feat/config test by lalmei in https://github.com/Project-AgML/AgML/pull/68
* New Datasets [Feb 2025] by naitikjain3071 in https://github.com/Project-AgML/AgML/pull/70
* AgML 0.7.1 Changes by amogh7joshi in https://github.com/Project-AgML/AgML/pull/71

New Contributors
* naitikjain3071 made their first contribution in https://github.com/Project-AgML/AgML/pull/70

**Full Changelog**: https://github.com/Project-AgML/AgML/compare/v0.7.0...v0.7.2

0.7.0

This is a major update to AgML that includes a new `agml.models` API, new datasets, new tools, and a suite of bugfixes and improvements across the board.

Major Changes

- The **`agml.models.Detector`** API has been introduced. This API wraps the Ultralytics YOLO11 model (see [ultralytics](https://github.com/ultralytics/ultralytics) for more information) and provides an easy-to-use interface for training and inference with state-of-the-art object detection models.
- Use `agml.models.Detector.train(loader, 'yolo_model')` to quickly train an AgML dataset using your choice of YOLO model - all right within the AgML API.
- Use `agml.models.Detector.load('model_name')` to load a trained model easily, stored directly within the AgML local model repository.
- Use `agml.models.Detector.load_benchmark('dataset_name', 'yolo_name')` to access a pre-trained agricultural object detection model from a set of available pretrained benchmarks.
- *Note*: If you want fine-grained transfer learning and finetuning capabilities, use the standard `agml.models.DetectionModel` API, but the `agml.models.Detector` API is a much more user-friendly quick-start for quick training and inference.
- We have added **four** new datasets:
- `tomato_ripeness_detection`: Object Detection
- `corn_maize_leaf_disease`: Image Classification
- `tomato_leaf_disease`: Image Classification
- `vine_virus_photo_dataset`: Image Classification
- A new export tool has been added `agml.data.extensions.restructure_cvat_annotations`, that automatically reformats the exported COCO annotations from the [CVAT](https://app.cvat.ai/tasks) tool into the format used in AgML. This increases AgML's interoperability with existing machine learning frameworks.

Major Bugfixes

- Helios compilation and execution is now fixed and works for **Windows** systems - Windows users can now use the `agml.synthetic` API to generate their own simulated data.

Other Changes and Improvements

- The documentation for AgML datasets has been improved to show more representative samples, and datasets without documentation now have theirs added.
- Improvements have been made to the `agml.data.ImageLoader`, and there is now a new method `agml.data.AgMLDataLoader.take_images()` which enables you to extract just the images from an `AgMLDataLoader`, useful for inference and other image-only applications.
- A bug which prevented saving and loading splits for object detection has been fixed: you can now load and save object detection data splits successfully.
- Some small errors with visualization have been fixed, including orientation and number of images in certain methods.
- The `agml.data.tools.convert_bbox_format` tool now has new formats `xyxy` and `yxyx` which wrap longer strings, for ease of use.

0.6.2

This release introduces a new export tool for AgML datasets, various expansions to methods, and some bugfixes.

Major Changes

- A new method `agml.data.exporters.export_yolo()` has been added (alongside a companion wrapper to a dataset, `loader.export_yolo()`), that enables exporting datasets to the Ultralytics YOLO format. The resulting datasets can be directly integrated in one line of code into Ultralytics/Darknet YOLO training pipelines, which augments AgML's object detection resources.

Improvements

- Splitting datasets, specifically with multi-dataset loaders, now works properly.

Bugfixes

- Added an `export_tensorflow()` method for multi-loaders, which was previously missing.
- Updated Helios compilation instructions to be compatible with the C++17 standard needed for updated Helios versions.
- All example notebooks have been updated to be consistent with new AgML methods.
- AgML visualization methods now no longer double-display in Jupyter notebooks.

0.6.1

This is a small update.

- A new dataset `vegann_multicrop_presence_segmentation` has been added: this is the AgML-incorporation of the VegAnn dataset.
- Fixed an issue with the class names in the `rangeland_weeds_australia` dataset: the awry "no_weeds" class has been removed and the dataset now follows the original specification of the DeepWeeds dataset.
- A bug that prevented the storage/loading of custom splits has been fixed.
- A bug that cut off text when visualizing image classification data samples has been fixed.

**Full Changelog**: https://github.com/Project-AgML/AgML/compare/v0.6.0...v0.6.1

0.6.0

This release introduces tools for training custom agricultural machine learning models using AgML.

Main Changes

`agml.models`

- The `agml.models` API has been extended with new features for training, namely the `run_training` method which enables quick training of image classification, semantic segmentation, and object detection models.
- Simply instantiate a model with your number of classes, build an `AgMLDataLoader` with your data preprocessing, and pass it to the `run_training` method alongside other training hyperparameters to train a model.
- Choose your level of customizability: for newer users, options like optimizers, loss, and other hyperparameters are auto-selected, but for experienced users, you can go as far as extending the `training_step`, `validation_step`, and other arguments for greater customizability over training.

Other Changes and Bugfixes

- A major bug which prevented recompliation of Helios without LiDAR has been fixed, enabling users to switch between using LiDAR-compiled Helios and standard Helios.
- A bug which caused Helios installation on basic inspection is now patched. Helios will no longer auto-install unless the `agml.synthetic` module is actively used for data generation.
- You can now correctly display image samples when using `agml.viz.show_sample` with the `image_only` option.
- Bugfixes have been done for `agml.models.metrics.Accuracy` and `agml.models.metrics.MeanAveragePrecision` to ensure that they work with training.

**Read the Full Changelog**: https://github.com/Project-AgML/AgML/compare/v0.5.2...v0.6.0

Page 1 of 5

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.