본문 바로가기
  • AI 개발자가 될래요
안드로이드

[Tensorflow/TFLite] Tensorflow 모델을 Tensorflow Lite로 바꾸는 법, tf2tflite

by 꿀개 2023. 2. 28.

텐서플로를 텐서플로 라이트로, Tensorflow to Tensorflow Lite (TFLite)

 

딥러닝 모델을 안드로이드 앱에서 동작시키기 위해서 Tensorflow Lite(이하 TFLite)를 사용중이다.

 

 

Tensorflow 2.x 를 설치한 경우 3가지 방식의 Converter를 사용할 수 있다.

공식 문서에서는 첫 번째 방식을 권장한다.

 

 

Tensorflow 모델을 TFLite로 변환하기 위한 코드는 다음과 같다.

import tensorflow as tf

# tensorflow 모델 저장 경로
saved_model_dir = "./tensorflow/best_res18"

# Convert the model
converter = tf.lite.TFLiteConverter.from_saved_model(saved_model_dir) # path to the SavedModel directory
tflite_model = converter.convert()

# Save the model.
with open('model.tflite', 'wb') as f:
  f.write(tflite_model)

 

텐서플로 모델인 tensorflow/best_res18 을 읽어 와서 TFLite 모델인 model.tflite로 변환해 준다.

 

 

TFLite 모델을 inference 하여 모델 output을 얻기 위한 코드를 아래 링크를 참고하면 된다.

https://hsyaloe.tistory.com/48

 

[안드로이드/TF Lite] input/output shape 확인 법

안드로이드에서 텐서플로 라이트로 딥러닝 모델을 올릴 때 입/출력 shape 확인법 텐서플로 라이트 모델을 사용하기 전에 해당 모델의 입/출력 형태가 어떠한지 확인할 필요가 있다. 1. 먼저 모델

hsyaloe.tistory.com