ImageProcessor

общедоступный класс ImageProcessor

ImageProcessor — это вспомогательный класс для предварительной и постобработки TensorImage . Он может преобразовать один TensorImage в другой, выполнив цепочку ImageOperator .

Пример использования:

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

ВНИМАНИЕ: Экземпляры ImageProcessor не являются потокобезопасными с updateNumberOfRotations(int) . Обновление количества вращений и последующая обработка изображений (с использованием SequentialProcessor.process(T) ) должны быть защищены от одновременного доступа. Рекомендуется создавать отдельные экземпляры ImageProcessor для каждого потока. Если несколько потоков одновременно обращаются к ImageProcessor , его необходимо синхронизировать извне.

Вложенные классы

сорт ImageProcessor.Builder Builder для создания ImageProcessor, который можно будет выполнить позже.

Публичные методы

РектФ
inverseTransform (RectF rect, int inputImageHeight, int inputImageWidth)
Преобразует прямоугольник из системы координат результирующего изображения обратно в систему входного изображения.
ТочкаF
inverseTransform (точка PointF, int inputImageHeight, int inputImageWidth)
Преобразует точку из системы координат результирующего изображения обратно в систему координат входного изображения.
Тензорное изображение
процесс (изображение TensorImage )
Обрабатывает объект TensorImage с подготовленным TensorOperator .
пустота
updateNumberOfRotations (int k)
Обновляет количество вращений для первого Rot90Op в этом ImageProcessor .
синхронизированная пустота
updateNumberOfRotations (int k, вхождение int)
Обновляет количество вращений для Rot90Op , указанное occurrence в этом ImageProcessor .

Унаследованные методы