Connectome Workbench v2.0.0 Released

Author: Jenn Elam
Published: Jun 17, 2024

Announcing the release of a new major version of Connectome Workbench (WB) brain visualization and analysis software with the addition of significant new features such as new view modes (histology, MPR volume) and various accumulated changes/bug fixes since the previous release. Existing features and UI remain largely unchanged. Full list of changes below. 

The Workbench distribution, available for 64-bit Linux, Mac OSX, and Windows includes wb_view, a GUI-based visualization platform, and wb_command, a command-line program for performing a variety of algorithmic tasks using volume, surface, and grayordinate data.  Please note that wb_command must be run from a terminal window (not double-clicked on Mac or Windows).

The Workbench v1.5 Tutorial and the Workbench Guide to Annotations are compatible with v2.0.0 and available at The WB v1.5 tutorial data and the HCP 1200 Group Average Atlas data are available to download on the BALSA database. Access to both datasets requires a BALSA login and acceptance of the HCP Open Access Data Use Terms. 

Download the WB v2.0.0 source code from GitHub. Under v2.0.0, click the “Source code (zip)” or “Source code (tar.gz)” button.

Discussion of Connectome Workbench usage, bugs, and features can be posted to the hcp-users discussion list


Changes in Workbench v2.0.0

wb_view Major New Features

- macOS version now available in DMG format.  macOS version is now universal binary (contains executables for both Intel and Apple Silicon).

- Added Edit Samples Mode

- Added Multi-Planar Resolution (MPR) volume drawing mode

- Added reading and display of CZI (Zeiss) files. CZI files are displayed as "Media".  Add new "meta-czi" format support that combines display with distortion correction of multiple CZI files that are displayed as "Histology".

wb_view Minor New Features

- Added ability to order volume montage slices by ascending or descending offset from first slice.

- Display volume data over histology slices.

- Added opacity to volume surface outlines.

- Added “depth” (a slab in millimeters to volume surface outlines.

- Added yoking of MPR volume slices to histology slices.

- Added a volume surface outline that clips a surface.

- Added reading of meta-image files (very similar to meta-czi files).

- Added “Undo” button to Tile Tabs Configuration dialog that is used to undo replacement of the manual configuration.

- Added a timeout used when reading CIFTI data from a web server to prevent wb_view from hanging when the server is not responding or very slow.

- Added an Undo button for re-locking the aspect ratio.

- Removed some menu items Start Dictation and Emoji that were automatically added by Qt or Apple).

- Enabled drawing of matrices where one, but not both, dimensions are very large.

- Parcel Series as Dynamic Connectivity; Added nodemean, Fisher-Z, and Covariance options to all dynamic connectivity files

- Added wb_command -volume-components-to-frames command, to deal with complex/rgb type.

- Added palette SPECIAL-RGB-VOLUME that displays a multi-channel volume file as RGB coloring. Added metadata and editor to annotations.

- Added a "Recent Scenes" menu to the Toolbar's Scene (suitcase icon) button to simplify loading the five most recently loaded scenes.

- Display large sdseries files as histogram and matrix.

- When uploading to BALSA, send the scene file's Study ID and all Scene IDs to BALSA so that BALSA can check if any of the Scene IDs need replacement.  If any Scene IDs do need to be replaced, BALSA returns new Scene IDs that wb_view updates in the scenes.

- Added control of font height on montage slices with a spin box on the XYZ menu.

- Added new surface drawing type "Cut Edges" (on surface properties dialog) that only draws edges that are attached to one triangle.  It can be used to draw only the outline of a flat surface.

- Updated slice scrolling with mouse so that one slice is scrolled for every 4 (8 on high DPI screens) pixels the mouse moves vertically.  This allows the user to move by a single slice by moving the mouse slowly or many slices by moving the mouse quickly.

- Region (zoom) selection in Histoloy, Media, and Volume displays by dragging mouse to select a rectangular region. 

- Improvements in Voxel Editing's Create Volume Dialog.

- Added display of Foci on Histology slices.

- Added an "UnLock" button to prevent improper editing of BALSA Scene ID: Unlock button with warning dialog has been added to Edit Scene Dialog (and Add/insert/Replace Scene dialog).

- Improvements to clipping planes user-interface.

- If a duplicate file is loaded (same file loaded a second time), the file's name is modified with an underscore followed by a number and this sets the file's modified status.

- Suppress diagnostic message "Populating font family aliases..." that occurs on MacOS in Qt6.

- Modified commands -show-scene and -scene-image-capture.  If Workbench is built without Mesa3D, the commands will start but exit with an error message indicating that the commands will not run due to the lack of Mesa3D when the software was compiled.  Previously, a command not found message was printed.

- When a scene is created, include the Workbench Version, Date and Time, Commit Date, and Commit Version in the SceneInfo section of the Scene XML.

- Fixes and updates to wb_command -scene-file-update.  For removal of a file by name, fixed removal of a file that does not exist.  Added new option "-remove-missing-files" that removes files that are in spec file but do not exist.  Allow user to specify parameters in any order but process commands in proper order (remove files before adding; update palettes after adding).  Allow command to complete even if there are errors in any of the operations and print error messages but allow command to abort if new option "-error" is specified.

- When file information command is run on a scene file, list the base path type, custom base path, extract directory, BALSA Study Title, and BALSA Study ID.

- Allow -file-information to return more informative errors.

- Added option for non-spherical resampling surfaces to basic surface based resampling commands.

- For oblique volume slice drawing, added two options to the Develop tab on the Preferences Dialog.  (1)  Oblique Interpolation Type allows the user to change the voxel interpolation type in order to prioritize faster drawing time or better quality volume slice drawing.  (2) Oblique Voxel Scaling allows the user to change the size of "pseudo voxels" used when drawing voxel slices.

- Added support for macOS High-DPI displays.  In some instances, the graphics on macOS may occupy only the bottom-left quadrant.  A control in Preferences to force High-DPI support on.

- Allow copying and pasting of multiple annotations.

- Added Edit Scene Name/Description Without Needing to "Replace" Scene: Added "Edit..." button to Scene Dialog.  When clicked, it allows the user to edit the name and/or description of the selected scene without having to recreate the scene.

- Update for compatibility with Qt 6.  Qt 6 is required for compiling on macOS Apple Silicon.  Usage of deprecated code has been removed/replaced.

- Improvements to image panning and zooming.

-  -scene-capture-image replaces the deprecated -show-scene.

- Added editing of tile tabs configurations.

- Added polylines and polygons to Annotations.


wb_view Bug Fixes

- Fixed problem with MPR slices “jumping” if slices were selected and there were rotations.

- Fixed issues with entering and exiting both Full Screen and Maximize window modes.

- Fixed Zip Scene File bug that occurred when the scene file contained the base path type=CUSTOM but the custom base path was empty.

- Palette Mapping Fix: In Full Mode, data most negative, zero, and most positive, are mapped to -1, 0, and 1 in the palette.  The data coloring code was mapping the least negative and least positive values to palette zero which was incorrect when the least negative and/or least positive data values were not zero.  This has been corrected so that data zero is mapped to palette zero.

- Possible fix for BALSA access when computer has a Proxy setup.

- When volume identification, use stereotaxic coordinate at mouse; no longer moves coordinate to voxel center.

- wb_command -scene-file-relocate fix for relative path to scene file.

- Fixed crash for volume files with large dimensions.

- Fixed saving of volume surface outline when saving to a sceneFix for cropping image with Image Capture Dialog.

- Fixed orthogonal drawing of volume slices for an SLA oriented volume file with non-uniform voxel spacing.

- When the coordinate (0, 0, 0) does not map to a valid voxel in the underlay volume, set the selected voxel coordinate to the middle of the volume when user clicks ORIGIN button in the toolbar.

- If the OpenGL version test fails while running wb_command, indicate that this may occur if Virtual GL is enabled and that Virtual GL if running, must beabled so that the Mesa3D OpenGL libraries are used.

- Fixed scene restoration of scale bar and problems with scale bar not appearing.

- When copying palette settings to other maps/files, also copy the histogram settings.

- Fixed a stack overflow runtime error in FTGL. 

- Fixed chart axes so that ticks can be displayed even if the numeric values are off.


wb_command Changes to existing behavior

- redhat/centos libstdc++ renamed to disable it, as it seemed to cause problems more often than solve them.

- -cifti-palette with -column starts with the settings of that column, previously started with the settings of the first column.

- -*-reduce accuracy increased for STDEV, VARIANCE, and related.


wb_command New features

- extrapolation option in -volume-dilate.

- improve speed/memory of -cifti-average and -cifti-merge, particularly on single-map files.

- command line syntax checks before loading files.

- sinc function in -*-math.

- allow surface resampling to use non-spherical surfaces.

- -volume-components-to-frames for splitting complex/rgb nifti types.


wb_command Bugfixes

- volume dilate memory usage.

- volume gradient using an roi occasionally output a nonsense value.

- -border option of -border-to-vertices.

- -volume-capture-plane no longer uses transparency.

- provenance info blank.

- -cifti-replace-structure -volume error.

- smb/cifs compatibility enhancement.

- -cifti-palette didn't work on types other than dscalar, pscalar.

- -*-reduce -exclude-dev options made more robust to tiny values.

- -covariance with roi options in -cifti-correlate didn't work.

Notes on launching Workbench: (1) wb_command must be run from a terminal window (not double-clicked on Mac or Windows); (2) wb_view may crash if used with a remote desktop due to problems with Xcb and OpenGL in the remote desktops.  VirtualGL works for some users.  Even if wb_view runs in a remote desktop, performance may be poor as they often use software implementations of OpenGL.