U.S. patent application number 17/319910 was filed with the patent office on 2021-08-26 for providing a virtual shopping environment for an item.
This patent application is currently assigned to eBay Inc.. The applicant listed for this patent is eBay Inc.. Invention is credited to Kamal Zamer, Lucy Ma Zhao.
Application Number | 20210264508 17/319910 |
Document ID | / |
Family ID | 1000005582949 |
Filed Date | 2021-08-26 |
United States Patent
Application |
20210264508 |
Kind Code |
A1 |
Zhao; Lucy Ma ; et
al. |
August 26, 2021 |
Providing a Virtual Shopping Environment for an Item
Abstract
Techniques for providing a virtual item shopping environment are
presented herein. Live video of a person walking past a display is
captured using a camera. One or more items are selected from a
database automatically by determining an item available for sale
and selecting the item without intervention from the person. One or
more data records representing one or more respective items are
retrieved from a database. The items are presented on a display
based on the data records representing the respective items.
Presentation is performed by presenting live real-time video of the
person walking past the display with an overlaid view of the item
available for sale to provide an unrequested view of the item
available for sale.
Inventors: |
Zhao; Lucy Ma; (Austin,
TX) ; Zamer; Kamal; (Austin, TX) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
eBay Inc. |
San Jose |
CA |
US |
|
|
Assignee: |
eBay Inc.
San Jose
CA
|
Family ID: |
1000005582949 |
Appl. No.: |
17/319910 |
Filed: |
May 13, 2021 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
16400951 |
May 1, 2019 |
11017462 |
|
|
17319910 |
|
|
|
|
14474116 |
Aug 30, 2014 |
10366447 |
|
|
16400951 |
|
|
|
|
Current U.S.
Class: |
1/1 |
Current CPC
Class: |
G06Q 30/0643
20130101 |
International
Class: |
G06Q 30/06 20060101
G06Q030/06 |
Claims
1. A method comprising: capturing a live video of a person;
determining one or more dimensions of the person based on the live
video; selecting an item available for sale from a database based
at least in part on the determined one or more dimensions of the
person; and presenting, on a display, a live video of the person
with an overlaid view of the item available for sale.
2. The method of claim 1, wherein the item available for sale
comprises a shirt, blouse, dress, pants, skirt, sweater, coat, or
jacket.
3. The method of claim 1, wherein the item available for sale
comprises jewelry.
4. The method of claim 1, wherein the item available for sale
comprises a wallet, a handbag, a purse, a pouch, a backpack, or a
fanny-pack.
5. The method of claim 1, wherein the item available for sale
comprises a make-up, eye shadow, foundation, eye liner, mascara,
contact lenses, glasses, a wig, or a tattoo.
6. The method of claim 1, wherein the display is located in an
environment that includes a physical store, and the physical store
includes an inventory of items from which the item available for
sale is selected.
7. The method of claim 1, wherein the overlaid view of the item
available for sale is adjusted based on the determined one or more
dimensions of the person.
8. The method of claim 1, wherein the presenting is performed using
at least one additional display.
9. The method of claim 1, wherein the item available for sale is
selected based on a similarity to one or more items that the person
is currently wearing.
10. The method of claim 1, further comprising offering an option
for the person to share the live video by way of a social
network.
11. The method of claim 1, further comprising displaying an option
for the person to purchase the item available for sale in response
to the person viewing the item available for sale for a threshold
amount of time.
12. The method of claim 1, further comprising receiving a selection
of the item available for sale from the person via a user
interface.
13. The method of claim 12, wherein the selection of the item
available for sale comprises a touchless gesture.
14. The method of claim 12, wherein the user interface comprises a
user interface displayed by a client device of the person.
15. A computing system comprising: one or more processors; a
non-transitory computer storage medium storing instructions which,
when executed by one or more processors, perform operations
comprising: capturing a live video of a person; determining one or
more dimensions of the person based on the live video; selecting an
item available for sale from a database based on the determined one
or more dimensions; and presenting, on a display, the item
available for sale, the presenting comprising the live video of the
person with an overlaid view of the item available for sale to
provide a view of the item available for sale.
16. The computing system of claim 15, wherein the overlaid view of
the item available for sale is adjusted based on the determined one
or more dimensions.
17. The computing system of claim 15, wherein the display is
located in an environment that includes a physical store, and the
physical store includes an inventory of items from which the item
available for sale is retrieved.
18. The computing system of claim 15 further comprising offering an
option for the person to share the live video by way of a social
network.
19. A non-transitory machine-readable storage medium comprising
instructions, which when implemented by one or more machines, cause
the one or more machines to perform operations comprising:
capturing a live video of a person; determining one or more
dimensions of the person based on the live video; selecting an item
available for sale from a database based on the determined one or
more dimensions; and presenting, on a display, the item available
for sale, the presenting comprising the live video of the person
with an overlaid view of the item available for sale to provide a
view of the item available for sale.
20. The non-transitory machine-readable storage medium of claim 19,
further comprising displaying an option for the person to purchase
the item available for sale in response to the person viewing the
item available for sale for a threshold amount of time.
Description
RELATED APPLICATION
[0001] This application is a continuation of and claims priority to
U.S. patent application Ser. No. 16/400,951, filed May 1, 2019,
entitled "Providing A Virtual Shopping Environment For An Item",
which claims priority to U.S. patent application Ser. No.
14/474,116, filed Aug. 30, 2014, entitled "Providing A Virtual
Shopping Environment For An Item", the entire disclosures of which
are hereby incorporated by reference herein in its entirety.
TECHNICAL FIELD
[0002] The subject matter disclosed herein generally relates to the
technical field of virtual marketplaces and more specifically
providing a virtual shopping environment for an item.
BACKGROUND
[0003] Shopping for clothes, apparel, garments, or other items in a
physical (e.g. non-online) environment can be an arduous task. A
consumer may experience delays due to travelling, parking, walking,
finding available sales personnel, and waiting in purchase lines.
With the advent of online shopping, consumers may purchase items
while staying home, via a computer or any electronic device
connected to the Internet. However, because a virtual consumer may
not physically try a purchased item, the item may not fit the
particular consumer as expected or may not look as the consumer
expected.
BRIEF DESCRIPTION OF THE DRAWINGS
[0004] Some embodiments are illustrated by way of example and not
limitation in the figures of the accompanying drawings.
[0005] FIG. 1 is a block diagram illustrating a system, in
accordance with an example embodiment, providing a virtual item
shopping environment.
[0006] FIG. 2 is a block diagram illustrating a computing device in
accordance with embodiments of the present disclosure.
[0007] FIG. 3 is a block diagram illustrating an apparatus in
accordance with an example embodiment.
[0008] FIG. 4 is a block diagram illustrating a system, in
accordance with another example embodiment, providing a virtual
shopping environment.
[0009] FIG. 5 is a block diagram illustrating a system, in
accordance with another example embodiment, providing a virtual
shopping environment.
[0010] FIG. 6 is a block diagram illustrating a system, in
accordance with another example embodiment, providing a virtual
shopping environment.
[0011] FIG. 7 is a block diagram illustrating a system, in
accordance with another example embodiment, providing a virtual
shopping environment.
[0012] FIG. 8-10 are illustrations depicting various examples of a
user interface in accordance with example embodiments.
[0013] FIG. 11 is a flow diagram illustrating a method in
accordance with an example embodiment.
[0014] FIG. 12 is a flow diagram illustrating a method in
accordance with another example embodiment.
[0015] FIG. 13 is a block diagram illustrating components of a
machine, according to some example embodiments, able to read
instructions from a machine-readable medium and perform any one or
more of the methodologies discussed herein.
[0016] FIG. 14 is a block diagram illustrating components of a
mobile device, according to some example embodiments.
DETAILED DESCRIPTION
[0017] The description that follows includes illustrative systems,
methods, techniques, instruction sequences, and computing machine
program products that embody illustrative embodiments. In the
following description, for purposes of explanation, numerous
specific details are set forth in order to provide an understanding
of various embodiments of the inventive subject matter. It will be
evident, however, to those skilled in the art that embodiments of
the inventive subject matter may be practiced without these
specific details. In general, well-known instruction instances,
protocols, structures, and techniques have not been shown in
detail.
[0018] Example systems and methods for providing a virtual item
shopping environment are described. The systems may include
instructions to produce a virtual item shopping environment.
Additionally, systems described herein may combine a video of a
consumer with a three dimensional model of an item based on various
body shapes/dimensions, may provide item availability, and may
provide purchase options for the consumer.
[0019] FIG. 1 is a network diagram illustrating a network
environment 100 suitable for providing a virtual item shopping
environment, according to some example embodiments. The network
environment 100 may include a system 105 that includes a computing
device 110, a camera 112, and a display 114. The computing device
110 may be operatively coupled with the camera 112 and the display
114. The computing device 110 may receive live video from the
camera 112 and may generate live real-time video to be displayed
via the display 114.
[0020] In other embodiments, the system 105 may communicate with a
remote database 115 via a network 190. The computing device may be
implemented in a computer system, in whole or in part, as described
below with respect to FIG. 13. In one embodiment, the remote
database 115 may provide requested data records to the computing
device 110. As will be described in subsequent paragraphs, the
remote database 115 may store data regarding items available for
display via the display 114.
[0021] As described herein, a system according to certain
embodiments may provide a display combining live video of a
potential consumer with an overlay of an item that may be purchased
by the consumer. As described herein, a live video may include
video being received while generating imagery for the display 114.
Therefore, in certain embodiments, the live video may not be
prerecorded or read from a non-volatile storage device.
[0022] An item, as described herein, may include a wide variety of
items and is not limited to any certain items or types of items. In
certain examples, an item may include wearable items such as, but
not limited to, garments, apparel, clothes, underwear, bras, hats,
coats, jackets, sweaters, shirts, blouses, dresses, pants, skirts,
kilts, socks, shoes, sandals, or other, or the like. In other
examples, an item may include jewelry, rings, toe rings, watches,
bracelets, necklaces, earrings, nose rings, other rings, other
pierced items, other wearable items or articles, or other, or the
like. Of course, one skilled in the art may appreciate other items
that may be worn by a person.
[0023] In another embodiment, an item may include an item or
article that a person may carry. In certain examples, an item may
include, a wallet, a handbag, a purse, a pouch, a backpack, a
fanny-pack, or other, or the like. In one embodiment, an item may
include an item that may modify an appearance of a person. In
certain examples, an item may include make-up, eye shadow,
foundation, eye liner, mascara, contact lenses, glasses, a wig, a
tattoo, or other, or the like.
[0024] In one embodiment, an item may include an item in an
environment of a person. In certain examples, an item may include a
car, a motorcycle, another vehicle, household items, furniture,
decor, light fixtures, lamps, or other household items, other
people, famous people, or other. Therefore, as described and
claimed herein, an item is not limited to any kind or types of
physical item and this disclosure is meant to include all items as
one skilled in the art may appreciate.
[0025] Any of the machines, databases, or devices shown in FIG. 1
may be at least partially implemented in a general-purpose computer
modified (e.g., configured or programmed) by software (e.g., one or
more software modules) to be a special-purpose computer to perform
one or more of the functions described herein for that machine,
database, or device. In certain examples, a special-purpose
computer may communicate with other devices to perform certain
functions. For example, a special-purpose computer may capture
video by receiving video from a camera. In another example, a
special-purpose computer may be configured to display by
transmitting data to a physical display to be displayed.
[0026] In certain examples, a computer system able to implement any
one or more of the methodologies described herein is discussed
below with respect to FIG. 12. As used herein, a remote "database"
may be a data storage resource and may store data structured as a
text file, a table, a spreadsheet, a relational database (e.g., an
object-relational database), a triple store, a hierarchical data
store, or other, or the like as one skilled in the art may
appreciate. Moreover, any two or more of the machines, databases,
or devices illustrated in FIG. 1 may be combined into a single
machine, and the functions described herein for any single machine,
database, or device may be subdivided among multiple machines,
databases, or devices.
[0027] The network 190 may be any network that enables
communication between or among machines, databases, and devices
(e.g., the device 110 and the database 115). Accordingly, the
network 190 may be a wired network, a wireless network (e.g., a
mobile or cellular network), or any suitable combination thereof.
The network 190 may include one or more portions that constitute a
private network, a public network (e.g., the Internet), or any
suitable combination thereof. Accordingly, the network 190 may
include one or more portions that incorporate a local area network
(LAN), a wide area network (WAN), the Internet, a mobile telephone
network (e.g., a cellular network), a wired telephone network
(e.g., a plain old telephone system (POTS) network), a wireless
data network (e.g., Wi-Fi network or WiMAX network), or any
suitable combination thereof.
[0028] Any one or more portions of the network 190 may communicate
information via a transmission medium. As used herein,
"transmission medium" refers to any intangible (e.g., transitory)
medium that is capable of communicating (e.g., transmitting)
instructions for execution by a machine (e.g., by one or more
processors of such a machine), and includes digital or analog
communication signals or other intangible media to facilitate
communication of such software.
[0029] In one embodiment, the network environment 100 may include a
physical store 150. The physical store 150 may include a retail
store, a warehouse, other storage facility, or other, or the like.
In certain embodiments, the physical store 150 may include an
inventory of items as described herein. The remote database 115 may
track a set of available items physically located in the physical
store 150. Therefore, in certain embodiments, the computing device
110 may receive database records from the remote database 115 that
may represent items available at the physical store 150. This may
allow a user of the computing device 110 to query regarding items
available at the physical store. In another embodiment, the
physical store 150 may be geographically located in proximity to
the system 105, but of course, this is not necessarily the
case.
[0030] In one example, the system 105 may be physically located
just outside the physical store 150. Such a configuration of
components may allow a customer to virtually browse items that may
be physically available inside the store. A consumer may browse,
and purchase one or more items using the system 105 and may
subsequently pick-up the purchased items without requiring
additional travel, or waiting for shipping of a the item. Use of
the system 105 may also allow the user to only need to step into
the physical store 150 to pick up the item, as selection and
purchase of the item may be handled by the system 105.
[0031] In other embodiments, the remote database 115 may track
items available at remote locations. For example, a chain of stores
may include items not available at specific locations. The system
105 may allow a consumer to virtually try-on an item and purchase
the item. In response to the ordered item not being available at
the physical location near the system 105, the computing device 110
may ship the ordered item to a remote location provided by the
consumer, or to a physical store 150 closer to the consumer.
[0032] FIG. 2 is an illustration depicting components of a
computing device 110 suitable for providing a virtual item shopping
environment in accordance with embodiments of the present
disclosure. In one embodiment, the computing device 110 may include
a dimension module 210, a selection module 220, and a display
module 240, all configured to communicate with each other (e.g.,
via a bus, shared memory, or a switch). Any one or more of the
modules described herein may be implemented using hardware (e.g.,
one or more processors of a machine) or a combination of hardware
and software. For example, any module described herein may
configure a processor (e.g., among one or more processors of a
machine) to perform the operations described herein for that
module. Moreover, any two or more of these modules may be combined
into a single module, and the functions described herein for a
single module may be subdivided among multiple modules.
Furthermore, according to various example embodiments, modules
described herein as being implemented within a single machine,
database, or device may be distributed across multiple machines,
databases, or devices.
[0033] In one embodiment, the system 105 may include the camera
112, the display 114, and the computing device 110. The computing
device 110 may include the dimension module 210, a display module
240, and a selection module 220. In one embodiment, the camera 112
may be configured to capture live video of a person near the
display 114.
[0034] In certain embodiments, the computing device 110 may cause
the camera to aim the camera at a person near the display 114. In
some embodiments, the computing device 110 may direct the camera
towards a top half of a person near the display. In other
embodiments, the computing device 110 may zoom in or zoom out the
camera. For example, the computing device 110 may cause the camera
112 to zoom out in order to view the full body of a person near the
display 114. The computing device 110 may affect the camera in a
wide variety of different ways in order to focus on certain parts
of the person as one skilled in the art may appreciate. Therefore,
this disclosure is not limited in this regard.
[0035] In another embodiment, the computing device 110 may include
a dimension module 210 configured to determine one or more
dimensions of the person based on the live video. The dimension
module 210 may determine a height of the person, a width of the
person, a size of the person, a weight of the person, body
curvature of the person, or other physical features viewable by the
camera 112. In other embodiments, the dimension module 210 may
approximate a dimension of the person in response to the person
wearing loose fitted clothing. For example, the person may be
wearing a large overcoat. In response, the dimension module 210 may
estimate a shape or size of the person based on dimensions of the
overcoat.
[0036] In one example, a person may be tall and not generally heavy
set, but may have a large abdomen. The dimension module 210 may
further determine that a certain size of an item may fit the person
based, at least in part, on unique body curvature (the large
abdomen). Certain people may have larger or smaller parts of their
bodies and the dimension module 210 may adjust a size for an item
to accommodate the unique body curvature, or unique sizes of
certain body parts.
[0037] In other embodiments, the dimension module 210 may determine
a gender of the person based, at least in part, on dimensions of
the person, size or existence of certain body parts, make-up, hair
style, or the like.
[0038] In certain embodiments, the dimension module 210 may
determine an appropriate item size for the person. In one example,
a specific person may be slender in certain areas and less slender
in other areas. For example, the person may have large hips. In
order to accommodate unique body curvature parameters, the
dimension module 210 may determine that an appropriate size for a
blouse may be smaller than an appropriate size for a dress (e.g. to
accommodate larger hips). Therefore, the dimension module 210 may
determine a size for a blouse may be a size 4 whereas a size for a
dress may be a size 8. In other examples, the dimension module 210
may determine a size for an item based on a ratio between a height
and a weight of the person.
[0039] In one embodiment, the dimension module 210 may be
configured to determine one or more dimensions using data from the
camera and a pre-determined point of reference. A pre-determined
point of reference may provide the computing device 110 with
sufficient dimensionality to determine physical measurements based
on the live video.
[0040] In one example, the person may be located at a
pre-determined location. Based on knowledge of the person being a
known distance away from the camera and a size of the person in the
live video, the dimension module 210 may determine a height of the
person as one skilled in the art may appreciate.
[0041] In another embodiment, the dimension module 210 may be
configured to measure a dimension of the person using data from two
or more cameras. As one skilled in the art may appreciate,
combining video data from two or more cameras, and coordinating
similar points between the videos may provide sufficient
dimensionality to determine physical measurements based on the
video signals.
[0042] In one example, the dimension module 210 may identify common
points between the two video signals. Based on knowledge of a
pointing angle of the cameras and the locations of the common
points, the dimension module 210 may determine a physical distance
from the cameras and the person. Furthermore, the dimension module
210 may determine physical distances and/or measurements of the
person.
[0043] Based, at least in part, on physical measurements of the
person (e.g. height, weight, width, body curvature, size), the
dimension module 210 may determine a size for an item. In another
embodiment, the dimension module 210 may be further configured to
adjust a size of the selected item based on a brand of the selected
item and information about dimensions of the size for the
brand.
[0044] For example, an item brand A may use sizes that closely
represent industry standard sizes, however, an item brand B may
consistently provide items that are larger than industry standard
sizes. Therefore, although the dimension module 210 may determine a
size of the person to be a size 6, in response to an item being of
brand B, the dimension module 210 may adjust the size from a size 6
to a size 4. Based, at least in part, on information about
dimensions of the size for the brand, the dimension module 210 may
adjust determined sizes of the person. Such adjustments may result
in a set of items that more accurately represent a size of the
person, although specific numbers of sizes may vary slightly
between brands of items.
[0045] In another embodiment, the system 110 may include a
selection module 220 configured to select one or more items from a
database based on the determined dimensions. A database 115 may
store data records in a wide variety of different formats,
arrangements, files, memory, or other, or the like, as one skilled
in the art may appreciate. The database 115 may track item brands,
sizes, physical dimensions, weights, colors, patterns, or the like.
In other embodiments, the database 115 may store relationships
between other items. For example, the database 115 may store links
between articles of clothing that blend well together. In another
embodiment, the database 115 may store popular color patterns or
combinations of colors, such that the database may recommend
appropriate colors for cooperating items based, at least in part,
on color patterns, popular trends, combinations that other
consumers have purchased together, historical connections, or the
like. In another embodiment, the database 115 may store popular
brands, configurations, colors, patterns, or the like. In one
embodiment, the database 115 may receive associations between items
from a user of the database, another computing device, or
other.
[0046] In one embodiment, the database 115 may store a specific
item size for the item, such as, but not limited to a size 4. In
another embodiment, the database 115 may store physical
measurements of the item, such as, but not limited to, physical
measurements or distances that may indicate bust, waist, and/or
hips sizes of the person.
[0047] In other embodiments, the database 115 may store retailer
deals, offers, discounts, or the like, for specific articles of
clothing, or items. This may allow the database 115 to provide
records to items that a retailer may desire selling before other
items.
[0048] Therefore, in certain embodiments, the dimension module 210
may determine one or more dimensions of the person and may request
a set of items from the database that may more likely fit the
person.
[0049] In one embodiment, the selection module 220 may be
configured to receive data records representing a set of items from
the database that may more likely fit the person. The display
module 240 may present images for the items represented by the data
records in a user interface. The selection module 220 may be
further configured to receive a selection from the person via a
user interface, the selection indicating one of the presented
items.
[0050] As described herein, a user interface may include any
available technology to present and/or receive indications from a
person. A user interface may detect gestures by a person, may
detect eye movements by the person, may receive touches from the
person, may provide a control device, such as, but not limited to,
a keyboard, mouse, or other input device. Therefore, the user
interface may interact with the person in any way, or to be
developed ways and this disclosure is not limited in this
regard.
[0051] In another embodiment, the selection module 220 may select
one or more items from the database based, at least in part, on
similarity with items currently on the person. In one example, a
consumer may be wearing a cowboy hat. In response to the consumer
wearing a cowboy hat, the selection module 220 may include cowboy
hats in the selection of items from the database 115.
[0052] In another example, in response to a user wearing a dress,
the selection module 220 may include one or more dresses. In
another example, in response to a person wearing high heeled shoes,
the selection module 220 may include high heeled shoes in the
selection of items from the database 115.
[0053] In another embodiment, the selection module 220 may order
selected items based on characteristics of the person. For example,
in response to the person having significant tattoos, the selection
module 220 may order tattoos before other items or item types. In
another example, in response to the consumer wearing a watch, the
selection module 220 may order watches ahead of other types of
jewelry.
[0054] In another embodiment, the system 105 may include the
display module 240. The display module 240 may be configured to
present one or more items on the display. The display module 240
may retrieve images representing item records received by the
database. The database 215 may store and return many planar images
for selected items. The display module 240 may present a wide
variety of different images via a user interface as one skilled in
the art may appreciate.
[0055] In another embodiment, the display module 240 may generate a
three dimensional (3-D) item based, at least in part, on one or
more planar item images. Furthermore, the display module 140 may
present the item model on a 3-D body model based on various body
shapes/dimensions. The display module 240 may consider the tension
or force in the item draped on a body, and how the item flows as
the body performs actions.
[0056] In one embodiment, the display module 240 may combine live
video of a person near the display with the three dimensional model
of the item to be displayed. The display module 240 may overlay
images of the item on the video of the person.
[0057] As described herein, a live real-time video may mean that
the video may be received from the camera and updated with the
model of the item using available resources and without unnecessary
delay. In certain examples, due to processing of the video and item
images, the live real-time video may be displayed later than
receiving the video signal from the camera. In one example, the
delay may be 500 milliseconds or longer. In other examples, the
delay may be a few seconds. Of course, this disclosure is not
limited in this regard. As technology develops, faster hardware may
result in a reduction in an amount of time required to generate the
live real-time video.
[0058] Therefore, as described herein, real-time does not
necessarily mean that there is no delay between receiving the live
video and generating, but that there may be no intentional delay
between receiving the live video of the person and generating the
live real-time video combined with the three dimensional model of
the selected item.
[0059] In another embodiment, the display module 240 may further
include a simulated background. In order to alter a perception of a
particular item, the display module 240 may present the live
real-time video of the user in combination with the selected item
and may include a simulated background. In one embodiment, the
selection module 220 may receive a selection from the user
indicating a specific background for the live real-time video. In
certain examples, the simulated background may be selected from
landscape, mountains, meadows, flowers, a dance hall, a dinner
scenario, a ballroom, a gazebo, a famous landmark, or other, or the
like. A simulated background may further allow a user to see how a
particular item may look in different environments. Furthermore,
the live real-time video may include a full body view of the person
which may further support a consumer's perception of the item.
[0060] In other embodiments, the selection module 220 may request
items from the database 115 that may be located at a specific
physical location that is in proximity of the display 114. In one
example, the system 105 may be located near or inside a retail
store of items. Limiting the selection of items to those available
at a specific physical location may enhance a consumer's ability to
discover immediately available items. Providing immediate
purchasing and pickup options to a consumer may enhance sales of
specific item because a consumer would not have to wait to receive
the selected item.
[0061] FIG. 3 is an illustration depicting components of an
apparatus suitable for providing a virtual item shopping
environment in accordance with embodiments of the present
disclosure. In one embodiment, the apparatus may include the
dimension module 210, the selection module 220, the display module
240 and a transaction module 320. The dimension module 210, the
selection module 220, and the display module 240 may or may not be
substantially similar to those depicted in FIG. 2.
[0062] In one embodiment, the transaction module 320 may be
configured to receive an indication from the person to purchase the
indicated item. In one example, in cooperation with displaying a
live real-time view of the person wearing the selected item, the
display module 240 may also provide a button allowing a user to
select to purchase the displayed item.
[0063] The transaction module 320 may receive the indication to
purchase the selected item and may request financial information
from the person. In certain examples, the transaction module 320
may receive credit card numbers, store purchase card numbers,
PayPal.RTM. credentials, financial institution numbers, debit card
credentials, or other, or the like as one skilled in the art may
appreciate.
[0064] In other embodiments, the transaction module 320 may store
information for certain persons and may retrieve their financial
information from local storage without requiring the user to enter
the financial information again. This may allow a consumer to
purchase a selected item with limited interaction with the system
105.
[0065] In another embodiment, the transaction module 320 may be
further configured to transmit a request to purchase the indicated
item to a financial entity. A financial entity may include, bank,
credit union, other funding agency, a transaction system, a payment
system, or other system that may facilitate transfer of funds. In
one example, the transaction module 320 may provide received
credentials for a PayPal.RTM. account in order to request funds
from the account.
[0066] In one embodiment, the transaction module 320 may be further
configured to request a specific retail outlet to prepare a package
that includes the selected item for pick-up. This would allow a
user to purchase an item then enter a physical store to simply pick
up the prepared package of the selected item.
[0067] FIG. 4 is an illustration depicting components of a system
400 suitable for providing a virtual item shopping environment in
accordance with embodiments of the present disclosure. In one
embodiment, the system 400 may include a display 410 and a camera
420.
[0068] In one embodiment, the camera 420 may capture live video of
a person 450 within a field of view 425 of the camera 420 and near
the display 410. The dimension module 210 may determine one or more
dimensions of the person 450 by coordinating points in the video
with a pre-determined point of reference 460. Because the dimension
module 210 may have data representing a distance from the camera
420, the dimension module 210 may determine a size of the person as
one skilled in the art may appreciate. The dimension module 210 may
determine height, width, weight, or body curvature as previously
described.
[0069] In one example, the camera 420 may be located near a top
edge of the display 410, however this is not necessarily the case
as the camera 420 may be located anywhere where it may capture live
video of the person 450.
[0070] FIG. 5 is an illustration depicting components of a system
500 suitable for providing a virtual item shopping environment in
accordance with embodiments of the present disclosure. In one
embodiment, the system 500 may include a first display 510, a
second display 512, a first camera 520, a second camera 522, and a
computing device 110 including a dimension module 210, a selection
module 220, and a display module 240. The displays 510,512, the
cameras 520,522, the dimension module 210, the selection module
220, and the display module 240 may or may not be substantially
similar to those depicted in previous figures.
[0071] In one embodiment, the dimension module 210 may determine
one or more dimensions of a person 550 near one of the first
display 510 or the second display 520. The dimension module 210 may
determine a dimension by comparing video signals from the first
camera 510 and the second camera 512. As one skilled in the art may
appreciate, the dimension module 210 may determine a size or
distance of the person using video data from both cameras 510,
512.
[0072] In one embodiment, the display module 240 may present a
first image 540 of the person 550 on the first display 510. The
first image 530 of the person 550 may include a live real-time
video of the person 550 captured by the first camera 520 with a
three dimensional image of a selected item overlaid on the live
video. The display module 240 may concurrently present a second
image 532 of the person 550 on the second display 512. The second
image 532 of the person 550 may include a live video of the person
550 captured by the second camera 522 with a three dimensional
image of a selected item overlaid on the live video. In certain
embodiments, the first display and the second display may
concurrently present live real-time videos of the person wearing
the selected item and at different views of the person 550. As
depicted in FIG. 5, the person may be wearing a different item than
the virtual item 540 depicted in display 510 and/or 512.
[0073] In another embodiment, the display module 240 may be
configured to record the live-real time video of the person wearing
the virtual item. The display module 240 may then offer an option
for the person to transmit the recorded video to a friend. Sharing
the live real-time video with another may help the person decide
whether or not to purchase the selected item. In an example
embodiment, the recorded video may be uploaded to a social
networking service to be shared with friends or acquaintances on
the social network.
[0074] FIG. 6 is an illustration depicting components of a device
600 suitable for providing a virtual item shopping environment in
accordance with embodiments of the present disclosure. In one
embodiment, the device 600 may include a display 610, a first
camera 620, and a second camera 622. The device 600 may also
include a computing device as described herein embodying one or
more modules described in this disclosure.
[0075] In one embodiment, the device 600 may monitor a person 650
walking past the display 610. The dimension module 210 may
determine one or more dimensions of the person 650. The selection
module 220 may automatically determine an item available for sale
and may select the item without user intervention. The display
module 240 may present live video of the person walking by the
display 610 with an overlaid view of the selected item.
[0076] Providing an unrequested view of an item may cause the
person 650 to become interested. Furthermore, the display module
240 may include a synthetic background image that may further
increase the attractiveness of the item. As previously described,
the display module 240 may provide a user interface in response to
the person 650 stopping at the display 610. Furthermore, the
transaction module 320 may provide purchase options for the
user.
[0077] As previously described, the display module 240 may present
a live real-time video of the person 630 wearing the selected item
640 with an overlaid image of the selected item. In this way, a
person may envision themselves wearing the selected item 640.
[0078] FIG. 7 is an illustration depicting components of a device
suitable for providing a virtual item shopping environment in
accordance with embodiments of the present disclosure. In one
embodiment, the device may include a display 710, a first camera
720, a second camera 722, and a computing device substantially
embodying one or more functions of modules described herein. The
display 710 and the cameras 720,722 may or may not be substantially
similar to those depicted in earlier figures.
[0079] As previously described, the dimension module 210 may
determine one or more dimensions of a person 750 near the display
710. In response to the person 750 selecting an item to virtually
try-on, the display module 240 may depict a live real-time video of
the person 750 wearing the selected item 740. Furthermore, the
display module 240 may depict an artificial background that may
enhance the person's perception of the selected item.
[0080] In another embodiment, the display module 240 may present a
selection for the user to select a pre-configured background image.
In certain examples, the background image may include a landscape
scene, a ballroom, a dance hall, a party, other social gathering,
or the like. In one embodiment, the display module 240 may present
a live background that may include motion. For example, the display
module 240 may present an ocean scene with moving waves and
corresponding audio of the waves to enhance the experience of the
user 750.
[0081] FIG. 8 illustrates one examples of a user interface in
accordance with certain embodiments of the present disclosure. In
one embodiment, the display module 240 may present a set of item
types for selection by the person. The display module 240 may
present information 810 to the person to indicate an expected
response. In response to the person selecting one of the item
types, the display module 240 may present one or more items of the
selected type as depicted in subsequent figures.
[0082] FIG. 9 illustrates one examples of a user interface in
accordance with certain embodiments of the present disclosure. In
one embodiment, the display module 240 may present one or more
items available for purchase. In one example, in response to the
user selecting a shirt, the selection module 220 may select one or
more shirts from a remote database 115 that may fit the person
making the selection. The display module 240 may display the
selected shirts on the display. In one embodiment, the displayed
shirts may include different patterns, colors, or other. For
example, shirt 920 may have a different pattern than other selected
shirts. Furthermore, the display module 240 may display a user
control 940 that may indicate to the user that additional shirt may
be viewed by scrolling downwards. In other examples, the control
940 may include a down arrow, or other indication.
[0083] In one example, the display module 240 may communicate with
a touch sensor to receive input from the user via a touch. In
another example, the display module 240 may communicate with a
gesture sensor to receive input from the user via a gesture. In
another example, the display module 240 may communicate with a
mobile device of the user to receive selections from the user. An
application executing on a user's mobile device may transmit
selections or input from the user to the display module 240. One
skilled in the art may appreciate other ways in which input from a
user may be transmitted to the display module 240 and this
disclosure is meant to include all such ways.
[0084] FIG. 10 illustrates one examples of a user interface in
accordance with certain embodiments of the present disclosure. In
one embodiment, the display module 240 may present a live real-time
video of a person wearing a virtual item as previously described.
In addition to the live real-time video of the person with an
overlaid view of the item, the display module 240 may present
additional information.
[0085] In one example, the display module 240 may display a price
1010 for the selected item. In another example, the display module
240 may display availability for the selected item. For example,
the display module 240 may indicate that the selected item is
available in the store, available online, not currently available,
out of stock, or other, or the like as one skilled in the art may
appreciate.
[0086] In another example, the display module 240 may display a
user option for the user to purchase the selected item. In one
example, in response to the user viewing the selected item for a
threshold amount of time, the display module 240 may present a
button for the user to press to purchase the selected item. In
response, the transaction module 320 may request, if needed,
financial information from the person in order to request funds
from a financial entity for the person. In another example, the
transaction module 320 may receive financial information from a
mobile device associated with the user as one skilled in the art
may appreciate. In another example, the transaction module 320 may
request the mobile device to perform a financial transaction.
[0087] FIG. 11 is a flowchart illustrating operations of a machine
performing a method 1100 according to certain embodiments of the
present disclosure. Operations in the method 1100 may be performed
by the device 110, using modules described above with respect to
FIGS. 2 and 3. As shown in FIG. 11, the method 1100 includes
operations 1110, 1120, 1130, 1140, 1150, and 1160.
[0088] In one embodiment, the method 1100 may begin and at
operation 1100 a dimension module 210 may receive, from a camera
112, live video of a person near a display 114. The determination
module 210 may then determine at operation 1120 one or more
dimensions of the person based on the live video. The selection
module 220 may then retrieve at operation 1130 one or more items
from a database based on the determined dimensions. The display
module 240 may then present at operation 1140 the one or more items
on the display 114. The selection module 220 may then receive at
operation 1150 a selection from the person via a user interface,
the selection indicating one of the presented items. The display
module 240 may then display at operation 1160 a live real-time
video of the person wearing the selected item. In another example
embodiment, the live real-time video may include video of the
person and an overlaid image of the selected item.
[0089] FIG. 12 is a flowchart illustrating operations of a machine
performing a method 1200 according to certain embodiments of the
present disclosure. Operations in the method 1200 may be performed
by the device 110, using modules described above with respect to
FIGS. 2 and 3. As shown in FIG. 12, the method 1200 includes
operations 1210, 1220, 1230, 1240, 1250, 1260, 1270, 1280, and
1290.
[0090] In one embodiment, the method 1200 may begin and the
dimension module 210 may receive at operation 1210 live video of a
person from a camera 112. The dimension module 210 may determine at
operation 1220 one or more dimensions of the person based, at least
in part, on the captured video. The selection module 220 may
retrieve at operation 1230 one or more items from a remote database
115. The display module 240 may present at operation 1240 the one
or more items via a display. The selection module 220 may receive
at operation 1250 a selection of one of the items. The dimension
module 210 may adjust at operation 1260 a size of the selected item
based, at least in part, on the brand of the selected item and
information regarding the size of the selected items. The display
module 240 may display live real-time video of the person wearing
the selected item. In one embodiment, the display module 240 may
display at operation 1270 live real-time video of the person and
overlay a model of the selected item. The transaction module 320
may receive at operation 1280 an indication from the person to
purchase the selected item. The transaction module 320 may transmit
at operation 1290 a request to purchase the item to a financial
institution.
[0091] In another embodiment of the method 1200, the dimension
module 210 may determine one or more dimensions using data from the
camera and a pre-determined point of reference. In another
embodiment of the method 1200, the dimension module 210 may
determine one or more dimensions of the person using data from two
or more cameras. Dimensions of the person may include height,
weight, width, body curvature, or the like. In another embodiment
of the method 1200, the live real-time video may include a full
body representation of the person. In a further embodiment, the
live real-time video may further include a simulated background as
described herein.
[0092] In another embodiment, the selection module 220 may select
one or more items are selected from an inventory of items at a
physical location within proximity of the display. Therefore, in
certain embodiments, items depicted may be limited to items
available at an associated retail outlet, or other, or the
like.
[0093] FIG. 13 is a block diagram illustrating components of a
machine 1300, according to some example embodiments, able to read
instructions 1324 from a machine-readable medium 1322 (e.g., a
non-transitory machine-readable medium, a machine-readable storage
medium, a computer-readable storage medium, or any suitable
combination thereof) and perform any one or more of the
methodologies discussed herein, in whole or in part. Specifically,
FIG. 13 shows the machine 1300 in the example form of a computer
system (e.g., a computer) within which the instructions 1324 (e.g.,
software, a program, an application, an applet, an app, or other
executable code) for causing the machine 1300 to perform any one or
more of the methodologies discussed herein may be executed, in
whole or in part.
[0094] In alternative embodiments, the machine 1300 may operate as
a standalone device or may be connected (e.g., networked) to other
machines. In a networked deployment, the machine 1300 may operate
in the capacity of a server machine or a client machine in a
server-client network environment, or as a peer machine in a
distributed (e.g., peer-to-peer) network environment. The machine
1300 may be a server computer, a client computer, a personal
computer (PC), a tablet computer, a laptop computer, a netbook, a
cellular telephone, a smartphone, a set-top box (STB), a personal
digital assistant (PDA), a web appliance, a network router, a
network switch, a network bridge, or any machine capable of
executing the instructions 1124, sequentially or otherwise, that
specify actions to be taken by that machine. Further, while only a
single machine is illustrated, the term "machine" shall also be
taken to include any collection of machines that individually or
jointly execute the instructions 1324 to perform all or part of any
one or more of the methodologies discussed herein.
[0095] The machine 1300 includes a processor 1302 (e.g., a central
processing unit (CPU), a graphics processing unit (GPU), a digital
signal processor (DSP), an application specific integrated circuit
(ASIC), a radio-frequency integrated circuit (RFIC), or any
suitable combination thereof), a main memory 1304, and a static
memory 1306, which are configured to communicate with each other
via a bus 1308. The processor 1302 may contain microcircuits that
are configurable, temporarily or permanently, by some or all of the
instructions 1324 such that the processor 1302 is configurable to
perform any one or more of the methodologies described herein, in
whole or in part. For example, a set of one or more microcircuits
of the processor 1302 may be configurable to execute one or more
modules (e.g., software modules) described herein.
[0096] The machine 1300 may further include a graphics display 1310
(e.g., a plasma display panel (PDP), a light emitting diode (LED)
display, a liquid crystal display (LCD), a projector, a cathode ray
tube (CRT), or any other display capable of displaying graphics or
video). The machine 1300 may also include an alphanumeric input
device 1312 (e.g., a keyboard or keypad), a cursor control device
1314 (e.g., a mouse, a touchpad, a trackball, a joystick, a motion
sensor, an eye tracking device, or other pointing instrument), a
storage unit 1316, an audio generation device 1318 (e.g., a sound
card, an amplifier, a speaker, a headphone jack, or any suitable
combination thereof), and a network interface device 1320.
[0097] The storage unit 1316 includes the machine-readable medium
1322 (e.g., a tangible and non-transitory machine-readable storage
medium) on which are stored the instructions 1324 embodying any one
or more of the methodologies or functions described herein. The
instructions 1324 may also reside, completely or at least
partially, within the main memory 1304, within the processor 1302
(e.g., within the processor's cache memory), or both, before or
during execution thereof by the machine 1300. Accordingly, the main
memory 1304 and the processor 1302 may be considered
machine-readable media (e.g., tangible and non-transitory
machine-readable media). The instructions 1324 may be transmitted
or received over the network 190 via the network interface device
1320. For example, the network interface device 1320 may
communicate the instructions 1324 using any one or more transfer
protocols (e.g., hypertext transfer protocol (HTTP)).
[0098] In some example embodiments, the machine 1300 may be a
portable computing device, such as a smart phone or tablet
computer, and have one or more additional input components 1330
(e.g., sensors or gauges). Examples of such input components 1330
include an image input component (e.g., one or more cameras), an
audio input component (e.g., a microphone), a direction input
component (e.g., a compass), a location input component (e.g., a
global positioning system (GPS) receiver), an orientation component
(e.g., a gyroscope), a motion detection component (e.g., one or
more accelerometers), an altitude detection component (e.g., an
altimeter), and a gas detection component (e.g., a gas sensor).
Inputs harvested by any one or more of these input components may
be accessible and available for use by any of the modules described
herein.
[0099] FIG. 14 is a block diagram illustrating a mobile device
1400, according to an example embodiment. The mobile device 1400
may include a processor 1402. The processor 1402 may be any of a
variety of different types of commercially available processors
suitable for mobile devices (for example, an XScale architecture
microprocessor, a microprocessor without interlocked pipeline
stages (MIPS) architecture processor, or another type of processor
1402). A memory 1404, such as a random access memory (RAM), a flash
memory, or other type of memory, is typically accessible to the
processor 1402. The memory 1404 may be adapted to store an
operating system (OS) 1406, as well as applications 1408, such as a
mobile location-enabled application that may provide location-based
services (LBSs) to a user. The processor 1402 may be coupled,
either directly or via appropriate intermediary hardware, to a
display 1410 and to one or more input/output (I/O) devices 1412,
such as a keypad, a touch panel sensor, a microphone, and the like.
Similarly, in some embodiments, the processor 1402 may be coupled
to a transceiver 1414 that interfaces with an antenna 1416. The
transceiver 1414 may be configured to both transmit and receive
cellular network signals, wireless data signals, or other types of
signals via the antenna 1416, depending on the nature of the mobile
device 1400. Further, in some configurations, a GPS receiver 1418
may also make use of the antenna 1416 to receive GPS signals.
[0100] In one embodiment, the system 105 may be embodied in a
mobile device as described herein. In one example, a mobile device
may include a camera 112, a display 114, the dimension module 210,
the selection module 220, and the display module 240. In one
example, a consumer may hold the mobile device in a position such
that the camera 112 may capture live video of the consumer. In
another embodiment, the mobile device may include two cameras in
communication with the dimension module 210 in order to determine
one or more dimensions of the user. In another embodiment, the
mobile device may include a laser or other detection device for
determining a distance between the user and the camera. Based on a
distance between the user and the camera, the dimension module 220
may determine one or more dimensions.
[0101] As used herein, the term "memory" refers to a
machine-readable medium able to store data temporarily or
permanently and may be taken to include, but not be limited to,
random-access memory (RAM), read-only memory (ROM), buffer memory,
flash memory, and cache memory. While the machine-readable medium
1322 is shown in an example embodiment to be a single medium, the
term "machine-readable medium" should be taken to include a single
medium or multiple media (e.g., a centralized or distributed
database, or associated caches and servers) able to store
instructions. The term "machine-readable medium" shall also be
taken to include any medium, or combination of multiple media, that
is capable of storing the instructions 1324 for execution by the
machine 1300, such that the instructions 1324, when executed by one
or more processors of the machine 1300 (e.g., processor 1302),
cause the machine 1300 to perform any one or more of the
methodologies described herein, in whole or in part. Accordingly, a
"machine-readable medium" refers to a single storage apparatus or
device, as well as cloud-based storage systems or storage networks
that include multiple storage apparatus or devices. The term
"machine-readable medium" shall accordingly be taken to include,
but not be limited to, one or more tangible (e.g., non-transitory)
data repositories in the form of a solid-state memory, an optical
medium, a magnetic medium, or any suitable combination thereof.
[0102] Throughout this specification, plural instances may
implement components, operations, or structures described as a
single instance. Although individual operations of one or more
methods are illustrated and described as separate operations, one
or more of the individual operations may be performed concurrently,
and nothing requires that the operations be performed in the order
illustrated. Structures and functionality presented as separate
components in example configurations may be implemented as a
combined structure or component. Similarly, structures and
functionality presented as a single component may be implemented as
separate components. These and other variations, modifications,
additions, and improvements fall within the scope of the subject
matter herein.
[0103] Certain embodiments are described herein as including logic
or a number of components, modules, or mechanisms. Modules may
constitute software modules (e.g., code stored or otherwise
embodied on a machine-readable medium or in a transmission medium),
hardware modules, or any suitable combination thereof. A "hardware
module" is a tangible (e.g., non-transitory) unit capable of
performing certain operations and may be configured or arranged in
a certain physical manner In various example embodiments, one or
more computer systems (e.g., a standalone computer system, a client
computer system, or a server computer system) or one or more
hardware modules of a computer system (e.g., a processor or a group
of processors) may be configured by software (e.g., an application
or application portion) as a hardware module that operates to
perform certain operations as described herein.
[0104] In some embodiments, a hardware module may be implemented
mechanically, electronically, or any suitable combination thereof.
For example, a hardware module may include dedicated circuitry or
logic that is permanently configured to perform certain operations.
For example, a hardware module may be a special-purpose processor,
such as a field programmable gate array (FPGA) or an ASIC. A
hardware module may also include programmable logic or circuitry
that is temporarily configured by software to perform certain
operations. For example, a hardware module may include software
encompassed within a general-purpose processor or other
programmable processor. It will be appreciated that the decision to
implement a hardware module mechanically, in dedicated and
permanently configured circuitry, or in temporarily configured
circuitry (e.g., configured by software) may be driven by cost and
time considerations.
[0105] Accordingly, the phrase "hardware module" should be
understood to encompass a tangible entity, and such a tangible
entity may be physically constructed, permanently configured (e.g.,
hardwired), or temporarily configured (e.g., programmed) to operate
in a certain manner or to perform certain operations described
herein. As used herein, "hardware-implemented module" refers to a
hardware module. Considering embodiments in which hardware modules
are temporarily configured (e.g., programmed), each of the hardware
modules need not be configured or instantiated at any one instance
in time. For example, where a hardware module comprises a
general-purpose processor configured by software to become a
special-purpose processor, the general-purpose processor may be
configured as respectively different special-purpose processors
(e.g., comprising different hardware modules) at different times.
Software (e.g., a software module) may accordingly configure one or
more processors, for example, to constitute a particular hardware
module at one instance of time and to constitute a different
hardware module at a different instance of time.
[0106] Hardware modules can provide information to, and receive
information from, other hardware modules. Accordingly, the
described hardware modules may be regarded as being communicatively
coupled. Where multiple hardware modules exist contemporaneously,
communications may be achieved through signal transmission (e.g.,
over appropriate circuits and buses) between or among two or more
of the hardware modules. In embodiments in which multiple hardware
modules are configured or instantiated at different times,
communications between such hardware modules may be achieved, for
example, through the storage and retrieval of information in memory
structures to which the multiple hardware modules have access. For
example, one hardware module may perform an operation and store the
output of that operation in a memory device to which it is
communicatively coupled. A further hardware module may then, at a
later time, access the memory device to retrieve and process the
stored output. Hardware modules may also initiate communications
with input or output devices, and can operate on a resource (e.g.,
a collection of information).
[0107] The various operations of example methods described herein
may be performed, at least partially, by one or more processors
that are temporarily configured (e.g., by software) or permanently
configured to perform the relevant operations. Whether temporarily
or permanently configured, such processors may constitute
processor-implemented modules that operate to perform one or more
operations or functions described herein. As used herein,
"processor-implemented module" refers to a hardware module
implemented using one or more processors.
[0108] Similarly, the methods described herein may be at least
partially processor-implemented, a processor being an example of
hardware. For example, at least some of the operations of a method
may be performed by one or more processors or processor-implemented
modules. As used herein, "processor-implemented module" refers to a
hardware module in which the hardware includes one or more
processors. Moreover, the one or more processors may also operate
to support performance of the relevant operations in a "cloud
computing" environment or as a "software as a service" (SaaS). For
example, at least some of the operations may be performed by a
group of computers (as examples of machines including processors),
with these operations being accessible via a network (e.g., the
Internet) and via one or more appropriate interfaces (e.g., an
application program interface (API)).
[0109] The performance of certain operations may be distributed
among the one or more processors, not only residing within a single
machine, but deployed across a number of machines. In some example
embodiments, the one or more processors or processor-implemented
modules may be located in a single geographic location (e.g.,
within a home environment, an office environment, or a server
farm). In other example embodiments, the one or more processors or
processor-implemented modules may be distributed across a number of
geographic locations.
[0110] Some portions of the subject matter discussed herein may be
presented in terms of algorithms or symbolic representations of
operations on data stored as bits or binary digital signals within
a machine memory (e.g., a computer memory). Such algorithms or
symbolic representations are examples of techniques used by those
of ordinary skill in the data processing arts to convey the
substance of their work to others skilled in the art. As used
herein, an "algorithm" is a self-consistent sequence of operations
or similar processing leading to a desired result. In this context,
algorithms and operations involve physical manipulation of physical
quantities. Typically, but not necessarily, such quantities may
take the form of electrical, magnetic, or optical signals capable
of being stored, accessed, transferred, combined, compared, or
otherwise manipulated by a machine. It is convenient at times,
principally for reasons of common usage, to refer to such signals
using words such as "data," "content," "bits," "values,"
"elements," "symbols," "characters," "terms," "numbers,"
"numerals," or the like. These words, however, are merely
convenient labels and are to be associated with appropriate
physical quantities.
[0111] Unless specifically stated otherwise, discussions herein
using words such as processing," "computing," "calculating,"
"determining," "presenting," "displaying," or the like may refer to
actions or processes of a machine (e.g., a computer) that
manipulates or transforms data represented as physical (e.g.,
electronic, magnetic, or optical) quantities within one or more
memories (e.g., volatile memory, non-volatile memory, or any
suitable combination thereof), registers, or other machine
components that receive, store, transmit, or display information.
Furthermore, unless specifically stated otherwise, the terms "a" or
"an" are herein used, as is common in patent documents, to include
one or more than one instance. Finally, as used herein, the
conjunction "or" refers to a non exclusive "or," unless
specifically stated otherwise.
* * * * *