google-deepmind / kinetics-i3d

Convolutional neural network model for video classification trained on the Kinetics dataset.
Apache License 2.0
1.75k stars 462 forks source link

Trying to create frozen graph, so i can convert it into tflite for android #110

Open meenu92 opened 4 years ago

meenu92 commented 4 years ago

Hi,

I am using the below script for creating frozen graph by given checkpoints and saved_model.pb file. checkpoint path : "data/checkpoints/rgb_imagenet/model.ckpt" in this directory saved model link : https://tfhub.dev/deepmind/i3d-kinetics-400/1 When i was going to load checkpoint, it shows None, after running the script 0kb frozen graph is created.

Are these checkpoint is correct for the model downloaded from above hub?

`import tensorflow as tf import i3d

input = tf.placeholder(tf.float32, shape=(1, 79, 224, 224, 3))

with tf.variablescope('RGB'): model = i3d.InceptionI3d() logits, = model(input, is_training=False)

variable_map = {} for variable in tf.global_variables(): variable_map[variable.name.replace(':0', '')] = variable

saver = tf.train.Saver(var_list=variable_map, reshape=True)

model_logits = logits model_predictions = tf.nn.softmax(model_logits)

with tf.Session() as sess: saver.restore(sess, "data/checkpoints/rgb_imagenet/model.ckpt") tf.logging.info('RGB checkpoint restored')

out_graph = tf.graph_util.convert_variables_to_constants(sess,
    tf.get_default_graph().as_graph_def(), ["Softmax"])

f = tf.gfile.GFile("i3d-rgb.frozen.pb", "wb")
f.write(out_graph.SerializeToString())`

can you help me to solve this issue ? Or any other way to use it with mobile ? I have to use this model in android.

Thanks In Advance Meenakshi