Inspiration
The four of us are avid skiers. For anyone who skis, you know that it's nice to have footage of yourself skiing-- on one hand, to improve your form, on the other hand, to capture your cleanest, most epic moments on the mountain. Very often, your sickest jump or your gnarliest run through the powder happens when no one was there to see it! As it stands, capturing these moments on the mountain is cumbersome: someone has to take off their gloves, pull out their phone, and stay put while the other one skis down to them. We solve this issue with Peak.
What it does
Peak is a system for capturing videos of skiers on mountains. On a given trail, we mount a series of cameras in optimal video-capturing locations (near a jump, at a trailmap, etc). The user downloads the Peak mobile app, and using GPS data from the phone, Peak determines when skiers were near the mounted cameras. To begin your day using Peak, simply take a reference photo of yourself on the "Record" tab of the app. Throughout the day, our system uses the user's GPS location to identify potential moments that were captured by the cameras. Then, Peak performs clip segmentation and user identification (using a Deep learning model and the reference photo) to associate clips of skiing with individual users. Using the Peak mobile app, you can immediately watch back the automatically captured and cropped videos of yourself on the mountain. Peak archives all your videos, and organizes them into folders for outings and specific days. Our app also includes a community aspect, so you can share your clips with friends. Furthermore, we incorporate statistics relating to your path through the mountain, your top speed, distance traveled, etc.
How we built it
We built an API and a frontend using FastAPI and React Native. The backend uses PostgreSQL and SQLAlchemy. We store our data in a Google Cloud storage bucket. Data tables include users, GPS data, videos, cameras, etc.
Challenges we ran into
We found it difficult to getting the frontend to interface with the backend. The backend design was rather complicated, as we had a lot of datatypes to worry about, and we needed to create effective schemas/endpoints.
Accomplishments that we're proud of
We are proud that we were able to get the video storage aspect fully functioning! Videos (clips) are stored in the Google Cloud bucket, and archived and watchable on your mobile device.
What we learned
We learned a lot about using SQLAlchemy and FastAPI for backend design. In many ways, this software made our lives much easier. We also learned how to make a React Native app using Expo.
What's next for Peak
Ultimately, Peak could go one of two ways. We could sell our API to Epic resorts (A company that owns many of the major resorts in the U.S.), and Epic could integrate our software into their EpicMix app (an app that includes trailmaps, statistics, other GPS-driven information). Alternatively, Peak could remain independent, and sell our cameras to independent mountains, or charge a subscription fee for receiving your ski footage.

Log in or sign up for Devpost to join the conversation.