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 | |
vazio | updateNumberOfRotations (int k) Atualiza o número de rotações do primeiro Rot90Op neste ImageProcessor . |
vazio sincronizado | updateNumberOfRotations (int k, int ocorrência) |
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 |