We watched an interesting TV documentary about giraffes. We learnt that they are a cool animal specie, but unfortunately, they are in danger of extinction. So we wanted to help the people who works for saving the giraffes by building a tool for them.
What it does
We tried to identify a giraffe by a picture of its skin. Each giraffe has its own skin pattern, so we wanted to: - Create a database of a custom data structure for each giraffe. - Develop an algorithm to compare two of them, so we can identify the giraffe.
How we built it
We built it using Python and OpenCV. We also built a simple server for uploading the images. Basically we generate a graph from a skin image, and then compare it with others. Generating this graph was really complex and we accomplished it by applying filters in order to enhance the important visual features that we wanted to analyze. Then, we translated each spot of the skin in a node with properties like area, outline, etc.
We didn't use any neuronal network since this is a very particular application of the common computer vision techniques. We had to implement almost everything ourselves.
Challenges we ran into
We didn't have so much experience in computer vision, so we had to learn very fast. We also had problems identifying a custom object like a giraffe in a picture, so the giraffe detection must be manual.
What we learned
Computer Vision and OpenCV
What's next for GiraffeSaver
To develop an Android app and connect it to a good camera, so by simply taking a picture, it could identify the giraffes.