Skip to content

Releases: jpmyrmecol/AMADEUS

AMADEUS v1.2.5

Choose a tag to compare

@jpmyrmecol jpmyrmecol released this 22 Oct 19:25
bf7e29b

AMADEUS v1.2.5

This release introduces Refinement video export improvements and several bug fixes.

Improvements

  • Added video export in both AMADEUS and Dataset modes, supporting Center, Arrow, OBB, and Ellipse overlays.
  • Added random frame and individual previews with automatic zoom.
  • Added adjustable line width and triangle opacity.
  • Video exports now default to the source video's directory with a _refined suffix.

Bug Fixes

  • Fixed Analysis Range controls being disabled when only video creation was enabled.
  • Fixed a Segmentation canvas crash on macOS.
  • Improved video conversion reliability and validation.

AMADEUS v1.2.4

Choose a tag to compare

@jpmyrmecol jpmyrmecol released this 19 Oct 12:13
7f0129c

AMADEUS v1.2.4

This release adds remaining training time estimates, restores continuous Loss visualization across epochs, and improves the Easy Tracking layout.

Training Progress

  • Added an estimated remaining training time beside fps, displayed in hours, minutes, and seconds.
  • The estimate uses measured image throughput and the remaining image count across all remaining epochs of the current training stage.

Loss History

  • Fixed the Loss chart resetting at each epoch boundary. Live training Loss history now remains visible across consecutive epochs.
  • Improved checkpoint recovery handling to retain completed Loss history and remove samples from epochs that will be repeated.
  • Improved continuity between saved epoch summaries and live Loss data, avoiding duplicate history and backward jumps on the Images axis.
  • Reduced chart rendering work for long training histories.

GUI Improvements

  • Adjusted window margins and pane sizing to address clipping at the right edge of Visual Progress.
  • Added automatic text wrapping and height adjustment for the progress bar and status messages.
  • Improved chart label placement and System Monitor sizing to fit the available space.

AMADEUS v1.2.3

Choose a tag to compare

@jpmyrmecol jpmyrmecol released this 16 Oct 20:01
972a966

AMADEUS v1.2.3

This release improves tracking reliability, cache integrity, and memory efficiency.

Improvements

  • Cache integrity: Added validation of cached results against input files, settings, implementation changes, and output completeness. Outdated or incomplete caches are automatically invalidated and recomputed.
  • Tracking initialization: Improved initial frame selection when detections do not meet the standard confidence threshold, reducing unnecessary initialization failures.
  • Direction correction: Prevented direction anchors and correction runs from crossing remaining gaps in tracking data.
  • Memory efficiency: Reduced memory usage in identity correction by storing scores only for eligible negative pairs, while preserving the original sampling behavior.
  • System stability: Fixed batch startup failures when optional battery information is unavailable.
  • Consistent behavior: Applied the relevant improvements to both standard tracking and tracking without direction estimation.

AMADEUS v1.2.2

Choose a tag to compare

@jpmyrmecol jpmyrmecol released this 16 Oct 13:47
0a749cc

AMADEUS v1.2.2

This release introduces an independent Add-ons system, expands drag-and-drop support for saved configurations, improves training performance and progress visualization, and refines the GUI across operating systems.

New: Add-ons System

  • Added an Add-ons manager to the Home screen for installing independent applications from ZIP packages.
  • Each add-on runs in a separate process with its own Python environment and dependencies.
  • Added installation, updating, and uninstallation controls, with persistent application data across updates.
  • Added draggable add-on panels with saved ordering.
  • Added optional drag-and-drop support for files and videos on add-on panels.
  • Improved package validation, installation progress feedback, and error handling.

See the [Add-ons guide](https://github.com/jpmyrmecol/AMADEUS/blob/main/tools/ADDONS.md) and [official add-on template](https://github.com/jpmyrmecol/AMADEUS-Addon-Template).

Home and Configuration Improvements

  • Extended Home drag-and-drop support to saved configuration files.
  • Added configuration loading for Easy Tracking, Advanced Tracking, Refinement, Segmentation, Cropping & Trimming, and Colab.
  • Added support for dropping multiple YAML configurations into Multi Config Batch, automatically adding them to the queue without starting processing.
  • Added Ctrl+S and Command+S configuration saving shortcuts to supported GUIs.
  • Improved restoration of saved Cropping & Trimming settings, including regions, trimming parameters, output settings, and GPU acceleration preferences.

Training and Performance

  • Added support for Ultralytics AutoBatch settings, including BATCH_SIZE: -1 and fractional memory targets such as 0.8.
  • Improved automatic batch selection on AMD ROCm and automatic batch adjustments on NVIDIA GPUs.
  • Improved recovery from memory exhaustion and checkpoint resumption.
  • Set automatic Easy Tracking training image size limits to 640 px on macOS and ROCm, and 1024 px on other backends.
  • Improved training progress visualization with per-epoch progress bars, image throughput (fps), cumulative processed image counts, and actual batch sizes.
  • Updated the training Loss chart to display training Loss only, including saved epoch history when resuming.
  • Expanded training diagnostics with accelerator memory capacity, CPU and RAM information, and epoch-level performance summaries.

GUI and Segmentation Improvements

  • Standardized dark theme styling across GUI windows, dialogs, progress displays, and numeric controls.
  • Improved macOS Spinbox appearance and Segmentation dialog readability.
  • Updated the Segmentation IQR boxplot and blob information tooltips.
  • Improved Segmentation background processing and progress handling.
  • Show Background confirmation now remains valid when switching between median, max, and min methods. Repeating the preview confirmation is no longer required for the same video.

Bug Fixes and Maintenance

  • Prevented malformed training CSV histories from being incorrectly truncated during checkpoint resumption.
  • Fixed competing GUI updates during training epoch transitions.
  • Prevented Loss histories from different training experiments from being combined.
  • Fixed parsing of scientific notation in training Loss values.
  • Improved error handling when loading malformed Cropping & Trimming YAML files.
  • Improved Linux add-on storage migration and Windows uninstallation cleanup.
  • Simplified startup diagnostics while preserving detailed training logs.
  • Restored dependency installation progress output during environment setup.

Notes

  • Add-ons are independent executable applications and are not sandboxed. Install packages only from trusted developers.
  • Uninstalling AMADEUS also removes installed add-ons and their saved data. Back up important add-on data before uninstalling.
  • The core animal tracking and association algorithms remain unchanged.

Full changelog: v1.2.1...main

AMADEUS v1.2.1

Choose a tag to compare

@jpmyrmecol jpmyrmecol released this 14 Oct 16:00
7c74a21

AMADEUS v1.2.1

This release substantially improves temporal merge detection, simplifies the Segmentation GUI, and introduces persistent search results for a more efficient workflow.

Temporal Merge Detection (Beta)

  • Improved detection of merged animals using bidirectional temporal evidence, including backward inference from later splitting events.
  • Improved tracking of animal counts through complex merging and splitting events, including cases where three animals separate into a pair and a single animal.
  • Removed the temporal search horizon, allowing merge evidence to persist without an arbitrary time limit.
  • Fixed the minimum confirmation length to 2 frames.
  • Added configurable Containment, Share rounding, and One-sided mass ratio parameters.
  • Improved detection of merging animals that are close together, without requiring a minimum separation based on body length.
  • Improved robustness to temporary contour deformation and ambiguous interactions.

Segmentation Workflow and Visualization

  • Moved Exclude temporal merges before Outlier Extraction.
  • Unified all temporal merge candidates under violet highlighting, regardless of evidence category. Additional statistical outliers are highlighted in orange.
  • Improved IQR analysis by excluding confirmed temporal merges from the reference population.
  • Added estimated animal counts to the hover information, such as crossing(2) and crossing(3).
  • Added previous/next outlier-frame navigation buttons to the Analysis section.
  • Reduced the IQR boxplot height and added double-click support to reset individual threshold handles to 1.5×IQR.
  • The Temporal Merge Detection section is hidden by default and appears when optional settings are shown or the feature is enabled.

Persistent Temporal Search Results

  • Temporal merge search results are now automatically saved to a compressed .npz cache alongside the Segmentation configuration.
  • Saved results are automatically restored when reopening a compatible configuration, avoiding unnecessary rescanning.
  • Cached results are validated against the source video, segmentation settings, detection parameters, and relevant code.
  • Invalid or incompatible caches are safely ignored.

Other Improvements

  • Added a confirmation popup when Save config completes successfully.
  • Fixed duplicate AMADEUS version information in startup output across platforms.
  • Improved memory efficiency when evaluating long temporal histories.

Notes

  • Temporal Merge Detection remains experimental (Beta) and disabled by default.
  • Violet highlighting includes uncertain candidates; automatic exclusion still depends on evidence strength and reliability checks.
  • Re-running Search is required when relevant settings or source data change.

Full changelog: v1.2.0...main

AMADEUS v1.2.0

Choose a tag to compare

@jpmyrmecol jpmyrmecol released this 14 Oct 09:54
33d575e

AMADEUS v1.2.0

This release introduces new experimental segmentation filters, improves the Easy Tracking workflow, and enhances installation reliability and runtime diagnostics across operating systems.

New Features

Temporal Merge Detection (Beta)

  • Added an optional filter to identify blobs containing multiple animals using temporal evidence from consecutive video frames.
  • Detects merging and splitting events through contour overlap relationships, including cases where merged blobs have a normal area.
  • Supports two exclusion modes: Bilateral only and Include one-sided.
  • Classifies candidates by evidence strength and avoids automatic exclusion when the evidence is insufficient or unreliable.
  • Provides visual highlighting, event navigation, and a temporal_merge_events.csv report.

Persistent Static Blob Exclusion (Beta)

  • Added an optional filter to identify and exclude blobs that remain spatially stable over consecutive frames.
  • Uses temporal persistence, contour IoU, and displacement relative to body length.
  • Allows configurable detection thresholds.
  • Highlights excluded blobs in green during segmentation preview.

Easy Tracking Workflow

  • Redesigned the interface to guide users through video selection, segmentation, tracking settings, and processing.
  • Added progressive disclosure of settings and animated highlights for the next required action.
  • Automatically restores compatible saved configurations when selecting a video with an existing AMADEUS session.
  • Improved synchronization of segmentation completion status and tracking controls.

GUI Improvements

Segmentation

  • Added interactive IQR bounds directly on the boxplot, with draggable handles and editable Min/Max IQR multipliers.
  • Improved step-by-step guidance for background preparation, segmentation analysis, and processing.
  • Added visual distinctions between ordinary outliers, persistent static blobs, and temporal merge candidates.
  • Added Beta labels to experimental optional settings.
  • Improved consistency between preview, exported segmentation data, and processing results.

Home and File Handling

  • Added an animated opening hint to the Easy Tracking panel.
  • Improved drag-and-drop handling and error diagnostics.
  • Improved splash-screen placement on Linux multi-monitor configurations.

Installation and Compatibility

  • Windows: Retained Python 3.12 with a persistent uv-managed interpreter and improved environment setup reliability.
  • macOS: Retained Python 3.12 with Tcl/Tk 8.6.
  • Linux: Added support for compatible Python 3.10–3.12 installations with Tk 8.6 and Xft.
  • Improved Python interpreter selection and virtual environment validation to avoid temporary or invalid interpreter paths.
  • Added automatic installation of libgl1 on Ubuntu when the required OpenCV library is missing.
  • Improved diagnostics for missing optional Linux drag-and-drop dependencies.

Runtime Diagnostics

  • Added AMADEUS, Python, and PyTorch version information to startup output and tracking logs.
  • Added GPU backend, device availability, device names, and CUDA/ROCm runtime information.
  • Centralized runtime diagnostics for consistent reporting across launchers and tracking modes.

Notes

  • The new segmentation filters are experimental (Beta) and disabled by default.
  • Temporal filter exclusions require a completed Search with the current segmentation settings.
  • Python and Tk requirements differ by operating system. Linux configurations must provide Tk 8.6 with Xft support.

AMADEUS v1.1.17

Choose a tag to compare

@jpmyrmecol jpmyrmecol released this 13 Oct 08:00
1e2fe56

AMADEUS v1.1.17

This release standardizes the Python environment to Python 3.12 and improves edit-state handling in the Refinement GUI.

Improvements

Python 3.12 Requirement

  • Standardized Python support to 3.12.x across Windows, macOS, and Linux.
  • Removed support for Python 3.10 and 3.11.
  • Updated installation scripts, environment validation, and dependency metadata.
  • Existing managed virtual environments using older Python versions are automatically rebuilt with Python 3.12.
  • On macOS, the installer offers Python 3.12.10 when no compatible installation is found.

Refinement GUI

  • Fixed an issue where applying Flip twice restored the original front/rear direction but incorrectly retained edit=yes.
  • The edit flag is now cleared when a second flip restores the original state, provided no other edits have been made.
  • Manual keypoint adjustments and ID swaps continue to retain their edited status.

Notes

  • macOS continues to require Tcl/Tk 8.6.
  • Python 3.12 may resolve Tkinter button responsiveness issues reported on some macOS configurations.
  • No changes were made to the core tracking algorithms.

AMADEUS v1.1.16

Choose a tag to compare

@jpmyrmecol jpmyrmecol released this 11 Oct 20:06
b3d8f48

AMADEUS v1.1.16

This release introduces drag-and-drop video launching from the Home GUI, fixes an Advanced Tracking startup issue, and simplifies console output.

New Features and Improvements

Home GUI: Drag-and-Drop Video Support

  • Added the ability to drag and drop a video onto a Home panel to open the corresponding GUI.
  • Supported panels include Easy Tracking, Cropping & Trimming, Segmentation, Advanced Tracking, Refinement, and Colab.
  • Dropped videos are automatically passed to the selected GUI using its existing video loading and compatibility checks.
  • Colab automatically searches for a matching project configuration and requests a config.yaml if none is found.
  • Improved support for file paths containing spaces or non-ASCII characters.
  • Multi Config Batch remains excluded from drag-and-drop support.

Console Output

  • Simplified startup messages to focus on the AMADEUS version, installation directory, and GPU availability.
  • Added a concise GPU status summary based on the active PyTorch backend.
  • Suppressed routine drag-and-drop diagnostics and redundant environment setup messages.
  • Reduced uv installation and dependency synchronization output.
  • Preserved package verification messages and relevant error diagnostics.

Bug Fixes

  • Fixed an Advanced Tracking startup crash (KeyError: 'Analysis') caused by updating GUI controls before all sections were initialized.
  • Improved window visibility when launching Advanced Tracking from Home.
  • Added error reporting when a GUI launched through drag-and-drop exits unexpectedly.
  • Improved error dialogs to display Python tracebacks with proper line breaks.

Dependencies and Maintenance

  • Updated GUI launch argument handling and initialization logic.
  • Improved startup scripts for Windows, macOS, and Linux.
  • No new dependencies were added.
  • No changes were made to the core tracking algorithms.

AMADEUS v1.1.15

Choose a tag to compare

@jpmyrmecol jpmyrmecol released this 11 Oct 16:52
64d8e63

AMADEUS v1.1.15

This release significantly improves video playback, reverse navigation, and preview responsiveness across Refinement, Segmentation, and Cropping & Trimming.

New Features and Improvements

Video Playback and Reverse Navigation

  • Introduced PyAV-based reverse playback with asynchronous decoding and bounded frame buffering.
  • Improved smoothness when holding the left or right arrow key, including with long-GOP videos.
  • Added continuous reverse-frame prefetching and improved buffer management to reduce playback interruptions.
  • Improved synchronization between playback timing, decoded frames, and GUI updates.
  • Reduced unnecessary video seeking and repeated decoding.

Refinement

  • Improved forward and reverse playback responsiveness with asynchronous frame preparation and optimized caching.
  • Unified continuous arrow-key navigation with the standard Play/Stop controller.
  • Improved reverse playback startup and recovery when decoded frames are temporarily unavailable.
  • Reduced delays during repeated playback, pausing, and direction changes.

Segmentation and Cropping & Trimming

  • Extended asynchronous forward and reverse playback to both GUIs.
  • Improved single-frame navigation by moving decoding off the GUI thread.
  • Increased preview frame caching and optimized sequential prefetching.
  • Reduced delays when releasing held arrow keys, including improved physical key-release detection on Windows.
  • Optimized Canvas rendering by reusing image objects instead of recreating them for every frame.
  • Improved Space-key playback controls and handling of keyboard auto-repeat.

GUI Improvements

  • Added right-click Copy text functionality for non-editable text across AMADEUS GUIs.
  • Improved Advanced Tracking by hiding variable-population settings until the feature is enabled.

Bug Fixes

  • Reduced playback stuttering caused by repeated seeking in compressed videos.
  • Improved handling of pending frame requests during playback transitions.
  • Reduced delayed frame updates after stopping reverse playback.
  • Improved preview responsiveness during prolonged arrow-key navigation.

Dependencies and Maintenance

  • Added PyAV 16.0.1 for efficient reverse video decoding.
  • Updated third-party license notices for PyAV and its bundled FFmpeg components.
  • Updated the dependency lockfile and installation configuration.

AMADEUS v1.1.14

Choose a tag to compare

@jpmyrmecol jpmyrmecol released this 11 Oct 07:02
3512308

AMADEUS v1.1.14

This release improves variable population tracking, Refinement CSV exports, and video preview playback and navigation.

New Features and Improvements

Variable Population Tracking

  • Added a new default edge mode that prioritizes animal entrances and exits near frame boundaries.
  • Automatically estimates the boundary margin using animal size and movement information from Initial Tracking or detection results.
  • Requires consecutive detections to confirm new individuals, with stricter confirmation for animals appearing inside the frame.
  • Extends the retention period for temporarily missing individuals inside the frame, reducing unnecessary ID changes.
  • Preserves the original anywhere mode as an option in Advanced Tracking.
  • Added configurable confirmation thresholds and retention periods.
  • Applied the improvements to both standard tracking and Without Direction Estimation.

Refinement

  • Automatically exports companion rear/front keypoint and center coordinate CSV files alongside refined AMADEUS results.
  • Improved CSV export responsiveness by generating companion files asynchronously.
  • Added direct saving with Ctrl+S for previously saved refined CSV files while protecting original tracking inputs.
  • Improved CSV save status reporting and protection against accidental overwriting.

Video Preview and Navigation

  • Added continuous frame navigation by holding the left and right arrow keys, synchronized with video FPS and playback speed.
  • Improved playback pacing in Segmentation and Cropping & Trimming by reusing measured preview performance across playback sessions.
  • Improved Refinement playback responsiveness when repeatedly starting and stopping playback, including with long videos.
  • Reduced unnecessary frame decoding and background prefetch contention.

Bug Fixes

  • Fixed several issues involving Refinement playback stalls and repeated Play/Stop operations.
  • Improved handling of pending frame requests and decoder synchronization.
  • Fixed cases where the first video frame could be skipped.
  • Improved Segmentation frame cache synchronization.
  • Improved reliability of Refinement CSV saving and companion file generation.