ImageSegmenter

public final class ImageSegmenter

画像に対して画像セグメンテーションを実行します。

ImageSegmenter は、入力画像を受け取って出力を返すものの、戻り値のディープコピーを必要とする標準のセグメンテーション API ERROR(/segment)ERROR(/segmentForVideo) に加えて、コールバック API ERROR(/segmentWithResultListener)ERROR(/segmentForVideoWithResultListener) もサポートしています。これにより、ゼロコピーで出力にアクセスできます。

コールバック API は、ImageSegmenter のすべての RunningMode で使用できます。コールバック API を使用するように、ImageSegmenter.ImageSegmenterOptionsOutputHandler.ResultListener を適切に設定します。

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

  • 入力画像 MPImage
    • 画像セグメンタが実行される画像。
  • 出力 ImageSegmenterResult ImageSegmenterResult
    • セグメント化されたマスクを含む ImageSegmenterResult。

ネストされたクラス

クラス ImageSegmenter.ImageSegmenterOptions ImageSegmenter の設定オプション。 
クラス ImageSegmenter.SegmentationOptions ImageSegmenter のランタイムの動作を構成するオプション。 

パブリック メソッド

static ImageSegmenter
createFromOptions(コンテキスト コンテキスト、ImageSegmenter.ImageSegmenterOptionssegmenterOptions)
ImageSegmenter.ImageSegmenterOptions から ImageSegmenter インスタンスを作成します。
List<String>
getLabels()
ImageSegmenter が認識できるカテゴリラベル リストを取得します。
ImageSegmenterResult
segmentMPImage image、ImageSegmenter.SegmentationOptions extensionsOptions)
指定された 1 つの画像に対して画像セグメンテーションを実行します。
ImageSegmenterResult
segmentMPImage image、ImageProcessingOptions imageProcessingOptions)
指定された 1 つの画像に対して画像セグメンテーションを実行します。
ImageSegmenterResult
segmentMPImage イメージ)
指定された単一の画像に対して、デフォルトの画像処理オプション(
void
segmentAsyncMPImage image、ImageProcessingOptions imageProcessingOptions、long timestampMs)
ライブ画像データを送信して画像セグメンテーションを実行します。結果は ImageSegmenter.ImageSegmenterOptions で指定される OutputHandler.ResultListener を介して取得できます。
void
segmentAsync(MPImage image, ImageSegmenter.SegmentationOptions extensionsOptions, long timestampMs)
ライブ画像データを送信して画像セグメンテーションを実行します。結果は ImageSegmenter.ImageSegmenterOptions で指定される OutputHandler.ResultListener を介して取得できます。
void
segmentAsync(MPImage image, long timestampMs)
ライブ画像データを送信して、デフォルトの画像処理オプションで画像セグメンテーションを実行します。
ImageSegmenterResult
segmentForVideoMPImage image、ImageProcessingOptions imageProcessingOptions、long timestampMs)
指定された動画フレームで画像セグメンテーションを実行します。
ImageSegmenterResult
segmentForVideoMPImage イメージ、long timestampMs)
指定された動画フレームに対して、デフォルトの画像処理オプションを使用して画像セグメンテーションを実行します。
ImageSegmenterResult
segmentForVideoMPImage image、ImageSegmenter.SegmentationOptionssegmentationOptions、long timestampMs)
指定された動画フレームで画像セグメンテーションを実行します。
void
segmentForVideoWithResultListenerMPImage image、ImageProcessingOptions imageProcessingOptions、long timestampMs)
指定された動画フレームに対して画像セグメンテーションを実行し、ImageSegmenter.ImageSegmenterOptionsOutputHandler.ResultListener を介してゼロコピーされた結果を提供します。
void
segmentForVideoWithResultListenerMPImage image、ImageSegmenter.SegmentationOptionssegmentationOptions、long timestampMs)
指定された動画フレームに対して画像セグメンテーションを実行し、ImageSegmenter.ImageSegmenterOptionsOutputHandler.ResultListener を介してゼロコピーされた結果を提供します。
void
segmentForVideoWithResultListenerMPImage イメージ、long timestampMs)
指定された動画フレームに対して、デフォルトの画像処理オプションを使用して画像セグメンテーションを実行します。
void
segmentWithResultListenerMPImage イメージ、ImageProcessingOptions imageProcessingOptions)
指定された単一の画像に対して画像セグメンテーションを実行し、ImageSegmenter.ImageSegmenterOptionsOutputHandler.ResultListener を介してゼロコピーされた結果を提供します。
void
segmentWithResultListenerMPImage イメージ)
指定された単一の画像に対して、デフォルトの画像処理オプション(
void
segmentWithResultListenerMPImage image、ImageSegmenter.SegmentationOptionssegmentationOptions)
指定された単一の画像に対して画像セグメンテーションを実行し、ImageSegmenter.ImageSegmenterOptionsOutputHandler.ResultListener を介してゼロコピーされた結果を提供します。

継承されるメソッド

パブリック メソッド

public static ImageSegmenter createFromOptions (コンテキスト コンテキスト、ImageSegmenter.ImageSegmenterOptionssegmenterOptions)

ImageSegmenter.ImageSegmenterOptions から ImageSegmenter インスタンスを作成します。

パラメータ
コンテキスト Android ERROR(/Context)
segmenterOptions ImageSegmenter.ImageSegmenterOptions インスタンス。
例外
ImageSegmenter の作成中にエラーが発生した場合。

public List<String> getLabels ()

ImageSegmenter が認識できるカテゴリラベル リストを取得します。CATEGORY_MASK タイプの場合、カテゴリマスクのインデックスはラベルリスト内のカテゴリに対応します。CONFIDENCE_MASK 型の場合、インデックスの出力マスクリストはラベルリスト内のカテゴリに対応します。

モデルファイルに labelmap が指定されていない場合は、空のラベルリストが返されます。

public ImageSegmenterResult segment (MPImage image, ImageSegmenter.SegmentationOptions segmentationOptions)

指定された 1 つの画像に対して画像セグメンテーションを実行します。このメソッドは、ImageSegmenterERROR(/RunningMode.IMAGE) で作成された場合にのみ使用します。入力画像形式の Java ドキュメントを更新する。

ImageSegmenter は、次の色空間タイプをサポートしています。

パラメータ
イメージ 処理する MediaPipe MPImage オブジェクト。
segmentationOptions ImageSegmenter のランタイムの動作を構成するために使用される ImageSegmenter.SegmentationOptions
例外
内部エラーが発生した場合。または、ImageSegmenterOutputHandler.ResultListener で作成された場合です。

public ImageSegmenterResult segment (MPImage image, ImageProcessingOptions imageProcessingOptions)

指定された 1 つの画像に対して画像セグメンテーションを実行します。出力マスクは入力画像と同じサイズになります。このメソッドは、ImageSegmenterERROR(/RunningMode.IMAGE) で作成された場合にのみ使用します。入力画像形式の Java ドキュメントを更新。

ImageSegmenter は、次の色空間タイプをサポートしています。

パラメータ
イメージ 処理する MediaPipe MPImage オブジェクト。
imageProcessingOptions 推論を実行する前に入力画像を処理する方法を指定する ImageProcessingOptions。このタスクでは、関心領域はサポートされていませんImageProcessingOptions.regionOfInterest() を指定すると、このメソッドは IllegalArgumentException をスローします。
例外
IllegalArgumentException ImageProcessingOptions が関心のある地域を指定している場合。
内部エラーが発生した場合。または、ImageSegmenterOutputHandler.ResultListener で作成された場合です。

public ImageSegmenterResult segment MPImage 画像)

指定された 1 つの画像に対して、デフォルトの画像処理オプションを使用して(つまり、回転を適用せずに)画像セグメンテーションを実行します。出力マスクは入力画像と同じサイズになります。このメソッドは、ImageSegmenterERROR(/RunningMode.IMAGE) で作成された場合にのみ使用します。入力画像形式の Java ドキュメントを更新。

ImageSegmenter は、次の色空間タイプをサポートしています。

パラメータ
イメージ 処理する MediaPipe MPImage オブジェクト。
例外
内部エラーが発生した場合。または、ImageSegmenterOutputHandler.ResultListener で作成された場合です。

public void segmentAsync (MPImage image, ImageProcessingOptions imageProcessingOptions, long timestampMs)

ライブ画像データを送信して画像セグメンテーションを実行します。結果は ImageSegmenter.ImageSegmenterOptions で指定される OutputHandler.ResultListener を介して取得できます。出力マスクは入力画像と同じサイズになります。このメソッドは、ImageSegmenterERROR(/RunningMode.LIVE_STREAM) で作成された場合にのみ使用します。

入力画像が画像セグメンタにいつ送信されたかを示すタイムスタンプ(ミリ秒単位)を指定する必要があります。入力タイムスタンプは単調に増加している必要があります。

ImageSegmenter は、次の色空間タイプをサポートしています。

パラメータ
イメージ 処理する MediaPipe MPImage オブジェクト。
imageProcessingOptions 推論を実行する前に入力画像を処理する方法を指定する ImageProcessingOptions。このタスクでは、関心領域はサポートされていませんImageProcessingOptions.regionOfInterest() を指定すると、このメソッドは IllegalArgumentException をスローします。
timestampMs 入力タイムスタンプ(ミリ秒単位)。
例外
IllegalArgumentException ImageProcessingOptions が関心のある地域を指定している場合。
内部エラーが発生した場合。

public void segmentAsync MPImage image, ImageSegmenter.SegmentationOptionssegmentationOptions, long timestampMs)

ライブ画像データを送信して画像セグメンテーションを実行します。結果は ImageSegmenter.ImageSegmenterOptions で指定される OutputHandler.ResultListener を介して取得できます。このメソッドは、ImageSegmenterERROR(/RunningMode.LIVE_STREAM) で作成された場合にのみ使用します。

入力画像が画像セグメンタにいつ送信されたかを示すタイムスタンプ(ミリ秒単位)を指定する必要があります。入力タイムスタンプは単調に増加している必要があります。

ImageSegmenter は、次の色空間タイプをサポートしています。

パラメータ
イメージ 処理する MediaPipe MPImage オブジェクト。
segmentationOptions ImageSegmenter のランタイムの動作を構成するために使用される ImageSegmenter.SegmentationOptions
timestampMs 入力タイムスタンプ(ミリ秒単位)。
例外
内部エラーが発生した場合。

public void segmentAsync (MPImage image, long timestampMs)

ライブ画像データを送信して、デフォルトの画像処理オプション(回転を適用しない)で画像セグメンテーションを実行します。結果は ImageSegmenter.ImageSegmenterOptions で提供される OutputHandler.ResultListener を介して取得できます。出力マスクは入力画像と同じサイズになります。このメソッドは、ImageSegmenterERROR(/RunningMode.LIVE_STREAM) で作成された場合にのみ使用します。

入力画像が画像セグメンタにいつ送信されたかを示すタイムスタンプ(ミリ秒単位)を指定する必要があります。入力タイムスタンプは単調に増加している必要があります。

ImageSegmenter は、次の色空間タイプをサポートしています。

パラメータ
イメージ 処理する MediaPipe MPImage オブジェクト。
timestampMs 入力タイムスタンプ(ミリ秒単位)。
例外
内部エラーが発生した場合。

public ImageSegmenterResult segmentForVideo (MPImage image, ImageProcessingOptions imageProcessingOptions, long timestampMs)

指定された動画フレームで画像セグメンテーションを実行します。出力マスクは入力画像と同じサイズになります。このメソッドは、ImageSegmenterERROR(/RunningMode.VIDEO) で作成された場合にのみ使用します。

動画フレームのタイムスタンプ(ミリ秒単位)を提供する必要があります。入力タイムスタンプは単調に増加している必要があります。

ImageSegmenter は、次の色空間タイプをサポートしています。

パラメータ
イメージ 処理する MediaPipe MPImage オブジェクト。
imageProcessingOptions 推論を実行する前に入力画像を処理する方法を指定する ImageProcessingOptions。このタスクでは、関心領域はサポートされていませんImageProcessingOptions.regionOfInterest() を指定すると、このメソッドは IllegalArgumentException をスローします。
timestampMs 入力タイムスタンプ(ミリ秒単位)。
例外
IllegalArgumentException ImageProcessingOptions が関心のある地域を指定している場合。
内部エラーが発生した場合。または、ImageSegmenterOutputHandler.ResultListener で作成された場合です。

public ImageSegmenterResult segmentForVideo (MPImage image, long timestampMs)

指定された動画フレームに対して、デフォルトの画像処理オプションを使用して(回転を適用せずに)画像セグメンテーションを実行します。出力マスクは入力画像と同じサイズになります。このメソッドは、ImageSegmenterERROR(/RunningMode.VIDEO) で作成された場合にのみ使用します。

動画フレームのタイムスタンプ(ミリ秒単位)を提供する必要があります。入力タイムスタンプは単調に増加している必要があります。

ImageSegmenter は、次の色空間タイプをサポートしています。

パラメータ
イメージ 処理する MediaPipe MPImage オブジェクト。
timestampMs 入力タイムスタンプ(ミリ秒単位)。
例外
内部エラーが発生した場合。または、ImageSegmenterOutputHandler.ResultListener で作成された場合です。

public ImageSegmenterResult segmentForVideo (MPImage image, ImageSegmenter.SegmentationOptions segmentationOptions, long timestampMs)

指定された動画フレームで画像セグメンテーションを実行します。このメソッドは、ImageSegmenterERROR(/RunningMode.VIDEO) で作成された場合にのみ使用します。

動画フレームのタイムスタンプ(ミリ秒単位)を提供する必要があります。入力タイムスタンプは単調に増加している必要があります。

ImageSegmenter は、次の色空間タイプをサポートしています。

パラメータ
イメージ 処理する MediaPipe MPImage オブジェクト。
segmentationOptions ImageSegmenter のランタイムの動作を構成するために使用される ImageSegmenter.SegmentationOptions
timestampMs 入力タイムスタンプ(ミリ秒単位)。
例外
内部エラーが発生した場合。または、ImageSegmenterOutputHandler.ResultListener で作成された場合です。

public void segmentForVideoWithResultListener MPImage イメージ、ImageProcessingOptions imageProcessingOptions、long timestampMs)

指定された動画フレームに対して画像セグメンテーションを実行し、ImageSegmenter.ImageSegmenterOptionsOutputHandler.ResultListener を介してゼロコピーされた結果を提供します。出力マスクは入力画像と同じサイズになります。このメソッドは、ImageSegmenterERROR(/RunningMode.VIDEO) で作成された場合にのみ使用します。

動画フレームのタイムスタンプ(ミリ秒単位)を提供する必要があります。入力タイムスタンプは単調に増加している必要があります。

ImageSegmenter は、次の色空間タイプをサポートしています。

パラメータ
イメージ 処理する MediaPipe MPImage オブジェクト。
imageProcessingOptions
timestampMs 入力タイムスタンプ(ミリ秒単位)。
例外
IllegalArgumentException ImageProcessingOptions が関心のある地域を指定している場合。
内部エラーが発生した場合。または、ImageSegmenter.ImageSegmenterOptionsOutputHandler.ResultListener を設定して ImageSegmenter が作成されていない場合。

public void segmentForVideoWithResultListener MPImage イメージ、ImageSegmenter.SegmentationOptionssegmentationOptions、long timestampMs)

指定された動画フレームに対して画像セグメンテーションを実行し、ImageSegmenter.ImageSegmenterOptionsOutputHandler.ResultListener を介してゼロコピーされた結果を提供します。このメソッドは、ImageSegmenterERROR(/RunningMode.VIDEO) で作成された場合にのみ使用します。

動画フレームのタイムスタンプ(ミリ秒単位)を提供する必要があります。入力タイムスタンプは単調に増加している必要があります。

ImageSegmenter は、次の色空間タイプをサポートしています。

パラメータ
イメージ 処理する MediaPipe MPImage オブジェクト。
segmentationOptions ImageSegmenter のランタイムの動作を構成するために使用される ImageSegmenter.SegmentationOptions
timestampMs 入力タイムスタンプ(ミリ秒単位)。
例外
内部エラーが発生した場合。または、ImageSegmenter.ImageSegmenterOptionsOutputHandler.ResultListener を設定して ImageSegmenter が作成されていない場合。

public void segmentForVideoWithResultListener (MPImage image, long timestampMs)

指定された動画フレームに対して、デフォルトの画像処理オプション(回転は適用しない)で画像セグメンテーションを実行します。ImageSegmenter.ImageSegmenterOptionsOutputHandler.ResultListener を介して、ゼロコピーされた結果を提供します。出力マスクは入力画像と同じサイズになります。このメソッドは、ImageSegmenterERROR(/RunningMode.VIDEO) で作成された場合にのみ使用します。

動画フレームのタイムスタンプ(ミリ秒単位)を提供する必要があります。入力タイムスタンプは単調に増加している必要があります。

ImageSegmenter は、次の色空間タイプをサポートしています。

パラメータ
イメージ 処理する MediaPipe MPImage オブジェクト。
timestampMs 入力タイムスタンプ(ミリ秒単位)。
例外
内部エラーが発生した場合。または、ImageSegmenter.ImageSegmenterOptionsOutputHandler.ResultListener を設定して ImageSegmenter が作成されていない場合。

public void segmentWithResultListener MPImage イメージ、ImageProcessingOptions imageProcessingOptions)

指定された単一の画像に対して画像セグメンテーションを実行し、ImageSegmenter.ImageSegmenterOptionsOutputHandler.ResultListener を介してゼロコピーされた結果を提供します。出力マスクは入力画像と同じサイズになります。このメソッドは、ImageSegmenterERROR(/RunningMode.IMAGE) で作成された場合にのみ使用します。

入力画像形式の Java ドキュメントを更新。

ImageSegmenter は、次の色空間タイプをサポートしています。

パラメータ
イメージ 処理する MediaPipe MPImage オブジェクト。
imageProcessingOptions 推論を実行する前に入力画像を処理する方法を指定する ImageProcessingOptions。このタスクでは、関心領域はサポートされていませんImageProcessingOptions.regionOfInterest() を指定すると、このメソッドは IllegalArgumentException をスローします。
例外
IllegalArgumentException ImageProcessingOptions が関心のある地域を指定している場合。
内部エラーが発生した場合。または、ImageSegmenter.ImageSegmenterOptionsOutputHandler.ResultListener を設定して ImageSegmenter が作成されていない場合。

public void segmentWithResultListener MPImage 画像)

指定された 1 つの画像に対して、デフォルトの画像処理オプション(回転は適用しない)で画像セグメンテーションを実行します。また、ImageSegmenter.ImageSegmenterOptionsOutputHandler.ResultListener を介して、ゼロコピーされた結果を提供します。出力マスクは入力画像と同じサイズになります。このメソッドは、ImageSegmenterERROR(/RunningMode.IMAGE) で作成された場合にのみ使用します。

入力画像形式の Java ドキュメントを更新。

ImageSegmenter は、次の色空間タイプをサポートしています。

パラメータ
イメージ 処理する MediaPipe MPImage オブジェクト。
例外
内部エラーが発生した場合。または、ImageSegmenter.ImageSegmenterOptionsOutputHandler.ResultListener を設定して ImageSegmenter が作成されていない場合。

public void segmentWithResultListener MPImage 画像、ImageSegmenter.SegmentationOptionssegmentationOptions)

指定された単一の画像に対して画像セグメンテーションを実行し、ImageSegmenter.ImageSegmenterOptionsOutputHandler.ResultListener を介してゼロコピーされた結果を提供します。このメソッドは、ImageSegmenterERROR(/RunningMode.IMAGE) で作成された場合にのみ使用します。

入力画像形式の Java ドキュメントを更新。

ImageSegmenter は、次の色空間タイプをサポートしています。

パラメータ
イメージ 処理する MediaPipe MPImage オブジェクト。
segmentationOptions ImageSegmenter のランタイムの動作を構成するために使用される ImageSegmenter.SegmentationOptions
例外
内部エラーが発生した場合。または、ImageSegmenter.ImageSegmenterOptionsOutputHandler.ResultListener を設定して ImageSegmenter が作成されていない場合。