This project aims to build an end-to-end visualization program that implements the algorithms of the research paper Discrete Morse Functions and Watersheds and visually proves that the Minimum Spanning Forest (MST) of the dual graph of a simplicial stack (or a discrete Morse function) is equivalent to the Gradient Vector Field (GVF) of the initial function. The solution is built using Python 3, VTK (Visualization Toolkit) and Paraview for the rendering.
This is a schema of the project's main architecture.
The application generate CSV files containing coordinates from the given function.
Show CSV Format
Points
| Node Number | X | Y | Z | Weight |
|---|---|---|---|---|
| int | float | float | float | int |
Lines
| P1 | P2 | Weight |
|---|---|---|
| Node Number | Node Number | int |
Triangles
| S1 | S2 | S3 | Weight |
|---|---|---|---|
| Node Number | Node Number | Node Number | int |
All the files generated by the algorithms are in vtu format and can be opened in paraview.
Download the python libraries listed in requirements.txt.
$ pip install -r requirements.txtTo launch the application.
$ python main.pyThe available options are:
-s--size: specify the size of the grid, default is 9.-r--resolution: specify the size of a single triangle edge. To make it higher, enter a value < 1. Default is 1.-m--minimas: specify the method to compute minimas- 0 -> strictly inferior
- 1 -> less than or equal to
- 2 -> forced isolated minima with strict lower
- 3 -> isolated forced minima with less than or equal to
othman.elbaz@epita.fr · william.guillet@epita.fr · vincent.courty@epita.fr

