
Did anyone think to scan his barcode?
The inventor of the bar code, Norman Joseph Woodland, has died at his home in New Jersey at the ripe old age of 91. Woodland, along with colleague Bernard Silver, originally patented the invention back in 1952 as a way of encoding data on packaging. Woodland claimed that he was inspired by a mix of his Morse code training in …
Jeremiah was an eccentric farmer who lived in rural Victoria in the 19th century (not far from Mildura, as it happens). Jeremiah ran a small sheep station close to town, and on Sundays he was the local choir master. Anyhow, as Jeremiah was single, and therefore had no spouse or progeny with whom to share the load, he found it very difficult to keep track of his sheep. One day, when he was trying to remember which of his sheep had been through the sheep dip, he noticed something peculiar. Each of his flock had a slightly different bleat. Being choir master, and sensitive to such things, he quickly found that he could use this sound to uniquely identify each member of the herd.
That is why, if you examine the Victorian patent records for 1873, you will find an entry for the first ever baa code.
Because you need to move the scan head acros the lines one at a time, as it's read sequentially.
This is very difficult to do because:
a) the circles can't be read by a linear scanner (the only real way to reliably scan sequentially), as each circle represents 2 data points
b) circular codes are very hard to scan "casually" (ie imagine the scanner is held by an drunk 80yr old with the shakes).
c) circular scanners would be damned hard to manufacture, as the scan method would require increasing/decreasing radius sources, rather than a simple left/right linear scanner.
I didn't know that American news could spell barcode correctly, much less write a coherent story about it!
Anyway, one of the local (Florida, US) companies made some serious barcode readers. They had one where you could put the barcode on a frisbee, fling it through this 5ft cube volume, and it would read it 10 out of the 10 times I tried it. My hat was off to those boys. Some smart ones in that bunch.
A toast to Mr. Woodland!
"They had one where you could put the barcode on a frisbee, fling it through this 5ft cube volume, and it would read it 10 out of the 10 times I tried it."
That's actually not terribly difficult; the toughest thing would be managing to read reliably at the maximum possible distance. I don't think that the movement or unpredictable (ish) location would pose much of a problem.
In particular, you can assume a frisbee is moving in about a straight line. Detecting it entering is quite easy; since it's round, figuring out where the center is should also be fairly straightforward. After that it's pretty trivial to figure out what line it's on, which can help things a bit; the other useful thing is that if the barcode is on the edge of the frisbee, it's going to be nearly stationary for some percentage of the time - it's going to be rotating back away from the frisbee's direction of travel. I don't know what frisbee RPM tends to be, but instinct suggests that you'll have at least two of those cycles, which gives you several reasonable frames to work with - find the barcode itself (easy), figure out its orientation (also fairly easy since you can determine that based on a priori knowledge you have of the frisbee's rotation and position) and then rotate the capture into the right orientation, match with the other frames, generate a composite, and voila.
Piece of cake!
So the trickiest bit is really getting an imager that's fast enough and high enough resolution to grab all those frames. Or you could use a low res camera to figure out when the frisbee is in the right place and detect when the code is moving the slowest relative to the frame, and then fire a high res pic with something else.
Honestly, I'm more impressed with supermarket readers that manage to pull codes off stuff with specular highlights all over them, at big angles, crinkled, etc etc. The frisbee thing actually has far fewer unknowns and a much more limited set of circumstances for the read.
I got interested in them because I got a barcode reader for the Psion Organiser II to play with, and I quickly ran out of barcodes in the house to play with. At the time, how they work was a *big business secret* (well, by the companies that sold barcode stuff), but some companies like HP were quite happy to send you data sheets and a catalog which explained it all, and I ended up writing some code to print my own. When you work out how the whole EAN codes work you also discover one of the biggest misses ever - instead of making EAN country codes the same as used in telephony, they went their own way. Argh.
In those days I even managed to use one of the first Canon Bubblejets for printing insane amounts of goods in labels ("real" barcode printers were expensive, so we used a BJ10 with tractor feed labels, driven by a Psion Organiser II running some code I cooked up). We had Canon UK visit us to see how on earth we managed to push so much ink through one printer (3x as much as anyone else). They told us we were operating the printer out of spec and it would fail in a year. They don't make 'em like that anymore: it took 3 years before the printhead died in a fairly spectacular way (let's just say that it suddenly *really* used a lot of ink :) ).
I still use barcodes, usually basic ones like Code 3 of 9 because they are simple to create, and just take a cheap CCD scanner to read (2D codes require a camera and processing, which tends to make scanners 3x as expensive, but excellent for smartphone use).
But the scanners to do are substantially more complex.
People consider bar codes to be "low tech" these days as the world of RFID tags on everything is just around the corner (and has been for several decades).
But today they can be printed on most printers and the software to do so is fairly widely available, likewise the cheap barcode scanners are readily available too. I think most OCR packages can pick them up as well.
It's always surprised me the people invest in "document management systems" when arranging to print a bar code on any correspondence out of an organisation as part of the "from" reference (and tagging any that came in) is likely to be a lot cheaper way of handling most paperwork.
Relevant as the idea of the paperless office remains about 10 years away (like it was when I left school).
I've been repeating elements of payment slips and invoices such as numbers, client reference number and totals as barcodes since the 90s. It speeds up reading in return slips and payment matching, also because it eliminates typos. The nice thing is that you can do this with no or minimal changes to almost any existing software (all that sees is a keyboard entry). I've looked at using OCR-B fonts as well, but that immediately demands a more sophisticated reader.
A little bit of thinking ahead during the design phase goes a long way..