summaryrefslogtreecommitdiff
path: root/source/math
diff options
context:
space:
mode:
authorRichard Burton <richard.burton@arm.com>2022-02-14 11:55:35 +0000
committerRichard <richard.burton@arm.com>2022-02-14 15:02:26 +0000
commited35a6fea4a1604db81c56fc71f7756822fcf212 (patch)
treef04b7d41ded8b4824978c2feaf120a3b6e1be2fb /source/math
parente2da7ee5e9732ec0d1962b7d74737b8ef5463a9e (diff)
downloadml-embedded-evaluation-kit-ed35a6fea4a1604db81c56fc71f7756822fcf212.tar.gz
MLECO-2874: Move NMS out of the OD use_case
* Add ImageUtils * Move image related code from UseCaseCommonUtils to ImageUtils * Move NMS related code to ImageUtils * Delete test specific ImageUtils and use new ImageUtils Signed-off-by: Richard Burton <richard.burton@arm.com> Change-Id: Icbf5dd9c6a941b0126ecdf69a0c9d9969f22729f
Diffstat (limited to 'source/math')
-rw-r--r--source/math/PlatformMath.cc7
-rw-r--r--source/math/include/PlatformMath.hpp14
2 files changed, 16 insertions, 5 deletions
diff --git a/source/math/PlatformMath.cc b/source/math/PlatformMath.cc
index cc603f3..b666d29 100644
--- a/source/math/PlatformMath.cc
+++ b/source/math/PlatformMath.cc
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021 Arm Limited. All rights reserved.
+ * Copyright (c) 2021-2022 Arm Limited. All rights reserved.
* SPDX-License-Identifier: Apache-2.0
*
* Licensed under the Apache License, Version 2.0 (the "License");
@@ -303,6 +303,11 @@ namespace math {
}
}
+ float MathUtils::SigmoidF32(float x)
+ {
+ return 1.f/(1.f + std::exp(-x));
+ }
+
} /* namespace math */
} /* namespace app */
} /* namespace arm */
diff --git a/source/math/include/PlatformMath.hpp b/source/math/include/PlatformMath.hpp
index 5ac10de..2bf7733 100644
--- a/source/math/include/PlatformMath.hpp
+++ b/source/math/include/PlatformMath.hpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2021 Arm Limited. All rights reserved.
+ * Copyright (c) 2021-2022 Arm Limited. All rights reserved.
* SPDX-License-Identifier: Apache-2.0
*
* Licensed under the Apache License, Version 2.0 (the "License");
@@ -19,7 +19,6 @@
/* See if ARM DSP functions can be used. */
#if defined(ARM_MATH_DSP)
-
#include "arm_math.h"
#define M_PI (PI)
#else
@@ -127,8 +126,8 @@ namespace math {
* @param[out] output Pre-allocated buffer to be populated with
* natural log values of each input element.
*/
- static void VecLogarithmF32(std::vector <float>& input,
- std::vector <float>& output);
+ static void VecLogarithmF32(std::vector<float>& input,
+ std::vector<float>& output);
/**
* @brief Computes the dot product of two 1D floating point
@@ -165,6 +164,13 @@ namespace math {
* @param[in] vector Vector of floats modified in-place
*/
static void SoftmaxF32(std::vector<float>& vec);
+
+ /**
+ * @brief Calculate the Sigmoid function of the given value.
+ * @param[in] x Value to apply Sigmoid to.
+ * @return Sigmoid value of the input.
+ */
+ static float SigmoidF32(float x);
};
} /* namespace math */