AIモデル変換ツール

 

はじめに


ツールダウンロード申請はこちらから

Dockerファイルの提供につきまして、Ambarella社から承認の連絡を受けた後の提供となります。そのため、お問い合わせからご提供までは数日お時間をいただいております。

 

Dockerファイル バージョン履歴


現状ご使用のツールで問題がなければ、ツール更新は必須ではありません。

Jun 4, 2024 v1.21

  • ONNXのサンプルモデルに yolov8 を追加

Jan 23, 2024 v1.20

  • SoCベンダー提供のCVツールを更新(CNNGen Ver.2.5.6.0.1245)

  • DnnSdAppをv0.5に更新
    AIモデルの入力に対する設定項目を追加。詳細はこちらをご覧ください。

  • ドキュメント更新

Apr 12, 2023 v1.19

  • SoCベンダー提供のCVツールを更新(CNNGen Ver.2.5.2.0.1210)

Jan 19, 2023 v1.18

  • SoCベンダー提供のCVツールを更新(CNNGen Ver.2.4.2.12.1113)

Dec 28, 2022 v1.17

  • Caffe SSDモデルの変換サポートを終了いたします。

  • ドキュメント更新

Sep 26, 2022 v1.16

  • SoCベンダー提供のCVツールを更新

  • 注意:Caffe SSDモデルの変換が実施できません。お急ぎの場合はお問い合わせください。

 

概要


AIを使用する追加アプリを開発する際には、Caffe / Tensorflow / ONNXで作成したモデルを

AIカメラ内蔵のアクセラレータ『CVFlow』で実行可能なバイナリ「cavalry.bin」に変換する必要があります。

CVツールはこの変換処理を行うものです。

サポートレイヤーについて

  • 本ツールは、ユーザがAIモデルの学習に習熟していることを前提として作成されています。

  • CVツールはAIモデルの学習に関する機能を提供するものではありません。
    各フレームワークでの学習は、ユーザが前もって実施してください。

  • CVツールはAIモデルとしてCNNを対象としています。

  • tensorflow v2.xのモデルは事前にTensorflow LiteまたはONNXに変換が必要です。

  • PyTorchのモデルは事前にONNXに変換が必要です。

  • ambaCV2XカメラとambaCV5Xカメラとで、別々のバイナリ(cavalry.bin)が必要です。

 

開発フロー


CVツールでは図中の色付きの項目に対する処理を実施します。

[Conversion]ではモデルの再学習は行いません。

カメラのアクセラレータ『CVFlow』は16bitまたは8bitの固定小数点で演算を行うため、元のモデルは16bitまたは8bitに量子化されます。

量子化の設定は、下記3種類からユーザが選択可能です。

  • 16bit固定

  • 16bit/8bit混合(各演算のbit幅は、ツールが自動で決定します)

  • 8bit固定

通常、8bitの方が推論時間は高速になりますが、精度は劣化します。

 

環境構築


環境構築手順はこちらをご参照ください。

 

モデル変換


サンプルモデル変換については下記ページをご参照ください。

 設定ファイル仕様・サンプルモデル変換(Caffe編)

 設定ファイル仕様・サンプルモデル変換(Tensorflow編)

 設定ファイル仕様・サンプルモデル変換(ONNX/PyTorch編)

 

モデル評価


変換したモデルの評価に使用できるアプリをご用意しております。

下記ページをご参照ください。

AIモデル変換ツール:モデルの評価 - FAQ - Development Partner Portal (i-pro.com)

 

チュートリアル:アノテーション~モデル変換


アノテーションツール『labelImg』を使って、ONNXモデルの作成からモデルの変換、i-PROカメラでの実行までを行ってみたチュートリアルを公開しております。

アノテーションツール『labelImg』を使ったAIモデル作成 - FAQ - Development Partner Portal (i-pro.com)

 

責任制限


  • 本ツールはセキュリティカメラ上で動作するアプリを開発するための機能を提供するもので、ツールを利用したアプリの動作保証を行うものではありません。また、追加アプリ動作中はセキュリティカメラに組み込まれた機能の動作は保証されません。

  • 付属のサンプルはツールの使用方法を記述したものであり、実際の監視運用を目的として作成されたものではありません。

  • 弊社は、いかなる場合も以下に関して一切の責任を負わないものとします。

    • 本製品に関連して直接または間接に発生した、偶発的、特殊、または結果的損害・被害

    • お客様の故意や誤使用、不注意による障害または本製品の損傷など

    • お客様による本商品の逆コンパイル、逆アセンブルが行われた場合、それに起因するかどうかにかかわらず、発生した一切の故障または不具合

    • セキュリティデバイスからダウンロードしたデータ等のパソコンにおける消失、あるいは漏洩等によるいかなる損害、クレームなど

    • ネットワーク上からの不正アクセスなど悪意を持った第三者による画像データ、音声データ、認証情報(ユーザー名、パスワード)の漏えいなどによるいかなる損害、クレームなど