Skip to content

KREATORS-uofa/Spot_The_Dog-KREATORS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Spot-the-Dog-logo

SpotTheDog App

A project written at

HackED 2023,

a 24-hour hackathon hosted by

University of Alberta Computer Engineering Club

Our goal is to rescue missing dogs by matching images through face recognition techniques.

To do so, we employed machine learning in image processing, established a database and storage of dog images, and built an app on which users could upload the images of either wandering or missing dog.


  • Countless dog owners have gone through the painful experience of searching for their missing dogs. Extremely laborious it is - to post the pictures of their lost dogs both online and offline. Adding to this challenge, the anxious owners would look for their missing dogs on many social media and platforms, scrolling through the ocean of information. A government-run institution for sheltering lost pets does exist somewhere, but they tend to be slow and their service comes with the possibility of death of beloved pets unless the owners hastily pick them up in time. SpotTheDog App is a platform on which both the anxious owners and the caring witnesses of wandering dogs to upload dog images with location information. The application would then match the images of same dogs. This allows everyone to be involved in the effort of rescue and accelerates the searching process.

Functionality

  • SpotTheDog App takes user inputs, such as images and location information.
  • It processes images through machine learning for dog face detection and recognition.
  • It saves the input information in a database along with meta data.

SpotTheDog App

Machine Learning (ML) Model, spot_the_dog_model.py

The major components of our ML model are opencv, dlib, and face_recognition packages, which are essential in detecting and recognizing faces. We combined and modified their functionalities to create our own model

Detected Face

image

As shown in the image above, it detects the face well with facial landmarks such as eyes, ears, and noses. However, the major limitation is that it detects only frontal faces. We will bbe continuously working on the ML model to overcome this limitation.

Registered Face

registered-dog-face

Unmatched Face

unmatched-dog-face

The first figure is the image of a reported dog supplied by a witness and uploaded to the app. Its face encoding is stored in the dtabase, and the data will be used to recognize incoming images of missing dogs, for example, shown in the second image. It compares the missing dog's face encoding with a list of reported dogs' face encodings. As a result, the matched faces with certain similarities are tagged to the missing dog. When browsing missing dogs, the similar dogs are matched and tagged.

App Preview

App-preview App-preview App-preview

The documentations of employed ML packages are listed below.

dlib Documentation: http://dlib.net/
face_recognition Documentation: https://face-recognition.readthedocs.io/en/latest/face_recognition.html
Data File


About Project and Team

Our Noteworthy Achievements

  • Originality:
    • Currently, there is no commercially available app similar to SpotTheDog.
  • Utility
    • Our project raises awareness on lost or stray dogs.
    • It would accelerate the searching process of missing dogs.
    • It decentralizes the tasks involved in finding and maintaining missing dogs.
  • Execution and Polishness
    • Completed the working project within 24 hours.
  • Complexity
    • Quickly familiarized ourselves with new techniques / coding skills.

Team Members:

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published