Exploring the brain connectivity with 2D neural maps

Interactive Application - Download and Tutorial



Download (application and one dataset ~80MB as of January 2011)

Run nperspective.exe. In case of an error stating that "The application is not properly configured" please download and install the "Microsoft Visual C++ 2008 Redistributable Package (x86)" available [here]. The application was only tested on Windows Vista and XP.


It is helpful to use this tutorial in conjunction with the video on the first page.

A preset configuration makes it easy to load datasets. To access the preset click on "Presets" on the top-left.

Choose the "Brain Sectional" preset and set the "Folder" property  to the "./data/brain/" directory in the distribution folder. This dataset will load in about one minute and requires approximately 1GB of free working memory. More information on how to start from a raw data file can be found at the end of the tutorial.

Once the preset loads, activate the "Viewers" tab on the top left and select "Brain Viewer" in the list below. This will bring up the toolbox for the 3D model. Activate the "Selections" group.

Adjust the size of each viewing pane by dragging on the dividing lines.

Position the mouse over the 3D model. To move the model in the xy plane, press the right mouse button and drag. To move the model along the z axes, rotate the mouse wheel (not holding any mouse button down). To rotate the model press the 'R' key; this will generate a rotation sphere which you can grab by pressing down a mouse button and rotate.

The model can also be positioned in the three orthogonal poses by pressing 'O' while the mouse is positioned over the brain model.

To select a bundle in the 2D representations, move the mouse over the axial plane. Identify the cingulum bundle, press the left mouse button and drag a line perpendicular to it. Any new selection will cancel the previous one except if the "control" key is pressed (allowing multiple selections). You will notice that a selection performed in one view is mirrored in all other views.

You can orient a brain in a position that matches one of the 2D projections by positioning the mouse over the 2D projection and pressing 'O'.

Move the mouse over the 3D model. Press 'H' a number of times. This will toggle between two viewing modes: one that shows the entire brain and one that only shows the current selection.

You can refine a selection in the 3D space. Ensure that the "2D Brush" checkbox is activated on the left menu. Change the "Selection Mode" to "Remove". Move the mouse over the 3D model, hide unselected tubes ('H'),  and drag (mouse-press+mouse-move) a line intersecting unwanted tubes.  They will change color to orange meaning they will be removed once the mouse button is released.

You can also experiment with the "Add" and "Intersect" selection modes. The "Add" mode will add unselected tubes to the current selection and will only work when unselected tubes are visible (since they are target of this operation). "Intersect" will keep in the selection only tubes that are both in the current selection and currently brushed over.

You can save a selection for future use by entering a name in the "StoreSelection" field and pressing "Set". Once several selections have been saved they can be toggled between or used in common selection operations. To toggle between them ensure that the selection mode is set to "Single Shot" (this will not aggregate selections). Otherwise, clicking on a saved selection will aggregate it to the current selection based on the selection mode (Add,Remove or Intersect). A list of selections can also be saved to a file and then used with the same dataset later.

Selections on the 3D models can also be performed with a selection spehere. Uncheck the "2DBrush" checkbox on the left. Move the mouse over the 3D model and press the left mouse button down. This will bring about a selection sphere. You can move the sphere, as you hold the mouse button down, by dragging the mouse around the screen and by using the mouse wheel or up/down keys for the Z direction. Tubes that intersect the sphere will highlighted as you keep the mouse button pressed and selected once you release the button. You can change the size of the sphere by pressing the "," and "." keys which should be placed below the "<" and ">" keys.

The "Clear" button clears the current selection while "Undo" discards the last operation.

Email jr@cs.brown.edu with any questions, comments requests for new presets etc.


Starting from scratch:

The data files that our application files describe the white matter tracts as collections of polylines. An example can be found in ./data/brain/tubes.data. The first line contains the number of tracts in the model. The rest of the file describes each individual fiber starting with the number of points describing the tract and continuing with the coordinates of those points (only the first three numbers are considered).

To interact with a brain model in the way described in this tutorial a few computations have to be performed and stored beforehand. You can use the "New Brain" preset to this purpose. It requires two parameters: the model file in the format describe in the previous paragraph and an output, cache directory. It should be noted that this computation is not optimized in our prototype application and takes a long time for large datasets of around or over 5000 tubes (3-4 hours). Once the "New Brain" presets load the application should be restarted and used as described in this tutorial. To become familiarized with this process we provide a small model ./data/tubes_raw_small.txt.