Я пытаюсь использовать распознавание AWS с Java SDK.
У меня есть код ниже, но он выдает исключение:
private static final EnvironmentVariableCredentialsProvider CREDENTIALS_PROVIDER = new EnvironmentVariableCredentialsProvider();
public List<TextDetection> recognize(String bucket, String name) {
var amazonRekognition = createAmazonRekognition();
var detectTextRequest = new DetectTextRequest()
.withImage(getImage(bucket, name));
var detectTextResult = amazonRekognition.detectText(detectTextRequest);
return detectTextResult.getTextDetections();
}
private AmazonRekognition createAmazonRekognition() {
return AmazonRekognitionClientBuilder.standard()
.withCredentials(CREDENTIALS_PROVIDER)
.build();
}
private Image getImage(String bucket, String name) {
return new Image()
.withS3Object(new S3Object()
.withName(name)
.withBucket(bucket));
}
Я создал новый IAM с разрешениями AmazonS3FullAccess и AmazonRekognitionFullAccess .
Когда я запускаю метод execute, он выдает:
Unable to get image metadata from S3. Check object key, region and/or access permissions.