andersonwinkler / PALM

PALM: Permutation Analysis of Linear Models
69 stars 28 forks source link

PALM: Support for other file formats; user provided proximity for spatial statistics #35

Open sina-mansour opened 3 years ago

sina-mansour commented 3 years ago

Hi,

I'm planning to use PALM in a scenario in which spatial proximities used in spatial statistics (clustering) are defined by the user. I was wondering if there's room for implementing such a feature for PALM?

Given that PALM already provides support for NIFTI and CIFTI formats, it seems to have a flexible backend implementation of spatial proximities that could be modified.

To put it simply, I'm wondering if it would be possible to implement a feature for PALM to accept a spatial proximity encoding as user input? For instance, a file that lists all pairs of neighboring voxels/vertices that are assumed to be connected for spatial statistics. If the user decides to provide this input, this information would overwrite the spatial proximity structure extracted from the NIFTI/CIFTI/GIFTI files and would be used in computing the spatial statistics (clustering/TFCE).

Basically, this will enhance the capability of spatial statistics to perform clustering on arbitrary structures. I'm currently working on an alternative spatial clustering approach and this feature would seamlessly integrate this approach with PALM's capabilities in the statistical inference of neuroimaging data.

Please let me know if you need me to clarify anything, your help is greatly appreciated.

Thank you, Sina

andersonwinkler commented 3 years ago

Hi Sina,

I believe a similar feature might be already there: currently cluster extent, for both vertexwise and facewise data, use the area of each vertex or face of the supplied surface. Note that there isn't really a measure of proximity because it's the area that that statistic represents that counts.

For volume-based data, the volume of each voxel is implicitly used: typically all voxels have the same volume, then volume cancels out, so it isn't used directly in the computation, but it's there, and would be used if we had an irregular lattice.

For a cluster measure to consider distances, it seems we'd be talking of statistics that live on edges that connect vertices or network nodes, i.e., edgewise. There is a method for this from Andrew Zalesky group I believe. It's called NBS -- network based statistics. It isn't available in PALM but if there is interest it can be implemented, absolutely.

Happy to discuss further, particularly if I'm not following your suggestion. If you prefer to schedule a call (via Zoom or similar), please let me know and we can arrange. Thanks!

All the best,

Anderson

sina-mansour commented 3 years ago

Hi Anderson,

Many thanks for your prompt reply, much appreciated!

I'm actually currently working with Andrew on a project in which we're trying to implement statistics that use the information from the connectivity network in cluster correction of voxelwise and vertexwise data. This data is typically clustered by means of spatial proximity/neighborhood, such that a voxel is considered to be spatially connected to 26 voxels around it and a vertex to all vertices sharing a face on the surface. This neighborhood information is then used to compute cluster extent. We're however thinking of a potential modification of this neighborhood information prior to computing the cluster extent. This would combine the Idea of network-based statistics with the vertex/voxel-resolution clustering correction.

I'd greatly appreciate it if we could schedule a call to discuss this further. I'll be sending you an email to find what time and date suit you.

Thanks, Sina

andersonwinkler commented 3 years ago

Hi Sina,

Did you send anything? My email is like my username here on github, and it's hosted by gmail.

Cheers,

Anderson

sina-mansour commented 3 years ago

Hi Anderson,

Apologies for the confusion, I mistakenly sent an email to your fmrib email address.

I'll resend it to your Gmail right away.

Cheers, Sina