日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java blob转file_人工智能-Object Detection API 模型转tflite并验证

發布時間:2025/3/20 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java blob转file_人工智能-Object Detection API 模型转tflite并验证 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近在用TensorFlow Object Detection API訓練目標檢測模型,訓練好的pb模型大小17.6M,用pb預測效果不錯,于是想著如何在手機端運行,查看官網關于tflite的轉換,網址:https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/running_on_mobile_tensorflowlite.md。

預測使用的pb模型:

在主目錄下的research目錄執行如下:

生成預測使用的pb文件

注意里面的相關路徑需要換成自己的ckpt的目錄。執行完后,會看到一個名字為--output_directory指定的目錄。這里為exported_graphs目錄,里面包含了一個SavedModel 和frozen graph,其中的.pb文件就是預測使用的。

如上轉換pb和預測過程參考我之前的文章即可。

關于tflite,需要使用如下操作:

生成frozen graph

注意第二行pipeline_config_path為你的pipeline.config目錄路徑,trained_config_path路徑為訓練好的ckpt模型文件,output_dir為tflite輸出目錄文件夾名字,執行完后在tflite目錄會看到兩個文件tflite_graph.pb and tflite_graph.pbtxt.

接下來就是轉tflite了,之前嘗試了其他轉tflite的方式,雖然只有幾行代碼,但發現一直有問題,因此按照官網要求一步一步轉,這次使用TOCO轉tflite,首先需要安裝TensorFlow源碼并編譯。。。。。切記,要不然找不到bazel目錄。。。。

編譯生成量化的tflite

?注意在編譯后的bazel同一級目錄執行,input_file為上一步生成的tflite_graph.pb文件。output_file為本次要生成的tflite文件。其他的為固定寫法,如果你的模型輸入不是300x300注意改input_shapes.執行完就能看到一個detect.tflite文件,該文件大小17M多,這次量化后的模型。

float類型的模型轉換方式:

生成float(未量化)的tflite

?如上生成detect.tflite文件。

注意:在對比tflite和pb的一致性時,輸入到tflite的圖片需要進行(image-127.5)/128操作。否則模型輸出結果和pb文件對不上。

這樣pb文件和tflite預測的結果就能一樣,不過float模型大小和pb文件差不多,而且量化的時候模型大小為0,不明白為什么量化的時候模型為量化成功原因,現在只能使用float類型的tflite

后續再講其他轉pb和tflite的方式以及驗證方式。

喜歡的朋友和點擊關注哦

總結

以上是生活随笔為你收集整理的java blob转file_人工智能-Object Detection API 模型转tflite并验证的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。