2175458_ja-JP

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

2175458_ja-JP

2175458_ja-JP

IMX8MP NPUをサポートするTensorflow Savedmodelからtfliteへの変換

こんにちは、

Tensorflow Savedmodel を、imx8mp NPU をサポートする tflite モデルに変換したいと思います。

以下の手順を試しましたが、うまくいきませんでした

Python モデル/研究/オブジェクト検出/エクスポーターメイン_v2.py \
--input_type 画像テンソル \
--pipeline_config_path トレーニングディレクトリ/pipeline.config \
--trained_checkpoint_dir トレーニングディレクトリ/チェックポイント \
--output_directory エクスポートされたモデル

そして、その固定形状モデルを確認します{
SSD {
画像リサイズ {
固定形状リサイズ {
高さ: 320
幅: 320
}
}
}
}


また、TFLite互換のオペレーションも確保する

SSD {
機能抽出器 {
タイプ: "ssd_mobilenet_v2_fpn_keras"
use_depthwise: true
}
ボックス予測子 {
畳み込みボックス予測子 {
use_depthwise: true
}
}
}

tflite変換スクリプト

TensorflowをTFとしてインポートする
パスライブラリをインポートする

saved_model_dir = "エクスポートされたモデル/saved_model"

コンバーター = tf.lite.TFLiteConverter.from_saved_model(saved_model_dir)
コンバーターの最適化= [tf.lite.Optimize.DEFAULT]

# INT8キャリブレーション用の代表的なデータセットを提供する
代表データ生成()を定義します:
data_dir = pathlib.Path("dataset/val")
data_dir.glob("*.jpg") の img_path の場合:
img = tf.keras.preprocessing.image.load_img(img_path,ターゲットサイズ=(320, 320))
img = tf.keras.preprocessing.image.img_to_array(img)
img = img[tf.newaxis,...] / 255.0
[img.astype("float32")] を生成します

コンバータ.representative_dataset= 代表データ生成
converter.target_spec.supported_ops= [tf.lite.OpsSet.TFLITE_BUILTINS_INT8]
converter.inference_input_type= tf.uint8
converter.inference_output_type= tf.uint8

tflite_model = converter.convert()

open("model_int8.tflite", で"wb") を f: として
f.write(tflite_model)


model_int8.tfliteで推論を実行するコマンド

$ USE_GPU_INFERENCE=0 \
python3 label_image.py -m model_int8.tflite \
-e /usr/lib/liblitert_vx_delegate.so

これらの手順が正しいかどうか、助けてください。

eIQ ツールを使用してモデルを変換することも試みましたが、機能しませんでした。

関連記事: https://community.nxp.com/t5/i-MX-Processors/Tensorflow-Savedmodel-to-tflite-conversion-which-suppor...

私はこの問題にほぼ1か月間直面しています。解決策はありません。上記の通り私は運動しません。tflite でサポートされている ops を使用して tf savedmodel をゼロから開発することは可能ですか?

Re: Tensorflow Savedmodel to tflite conversion which supports IMX8MP NPU

こんにちは@subbareddyai


NXP EVK を使用している場合は、ここからデモイメージをダウンロードCANます。

https://www.nxp.com/design/design-center/software/embedded-software/i-mx-software/embedded-linux-for...


サードパーティのボードを使用している場合は、そのボードにお問い合わせて、移植された最新の BSP を入手してください。



よろしくお願いします、
志明

Re: Tensorflow Savedmodel to tflite conversion which supports IMX8MP NPU

こんにちは@Zhiming_Liuさん

返信ありがとうございます。

BSP バージョンと tflite バージョンについて教えていただけますか?


よろしくお願いいたします。

スバ・レディ

Re: Tensorflow Savedmodel to tflite conversion which supports IMX8MP NPU

こんにちは@subbareddyai

TFlite バージョンを更新するには、BSP バージョンをアップグレードすることを検討してください。

よろしくお願いします、
志明

Re: Tensorflow Savedmodel to tflite conversion which supports IMX8MP NPU

こんにちは、

返信ありがとうございます。下記の変換コードを試してみましたが、成功しませんでした。

TensorflowをTFとしてインポートする

# エクスポートしたSavedModelディレクトリへのパス
saved_model_dir = r "ssd-mobilenet-v2-tensorflow2-fpnlite-320x320-v1"

# SavedModel をロードする
model = tf .saved_model .load ( saved_model_dir )

# サービングのための具体的な関数を取得する
concrete_func = モデル.signatures["serving_default"]

# 入力形状を修正します(モデルの解像度と一致する必要があります。ここでは 320x320x3)
concrete_func .inputs[ 0 ].set_shape([ 1 , 320 , 320 , 3 ])

# TFLiteコンバーターを作成する
コンバータ = tf . lite . TFLiteConverter . from_concrete_functions ([ concrete_func ])

# 古いコンバータを強制する(EXP v2のような操作を回避)
コンバーター実験的な新しいコンバーター=誤り

# 組み込みオペレーションのみに制限する(NPU 互換性のため)
コンバーター.ターゲット仕様.サポートされている操作= [ tf . lite . OpsSet . TFLITE_BUILTINS ]

# (オプション)より小さく、より高速なモデルのための量子化
# コンバーターの最適化= [tf.lite.Optimize.DEFAULT]

# TFLiteに変換する
tflite_model =コンバーター. convert ()

# 変換したモデルを保存する
出力ファイル= "ssd_mobilenet_v2_fixed.tflite"
open ( output_file , "wb" )fとして実行します:
    f . write ( tflite_model )

印刷( f " 変換が完了しました。{ output_file} として 保存さ ました
 
保存したモデルを、imx8mp npu をサポートする tflite モデルに変換するための完全な手順があれば素晴らしいと思います。
Re: Tensorflow Savedmodel to tflite conversion which supports IMX8MP NPU

こんにちは、

1.TFLite モデルは EXP op バージョン 2 を使用していますが、これは使用しているランタイムではサポートされていません。

2.i.MX8MP デバイスの NPU デリゲートまたは TFLite ランタイムは古すぎるため、このオペレーション バージョンをサポートできません。

3. モデルが EXP などの演算を使用しないようにするか、それらのバージョン 1 のみを使用するようにする必要があります。これを実行するには、 converter.experimental_new_converter = Falseを使用して古いコンバータを強制します (これにより、新しい op バージョンを回避する可能性があります)。


よろしくお願いします、
志明

标记 (1)
无评分
版本历史
最后更新:
‎11-21-2025 05:47 PM
更新人: