tensorflow / tflite-micro

Infrastructure to enable deployment of ML models to low-power resource-constrained embedded targets (including microcontrollers and digital signal processors).
Apache License 2.0
1.74k stars 770 forks source link

The difference between tensorflow lite and tensorflow lite micro #2524

Closed ctwillson closed 3 months ago

ctwillson commented 3 months ago

I read the doc about the operators difference between TensorFlow Lite and TensorFlow image However,but I have no idea about the difference between TensorFlow Lite and TensorFlow Lite micro

rascani commented 3 months ago

The difference between TensorFlow Lite and TensorFlow Lite for Microcontrollers is the platforms they target. TFLite is targeted at mobile use cases, such as Android & iOS devices. As the name suggests, TFLite-Micro is aimed at low-power microcontrollers and digital signal processors for embedded use cases. These can even be baremetal use cases, as TFLM has no dependencies on an operating system.

ctwillson commented 3 months ago

The difference between TensorFlow Lite and TensorFlow Lite for Microcontrollers is the platforms they target. TFLite is targeted at mobile use cases, such as Android & iOS devices. As the name suggests, TFLite-Micro is aimed at low-power microcontrollers and digital signal processors for embedded use cases. These can even be baremetal use cases, as TFLM has no dependencies on an operating system.

Are the operators supported by TF lite same as TF Microcontrollers?In other words,if I have .tflite,I used cmd like "xxd -i converted_model.tflite > model_data.cc" and the microcontrollers have enough memories,so it must can be loaded normally?

rascani commented 3 months ago

TFLM supports the same .tflite model format as TFLite. However, there are some operators that are unimplemented. For the most part, these can be ported from TFLite as needed and there is a guide on how to do so.