Talk from Thomas Willomitzer at the Computer Vision Meetup March Edition about "How we built snapscreen"
1 of 10
Download to read offline
More Related Content
Computer Vision Meetup March: How we built snapscreen
1. How we built Snapscreen
From idea to scalable system
2. Initial idea
• Watched Superbowl game in Silicon Valley in 2013 and saw Shazam
enabled commercial on TV
• Worked at Jumio as CTO at the time having lots of exposure to
computer vision
• Added 1+1 to come up with the idea for Snapscreen
• Initial idea was to take a photo with any phone and send photo to
email address. In reply email send contextual information about
program you are watching
3. First steps
• Used OpenCV to implement MVP to proof the idea can work
• Did some homework on precision and scale metrics
• Did some homework on cost both in production of technology and
operation of technology for thousands of TV stations and millions of
users
• Seemed doable – so we went ahead
4. The first year
• Decomposed the problem into smaller problems: screen detection,
image matching, TV data gathering and storing
• Building of data sets for development and test of algorithms for each
smaller problem
• Solving of each of the smaller problems
5. The technology behind Snapscreen
• CI – nearly CD – built on Jenkins, Artifactory, Chef and Docker
• Highly scalable backend built on Java using state of the art Spring
Cloud
• Scaling built on Digital Ocean and Zabbix
• Persistence layers built on top of Postgres with CitusDB and
MongoDB
• Computer Vision layers built with C++, Neon, AVX2. All driven by
CMake and CTest
8. The product offering
• The vision is to automate the search for anything on TV
• For TV Apps this is identifying the program and deliver SERPs (search
engine result pages) for program title, actor names, episode
information etc …
• For Betting Apps this is finding the right game and bet immediately –
keep the impuls
• For Sports Apps – It’s a hybrid between TV Apps and Betting Apps.
We find the right game in the app – and also deliver SERPs for Teams
and Players
9. Lets see Snapscreen in action
• Show video https://www.snapscreen.com/intro-video
• Show live demo (and hope it works)
• Assuming the demo worked – who wants to try?