ObjectDetector

public final class ObjectDetector

画像に対してオブジェクト検出を実行します。

API は、TFLite モデル メタデータを含む TFLite モデルを想定しています。

この API は、1 つの画像入力テンソルと 4 つの出力テンソルのモデルをサポートします。より具体的な要件は次のとおりです。

  • 入力画像のテンソル(kTfLiteUInt8/kTfLiteFloat32
    • サイズ [batch x height x width x channels] の画像入力。
    • バッチ推論はサポートされていません(batch は 1 である必要があります)。
    • RGB 入力のみがサポートされています(channels は 3 にする必要があります)。
    • 型が kTfLiteFloat32 の場合、入力の正規化のために NormalizationOptions をメタデータにアタッチする必要があります。
  • 出力テンソルは、DetectionPostProcess 演算の 4 つの出力でなければなりません。例:
    • ロケーション テンソル(kTfLiteFloat32):
      • サイズ [1 x num_results x 4] のテンソル。境界ボックスを表す内部配列 [上、左、右、下]。
      • BoundingBoxProperties はメタデータに関連付ける必要があり、type=BOUNDARIEScoordinate_type=RATIO を指定する必要があります。
    • クラスのテンソル(kTfLiteFloat32):
      • サイズ [1 x num_results] のテンソル。各値はクラスの整数インデックスを表します。
      • ラベルマップが TENSOR_VALUE_LABELS 関連ファイルとしてメタデータに適用されている場合、テンソル値をラベルに変換するために使用されます。
    • スコアテンソル(kTfLiteFloat32):
      • サイズ [1 x num_results] のテンソル。各値は検出されたオブジェクトのスコアを表します。
    • 検出テンソルの数(kTfLiteFloat32):
      • サイズ [1] のテンソルとしての整数 num_results。

このようなモデルの例については、TensorFlow Hub をご覧ください。

ネストされたクラス

クラス ObjectDetector.ObjectDetectorOptions ObjectDetector の設定オプション。 

パブリック メソッド

static ObjectDetector
createFromBuffer(コンテキスト コンテキスト、ByteBuffer modelBuffer)
モデルバッファとデフォルトの ObjectDetector.ObjectDetectorOptions から ObjectDetector インスタンスを作成します。
static ObjectDetector
createFromFile(コンテキスト コンテキスト、String modelPath)
モデルファイルとデフォルトの ObjectDetector.ObjectDetectorOptions から ObjectDetector インスタンスを作成します。
static ObjectDetector
createFromFile(コンテキスト コンテキスト、File modelFile)
モデルファイルとデフォルトの ObjectDetector.ObjectDetectorOptions から ObjectDetector インスタンスを作成します。
static ObjectDetector
createFromOptions(コンテキスト コンテキスト、ObjectDetector.ObjectDetectorOptions detectionOptions)
ObjectDetector.ObjectDetectorOptions から ObjectDetector インスタンスを作成します。
ObjectDetectorResult
detectMPImage 画像)
指定された単一の画像に対して、デフォルトの画像処理オプション(
ObjectDetectorResult
detectMPImage image、ImageProcessingOptions imageProcessingOptions)
指定された 1 つの画像に対してオブジェクト検出を実行します。
void
detectAsyncMPImage image、ImageProcessingOptions imageProcessingOptions、long timestampMs)
ライブ画像データを送信してオブジェクト検出を行います。結果は ObjectDetector.ObjectDetectorOptions で提供される OutputHandler.ResultListener で取得できます。
void
detectAsyncMPImage image, long timestampMs)
ライブ画像データを送信して、デフォルトの画像処理オプションでオブジェクト検出を行います。
ObjectDetectorResult
detectForVideoMPImage image、ImageProcessingOptions imageProcessingOptions、long timestampMs)
指定された動画フレームに対してオブジェクト検出を実行します。
ObjectDetectorResult
detectForVideoMPImage 画像、long timestampMs)
指定された動画フレームに対して、デフォルトの画像処理オプション(

継承されるメソッド

パブリック メソッド

public static ObjectDetector createFromBuffer (コンテキスト コンテキスト、ByteBuffer modelBuffer)

モデルバッファとデフォルトの ObjectDetector.ObjectDetectorOptions から ObjectDetector インスタンスを作成します。

パラメータ
コンテキスト Android ERROR(/Context)
modelBuffer 検出モデルの直接の ByteBuffer または ERROR(/MappedByteBuffer)
例外
ObjectDetector の作成中にエラーが発生した場合。

public static