axinc-ai / ailia-models-tflite

Quantized version of model library
21 stars 1 forks source link

Implement midas #55

Closed craft-c closed 1 year ago

craft-c commented 1 year ago

とりあえず、float32 のモデルのみ。 int8 モデルはまだ完成していない。

int8 モデル については、 openvino2tensorflow を用いて作業を進めている。

また、量子化の際、キャリブレーションに入力画像1枚を用いた場合、 まずまずの推定精度が得られた。 キャリブレーション用の画像データセットを変更することで、精度を出せる可能性はある。

image input_depth_qmpy_384_test

craft-c commented 1 year ago

31

craft-c commented 1 year ago

 -midas.onnx → .float(int8) への変換作業について   -いろいろ試したが、精度の良いモデルが得られない。

 -現在試している変換方法は2種類ある   -onnx2tfを用いる方法    -saved_modelの出力までは可能    -その後のpythonスクリプトを用いた量子化が上手くいかず?精度が出ない    -あと、1枚の画像推論にとても時間がかかる(15分ほど)    -時間がもったいないので、いったん保留   -openvino2tensorflow を用いる方法    -saved_modelの出力までは問題ないと思う。    -量子化の際にテスト画像1枚のみでキャリブレーションしたモデルの精度はまあまあ良かった。    -COCO2017 の 5000枚の画像セットを用いたモデルでは、精度はいまいち。    -キャリブレーション用の画像データセットを変更することで精度を出せる可能性はある。    -推論に時間はかからない。2~3秒で終わる

craft-c commented 1 year ago

image

craft-c commented 1 year ago

~現状メモ~

~int8モデルを用いる推論の際に、 dtype = float にすると、精度がよくなりました。~

~推論結果をまとめたpdfを添付します。 大きな問題点は無いように思います。~

~ただ、気になる細かい点がいくつかあるので、 その部分を修正・確認したいと思います。~

craft-c commented 1 year ago

@kyakuno midasサンプルの推論結果を添付したpdfにまとめております。 全体的に問題はないと思いますが、気になる部分が無くはないです。 気になる部分については、添付したpdf内に赤枠で示しております。 midas_result_0410.pdf

また、変換したモデルは こちら からダウンロードできます。 現時点で最も精度の良い推論結果が得られたモデルです。

網羅的に、試せる手法は試し切りました。 自分としては、これで一旦完成だと思っているのですが、 問題点ございましたら、指摘していただきたいです。修正します。

作成したmidasサンプルは こちら から確認できます。

kyakuno commented 1 year ago

ありがとうございます!動作確認できました。精度もいい感じだと思います。