ImageProcessor

공개 클래스 이미지 프로세서

ImageProcessor는 TensorImage 전처리 및 후처리를 위한 도우미 클래스입니다. ImageOperator 체인을 실행하여 TensorImage 다른 이미지로 변환할 수 있습니다.

사용 예:

   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를 생성하는 빌더입니다.

공개 방법

RectF
inverseTransform (RectF 각형, int inputImageHeight, int inputImageWidth)
결과 이미지의 좌표계에서 다시 입력 이미지의 좌표계로 직사각형을 변환합니다.
포인트 F
inverseTransform (PointF 포인트, int inputImageHeight, int inputImageWidth)
결과 이미지의 좌표계에서 다시 입력 이미지의 좌표계로 점을 변환합니다.
텐서이미지
프로세스 ( TensorImage 이미지)
준비된 TensorOperator 사용하여 TensorImage 객체를 처리합니다.
무효의
updateNumberOfRotations (int k)
ImageProcessor 의 첫 번째 Rot90Op 에 대한 회전 수를 업데이트합니다.
동기화된 무효
updateNumberOfRotations (int k, int 발생)
ImageProcessor 에서 occurrence 으로 지정된 Rot90Op 의 회전 수를 업데이트합니다.

상속된 메서드

공개 방법

공개 RectF inverseTransform (RectF ect, int inputImageHeight, int inputImageWidth)

결과 이미지의 좌표계에서 다시 입력 이미지의 좌표계로 직사각형을 변환합니다.

매개변수
직사각형 결과 좌표계의 직사각형.
입력이미지 높이 입력 이미지의 높이.
입력이미지 너비 입력 이미지의 너비.
보고
  • 입력 이미지의 좌표계 좌표를 사용하는 직사각형입니다.

공개 PointF inverseTransform (PointF 포인트, int inputImageHeight, int inputImageWidth)

결과 이미지의 좌표계에서 다시 입력 이미지의 좌표계로 점을 변환합니다.

매개변수
가리키다 결과 좌표계의 점.
입력이미지 높이 입력 이미지의 높이.
입력이미지 너비 입력 이미지의 너비.
보고
  • 입력 이미지의 좌표계에서 좌표가 있는 점입니다.

공개 TensorImage 프로세스 ( TensorImage 이미지)

준비된 TensorOperator 사용하여 TensorImage 객체를 처리합니다.

매개변수
영상
던지기
IllegalArgumentException 이미지가 어떤 작업에서도 지원되지 않는 경우.

공개 무효 updateNumberOfRotations (int k)

ImageProcessor 의 첫 번째 Rot90Op 에 대한 회전 수를 업데이트합니다.

경고: 이 방법은 스레드로부터 안전 하지 않습니다 . 회전 수 업데이트 후 이미지 처리( SequentialProcessor.process(T) 사용)는 추가 동기화를 통해 동시 액세스로부터 보호되어야 합니다.

매개변수
케이 회전수
던지기
IllegalStateExceptionImageProcessorRot90Op 추가되지 않은 경우

공개 동기화 무효 updateNumberOfRotations (int k, int 발생)

ImageProcessor 에서 occurrence 으로 지정된 Rot90Op 의 회전 수를 업데이트합니다.

경고: 이 방법은 스레드로부터 안전 하지 않습니다 . 회전 수 업데이트 후 이미지 처리( SequentialProcessor.process(T) 사용)는 추가 동기화를 통해 동시 액세스로부터 보호되어야 합니다.

매개변수
케이 회전수
발생ImageProcessor 에 있는 특정 Rot90Op 의 인덱스입니다. 예를 들어 두 번째 Rot90Op 업데이트해야 하는 경우 occurrence 1로 설정해야 합니다.
던지기
IndexOutOfBoundsException occurrence 이 음수이거나 이 ImageProcessorRot90Op 수보다 작지 않은 경우
IllegalStateExceptionImageProcessorRot90Op 추가되지 않은 경우