summaryrefslogtreecommitdiff
path: root/source/application/api/use_case/inference_runner/include/MicroMutableAllOpsResolver.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'source/application/api/use_case/inference_runner/include/MicroMutableAllOpsResolver.hpp')
-rw-r--r--source/application/api/use_case/inference_runner/include/MicroMutableAllOpsResolver.hpp119
1 files changed, 11 insertions, 108 deletions
diff --git a/source/application/api/use_case/inference_runner/include/MicroMutableAllOpsResolver.hpp b/source/application/api/use_case/inference_runner/include/MicroMutableAllOpsResolver.hpp
index 96ac28d..67a7c9e 100644
--- a/source/application/api/use_case/inference_runner/include/MicroMutableAllOpsResolver.hpp
+++ b/source/application/api/use_case/inference_runner/include/MicroMutableAllOpsResolver.hpp
@@ -14,122 +14,25 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-#ifndef INF_RUNNER_MICRO_MUTABLE_ALLOPS_RESOLVER_HPP
-#define INF_RUNNER_MICRO_MUTABLE_ALLOPS_RESOLVER_HPP
+#ifndef INF_RUNNER_MICRO_MUTABLE_ALL_OPS_RESOLVER_HPP
+#define INF_RUNNER_MICRO_MUTABLE_ALL_OPS_RESOLVER_HPP
#include <tensorflow/lite/micro/micro_mutable_op_resolver.h>
-constexpr int kNumberOperators = 97;
-
namespace arm {
namespace app {
- /* Create our own AllOpsResolver by adding all Ops to MicroMutableOpResolver. */
- inline tflite::MicroMutableOpResolver<kNumberOperators> CreateAllOpsResolver() {
- tflite::MicroMutableOpResolver<kNumberOperators> mutableAllOpResolver;
-
- mutableAllOpResolver.AddAbs();
- mutableAllOpResolver.AddAdd();
- mutableAllOpResolver.AddAddN();
- mutableAllOpResolver.AddArgMax();
- mutableAllOpResolver.AddArgMin();
- mutableAllOpResolver.AddAssignVariable();
- mutableAllOpResolver.AddAveragePool2D();
- mutableAllOpResolver.AddBatchToSpaceNd();
- mutableAllOpResolver.AddBroadcastArgs();
- mutableAllOpResolver.AddBroadcastTo();
- mutableAllOpResolver.AddCallOnce();
- mutableAllOpResolver.AddCast();
- mutableAllOpResolver.AddCeil();
- mutableAllOpResolver.AddCircularBuffer();
- mutableAllOpResolver.AddConcatenation();
- mutableAllOpResolver.AddConv2D();
- mutableAllOpResolver.AddCos();
- mutableAllOpResolver.AddCumSum();
- mutableAllOpResolver.AddDepthToSpace();
- mutableAllOpResolver.AddDepthwiseConv2D();
- mutableAllOpResolver.AddDequantize();
- mutableAllOpResolver.AddDetectionPostprocess();
- mutableAllOpResolver.AddDiv();
- mutableAllOpResolver.AddElu();
- mutableAllOpResolver.AddEqual();
- mutableAllOpResolver.AddEthosU();
- mutableAllOpResolver.AddExp();
- mutableAllOpResolver.AddExpandDims();
- mutableAllOpResolver.AddFill();
- mutableAllOpResolver.AddFloor();
- mutableAllOpResolver.AddFloorDiv();
- mutableAllOpResolver.AddFloorMod();
- mutableAllOpResolver.AddFullyConnected();
- mutableAllOpResolver.AddGather();
- mutableAllOpResolver.AddGatherNd();
- mutableAllOpResolver.AddGreater();
- mutableAllOpResolver.AddGreaterEqual();
- mutableAllOpResolver.AddHardSwish();
- mutableAllOpResolver.AddIf();
- mutableAllOpResolver.AddL2Normalization();
- mutableAllOpResolver.AddL2Pool2D();
- mutableAllOpResolver.AddLeakyRelu();
- mutableAllOpResolver.AddLess();
- mutableAllOpResolver.AddLessEqual();
- mutableAllOpResolver.AddLog();
- mutableAllOpResolver.AddLogicalAnd();
- mutableAllOpResolver.AddLogicalNot();
- mutableAllOpResolver.AddLogicalOr();
- mutableAllOpResolver.AddLogistic();
- mutableAllOpResolver.AddLogSoftmax();
- mutableAllOpResolver.AddMaxPool2D();
- mutableAllOpResolver.AddMaximum();
- mutableAllOpResolver.AddMean();
- mutableAllOpResolver.AddMinimum();
- mutableAllOpResolver.AddMirrorPad();
- mutableAllOpResolver.AddMul();
- mutableAllOpResolver.AddNeg();
- mutableAllOpResolver.AddNotEqual();
- mutableAllOpResolver.AddPack();
- mutableAllOpResolver.AddPad();
- mutableAllOpResolver.AddPadV2();
- mutableAllOpResolver.AddPrelu();
- mutableAllOpResolver.AddQuantize();
- mutableAllOpResolver.AddReadVariable();
- mutableAllOpResolver.AddReduceMax();
- mutableAllOpResolver.AddRelu();
- mutableAllOpResolver.AddRelu6();
- mutableAllOpResolver.AddReshape();
- mutableAllOpResolver.AddResizeBilinear();
- mutableAllOpResolver.AddResizeNearestNeighbor();
- mutableAllOpResolver.AddRound();
- mutableAllOpResolver.AddRsqrt();
- mutableAllOpResolver.AddSelectV2();
- mutableAllOpResolver.AddShape();
- mutableAllOpResolver.AddSin();
- mutableAllOpResolver.AddSlice();
- mutableAllOpResolver.AddSoftmax();
- mutableAllOpResolver.AddSpaceToBatchNd();
- mutableAllOpResolver.AddSpaceToDepth();
- mutableAllOpResolver.AddSplit();
- mutableAllOpResolver.AddSplitV();
- mutableAllOpResolver.AddSqrt();
- mutableAllOpResolver.AddSquare();
- mutableAllOpResolver.AddSquaredDifference();
- mutableAllOpResolver.AddSqueeze();
- mutableAllOpResolver.AddStridedSlice();
- mutableAllOpResolver.AddSub();
- mutableAllOpResolver.AddSum();
- mutableAllOpResolver.AddSvdf();
- mutableAllOpResolver.AddTanh();
- mutableAllOpResolver.AddTranspose();
- mutableAllOpResolver.AddTransposeConv();
- mutableAllOpResolver.AddUnidirectionalSequenceLSTM();
- mutableAllOpResolver.AddUnpack();
- mutableAllOpResolver.AddVarHandle();
- mutableAllOpResolver.AddWhile();
- mutableAllOpResolver.AddZerosLike();
+ /* Maximum number of individual operations that can be enlisted. */
+ constexpr int kNumberOperators = 97;
- return mutableAllOpResolver;
- }
+ /** An Op resolver containing all ops is no longer supplied with TFLite Micro
+ * so we create our own instead for the generic inference runner.
+ *
+ * @return MicroMutableOpResolver containing all TFLite Micro Ops registered.
+ */
+ tflite::MicroMutableOpResolver<kNumberOperators> CreateAllOpsResolver();
} /* namespace app */
} /* namespace arm */
-#endif /* INF_RUNNER_MICRO_MUTABLE_ALLOPS_RESOLVER_HPP */
+#endif /* INF_RUNNER_MICRO_MUTABLE_ALL_OPS_RESOLVER_HPP */