I'd like to try Rekognition's CompareFaces, but I don't see a full example of the syntax for using the HTTP API. Assuming I have two images, how would I call this API from Python to retrieve a similarity score?
An example of calling AWS Rekognition HTTP API from Python
8.6k views Asked by jensph At
1
There are 1 answers
Related Questions in PYTHON
- Initialize matrix
- Why is my program adding int as string (4+7 = 47)?
- How to save gensim LDA topics output to csv along with the scores?
- Update a text file with ( new words+ \n ) after the words is appended into a list
- Removing URL features from tokens in NLTK
- python, global name not defined
- Why does collections.OrderedDict use try and except to initialize variables?
- Invalid URL: No host supplied : error while using Request.get(url) in Python
- Python GUI application to copy files one location to another location
- Why I receive CERTIFICATE_VERIFY_FAILED from google adwords api?
Related Questions in AMAZON-WEB-SERVICES
- Initialize matrix
- Why is my program adding int as string (4+7 = 47)?
- How to save gensim LDA topics output to csv along with the scores?
- Update a text file with ( new words+ \n ) after the words is appended into a list
- Removing URL features from tokens in NLTK
- python, global name not defined
- Why does collections.OrderedDict use try and except to initialize variables?
- Invalid URL: No host supplied : error while using Request.get(url) in Python
- Python GUI application to copy files one location to another location
- Why I receive CERTIFICATE_VERIFY_FAILED from google adwords api?
Related Questions in AMAZON-REKOGNITION
- Initialize matrix
- Why is my program adding int as string (4+7 = 47)?
- How to save gensim LDA topics output to csv along with the scores?
- Update a text file with ( new words+ \n ) after the words is appended into a list
- Removing URL features from tokens in NLTK
- python, global name not defined
- Why does collections.OrderedDict use try and except to initialize variables?
- Invalid URL: No host supplied : error while using Request.get(url) in Python
- Python GUI application to copy files one location to another location
- Why I receive CERTIFICATE_VERIFY_FAILED from google adwords api?
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Popular Tags
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Information about the code
There is little documentation around using the HTTP API for AWS Rekognition, but it is pretty simple to use the model that most code uses to hit AWS service HTTP endpoints.
Important information about the code that follows:
You must have
requests
installed. If you don't have it, you can run the following in your shell (doing it invirtualenv
is recommended).The
us-east-1
region is used. Rekognition is currently supported inus-east-1
,eu-west-1
, andus-west-2
so you can modify the code to support different region endpoints as you wish.It expects two files to exist on disk for reading, called
source.jpg
andtarget.jpg
.As she's in the most recent movie I saw, I'm using images of Felicity Jones from Star Wars: Rogue One as my source and target.
The
source.jpg
is:The
target.jpg
is:It includes code to do signing with AWS Signature Version 4. There are libraries out there that will do the signature generation for you, but I didn't want to rely too much on third party libs in order to demonstrate a complete example.
The AWS credentials you're using should have a valid policy for Rekognition.
It was written for Python 2.7 (shouldn't be terribly difficult to move to Python 3).
The Code
Code Output
If you get the code running, it should output something like this:
Really, just use boto3
The simplest thing you can do is to use
boto3
.The code would be simplified to something like the following, as all the signature generation and JSON work become unnecessary.
Be sure that you have configured
boto3
with credentials in the environment or via the configuration file, or put your credentials inline with the code. For more information, seeboto3
configuration.The code for this uses the
boto3
Rekognition API.The above
boto3
example should output this: