Updates 2025/04/11
The most exciting new feature is the tight integration of Meta's Segment Anything 2 model for annotating images (object detection and image segmentation) thanks to the Deep Java Library project (DJL). You no longer have to launch a Docker image through a separate flow in the background in order to take advantage of the model. See this video for Segment Anything 2 in action: https://youtu.be/5ln2c2kgMAc
Fixes
Reduced the default minimum width for views in GenericObjectEditor property sheet to 100 pixels to avoid having to resize the GOE dialog unnecessarily.
-
adams-core:
The LocalJobRunner now stops jobs from the end of the list when terminating, to avoid new jobs being launched.
The Block control actor now only displays a grammar in its global info if one is available.
IncVariable now synchronizes the retrieval/setting of updated variable values to avoid race condition.
The MergeReport transformer now allows the source/storage item to be a ReportHandler as well.
-
adams-imaging:
The AreaRatio and IntersectOverUnionRatio overlap algorithms now correctly initialize the matches; missing overlaps were (ironically) missed.
The CompareAnnotationWithPrediction image segmentation operation now corretly limits the layers to the supplied ones (it was removing them instead).
adams-pdf: The PDF viewer works again.
adams-weka and adams-weka-lts: Added the -fix-att-count flag to savitzky-golay filters to keep backwards compatibility but also to provide ability to output the correct number of attributes (misses last one in unfixed version).
Changes
Any multi-page pane (e.g., the list with flows in the Flow editor) now allows moving items up/down using the keyboard: ALT+Up/Down.
The GenericArrayEditor now has a right-click popup menu for the list for copying command-lines to the clipboard.
-
adams-core:
The LaunchTee and LaunchTrigger control actors now allow limiting the number of threads running concurrently.
The Display sink can limit the number of displayed lines now.
Added the "bringToFront" option to the Breakpoint control actor to make the user aware of that a breakpoint was triggered (off by default)
The Time flow execution listener can output the table to a CSV file now.
The right-click popup menu in the Flow editor now offers to copy storage and variable names to the clipboard under Copy (more).
Actor processors that generate graphical output in the Flow editor can be rerun now via the "Rerun" button at the bottom right of the output.
upgraded mysql-connector-j to 9.2.0
the About dialog now uses a searchable/sortable table to make it easier to navigate
The StringReplace transformer now has the useDotAll option which allows matching across multiple lines.
The TryCatch control actor can leave the source actor's full name/error type out of the combined message.
adams-event: added the SubProcessEvent standalone and its class hierarchy for processing data from trigger events.
adams-imaging: The ConfusionMatrix image segmentation container operation now allows specifying a custom name for the unlabeled pixels.
adams-json: upgraded json-smart to 2.5.2 to address CVE-2024-57699
-
adams-pdf:
upgraded icepdf to 7.2.2 and pdfbox to 3.0.3
added tools menu to PDF Viewer for extracting: pages, text, images
The Image PDF proclet now allows specifying the type of scaling to apply: SCALE_TO_FIT (default) and SCALE_PERCENT.
adams-redis: upgraded lettuce-core to 6.5.5.RELEASE to address CVE-2025-25193
adams-rsync: upgraded rsync4j to 3.3.0-3
adams-spreadsheet: The Spreadsheet file viewer now can set optimal widths or specific columns widths in a spreadsheet via the main menu (can also be applied to all currently loaded spreadsheets).
adams-applications: The Debian packages and Docker images now use Java 17.
-
adams-weka and adams-weka-lts:
Added the NUMBER_TOTAL evaluation statistic to retrieve the total number of instances used in the evaluation.
Added support for prediction to the followng PLS algorithms: KernelPLS, NIPALS, OPLS, PRM, SparsePLS, VCPLS.
-
adams-spectral-2dim-core:
The FieldInstanceGenerator now has the prefix option that gets applied to the attribute names.
The MultiSpectrumRemove transformer is now deprecated, instead MultiSpectrumOperation in conjunction with Remove should be used.
adams-webservice-core: upgraded cxf-core to 3.6.6 to address CVE-2025-23184
Additions
-
adams-core:
Added the JAIEximplicitImageWriter which offers more control over format-specific output parameters.
The GetMapKeyValuePairs outputs all key/value pairs of the map as Object arrays of length two.
Added new post-processors for the TryCatch control actor: MultiErrorPostProcessor, RemoveExceptionPrefix, RemoveStackTrace.
-
adams-weka and adams-weka-lts:
Added a Preview browser plugin for displaying classifier evaluation summary text files as table.
Added the PLSRegressor Weka classifier that can make use of a wider range of PLS algorithms than PLSClassifier.
-
adams-imaging:
The Object annotation and Image segmentation interfaces now have an Export tool that allows saving the current view as an image (png or jpg).
Segment anything 2 support has been added to the Object annotation/Image segmentation interfaces as SAM2 tool. This tool does not require any running Docker images.
Added the SimplifyPolygons object filter, which can reduce the number of points used from model-generated polygons significantly.
adams-imaging-djl: New module utilizing the Deep Java Library, initially only for offering Segment Anything 2 annotating support in the ImageSegmentationAnnotator and ImageObjectAnnotator transformers.
adams-jep-weka and adams-jep-weka-lts: new modules that makes Python available in Weka using the Jep library.
adams-weka and adams-weka-lts: added the WekaInitializeScriptedClassifiers to prepare ScriptedClassifier instances in storage for making predictions using this actor as the flow context.
adams-spectral-2dim-core: added the MultiSpectrumOperation transformer that applies the specified operation, removing spectra based on type or outliers.