Keywords

1 Introduction

We are at the verge of a new exciting era of personalized medicine based on patient-specific scientific computations. These computations usually involve solving models described by boundary value problems of partial differential equations (PDEs). The most common and useful are models of biomechanics, bioheat transfer and bioelectricity.

In this paper, we are especially interested in patient-specific biomechanics as a tool to compute soft tissue deformations for operation planning and intraoperative guidance. While the methods for patient-specific biomechanical model generation [28] and solution [11, 12] exist, they are very sophisticated and require very high level of specialist expertise from the users. Therefore, the objective of the work described here is to create an automatic framework so that these sophisticated computations can be conducted in the clinic by a non-specialist.

We integrated the framework to automate the process of generating and solving patient-specific biomechanical models into 3D SLICER (http://www.slicer.org/), an open-source software for visualization, registration, segmentation and quantification of medical data developed by Artificial Intelligence Laboratory of Massachusetts Institute of Technology and Surgical Planning Laboratory at Brigham and Women’s Hospital and Harvard Medical School [6].

We demonstrated the application of our framework using a case study of craniotomy induced brain shift obtained from our collaborator’s database (Computational Radiology Lab, Harvard Medical School), used by us previously [7, 23, 30]. The paper is organized as follows: In Sect. 2, we presented the proposed framework. In Sect. 3, we showed our results based on the case study. Section 4 contains discussion and conclusion.

2 Proposed Framework

The four main steps of the proposed framework workflow (see Fig. 1) are as follows:

Fig. 1
figure 1

Workflow diagram for patient-specific biomechanical interpretations of organ deformations

  1. 1.

    Image Pre-processing

    Determining patient-specific geometry from medical images

  2. 2.

    Model Construction

    Patient-specific computational grid generation

    Defining boundary conditions and external load

    Assigning patient-specific material properties to brain tissues

  3. 3.

    Model Solution

    Computation of tissue deformations using Meshless Total Lagrangian Explicit Dynamics Algorithm (MTLED)

  4. 4.

    Image Warping, using the computed deformation field

The details of each step are given in Sects. 2.12.3. Image warping is done with example case study under Sect. 3.

2.1 Image Pre-processing

2.1.1 Determining Patient-Specific Geometry from Medical Images

To obtain the geometry of the brain, the skull needs to be removed from the preoperative MRI image. We remove the skull and extract the brain volume using FreeSurfer software (http://surfer.nmr.mgh.harvard.edu/) (see Fig. 2). It is an open source software suite for processing and analyzing human brain medical resonance images (MRIs) [4]. We wrote Python-based scripted modules within 3D Slicer to execute all the remaining steps.

Fig. 2
figure 2

Results of skull stripping for patient-specific preoperative MRI image. a Preoperative MRI image, b Skull-stripped MRI image aligned with the preoperative MRI image

After extracting brain volume, we use threshold filter [25] of 3D Slicer to select the brain parenchyma, see Fig. 3a. We created a three dimensional surface model based on the selected region using model maker module of 3D Slicer, see Fig. 3b [17].

Fig. 3
figure 3

Results of patient-specific brain geometry extraction from FreeSurfer output. a Results of threshold filter in 3D Slicer; b Surface visualization of the problem geometry produced by surface model maker of 3D Slicer with 45% value of Laplacian filter

Information about the location and extent of craniotomy is necessary for biomechanical modeling of neurosurgery. We segmented the portion of craniotomy region and created a surface model using this segmented portion (see Fig. 4) and used it to select the brain craniotomy region on the brain surface model. We define external loads on the surface of brain selected through craniotomy segmentation.

Fig. 4
figure 4

a Craniotomy region segment, b 3D model of the patient-specific craniotomy region shown together with the entire patient-specific brain model

2.2 Model Construction

2.2.1 Patient-Specific Computational Grid Generation

In our method, we use a tetrahedral background integration grid that conforms to the problem geometry [11]. The volumetric integration (a step in the MTLED solution method, see Sect. 3) is performed over this background integration grid (Gauss integration with four Gauss points per tetrahedron) and displacements are calculated over the cloud of points formed by the nodes of the tetrahedra, Fig. 5. Creating such background grids is fully automatic (i.e. does not require any manual correction). It is very important to note that our tetrahedral integration grid is NOT a finite element mesh and does not need to conform to strict quality requirements demanded by the finite element method.

Fig. 5
figure 5

Meshless discretization for simulation of craniotomy induced brain shift. In this example we have 12,014 nodes (black dots) and 28,915 tetrahedral integration cells with four integration points (green dots) per cell

Our framework uses ACVD (Surface Mesh Coarsening and Resampling) [27] to construct a patient-specific triangulated brain surface (see Fig. 6b) which is then used for generating a 3D integration grid filled with tetrahedral integration cells (see Fig. 6c) using Gmsh [8]. The triangulated surface is also used for defining contacts. All these steps were implemented within 3D Slicer and are automatic.

Fig. 6
figure 6

a Patient-specific tetrahedral integration grid with triangular surface mesh, b Example of triangulated patient specific brain surface mesh model, c Example of patient specific brain volumetric integration grid filled with tetrahedral cells (geometry conforming tetrahedral cells based biomechanical model)

Similarly, we created a patient specific craniotomy region surface model. We used this craniotomy surface to define the fiducials (3D points in 3D Slicer). We used these fiducials to select the nearest triangulated brain cells exposed to craniotomy region. We applied our nearest neighbor search algorithm in 3D Slicer, which takes into consideration the problem geometry and the craniotomy region fiducials.

We defined loaded nodes (see Fig. 7) based on the selection of triangulated brain cells.

Fig. 7
figure 7

Loaded nodes (orange dots) on the surface of the patient-specific brain exposed by the craniotomy

2.2.2 Defining Boundary Conditions and External Load

2.2.2.1 Boundary Conditions

The stiffness of the skull is several orders of magnitude higher than that of the brain. Therefore, to define the boundary conditions for nodes other than displaced nodes on the exposed surface of the brain, a contact interface is defined between the rigid interface model of the skull and the deformable brain model. Nodes on the brain surface could not penetrate the skull, but could slide without friction or separate from the skull as described in [14].

We created a skull interface using the triangulated surface cells generated as described in Sect. 2.2.1 to define contacts automatically on the surface of patient specific brain biomechanical model.

2.2.2.2 External Load

Load can be defined either through forces (prescribing natural BCs) or displacements on the boundary (prescribing essential BCs). It is rather difficult to make patient-specific measurements of forces acting on the brain during surgery but there are well-established methods for determining the displacements on the boundaries from images. Furthermore, if we use forces, to accurately compute intraoperative deformations, we need accurate information about patient-specific material properties of the brain tissues. As there is no commonly established method to accurately determine patient-specific material properties of soft tissues from radiographic (MR, CT) images, we define the load through imposed motion of essential BCs. This makes the computed deformations only very weakly dependent on uncertainty in patient specific information about tissue material properties [21, 22, 29].

To define intraoperative loading, intraoperative information is required such as measurement of the current position of the exposed surface of the brain. This can be done through cameras [18] and a pointing tool of a neurosurgical station [26].

2.2.3 Assignment of Patient-Specific Material Properties: Fuzzy Tissue Classification

Material properties of the intracranial constituents are assigned to integration points within the problem geometry through fuzzy tissue classification [1] algorithm. Hard segmentation of brain tissues is difficult to automate [5] and therefore it is incompatible with clinical workflows. Therefore, we integrated a fuzzy tissue classification algorithm [16, 32, 33] into our framework to automatically assign material properties to brain tissues. Slight inaccuracies of tissue properties assignment do not affect the precision of intraoperative displacement prediction because the external load is defined though prescribed essential boundary condition motion rendering the problem Dirichlet-type [21, 32, 33].

In this framework, a neo-Hookean constitutive model (see Table 1) was used for brain tissues and for tumor with Poisson’s ratio of 0.49, whereas 0.1 was used for the ventricles [29, 30]. This simple model is used as the simulation belongs to the special class called displacement-zero traction problems (or Dirichlet-type problems) whose solutions are known to be weakly dependent on the unknown patient-specific material properties of the tissues [3, 24, 29].

Table 1 Material properties of biomechanical model

2.3 Model Solution

2.3.1 Computation of Tissue Deformations: Meshless Total Lagrangian Explicit Dynamics Algorithm

MTLED is a numerically robust and accurate meshless algorithm [9, 11]. The method computes deformations at an unstructured cloud of nodes used to discretize the geometry instead of elements as in finite element methods, which requires a high quality mesh of problem geometry [28]. The proposed algorithm uses explicit time integration based on the central difference method. Unlike implicit time integration, this does not require solving systems of equations at every time-step making the method robust in performing calculations [9].

MTLED was evaluated extensively in computing brain deformations on problem geometry based on patient specific MRI data. The simulation results presented were within limits of neurosurgical and imaging equipment accuracy (~1 mm) [11, 20]. The method is also capable of handling very large deformations as well as cutting [10].

Meshless methods are preferred as finite element methods, due to excessive element distortion, are unreliable in scenarios where human soft tissues undergo very large strains in the vicinity of contact with a surgical tool while MTLED gives reliable results for compressive strains exceeding 70% [11].

We developed a separate module which integrates the MTLED solver within 3D Slicer. The MTLED solver uses three input files automatically generated using our framework, which are: (1) computational grid information file, (2) material properties and (3) external load information file. All remaining parameters of MTLED are set by default (see Table 2) and are based on the experience obtained through numerous applications in computing soft continua and soft tissue deformations. The end user can change these parameters as per requirements but we recommend that a non-specialist user leave them unaltered.

Table 2 Default parameters list for MTLED simulator

3 Craniotomy-Induced Brain Shift Case Study

The image preprocessing was conducted with FreeSurfer and 3D Slicer threshold filtering as explained in Sect. 2.1. The automatic generation of patient-specific computational grid, as explained in Sect. 2.2, resulted in 12,014 nodes and 115,660 integration points (see Figs. 5 and 6c). Contacts are defined as described in Sect. 2.2.2.1. Material properties of brain tissues are defined using fuzzy tissue classification as explained in Sect. 2.2.3.

For the purpose of this case study, we defined external load using a transform obtained through using region of interest (ROI), which is brain craniotomy region in both the preoperative and intraoperative MRI (see Fig. 8a, b). We used crop volume module in 3D Slicer to obtain the preoperative segment (PS) and the intraoperative segment (IS). We used Affine with twelve degree of freedom (12 DOF) and BSpline with greater than twenty seven degree of freedom (>27 DOF) algorithms from 3D Slicer General Registration Module to obtain a transform that aligns PS to IS. We applied this transform on loaded nodes selected on the brain surface to get the transformed nodes (see Fig. 8c). We defined external load based on the information of displaced nodes (loaded nodes) in 3D plane before and after the transform, thus prescribing external load through essential boundary conditions.

Fig. 8
figure 8

Affine (12 DOF) and BSpline (>27 DOF) transform results generated by using General registration module within 3D Slicer. a Region of interest (ROI) preoperative segment (PS) aligned on top of intraoperative segment (IS) before Bspline transform to show the brain shift (see dark grey area indicated by an arrow, which is the difference between preoperative and intraoperative MRI), b results of Bspline transform on images, and c Blue dots are pre-transformed fiducials and green dots indicate transformed fiducials obtained from applying the Bspline

We used nodal displacements computed by MTLED (see Fig. 9) in the scattered transform module [15] in 3D Slicer to obtain the transform to warp the preoperative MRI image into the intraoperative configuration of the patient’s brain, see Fig. 9a.

Fig. 9
figure 9

Results of the deformation field extracted from deformed model generated by MTLED. a Warped preoperative (Predicted Intraoperative) MRI with deformation field extracted using scattered transform from deformed model generated by MTLED, b Intraoperative MRI

We used the warped MRI to identify contours of ventricles and compared them with contours of ventricles from the intraoperative MRI image. We performed ventricle segmentation using a threshold filter [25] and an island selector filter [6] in 3D Slicer for both the warped MRI and the intraoperative MRI. We present ventricle contours comparison without any manual corrections or editing (see Fig. 10). Figure 10 confirms the acceptable accuracy of the presented modelling approach.

Fig. 10
figure 10

Intraoperative MRI overlaid with contours (green lines) of the deformed ventricles as generated by MTLED algorithm. The yellow lines represent the ventricle contours of the intraoperative MRI extracted using the threshold filter and the island selector filter in the 3D Slicer

The simulation presented in this study was performed on a HP ProBook with Intel Core i7 2.7 GHz processor and 8 GB of physical memory. The calculation time for generating automatically a patient-specific computational model with all details, including patient-specific geometry construction, craniotomy region selection, external loading and defining contacts was 156.87 s. The execution time of the MTLED solution algorithm (i.e. obtaining the deformed model) was 258 s. The time for warping the preoperative image with the deformation field extracted from the model was 0.7 s.

4 Discussion and Conclusion

In this paper we described the framework for automated solution of computational biomechanics problems described by partial differential equations of solid mechanics. We also demonstrated the effectiveness of this framework using a computational biomechanics of the brain example. The framework is integrated within 3D Slicer. It allows automatic generation of patient-specific geometry along with defining the craniotomy region, external load, material properties and boundary conditions. We obtained a solution to this model using an MTLED-based suite of algorithms which is also integrated into 3D Slicer. The results (see Fig. 10) of the automatic simulation show good agreement with the ground truth provided by the intraoperative MRI.

A craniotomy induced brain shift is simulated with 12014 nodes (i.e. ~36000 differential equations are solved) and 28915 integration cells. The patient specific biomechanical model construction, which involves defining the patient specific brain geometry from a preoperative MRI image, patient-specific tetrahedral integration grid generation, defining boundary conditions and external loads, and assigning material properties to brain tissues, took 156.87 s of computer processing time. The solution of the model using our MTLED algorithm took 258 s and finally the image warping took 0.7 s.

These results indicate that the proposed methodology is compatible with clinical workflows and in our future work we will attempt to incorporate in operation planning and neuronavigation systems.