Be sure to write what inspired you, what you learned, how you built your project, and the challenges you faced. Format your story in Markdown.

CatchColor: Empowering the Colorblind Community

Inspiration

Our app, CatchColor, was inspired by real people in our lives who struggle with colorblindness. Peter's father, Mr. Tenholder, who worked for many years as an engineer, faced daily challenges identifying colors — from picking out clothes to reading color-coded resistors in his engineering work. Similarly, our friend Arjun struggles with colorblindness in class when working with electronics and reading colored lines in code.

What started as a small idea in a study room that came from seeing these people grew into a powerful tool that could give autonomy back to the 12 million Americans affected by colorblindness. We regularly consulted Mr. Tenholder throughout the development process, asking what features would be most helpful in surpassing the limitations of colorblindness that people like him face.


What We Learned

Throughout this project, each team member gained valuable skills in their respective areas:

Design Team (Ishaan and Avika)

  • Learned to use Figma for app design and developed skills in simplifying complex processes for user accessibility.
  • Enjoyed working with color palettes to create the logo and app aesthetics while keeping programming limitations in mind.

Development Team (Sai, Peter, and Rohin)

  • Discovered the importance of clean coding practices, thorough communication, and effective version control using tools like Github, Android Studio, and VS Code.
  • Learned that "coding alone is very different from coding with someone else," and that readable syntax is essential for collaborative work, especially since none of us had done much collaborative coding before.

Teamwork

  • Established effective communication channels (group chats, Zoom, Slack, Google Calendar).
  • Learned to divide tasks effectively.
  • Coding team met daily for about two hours to develop the app, while the design team collaborated on multiple drafts to optimize the structure.

How We Built It

CatchColor uses recognition-based camera software to analyze images provided by the user. The software examines the average pixel RGB values in different sections of the image to determine the most accurate color shade of objects.

We implemented an algorithm that:

  1. Takes the average RGB values of surrounding pixels of the spot selected by the user.
  2. Maps these values to specific color shades with Spanish integration as well

We added an important feature:

  • Users can touch the screen on an image to find the exact color at that specific point

To ensure accuracy:

  • We created a diverse and intricate color palette system.
  • Developed solutions to account for various lighting conditions.
  • Focused on making the interface colorblind-friendly by softening harsh edges and adjusting color contrast — based on feedback that colorblind individuals often have heightened sensitivity to light from Mr. Tenholder.

Challenges We Faced

Our most significant challenge was ensuring color identification accuracy across various lighting conditions, especially with oranges and brown

  • Initial versions of the app struggled with consistency, potentially limiting its usefulness in real-world scenarios since it wasn’t picking up colors well.
  • We overcame this by extensively researching colors better and implementing a sophisticated algorithm that analyzes the average RGB values of pixels surrounding the selected point. This approach allowed us to map colors more accurately to specific shades, significantly improving the app's reliability.

Another challenge was balancing team input as the project progressed.

  • As programming demands increased, some team members had fewer opportunities to contribute to aspects like the pitch video, and trying to learn how to share code was difficult at first.
  • We learned that establishing clear plans for all project components before heavy coding since it ensures everyone has input in the final product.
Share this project:

Updates