Releases: acsenrafilho/cucaracha
v0.6.0: Merge pull request #34 from acsenrafilho/develop
Release Notes: Version v0.6.0
Overview
Version v0.6.0 brings an array of enhancements, bug fixes, and new features, improving the functionality, usability, and robustness of the Cucaracha library. This release focuses on advancing machine learning tasks such as image classification and segmentation, data augmentation, and model evaluation, while refining the codebase and documentation.
🚀 New Features
Image Classification Enhancements
- Dataset Augmentation:
- Added a script to generate augmented datasets.
Commit:a990cc1
- Improved data augmentation techniques.
Commit:54ec923
- Added a script to generate augmented datasets.
- Visualization Support:
- Added functionality to visualize training samples before proceeding with training.
Commit:bcad26a
- Added functionality to visualize training samples before proceeding with training.
- Custom TensorBoard Callback:
- Log training images during model training.
Commit:f069df4
- Log training images during model training.
- Architecture Listing:
- Added
--arch_list
option to display available classification architectures.
Commit:ee33725
- Added
- Evaluation Script:
- Introduced a detailed reporting and visualization script for evaluating pretrained models.
Commit:07c734d
- Introduced a detailed reporting and visualization script for evaluating pretrained models.
Image Segmentation Enhancements
- Refactored
ImageSegmentationTrainer
for better model initialization and metrics handling.
Commit:35d297a
Data Handling
- Added support for loading class labels from a JSON file in the model evaluation script.
Commit:242e9da
- Integrated the
image_auto_fit
function to resize images for Keras model input.
Commit:e03a3c2
Dependency Updates
- Added
scikit-learn
andseaborn
for data visualization and analytics.
Commit:df8f783
- Upgraded
keras
to version 3.8.0 and includedscipy
for scientific computing.
Commits:294b476
,d7adf65
🛠️ Enhancements
- Updated parameter validation for image classification tasks.
Commit:588b401
- Introduced functions to plot confusion matrices and handle organized datasets efficiently.
Commits:cf46b69
,fca10ff
- Improved configuration files with validation for allowed image extensions.
Commit:ce666fb
🐛 Bug Fixes
- Fixed import paths to align modules and tasks.
Commits:b63d944
,a039329
- Fixed
__str__
method implementations for ML models.
Commit:ca35d5b
- Resolved issues with missing initialization files in the
tasks
module.
Commit:57f8f4a
- Removed unused image file links from classification datasets.
Commit:2c59293
📝 Documentation Updates
- Improved docstrings for better clarity and formatting in key functions.
Commit:2075c1e
- Added detailed documentation for model architect and identification functions.
Commit:0129375
🔧 Codebase Improvements
- Refactored import statements for consistency and readability.
Commits:8f261c8
,37be488
- Improved code style with pragma comments and clean-up tasks.
Commits:acdefe4
,7d33184
Upgrade Instructions
-
Update the library:
pip install cucaracha --upgrade
-
Explore new features:
Check out the updated documentation for guidance on using the new features.
Enjoy the new version and happy coding! 🚀
v0.5.0: Merge pull request #27 from acsenrafilho/develop
Release Notes: Version v0.5.0
Overview
Version v0.5.0 brings exciting updates, including enhanced support for machine learning tasks like image classification and segmentation, the addition of new ML models, improved documentation, and bug fixes. This release expands the repository's capabilities while improving usability and developer experience.
🚀 New Features
Machine Learning Enhancements
Image Classification
- Added support for new ML models:
- AlexNet
- GoogleLeNet
- ResNet50
- DenseNet121
- ModelSoup
Commit:c492a62
Image Segmentation
-
Introduced the UNet architecture for segmentation tasks.
Commit:90839e9
-
Added new functionality for segmentation tasks, including:
- Support for segmentation datasets (
sample-segmentation-dataset
).
Commit:9f49722
- MLPattern template enhancements for checking architecture patterns.
Commit:4230d62
- Support for segmentation datasets (
Broader Dataset Support
- Expanded the
load_cucaracha_dataset
function for compatibility with additional AI tasks.
Commit:f0e0dc1
Codebase Improvements
- Improved code organization for ML trainers and models to support more extensible implementations.
Commit:1b49cf1
- Streamlined imports and removed unused code.
Commits:252cc75
,3f8d140
,1e06a51
🐛 Bug Fixes
- Fixed test outputs to align with model names.
Commit:2ae3f2a
- Corrected references for
CUCARACHA_PRESETS
models and datasets to the official Kaggle repository.
Commit:228aae9
📝 Documentation Updates
-
New Sections:
- Added detailed documentation for image classification and segmentation tasks.
Commit:9ef07b1
- Documented the UNet Xception model for image segmentation.
Commit:09aa3c9
- Added detailed documentation for image classification and segmentation tasks.
-
Reorganized ML Trainers and Models:
Structured documentation for better readability and usage.
Commit:1b49cf1
-
Abstract Class
MLPattern
:
Provided documentation to support developers extending ML implementations.
Commit:9d1ade5
-
Fixed spelling and updated repository references in various documentation files.
Commit:f40575d
-
Added CONTRIBUTING.md to guide open-source contributors.
Commit:f185475
🛠️ Enhancements
- New tests for ML models, including AlexNet, ResNet50, GoogleLeNet, DenseNet121, and ModelSoup.
Commit:d381e43
- Added tests for the
image_segmentation
trainer module.
Commit:f566ca2
- Defined new references for
CUCARACHA_PRESETS
for consistency and broader compatibility.
Commit:278d610
🔒 Issues Resolved
- #25: Add a Image Segmentation ML model and trainer.
- #26 : Create a set of function to consume pre-treined models placed on Kaggle Cucaracha-Project .
- #19: Create a ML model for document type classification.
Special Thanks 🎉
This release was made possible through the contributions and hard work of the following authors:
- @acsenrafilho: For spearheading development, improving ML support, and organizing the codebase.
- @lcscosta: For valuable contributions like the
CONTRIBUTING.md
file and support in improving documentation.
Your expertise and dedication have pushed Cucaracha to new heights. Cheers to you! 🥂
Upgrade Instructions
-
Update your package to the latest version:
pip install cucaracha --upgrade
-
Explore the new ML features and segmentation capabilities by following the updated documentation
-
Review the CONTRIBUTING.md for collaboration guidelines.
Thank you for your continued support! 🎉
v0.4.0
Release Notes: Version v0.4.0
Overview
This release introduces comprehensive updates, including new machine learning modules, expanded documentation, and critical bug fixes. The addition of image classification support, Kaggle integration, and adjustments to key machine learning models significantly enhance the repository's functionality.
🚀 New Features
Machine Learning Enhancements
-
Added SmallXception Architecture:
A lightweight model for binary image classification tasks.
Commit:b2818e4
,b661a0e
-
Introduced ImageClassificationTrainer Class:
Facilitates training and evaluation workflows for image classification.
Commit:180ea0e
-
Added
ml_models
andml_trainers
Modules:
Comprehensive modules for defining and training machine learning models.
Commit:8c1b804
,4577d5f
-
Kaggle Integration:
- New
kagglehub
dependency for downloading datasets and pre-trained models.
Commit:77c832f
- Included default addresses for Cucaracha pre-trained models.
Commit:4c9c711
- Module for handling Kaggle API calls.
Commit:1ce6e56
- New
-
Expanded Testing:
- Tests for
verify_image_compatibility
andml_models
modules.
Commits:03754ac
,0d92f22
- Tests for
Dependency and Compatibility Updates
- TensorFlow 2.16.2 defined as the required version.
Commit:63cd4c9
- Removed Windows compatibility; supports Linux/Mac only.
Commit:963fa74
🐛 Bug Fixes
-
Dataset Loading Fix:
Adjustedload_cucaracha_dataset
to rearrange folder structures for compatibility withml_trainers
.
Commit:515d01c
-
Model Improvements:
Fixed lint issues with the SmallXception model and__str__
method for theModelArchitec
interface.
Commits:799474c
,436f352
-
Various Fixes:
- Resolved
int
tofloat
assertion issues.
Commit:2fee044
- Fixes for TensorFlow training runner stability.
Commit:279d75b
- Resolved
📝 Documentation Updates
-
Getting Started Section Added:
Comprehensive guide for new users.
Commit:eb809a8
-
New Documentation Sections:
Added details aboutml_models
andml_trainers
modules.
Commit:f727042
-
Documentation Configuration:
Addedmkdocs.yml
for structured documentation generation.
Commit:a5cb8c9
🛠️ Enhancements
-
Organized the
MLPattern
interface for general ML implementations.
Commit:c355638
-
Improved code coverage and file organization within the repository.
Commit:335a85c
,104ae7f
-
Updated
.gitignore
to exclude.keras
files andorganized_dataset
.
Commits:45bdcfb
,f381dae
-
Improved dataset samples for more robust testing.
Commit:c9c8636
🔒 Issues Resolved
- #17: Add ML training support.
- #12: Define ML model and trainer modules.
- #8: Add Kaggle integration for datasets and models.
- #7: Support for image classification tasks.
- #6: TensorFlow training runner fixes.
Commit Summary
Commit | Type | Description |
---|---|---|
a5cb8c9 | DOC | Add mkdocs.yml and getting_started.md section |
799474c | BUG | Fix lint on SmallXception model |
279d75b | BUG | Fix TensorFlow training runner |
b2818e4 | ENH | Add SmallXception ML model |
1ce6e56 | ENH | Kaggle API integration |
eb809a8 | DOC | Added Getting Started guide |
515d01c | BUG | Fix dataset loading issues |
b661a0e | ENH | Adjust SmallXception to binary classification |
f727042 | DOC | Add sections for ML modules |
8c1b804 | ENH | Define ml_models and ml_trainers modules |
77c832f | ENH | Add kagglehub dependency |
2fee044 | BUG | Fix int-to-float assertion |
335a85c | ENH | Improved code coverage |
63cd4c9 | ENH | Defined TensorFlow 2.16.2 compatibility |
Upgrade Instructions
-
Update your package to the latest version:
pip install cucaracha --upgrade
-
Follow the Getting Started Guide for an overview of the new features.
We encourage users to explore the new ML capabilities and provide feedback through GitHub issues. Thank you for supporting
v0.3.0: Merge pull request #5 from acsenrafilho/develop
be95131 (tag: v0.3.0) Merge pull request #5 from acsenrafilho/develop
ec394fe Update README.md
6e34023 Update README.md
c48eb35 DOC: Add Contribute documentation
89a5dce BUG: Going back to remove read the docs actions
f628ad1 ENH: Add documentation build on PR (github action)
ad3aade BUG: Removing doctest for execution not working on Windows (rich print)
e07dde3 ENH: Add more image samples to be used in tests and demonstrations (collected from public repositories)
2477aca BUG: Fix test for sparse_dots filter using the cucaracha output filter standard
1cb50ab ENH: New tests for Document class for methods set_page and run_pipeline
91ba3dd BUG: Fix output format in sparse_dots method to be as cucaracha filter
386608f ENH: Add new methods in Document class: set_page, run_pipeline
3581989 BUG: Fix inplane_deskew method for input that is already in gray-scale
v0.2.0
689fe2a (HEAD -> main, tag: v0.2.0, origin/main, origin/HEAD) ENH: Update PyPI package to v0.2.0
cacd731 Merge pull request #4 from acsenrafilho/develop
f4bea60 (origin/develop, develop) BUG: Fix read the docs yml to Python 3.10
8a34f26 BUG: Removing save_document example doctest (Windows wrong path)
cafdf32 BUG: Removing wrong import for scipy
29c541c ENH: Add new module: aligment (code, tests and samples)
3d5f152 ENH: Update project to Python 3.10 or higher and poetry lock
7802cb2 DOC: Added noise removal doc file in the mkdocs.yml
e26f238 ENH: Update poetry lock file
2573849 ENH: Added doctest on Document class
c801a6f ENH: Added more image samples shortucut in sample_paths.py module
6f89686 DOC: Added noise remval documentation
41d27e9 ENH: Added noise removal module and tests
093c10f ENH : Added more image samples for testing
1039ca1 ENH: Test using import os to doctest
0f831f4 ENH: Added PyPI badge in README
1405945 BUG: project.toml classifiers
bb33dc1 BUG: Fix pyproject.toml
dc2b812 ENH: Add project PyPI classifiers
9a609e1 DOC: Commenting doctest until fix it for Windows calls (WIP)
ed37367 BUG: Fix doctest to pass over Windows SO
a716c60 ENH: Focusing CI to Python 3.10 only
7bfb575 BUG: Fix test for output metadata as dict pattern
8ab83ac ENH: Module documentation
8922211 ENH: API documentation (Document class, Threshold module)
5e2b458 ENH: Improved read the docs documentation
6c9ccd4 ENH: Added image samples (jpg, png, tif and pdf)
b14b651 ENH: Added tests for Document class
bbeb4d2 ENH: Added threshold module
dcd2b3a ENH: Adding PyMUPDF lib as dependency
d06a688 ENH: Allocation of Document class to cucaracha init file