ImageClassifier

パブリック最終クラスImageClassifier

画像の分類を実行します。

API は、オプションではあるが強く推奨される TFLiteモデル メタデータを備えた TFLite モデルを想定しています。

API は、1 つの画像入力テンソルと 1 つの分類出力テンソルを持つモデルをサポートします。より具体的に言うと、次のような要件があります。

  • 入力画像テンソル ( kTfLiteUInt8 / kTfLiteFloat32 )
    • サイズ[batch x height x width x channels]の画像入力。
    • バッチ推論はサポートされていません ( batch 1 である必要があります)。
    • RGB 入力のみがサポートされています ( channels 3 である必要があります)。
    • type がkTfLiteFloat32の場合、入力正規化のために NormalizationOptions をメタデータに付加する必要があります。
  • 出力スコア テンソル ( kTfLiteUInt8 / kTfLiteFloat32 )
    • [1 x N][1 x 1 x 1 x N]など、2 次元または 4 次元のNクラスを使用します。
    • ラベル ファイルをメタデータにパックする必要があります。画像分類器のメタデータの作成例を参照してください。ラベル ファイルがパックされていない場合は、結果のラベルとしてインデックスが使用されます。

このようなモデルの例はTensorFlow Hub にあります。

ネストされたクラス

クラスImageClassifier.ImageClassifierOptions ImageClassifier をセットアップするためのオプション。

パブリックメソッド

一覧<分類>
分類( TensorImage画像)
提供されたTensorImageに対して実際の分類を実行します。
一覧<分類>
分類( TensorImage画像、 ImageProcessingOptionsオプション)
ImageProcessingOptionsを使用して、提供されたTensorImageに対して実際の分類を実行します。
一覧<分類>
分類( MlImage画像)
提供されたMlImageに対して実際の分類を実行します。
一覧<分類>
分類( MlImage画像、 ImageProcessingOptionsオプション)
ImageProcessingOptionsを使用して、提供されたMlImageに対して実際の分類を実行します。
静的ImageClassifier
createFromBuffer ( ByteBuffer modelBuffer)
モデル バッファーとデフォルトのImageClassifier.ImageClassifierOptionsを使用してImageClassifierインスタンスを作成します。
静的ImageClassifier
createFromBufferAndOptions ( ByteBuffer modelBuffer、 ImageClassifier.ImageClassifierOptionsオプション)
モデル バッファーとImageClassifier.ImageClassifierOptionsを使用してImageClassifierインスタンスを作成します。
静的ImageClassifier
createFromFile (コンテキスト context、文字列モデルパス)
デフォルトのImageClassifier.ImageClassifierOptionsからImageClassifierインスタンスを作成します。
静的ImageClassifier
createFromFile (ファイルモデルファイル)
デフォルトのImageClassifier.ImageClassifierOptionsからImageClassifierインスタンスを作成します。
静的ImageClassifier
createFromFileAndOptions (コンテキスト コンテキスト、文字列モデルパス、 ImageClassifier.ImageClassifierOptionsオプション)
ImageClassifier.ImageClassifierOptionsからImageClassifierインスタンスを作成します。
静的ImageClassifier
createFromFileAndOptions (ファイルモデルファイル、 ImageClassifier.ImageClassifierOptionsオプション)
ImageClassifierインスタンスを作成します。

継承されたメソッド

パブリックメソッド

public List <分類>分類( TensorImage画像)

提供されたTensorImageに対して実際の分類を実行します。

ImageClassifier次のTensorImage色空間タイプをサポートします。

パラメーター
画像RGB または YUV イメージを表す UINT8 TensorImageオブジェクト
投げる
IllegalArgumentException画像の色空間タイプがサポートされていない場合

public List <分類>分類( TensorImage画像、 ImageProcessingOptionsオプション)

ImageProcessingOptionsを使用して、提供されたTensorImageに対して実際の分類を実行します。

ImageClassifier次のオプションをサポートしています。

ImageClassifier次のTensorImage色空間タイプをサポートします。

パラメーター
画像RGB または YUV イメージを表す UINT8 TensorImageオブジェクト
オプション
投げる
IllegalArgumentException画像の色空間タイプがサポートされていない場合

publicリスト<分類>分類( MlImage画像)

提供されたMlImageに対して実際の分類を実行します。

パラメーター
画像画像を表すMlImageオブジェクト
投げる
IllegalArgumentException画像のストレージ タイプまたは形式がサポートされていない場合

public List <分類>分類( MlImage画像、 ImageProcessingOptionsオプション)

ImageProcessingOptionsを使用して、提供されたMlImageに対して実際の分類を実行します。

ImageClassifier次のオプションをサポートしています。

パラメーター
画像画像を表すMlImageオブジェクト
オプションROI や回転などのオプションを構成します
投げる
IllegalArgumentException画像のストレージ タイプまたは形式がサポートされていない場合

public static ImageClassifier createFromBuffer ( ByteBuffer modelBuffer)

モデル バッファーとデフォルトのImageClassifier.ImageClassifierOptionsを使用してImageClassifierインスタンスを作成します。

パラメーター
モデルバッファ分類モデルの直接ByteBufferまたはMappedByteBuffer
投げる
IllegalArgumentExceptionモデル バッファーが直接ByteBufferまたはMappedByteBufferではない場合
IllegalStateException内部エラーがある場合
ランタイム例外他に特定されていないエラーがある場合

public static ImageClassifier createFromBufferAndOptions ( ByteBuffer modelBuffer、 ImageClassifier.ImageClassifierOptionsオプション)

モデル バッファーとImageClassifier.ImageClassifierOptionsを使用してImageClassifierインスタンスを作成します。

パラメーター
モデルバッファ分類モデルの直接ByteBufferまたはMappedByteBuffer
オプション
投げる
IllegalArgumentExceptionモデル バッファーが直接ByteBufferまたはMappedByteBufferではない場合
IllegalStateException内部エラーがある場合
ランタイム例外他に特定されていないエラーがある場合

public static ImageClassifier createFromFile (Context context, String modelPath)

デフォルトのImageClassifier.ImageClassifierOptionsからImageClassifierインスタンスを作成します。

パラメーター
コンテクスト
モデルパスアセット内のメタデータを含む分類モデルのパス
投げる
IO例外tflite モデルのロード時に I/O エラーが発生した場合
IllegalArgumentException引数が無効な場合
IllegalStateException内部エラーがある場合
ランタイム例外他に特定されていないエラーがある場合

public static ImageClassifier createFromFile ( File modelFile)

デフォルトのImageClassifier.ImageClassifierOptionsからImageClassifierインスタンスを作成します。

パラメーター
モデルファイル分類モデルFileインスタンス
投げる
IO例外tflite モデルのロード時に I/O エラーが発生した場合
IllegalArgumentException引数が無効な場合
IllegalStateException内部エラーがある場合
ランタイム例外他に特定されていないエラーがある場合

public static ImageClassifier createFromFileAndOptions (Context context、 String modelPath、 ImageClassifier.ImageClassifierOptionsオプション)

ImageClassifier.ImageClassifierOptionsからImageClassifierインスタンスを作成します。

パラメーター
コンテクスト
モデルパスアセット内のメタデータを含む分類モデルのパス
オプション
投げる
IO例外tflite モデルのロード時に I/O エラーが発生した場合
IllegalArgumentException引数が無効な場合
IllegalStateException内部エラーがある場合
ランタイム例外他に特定されていないエラーがある場合

public static ImageClassifier createFromFileAndOptions (ファイルmodelFile、 ImageClassifier.ImageClassifierOptionsオプション)

ImageClassifierインスタンスを作成します。

パラメーター
モデルファイル分類モデルFileインスタンス
オプション
投げる
IO例外tflite モデルのロード時に I/O エラーが発生した場合
IllegalArgumentException引数が無効な場合
IllegalStateException内部エラーがある場合
ランタイム例外他に特定されていないエラーがある場合