Register or Login To Download This Patent As A PDF
| United States Patent Application |
20070055884
|
| Kind Code
|
A1
|
|
Rhoads; Geoffrey B.
|
March 8, 2007
|
User control and activation of watermark enabled objects
Abstract
Methods and systems for associating watermark enabled objects with machine
behaviors. Machine behaviors refer to actions by devices or systems in
response to a triggering event. Examples of these behaviors include
fetching a web page, opening an email client to send an email to a
specific person, initiating a phone or video conference call, etc. A
registration system enables users to associate machine behaviors with
objects through a watermark embedded in the objects. The decoding of the
watermark initiates a process for triggering the machine behaviors
associated with the watermarked object. While the disclosure describes an
implementation for stickers as a class of watermark enabled objects, the
system and related methods apply to other forms of watermark enabled
objects, including both electronic and physical objects.
| Inventors: |
Rhoads; Geoffrey B.; (West Linn, OR)
|
| Correspondence Address:
|
DIGIMARC CORPORATION
9405 SW GEMINI DRIVE
BEAVERTON
OR
97008
US
|
| Serial No.:
|
359756 |
| Series Code:
|
11
|
| Filed:
|
February 21, 2006 |
| Current U.S. Class: |
713/176 |
| Class at Publication: |
713/176 |
| International Class: |
H04L 9/00 20060101 H04L009/00 |
Claims
1. A watermark enabled object associated with a machine behavior via a
watermark embedded in the object, wherein the machine behavior is
triggered in response to decoding the watermark in the object wherein the
object is a sticker, and the watermark is embedded into an image printed
on the stocker by altering the image to hide machine readable data in the
image.
2. A watermark enable object associated with a machine behavior via a
watermark embedded in the object, wherein the machine behavior is
triggered in response to decoding the watermark in the object; wherein
the object is a prop in a computer game, and the prop supplies
information to the computer game by conveying the information in a
message embedded in a watermark on the prop.
3. A watermark enabled object associated with a machine behavior via a
watermark embedded in the object, wherein the machine behavior is
triggered in response to decoding the watermark in the object; wherein
the object has two or more facets, each facet being embedded with a
different watermark message used to control a game.
4. The object of claim 2 wherein the message includes an index to a
database entry where information for controlling the game is stored.
5. A watermark enabled object associated with a machine behavior via a
watermark embedded in the object, wherein the machine behavior is
triggered in response to decoding the watermark in the object; wherein
the machine behavior includes launching an email program and an email
directed to a destination associated with the object via the watermark.
6. A watermark enabled object associated with a machine behavior via a
watermark embedded in the object, wherein the machine behavior is
triggered in response to decoding the watermark in the object; wherein
the machine behavior includes launching an Internet chat session.
7. A watermark enabled object associated with a machine behavior via a
watermark embedded in the object, wherein the machine behavior is
triggered in response to decoding the watermark in the object, wherein
the machine behavior includes placing a telephone call to a destination
associated with the object.
Description
RELATED APPLICATION DATA
[0001] This patent application is a division of U.S. patent application
Ser. No. 09/690,773, filed Oct. 17, 2000 (now U.S. Pat. No. 7,003,731),
which is a continuation in part of U.S. patent application Ser. No.
09/633,587, filed Aug. 7, 2000, which is a continuation in part of U.S.
patent application Ser. No. 09/343,104, filed Jun. 29, 1999. U.S. patent
application Ser. No. 09/343,104 claims priority from U.S. Provisional
Application No. 60/134,782, filed May 19, 1999. U.S. patent application
Ser. No. 09/690,773 is also a continuation in part of U.S. patent
application Ser. No. 09/571,422, filed May 15, 2000, which claims
priority to U.S. Provisional Application No. 60/134,782, filed May 19,
1999. These patent applications are hereby incorporated by reference.
[0002] The subject matter of the present application is related to that
disclosed in U.S. Pat. No. 5,862,260, and in co-pending application Ser.
No. 09/503,881, filed Feb. 14, 2000, which are hereby incorporated by
reference.
TECHNICAL FIELD
[0003] The invention relates to multimedia signal processing, and in
particular relates to hiding auxiliary information in media signals like
audio, video and image signals.
BACKGROUND AND SUMMARY
[0004] Digital watermarking is a process for modifying physical or
electronic media to embed a machine-readable code into the media. The
media may be modified such that the embedded code is imperceptible or
nearly imperceptible to the user, yet may be detected through an
automated detection process. Most commonly, digital watermarking is
applied to media signals such as images, audio signals, and video
signals. However, it may also be applied to other types of media objects,
including documents (e.g., through line, word or character shifting),
software, multi-dimensional graphics models, and surface textures of
objects.
[0005] Digital watermarking systems typically have two primary components:
an encoder that embeds the watermark in a host media signal, and a
decoder that detects and reads the embedded watermark from a signal
suspected of containing a watermark (a suspect signal). The encoder
embeds a watermark by altering the host media signal. The reading
component analyzes a suspect signal to detect whether a watermark is
present. In applications where the watermark encodes information, the
reader extracts this information from the detected watermark.
[0006] Several particular watermarking techniques have been developed. The
reader is presumed to be familiar with the literature in this field.
Particular techniques for embedding and detecting imperceptible
watermarks in media signals are detailed in the assignee's co-pending
application Ser. No. 09/503,881 and U.S. Pat. No. 5,862,260, which are
hereby incorporated by reference.
[0007] The invention provides methods and systems for associating
watermark enabled objects with machine behaviors. In this context,
machine behaviors refer to actions by devices or systems in response to a
triggering event. Examples of these behaviors include fetching a web
page, opening an email client to send an email to a specific person,
initiating a phone or video conference call, etc. In the detailed
description to follow, a watermark system enables users to associate
machine behaviors with objects through a watermark embedded in the
objects. The decoding of the watermark initiates a process for triggering
the machine behaviors associated with the watermarked object. While the
detailed description focuses on an implementation for stickers as a class
of watermark enabled objects, the system and related methods apply to
other forms of watermark enabled objects.
[0008] Further features will become apparent with reference to the
following detailed description and accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
[0009] FIG. 1 is a system diagram depicting a system for associating
watermark enabled objects with machine behaviors, and for triggering
those behaviors in response to decoding watermarks.
[0010] FIG. 2 is a diagram depicting a variant of the system shown in FIG.
1 showing system components for enabling users to perform watermark
identifier registration and embedding.
DETAILED DESCRIPTION
[0011] The following description details a system and related methods for
associating watermark enabled objects with machine behaviors. To
illustrate the system, the description focuses on an example of watermark
enabled stickers. As noted, the system applies more broadly to
watermarking both physical and electronic objects. In particular, aspects
of the system may be used for watermarking media signals like images,
video and audio, as well as applying watermarks to physical objects.
Watermarks may be applied to physical objects by placing a watermarked
image on a physical object, by modulating the surface topology of the
object, etc. See U.S. Pat. No. 5,862,260, for more information about
watermark embedding of and decoding from physical and electronic objects.
[0012] Stickers in all their varieties have found an enduring place in our
society. From the workplace (Post-It.RTM. brand message notes), to kids
in a classroom, stickers have an inherent value associated with them,
whether it be functional (seals, labels, etc.) or just to identify
yourself with a particular affinity group (bumper stickers on cars). By
placing a watermark on stickers they can be used in novel ways. By
encoding a set of stickers with a watermark during production, specific
machine behaviors can be assigned to them. These behaviors can be
associated or even possibly changed by anyone from the manufacturer
through the distributor, all the way to the end-user. In addition, the
users can create their own watermark enabled stickers by creating an
image, embedding a watermark in it, and associating the watermark with
one or more machine behaviors.
[0013] These behaviors may include, but are not limited to the following:
[0014] Taking the user to a web-site linked to the watermark via a
network address of the web-site or index to the network address. [0015]
Opening an email client to email to a specific person (e.g., a person
whose email address is stored in the machine behavior description
associated with the watermark). [0016] Launching the user into an
Interframe Relay Chat (IRC) session that other people with the same
sticker can participate in. [0017] Authenticating the user as part of a
process of accessing a network resource, such as account information or
access to a computer network. [0018] Authentication the user in an
electronic commerce transaction performed on a computer network. [0019]
Sending an electronic card. [0020] Placing a phone or video-conference
call. [0021] As props in a computer game. For example, the prop is a
multi-sided, or multi-faceted object, where each side or facet has a
watermarked image conveying a different message used to control the game.
The computer game includes a watermark decoder for extracting the
messages from image frames captured of the prop. The message may directly
carry the message or act as an index to a more detailed game instruction
in a database, such as an instruction that changes over time based on
changes to the corresponding database entry by the user or game
manufacturer. [0022] As a visual aide for disabled users. [0023]
Anywhere where machine vision is not feasible.
[0024] In each of the above applications, the watermark carries
information that links the watermarked object (e.g., sticker) with a
machine behavior. To trigger this behavior, a watermark decoder
application captures an image or images of the watermarked sticker,
extracts the watermark, and uses information embedded in the watermark to
determine the associated machine behavior. The watermark decoder then
takes action to initiate the machine behavior associated with the
watermark.
[0025] For some applications, it is useful to enable the user to control
the behavior associated with a watermarked object. This type of
management may be handled by creating accounts for users and providing
access to the accounts via some authentication method (email, passwords,
etc.). For a number of reasons, these access methods can be problematic
(losing passwords, asking kids for their email addresses, etc.). As an
alternative, watermarks may be used to manage the process of associating
behaviors with a watermarked object.
[0026] For example, in the scenario where a user wants to assign behaviors
to a set of watermarked stickers they have received, they can hold up the
first sticker (or its packaging), and be taken to a registration
application to activate the stickers in the pack.
[0027] FIG. 1 is a system diagram depicting a system for associating
watermark enabled objects with machine behaviors, and for triggering
those behaviors in response to decoding watermarks. The system depicted
in FIG. 1 is implemented on a computer network, namely, the Internet. The
user accesses the system via a computer 100 connected to the Internet.
The computer broadly encompasses a variety of devices, such as Personal
Computers, set-top boxes, personal digital assistants, Internet
appliances, set-top boxes, tele
phones (including wireless devices), audio
and video players, and imaging devices (CCD or CMOS cameras, camcorders,
printers, fax machines, copiers, etc.). The computer is connected to an
image capture device 102, such as a PC camera or scanner, and includes
watermark decoder software for decoding watermarks from images captured
from the image capture device.
[0028] The system architecture shown in FIG. 1 includes a system (106) for
managing the process of assigning behaviors to watermarked objects as
well as a database management system (108) for initiating behaviors in
response to decoding watermarks from the objects. These two systems may
be integrated or implemented separately. In the application depicted
here, the registration system and database management system are
accessible via a network interface using standard network technology,
including HTML, XML, and TCP/IP. A watermark embedding system has
previously embedded watermarks carrying watermark identifiers into
stickers. The stickers (or packages of them) also include a registration
identifier used to activate the behaviors associated with them.
[0029] The registration system maintains a registration database including
records of the registration identifiers and corresponding watermark
identifiers. The registration identifiers are serialized numbers
corresponding to the watermarked stickers or packages of them. The
watermark identifiers are a form of object identifiers that are encoded
into the watermarks on the corresponding stickers. The registration
system maintains a registration database 110 of data records indicating
the watermark identifiers associated with each registration identifier.
When a user selects a behavior to be associated with a watermarked object
via the registration system, the registration system sends an update 112
to a behavior database 114 specifying the behavior to be associated with
a corresponding watermark identifier. In response, the database
management system 108 updates its database to include a record that
indicates the behavior associated with a particular watermark identifier.
[0030] The database management system 108 is also responsible for
supporting machine behavior associated with a watermarked sticker in
response to detection of the watermark on the sticker. It has a network
interface for communicating with other computers over the Internet. In
particular, it receives requests in the form of an XML packet from a
watermark decoding computer, extracts a watermark identifier from the
packet and looks up the associated behavior or behaviors in the behavior
database. It then initiates the associated behavior. The details of how
this behavior is carried out depend on the application and type of
behavior.
[0031] In a typical registration process, the user accesses the
registration system via a registration web site, which presents an HTML
interface to the users' computers. The user may fetch the HTML pages of
this interface using an Internet browser or application program, like the
watermark decoder application executing on the computer 100. This
interface enables the user to enter a registration identifier to start a
process of associating behaviors with watermark identifiers embedded in
watermarked stickers. In response to a registration identifier, the
registration system returns a page that enables the user to specify the
behavior. In the case where the behavior is linking a watermarked sticker
to a web site, the user specifies the network address of the web site,
such as a URL or IP address. In the case where the behavior is linking a
watermarked sticker to an email message, the user specifies the email
address of the email recipient.
[0032] As noted above, there are many other types of watermark enabled
behaviors. They can be classified as providing information to the
watermark decoding computer, launching some software program or machine
action, or a combination of both. Table 1 below gives some examples of
behaviors, and the related information and actions.
TABLE-US-00001
TABLE 1
Behavior Information Returned Associated Machine
Type to Decoding Computer or Software Actions
linking to URL, web page launching browser on client
web site to fetch/render web page at
URL
opening an email address of launching email client and
email client target recipient populating address field
with target recipient
starting a address of chat launching chat application
chat session session (watermarks on the stickers
can be designed such that
only those holding the
stickers can gain access
to the chat session, each
by showing the sticker to
his or her watermark decoder
enabled camera)
accessing address of account launching of browser appli-
account information cation to access account
information information through a web
or other interface; supplying user
network authentication information
resources from watermarked object
and/or from user (user
password, user name, log
on, etc.)
sending an card template launching client application
electronic to enable the user to design
card the card and add personal
message, launching email ap-
plication to send electronic
card (or link to electronic
card)
placing a phone number or launching application to
phone or IP address of initiate phone call over
video con- destination the internet or telephone
ference network
call
props in an identifier of prop, game application receives
interactive and possibly other prop and context information
computer context information, and responds accordingly
game such as game player
holding the prop, etc.
visual returns information browser, or other media
aid for in the form of player applications render
disabled graphics, audio, or the information (such as
users video (may provide the streaming media) on
address of audio or the decoding computer
video content at an
audio or video server
on the Internet)
machine machine instruction machine or software executes
control instruction
[0033] For a given application, the registration system provides
information to the user to enable the user to select the behavior and
provide pertinent information, such as URL, IP address, phone number,
email address, content file (e.g., audio, image or video file), etc. The
registration system formulates a description of the behavior, associates
it with the watermark identifier specified by the user, and creates an
update 112 to the behavior database.
[0034] The user then uses the stickers or shares them with friends. To
trigger the behavior of a sticker, a user captures an image of the
sticker with an image capture device 102 using a watermark decoder
application 104 executing on the computer 100. The watermark decoder
extracts the watermark identifier from a watermark embedded in the image
on the sticker. It then sends the watermark identifier to the database
management system 108 via the Internet, which in turn, looks up the
associated behavior. The database management system then triggers the
associated behavior by sending information, or instructions back to the
decoding computer. The decoding computer renders the information, and
launches a software or other machine action associated with the
instructions returned from the database. The database need not be
implemented in a remote computer. For example, the database may be
implemented in the watermark decoding computer or device.
[0035] As an enhancement to the registration process, objects may carry
watermarks that automatically link the user to the registration web site.
For example, one side of the sticker 116 or its packaging 118 may contain
a watermark with the network address or an index to a network address of
the registration web site. The user shows this part of the sticker or
packaging to the image capture device. The watermark decoder extracts the
watermark and looks up the network address in the behavior database, and
launches a browser to fetch the registration web site. The watermark may
also carry the registration identifier. In this case, the registration
web site can tailor the web page returned to the user to be specific to
the watermarked object. If the user or someone else previously associated
a behavior with the sticker, the registration web site returns the
current status associated with the registration identifier and the
behaviors associated with the watermarked objects linked to that
registration identifier. To get detailed information about particular
watermarked objects during the registration process, the user can show
the watermarked object to a camera, and use a watermark decoder to
extract the watermark identifier and supply it to the registration
system. In response, the registration system takes the watermark
identifier, queries the behavior database via the database management
system, and returns a description of the associated behaviors. This
approach provides a simple and automated process of activating watermark
enabled objects.
[0036] For more information about an object identifier registration system
and system for linking objects with machine behaviors, see U.S. patent
application Ser. No. 09/571,422, which is hereby incorporated by
reference.
[0037] In some applications, the user may wish to create his or her own
watermarked objects. FIG. 2 illustrates a system that enables users to
assign watermark identifiers to corresponding behaviors and objects and
update the behavior database. In this particular system, the user's
computer includes a watermark embedder application (120). However, the
embedder application may be implemented on a separate computer, such as a
server on the Internet accessible via a client application on the user's
computer 100. In the former case, the user embeds the watermark into the
desired image content on his computer. In the latter case, the client
supplies the image content to the server, which performs watermark
embedding and returns watermarked images to the client. In both cases,
the watermarked objects are created by printing the watermarked images on
objects.
[0038] The process begins when an embedder 120 creates a registration
request. In the system shown in FIG. 2, the embedder 120 is a software
application running on the computer 100. The embedder formulates the
request in a request file. The system provides a template for the request
file. The request file specifies the number of watermark identifiers
requested and the names of the media files to be embedded. The file may
also specify the behaviors to be associated with each watermark
identifier. Alternatively, the user can specify the behaviors to be
associated with the watermark identifier at a later time using the
methods described in this document. In the case where embedding is
performed on a server as opposed to the user's computer, the request file
may also include the media file (e.g., an image file) carrying the
content to be embedded with the watermark identifier.
[0039] Next, the embedder connects, via a network connection, to the
registration system 106. In particular, it connects to a registration web
site via an Internet connection. This web site requests the embedder's
username and password to authenticate it.
[0040] The user enters his username and password via a user interface
displayed on the PC 100 and submits them to the web site for
authentication.
[0041] Upon authentication, the registration website 106 returns an HTML
page presenting the embedder with a user interface screen that allows the
user to locate the embedder's registration request file for uploading to
the web site. The user then enters a command to instruct the embedder to
upload the selected request file.
[0042] The embedder provides the information required to locate the file
on the embedder's computer and submits it for upload.
[0043] The registration request file is uploaded into a registration
loader program 122.
[0044] The registration loader 122 performs a quick scan of the uploaded
registration request file and reports back to the embedder any errors in
format that it detects. If there are errors, the file is not processed.
[0045] If the registration request file is properly formatted, the
embedder receives a confirmation from the registration website 106 that
the request file has been successfully uploaded and will be submitted for
processing by the registration loader 122.
[0046] The embedder may now either submit a new registration request file
or logoff of the registration web site 106.
[0047] The registration loader 122 uses the information contained in the
embedder's uploaded registration request file to automatically allocate
(register) watermark identifiers in a registration database 110. The
identifiers are in the form of serial numbers. Once this process is
completed, the registration loader 122 initiates a request to a
registration extractor 124 for these new registration entries.
[0048] Upon receipt of a request, the registration extractor 124 accesses
the registration database 110 and creates embedder control files for each
of these new registered watermark identifiers (e.g., serial numbers).
[0049] Upon completion of this process, the registration extractor 124
process sends the embedder control file(s) back to the embedder via
Internet e-mail. In the event that the embedder is server based, the
extractor sends the control file(s) (or a pointer to them) to the
embedder server 126, which may be integrated with the registration system
or implemented at a different Internet site. The extractor 124 also sends
an update 128 to the behavior database 114 to create database records
associating each of the watermark identifier with a behavior.
[0050] Once the embedder 120 has received the embedder control file(s), it
uses these file(s), along with the media file(s) (in this case, image
files) and a set of embedding instructions to the embedder 120 to
instruct the embedder to automatically embed the list of watermark serial
numbers included in the embedder control file(s) into the listed media
files, producing a set of watermark-embedded media files. In the case
where the embedder is server based, the client executing on the PC 100
uploads the media files to be embedded to the embedder server, either
directly or as part of the registration process (e.g., as part of the
request file). The embedder server then returns the watermarked files to
the computer 100 via e-mail or other network file transfer protocol.
[0051] For detailed disclosure describing how to embed watermarks in media
signals, including images, audio, and video, see U.S. Pat. No. 5,862,260,
and co-pending application Ser. No. 09/503,881, filed Feb. 14, 2000,
incorporated above.
[0052] The embedder may create watermarked objects by printing watermarked
images on objects, such as stickers, documents, etc. The embedder sends
the watermarked image to a printer 128, which in turn, prints the image
on an object.
[0053] The above system provides a mechanism for linking objects to
machine behaviors. As noted previously, this mechanism applies to both
physical objects, like stickers and packaging, and electronic objects,
like image, audio and video signals. It also applies to other forms of
machine readable signal carriers that can be applied to such objects,
including bar codes, magnetic stripes, Radio Frequency tags, integrated
circuit chips, organic transistors, etc. These machine readable carriers
can be used in the same way that watermarks are used in the example of
watermarked enabled stickers above.
[0054] While these technologies provide a mechanism for linking objects to
machine behaviors, there is a need for a tool that explicitly facilitates
the creative coordination between the object and the behavior linked to
it. The linking process results in a potentially complex database
structure which not only embodies the fundamental object to behavior
link, but also might include a hierarchy of delivered responses as a
function of user implicit or explicit requests. Or, said in a quite
different way, the creative process of linking an object to complex
data-driven responses is itself a creative endeavor all to itself,
involving thinking through the various different reactions that users
will want and expect when using an object as a portal. The artist who is
tasked with creating the choreography between an object and a simple or
complex machine behavior will need explicit assistance from well designed
tools, resulting in a database record which memorializes that creativity
as an active element within a connectivity system described in this
document and U.S. patent application Ser. No. 09/571,422. The immediate
creative output is a database structure. The long term creative output is
the active use of that structure as a stimulus-response hub.
[0055] Whether a link design tool be web-server based, or whether it be a
stand-alone application similar in kind to an Adobe P
hotoshop or a Quark
Express, it is possible to offer visual metaphors to a creative designer
which literally presents that designer with an image of the to-be-linked
object along with explicit visual links to one or more data responses.
[0056] One embodiment of this tool for linking printed objects to web
pages is a local computer application which presents an image of a
printed object on the left side of an application's window pane and the
image of a web page on the right side of the application pane. The images
of the printed objects may be stored locally or fetched from a remote
device (e.g., a content database) and rendered to the left side of the
screen. Similarly, the web pages may be stored locally or downloaded from
web sites on the Internet or some other network. The user interface of
the application displays a control such as a button, labeled, "Connect",
"Link" or some other active word representing the process of associating
an object with a corresponding machine behavior. The user, having browsed
through a series of objects to be linked, and browsed through a series of
potential web site destinations, finding the best "matched-pair", pushes
the button and off this relational link goes into a queue waiting to "go
live", or, in other words, a temporary record is stored for a candidate
link to be sent to the behavior database of the linking system described
previously. A user can perform multiple links per session, queueing them
up as they go, reviewing the queue at some point in time, then directing
the links to become active at the behavioral database, as described
previously and in the referenced documents.
[0057] An extension begins by generalizing the single printed item to be
an icon or visual analogy to a related set of printed material. Graphical
user interface methods can be employed to move, manipulate, view and
otherwise process this icon in a fashion familiar to creative
professionals. Likewise, surrounding this generalized icon representing
the object(s) to be printed can be a whole series of icons representing a
variety of potential data-delivered responses that are possible links.
Existing web pages, placeholders for web pages to be designed, streaming
media icons, Java application icons, "links to links" icons wherein a
given response may explicitly point to a menu of actions presented to the
end user. (end user=consumer doing the linking). This list of possible
responses is incomplete but nevertheless representative of graphically
displaying the possible relationships between printed material and data
responses.
[0058] As in the baseline case, various relationships can be created
between objects and responses, ultimately stored into a queue. The actual
functionality and quality assurance of the links could be tested in the
process. Once the creative artist is satisfied with their link or set of
links, the queue can be sent to go live at the behavior database and
further double checks on quality performed.
CONCLUDING REMARKS
[0059] Having described and illustrated the principles of the technology
with reference to specific implementations, it will be recognized that
the technology can be implemented in many other, different, forms. To
provide a comprehensive disclosure without unduly lengthening the
specification, applicants incorporate by reference the patents and patent
applications referenced above.
[0060] While the invention is illustrated with reference to watermarked
stickers, aspects of the invention apply to other object types including
media signals like audio and video. There are number of different
watermark embedding and decoding methods that may be used. The watermark
embedding process may modulate features of a signal in the time,
frequency, spatial or some other transform domain of the signal to be
watermarked.
[0061] In addition to an object identifier, the watermark may be used to
convey other information, such as an index to related metadata, rendering
control instructions, etc. For example, the watermark can carry a network
address or index to a network address to link the watermarked signal to a
network resource such as a related web site.
[0062] Other machine readable codes may be embedded in an object and used
to link the object to a machine behavior. Some examples include bar
codes, magnetic stripes, RF tags, etc. The devices and methods used to
extract an identifier from the machine readable code differ, yet the
process for registering identifiers and associating behavior with objects
may be similar.
[0063] The methods, processes, and systems described above may be
implemented in hardware, software or a combination of hardware and
software. For example, the auxiliary data encoding processes may be
implemented in a programmable computer or a special purpose digital
circuit. Similarly, auxiliary data decoding may be implemented in
software, firmware, hardware, or combinations of software, firmware and
hardware. The methods and processes described above may be implemented in
programs executed from a system's memory (a computer readable medium,
such as an electronic, optical or magnetic storage device).
[0064] The particular combinations of elements and features in the
above-detailed embodiments are exemplary only; the interchanging and
substitution of these teachings with other teachings in this and the
incorporated-by-reference patents/applications are also contemplated.
* * * * *