ImageProcessor

パブリック クラスImageProcessor

ImageProcessor は、 TensorImage前処理および後処理のためのヘルパー クラスです。 ImageOperatorのチェーンを実行することでTensorImage別の TensorImage に変換できます。

使用例:

   ImageProcessor processor = new ImageProcessor.Builder()
       .add(new ResizeOp(224, 224, ResizeMethod.NEAREST_NEIGHBOR)
       .add(new Rot90Op())
       .add(new NormalizeOp(127.5f, 127.5f))
       .build();
   TensorImage anotherTensorImage = processor.process(tensorImage);
 

警告: ImageProcessorのインスタンスは、 updateNumberOfRotations(int)ではスレッドセーフではありません。回転数を更新してから画像を処理する ( SequentialProcessor.process(T)を使用する) ことは、同時アクセスから保護する必要があります。スレッドごとに個別のImageProcessorインスタンスを作成することをお勧めします。複数のスレッドがImageProcessorに同時にアクセスする場合は、外部で同期する必要があります。

ネストされたクラス

クラスImageProcessor.Builder ImageProcessor を作成するための Builder。後で実行できます。

パブリックメソッド

RectF
inverseTransform (RectF 長方形、int inputImageHeight、int inputImageWidth)
長方形を結果イメージの座標系から入力イメージの座標系に変換します。
ポイントF
inverseTransform (PointF ポイント、int inputImageHeight、int inputImageWidth)
結果イメージの座標系から入力イメージの座標系に点を変換します。
テンソル画像
プロセス( TensorImage画像)
準備されたTensorOperatorを使用してTensorImageオブジェクトを処理します。
空所
updateNumberOfRotations (int k)
このImageProcessorの最初のRot90Opの回転数を更新します。
同期ボイド
updateNumberOfRotations (int k、int 出現)
このImageProcessorでのoccurrenceによって指定されたRot90Opの回転数を更新します。

継承されたメソッド

パブリックメソッド

public RectF inverseTransform (RectF rect, int inputImageHeight, int inputImageWidth)

長方形を結果イメージの座標系から入力イメージの座標系に変換します。

パラメーター
長方形結果の座標系からの長方形。
入力画像の高さ入力画像の高さ。
入力画像の幅入力画像の幅。
戻り値
  • 入力画像の座標系からの座標を含む四角形。

public PointF inverseTransform (PointF point, int inputImageHeight, int inputImageWidth)

結果イメージの座標系から入力イメージの座標系に点を変換します。

パラメーター
ポイント結果座標系からの点。
入力画像の高さ入力画像の高さ。
入力画像の幅入力画像の幅。
戻り値
  • 入力画像の座標系からの座標を持つ点。

パブリックTensorImageプロセス( TensorImageイメージ)

準備されたTensorOperatorを使用してTensorImageオブジェクトを処理します。

パラメーター
画像
投げる
IllegalArgumentException画像がどのオペレーションでもサポートされていない場合。

public void updateNumberOfRotations (int k)

このImageProcessorの最初のRot90Opの回転数を更新します。

警告:このメソッドはスレッドセーフではありません。回転数を更新してから画像を処理する ( SequentialProcessor.process(T)を使用する) 場合は、追加の同期を使用して同時アクセスから保護する必要があります。

パラメーター
k回転数
投げる
IllegalStateException Rot90OpこのImageProcessorに追加されていない場合

public synchronized void updateNumberOfRotations (int k, int オカレンス)

このImageProcessorでのoccurrenceによって指定されたRot90Opの回転数を更新します。

警告:このメソッドはスレッドセーフではありません。回転数を更新してから画像を処理する ( SequentialProcessor.process(T)を使用する) 場合は、追加の同期を使用して同時アクセスから保護する必要があります。

パラメーター
k回転数
発生このImageProcessor内の特定のRot90Opのインデックス。たとえば、2 番目のRot90Opを更新する必要がある場合は、 occurrence 1 に設定する必要があります。
投げる
IndexOutOfBoundsException occurrenceが負の場合、またはこのImageProcessorRot90Opの数以上の場合
IllegalStateException Rot90OpこのImageProcessorに追加されていない場合