Hi tobac users,
We are pleased to announce the release of tobac v1.5.0. This is a major feature release, with substantial new features that improve the scientific capabilities of tobac.
The new features that headline this release are the ability to identify and track features in three spatial dimensions, identify, segment, and track features across periodic boundaries, and transform feature positions such that feature identification/tracking can be run on a different grid than segmentation. Other updates include many small features and enhancements, including documentation and feature detection updates.
tobac v1.5.0 has been in the works for quite a while, and we appreciate the enthusiasm that the user base has continued to show us for these new features. We are delighted to release this version today and look forward to continued development in the future.
To update to tobac v1.5.0, you can `conda update -c conda-forge tobac`, or whatever is appropriate for your package manager. Feel free to join the development efforts on the GitHub here: https://github.com/tobac-project/tobac . Also, if you know any tobac users that aren't on this mailing list, please encourage them to subscribe so that they don't miss the latest tobac news.
Enhancements for Users
- Feature detection and tracking in three dimensions is now supported #209
- Feature detection, segmentation, and tracking across periodic boundaries is now supported #259
- Transformation of feature detection points to allow segmentation on a new grid is now supported #242
- n_min_threshold in feature detection can now be set for each threshold level instead of uniformly for all thresholds #208
- Feature detection now has the option to only detect a feature if all previous thresholds have been met #283
- Unsegmented points can now have their marker value selected #285
- Minimum distance filtering is now substantially faster #249
- combine_feature_dataframes now allows the retention of feature numbers #300
- scikit-learn is now a required dependency; pytables and cf-units are no longer direct dependencies of tobac #204
Bug fixes
- An error is now raised if none of the search range parameters (v_max, d_max, d_min) are set in linking_trackpy #223
- Minimum distance filtering in feature detection (set through min_distance in feature_detection_multithreshold, run through filter_min_distance) has been fixed to properly work when target=minimum. #244
- Interpolated numeric coordinates now preserve their datatypes (i.e., floats stay floats) in feature detection #250
- Fixes to the internal find_axis_from_coord utility to allow for non-dimensional coordinates to be correctly dealt with #255
- Jupyter notebooks changed to use string paths to work around an Iris bug #294
- Minimum distance filtering updated to produce consistent results #249
Documentation
- Enhancements to the documentation of how tobac links features together 210
- Fixes to the API documentation generation when using type hints #305
Internal Enhancements
- New converting decorators (xarray_to_iris, iris_to_xarray, xarray_to_irispandas, irispandas_to_xarray) have been added for internal use that will allow the upcoming transition to xarray throughout tobac to occur more smoothly. #179
- The utils module has been broken up from a single utils.py file to multiple files inside a utils folder, allowing for ease of maintenance and fewer long code files. #191
- scipy.interpolate.interp2d in add_coordinates and add_coordinates_3D has been replaced with scipy.interpolate.interpn as interp2d has been deprecated. #279
- setup.py updated to draw its required packages from requirements.txt #288
Repository Enhancements
- New CI was added to automatically check the example and documentation Jupyter notebooks #258, #290
- The check_formatting CI action has been revised to install dependencies through conda #288
- Repository authors updated #289
- CI added to check author list formatting for Zenodo #292
Deprecations
- All functions in centerofgravity.py (calculate_cog, calculate_cog_untracked, center_of_gravity) have been deprecated and will be removed or significantly changed in v2.0. #200
- plot_mask_cell_track_follow, plot_mask_cell_individual_follow, plot_mask_cell_track_static, plot_mask_cell_individual_static, plot_mask_cell_track_2D3Dstatic, plot_mask_cell_track_3Dstatic, plot_mask_cell_individual_3Dstatic, and plot_mask_cell_track_static_timeseries in plotting.py have been deprecated and will be removed or significantly changed in v2.0. #200
- The wrapper functions in wrapper.py (tracking_wrapper and maketrack) have been deprecated and will be removed in v2.0. #200
- cell_statistics_all, cell_statistics, and cog_cell in the analysis module have been deprecated and will be removed or significantly changed in v2.0. #207
- tobac.utils.combine_tobac_feats has been renamed to tobac.utils.combine_feature_dataframes, and the original name has been deprecated and will be removed in a future release. #300
All changes: v1.4.2...v1.5.0
Full Changelog: https://github.com/tobac-project/tobac/blob/d819159d08896cb4237db6dfb538a6944a879413/CHANGELOG.md
Thanks,
The tobac dev team