From a723e1c62a27aeb39aaf7fcdeb3beb4e89fba32d Mon Sep 17 00:00:00 2001
From: Alexey <AlexeyAB@users.noreply.github.com>
Date: Wed, 15 Aug 2018 20:52:09 +0000
Subject: [PATCH] Merge pull request #766 from HotChick91/AlexeyAB-mask
---
src/tree.c | 32 ++++++++++++++++++++++++++++++++
1 files changed, 32 insertions(+), 0 deletions(-)
diff --git a/src/tree.c b/src/tree.c
index dfa4178..d66da9f 100644
--- a/src/tree.c
+++ b/src/tree.c
@@ -50,6 +50,38 @@
}
}
+int hierarchy_top_prediction(float *predictions, tree *hier, float thresh, int stride)
+{
+ float p = 1;
+ int group = 0;
+ int i;
+ while (1) {
+ float max = 0;
+ int max_i = 0;
+
+ for (i = 0; i < hier->group_size[group]; ++i) {
+ int index = i + hier->group_offset[group];
+ float val = predictions[(i + hier->group_offset[group])*stride];
+ if (val > max) {
+ max_i = index;
+ max = val;
+ }
+ }
+ if (p*max > thresh) {
+ p = p*max;
+ group = hier->child[max_i];
+ if (hier->child[max_i] < 0) return max_i;
+ }
+ else if (group == 0) {
+ return max_i;
+ }
+ else {
+ return hier->parent[hier->group_offset[group]];
+ }
+ }
+ return 0;
+}
+
tree *read_tree(char *filename)
{
tree t = {0};
--
Gitblit v1.10.0