Inspiration

This idea stemmed from our team’s interest in urban planning. As university students who mainly get around the city by walking, we’ve noticed that many people (especially students) look at their phones while crossing intersections. Although seemingly harmless, distracted walking at intersections has resulted in over 60 pedestrian fatalities per year in Canada source, on average. In the United States, texting and walking has resulted in over 10,000 injuries a year source. Furthermore, in areas of high population density, such as downtown Toronto, drivers can have unpredictable behaviour and roads can be especially congested at times. This makes distracted walking a dangerous decision, and thus we saw a need for improvement. Introducing, Crosswalk of Shame...,

What it does

Crosswalk of Shame... is a website that displays a gallery of pedestrian photos who cross intersections in an unsafe manner. Each photo is taken when a pedestrian looks at their phone, while also playing a sound (“get off your phone!”). The goal of this is to discourage distracted walking in a comedic manner; specifically, through public shaming. The website also displays crossing statistics data (number of crossings, number of dangerous crossings, percentage of dangerous crossings, and average time to cross for multiple time frame options).

How we built it

The frontend interface was developed using React and is hosted through Vercel. Convex was used for backend; specifically to create API endpoints and for data storage. PyTorch and YOLOv8 were used to achieve pedestrian recognition and to identify dangerous pedestrian crossings.

Challenges we ran into

Our biggest challenge was hardware integration. Originally, we planned to create a hardware system with a camera and LED light integrated with Raspberry Pi to signal dangerous pedestrian behavior. The schema was to pass the tags labeled by the YOLOv8 outputs into the Raspberry Pi OS to control the light switch. However, the hardware equipment made this task difficult. The ethernet cables purchased had unstable connections and had to be plugged in and unplugged every 2 minutes, the Pi ran into network issues, and the operating system had to be accessed through SSH instead of a nice GUI provided by the Pi. Many pieces of hardware like SD readers and cables were unavailable and had to be sourced from outside of HTN. All of these issues made the hardware integration time-consuming and resulted in the final integration being unsuccessful.

Accomplishments that we're proud of

With most of us having little or moderate experience in coding, a lot of learning and research was completed on the way. We are very proud to see our project through to the end with most major features functioning properly. We are proud of how well we collaborated under the time pressure of the hackathon, supporting each other throughout the process.

In terms of technical accomplishments, we are very pleased with the accuracy of our pedestrian identification program. We are also proud of implementing Convex as a backend framework given that no one on the team had prior experience with it. Finally, we are happy that we were able to successfully host our website onto Vercel.

What we learned

Through Hack the North, we learned the importance of flexibility and problem-solving when dealing with hardware integration challenges. Despite our original plan to use Raspberry Pi for hardware control, we encountered numerous setbacks, such as unstable connections and faulty equipment, which required us to adapt quickly. This experience taught us how to pivot our focus when necessary. Additionally, we gained valuable experience using Convex for backend development, which none of us had prior knowledge of. We also learned to navigate machine learning frameworks like PyTorch and YOLOv8, enhancing our skills in pedestrian identification and computer vision applications. Finally, collaborating under tight deadlines sharpened our teamwork and communication skills.

What's next for Crosswalk of Shame…

Crosswalk of Shame… is not yet able to be implemented on a large scale (i.e. on actual streets). We acknowledge that the current trained CV model sometimes crashes when overflowing with data, and cannot detect dangerous crossings of pedestrians looking at their phones when they are not facing the camera. Furthermore, we initially also wanted to incorporate identifying children, the elderly, and other vulnerable populations. However, the lack of training data and the ability to train on site made us pivot to focus on a more general approach of improving pedestrian crossing safety. We also wanted to incorporate tracking pedestrian crossing lights to identify any crossings that occur when lights are red or if insufficient time is given for pedestrians to cross an intersection. Additionally, since our goal is to allow mass installment of similar systems at crossings, the Raspberry Pi electric signal component may be insufficient and should be upgraded to larger warning lights to raise the driver’s attention to pedestrians. Finally, if our system is installed at most intersections, the collected camera data would also allow city planners to analyze where high volumes of unsafe pedestrian crossings occur and thus invest in infrastructure to reduce potential accidents.

Built With

Share this project:

Updates