Evidence collection
Release notes
-
!44: Update names of checkpoint files
-
!45: Add new protocols to datasets
Add protocols to datasets with other resolution
768x768 : for vessels dataset
512x512 : for od/oc datasets
-
!46: Update lung seg results
-
!47: Add baselines results
-
!48: Resolve "Blur test is not passing anymore"
Closes #10
-
!49: Add baselines results
-
Baselines results
-
New Combined protocols
-
-
!51: Add baselines results
-
!43: Improve trainer function
Split the trainer run function into different steps in order to make it easier to use the different part of the code again in case of a different type of training (example : Multi task learning) where we will need to work with multiple losses.
The function is now split to :
-
check_gpu(device) : Where we check the device type and the availability of GPU.
-
save_model_summary(output_folder, model) : Save summary of the model in a txt file.
-
static_information_to_csv(static_logfile_name, device, n) : Save the static information in a csv file.
-
check_exist_logfile(logfile_name, arguments) : Check existence of logfile (trainlog.csv),
If the logfile exist the and the epochs number are still 0, The logfile will be replaced.
-
create_logfile_fields(valid_loader, device) : Creation of the logfile fields that will appear in the logfile.
-
train_sample_process(samples, model, optimizer, losses, device, criterion) : Processing the training inputs (Images, ground truth, masks) and apply the backprogration to update the training losses.
-
valid_sample_process(samples, model, valid_losses, device, criterion) : Processing the validation inputs (Images, ground truth, masks) and update validation losses.
-
checkpointer_process(checkpointer, checkpoint_period, valid_losses, lowest_validation_loss, arguments, epoch, max_epoch,) : Process the checkpointer, save the final model and keep track of the best model.
-
write_log_info(epoch, current_time, eta_seconds, losses, valid_losses, optimizer, logwriter, logfile, device,) : Write log info in trainlog.csv
-
-
!52: Fix error in trainer function
This MR fixes #14.
-
!50: WIP:Add CXR8 Dataset, Improves resource logging, Deprecates SSL, Adds tensorsboard support
This MR contains some important additions:
-
Adds the CXR8 dataset and segmentations as input source for training lung segmentation on CXR, including specific versions for Idiap usage
-
Fixes CPU logging (missing
recurse=True
setting) -
Improves CPU/GPU logging by consulting devices in a parallel process, during the whole epoch
-
Fine-tunes
train-analysis
plot, adds a plot for hardware utilisation through training -
Deprecates Semi-supervised Learning (SSL) approaches due to changes in the overall re-design and infrastructural changes
-
Added plumbery to support tensorboard logging
-
Parallelises the evaluation procedure so it may be faster on very large datasets
-
Change the flag
--multiproc-data-loading
to--parallel
as it now can be used through the whole experiment -
Implements plot axes limits for the compare (portion of the experiment) script
-
Adjusts the root of lung segmentation datasets (Montgomery, Shenzhen, JSRT) to make running a bit easier to reproduce remotely
-
Fixes the loading of Montgomery and Shenzhen datasets to avoid resizing distortions
-
-
!53: Implements option to pass one or more extra validation datasets
This MR:
-
Implements option to pass one or more extra validation datasets that do not affect checkpointing (closes #16)
-
Deprecates
SmoothedValue
, and makes loss logging a bit more explicit -
Updates tests and analysis to accomodate changes
-
-
!56: Allows GPU logging in multi-GPU systems; Fixes DRIVE download link
This MR includes the following changes:
-
!57: Object Detection
-
!58: [script.dataset] Fixes dataset script to account to changes in the base...
[script.dataset] Fixes dataset script to account to changes in the base representation of configuration
-
!60: Changes detection
-
!61: Update chexphoto (3000 labels)
-
!63: Fix documentation
Moved the documentation from bob.ip.binseg to deepdraw, fixing imports and warnings
-
!62: Move from bob group and cookiecuter usage
This merge request updates the codebase after the move from the bob to the biosignal group and makes use of the cookiecutter template.
-
Project has been moved from bob/ip/binseg to biosignal/software/deepdraw
-
Paths in the projects have been replaced accordingly
-
Tests have been moved at the root of the repository
-
The project now uses the template from cookiecutter-idiap-pypackage and the new CI pipeline
-
SPDX headers have been added and updated
-
Data files are now tracked with LFS, even if they are not using too much space
Closes #20
-
-
!65: Resolves Gaussian-blur test is failing
Closes #25
-
!66: Ground Truth Box Crop Transform
Creates a new transform function that crops all images using the ground truth mask as reference. Can also take an additional parameter extra_area that increases the dimensions of the resulting square before cropping images.
-
!67: Adding xtests for ground truth crop configs
-
!69: Remove detect
Removed object detection part
Moved all common part into source code for binary segmentation
Replaced all references to binseg by deepdraw
Release notes
- bob/bob.ip.binseg!38 Add script to generate masks and masks for databases missing them: Closes bob/bob.ip.binseg#3
- bob/bob.ip.binseg!32 WIP: [Index.rst] Add documentation results for Optic disc and cup
- bob/bob.ip.binseg!43 Improve trainer function: Split the trainer run function into different steps in order to make it easier to use the different part of the code again in case of a different type of training (example : Multi task learning) where we will need to work with multiple losses. The function is now split to : - check_gpu(device) : Where we check the device type and the availability of GPU. - save_model_summary(output_folder, model) : Save summary of the model in a txt file. - static_information_to_csv(static_logfile_name, device, n) : Save the static information in a csv file. - check_exist_logfile(logfile_name, arguments) : Check existence of logfile (trainlog.csv), If the logfile exist the and the epochs number are still 0, The logfile will be replaced. - create_logfile_fields(valid_loader, device) : Creation of the logfile fields that will appear in the logfile. - train_sample_process(samples, model, optimizer, losses, device, criterion) : Processing the training inputs (Images, ground truth, masks) and apply the backprogration to update the training losses. - valid_sample_process(samples, model, valid_losses, device, criterion) : Processing the validation inputs (Images, ground truth, masks) and update validation losses. - checkpointer_process(checkpointer, checkpoint_period, valid_losses, lowest_validation_loss, arguments, epoch, max_epoch,) : Process the checkpointer, save the final model and keep track of the best model. - write_log_info(epoch, current_time, eta_seconds, losses, valid_losses, optimizer, logwriter, logfile, device,) : Write log info in trainlog.csv -
Release notes
- bob/bob.ip.binseg!19 Add Lwnet baselines results * bob/bob.ip.binseg!22 Add lwnet models to api.rst * bob/bob.ip.binseg!23 Fix hed error * bob/bob.ip.binseg!24 [doc] Add information about CLA and contributing * bob/bob.ip.binseg!25 Add drhagis Dataset * bob/bob.ip.binseg!26 Multiproc data loading * bob/bob.ip.binseg!27 Add config/data/test files for Montgomery County, JSRT, Shenzhen datasets * bob/bob.ip.binseg!28 [Device.type] Fix add gpu constant error * bob/bob.ip.binseg!30 Adds pre-commit support: This MR adds pre-commit support to this package, with checks for syntax, import usage and many more. * bob/bob.ip.binseg!31 [Rebase] rebase merged request: Got some troubles with DrhagisUpdates branch when trying to fix all the conflicts, this branch is for the same purpose. * bob/bob.ip.binseg!35 [conda] Remove bob-devel * bob/bob.ip.binseg!34 [pyproject.toml] Use relative_files option for coverage to avoid long names in...: [pyproject.toml] Use relative_files option for coverage to avoid long names in CI-generated coverage reports * bob/bob.ip.binseg!36 Try to set the configuration file for coverage: We further bob/bob.ip.binseg!34 by explicitly setting the coverage configuration file for the conda builds. * bob/bob.ip.binseg!37 Fixes reporting of % of GPU memory: This MR replaces the reporting of percentage of GPU memory used for the "current" used amount of memory (instead of time reading/writing to memory). This MR closes bob/bob.ip.binsegbob/bob.ip.binseg#7. * bob/bob.ip.binseg!39 Adding documentation about how to train a trained model for more epochs. * bob/bob.ip.binseg!40 CXR_Lung_Segmentation_baseline_results: Adding results documentation for CXR Lung Segmentation datasets. (Branch was rebased) * bob/bob.ip.binseg!42 [doc/results/baselines/lung] Add links to baseline models for lung segmentation * bob/bob.ip.binseg!41 [dataset.rst] Add note to dataset.rst specifying the change on the change...: [dataset.rst] Add note to dataset.rst specifying the change on the change between Refuge/Training400/AMD -> Database provided by AMD-grand-challenge - bob/bob.ip.binseg!19 Add Lwnet baselines results
- bob/bob.ip.binseg!22 Add lwnet models to api.rst
- bob/bob.ip.binseg!23 Fix hed error
- bob/bob.ip.binseg!24 [doc] Add information about CLA and contributing
- bob/bob.ip.binseg!25 Add drhagis Dataset
- bob/bob.ip.binseg!26 Multiproc data loading
- bob/bob.ip.binseg!27 Add config/data/test files for Montgomery County, JSRT, Shenzhen datasets
- bob/bob.ip.binseg!28 [Device.type] Fix add gpu constant error
- bob/bob.ip.binseg!30 Adds pre-commit support: This MR adds pre-commit support to this package, with checks for syntax, import usage and many more.
- bob/bob.ip.binseg!31 [Rebase] rebase merged request: Got some troubles with DrhagisUpdates branch when trying to fix all the conflicts, this branch is for the same purpose.
- bob/bob.ip.binseg!35 [conda] Remove bob-devel
- bob/bob.ip.binseg!34 [pyproject.toml] Use relative_files option for coverage to avoid long names in...: [pyproject.toml] Use relative_files option for coverage to avoid long names in CI-generated coverage reports
- bob/bob.ip.binseg!36 Try to set the configuration file for coverage: We further bob/bob.ip.binseg!34 by explicitly setting the coverage configuration file for the conda builds.
- bob/bob.ip.binseg!37 Fixes reporting of % of GPU memory: This MR replaces the reporting of percentage of GPU memory used for the "current" used amount of memory (instead of time reading/writing to memory). This MR closes bob/bob.ip.binseg#7.
- bob/bob.ip.binseg!39 Adding documentation about how to train a trained model for more epochs.
- bob/bob.ip.binseg!40 CXR_Lung_Segmentation_baseline_results: Adding results documentation for CXR Lung Segmentation datasets. (Branch was rebased)
- bob/bob.ip.binseg!42 [doc/results/baselines/lung] Add links to baseline models for lung segmentation
- bob/bob.ip.binseg!41 [dataset.rst] Add note to dataset.rst specifying the change on the change...: [dataset.rst] Add note to dataset.rst specifying the change on the change between Refuge/Training400/AMD -> Database provided by AMD-grand-challenge
Release notes
- bob/bob.ip.binseg!16 Use pytest instead of nose: This MR moves unit testing to pytest (instead of nose). It incidentally also enables py36 builds, now that pytorch is available for that Python version.
Release notes
- bob/bob.ip.binseg!13 Cleanup model implementation: Cleans up model implementation to: * Re-use all backbones from torchvision * Simplify checkpointer * Remove own implementation of model_zoo * Implement normalization for torchvision-based backbones * Enable pytorch installation on osx
- bob/bob.ip.binseg!14 Fix test after nomenclature change: [test.test_cli] Closes bob/bob.ip.binseg#2
- bob/bob.ip.binseg!15 Support for multi-GPU machines, improved random seed settings and reproducibility
Release notes
This tag correspond to the last version of this package to support models distributed with release 1.x of this package.
Further releases of this package will not support those models.
Evidence collection
Release notes
- bob/bob.ip.binseg!9 Minor fixes: This MR includes the following features: 1. Makes it explicit the conversion to RGB images in image pre-processing pipelines 2. Adds a transform for converting between 16-bit and 8-bit PNG images 3. Allows the inferencer to work with globs instead of fixed paths (+ adaptations to this where needed) 4. Adds documentation for
imagefolderinference
5. Adds explicit dependence to bob.core, required by the 16/8 bit PNG converters 6. Fixes an issue related to the conda recipe (see bob/bob.devtools#44 and bob/bob.devtools!127)
v1.0.1
Historical release
Release notes
- Fixed issue with LICENSE file
v1.0.0
Historical release
Release notes
- Initial public release