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) 結果イメージの座標系から入力イメージの座標系に点を変換します。 |
テンソル画像 | |
空所 | updateNumberOfRotations (int k) この ImageProcessor の最初のRot90Op の回転数を更新します。 |
同期ボイド | updateNumberOfRotations (int k、int 出現) |
継承されたメソッド
パブリックメソッド
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 が負の場合、またはこのImageProcessor のRot90Op の数以上の場合 |
---|---|
IllegalStateException | Rot90Op このImageProcessor に追加されていない場合 |