Covariate Significance Testing - shape for p-value?

Hello everyone,

I am currently using version 4.0.1 - 2023-02-08 of SlicerSALT to check out the morphological changes in the human pubic symphyseal surface as a result of aging. Specifically, I am now analyzing four age groups: 20s, 40s, 60s, and 80s.

My main question concerns the Covariate Significance Testing Module. I have reviewed the tutorial on the SlicerSALT documentation and some talks made on community, but still having some trouble comprehending what input file should I use for Shape for p-values.

Here are the steps I took, prior to Covariate Significance Testing Module:

  1. Processed the output files of SPHARM-PDM, specifically the pp_surf_SPHARM_ellalign.vtk files, using the Procrustes Registration module.

  2. Used Population Analysis Module to extract the mean model for each age group with the output files from step 1.

  3. Used the Model to Model Distance Module to extract a vtk file that visualizes the changes between two age groups.
    e.g. To observe the changes between the 20s and 40s, I set the 20s mean as the source and the 40s mean as the target, and set the distance as corresponding point_to_point. Below is the result of 20s to 40s Model to Model (viewed on Paraview)

I then used the Covariate Significance Testing Module to determine whether the vector data shown in the model to model vtk file were statistically significant.

The input and output for my Covariate Significance Testing on the 20s and 40s groups are as follows:


  • Select CSV files: a CSV file with two columns. The first column contains path-to-vtk files for the 20s and 40s, and the second column contains an index for each age group (0 for 20s and 1 for 40s).
  • Select shape for p-value: I consider it as a template model that can display p-values. So, I thought in order to see the change from 20s to 40s, I should use the mean model of the 20s.


(L) the model-to-model VTK, (R) result of the covariate significance testing (Paraview)
I think the change pattern is quite consistent with each other.

FINALLY the questions are:

  1. What exactly is the “shape for p-value”? I’ve understood it as a template to display the p-value result.

  2. To see the desired result, age-related changes, is it correct to import a younger age group’s mean model in “shape for p-value”?

  3. I also had an experiment importing 40s mean models to “shape for p-value” while using the same CSV file as before (right image). However, the result was not similar to when I used a 20s mean model (left image). Can you explain to me why this had happened?

If there is anything I misunderstood or any mistake I made during the process, any advice or guide in the right direction will be much appreciated.

Best regards,