At McGill, libraries get very full during exam period and finding a seat in one of your favourite libraries becomes a daunting challenge.

What it does

libseat helps you find the perfect spot, by showing how many seats are available at nearby libraries, and floorplans directing you to open spots. You can also get a notification when a spot opens up.

How we built it

The project is implemented using computer vision. Darkflow (Darknet for Tensorflow) + YOLO are used to detect persons, while an algorithm we developed determines which seat they're in. Results are stored in a SQL database, which is regularly pruned to remove vacant seats. The whole system backs a web app.

Challenges we ran into

Finding a method for seat occupancy detection that worked was a difficult process. We tried idea after idea, with some implementations failing to detect anything, while others confusing chairs and people. At times it seemed intractable. Still, we pushed on, and at last, IT WORKS!

Accomplishments that we're proud of

This is our first hackathon, and just being here has been an amazing experience. We started from an idea that seemed a challenge worth taking on, and 48 hours later we have a working proof of concept.

What we learned

We learned how to develop our skills in areas relating computer vision and web application development, and how to work as part of a team under pressure

What's next for libseat

We're looking to implement the libseat system in a real library, and getting feedback from students. On the implementation side, we're working on a fast and convenient iOS app as an interface to libseat.

Built With

Share this project: