使用模型優化工具將自訂 SSD MobileNet V2 模型轉換為 IR 的步驟
將預先訓練的 SSD MobileNetV2 模型轉換為 IR,但無法轉換自訂訓練的模型。
- 匯出的冷凍模型圖:
python object_detection/export_inference_graph.py \ --input_type=image_tensor \ --pipeline_config_path={PIPELINE_CONFIG_PATH® \ --output_directory=「exported_model」 \ --trained_checkpoint_prefix=「/content/models/research/helmet_detector/model.ckpt-10000」
- 嘗試使用 Model Optimizer 將凍結模型圖形轉換為 IR:
python mo_tf.py \ --input_model ./exported_model/frozen_inference_graph.pb \ --tensorflow_use_custom_operations_config擴充/front/tf/ssd_v2_support.json \ --tensorflow_object_detection_api_pipeline_config output_dir output_ncs tensorflow_use_custom_operations_config ./helment_detector_tf1.config \ --input_shape [1,300,300,3] \ --reverse_input_channels \ --output_dir output_ncs \ --data_type FP16
- 遇到錯誤:
[ 錯誤 ]執行替換器「REPLACEMENT_ID」():在解壓縮節點 StatefulPartedCall/Postprocesor/BatchMulti MaximizeMaxSuppression/map/而時發生意外異常。原始例外訊息:'^後處理器/BatchMulti BuildersMaxSuppression/map/while/Multi-PressMaxSuppression/SortByField/Assert/Assert'
在 Model Optimizer 轉換命令中,使用適用于 TensorFlow* 1 模型所產生的 SSD MobileNetV2 模型的適當自訂操作配置檔: ssd_support_api_v1.15.json。如需轉換說明, 請參閱 下列頁面:如何轉換模型
python3 ./openvino/model-optimizer/mo_tf.py --input_model ./detector/exported_model/frozen_inference_graph.pb --tensorflow_use_custom_operations_config ./openvino/model-optimizer/extensions/front/t ssd_support_api_v1.15.json --tensorflow_object_detection_api_pipeline_config./偵測器/helment_detector_tf1.config --input_shape [1,300,300,3] --reverse_input_channels --data_type FP16