ImageProcessor është një klasë ndihmëse për parapërpunimin dhe paspërpunimin e TensorImage . Ai mund të transformojë një TensorImage në një tjetër duke ekzekutuar një zinxhir të ImageOperator .
Shembull i përdorimit:
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);
PARALAJMËRIM: Instancat e një ImageProcessor nuk janë të sigurta në fije me updateNumberOfRotations(int) . Përditësimi i numrit të rrotullimeve dhe më pas përpunimi i imazheve (duke përdorur SequentialProcessor.process(T) ) duhet të mbrohet nga aksesi i njëkohshëm. Rekomandohet të krijohen instanca të veçanta ImageProcessor për çdo thread. Nëse threads të shumëfishta aksesojnë njëkohësisht një ImageProcessor , ai duhet të sinkronizohet nga jashtë.
Klasat e mbivendosura
| klasës | ImageProcessor.Builder | Ndërtuesi për të krijuar një ImageProcessor, i cili mund të ekzekutohet më vonë. | |
Metodat publike
| RectF | inverseTransform (RectF rect, int inputImageHeight, int inputImageWidth) Shndërron një drejtkëndësh nga sistemi i koordinatave të imazhit të rezultatit në atë të figurës hyrëse. |
| PikaF | inverseTransform (pika PointF, inputImageHeight, inputImageWidth) Shndërron një pikë nga sistemi i koordinatave të imazhit të rezultatit në atë të figurës hyrëse. |
| TensorImage | |
| i pavlefshëm | updateNumberOfRotations (int k) Përditëson numrin e rrotullimeve për Rot90Op in e parë në këtë ImageProcessor . |
| zbrazëti e sinkronizuar | updateNumberOfRotations (int k, int dukuri) |
Metodat e trashëguara
Metodat publike
RectF publik inverseTransform (RectF rect, int inputImageHeight, int inputImageWidth)
Shndërron një drejtkëndësh nga sistemi i koordinatave të imazhit të rezultatit në atë të figurës hyrëse.
Parametrat
| drejtë | drejtkëndëshi nga sistemi i koordinatave të rezultatit. |
|---|---|
| inputImageHeight | lartësia e imazhit të hyrjes. |
| inputImageWidth | gjerësia e imazhit të hyrjes. |
Kthimet
- drejtkëndëshin me koordinatat nga sistemi i koordinatave të figurës hyrëse.
publike PointF inverseTransform (pika PointF, inputImageHeight, inputImageWidth)
Shndërron një pikë nga sistemi i koordinatave të imazhit të rezultatit në atë të figurës hyrëse.
Parametrat
| pikë | pika nga sistemi i koordinatave të rezultatit. |
|---|---|
| inputImageHeight | lartësia e imazhit të hyrjes. |
| inputImageWidth | gjerësia e imazhit të hyrjes. |
Kthimet
- pika me koordinatat nga sistemi i koordinatave të figurës hyrëse.
procesi publik TensorImage (imazhi TensorImage )
Përpunon një objekt TensorImage me TensorOperator të përgatitur.
Parametrat
| imazh |
|---|
Hedhjet
| IllegalArgumentPërjashtim | nëse imazhi nuk mbështetet nga ndonjë op. |
|---|
përditësimi publik i zbrazëtNumberOfRotations (int k)
Përditëson numrin e rrotullimeve për Rot90Op in e parë në këtë ImageProcessor .
PARALAJMËRIM: kjo metodë nuk është e sigurt për fije. Përditësimi i numrit të rrotullimeve dhe më pas përpunimi i imazheve (duke përdorur SequentialProcessor.process(T) ) duhet të mbrohet nga aksesi i njëkohshëm me sinkronizim shtesë.
Parametrat
| k | numri i rrotullimeve |
|---|
Hedhjet
| IllegalStateException | nëse Rot90Op nuk është shtuar në këtë ImageProcessor |
|---|
Përditësimi publik i sinkronizuar i zbrazëtNumberOfRotations (int k, int dukuri)
Përditëson numrin e rrotullimeve për Rot90Op të specifikuar nga occurrence në këtë ImageProcessor .
PARALAJMËRIM: kjo metodë nuk është e sigurt për fije. Përditësimi i numrit të rrotullimeve dhe më pas përpunimi i imazheve (duke përdorur SequentialProcessor.process(T) ) duhet të mbrohet nga aksesi i njëkohshëm me sinkronizim shtesë.
Parametrat
| k | numri i rrotullimeve |
|---|---|
| dukuri | indeksi i Rot90Op pertikular në këtë ImageProcessor . Për shembull, nëse Rot90Op i dytë duhet të përditësohet, occurrence duhet të vendoset në 1. |
Hedhjet
| IndexOutOfBoundsException | nëse occurrence është negative ose nuk është më e vogël se numri i Rot90Op në këtë ImageProcessor |
|---|---|
| IllegalStateException | nëse Rot90Op nuk është shtuar në këtë ImageProcessor |