Search code examples
pythontensorflowkerasraspberry-piraspberry-pi-zero

Is there a way to use a compiled keras model on the RPI Zero?


I am working on a Letter Recognition Application for a robot. I used my home PC for training the model and wanted the recognition to be on the RPI Zero W with the already trained model.

I got an HDF model. When I try to install Tensorflow on the RPI zero, it's throwing a hash error, as far as I found it this is due to TF beeing for 64bit machines. When I try to install Tensorflow Lite, the installation stocks and crashes.

For saving the model I use:

classifier.save('test2.h5')

That are the Prediction lines:

test_image = ks.preprocessing.image.load_img('image.jpg')
test_image = ks.preprocessing.image.img_to_array(test_image)

result = classifier.predict(test_image)

I also tried to compile the python script via Nuitka, but as the RPI is ARM and nuitka is not offering cross-compile, this possibility felt out.


Solution

  • You can use already available TFLite to solve your issue.

    If that does not help, you can also build TFLite from source.

    Please refer to below links:

    https://www.tensorflow.org/lite/guide/build_rpi

    https://medium.com/@haraldfernengel/compiling-tensorflow-lite-for-a-raspberry-pi-786b1b98e646