https://github.com/pierre-guillou/pdiags_bench
Tip revision: 8a2de479abf7bcbf2002b4f8f620c635217cc088 authored by Julien J Tierny on 30 January 2023, 16:30:54 UTC
added reference to the arxiv repo
added reference to the arxiv repo
Tip revision: 8a2de47
diamorse2gudhi.py
import argparse
def read_pairs(fname):
pairs = list()
with open(fname, "r") as src:
lines = src.readlines()
for line in lines:
if line.startswith("#"):
continue
pairs.append(line.split()[:3])
return pairs
def write_pairs(pairs, output):
with open(output, "w") as dst:
for birth, death, dim in pairs:
dst.write(f"{dim} {birth} {death}\n")
def main(diamorse_input, gudhi_output):
pairs = read_pairs(diamorse_input)
write_pairs(pairs, gudhi_output)
if __name__ == "__main__":
parser = argparse.ArgumentParser(
description="Convert a Diamorse diagram into a Gudhi diagram"
)
parser.add_argument("input_diagram", help="Persistence Diagram in Diamorse format")
parser.add_argument(
"output_diagram",
help="Output Gudhi format file name",
default="out.gudhi",
)
args = parser.parse_args()
main(args.input_diagram, args.output_diagram)