mlearning/tflite-micro: Register DEPTHWISE_CONV_2D in tflm_tool resolver.

MicroMutableOpResolver<8> only registered 8 ops, missing
DEPTHWISE_CONV_2D, required by any depthwise-separable CNN
(MobileNet-style, DS-CNN keyword-spotting models). The kernel
already exists upstream (Register_DEPTHWISE_CONV_2D_INT8() in
tensorflow/lite/micro/kernels/depthwise_conv.h); this wires it
into the resolver and bumps the template size to <9>.

Verified with micro_speech_quantized.tflite on sim:tflm.
Before: Didn't find op for builtin opcode 'DEPTHWISE_CONV_2D'.
After: RESHAPE/DEPTHWISE_CONV_2D/FULLY_CONNECTED/SOFTMAX all execute.

Signed-off-by: Ansh Rai <anshrai331@gmail.com>
This commit is contained in:
Ansh Rai 2026-09-06 12:54:05 +00:00 committed by Alin Jerpelea
parent dc3cc88758
commit 0ae2c5391c

View file

@ -110,8 +110,9 @@ extern "C" int main(int argc, FAR char* argv[])
/* HACK: can change operators here. */
tflite::MicroMutableOpResolver<8> resolver;
tflite::MicroMutableOpResolver<9> resolver;
resolver.AddConv2D(tflite::Register_CONV_2D_INT8());
resolver.AddDepthwiseConv2D(tflite::Register_DEPTHWISE_CONV_2D_INT8());
resolver.AddMaxPool2D(tflite::Register_MAX_POOL_2D_INT8());
resolver.AddQuantize(tflite::Register_QUANTIZE_FLOAT32_INT8());
resolver.AddDequantize(tflite::Register_DEQUANTIZE_INT8());