将模型转换为TensorFlow Lite
上面讨论的经过训练的TensorFlow模型必须先转换为TensorFlow Lite,然后才能在i.MX RT1060 MCU上使用。为此,使用tflite_convert对其进行了转换,并且出于兼容性原因,使用TensorFlow的1.13.2版来训练和转换模型:
tflite_convert
--saved_model_dir=
--output_file=converted_model.tflite
--input_shape=1,28,28
--input_array=Placeholder
--output_array=Softmax
--inference_type=FLOAT
--input_data_type=FLOAT
--post_training_quantize
--target_ops TFLITE_BUILTINS
复制代码
最后,使用xdd实用程序将TensorFlow Lite模型转换为二进制数组,以供应用程序加载:
xxd -i converted_model.tflite > converted_model.h
复制代码
xdd是一个十六进制转储实用程序,可用于将文件的二进制形式转换为相应的十六进制转储表示形式,反之亦然。在这种情况下,TensorFlow Lite二进制文件将转换为可添加到eIQ项目的C / C ++头文件。转换过程和tflite_convert实用程序在eIQ用户指南中进行了详细说明。该实用程序也在Google的官方文档中进行了描述。