Per-channel color barcodes for displays
We present a per-channel framework for extending monochrome barcodes to color for display applications, offering increased data rates and capacity. Data is independently encoded into barcodes, incorporated within a color image as the red (R), green (G), and blue (B) channels and decoded from the corresponding R, G, and B channels in the image of the displayed barcode captured with a smartphone. Using a physical model for the display and capture processes, we show that the cross-channel interference in this situation is appropriately modeled by a linear mixing relation. Via experiments done over multiple smartphones and displays, we demonstrate that the impact of the interference is small and can be further mitigated through the use of interference cancellation. Two methods are presented for estimating and canceling the interference: either using pilot blocks in coherent designs where the synchronization marker patterns align between the codes or using expectation maximization. Results are presented for both QR and Aztec color codes in this framework, highlighting its versatility. Overall bit error rates are shown to be below 1.23% and are further reduced by interference cancellation. These low error rates are well within the correction capacity of the error correction codes used for typical color barcodes.