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=BOUNDARIES
とcoordinate_type=RATIO
を指定する必要があります。
- サイズ
- クラスのテンソル(
kTfLiteFloat32
):- サイズ
[1 x num_results]
のテンソル。各値はクラスの整数インデックスを表します。 - ラベルマップが
TENSOR_VALUE_LABELS
関連ファイルとしてメタデータに適用されている場合、テンソル値をラベルに変換するために使用されます。
- サイズ
- スコアテンソル(
kTfLiteFloat32
):- サイズ
[1 x num_results]
のテンソル。各値は検出されたオブジェクトのスコアを表します。
- サイズ
- 検出テンソルの数(
kTfLiteFloat32
):- サイズ
[1]
のテンソルとしての整数 num_results。
- サイズ
- ロケーション テンソル(
このようなモデルの例については、TensorFlow Hub をご覧ください。
ネストされたクラス
クラス | ObjectDetector.ObjectDetectorOptions | ObjectDetector の設定オプション。 |
パブリック メソッド
継承されるメソッド
パブリック メソッド
public static ObjectDetector createFromBuffer (コンテキスト コンテキスト、ByteBuffer modelBuffer)
モデルバッファとデフォルトの ObjectDetector.ObjectDetectorOptions
から ObjectDetector
インスタンスを作成します。
パラメータ
コンテキスト | Android ERROR(/Context) 。 |
---|---|
modelBuffer | 検出モデルの直接の ByteBuffer または ERROR(/MappedByteBuffer) 。 |
例外
ObjectDetector の作成中にエラーが発生した場合。 |