We love the amazing participation of the crowd at these events. At concerts, we see many people hold up lighters and flash their phones for pictures. We want to have a wave of color expand over the crowd.
What it does
Audience members enter their seat number into the website form to receive their section color pattern. At certain moments of the game, all the phones in the arena will light up according to a predetermined color pattern.
Android phone audience members can light up the arena throughout the game by pointing their camera at the jumbotron and the phone will light up to match the screen.
Audience members could continue to access the Android phone version from home. The website would detect the most vibrant color of any object shown to the camera. This could be a fun interaction game for kids.
How we built it
We're using Socket.IO to coordinate all the different connections for the section color patterns. The pattern could be color gradients, alternating team colors, or anything you can imagine. The advantage of using Socket.IO is the ability to send section, row, or seat specific colors to the users. This allows greater detail to be added to the patterns.
The Android phones are using computer to detect the luminosity intensity of the colors in the video stream to the phone. This method avoids the challenge of coordinating a server with the individual phones and allows the audience to continue to use the function throughout the entire game.
Challenges we ran into
The server could potentially become bottlenecked as the result of all the users connecting to the server at once. Several precautions were implemented to help prevent this from occurring.
We also had concerns for WiFi Connectivity Issues while in the stadium, so we implemented a computer vision solution to try to mitigate this issue.
Building a web application implementation of the idea limited much of the computer vision solution.
The iOS phones do not allow camera interaction with websites. This restriction from Apple blocks the users from using the computer vision part of the project.
Accomplishments that we're proud of
We got the color detector on the Android phones to work!
What we learned
We learned a lot about Mobile Computer Vision and taking into account Network Connectivity Issues. We learned a lot about keeping the project small and functional. We learned that over planning is not a bad thing.
What's next for Digital Wave
A special iOS application could be developed fairly easily to access the camera if given more time.
NodeJS, Socket.io, WebRTC, nginx