Inspiration

With the ongoing pandemic causing growing demand for all kinds of pets, there is a great need to simplify the pet adoption process and a need to update pet adoption platforms with newer technologies such as artificial intelligence and machine learning.

To meet these novel requirements we created AI Pets Adopter.

What it does

AI Pets Adopter uses the latest image and speech recognition APIs to deliver users a smooth and seamless pet adoption experience.

It allows users to search for any kind of pet, including the option to include breed and location, using speech recognition technology that is powered by artificial intelligence. Also, users have the option of uploading an image of the pet they desire, to which our application will use machine learning technology to know about the pet’s animal type, breed and other details.

After that, the application will show all pets that match the users’ criteria, whether entered through image or speech recognition.

Finally, the users’ have the option of visiting their desired pet’s PetFinder page and starting the adoption application process.

How we built it

We build this application primarily using Ruby On Rails. The image recognition API provider is AWS Rekognition and the speech recognition provider is Google Chrome Web Speech API. We also use Wit.ai from Facebook as our source of advanced natural language processing provider.

Challenges we ran into

We ran into many challenges when trying to integrate AWS Rekognition into our application, such as AWS credentials being invalid, AWS Rekognition returning invalid data, and many more.

We also ran into issues when trying to host this application on Heroku PaaS platform, because of its inability to offer permanent local storage for it’s hosted applications.

Accomplishments that we're proud of

We are proud of the following accomplishments:

  • Being able to integrate image and speech recognition technology in our application
  • Being able to communicate and collaborate well with each of our teammates
  • Being able to complete our application well before the submission deadline

What we learned

We learned the following points in the making of this application:

  • Make sure to have clear lines of communication between each of our teammates, in order to avoid confusion and disruptions
  • Focus on the primary domain logic of the application first(that being speech and image recognition integration) before delving into less important parts of the application
  • Make sure the development environment mimics the production environment, in order to make the deployment to production as smooth and hassle free as possible

What's next for AI Pets Project

Next we are planning on adding more query options to our image and speech recognition features, such as animal size, gender, color, etc. Also, we need to move from using local storage to using AWS S3 buckets for storing images. Finally, we will focus on adding all types of tests, including unit tests, integration tests and end-to-end tests.

Please note that the Image Recognition feature in the Heroku live version of the application has been disabled due to the excessive cost of continuously running an AWS Rekognition project

Share this project:

Updates