time for updates

Despite being a very busy start of term last week, I managed to get in a number of changes. Mainly due to an upcoming collaboration with the Biology department here and being invited to talk at a workshop in August.


  • Support for OSX builds (-app) has been removed. Users can use the bin/run.sh shell script for starting ADAMS from a terminal.

  • Java code generation (eg when exporting a flow via ActorExecutionClassProducer) has seen a few readability improvements, which also makes it easy to modify the code: lists instead of arrays are being used now for assembling sub-actors; variable naming has been improved as well

  • The Multi-Explorer now copies pretty much everything apart from result histories when using the "copy" button to copy a session.

  • The FFmpeg sink was moved to the new adams-video addons module (see below)

  • Reports in the Preview Browser now have a preview text area that shows the value of the currently selected report field; useful when the value is quite long or an error message spread out over several lines.

  • The ReportDisplay sink now enables the user to use a custom entry name for the report being displaying, using a variable (eg file name)


  • A new addons module got added, aimed at video processing: adams-video

    • WebcamImage source allows you to get a live-feed from a webcam attached to the computer

    • ListWebcams source outputs the names of all the webcams attached to the computer

    • WebcamInfo outputs some information on a webcam

    • MjpegImagesSequence allows the processing of each frame from a MJPEG movie

    • MovieImageSequence allows processing of frames every X msec from a large number of movie file formats

    • TrackObjects allows you to track objects in image sequences, e.g., obtained from movies

    • TransformTrackedObject transformer allows you to transform a tracked object using a callable transformer, e.g., for blurring a face that is being tracked

    • The ExtractTrackedObject transformer extracts the tracked object as separated image for further processing, e.g., feature generation

  • The FileInUse boolean condition allows to check whether a file is currently in use by another process on the Windows platform

  • The SelectCharset source allows the user to select a character set interactively, e.g., when loading files (= encoding).

  • The adams-moa module has seen a few additions as well for regression (MOARegressorSetup, MOARegressing, MOARegressorEvaluator, MOATrainRegressor) and clustering (MOAClusterVisualization sink).


A lot of the code for processing movies, tracking objects and accessing webcams was taken from BoofCV (http://boofcv.org/) and Xuggle (http://www.xuggle.com/).