ImageProcessor adalah class bantuan untuk pra-pemrosesan dan pascapemrosesan TensorImage
. Fungsi ini dapat mengubah TensorImage
ke elemen lain dengan mengeksekusi rantai ImageOperator
.
Contoh Penggunaan:
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);
PERINGATAN: Instance ImageProcessor
tidak aman untuk thread dengan updateNumberOfRotations(int)
. Memperbarui jumlah rotasi, lalu memproses gambar (menggunakan SequentialProcessor.process(T)
) harus dilindungi dari akses serentak. Sebaiknya buat instance
ImageProcessor
terpisah untuk setiap thread. Jika beberapa thread mengakses ImageProcessor
secara serentak, thread tersebut harus disinkronkan secara eksternal.
Class Bertingkat
class | ImageProcessor.Builder | Builder untuk membuat ImageProcessor, yang dapat dijalankan nanti. |
Metode Publik
RectF |
inverseTransform(RectF rect, int inputImageHeight, int inputImageWidth)
Mengubah persegi panjang dari sistem koordinat gambar hasil kembali ke salah satu gambar input.
|
PointF |
inverseTransform(Titik PointF, int inputImageHeight, int inputImageWidth)
Mengubah titik dari sistem koordinat gambar hasil kembali ke salah satu gambar input.
|
TensorImage | |
void |
updateNumberOfRotations(int k)
Memperbarui jumlah rotasi untuk
Rot90Op pertama di ImageProcessor ini. |
disinkronkan void |
updateNumberOfRotations(int k, int bayi)
|
Metode Turunan
Metode Publik
public RectF inverseTransform (RectF rect, int inputImageHeight, int inputImageWidth)
Mengubah persegi panjang dari sistem koordinat gambar hasil kembali ke salah satu gambar input.
Parameter
rect | persegi panjang dari sistem koordinat hasil. |
---|---|
inputImageHeight | tinggi gambar input. |
inputImageWidth | lebar gambar input. |
Hasil
- persegi panjang dengan koordinat dari sistem koordinat gambar input.
publik PointF inverseTransform (Titik PointF, int inputImageHeight, int inputImageWidth)
Mengubah titik dari sistem koordinat gambar hasil kembali ke salah satu gambar input.
Parameter
point | titik dari sistem koordinat hasil. |
---|---|
inputImageHeight | tinggi gambar input. |
inputImageWidth | lebar gambar input. |
Hasil
- titik dengan koordinat dari sistem koordinat gambar input.
publik TensorImage proses (gambar TensorImage)
Memproses objek TensorImage
dengan TensorOperator
yang telah disiapkan.
Parameter
gambar |
---|
Menampilkan
IllegalArgumentException | jika gambar tidak didukung oleh pengoperasian apa pun. |
---|
public void updateNumberOfRotations (int k)
Memperbarui jumlah rotasi untuk Rot90Op
pertama di ImageProcessor
ini.
PERINGATAN:metode ini tidak aman untuk thread. Memperbarui jumlah rotasi lalu memproses gambar (menggunakan SequentialProcessor.process(T)
) harus dilindungi dari akses serentak dengan sinkronisasi tambahan.
Parameter
k | jumlah rotasi |
---|
Menampilkan
IllegalStateException | jika Rot90Op belum ditambahkan ke ImageProcessor ini
|
---|
publik disinkronkan void updateNumberOfRotations (int k, int awal)
Memperbarui jumlah rotasi untuk Rot90Op
yang ditentukan oleh occurrence
dalam ImageProcessor
ini.
PERINGATAN:metode ini tidak aman untuk thread. Memperbarui jumlah rotasi lalu memproses gambar (menggunakan SequentialProcessor.process(T)
) harus dilindungi dari akses serentak dengan sinkronisasi tambahan.
Parameter
k | jumlah rotasi |
---|---|
kemunculan | indeks Rot90Op pertikuler dalam ImageProcessor ini. Misalnya, jika Rot90Op kedua perlu diupdate, occurrence harus ditetapkan ke 1. |
Menampilkan
IndexOutOfBoundsException | jika occurrence negatif atau tidak kurang dari
jumlah Rot90Op di ImageProcessor ini |
---|---|
IllegalStateException | jika Rot90Op belum ditambahkan ke ImageProcessor ini
|