Object detection with Amazon Rekognition. The state of the sensor is the number of detected target
objects in the image, and the default taret is Person
. Note that in order to prevent accidental over-billing, the component will not scan images automatically, but requires you to call the image_processing.scan
service. This behaviour can be changed by configuring a scan_interval
as described in the docs.
Pricing: As part of the AWS Free Tier, you can get started with Amazon Rekognition Image for free. Upon sign-up, new Amazon Rekognition customers can analyze 5,000 images per month for the first 12 months. After that price is around $1 for 1000 images.
For advice on getting your Amazon credentials see the Polly docs. The number and type of all objects discovered are listed in the sensor attributes.
Place the custom_components
folder in your configuration directory (or add its contents to an existing custom_components folder). Add to your configuration.yaml
:
image_processing:
- platform: amazon_rekognition
aws_access_key_id: AWS_ACCESS_KEY_ID
aws_secret_access_key: AWS_SECRET_ACCESS_KEY
region_name: eu-west-1 # optional region, default is us-east-1
save_file_folder: /config/www/amazon-rekognition/ # Optional image storage
confidence: 90 # Optional, default is 80. Only used for bounding boxes atm
target: Car # Optional target object, default Person
source:
- entity_id: camera.local_file
If you set a save_file_folder
an image will be stored with bounding boxes drawn around the objects that have own (as in, AWS returned them). The confidence
level is used to decide what boxes should be drawn (by default this is everything above 80%).
- Boto3 auth already done by Polly integration
- Amazon python examples
- For tests we have the moto library
- Handle bounding boxes at the platform level, currently only possible on a component level
- Integrate with S3 buckets - we want a web front end to show processed images and results. Perhaps checkout s3album. Alternatively T3 looks very interesting.
- Host our own S3 with minio -> on a NAS -> Synology