Troubleshooting of Amazon Rekognition

From LemonWiki共筆
Jump to navigation Jump to search

Troubleshooting of Amazon Rekognition (Amazon Rekognition – 影片與影像 – AWS)

(The article written in Traditional Chinese)

Fix the ImageTooLargeException

  • Error message: An error occurred (ImageTooLargeException) when calling the DetectLabels operation: Image dimensions: null x null pixels exceed the maximum limit.[1]
  • Condition: The original file was bigger than 5MB or too large: e.g. dimensions of image met trouble is 19842 × 7464
  • Solution: (1) Resize the file size to smaller than 5MB (2) Reduce the dimensions of image to 4096 pixels for both width and height.

Fix the InvalidImageFormatException

  • Error message: An error occurred (InvalidImageFormatException) when calling the DetectLabels operation: Request has invalid image format[2]
  • Condition: The original file (PNG file) was a colorful photo
  • Solution: Save as JPEG file.

Fix the InvalidS3ObjectException

Error message: An error occurred (InvalidS3ObjectException) when calling the DetectLabels operation: Unable to get object metadata from S3. Check object key, region and/or access permissions.

Condition: After input the command as follows:

% aws rekognition start-label-detection --video "S3Object={Bucket=YOUR_BUCKET_NAME,Name=YOUR_VIDEO_FILE}" \
--region us-east-1

Solution: Please verify (1) the name of S3 bucket, (2) name of file path of your file (3) name of region

Fix the ValidationException

Error message: An error occurred (ValidationException) when calling the StartLabelDetection operation: 2 validation errors detected: Value 'TopicARN' at 'notificationChannel.sNSTopicArn' failed to satisfy constraint: Member must satisfy regular expression pattern: (^arn:([a-z\d-]+):sns:.*:\w{12}:.+$); Value 'RoleARN' at 'notificationChannel.roleArn' failed to satisfy constraint: Member must satisfy regular expression pattern: arn:([a-z\d-]+):iam::\d{12}:role/?[a-zA-Z_0-9+=,.@\-_/]+

Condition: After input the command as follows:

% aws rekognition start-label-detection --video "S3Object={Bucket=YOUR_BUCKET_NAME,Name=YOUR_VIDEO_FILE}" \
--notification-channel "SNSTopicArn=TopicARN,RoleArn=RoleARN" \
--region us-east-1

Solution: Please verify the setting of Amazon SNS[3] If the amount of videos are not too many, you may remove the options "notification-channel". The command will become:

aws rekognition start-label-detection --video "S3Object={Bucket=YOUR_BUCKET_NAME,Name=YOUR_VIDEO_FILE}"   --region us-east-1

Fix the ValidationException - Value 'bocket name' at 'image.s3Object.bucket' failed to satisfy

  • Error message: An error occurred (ValidationException) when calling the DetectLabels operation: 1 validation error detected: Value 'bocket name' at 'image.s3Object.bucket' failed to satisfy constraint: Member must satisfy regular expression pattern: [0-9A-Za-z\.\-_]*
  • Condition: I did not specify the bucket name in the command
  • Solution: Specify the bucket name

FAILED 2.8 'Unsupported codec/format.

Condition: After input the command as follows:

% aws rekognition get-label-detection --job-id <JOB_ID> --region us-east-1

Solution: Please verify the file format (mp4 or mov) and video encoding of video file: H.264[4][5]

Quoted from Amazon Rekognition – frequently asked questions - AWS

Q: What types file formats and codecs does Amazon Rekognition Video support?
Amazon Rekognition Video supports H.264 files in MPEG-4 (.mp4) or MOV format. If your video files use a different codec, you can transcode them into H.264 using AWS Elemental MediaConvert.

References