TF-Lite без максимального подавления

#tensorflow #tensorflow-lite

#tensorflow #tensorflow-lite

Вопрос:

Я пытаюсь преобразовать график с помощью tf.image.non_max_suppression или tf.image.combined_non_max_suppression, но оба вызова API выдают ошибку типа «операция tf.CombinedNonMaxSuppression не является ни пользовательской, ни гибкой операцией». Моя настройка — TF2.3.1, python 3.7, Windows 10.

Я понимаю, что некоторые функции tf не поддерживаются для преобразования в TF-Lite, но по ссылке ниже показана функция tfl для не максимального подавления.

https://tensorflow.google.cn/mlir/tfl_ops#tflnon_max_suppression_v4_tflnonmaxsuppressionv4op

Что мне нужно сделать, чтобы иметь возможность запускать конвертер в моей функции, чтобы использовать функцию tfl.non_max_suppression_vx?

Ответ №1:

Операция без максимального подавления не поддерживается в TF Lite. Если вы хотите использовать их, вы должны использовать via TF lib при преобразовании, добавляя эти строки

 converter.experimental_new_converter=True

converter.target_spec.supported_ops = [tf.lite.OpsSet.TFLITE_BUILTINS,
                                   tf.lite.OpsSet.SELECT_TF_OPS]
  

Существует другой способ, которым вы должны переписать NMS op с помощью операций, поддерживаемых в TF Lite, или вроде того. Если вы переписываете успешно, пожалуйста, сообщите мне. Спасибо.