A coupled 3D dataset and statistical shape model representing joint variations of the human scalp and skull anatomy
Authors: Danckaers, Femke, Sijbers, Jan
Type: Model
Published: 2026-07-24
Keywords: statistical shape model, skull, scalp

<h2><span class="TextRun SCXW245462796 BCX0"><span class="NormalTextRun SCXW245462796 BCX0">Overview</span></span></h2>
<p><span class="TextRun SCXW245462796 BCX0"><span class="NormalTextRun SCXW245462796 BCX0">We present a coupled 3D dataset and statistical shape model (SSM) capturing the joint anatomical variations of the human head, specifically combining the outer surface of the scalp with the inner and outer surfaces of the skull. The underlying data originates from high-resolution Magnetic Resonance Imaging (MRI) scans. To </span><span class="NormalTextRun SCXW245462796 BCX0">establish</span><span class="NormalTextRun SCXW245462796 BCX0"> dense</span><span class="NormalTextRun SCXW245462796 BCX0"> point-to-point correspondence across the multi-layered </span><span class="NormalTextRun SCXW245462796 BCX0">anatomical structures of the subject </span><span class="NormalTextRun SCXW245462796 BCX0">population, an elastic surface registration framework was deployed. </span></span></p>
<p><span class="TextRun SCXW245462796 BCX0"><span class="NormalTextRun SCXW245462796 BCX0">The shared dataset includes the dense 3D meshes of the scalp and skull surfaces, the computed mean shape, the statistical shape parameters (eigenvectors and eigenvalues</span><span class="NormalTextRun SCXW245462796 BCX0"> defining the directional modes of shape variation and quantifying the variance per mode</span><span class="NormalTextRun SCXW245462796 BCX0">) derived via Principal Component Analysis (PCA)</span><span class="NormalTextRun SCXW245462796 BCX0">, and the individual shape parameter weights (representing the </span><span class="NormalTextRun SCXW245462796 BCX0">absolute spatial </span><span class="NormalTextRun SCXW245462796 BCX0">devi</span><span class="NormalTextRun SCXW245462796 BCX0">ation from the mean shape for each subject in the database)</span><span class="NormalTextRun SCXW245462796 BCX0">. </span><span class="NormalTextRun SCXW245462796 BCX0">The q</span><span class="NormalTextRun SCXW245462796 BCX0">uality and robustness of the resulting dual-layer model are </span><span class="NormalTextRun SCXW245462796 BCX0">demonstrated</span><span class="NormalTextRun SCXW245462796 BCX0"> through standard validation metrics, including compactness, generalization ability, and specificity. </span></span></p>
<p><span class="TextRun SCXW245462796 BCX0"><span class="NormalTextRun SCXW245462796 BCX0">This combined anatomical dataset and model </span><span class="NormalTextRun ContextualSpellingAndGrammarErrorV2Themed SCXW245462796 BCX0">may help</span><span class="NormalTextRun SCXW245462796 BCX0"> researchers in biomechanical engineering, computational anatomy, and computer vision</span><span class="NormalTextRun SCXW245462796 BCX0">, for </span><span class="NormalTextRun ContextualSpellingAndGrammarErrorV2Themed SCXW245462796 BCX0">example </span><span class="NormalTextRun ContextualSpellingAndGrammarErrorV2Themed SCXW245462796 BCX0"> as</span><span class="NormalTextRun SCXW245462796 BCX0"> a foundational resource for population-based Finite Element (FE) </span><span class="NormalTextRun SCXW245462796 BCX0">modelling</span><span class="NormalTextRun SCXW245462796 BCX0">, headgear design, and ergonomics.</span></span><span class="EOP Selected SCXW245462796 BCX0"> </span></p>
<h2><span class="EOP Selected SCXW245462796 BCX0">Dataset structure and file contents</span></h2>
<p>The <code><span class="hljs-code">combined_head_ssm.vtk</span></code> file contains a synchronized triangular surface mesh network representing three nested anatomical boundaries:</p>
<ol>
<li>The outer surface of the scalp</li>
<li>The outer surface of the skull (ectocranial) + the inner surface of the skull (endocranial)</li>
</ol>
<p>The template geometry consists of a fixed topology with <span class="hljs-strong">189,430 total interconnected vertices,</span> where the base coordinate positions (x, y, z) define the population mean shape.</p>
<p>All statistical shape features and individual reconstruction vectors are embedded directly as dense 3D point data arrays linked to the vertices of the mean shape. Rather than separating individual subject meshes into disjoint files, the training population data and the model mechanics are accessible via specific embedded data arrays.</p>
<p>Furthermore, the separate models <code>model_bone.vtk</code> (9,992 vertices) and <code>model_skin.vtk</code> (44,911 vertices) are also provided. These standalone files offer lighter, dedicated meshes for applications requiring only skull or scalp geometry, while retaining the same embedded statistical point data array structure as the combined model.</p>
<h2>Embedded Point Data Arrays</h2>
<table class="Table Ltr TableWordWrap SCXW19622730 BCX0">
<tbody class="SCXW19622730 BCX0">
<tr class="TableRow SCXW19622730 BCX0">
<td class="FirstRow FirstCol AdvancedProofingWhite ContextualSpellingWhite SpellingErrorWhite SimilarityReviewedWhite SimilarityUnreviewedWhite AddInCritiqueRedWhite AddInCritiqueGreenWhite AddInCritiqueBlueWhite AddInCritiqueLavenderWhite AddInCritiqueBerryWhite LowContrastShading SCXW19622730 BCX0">
<div class="TableCellContent SCXW19622730 BCX0">
<div class="OutlineElement Ltr SCXW19622730 BCX0">
<p class="Paragraph SCXW19622730 BCX0"><span class="TextRun SCXW19622730 BCX0"><span class="NormalTextRun SCXW19622730 BCX0">Array name</span></span><span class="EOP SCXW19622730 BCX0"> </span></p>
</div>
</div>
</td>
<td class="FirstRow AdvancedProofingWhite ContextualSpellingWhite SpellingErrorWhite SimilarityReviewedWhite SimilarityUnreviewedWhite AddInCritiqueRedWhite AddInCritiqueGreenWhite AddInCritiqueBlueWhite AddInCritiqueLavenderWhite AddInCritiqueBerryWhite LowContrastShading SCXW19622730 BCX0">
<div class="TableCellContent SCXW19622730 BCX0">
<div class="OutlineElement Ltr SCXW19622730 BCX0">
<p class="Paragraph SCXW19622730 BCX0"><span class="TextRun SCXW19622730 BCX0"><span class="NormalTextRun SCXW19622730 BCX0">Data type</span></span><span class="EOP SCXW19622730 BCX0"> </span></p>
</div>
</div>
</td>
<td class="FirstRow AdvancedProofingWhite ContextualSpellingWhite SpellingErrorWhite SimilarityReviewedWhite SimilarityUnreviewedWhite AddInCritiqueRedWhite AddInCritiqueGreenWhite AddInCritiqueBlueWhite AddInCritiqueLavenderWhite AddInCritiqueBerryWhite LowContrastShading SCXW19622730 BCX0">
<div class="TableCellContent SCXW19622730 BCX0">
<div class="OutlineElement Ltr SCXW19622730 BCX0">
<p class="Paragraph SCXW19622730 BCX0"><span class="TextRun SCXW19622730 BCX0"><span class="NormalTextRun SCXW19622730 BCX0">Dimensionality</span></span><span class="EOP SCXW19622730 BCX0"> </span></p>
</div>
</div>
</td>
<td class="FirstRow AdvancedProofingWhite ContextualSpellingWhite SpellingErrorWhite SimilarityReviewedWhite SimilarityUnreviewedWhite AddInCritiqueRedWhite AddInCritiqueGreenWhite AddInCritiqueBlueWhite AddInCritiqueLavenderWhite AddInCritiqueBerryWhite LowContrastShading SCXW19622730 BCX0">
<div class="TableCellContent SCXW19622730 BCX0">
<div class="OutlineElement Ltr SCXW19622730 BCX0">
<p class="Paragraph SCXW19622730 BCX0"><span class="TextRun SCXW19622730 BCX0"><span class="NormalTextRun SCXW19622730 BCX0">Range</span></span><span class="EOP SCXW19622730 BCX0"> </span></p>
</div>
</div>
</td>
<td class="FirstRow LastCol AdvancedProofingWhite ContextualSpellingWhite SpellingErrorWhite SimilarityReviewedWhite SimilarityUnreviewedWhite AddInCritiqueRedWhite AddInCritiqueGreenWhite AddInCritiqueBlueWhite AddInCritiqueLavenderWhite AddInCritiqueBerryWhite LowContrastShading SCXW19622730 BCX0">
<div class="TableCellContent SCXW19622730 BCX0">
<div class="OutlineElement Ltr SCXW19622730 BCX0">
<p class="Paragraph SCXW19622730 BCX0"><span class="TextRun SCXW19622730 BCX0"><span class="NormalTextRun SCXW19622730 BCX0">Description</span></span><span class="EOP SCXW19622730 BCX0"> </span></p>
</div>
</div>
</td>
</tr>
<tr class="TableRow SCXW19622730 BCX0">
<td class="FirstCol SCXW19622730 BCX0">
<div class="TableCellContent SCXW19622730 BCX0">
<div class="OutlineElement Ltr SCXW19622730 BCX0">
<p class="Paragraph SCXW19622730 BCX0"><code><span class="TextRun SCXW19622730 BCX0"><span class="NormalTextRun SCXW19622730 BCX0">model_eigenmode_001</span></span></code> to<span class="TextRun SCXW19622730 BCX0"><span class="NormalTextRun SCXW19622730 BCX0"> </span></span><code><span class="TextRun SCXW19622730 BCX0"><span class="NormalTextRun SCXW19622730 BCX0">model_eigenmode_084</span></span></code><span class="EOP SCXW19622730 BCX0"> </span></p>
</div>
</div>
</td>
<td class="SCXW19622730 BCX0">
<div class="TableCellContent SCXW19622730 BCX0">
<div class="OutlineElement Ltr SCXW19622730 BCX0">
<p class="Paragraph SCXW19622730 BCX0"><span class="TextRun SCXW19622730 BCX0"><span class="NormalTextRun SCXW19622730 BCX0">3D Vector (float32)</span></span><span class="EOP SCXW19622730 BCX0"> </span></p>
</div>
</div>
</td>
<td class="SCXW19622730 BCX0">
<div class="TableCellContent SCXW19622730 BCX0">
<div class="OutlineElement Ltr SCXW19622730 BCX0">
<div class="MathJax_Display SCXW19622730 BCX0"><span class="MathJax SCXW19622730 BCX0"><span class="math SCXW19622730 BCX0"><span class="SCXW19622730 BCX0"><span class="mrow SCXW19622730 BCX0"><span class="mn SCXW19622730 BCX0">189,430</span><span class="mo SCXW19622730 BCX0">×3</span></span></span></span></span></div>
</div>
</div>
</td>
<td class="SCXW19622730 BCX0">
<div class="TableCellContent SCXW19622730 BCX0">
<div class="OutlineElement Ltr SCXW19622730 BCX0">
<p class="Paragraph SCXW19622730 BCX0"><span class="TextRun SCXW19622730 BCX0"><span class="NormalTextRun SCXW19622730 BCX0">84 arrays</span></span><span class="EOP SCXW19622730 BCX0"> </span></p>
</div>
</div>
</td>
<td class="LastCol SCXW19622730 BCX0">
<div class="TableCellContent SCXW19622730 BCX0">
<div class="OutlineElement Ltr SCXW19622730 BCX0">
<p class="Paragraph SCXW19622730 BCX0"><span class="TextRun SCXW19622730 BCX0"><span class="NormalTextRun SCXW19622730 BCX0">Eigenvectors</span></span></p>
<span class="TextRun SCXW19622730 BCX0"><span class="NormalTextRun SCXW19622730 BCX0"> Linear displacement directions per vertex defining the orthogonal modes of morphological variation. Each array </span><span class="NormalTextRun SCXW19622730 BCX0">represents</span><span class="NormalTextRun SCXW19622730 BCX0"> a distinct </span><span class="NormalTextRun ContextualSpellingAndGrammarErrorV2Themed SCXW19622730 BCX0">shape</span><span class="NormalTextRun SCXW19622730 BCX0"> mode.</span></span><span class="EOP SCXW19622730 BCX0"> </span></div>
</div>
</td>
</tr>
<tr class="TableRow SCXW19622730 BCX0">
<td class="FirstCol LastRow SCXW19622730 BCX0">
<div class="TableCellContent SCXW19622730 BCX0">
<div class="OutlineElement Ltr SCXW19622730 BCX0">
<p class="Paragraph SCXW19622730 BCX0"><code><span class="TextRun SCXW19622730 BCX0"><span class="NormalTextRun SCXW19622730 BCX0">mean_to_object_001</span></span></code><span class="TextRun SCXW19622730 BCX0"><span class="NormalTextRun SCXW19622730 BCX0">  </span></span><span class="TextRun SCXW19622730 BCX0"><span class="NormalTextRun SCXW19622730 BCX0">to </span></span><code><span class="TextRun SCXW19622730 BCX0"><span class="NormalTextRun SCXW19622730 BCX0">mean_to_object_085</span></span></code></p>
</div>
</div>
</td>
<td class="LastRow SCXW19622730 BCX0">
<div class="TableCellContent SCXW19622730 BCX0">
<div class="OutlineElement Ltr SCXW19622730 BCX0">
<p class="Paragraph SCXW19622730 BCX0"><span class="TextRun SCXW19622730 BCX0"><span class="NormalTextRun SCXW19622730 BCX0">3D Vector (float32)</span></span><span class="EOP SCXW19622730 BCX0"> </span></p>
</div>
</div>
</td>
<td class="LastRow SCXW19622730 BCX0">
<div class="TableCellContent SCXW19622730 BCX0">
<div class="OutlineElement Ltr SCXW19622730 BCX0">
<div class="MathJax_Display SCXW19622730 BCX0"><span class="MathJax SCXW19622730 BCX0"><span class="math SCXW19622730 BCX0"><span class="SCXW19622730 BCX0"><span class="mrow SCXW19622730 BCX0"><span class="mn SCXW19622730 BCX0">189,430</span><span class="mo SCXW19622730 BCX0">×</span><span class="mn SCXW19622730 BCX0">3</span></span></span></span></span></div>
<span class="EOP SCXW19622730 BCX0"> </span></div>
</div>
</td>
<td class="LastRow SCXW19622730 BCX0">
<div class="TableCellContent SCXW19622730 BCX0">
<div class="OutlineElement Ltr SCXW19622730 BCX0">
<p class="Paragraph SCXW19622730 BCX0"><span class="TextRun SCXW19622730 BCX0"><span class="NormalTextRun SCXW19622730 BCX0">85 arrays</span></span><span class="EOP SCXW19622730 BCX0"> </span></p>
</div>
</div>
</td>
<td class="LastCol LastRow SCXW19622730 BCX0">
<div class="TableCellContent SCXW19622730 BCX0">
<div class="OutlineElement Ltr SCXW19622730 BCX0">
<p class="Paragraph SCXW19622730 BCX0"><span class="TextRun SCXW19622730 BCX0"><span class="NormalTextRun SCXW19622730 BCX0">Displacement Vectors</span></span></p>
<span class="TextRun SCXW19622730 BCX0"><span class="NormalTextRun SCXW19622730 BCX0">The absolute, vertex-wise spatial deviation </span><span class="NormalTextRun SCXW19622730 BCX0">required</span><span class="NormalTextRun SCXW19622730 BCX0"> to deform the mean shape into a specific training subject</span></span><span class="TextRun SCXW19622730 BCX0"><span class="NormalTextRun SCXW19622730 BCX0">.</span></span><span class="EOP SCXW19622730 BCX0"> </span></div>
</div>
</td>
</tr>
</tbody>
</table>
<p> </p>