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.Builder | ImageProcessor를 만드는 빌더입니다. 나중에 실행할 수 있습니다. |
공개 메서드
RectF |
inverseTransform(RectF rect, int inputImageHeight, int inputImageWidth)
직사각형을 결과 이미지의 좌표 시스템에서 입력 이미지 중 하나로 다시 변환합니다.
|
PointF |
inverseTransform(PointF point, int inputImageHeight, int inputImageWidth)
결과 이미지의 좌표계에서 입력 이미지 중 하나로 점을 다시 변환합니다.
|
TensorImage | |
void |
updateNumberOfRotations(int k)
이
ImageProcessor 에서 첫 번째 Rot90Op 의 회전 수를 업데이트합니다. |
동기화 void |
updateNumberOfRotations(정수 k, int 발생 횟수)
|
상속된 메서드
공개 메서드
public RectF inverseTransform (RectF rect, int inputImageHeight, int inputImageWidth)
직사각형을 결과 이미지의 좌표 시스템에서 입력 이미지 중 하나로 다시 변환합니다.
매개변수
rect | 직사각형을 반환합니다. |
---|---|
inputImageHeight | 입력 이미지의 높이입니다. |
inputImageWidth | 입력 이미지의 너비입니다. |
반환 값
- 입력 이미지의 좌표계로부터 좌표가 있는 직사각형입니다.
public PointF inverseTransform (PointF point, int inputImageHeight, int inputImageWidth)
결과 이미지의 좌표계에서 입력 이미지 중 하나로 점을 다시 변환합니다.
매개변수
point | 결과 좌표 시스템의 지점을 반환합니다. |
---|---|
inputImageHeight | 입력 이미지의 높이입니다. |
inputImageWidth | 입력 이미지의 너비입니다. |
반환 값
- 입력 이미지의 좌표계 좌표가 있는 점을 반환합니다.
공개 TensorImage 프로세스 (TensorImage 이미지)
public void updateNumberOfRotations (int k)
이 ImageProcessor
에서 첫 번째 Rot90Op
의 회전 수를 업데이트합니다.
경고: 이 메서드는 스레드로부터 안전하지 않습니다. 회전 수를 업데이트한 후 이미지 처리 (SequentialProcessor.process(T)
사용)는 추가 동기화를 통한 동시 액세스로부터 보호되어야 합니다.
매개변수
k | 회전 횟수 |
---|
생성 값
IllegalStateException | Rot90Op 이(가) 이 ImageProcessor 에 추가되지 않은 경우
|
---|
public synced void updateNumberOfRotations (int k, int 발주)
이 ImageProcessor
에서 occurrence
로 지정된 Rot90Op
의 회전 수를 업데이트합니다.
경고: 이 메서드는 스레드로부터 안전하지 않습니다. 회전 수를 업데이트한 후 이미지 처리 (SequentialProcessor.process(T)
사용)는 추가 동기화를 통한 동시 액세스로부터 보호되어야 합니다.
매개변수
k | 회전 횟수 |
---|---|
일치하는 항목 | 이 ImageProcessor 에서 상세 범위 Rot90Op 의 색인입니다. 예를 들어 두 번째 Rot90Op 를 업데이트해야 한다면 occurrence 를 1로 설정해야 합니다. |
생성 값
IndexOutOfBoundsException | occurrence 가 음수이거나 이 ImageProcessor 의 Rot90Op 수보다 작지 않은 경우 |
---|---|
IllegalStateException | Rot90Op 이(가) 이 ImageProcessor 에 추가되지 않은 경우
|