Research Ideas and Outcomes : Methods
|
Corresponding author: Christopher R Madan (madanc@bc.edu)
Received: 04 Sep 2016 | Published: 08 Sep 2016
© 2016 Christopher R Madan.
This is an open access article distributed under the terms of the Creative Commons Attribution License (CC BY 4.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited.
Citation: Madan C (2016) Improved understanding of brain morphology through 3D printing: A brief guide. Research Ideas and Outcomes 2: e10398. doi: 10.3897/rio.2.e10398
|
Brain morphology can provide insights into inter-individual differences. In the present guide, we outline the steps for generating a print-ready 3D model of brain structures from a standard T1-weighted structural MRI volume. By improving our understanding of brain morphology, we hope to enhance teaching and scientific communication, as well as aid in the development of novel measures of brain morphology.
The present guide details the steps for generating a print-ready 3D model of brain structures from a standard T1-weighted structural MRI volume.
brain morphology; 3d printing; structural MRI
Recent research has demonstrated that shape-related properties (i.e., morphology) of the brain can be useful in characterizing inter-individual differences (e.g.,
FreeSurfer (http://freesurfer.net/fswiki) (
After the FreeSurfer pipeline has been run, the remaining steps can be executed within a few minutes, provided the necessary programs are already installed. Nearly all of these remaining steps can be executed via a command-line interface, with the commands listed in
Code
1 2 3 4 5 6 7 8 9 10 11 12 13 |
mg=/Applications/Research/imaging/meshgeometry/meshgeometry_mac ml=/Applications/meshlab.app/Contents/MacOS/meshlabserver td=/Applications/Research/imaging/vcglib/apps/tridecimator/tridecimator
f=rh.pial $mg -i $f -centre -o $f.ply $td $f.ply $f.dec.ply 100000 $ml -i $f.dec.ply -o $f.dec.stl
f=lh.pial $mg -i $f -centre -o $f.ply $td $f.ply $f.dec.ply 100000 $ml -i $f.dec.ply -o $f.dec.stl |
First, the cortical surface files (lh.pial and rh.pial) are converted to a generic mesh format (.ply) using meshgeometry (https://github.com/r03ert0/meshgeometry). As an example, resulting ply files are provided as supplemental here (
For 3D printing, meshes usually need to be 'repaired' to ensure that there are no holes or other issues with the mesh structure (cf. https://library.ualberta.ca/services/3dprinting/preparing-3d-model). This repair process can be readily accomplished using the online version of Netfabb (https://netfabb.azurewebsites.net), though a local version can instead be installed (https://www.netfabb.com/products/netfabb-basic).
(Also see http://www.shapeways.com/tutorials/how_to_use_meshlab_and_netfabb.)
The resulting files (.stl) are now print-ready.
The code for converting and decimating the meshes was modified from Roberto Toro's qcsurf project (https://github.com/r03ert0/qcsurf; also see https://github.com/cMadan/brain3d). Information for repairing meshes to make them print-ready was inspired by a tutorial from the University of Alberta Library website (https://library.ualberta.ca/services/3dprinting/preparing-3d-model). The 3D models were printed by the University of Alberta Libraries.
CRM is supported by a fellowship from the Canadian Institutes of Health Research (FRN-146793).
Compiling tridecimator
To compile tridecimator, you need to run two commands (from inside the vcglib/apps/tridecimator directory):
[1] qmake tridecimator.pro
This should generate a few files, including 'Makefile'.
[2] make
You should now have 'tridecimator' (no file extension) – this is the actual executable program. (I get 1 warning when I compile, but this is fine.)
If you don't have qmake installed, see https://github.com/thoughtbot/capybara-webkit/wiki/Installing-Qt-and-compiling-capybara-webkit.