简体   繁体   中英

Problems setting up face detection and recognition with Amazon Rekognition and Kinesis

I am trying to perform the detection and recognition of faces with amazon rekognition and kinesis. I am using an ip camera located on my local network

According to the AWS documentation, I have done the following:

1.- On a local computer (ubuntu 18). I have used the "C ++ producer library" to send data to "Kinesis video stream". I can watch the video of the ip camera in the "Kinesis video stream" called "ExampleStream"

2.- I have used the "EC2" service to create an "t2.micro" instance. Within the instance I have configured the "Stream processor". I have done the following: $ aws rekognition create-collection --collection-id mycollection

Then I created an S3 Bucket called "bcm-rekognition" and uploaded the image "j1.png"

Then I ran

$ aws rekognition index-faces --collection-id mycollection --image '{"S3Object": {"Bucket": "bcm-rekognition", "Name": "j1.png"}}' --external-image- go james

When I executed the previous command in the instance, I obtained the characteristics of the image such as the use of lenses, facial expression, etc.

Then I created a "Kinesis data Stream" called "AmazonRekognitionResults" on the recommendation of the documentation. Then, in "IAM" create a role with the "AmazonRekognitionServiceRole" policy

Then I executed the command replacing the "appropriate RNAs"

$ aws rekognition create-stream-processor --input '{"KinesisVideoStream": {"Arn": "<video stream ARN>"}}' --name store-processor --role-arn <role ARN> --stream -processor-output '{"KinesisDataStream": {"Arn": "<data stream ARN>"}}' --settings' {"FaceSearch": {"CollectionId": "mycollection", "FaceMatchThreshold": 85.5}} '

I got the "Stream Processor ARN" from what I understand was created correctly

Then I executed the command:

$ aws rekognition start-stream-processor --name store-processor

And I didn't get any output.

To try. I started sending the IP camera with the SDK producer and I expected to see some result in the Video Stream called "AmazonRekognitionResults" but I saw nothing. ¿Tengo que configurar algún consumidor para ver algún resultado?

When you start streaming from your IP camera, you must use the same credentials

export AWS_ACCESS_KEY_ID=YOUR_ACCESS_KEY_ID
export AWS_SECRET_ACCESS_KEY=YOUR_SECRET_ACCESS_KEY
export AWS_DEFAULT_REGION=us-west-2

export KVS=YOUR_KINESIS_VIDEO_STREAM_NAME

./kinesis_video_gstreamer_sample_app $KVS

And also, you need to add a consumer, like Amazon Lambda. https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html#events-kinesis-permissions

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM