سؤال

This is a computer vision question with a strong emphasis on programming.

I'm looking for a visual system to encode 4 bits of information. Here are the requirements:

  1. A standard printer must be able to print out something that contains the data in an 8 inch by 8 inch square.
  2. A standard mobile phone camera will take a picture of the data under standard but inconsistent indoor lighting conditions from an unknown angle in a room full of other people and objects.
  3. The data must be recovered in less than half a second on a standard mobile processor.

The goal is to maximize the range of permissible distances and angles in step 2.

For example, using a QR code and the zxing library makes for a decent system but it doesn't hold up too well at some angles and across my office. It also encodes way too much information.

Even 1D barcodes like EAN seem too verbose. I know ahead of time that the data will be exactly one of at most 16 things. So what 16 things that I could print would be most easily and efficiently recognized at harsh angles and long distances, and not confused between each other or with common household objects?

Bonus points for easily implementable ideas.

هل كانت مفيدة؟

المحلول

What about one of these sixteen characters 0123456789ABCDEF printed with OCR-A (or OCR-B) font?

OCR-A is described in Alphanumeric character sets for optical recognition -- Part 1: Character set OCR-A -- Shapes and dimensions of the printed image. ISO 1073-1:1976

OCR-B is described in Alphanumeric character sets for optical recognition -- Part 2: Character set OCR-B -- Shapes and dimensions of the printed image. ISO 1073-2:1976

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top