ImageProcessor es una clase auxiliar para el preprocesamiento y posprocesamiento TensorImage
. Podría transformar un TensorImage
en otro ejecutando una cadena de ImageOperator
.
Uso de ejemplo:
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);
ADVERTENCIA: Las instancias de un ImageProcessor
no son seguras para subprocesos con updateNumberOfRotations(int)
. La actualización del número de rotaciones y luego el procesamiento de imágenes (usando SequentialProcessor.process(T)
) debe estar protegido del acceso simultáneo. Se recomienda crear instancias ImageProcessor
separadas para cada hilo. Si varios subprocesos acceden a un ImageProcessor
al mismo tiempo, se debe sincronizar externamente.
Clases anidadas
clase | Procesador de imágenes.Constructor | El Builder para crear un ImageProcessor, que podría ejecutarse más tarde. |
Métodos públicos
RectF | Transformación inversa (RectF rect, int inputImageHeight, int inputImageWidth) Transforma un rectángulo del sistema de coordenadas de la imagen resultante al de la imagen de entrada. |
Punto F | inverseTransform (punto PointF, int inputImageHeight, int inputImageWidth) Transforma un punto del sistema de coordenadas de la imagen resultante al de la imagen de entrada. |
TensorImagen | |
vacío | actualizarNumberOfRotations (int k) Actualiza el número de rotaciones para el primer Rot90Op en este ImageProcessor . |
vacío sincronizado | updateNumberOfRotations (int k, int ocurrencia) |
Métodos heredados
Métodos públicos
public RectF inverseTransform (RectF rect, int inputImageHeight, int inputImageWidth)
Transforma un rectángulo del sistema de coordenadas de la imagen resultante al de la imagen de entrada.
Parámetros
recto | el rectángulo del sistema de coordenadas resultante. |
---|---|
entradaImagenAltura | la altura de la imagen de entrada. |
ancho de imagen de entrada | el ancho de la imagen de entrada. |
Devoluciones
- el rectángulo con las coordenadas del sistema de coordenadas de la imagen de entrada.
Transformación inversa pública de PointF (punto PointF, int inputImageHeight, int inputImageWidth)
Transforma un punto del sistema de coordenadas de la imagen resultante al de la imagen de entrada.
Parámetros
punto | el punto del sistema de coordenadas resultante. |
---|---|
entradaImagenAltura | la altura de la imagen de entrada. |
ancho de imagen de entrada | el ancho de la imagen de entrada. |
Devoluciones
- el punto con las coordenadas del sistema de coordenadas de la imagen de entrada.
Proceso público de TensorImage (imagen de TensorImage )
Procesa un objeto TensorImage
con TensorOperator
preparado.
Parámetros
imagen |
---|
Lanza
Argumento de excepción ilegal | si la imagen no es compatible con ninguna operación. |
---|
actualización nula públicaNumberOfRotations (int k)
Actualiza el número de rotaciones para el primer Rot90Op
en este ImageProcessor
.
ADVERTENCIA: este método no es seguro para subprocesos. La actualización del número de rotaciones y luego el procesamiento de imágenes (usando SequentialProcessor.process(T)
) debe protegerse del acceso simultáneo con sincronización adicional.
Parámetros
k | el número de rotaciones |
---|
Lanza
Excepción de estado ilegal | si Rot90Op no se ha agregado a este ImageProcessor |
---|
actualización nula sincronizada públicaNumberOfRotations (int k, ocurrencia int)
Actualiza el número de rotaciones para Rot90Op
especificado por occurrence
en este ImageProcessor
.
ADVERTENCIA: este método no es seguro para subprocesos. La actualización del número de rotaciones y luego el procesamiento de imágenes (usando SequentialProcessor.process(T)
) debe protegerse del acceso simultáneo con sincronización adicional.
Parámetros
k | el número de rotaciones |
---|---|
ocurrencia | el índice de Rot90Op particular en este ImageProcessor . Por ejemplo, si es necesario actualizar el segundo Rot90Op , occurrence debe establecerse en 1. |
Lanza
Excepción IndexOutOfBounds | si occurrence es negativa o no es menor que el número de Rot90Op en este ImageProcessor |
---|---|
Excepción de estado ilegal | si Rot90Op no se ha agregado a este ImageProcessor |