Bokode is an imperceptible visual tag that encodes directional information for camera-based interaction from a distance. It uses an invisible barcode pattern to the human eye but can be decoded by a machine. When captured by a camera, the angle and position of the Bokode within the image allows extraction of encoded data as well as the camera's angle relative to the Bokode. This enables applications such as surface interaction, multi-user interaction, and augmented reality without requiring direct line of sight.