projects
/
mtp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Cosmetics (I know, again).
[mtp.git]
/
tracker.cc
diff --git
a/tracker.cc
b/tracker.cc
index
c66c89d
..
d3397cf
100644
(file)
--- a/
tracker.cc
+++ b/
tracker.cc
@@
-59,6
+59,14
@@
Tracker::~Tracker() {
delete[] entrances;
}
delete[] entrances;
}
+int Tracker::early_pair_node(int t, int l) {
+ return 1 + (2 * (t + 0) + 0) * _nb_locations + l;
+}
+
+int Tracker::late_pair_node(int t, int l) {
+ return 1 + (2 * (t + 0) + 1) * _nb_locations + l;
+}
+
void Tracker::build_graph() {
// Delete the existing graph if there was one
delete[] _edge_lengths;
void Tracker::build_graph() {
// Delete the existing graph if there was one
delete[] _edge_lengths;
@@
-98,13
+106,13
@@
void Tracker::build_graph() {
_edge_lengths = new scalar_t[nb_edges];
// We put the in-node edges first, since these are the ones whose
_edge_lengths = new scalar_t[nb_edges];
// We put the in-node edges first, since these are the ones whose
- // lengths we will have to
set later, according to the detection
- // scores
+ // lengths we will have to
change before tracking, according to the
+ //
detection
scores
for(int t = 0; t < _nb_time_steps; t++) {
for(int l = 0; l < _nb_locations; l++) {
for(int t = 0; t < _nb_time_steps; t++) {
for(int l = 0; l < _nb_locations; l++) {
- node_from[e] =
1 + (2 * (t + 0) + 0) * _nb_locations + l
;
- node_to[e] =
1 + (2 * (t + 0) + 1) * _nb_locations + l
;
+ node_from[e] =
early_pair_node(t, l)
;
+ node_to[e] =
late_pair_node(t, l)
;
e++;
}
}
e++;
}
}
@@
-119,15
+127,15
@@
void Tracker::build_graph() {
for(int t = 0; t < _nb_time_steps; t++) {
for(int l = 0; l < _nb_locations; l++) {
if(t == _nb_time_steps - 1) {
for(int t = 0; t < _nb_time_steps; t++) {
for(int l = 0; l < _nb_locations; l++) {
if(t == _nb_time_steps - 1) {
- node_from[e] =
1 + (2 * (t + 0) + 1) * _nb_locations + l
;
+ node_from[e] =
late_pair_node(t, l)
;
node_to[e] = sink;
_edge_lengths[e] = 0.0;
e++;
} else {
for(int k = 0; k < _nb_locations; k++) {
if(allowed_motion[l][k]) {
node_to[e] = sink;
_edge_lengths[e] = 0.0;
e++;
} else {
for(int k = 0; k < _nb_locations; k++) {
if(allowed_motion[l][k]) {
- node_from[e] =
1 + (2 * (t + 0) + 1) * _nb_locations + l
;
- node_to[e] =
1 + (2 * (t + 1) + 0) * _nb_locations + k
;
+ node_from[e] =
late_pair_node(t, l)
;
+ node_to[e] =
early_pair_node(t+1, k)
;
_edge_lengths[e] = 0.0;
e++;
}
_edge_lengths[e] = 0.0;
e++;
}
@@
-140,12
+148,12
@@
void Tracker::build_graph() {
for(int l = 0; l < _nb_locations; l++) {
if(t > 0 && entrances[l]) {
node_from[e] = source;
for(int l = 0; l < _nb_locations; l++) {
if(t > 0 && entrances[l]) {
node_from[e] = source;
- node_to[e] =
1 + (2 * (t + 0) + 0) * _nb_locations + l
;
+ node_to[e] =
early_pair_node(t, l)
;
_edge_lengths[e] = 0.0;
e++;
}
if(t < _nb_time_steps - 1 && exits[l]) {
_edge_lengths[e] = 0.0;
e++;
}
if(t < _nb_time_steps - 1 && exits[l]) {
- node_from[e] =
1 + (2 * (t + 0) + 1) * _nb_locations + l
;
+ node_from[e] =
late_pair_node(t, l)
;
node_to[e] = sink;
_edge_lengths[e] = 0.0;
e++;
node_to[e] = sink;
_edge_lengths[e] = 0.0;
e++;