Skip to content

theo-oneill/perch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

81 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

perch

Persistent Homology for Images & Cubes

perch is an in-development python package for applying the topological technique of persistent homology to images & cubes. Persistent Homology identifies "holes" of different dimensions in data. In the perch framework, this enables the identification, segmentation, and hierarchical mapping of multi-scale structures in astronomical data.

See examples folder for minimal examples of running perch on 2D images and 3D volumes.

A few comments:

  • perch performs superlevel set filtrations (as opposed to the default behavior of sublevel sets in cubical ripser), so that the zeroth homology (H0) represents connected high-valued components and higher level homologies (H1 and/or H2) represent high-valued rings and low-valued voids.

  • The slowest and most memory-intensive step in either engine is typically the computation of the higher level homologies (H1 and/or H2). By the Alexander duality, the highest level homology of an image (H1 in 2D or H2 in 3D) is equivalent to the zeroth homology (H0) of the inverted image. If the intermediate homology is not of interest, computation of the highest homology with either engine can be sped up by taking advantage of this duality and computing only the zeroth homology of both the original and inverted images.

  • Computing and segmenting only the zeroth homology (H0) is equivalent to computing the dendrogram (hierarchical structure) of connected components, a la astrodendro.

Dependencies:

About

Persistent Homology for Images & Cubes

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors 3

  •  
  •  
  •  

Languages