AmazonRekognitionUtil.py 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. # -*- coding: utf-8 -*-
  2. """
  3. @Author : Rocky
  4. @Time : 2022/12/12 14:28
  5. @File :AmazonRekognitionUtil.py
  6. """
  7. import boto3
  8. class AmazonRekognitionUtil:
  9. # doc: https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/rekognition.html
  10. def __init__(self):
  11. # 全部使用美东服务
  12. self.region_name = 'us-east-1'
  13. self.aws_access_key_id = 'AKIA2E67UIMD6JD6TN3J'
  14. self.aws_secret_access_key = '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'
  15. self.client = boto3.client(
  16. 'rekognition',
  17. region_name=self.region_name,
  18. aws_access_key_id=self.aws_access_key_id,
  19. aws_secret_access_key=self.aws_secret_access_key,
  20. )
  21. def detect_labels(self, image):
  22. """
  23. 识别图片标签
  24. @param image: 图片二进制文件
  25. @return: rekognition_res
  26. """
  27. rekognition_res = self.client.detect_labels(
  28. Image={'Bytes': image},
  29. MaxLabels=50,
  30. MinConfidence=80
  31. )
  32. try:
  33. assert rekognition_res['ResponseMetadata']['HTTPStatusCode'] == 200
  34. except AssertionError:
  35. return {}
  36. return rekognition_res