ImageProcessor

classe pública ImageProcessor

ImageProcessor é uma classe auxiliar para pré-processamento e pós-processamento TensorImage . Poderia transformar um TensorImage em outro executando uma cadeia de ImageOperator .

Exemplo de uso:

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

AVISO: as instâncias de um ImageProcessor não são thread-safe com updateNumberOfRotations(int) . A atualização do número de rotações e o processamento das imagens (usando SequentialProcessor.process(T) ) devem ser protegidos contra acesso simultâneo. Recomenda-se criar instâncias separadas ImageProcessor para cada thread. Se vários threads acessarem um ImageProcessor simultaneamente, ele deverá ser sincronizado externamente.

Classes aninhadas

aula ImageProcessor.Builder O Builder para criar um ImageProcessor, que poderá ser executado posteriormente.

Métodos Públicos

RectF
inverseTransform (RectF rect, int inputImageHeight, int inputImageWidth)
Transforma um retângulo do sistema de coordenadas da imagem resultante de volta para o da imagem de entrada.
PontoF
inverseTransform (ponto PointF, int inputImageHeight, int inputImageWidth)
Transforma um ponto do sistema de coordenadas da imagem resultante de volta para o da imagem de entrada.
TensorImage
processo (imagem TensorImage )
Processa um objeto TensorImage com TensorOperator preparado.
vazio
updateNumberOfRotations (int k)
Atualiza o número de rotações do primeiro Rot90Op neste ImageProcessor .
vazio sincronizado
updateNumberOfRotations (int k, int ocorrência)
Atualiza o número de rotações do Rot90Op especificado por occurrence neste ImageProcessor .

Métodos herdados

Métodos Públicos

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

Transforma um retângulo do sistema de coordenadas da imagem resultante de volta para o da imagem de entrada.

Parâmetros
correto o retângulo do sistema de coordenadas de resultado.
inputImageHeight a altura da imagem de entrada.
inputImageWidth a largura da imagem de entrada.
Devoluções
  • o retângulo com as coordenadas do sistema de coordenadas da imagem de entrada.

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

Transforma um ponto do sistema de coordenadas da imagem resultante de volta para o da imagem de entrada.

Parâmetros
apontar o ponto do sistema de coordenadas de resultado.
inputImageHeight a altura da imagem de entrada.
inputImageWidth a largura da imagem de entrada.
Devoluções
  • o ponto com as coordenadas do sistema de coordenadas da imagem de entrada.

processo TensorImage público (imagem TensorImage )

Processa um objeto TensorImage com TensorOperator preparado.

Parâmetros
imagem
Lança
Exceção de argumento ilegal se a imagem não for suportada por nenhuma operação.

public void updateNumberOfRotations (int k)

Atualiza o número de rotações do primeiro Rot90Op neste ImageProcessor .

AVISO: este método não é seguro para threads. A atualização do número de rotações e o processamento de imagens (usando SequentialProcessor.process(T) ) devem ser protegidos contra acesso simultâneo com sincronização adicional.

Parâmetros
k o número de rotações
Lança
IllegalStateException se Rot90Op não tiver sido adicionado a este ImageProcessor

público sincronizado void updateNumberOfRotations (int k, int ocorrência)

Atualiza o número de rotações do Rot90Op especificado por occurrence neste ImageProcessor .

AVISO: este método não é seguro para threads. A atualização do número de rotações e o processamento de imagens (usando SequentialProcessor.process(T) ) devem ser protegidos contra acesso simultâneo com sincronização adicional.

Parâmetros
k o número de rotações
ocorrência o índice de Rot90Op perticular neste ImageProcessor . Por exemplo, se o segundo Rot90Op precisar ser atualizado, occurrence deverá ser definida como 1.
Lança
IndexOutOfBoundsException se occurrence for negativa ou não for menor que o número de Rot90Op neste ImageProcessor
IllegalStateException se Rot90Op não tiver sido adicionado a este ImageProcessor