Brain Innovation

support portal

For the most part, this release adds only a couple of smaller features and some, at this time, experimental code. Among those are: ICA (currently deployed for FMR and VTC files) and a formula computation engine for VMP maps, vmp.ComputeFormula. 

This latter feature works along the lines of spm_imcalc and the combine maps dialog of BrainVoyager. It allows to address single maps (VMPData field) via the #x and $x tokens in formulas (resolved to vmp.Map(x).VMPData; but more importantly, it automatically concatenates a series of maps on the 4th dimensions, as in expressions such as #x:s:y, where x is the first map to select, s is the step size and y is the last map. If a VMP object contains several subjects' maps (contrasts, etc.) it is very easy to obtain a one-sample or two-sample t-test with this approach.

Reverting the logic of having two separate folders (one addtional folder was used for "files" used by the toolbox), binary content has now been integrated into the _files sub-folder, which can be as easily moved between toolbox snapshots. 

Also, a new sub-field (RunTimeVars) has been added to all objects (this field is created automatically by the underlying I/O functions), which allows to store additional information with objects (e.g. contrasts with GLMs, etc.). The actual data is stored in a .mat-file with the same name (given it matches the required layout internally, any non-matching .mat-file will not be overwritten!) This however means that this shouldn't be used for large amounts of data!! To store the content of this field, use the .SaveRunTimeVars method on any object. The information stored will automatically be re-loaded when the object is read from disk.

As the biggest changes, the toolbox now has a much more functional browser for VMR/VMP files (BVQXtool), which can be invoked by calling the OBJECT.Browse; method (for instance on a loaded VMR file) or by simply calling BVQXtool (which will check if a VMR is loaded and, if that is not the case, load the colin.vmr file that comes with the toolbox installation). Also, the toolbox's installer (bvqxtools_postinstall) now shows a dialog box (splash screen) during the installation which gives the names of people who have helped in making this toolbox possible, so check it out! ;) 

Several new concepts have been introduced (although still considered in an early stage; so upgrading is recommended mostly for people requiring one of the new features!): The BVQXfile class help has been altered so that using the .Help method on any given object gives a list of methods available in a short form (one line per method) and the .Help('methodname') call gives the details; with this two-layered logic, it should be easier to find useful methods for objects. Additionally, some methods have been added to the ROOT (singleton) object (accessible with root = BVQXfile;), which gives a rudimentary Documents interface, comparable to Visual Basic, see below.


This release is made to allow users of the newly released version of BrainVoyager QX (v2.0+) to read and write the new file versions (VTC, etc.). Additionally, some minor bugs have been removed.


In those files added after February 2008, the relation of the author wrongly said "SCAN lab" instead of "SCAN Unit", which has been corrected (affecting so many files that this is no "snapshot" release). Additionally, a fast up-to-4D interpolation routine (MEX) has been added. See flexinterpn and flexinterpn_method for more info. 


For the most part, functions have been cleaned and sped up again. Additionally, this version comes with an installer. After downloading and unzipping, you will find two files, one of which is an M-file that, together with the accompanying Mat-file, will install the toolbox on your harddrive.

BrainVoyager QX v1.10 has enhanced some file formats (statistical maps) and also added the SDM file format (also requiring some additional fields in the GLM file format). This release mainly copes with these changes.

Additionally, some functions have been enhanced in performance and some minor functionality has been added as well.

Due to platform specificity of MEX (compiled C-based) functions, it is required to run one batch M-file after installation, bvqxtools_postinstall. This will also make sure that the classes of the toolbox can be run. Additionally, a list of supported file formats will be printed in the MATLAB console window.

Please note that binary files (required for some of the functions) have been moved from the main toolbox directory (e.g. BVQXtools_v07c) to their own directory (BVQXtools_v07c_files), which will be automatically re-used by toolbox snapshots. This makes sure that the snapshots (versions between major releases) only needs to contain the M-files of the toolbox, not the binary files again...

For SPM2/5 users, a function has been added to resample (MNI) result maps (importvmpfromspms). To visualize results, please use the file colin.vmr in the files folder. With the surfaces (and transformation files) found in the colin folder, you can easily create rendered screenshots of your maps.

Be aware that some features have been removed from the toolbox because Brain Innovation has decided to split the toolbox into a basic toolbox, which will be made available to the public, and an add-on toolbox with additional processing routines, which are distributed only to licensed customers upon request.

Note: spreading of BVQXtools may only occur in one of its states available for download on this website. In case you receive added functions, do not share code that is not publicly available.

As of this version, the memory management of objects has changed, so that now objects are, sort of, passed "by reference" into functions. That means that if you write a function making use of a BVQXfile object, any alterations the functions does to the object will be done on the central object storage, so they will be present in the calling function as well! This is NOT the Matlab standard!

Consequently, as a side-effect, one must manually clear the storage space for objects loaded/created (although in the current release a "garbage collection" scheme is implemented, so that objects created outside of the Base Workspace are automatically removed, once the creating function is left). Unfortunately, Matlab, at this time, does not offer destructors as part of their class/object implementation, which would make this superfluous. To clear an object, use the "object.ClearObject;" method.

To prevent any unwanted object "destruction", another function has been introduced to the @BVQXfile class: bless. By calling this function on an object (as in "bless(object);"), you assure that the object will not be removed from the storage after a function is left.

Please inspect some of the new functions which demonstrate the usage of this new memory scheme (e.g. createvmr.m).

You are here: HomeBrainVoyagerAvailable ToolsMatlab Tools ≫ Release Notes NeuroElf (BVQXTools)