Target Outcome
Geometric reconstruction of a tissue of interest ready for meshing:
- as a (parametric or explicit) watertight surface representation, or
- as a solid geometry
Prerequisites
Infrastructure
MeshLab. MeshLab is an open-source, portable, and extensible system for the processing and editing of unstructured 3D triangular meshes (GPL license, see http://meshlab.sourceforge.net/).
Previous protocols
For more details, see Specifications/ImageSegmentation.
Protocols
Input
Surface representation of tissue of interest in STL format in MRI coordinate system (raw, without filtering and smoothing)
Overview
Load the desired STL into MeshLab
- Perform smoothing procedures on the STL using the parameters provided in component specific procedures. Refer to detailed directions in Smoothing Procedures as needed.
- Save the STL regularly to avoid losing previous work through program crashes.
- Perform Paired Mesh distance mapping between the RAW and processed STLs to ensure that there have been no major changes to the mesh.
- Check and Repair the STL as needed
- Export the STL. This is now considered to be an explicit surface representation of the tissue of interest processed with volume preserving smoothing.
- Repeat this process for all components.
Data input procedures
Import STL to MeshLab:
File -> 'Import Mesh...'
- Select desired STL file(s) (multiple contiguous by holding 'Shift', multiple non-contiguous by holding 'Ctrl').
- Click 'Import STL'
Data output procedures
Note: There is no “undo” in MeshLab, and the program crashes often. It is recommended to export the stl after every successful step in the process, to avoid having to repeat steps later!
EXPORT STL from MeshLab
- Select desired mesh to export from the Layer Dialog panel (see viewing options for directions to display the layer dialog)
File -> 'Export Mesh As...'.
- Name file as desired, with the '.stl' extension.
- Click 'Save'
General procedures
Smoothing Procedures (LVTIT)
The protocols for using various smoothing features in MeshLab are described here. component specific procedures provides guidelines for which smoothing parameters to use for each tissue type.
Laplacian Smoothing [L]
- Select desired mesh from the Layer Dialog panel.
Filters -> 'Smoothing, Fairing and Deformation' -> 'Laplacian Smooth'
- Set smoothing steps to 20 (or other value as per Component-Specific Procedures)
- Click Apply
- Save your work!
Surface Reconstruction: VCG [V]
- Select desired mesh from the Layer Dialog panel.
Filters -> 'Remeshing, Simplification and Reconstruction' -> 'Surface Reconstruction: VCG'
- Set 'Voxel Side', 'world unit' to a meaningful size (i.e. relative to original image resolution; e.g. for cartilage images with a resolution of 0.35 x 0.35 x 0.7 mm, use a world unit of 0.35, 0.5, 0.7 mm).
- Select 'Post Merge Simplification'.
- Click 'Apply'
Note: Save your work!
Taubin Smoothing [T]
- Select desired mesh from the Layer Dialog panel.
Filters -> 'Smoothing, Fairing and Deformation' -> 'Taubin Smoothing'
- Select 'Preview' to interactively display current smoothing parameters.
- Click 'Apply'.
Useful for:
- Smoothing vertices/nodes at sharply curved model edges.
- Correcting twisted triangles at focal points following 'Iso Parameterization'.
Notes:
- Suggested settings: Lambda = 0.5, mu = -0.5
Lambda values > 1.5 cause the mesh to jaggedly explode.
Iso Parameterization [I]
There are 2 stages to Iso Parameterization
Stage 1: Iso Parameterization
- Select desired mesh from the Layer Dialog panel.
Filters -> 'Remeshing, Simplification and Reconstruction' -> 'Iso Parameterization'
- Click 'Apply’.
If double step does not work:
- Deselect ‘Double step’
- Click ‘Apply’
Warnings:
This can be buggy, and may cause MeshLab to crash!
- This appears not to be deterministic, i.e. with the same input mesh it may or may not work (e.g. same VCG parameters to smooth prior to iso parameterization didn't work in one attempt, but did in another).
Stage 2: Iso Parameterization Remeshing
Filters -> 'Remeshing, Simplification and Reconstruction' -> 'Iso Parameterization Remeshing'
- Try default 'Sampling Rate' = 10.
- Click 'Apply'.
- If needed, iterate the last two steps, changing the 'Sampling Rate' until the desired surface triangle size is obtained.
Component-Specific Procedures
|
1. Laplacian Smoothing (Smoothing Steps) |
2. VCG Surface Reconstruction (Voxel Side) |
3. Taubin Smoothing (Lambda, mu) |
4. Iso Parameterization (Sampling Rate) |
5. Taubin Smoothing (Lambda, mu) |
Femur, Tibia |
20 |
0.7 |
0.5, -0.53 |
10 |
0.5, -0.53 |
ACL |
20 |
0.35 |
0.5, -0.53 |
3,4,5 |
0.5, -0.53 |
- = Output =
- Explicit surface representation of tissue of interest; in STL format in MRI coordinate system (processed with volume preserving smoothing)