ImageProcessor

klasa publiczna ImageProcessor

ImageProcessor to klasa pomocnicza do wstępnego i końcowego przetwarzania elementu TensorImage. Może przekształcić element TensorImage w inny, wykonując łańcuch ImageOperator.

Przykład użycia:

   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);
 

OSTRZEŻENIE: wystąpienia typu ImageProcessor nie są bezpieczne w wątkach w tagu updateNumberOfRotations(int). Należy chronić liczbę obrotów, a następnie przetwarzanie obrazów (za pomocą SequentialProcessor.process(T)) przed równoczesnym dostępem. Zalecamy utworzenie osobnych instancji ImageProcessor dla każdego wątku. Jeśli wiele wątków jednocześnie uzyskuje dostęp do interfejsu ImageProcessor, musi on być synchronizowany zewnętrznie.

Zagnieżdżone klasy

klasa ImageProcessor.Builder Kreator do utworzenia procesora ImageProcessor, który można wykonać później. 

Metody publiczne

RectF
inverseTransform(RectF rect, int inputImageHeight, int inputImageWidth)
Przekształca prostokąt z układu współrzędnych obrazu wyniku z powrotem na 1 z obrazu wejściowego.
PointF
inverseTransform(punkt PointF, intinputImageHeight, int intinputImageWidth)
Przekształca punkt z układu współrzędnych obrazu wyniku z powrotem na jeden z obrazów wejściowych.
TensorImage
process(obraz TensorImage)
Przetwarza obiekt TensorImage z gotowym plikiem TensorOperator.
void
updateNumberOfRotations(int k)
Aktualizuje liczbę obrotów dla pierwszych Rot90Op w tabeli ImageProcessor.
zsynchronizowana void
updateNumberOfRotations(int k, wystąpienie int)
Aktualizuje liczbę obrotów dla zasobu Rot90Op określoną przez occurrence w ImageProcessor.

Metody dziedziczone

Metody publiczne

public RectF inverseTransform (RectF rect, int insertImageHeight, int obszarzeinputImageWidth)

Przekształca prostokąt z układu współrzędnych obrazu wyniku z powrotem na 1 z obrazu wejściowego.

Parametry
rect prostokąt z systemu współrzędnych.
inputImageHeight wysokość obrazu wejściowego.
inputImageWidth szerokości obrazu wejściowego.
Zwroty
  • prostokąt ze współrzędnymi z układu współrzędnych obrazu wejściowego.

public PointF inverseTransform (punkt PointF, intinputImageHeight, intinputImageWidth)

Przekształca punkt z układu współrzędnych obrazu wyniku z powrotem na jeden z obrazów wejściowych.

Parametry
punkt punktu z systemu współrzędnych wyniku.
inputImageHeight wysokość obrazu wejściowego.
inputImageWidth szerokości obrazu wejściowego.
Zwroty
  • punkt ze współrzędnymi z układu współrzędnych zdjęcia wejściowego.

public TensorImage process (obraz TensorImage)

Przetwarza obiekt TensorImage z gotowym plikiem TensorOperator.

Parametry
obraz
Rzuty
IllegalArgumentException , jeśli obraz nie jest obsługiwany przez żadną przeglądarkę

public void updateNumberOfRotations (int k)

Aktualizuje liczbę obrotów dla pierwszych Rot90Op w tabeli ImageProcessor.

OSTRZEŻENIE: ta metoda nie jest bezpieczna w wątkach. Aktualizacja liczby obrotów, a następnie przetwarzanie obrazów (za pomocą SequentialProcessor.process(T)) musi być zabezpieczona przed równoczesnym dostępem za pomocą dodatkowej synchronizacji.

Parametry
k liczba obrotów
Rzuty
IllegalStateException jeśli Rot90Op nie został dodany do: ImageProcessor

public sync void updateNumberOfRotations (int k, intInstance)

Aktualizuje liczbę obrotów dla zasobu Rot90Op określoną przez occurrence w ImageProcessor.

OSTRZEŻENIE: ta metoda nie jest bezpieczna w wątkach. Aktualizacja liczby obrotów, a następnie przetwarzanie obrazów (za pomocą SequentialProcessor.process(T)) musi być zabezpieczona przed równoczesnym dostępem za pomocą dodatkowej synchronizacji.

Parametry
k liczba obrotów
wystąpienie indeks wiernokąta Rot90Op w tabeli ImageProcessor. Jeśli na przykład trzeba zaktualizować drugi Rot90Op, occurrence powinien mieć wartość 1.
Rzuty
IndexOutOfBoundsException jeśli occurrence jest ujemna lub nie jest mniejsza niż liczba Rot90Op w tym ImageProcessor
IllegalStateException jeśli Rot90Op nie został dodany do: ImageProcessor