funkelab / motile

Multi-Object Tracker using Integer Linear Equations
https://funkelab.github.io/motile/
MIT License
22 stars 4 forks source link

Function to get selected nodes and edges from solution #66

Closed cmalinmayor closed 4 months ago

cmalinmayor commented 7 months ago

The current approach of

from motile.variables import NodeSelected, EdgeSelected

node_selected = solver.get_variables(NodeSelected)
edge_selected = solver.get_variables(EdgeSelected)

for node in graph.nodes:
  if solution[node_selected[node]] > 0.5:
    print(f"Node {node} has been selected")
for u, v in graph.edges:
  if solution[edge_selected[(u, v)]] > 0.5:
    print(f"Edge {(u, v)} has been selected")

Seems needlessly complex