ImageProcessor es una clase auxiliar para el procesamiento previo y posterior de TensorImage
. Integra
podría transformar un TensorImage
en otro ejecutando una cadena de ImageOperator
.
Ejemplo 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);
ADVERTENCIA: Las instancias de ImageProcessor
no son seguras para los subprocesos con updateNumberOfRotations(int)
. Actualizar el número de rotaciones y luego procesar las imágenes (con
SequentialProcessor.process(T)
) deben protegerse del acceso simultáneo. Se recomienda crear secciones
ImageProcessor
instancias para cada subproceso Si varios subprocesos acceden a una ImageProcessor
de forma simultánea, esta debe sincronizarse de forma externa.
Categorías anidadas
clase | ImageProcessor.Builder | El compilador para crear un ImageProcessor, que podría ejecutarse más tarde. |
Métodos públicos
RectF |
inverseTransform(RectF rect, int inputImageHeight, int inputImageWidth)
Transforma un rectángulo del sistema de coordenadas de la imagen del resultado al de la entrada
imagen.
|
PointF |
inverseTransform(punto PointF, int inputImageHeight, int inputImageWidth)
Vuelve a transformar un punto del sistema de coordenadas de la imagen del resultado al de la entrada
imagen.
|
TensorImage | |
void |
updateNumberOfRotations(int k)
Actualiza la cantidad de rotaciones para el primer
Rot90Op de este ImageProcessor . |
sincronizada anular |
updateNumberOfRotations(int k, int case)
Actualiza la cantidad de rotaciones de la
Rot90Op especificada por occurrence en esta
ImageProcessor |
Métodos heredados
abstracto TensorImage |
process(entrada de TensorImage)
|
Métodos públicos
público RectF inverseTransform (RectF rect, int inputImageHeight, int inputImageWidth)
Transforma un rectángulo del sistema de coordenadas de la imagen del resultado al de la entrada imagen.
Parámetros
rect | rectángulo del sistema de coordenadas de resultados. |
---|---|
inputImageHeight | la altura de la imagen de entrada. |
inputImageWidth | el ancho de la imagen de entrada. |
Muestra
- el rectángulo con las coordenadas del sistema de coordenadas de la imagen de entrada.
público PointF inverseTransform (punto PointF, int inputImageHeight, int inputImageWidth)
Vuelve a transformar un punto del sistema de coordenadas de la imagen del resultado al de la entrada imagen.
Parámetros
punto | el punto a partir del sistema de coordenadas de resultados. |
---|---|
inputImageHeight | la altura de la imagen de entrada. |
inputImageWidth | el ancho de la imagen de entrada. |
Muestra
- el punto con las coordenadas del sistema de coordenadas de la imagen de entrada.
público TensorImage . proceso (imagen de TensorImage)
Procesa un objeto TensorImage
con TensorOperator
preparado.
Parámetros
imagen |
---|
Arroja
IllegalArgumentException. | si la imagen no es compatible con ninguna op. |
---|
público anular updateNumberOfRotations (int k)
Actualiza la cantidad de rotaciones para el primer Rot90Op
de este ImageProcessor
.
ADVERTENCIA: Este método no es seguro para subprocesos. Actualiza la cantidad de rotaciones y
entonces las imágenes que se procesan (con SequentialProcessor.process(T)
) deben protegerse contra el acceso simultáneo con
una sincronización adicional.
Parámetros
k | la cantidad de rotaciones |
---|
Arroja
IllegalStateException | si no se agregó Rot90Op a esta ImageProcessor
|
---|
público sincronizada anular updateNumberOfRotations (int k, int case)
Actualiza la cantidad de rotaciones de la Rot90Op
especificada por occurrence
en esta
ImageProcessor
ADVERTENCIA: Este método no es seguro para subprocesos. Actualiza la cantidad de rotaciones y
entonces las imágenes que se procesan (con SequentialProcessor.process(T)
) deben protegerse contra el acceso simultáneo con
una sincronización adicional.
Parámetros
k | la cantidad de rotaciones |
---|---|
repetición | el índice de Rot90Op perticular en este ImageProcessor . Para
Por ejemplo, si el segundo Rot90Op debe actualizarse, occurrence debe
establecido en 1. |
Arroja
IndexOutOfBoundsException | si occurrence es negativo o no es menor que el
cantidad de Rot90Op en esta ImageProcessor |
---|---|
IllegalStateException | si no se agregó Rot90Op a esta ImageProcessor
|