Science

Acoustic barcode system allows scratch and scan data retrieval

Acoustic barcode system allows scratch and scan data retrieval
Researchers from Carnegie Mellon University have developed a system called acoustic barcodes that registers the sound of a finger scraping across notches etched, embossed or cut into a surface, and converts it into a unique binary ID
Researchers from Carnegie Mellon University have developed a system called acoustic barcodes that registers the sound of a finger scraping across notches etched, embossed or cut into a surface, and converts it into a unique binary ID
View 8 Images
Researchers from Carnegie Mellon University have developed a system called acoustic barcodes that registers the sound of a finger scraping across notches etched, embossed or cut into a surface, and converts it into a unique binary ID
1/8
Researchers from Carnegie Mellon University have developed a system called acoustic barcodes that registers the sound of a finger scraping across notches etched, embossed or cut into a surface, and converts it into a unique binary ID
An acoustic barcode patterned into an acrylic tag
2/8
An acoustic barcode patterned into an acrylic tag
Teaching aids enhanced with acoustic barcodes
3/8
Teaching aids enhanced with acoustic barcodes
Unique IDs carved on various parts of the ship can be swiped to access information on the different functions
4/8
Unique IDs carved on various parts of the ship can be swiped to access information on the different functions
The system is capable of using the internal microphone of mobile devices to register the acoustic barcodes
5/8
The system is capable of using the internal microphone of mobile devices to register the acoustic barcodes
Acoustic barcodes can be incorporated into a variety of materials, including polystyrene (vacuum-formed), paper, transparency, wood, glass, acrylic, granite, and a 3D-printed object
6/8
Acoustic barcodes can be incorporated into a variety of materials, including polystyrene (vacuum-formed), paper, transparency, wood, glass, acrylic, granite, and a 3D-printed object
The team also succesfully etched an acoustic barcode onto type 1 polyester transparencies
7/8
The team also succesfully etched an acoustic barcode onto type 1 polyester transparencies
An acoustic barcode (B) is placed on a table (I), and a microphone (C) is attached. A fingernail (A) running over the barcode produces a series of mechanical vibrations (D), which propagate through the table and are captured by the microphone. The first sound is the initial impact of the finger (E). As the nail passes over the notches in the acoustic barcode, a series of sharp bursts of sound are produced (F). Finally, the finger lifts off or falls of the end of the barcode (G). The resulting waveform is processed, resulting in a decoded binary sequence (H).
8/8
An acoustic barcode (B) is placed on a table (I), and a microphone (C) is attached. A fingernail (A) running over the barcode produces a series of mechanical vibrations (D), which propagate through the table and are captured by the microphone. The first sound is the initial impact of the finger (E). As the nail passes over the notches in the acoustic barcode, a series of sharp bursts of sound are produced (F). Finally, the finger lifts off or falls of the end of the barcode (G). The resulting waveform is processed, resulting in a decoded binary sequence (H).
View gallery - 8 images

For many of us, pointing a device at an object and retrieving data about it has become part of our daily lives. The vast majority of our purchases will sport the ubiquitous barcode; an increasing number of printed magazine adverts, online articles and even television shows are using QR codes for access to more information; and most recently, near field communication technology is opening up new ways to interact with the world around us. A team of researchers from the Human-Computer Interaction Institute and Heinz College Center for the Future of Work Carnegie Mellon University has been looking into an alternative object tagging system called acoustic barcodes. The system takes the sound of a finger, pen or phone scraping across a series of parallel notches etched, embossed or cut into a surface or object, and converts it into a unique binary ID.

The barcode part of the system – developed by Chris Harrison, Robert Xiao and Scott Hudson – consists of a series of parallel grooves and ridges on the surface of an object designed to produce a unique, complex sound when something is scraped across the top, such as a fingernail or the edge of a smartphone. Each notch is between 0.25 and 0.5 mm thick, 0.1 to 0.3 mm deep and 7 mm wide, and they "are separated by a small integer multiple of a unit gap distance, either 1.6 or 3.2 mm."

Acoustic barcodes can be incorporated into a variety of materials, including polystyrene (vacuum-formed), paper, transparency, wood, glass, acrylic, granite, and a 3D-printed object
Acoustic barcodes can be incorporated into a variety of materials, including polystyrene (vacuum-formed), paper, transparency, wood, glass, acrylic, granite, and a 3D-printed object

A guard sequence made up of three notches separated by unit gaps sits at the beginning and end of each payload and the system provides for two different binary code schemes. In the fixed-notch-count scheme, a groove followed by a one-unit-length gap is resolved as a zero and a groove followed by two unit lengths translates to a one. The fixed-physical-length scheme, however, encodes each one as a notch and each zero as the space in between.

The team has already applied the grooves to many different objects and materials, including wood, glass, paper, acrylic, stone and polyester transparencies, and says that although not tested, the acoustic barcode should also work on metal.

The short burst of sound produced as a fingernail or phone body is swiped across the barcode is picked up by an inexpensive piezo contact microphone attached to a surface or object. The microphone used for the team's experiments is reported to have cost just US$6 and is capable of monitoring a surface area of 10 square meters (107.6 sq ft).

Recording begins if the system detects input above a predetermined level, so as not to misfire and record the neighborhood dogs barking instead of a swipe across the barcode. The sound is sampled at 96 kHz, preprocessed with a high-pass-filter at 4 kHz to remove background hum and any human speech from the signal, and then the waveform is cleaned up and smoothed out to accentuate the peaks and subdue the constants.

It's then fed into a peak detection routine and onto a barcode decoder which resolves the acoustic barcode as a unique binary ID.

The reading system has also been developed to compensate for variations in swipe speed by calculating a "unit length implied by each gap (the gap length divided by the unit multiple). This is then averaged with the previous unit estimates, allowing the value to drift as decoding proceeds."

The system is capable of using the internal microphone of mobile devices to register the acoustic barcodes
The system is capable of using the internal microphone of mobile devices to register the acoustic barcodes

The team has also confirmed that the system is capable of using the internal microphone of mobile devices to register the acoustic barcodes.

The system has been tested for accuracy by a small user group who swiped six different types of barcodes using three devices – a fingernail, a dry erase marker and a mobile phone. The microphone was attached to the whiteboard for the first two test conditions and to the mobile phone itself for the latter. To avoid problems associated with varying swipe distances, the fixed-physical-length encoding scheme was used for this part of the study.

Each test user swiped five different bars once with each of the three devices for a total of 270 trials over the course of the experiment, which were processed in real time.

At the close of the evaluation, it was found that system accuracy was a little less than perfect, and varied depending on which device was swiped across the barcode. The smartphone performed best (87.4 percent accuracy), followed by the fingernail (77.9 percent) and then the marker (66.4 percent).

The researchers point out that any real-world application of this kind of system would need to incorporate some form of error correction mechanism for improved robustness. However, it has the potential to be used like traditional product barcodes to retrieve information, for example, or augment the display on a smartphone screen, start apps or trigger functions.

Source: Chris Harrison

You can see the system outlined in the video below, along with a few suggested applications.

Acoustic Barcodes: Passive, Durable and Inexpensive Notched Identification Tags (UIST 2012)

View gallery - 8 images
4 comments
4 comments
Vasco Regula
This is an interesting system, but I do not believe it is better than QR codes. You have a lot more consideration than whether somebody possesses a phone that has a camera. A big consideration is background noise. We live in a world of noise so how does this plan to take that into consideration?
Slowburn
What does this do that a visual barcode doesn't?
Jay Givan
How could you ever get this to work in the logistics industry? This is a solution looking for a problem.
Ralf Biernacki
The test yielded such discouraging results because the fixed-length encoding chosen is hopelessly naive. A series of zeros, such as often happens in digital data, will result in a long expanse of ungrooved material. If the swiping speed varies only slightly---and it will, as the swiping is done manually---it becomes impossible to reliably distinguish between an ungrooved field n units long and a field n+1 units long.
Another more sophisticated encoding must be used to ensure that no gap is more than 2 or 3 units long; for instance, groove-groove for 1 and groove-flat for 0.
It would also be desirable to prevent out-of-sync errors, at least. Such codes are already well researched for CD encoding, among other things, so there is no reason to reinvent the wheel. See below: http://en.wikipedia.org/wiki/Block_code http://en.wikipedia.org/wiki/Forward_error_ correction