Focus Robust Visual Codes for Everyone Frederik Hermans
Focus: Robust Visual Codes for Everyone Frederik Hermans, Liam Mc. Namara, Gábor Sörös 1
Visual Codes Too far away Blur Frame Mixing Challenge: how to design visual codes that are robust to a wide range of capture conditions? 2
Contributions We propose Focus a new visual code • Suitable for a wide range of capture conditions • Partially decodable • Significantly improves on the state of the art Focus addresses the mentioned challenge by encoding data in orthogonal sub-channels in the frequency domain 3
2 D Fourier Transform = + + + + +. . . =S • Any image can be represented as sum of 2 D sinusoids • An image’s spectrum is a 2 D complex matrx 4
Encoding a Focus Code Payload Data Chunk 1 Data Chunk 2 Data Chunk 3 Data Chunk 4 Spectrum (2 D complex matrix) 5
Encoding a Focus Code Payload Data Chunk 1 Data Chunk 2 Data Chunk 3 Data Chunk 4 Focus code Spectrum (2 D complex matrix) Inverse FFT 6
Encoding a Focus Code Payload Data Chunk 1 Data Chunk 2 Data Chunk 3 Data Chunk 4 Focus code Spectrum (2 D complex matrix) Inverse FFT Focus codes use as little spatial detail as possible. 7
Decoding a Focus Code Spectrum Captured code FFT Received Payload Data Chunk 1 Data Chunk 2 Data Chunk 3 Data Chunk 4 8
Decoding a Focus Code Spectrum Captured code FFT Received Payload Data Chunk 1 Data Chunk 2 Data Chunk 3 9
Decoding a Focus Code Spectrum Captured code FFT Received Payload Data Chunk 1 10
Decoding a Focus Code Spectrum Captured code FFT Received. Focus Payload codes can be partially decoded. The amount of Data Chunk 1 decodable data scales with the reader’s sampling rate. 11
Fountain coding • Generate a potentially limitless sequence of symbols from a given source of symbols • Recover original k symbols from any k’ symbols with high probability, where k’ = k + ε Data 1 Data 2 Data 3 Data 4 Data 1’ Data 2’ Data 3’ Data 4’ Data 2’ Data 3’ Data 2 Data 3 Data 1 Data 4 Data 5’ Data 6’ Data 7’ … 12
Experimental Results Evaluate impact of distance and camera quality • Code capacity 1536 bytes • Distance 1 m ~ 6 m • Readers Galaxy S 6 (2015), Nexus One (2010), Google Glass (2014) 13
Impact of Camera Resolution 14
Impact of Distance and Camera Goodput increases with decreasing distance. 15
Focus & Strata • Strata also provides partial decoding and aims to be robust • Encodes data in blocks of pixels of varying size • Focus codes have a lower bit error rate because they use less spatial detail to represent the payload. 16
Focus & Pix. Net • Pix. Net also encodes data in frequency domain; targeted towards high-quality cameras. • Errors in Focus codes concentrated towards end of payload • Significantly improved throughput on smart devices 17
Conclusions • Focus codes represent data in the frequency domain • They are readable over worse channels than existing codes • With poorer cameras and over longer distances • Can be partially decoded if channels is not good enough • More: • Fountain coding, multi-rate codes. . . 18
Thank you! Q&A 19
- Slides: 19