Continued enhancements in mobile electronics and ever-increasing network connectivity and geospatial awareness have contributed to great advances in the usefulness of smart phones, tablets, and other electronic devices. In some cases, for example, images captured and displayed by mobile devices are augmented to overlay virtual representations into what otherwise appears to be an image of the physical world in which a mobile device operates. Such functionality is generally referred to as “Augmented Reality” (AR).
While AR has existed for many years, particularly in military applications such as Heads-Up-Display (HUD) devices, it has only recently been introduced to large numbers of consumer devices. To date, implementations of AR in such consumer electronics have generally been limited to novelties such as simple AR games—e.g., the ability to shoot a virtual basketball into a virtual basketball hoop that appear to be on a wall that a camera of a smart phone is pointed at.
An understanding of embodiments described herein and many of the attendant advantages thereof may be readily obtained by reference to the following detailed description when considered with the accompanying drawings, wherein:
Embodiments described herein are descriptive of systems, apparatus, methods, interfaces, and articles of manufacture for AR applications relating to various objects and items such as retail products. Such embodiments may, for example, generally be referred to as Augmented Retail Reality (ARR) applications. Electronic devices implementing ARR may, in some embodiments, provide personalized, geo-targeted, and/or geo-gated advertisements and/or promotions. According to some embodiments, ARR functionality may be utilized to enhance product packaging by supplying virtual supplemental content or may be utilized to manage product inventory such as on store shelves or inside a consumer's refrigerator or pantry. In some embodiments, ARR applications may allow a consumer to seamlessly manage grocery (and/or other product lists) and/or to locate desired products on store shelves. These and many other new and useful applications of ARR and other electronic technologies are described in detail herein.
Referring initially to
Fewer or more components 102, 104, 106, 108a-c, 110, 140 and/or various configurations of the depicted components 102, 104, 106, 108a-c, 110, 140 may be included in the system 100 without deviating from the scope of embodiments described herein. In some embodiments, the components 102, 104, 106, 108a-c, 110, 140 may be similar in configuration and/or functionality to similarly named and/or numbered components as described herein. In some embodiments, the system 100 (and/or portion thereof) may comprise an ARR program, system, and/or platform programmed and/or otherwise configured to execute, conduct, and/or facilitate the methods 400, 900, 1500 of
The user device 102, in some embodiments, may comprise any type or configuration of computing, mobile electronic, network, user, and/or communication device that is or become known or practicable. The user device 102 may, for example, comprise one or more Personal Computer (PC) devices, tablet computers such as an iPad® manufactured by Apple®, Inc. of Cupertino, Calif., and/or cellular and/or wireless telephones such as an iPhone® (also manufactured by Apple®, Inc.) or an Optimus™ S smart phone manufactured by LG® Electronics, Inc. of San Diego, Calif., and running the Android® operating system from Google®, Inc. of Mountain View, Calif. According to some embodiments, the user device 102 may comprise a wearable and/or implanted device configured for AR applications such as Google® Glass™ manufactured by Google®, Inc. of Mountain View, Calif. and/or newly-introduced “smart” contact lenses.
In some embodiments, the user device 102 may comprise a device owned and/or operated by one or more users such as consumers, customers, account holders, etc. According to some embodiments, the user device 102 may communicate with the controller device 110 via the network 104, such as to facilitate implementation of ARR applications as described herein. According to some embodiments, the user device 102 may comprise a camera and/or image capture device and/or sensor (not explicitly shown in
In some embodiments, the user device 102 may transmit image data descriptive of the streetscape (and/or other location) to the controller device 110 (e.g., via the network 104). The controller device 110 may process and/or analyze the image data to determine desired enhancements to the image data. Based on the contents of the image data (and/or the location of the user device 102), for example, the controller device 110 may query the database 140 to determine any applicable promotions such as retail product and/or service discounts, awards, incentives, and/or other benefits. According to some embodiments, the controller device 110 may transmit ARR data (e.g., image enhancement data associated with the identified promotion) to the user device 102. The user device 102 may utilize the image enhancement data to provide an ARR application to a user of the user device 102, as described herein.
The network 104 may, according to some embodiments, comprise a Local Area Network (LAN; wireless and/or wired), cellular telephone, Bluetooth®, Near Field Communication (NFC), and/or Radio Frequency (RF) network with communication links between the controller device 110, the user device 102, the merchant device 106, the sensors 108a-c, and/or the database 140. In some embodiments, the network 104 may comprise direct communications links between any or all of the components 102, 106, 108a-c, 110, 140 of the system 100. The user device 102 may, for example, be directly interfaced or connected to one or more of the merchant device 106, the sensor devices 108a-c, the controller device 110, and/or the database 140, via one or more wires, cables, wireless links, and/or other network components, such network components (e.g., communication links) comprising portions of the network 104. In some embodiments, the network 104 may comprise one or many other links or network components other than those depicted in
While the network 104 is depicted in
The merchant device 106, in some embodiments, may comprise any type or configuration a computerized processing device such as a PC, laptop computer, computer server, database system, and/or other electronic device, devices, or any combination thereof. In some embodiments, the merchant device 106 may be owned and/or operated by a third-party (i.e., an entity different than any entity owning and/or operating either the user device 102 or the controller device 110. The merchant device 106 may, for example, be owned and/or operated by a merchant (owner/operator/lessee) of the depicted “STORE A” in
In some embodiments, the controller device 110 may comprise an electronic and/or computerized controller device such as a computer server communicatively coupled to interface with the user device 102, the merchant device 106, the sensors, 108a-c, and/or the database 140 (directly and/or indirectly). The controller device 110 may, for example, comprise one or more PowerEdge™ M910 blade servers manufactured by Dell®, Inc. of Round Rock, Tex. which may include one or more Eight-Core Intel® Xeon® 7500 Series electronic processing devices. According to some embodiments, the controller device 110 may be located remote from one or more of the user device 102, the third-party device 106, the sensors 108a-c, and/or the database 140. The controller device 110 may also or alternatively comprise a plurality of electronic processing devices located at one or more various sites and/or locations.
According to some embodiments, the sensor devices 108a-c may comprise any number, configuration, and/or types of devices operable, coupled, and/or configured to sense and/or communicate with the user device 102 (and/or with each other). In some embodiments, one or more of the sensor devices 108a-c may comprise a Bluetooth® Low Energy (BLE) device such as an iBeacon® device manufactured by Apple®, Inc. of Cupertino, Calif. The sensor devices 108a-c may, for example, sense the presence and/or proximity of the user device 102 and/or may push notifications and/or data to the user device 102. A first sensor device 108a may, in some embodiments, detect the user device 102 in proximity to the “STORE A” and/or may communicate such location information of the user device 102 to the merchant device 106. In some embodiments, the first sensor device 108a may detect and/or measure an actual distance between the user device 102 and the first sensor device 108a (e.g., a first distance) and/or may provide such measurement data to the merchant device 106 and/or the controller device 110. The merchant device 106 may utilize the detection of the user device 102 (and/or the distance measurement data) to push data to the user device 102 via the first sensor 108a (e.g., the user device 102 may receive data from the first sensor device 108a). The merchant device 106 may, for example, instruct the first sensor device 108a to transmit an offer and/or promotion to the user device 102. According to some embodiments, the merchant device 106 may send the location information of the user device 102 to the controller device 110 and/or may query the controller device 110 for an appropriate promotion and/or other content to push to the “STORE A”-proximate user device 102.
In some embodiments, the promotional information transmitted to the user device 102 may comprise ARR data. The ARR data may, for example, comprise instructions and/or data that cause an ARR application operating on and/or via the user device 102 to operate in a particular manner. The ARR data may, for example, comprise data and/or instructions that cause the user device 102 to superimpose and/or otherwise integrate graphics and/or other virtual media into an image of the streetscape, as described herein. In some embodiments, data from the sensors 108a-c and/or the user device 102 may be utilized to determine a location of the user device 102 with respect to a business and/or location that is not equipped with a sensor device 108a-c—such as the depicted “STORE D”. In such a manner, for example, business that have not implemented sensor device 108a-c may still benefit from location-based push promotions or competitor businesses that have implemented and/or installed sensor devices 108a-c (such as the depicted “STORE C” and/or “STORE B”) may utilize the system 100 to entice customers (e.g., users of the user device 102) away from “STORE D”—such as by sending promotions (e.g., discounts/offers) to the user device 102 as the user device approaches (or appears headed for—e.g., computed trajectory) the competitor's “STORE D”. In such a manner, discount offers and/or marketing budget may be reserved for consumers likely to patron a competitor as opposed to being generally marketed and/or spent (e.g., which is, to some extent, wasted on consumers for which it was not required, such as customers that were not en-route to patronize the competitor's store).
According to some embodiments, data from the sensor device 108a-c may be aggregated, acquired, analyzed, and/or otherwise processed by the controller device 110. The controller device 110 may utilize location and/or distance measurement data from the sensor devices 108a-c and/or the user device 102, for example, to determine a precise location of the user device 102. The location data may be utilized, for example, to triangulate the location of the user device 102, such as by comparing sensing and/or distance measurement data from a plurality of the sensor devices 108a-c and/or the user device 102. In some embodiments, the location and/or distance measurement data may be compared to and/or incorporate with image data received from the user device 102 to determine a location and/or orientation of the user device 102. Similarly, data from the sensor devices 108a-c and/or the user device 102 (location data, accelerometer data, and/or image data) may be monitored for changes to determine a direction of travel, speed, and/or likely destination of the user device 102 (e.g., and accordingly of the user themselves). Any or all of such data may be utilized as described herein to define communications with the user device 102 and/or to define ARR data provided to the user device 102.
In some embodiments, the controller device 110 may store and/or execute specially programmed instructions to operate in accordance with embodiments described herein. The controller device 110 may, for example, execute one or more programs that facilitate the utilization and/or implementation of ARR applications via the user device 102. According to some embodiments, the controller device 110 may comprise a computerized processing device such as a PC, laptop computer, computer server, and/or other electronic device to manage and/or facilitate input, output, transactions and/or communications regarding the user device 102. The controller device 110 may be programmed and/or otherwise utilized, for example, to (i) determine user and/or user device 102 locations (e.g., by processing data from the user device 102 and/or one or more of the sensor devices 108a-c), (ii) identify, analyze, parse, enhance, and/or process images received from the user device 102, (iii) determine (e.g., by accessing the merchant device 106 and/or the database 140) promotions to be output to and/or via the user device 102, and/or (iv) transmit transaction signals to either or both of the user device 102 and the merchant device 106 to effectuate and/or facilitate a purchase transaction in accordance with an applicable promotion (e.g., in accordance with embodiments described herein).
Turning now to
In some embodiments, the interface 220 may be augmented with data supplemental to the real-time, real-world image data received by the camera and output via the display device 216. The interface 220 may comprise, for example, a highlighting 222 of one or more objects or features in the real-time image. As depicted, for example, the highlighting 222 alters the portion of the real-time image corresponding to a sign for a particular business in front and to the left of the user/user device 202. In such a manner, for example, the user's attention may be drawn to the business—e.g., a “virtual neon sign”. According to some embodiments, the highlighting 222 may be implemented based on data related to the business. The business may pay a fee to have the highlighting 222 applied to the interface 220, for example, and/or the highlighting 222 may be applied to businesses which meet or exceed certain ratings, review levels, and/or other thresholds. In some embodiments, the highlighting 222 may be applied based on user preferences, characteristics, and/or search criteria. The user may be an English-speaking tourist and the streetscape may be a location in a non-English speaking country, for example, and the highlighting 222 may be implemented and/or associated with the designated business establishment because it is known (e.g., stored in a database) that the business offers an English-language menu and/or that English is spoken in the establishment (and/or that English-speaking patrons frequent the establishment).
According to some embodiments, the interface 220 may comprise other and/or additional enhancements to the real-time and/or real-world image output by the display device 216. The interface 220 may comprise, for example, one or more image modifications 224a-b. A first image modification 224a may comprise, in some embodiments, an overlay and/or superimposed graphic (and/or other media) that enhances and/or replaces a particular portion of the image such as the square overhead signage on the left side of the street in the streetscape as depicted in
In some embodiments, the second image modification 224b may replace and/or overlay a portion of a sign and/or other image feature such as to provide image customization. As depicted, for example, the second image modification 224b may virtually alter the name of a business establishment to customize and/or personalize the name to the user of the user device 202—e.g., “Café Mooy” is changed to “Café Bob”, such as to customize the name for a user named Bob. Similar modifications may be superimposed on the image via the interface 220 to incorporate other user characteristics, likes, and/or preferences such as by inserting the name or logo of a user's favorite sports team and the like (not depicted in
In some embodiments, the interface 220 may comprise one or more image enhancements 226a-c. A first image enhancement 226a may, for example, comprise an informational bubble (or other superimposed, overlaid, and/or incorporated text, graphic, and/or other media) that notifies the user that a closed storefront will be opening at a particular time (and/or otherwise advising the user regarding store hours such as a message that a store will be closing in a few minutes). A second image enhancement 226b may, according to some embodiments, comprise an animation of a product. The second image enhancement 226b may, as depicted for example, comprise an animated version of a product peeking out of a store window or door, such as to draw the user's attention to the particular store and/or to inform he user that a particular type of product is available and/or for sale at the particular store. In some embodiments, the animation may include movement of the product (or other animated object) to or from a particular portion of the image. The animated product may appear and ‘run’ into a particular store, for example, suggesting that the user follow the animated product. Similarly, the animated product may appear at or near a competitor's store in the image and then move through the image to lead the user away from the competitor's establishment.
According to some embodiments, a third image enhancement 226c may comprise a virtual walkway, line, bridge, track, and/or other directional feature such as an animated ‘yellow brick road’ leading the user to a particular location in the image. In some embodiments, any or all of the highlighting 222, the image modifications 224a-b, and/or the image enhancements 226a-c may be updated and/or modified (i) as the user and/or user device 202 move, (ii) as time passes (e.g., the interface 220 may change based on time windows and/or triggers), and/or (iii) based on information received from other devices (such as the merchant device 106, sensor devices 108a-c, and/or controller device 110 of
Fewer or more components 202, 216, 220, 222, 224a-b, 226a-c and/or various configurations of the depicted components 202, 216, 220, 222, 224a-b, 226a-c may be included in the system 200 without deviating from the scope of embodiments described herein. In some embodiments, the components 202, 216, 220, 222, 224a-b, 226a-c may be similar in configuration and/or functionality to similarly named and/or numbered components as described herein. In some embodiments, the user device 202 (and/or portion thereof) may comprise an ARR program and/or platform programmed and/or otherwise configured to execute, conduct, and/or facilitate the methods 400, 900, 1500 of
Referring to
The user table 344a of
The location table 344b of
The image table 344c of
The product table 344d of
The promotion table 344e of
In some embodiments, enhancements to images such as via ARR applications on mobile electronic devices may be defined by relationships established between two or more of the data tables 344a-e. As depicted in the example data storage structure 340, for example, a first relationship “A” may be established between the user table 344a and the location table 344b. In some embodiments (e.g., as depicted in
According to some embodiments, a second relationship “B” may be established between the user table 344a and the image table 344c. In some embodiments (e.g., as depicted in
In some embodiments, a third relationship “C” may be established between the location table 344b and the image table 344c. In some embodiments (e.g., as depicted in
In some embodiments, a fourth relationship “D” may be established between the image table 344c and the product table 344d (depicted as linking between
According to some embodiments, a fifth relationship “E” may be established between the image table 344c and the promotion table 344e (depicted as linking between
Utilizing the various data relationships (“A”, “B”, “C”, “D”, and/or “E”), it may accordingly be possible to readily cross-reference a location, user (and/or user device), image, and/or product with various supplemental content such as promotional data. As described herein, for example, an image provided by a user may be analyzed to determine, based on image artifacts therein that correspond to stored image data, one or more applicable promotions. Similarly, user location and/or image location may be utilized to determine and/or govern which promotions a user is offered.
In some embodiments, fewer or more data fields than are shown may be associated with the data tables 344a-e. Only a portion of one or more databases and/or other data stores is necessarily shown in any of
Turning now to
The process diagrams and flow diagrams described herein do not necessarily imply a fixed order to any depicted actions, steps, and/or procedures, and embodiments may generally be performed in any order that is practicable unless otherwise and specifically noted. Any of the processes and methods described herein may be performed and/or facilitated by hardware, software (including microcode), firmware, or any combination thereof. For example, a storage medium (e.g., a hard disk, Random Access Memory (RAM) device, cache memory device, Universal Serial Bus (USB) mass storage device, and/or Digital Video Disk (DVD); e.g., the data storage devices 140, 340, 540, 740, 1140, 1240, 1640, 1740a-e of
According to some embodiments, the method 400 may comprise determining (e.g., by a processing device) an image of an object, at 402. In the case that the processing device comprises a processing unit of a mobile computing device (tablet, smart phone, portable gaming device, etc.), for example, a camera (still and/or video) of the mobile computing device may transmit and/or the processing device may receive data descriptive of an object in proximity to the mobile computing device—e.g., a location image, an image of an individual, retail product, street sign, retail signage, and/or other object. In the case that the processing device comprises a central server and/or controller device, the controller device may receive the image data from the mobile (and/or remote computing device). According to some embodiments, the image data may define a still image (e.g., digital photo and/or image file), video image data, and/or real-time image transfer (e.g., video imagery captured by the camera and relayed to an output device for display, but not necessarily recorded for playback—e.g., a “viewfinder” mode of a digital camera).
In some embodiments, the method 400 may comprise identifying (e.g., by the processing device) a promotional target in the image, at 404. Portions of the image may be compared to stored image data, for example, to determine a match between a stored image pattern and a portion of the image data received at 402. The stored and/or matched image data may comprise, in some embodiments, information descriptive of pixel patterns, colors, and/or configurations that defined one or more image artifacts such as symbols, shapes, letters, words, facial features, clothing types, etc. In some embodiments, the stored image patterns may define and/or represent various retail and/or commercial features such as trade dress features (e.g., architectural features such as signage shapes, colors, patterns, and/or product shapes, sizes, feature, and/or configurations), trademarks, logos, etc. In such a manner, for example, the appearance of certain types of products, certain units of product (e.g., based on serial numbers, barcode data, etc.), certain stores, and/or other commercial features may be identified in received image data. As the image data, in some embodiments, is received in real-time from a mobile electronic device, it may be presumed that an object identified in the image data is in proximity to (if not in a field-of-view of) the mobile electronic device. In some embodiments, image data pattern matching may be utilized to establish, estimate, verify, and/or otherwise determine information descriptive of a location of the mobile device. Landmarks, street signs, license plate data, etc. may be utilized, for example, to determine device location. In some embodiments, image artifact data may be utilized in conjunction with GPS and/or sensor data to determine user device location (e.g., street address, outside location, and/or inside location—e.g., which aisle in a particular store) and/or orientation (e.g., field-of-view orientation).
According to some embodiments, the method 400 may comprise enhancing (e.g., by the processing device) the image with an indication of a promotion, at 406. Information (e.g., supplemental content such as promotional offer data) stored in association with the object identified at 404, for example, may be transmitted to the remote and/or mobile electronic device (e.g., user device). In some embodiments, the information may comprise instructions, commands, and/or code that causes the user device to perform certain functions. The information may, for example, cause an output device of the user device to display an interface that provides ARR functionality. The interface may, in some embodiments for example, cause portions of the image data captured by the user device to be altered, highlighted, and/or enhanced or modified. In the case that a promotional offer is determined to be related to a particular product in the field-of-view of the user device, for example, the interface may highlight the product and/or superimpose promotional offer data on or adjacent to portions of the image where the identified product appears. According to some embodiments, the ARR features provided to and/or effectuated by the user device may comprise Input/Output (I/O) features such as touch screen elements that enable a user to select and/or interact with the image enhancements (highlighting, etc.) implemented by the interface. In such a manner, for example, a user may utilize a smart phone or other mobile device to capture an image of a location (and/or product and/or object), view an overlay of promotional offers and/or other information superimposed on the image of the location (and/or product and/or object), and view, accept, commit to, sign-up for, and/or conduct a transaction in accordance with the indicated promotional offer.
Turning now to
Fewer or more components 502, 504, 506a-b, 508a-b, 510, 540, 560a-c, 570 and/or various configurations of the depicted components 502, 504, 506a-b, 508a-b, 510, 540, 560a-c, 570 may be included in the system 500 without deviating from the scope of embodiments described herein. In some embodiments, the components 502, 504, 506a-b, 508a-b, 510, 540, 560a-c, 570 may be similar in configuration and/or functionality to similarly named and/or numbered components as described herein. In some embodiments, the system 500 (and/or portion thereof) may be utilized by and/or in conjunction with an ARR application program and/or platform programmed and/or otherwise configured to execute, conduct, and/or facilitate the methods 400, 900, 1500 of
In some embodiments, the user device 502 may comprise a camera and/or other image input device (not explicitly shown in
In the case that an ARR image target comprising a brand logo is stored in the database 540, for example, the controller 510 may analyze image data received from the user device 502 to determine if the brand logo is present in the image. In such a manner, for example, the controller device 510 may determine an identity of one or more of the units of product 560a-c on the shelf 570 (e.g., of which the image data is descriptive). The identity of the unit of product 560a-c may be utilized (e.g., by the controller device 510) to identify supplemental content appropriate for ARR enhancement to an image of the unit of product 560a-c. In the case the a second unit of product 560b is determined to exist on the shelf 570 via image analysis, for example, the controller device 510 may query the database 540 and/or communicate with either or both of the merchant device 506a and the manufacturer device 506b to determine what supplemental content (if any) should be utilized for an ARR application involving the second unit of product. In some embodiments, as described herein, the supplemental content may be associated with and/or descriptive of one or more promotions involving the second unit of the product 560b (and/or any unit of such a brand of product or even any unit of product 560a-c associated with the user of the user device 502). According to some embodiments, the decision of whether to provide supplemental content and/or which supplemental content to provide may be at least partially governed by data received from one or more of the sensor devices 508a-b and/or from the user device 502. The sensor devices 508a-b and/or the user device 502 may provide locational context to the image data, for example, and may accordingly allow certain supplemental content (e.g., first supplemental content) to be selected and provided in certain locations (e.g., certain stores and/or certain geographic areas) while other supplemental content (e.g., second supplemental content) may be associated with and accordingly provided to users in other locations, despite being triggered by and/or based on the same image data and/or same ARR image target.
According to some embodiments, the supplemental data based on the image data and/or location data associated with the second unit of product 560b may be transmitted to the user device 502. The supplemental data may include and/or trigger instructions that when executed by the user device 502 (e.g., by an ARR software application thereof) cause an image of the second unit of product 560b to be enhanced—e.g., providing a virtual modification of the second unit of product 560b that, among other things, may allow the user to interact (virtually) with the second unit of product 560b. In some embodiments, such enhancements may be provided via an interface output via the user device 502.
Turning now to
In some embodiments, the interface 620 may be augmented with data supplemental to the real-time, real-world image data received by the camera and output via the display device 616. The interface 620 may comprise, for example, a highlighting 622 of one or more objects or features in the real-time image. As depicted, for example, the highlighting 622 alters the portion of the real-time image corresponding to a first unit of product 660a. In such a manner, for example, the user's attention may be drawn to the first unit of product 660a and/or the highlighting 622 may comprise an indication that the first unit of product 660a has been locked-onto as an ARR target. In some embodiments, the highlighting 622 may change color, appearance, and/or animation based on whether the first unit of product 660a has been identified as an ARR target (e.g., an image for which a stored representation in a database and associated supplemental content corresponds).
According to some embodiments, the interface 620 may comprise other and/or additional enhancements to the real-time and/or real-world image output by the display device 616. The interface 620 may comprise, for example, one or more image enhancements 626a-c. A first image enhancement 626a may, for example, comprise an addition of features resulting in a virtual personification of the first unit of product 660a. The first image enhancement 626a may comprise, in some embodiments, animated legs, eyes, arms, a mouth, and/or other features added to the virtual representation of the first unit of product 660a. In some embodiments, the first image enhancement 626a and/or components thereof may comprise interactive features. The display device 616 may comprise a touch screen device, for example, and may accept input corresponding to the displayed representations of the first image enhancement 626a features. In such a manner, for example, the user may tickle, pet, and/or otherwise interact with and/or animate the virtual representation of the first unit of product 660a.
In some embodiments, a second image enhancement 626b may comprise a product rating menu. The second image enhancement 626b may, as depicted for example, comprise one or more graphical elements such as rating stars via which the user may view, edit, and/or modify or otherwise interact with a rating for the first unit of product 660a. In such a manner, for example, the user may utilize the interface 620 to rate a product based on an image of the product captured by the user device 602. While the example first unit of product 660a comprises a can of soup, it should be understood that many other types of products and even services (or results thereof) may also or alternatively be enhanced in such a manner. The user may take a picture of a meal and utilize the ARR interface 620, for example, to rate the chef and/or restaurant that prepared the meal or rate the recipe via which the meal was prepared.
According to some embodiments, a third image enhancement 626c may comprise a virtual button, drop-down menu, and/or expandable virtual feature such as the depicted nutritional information button. In such a manner, for example, nutritional information for the first unit of product 660a may readily be accessed by simply utilizing the ARR interface 620 while standing in front of the first unit of product 660a. Such functionality may save time by not requiring the user to physically interact with the first unit of product 660a to acquire the nutritional information, may provide more nutritional and/or other information than can be (or is) printed on a label of the first unit of product 660a (e.g., that would not be readily accessible via the physical first unit of product 660a itself), and/or may be particularly advantageous for units of product 660a-c stored behind glass doors and/or that are otherwise not readily accessible to the user (e.g., below or on top of other units of product not explicitly shown and/or otherwise out of reach).
In some embodiments, any or all of the highlighting 622 and image enhancements 626a-c may be updated and/or modified (i) as the user and/or user device 602 move, (ii) as time passes (e.g., the interface 620 may change based on time windows and/or triggers), and/or (iii) based on information received from other devices (such as the merchant device 106, sensor devices 108a-c, and/or controller device 110 of
Fewer or more components 602, 616, 620, 622, 626a-c and/or various configurations of the depicted components 602, 616, 620, 622, 626a-c may be included in the system 600 without deviating from the scope of embodiments described herein. In some embodiments, the components 602, 616, 620, 622, 626a-c may be similar in configuration and/or functionality to similarly named and/or numbered components as described herein. In some embodiments, the user device 602 (and/or portion thereof) may comprise an ARR program and/or platform programmed and/or otherwise configured to execute, conduct, and/or facilitate the methods 400, 900, 1500 of
Referring now to
In some embodiments, the first user device 702a may capture data descriptive of the unit of product 760 at the location 770 (depicted by the dashed lines in
According to some embodiments, the controller device 710 may store user-defined and/or user-selected data received from the first user device 702a. The controller device 710 may, for example, store (e.g., in the database 740) a rating and/or recommendation for the product defined and/or chosen by the user for the unit of product 760. In some embodiments, the controller device 710 may identify and/or select other users and/or devices to which indications of the user-defined/selected rating/recommendation should be provided. The controller device 710 may, for example, query the database 740 and/or the third-party device 706 to determine one or more other devices and/or users associated with the first user device 702a (and/or the user thereof).
In some embodiments, the controller device 710 may propagate and/or transmit or otherwise provide the user-defined and/or user selected information (e.g., from the first user device 702a) to one or more other user devices 702b-d. The controller device 710 may, for example, determine and/or identify a second user device 702b and/or a third user device 702c that are present at (and/or otherwise associated with) the particular location 770 (e.g., the same location at which the first user device 702a has been utilized to identify and/or provide rating or other information descriptive of the unit of product 760). According to some embodiments, the controller device 710 may interface with the third-party device 706 to communicate with and/or provide the user-defined and/or user-selected information to the third user device 702c. The third-party device 706 may comprise, for example, a communication provider device such as a device of a telecommunications carrier or an Internet Service Provider (ISP), or may comprise a social network server and/or device. The third user device 702c may, for example, comprise a device owned and/or operated by a social network ‘friend’ and/or other predefined contact of the user of the first user device 702a. In some embodiments, a fourth user device 702d may also or alternatively be provided with the user-defined and/or user-selected information descriptive of and/or relating to the unit of product 760. The fourth user device 702d may comprise a device operated by a ‘friend’ of the user of the first user device 702a, for example, and/or may comprises a device associated with a demographic and/or other category for which information relating to the unit of product 760 is determined to be relevant (e.g., based on stored rules and/or logic implemented by the controller device 710). As depicted, the fourth user device 702d may not necessarily be located at the particular location 770.
According to some embodiments, the user-defined and/or selected data provided by the first user device 702a may comprise a recommended product price, discount, and/or other product-related parameter for the unit of product 760 (and/or for any unit of the same type of product). The first user device 702a may be utilized, for example, to identify the unit of product 760 and define or select a discount or other promotion desired by a user of the first user device 702a. The first user device 702a may, in other words, be utilized to initiate a user-driven discount and/or promotional campaign. In some embodiments, the user-initiated discount and/or promotion may be propagated to the other user devices 702b-d (and/or a selected subset thereof) for voting and/or input. The other user devices 702b-d may, for example, provide indications of votes and/or commitments to purchase or participate in the user-initiated promotion to the controller device 710 (and/or to the first user device 702a, such as in the case that the first user device 702a facilitates and/or manages user-initiated promotion communications). According to some embodiments, if the user-initiated promotion receives enough votes and/or commitments to participation, the user-initiated promotion may be activated with respect to the unit of product 760 (and/or other units of the same product type, not shown). In such a manner, for example, a customer in a store (e.g., the particular location 770) may scan or take a picture of a product (e.g., the unit of product 760), suggest a price, discount, and/or other promotion, and send or broadcast the promotion to a user group (e.g., users in the same store, in the same town, having an interest and/or characteristic in common). Responses and/or participation of the user community may cause the promotion to become active, e.g., possibly even before the user of the first user device 702a reaches a checkout counter with the unit of product 760. In such embodiments, the user-initiated promotion may be utilized to increase sales of plentiful and/or desirable inventory based on real-time demand. In some embodiments, the user-initiated promotion may instead function for products with low inventory. In the case that the unit of product 760 is the last unit available at the particular location 770, for example, the user-initiated promotion may comprise an auction where either the store or the user of the first user device 702a have possession of the last available unit of product 760 and are willing to sell it to a high bidder. Such a low-inventory auction embodiment may be particularly advantageous in the case that the other user devices 702b-c at the particular location 770 are identified (e.g., utilizing image recognition and/or various wireless location techniques as described herein), allowing the unit of the product 760 to be readily transferred to the highest bidder at the particular location 770.
Fewer or more components 702a-d, 704, 706, 710, 740, 760, 770 and/or various configurations of the depicted components 702a-d, 704, 706, 710, 740, 760, 770 may be included in the system 700 without deviating from the scope of embodiments described herein. In some embodiments, the components 702a-d, 704, 706, 710, 740, 760, 770 may be similar in configuration and/or functionality to similarly named and/or numbered components as described herein. In some embodiments, the system 700 (and/or portion thereof) may be utilized by and/or in conjunction with an ARR application program and/or platform programmed and/or otherwise configured to execute, conduct, and/or facilitate the methods 400, 900, 1500 of
Turning now to
In some embodiments, the interface 820 may comprise various highlighting 822, image modification 824, and/or image enhancements 826a-i. As depicted for non-limiting exemplary purposes in
According to some embodiments, a first image enhancement 826a may comprise an indication of a sweepstakes associated with the product, user, and/or a location of the product and/or user. The first image enhancement 826a may, for example, display a number of sweepstakes points or entries associated with the user and/or user device (not shown in
In some embodiments, the interface 820 may comprise a second image enhancement 826b such as an indicator of a price of the product and/or a third image enhancement 826c such as an indicator of a discount and/or other special pricing feature associated with the product, user, and/or location. In some embodiments, the user may select and/or interact with the second image enhancement 826b and/or the third image enhancement 826c to adjust the price and/or discount of the product. The user may, for example, recommend a discount and/or recommend a price for the product. Such user-defined (and/or selected) pricing data may, in some embodiments, be transmitted to other users, merchants, manufacturers, and/or third-parties for voting, participation, and/or approval.
According to some embodiments, the interface 820 may comprise a fourth image enhancement 826d that comprises a product (and/or location—such as a particular store) rating and/or recommendation feature. In some embodiments, the fourth image enhancement 826d may provide rating information for the product based on recommendations from all participating users, recommendations from users that are friends of the user of the interface 820, and/or users that are in the same geographic area as the user (e.g., currently in the same store, mall, and/or other defined geo-locational area). The fourth image enhancement 826d may be utilized, for example, to accept rating and/or recommendation input from the user.
In some embodiments, the interface 820 may comprise a fifth image enhancement 826e that comprises a “Shopping Buddies” feature. The fifth image enhancement 826e may, for example, display images (e.g., thumbnail images, profile images, etc.) of other users having a relationship with the present user such as Facebook® and/or other social network ‘friends’, contacts, colleagues, etc. the fifth image enhancement 826e may also or alternatively provide data related to such “buddies” such as ratings, recommendations, communications (e.g., text and/or instant messages), suggestions, etc. According to some embodiments, the fifth image enhancement 826e may enable the user to initiate voice and/or video communications with one or more selected “buddy”. In some embodiments, the “shopping buddies” may be associated with one or more promotions and/or rewards such as the “INSTANT WIN” functionality of the image modification 824 and/or the sweepstakes functionality of the first image enhancement 826a. The user and one or more of the “shopping buddies” may act as a team, for example, earning sweepstakes entries, instant win chances, and/or other rewards and/or chances for rewards.
According to some embodiments, the interface 820 may comprise a sixth image enhancement 826f such as a “cooking” feature. The sixth image enhancement 826f may, for example, be configured to allow the user to view and/or access recipes related to the product in the image, to assist (e.g., via ARR applications) with recipe preparations, and/or identify and/or locate related products (e.g., other products utilized in the same selected recipe).
In some embodiments, the interface 820 may comprise a seventh image enhancement 826g such as a “trivia” feature. The seventh image enhancement 826g may, for example, be configured to allow the user to access and/or view trivia questions relating to the product in the image (or the location in the image) and/or to play one or more games related to the product such as trivia games (e.g., single-player or with one or more other users such as one or more of the “shopping buddies”). In some embodiments, the seventh image enhancement 826g may also or alternatively comprise information descriptive of other uses for the product. While the user may initially be interested in the product for inclusion in a food recipe, for example, the seventh image enhancement 826g may inform the user that the product is also useful for some other purposes such as keeping away mosquitoes, helping geraniums grow, etc. In some embodiments, the provided trivia questions and/or other use information may be selected based on not only the product and/or location, but based on characteristics of the user as well. In the case that it is known that the user likes skiing, for example, uses of the product relating to skiing may be provided.
According to some embodiments, the interface 820 may comprise an eighth image enhancement 826h such as a “related products” feature. The eighth image enhancement 826h may, for example, provide information descriptive of products related (in a variety of ways) to the product in the image. Similar to the sixth image enhancement 826f, for example, the eighth image enhancement 826h may inform the user of products related to the current product by virtue of being included in the same recipe. Other types of related products may comprise products having package pricing and/or discount deals when purchased with the current product, products that complement the current product nutritionally, and/or products that are on the same list as the current product (e.g., grocery list, food pantry list, from the same manufacturer, from the same region, etc.).
In some embodiments, the interface 820 may comprise a ninth image enhancement 826i such as a “news” feature. The ninth image enhancement 826i may, for example, provide data descriptive of recent news, events, recalls, sell-by and/or good-by dates, and/or other informational items relating to the product (and/or location).
Any or all of the highlighting 822, the image modification 824, and/or the image enhancements 826a-i may be updated and/or modified (i) as the user and/or user device move, (ii) as time passes (e.g., the interface 820 may change based on time windows and/or triggers), and/or (iii) based on information received from other devices (such as the merchant device 106, sensor devices 108a-c, and/or controller device 110 of
While various components of the interface 820 have been depicted with respect to certain labels, layouts, headings, titles, and/or configurations, these features have been presented for reference and example only. Other labels, layouts, headings, titles, and/or configurations may be implemented without deviating from the scope of embodiments herein. Similarly, while a certain number of tabs, information screens, form fields, and/or data entry options have been presented, variations thereof may be practiced in accordance with some embodiments.
Turning now to
According to some embodiments, the method 900 may comprise receiving (e.g., by a processing device) image data from user device, at 902. The image data may, for example, be descriptive of a location, product, and/or other object in proximity to the user device.
In some embodiments, the method 900 may comprise identifying (e.g., by the processing device) an object in the image, at 904. Stored image data may be queried, for example, to determine whether any pixel and/or other image patterns or characteristics of the image match stored patterns and/or characteristics. The stored data may, in some embodiments, be associated with an identifier and/or other information descriptive of an identity of the matched pattern. In some embodiments, such as in the case that multiple patterns are matched, location and/or orientation information may be derived from the matching process. It may be known, for example, that there are only two (2) locations where a certain store using a particular logo is situated across the street from a particular type of church or other distinguishable building or feature. In the case that both the store and the church are identified in the received image data, it may be determined and/or assumed that the user device is located at one of the two (2) known locations. Locational data from the user device and/or from sensors proximate to the user device may be utilized, in some embodiments, to determine which of the two (2) locations the user device is in.
According to some embodiments, the method 900 may comprise determining (e.g., by the processing device) supplemental data stored in association with the object, at 906. Once an object is identified as being in proximity to the user device, information stored in associated with the object may be retrieved and/or provided to the user device. The supplemental information may comprise, for example, promotional offers, rating and/or recommendation information, trivia questions and/or answers, pricing information, purchase information, handling and/or usage instructions, nutritional information, etc.
In some embodiments, the method 900 may comprise receiving (e.g., by the processing device) an update to the supplemental data, at 908. The user device may be utilized, for example, to modify and/or add to the supplemental information. According to some embodiments, for example, the user of the user device may select the identified object (e.g., a unit of a particular brand of product, for exemplary purposes) and select, enter, and/or define rating and/or recommendation information. The user may rate the identified product, for example, and/or may suggest or recommend the product. In some embodiments, the user may select and/or define a recommended promotion relating to the product such as a suggestion that the product be offered for a discount (e.g., percentage off, amount off, or a particular sale price).
According to some embodiments, the method 900 may comprise selecting (e.g., by the processing device) a set of user devices, at 910. One or more other user devices (e.g., other than the device that provided the image data and/or the user-defined and/or user-selected supplemental data) may, for example, be selected from a plurality of available and/or known user devices. In some embodiments, user devices associated with users (e.g., second users) that have social networking relationships with (e.g., are ‘friends’ of) the user of the image-capturing user device (e.g., a first user) may be selected, identified, and/or located. According to some embodiments, user devices in proximity to the identified unit of product, in proximity to a different unit of the identified product (e.g., in a different store), and/or in proximity to the first user and/or user device, may be selected, identified, and/or located. In some embodiments, the selecting may be performed in real-time—e.g., upon receiving the user-defined/user-selected supplemental information from the first user. According to some embodiments, previous purchases and/or preferences (e.g., relating to the identified product) of other users may be utilized to select the desired set and/or subset of other user devices.
In some embodiments, the method 900 may comprise providing (e.g., by the processing device) updated supplemental data to selected set of user devices, at 912. Updated rating, recommendation, and/or recommended discount or promotional information may be provided, for example, to the set and/or subset of user devices selected at 910. In some embodiments, the information may be made available to (e.g., access may be provided) the updated supplemental information. In some embodiments, the updated supplemental information and/or an indication of the update itself may be pushed (e.g., transmitted) to the selected user devices. The transmitting may occur real-time (i.e., as or immediately after the information is updated by the first) user or may occur at triggered times after the updating. The transmitting may occur, for example, when a user operating one of the selected user devices walks within a predetermined distance of the identified unit of product, another unit of the identified product, a location where the first user updated the information, and/or a current location of the first user.
According to some embodiments, the method 900 may comprise receiving (e.g., by the processing device) votes, at 914. Users of the selected user devices may, for example, transmit indications of whether or not they agree with the update provided by the first user. In some embodiments, such as in the case that the first user's rating, recommendation, or other supplemental data receives more than a threshold number of votes, approvals, and/or exceeds a particular user rating, the first user may be awarded a benefit such as a discount on a purchase of the identified unit of product, a different unit of the product, or a different product (e.g., subsidized by a competing manufacturer or brand). In such a manner, for example, the first user may capture an image of a product as they are walking through a store, provide information relating to the product (e.g., a rating, a recommendation for others to buy, and/or a “wish list” request—e.g., “help me buy”), the information may be transmitted to other users (e.g., users having a relation to the first user), the other users may vote and/or participate based on the first user's provided information relating to the product, and the first user may receive a discount or other benefit, all possibly occurring before the first user reaches the checkout. Indeed, in some embodiments, the award provided to the first user may be provided as part of a transaction for the purchase of the identified unit of product before the first user leaves the store in which the image was originally captured.
In some embodiments, such as in the case that the user-defined and/or user-selected supplemental data comprises a recommended discount and/or promotion for a product, votes and/or offers or commitments of participation from other users may cause the suggested promotion to be implemented. A certain number of votes and/or commitments of participation (e.g., commitments to purchase a product at a particular price) may, for example, trigger implementation of the user-initiated promotional pricing for a product.
Referring now to
In some embodiments, the interface 1020 may comprise various highlighting 1022a-b, image modification 1024, and/or image enhancements 1026a-f. As depicted for non-limiting exemplary purposes in
According to some embodiments, a second highlighting 1022b of the second unit of product 1060b may be configured (e.g., placed and/or defined with various visual attributes such as colors and/or animations) to indicate to the user that the second unit of product 1060b is not currently on the grocery list of the user's but that the second unit of product 1060b is determined to be in need of imminent replacement. It may be determined, for example, that too few inventory of the same type of product as the second unit of product 1060b (e.g., tomato paste) are currently possessed by the user and/or that a calculated rate of consumption (historic or predicted) of the type of product by the user (e.g., the user's family) will consume the current inventory of the product within a predetermined threshold amount of time such as a few days, a week, etc. (e.g., depending on how frequently the user desires to visit the grocery store and/or how much warning the user desires for impending out-of-stock situations). The second highlighting 1022b may, for example, illuminate and/or outline the second unit of product 1060b in a warning or action color such as red—denoting that it is suggested that the type of product be added to the grocery list.
In some embodiments, the interface 1020 may comprise the image modification 1024. While the actual brand of tomato paste of the second unit of product 1060b may comprise “BRAND A”, for example, the interface 1020 may replace the actual real-world brand, logo, trademark, etc. with the image modification 1024. In some embodiments, the replacement utilizing the image modification 1024 may comprise an updated and/or different version of image and/or logo from “BRAND A”, thereby allowing static labels on real-world products to be updated and/or enhanced via an ARR virtual interaction and/or modification. According to some embodiments, the image modification 1024 replace the “BRAND A” image portion with a “BRAND B” logo, image, trademark, and/or other supplemental virtual information. In the case that the second unit of product 1060b is determined to be in need of replacement (e.g., as indicated by the second highlighting 1022b), for example, a discount, offer, and/or product-placement and/or marketing arrangement with “BRAND B” may cause the image modification 1024 to replace the indication of “BRAND A” with one of “BRAND B”—e.g., suggesting to the user that upon replacement of the second unit of product 1060b, that a “BRAND B” version of the product be purchased instead of a “BRAND A” version.
According to some embodiments, a first image enhancement 1026a may comprise a virtual product fill line or “X-ray” view of the first unit of product 1060a. Based on purchase date and product consumption information (e.g., consumption rate, upcoming expected usage in recipes), for example, an amount of the first unit of product 1060a remaining may be calculated and projected in a virtual manner on the real-world container via the interface 1020 and the first image enhancement 1026a. In such a manner, for example, the user may scan a pantry and/or refrigerator shelf to quickly determine how much product remains in various containers without the need of picking up the containers, much less opening them.
In some embodiments, the interface 820 may comprise a second image enhancement 1026b such as a virtual grocery list. The second image enhancement 1026b may provide a listing of all current products and/or quantities on the user's grocery list, for example, and may provide an indication of an excepted shopping cart price total based on prices at one or more stores (such as a user's preferred store(s), stores within a certain geographic proximity such as within ten (10) miles, and/or stores offering discounts or other benefits to the user). In some embodiments, a third image enhancement 1026c may be provided to allow the user to quickly and easily add products to the grocery list and/or a fourth image enhancement 1026d may be provided to allow the user to quickly and easily remove products from the grocery list. While the first unit of product 1060a may not be automatically placed on the grocery list because it is not predicted to be in short supply until a subsequent grocery trip and the first highlighting 1022a may accordingly be white or blue, for example, upon simple touch selection of the first highlighting 1022a (e.g., a portion of the interface 1020 corresponding to the first unit of product 1060a) and selection of the third image enhancement 1026c, the first highlighting 1022a may change to green to indicate that the first unit of product 1060a has been added to the grocery list. Similarly, the second highlighting 1022b of red indicating that the second unit of product 1060b should be added to the grocery list may be changed to green (indicating an addition to the grocery list) by selection of the second unit of product 1060b (e.g., by touch selection of an area of the interface 1020 corresponding to the second unit of product 1060b) and/or selection of the third image enhancement 1026c.
According to some embodiments, the interface 1020 may comprise a fifth image enhancement 1026e that comprises a recipe and/or cooking feature. The fifth image enhancement 1026e may, for example, provide access to recipes requiring one or more of the first unit of product 1060a and/or the second unit of product 1060b (both, in the case each is selected by the user, for example), cooking instructions, cooking assistance, etc. In some embodiments, the grocery list may be linked to recipes selected via the fifth image enhancement 1026e, causing missing products (e.g., products not currently in the user's possession—e.g., pantry, refrigerator, and/or freezer) to be automatically added to the list in appropriate quantities to allow the recipe to be completed.
In some embodiments, the interface 1020 may comprise a sixth image enhancement 1026f such as a “virtual measuring cup” feature. The sixth image enhancement 1026f may, for example, be configured to enhance an image of a pan, pot, dish, spoon, measuring cup, and/or other kitchen utensil to assist with cooking and/or baking (e.g., in accordance with a recipe provided via the fifth image enhancement 1026e). While not shown in
Any or all of the highlighting 1022a-b, the image modification 1024, and/or the image enhancements 1026a-f may be updated and/or modified (i) as the user and/or user device move, (ii) as time passes (e.g., the interface 1020 may change based on time windows and/or triggers), and/or (iii) based on information received from other devices (such as the merchant device 106, sensor devices 108a-c, and/or controller device 110 of
While various components of the interface 1020 have been depicted with respect to certain labels, layouts, headings, titles, and/or configurations, these features have been presented for reference and example only. Other labels, layouts, headings, titles, and/or configurations may be implemented without deviating from the scope of embodiments herein. Similarly, while a certain number of tabs, information screens, form fields, and/or data entry options have been presented, variations thereof may be practiced in accordance with some embodiments.
Referring now to
In some embodiments, the system 1100 may be utilized to take inventory and/or predict inventory and/or replenishment purchase dates for a user's home food stores and/or other consumable products possessed and/or desired by a user. The user device 1102 may interact with the smart refrigerator 1108a and/or the smart shelf 1170 (e.g., via the smart shelf sensor 1108b), for example, to determine inventory levels via image analysis techniques such as those described herein. According to some embodiments for example, the user device 1102, smart refrigerator 1108a, and/or the smart shelf 1170 (e.g., via the smart shelf sensor 1108b) may capture an image of the various units of product 1160a-b disposed within the smart refrigerator 1108a and/or upon the smart shelf 1170, respectively. Image data may be transmitted to the user device 1102 and/or the controller device 1110, either of which (or the combination of which) may process the image data to determine various characteristics of the units of product 1160a-b in inventory—e.g., brands, manufacturers, expiration and/or best-by dates, batch or lot numbers, flavors, styles, quantities, etc. Image data descriptive of one or more of the units of product 1160a-b may, for example, be compared to image data stored in the database 1140 to determine an identity and/or other information descriptive of the imaged one or more of the units of product 1160a-b. In some embodiments, image and/or product data may be sent (e.g., via the user device 1102 and/or the controller device 1110) to the merchant device 1106 to query information relating to an identified product (and/or to facilitate identification of a product based on image data).
According to some embodiments, the smart refrigerator 1108a and/or the smart shelf 1170 (and/or the smart shelf sensor 1108b thereof) may comprise and/or be utilized in place of the user device 1102. The smart refrigerator 1108a may comprise, for example, an image capture device such as a camera (not explicitly shown in
In some embodiments, the system 1100 may be utilized to facilitate cooking and/or baking of one or more of the units of product 1160a-b. The user device 1102 may be utilized, for example, to interface with the smart toaster 1108c to toast a third unit of product 1160c to desires specifications. The user device 1102 may, in some embodiments, transmit data identifying the third unit of product 1160c to the smart toaster 1108c. The smart toaster 1108c may then utilize stored toasting guidelines and/or access appropriate guidelines for the particular third unit of product 1160c from the user device 1102 and/or from the controller device 1110, database 1140, and/or merchant device 1106. The user device 1102 may be utilized, for example, to virtually load the third unit of product 1160c into the smart toaster 1108c and select a desired toast color, shade, and/or degree. The smart toaster 1108c may determine, based on the user input of desired outcome variables and the determined characteristics of the third unit of product 1160c, how long to toast and/or at what temperature or setting to toast. In some embodiments, such as in the case that the smart toaster 1108c is outfitted with an image capture device (not shown in
According to some embodiments, image and/or characteristic data of units of product 1160a-c may be utilized by the other device 1108d to facilitate other and/or additional cooking, baking, fabrication, and/or preparation instructions. The other device 1108d may comprise a smart measuring cup as described herein, for example, that is configured to alert the user when an appropriate amount of a selected unit of product 1160a-c has been placed in a real-world measuring device—e.g., utilizing image analysis to approximate a virtual determination that the amount placed equals a desired amount (e.g., an amount in accordance with a selected recipe and/or other set of instructions).
Fewer or more components 1102, 1104, 1106, 1108a-d, 1110, 1140, 1160a-c, 1170 and/or various configurations of the depicted components 1102, 1104, 1106, 1108a-d, 1110, 1140, 1160a-c, 1170 may be included in the system 1100 without deviating from the scope of embodiments described herein. In some embodiments, the components 1102, 1104, 1106, 1108a-d, 1110, 1140, 1160a-c, 1170 may be similar in configuration and/or functionality to similarly named and/or numbered components as described herein. In some embodiments, the system 1100 (and/or portion thereof) may be utilized by and/or in conjunction with an ARR application program and/or platform programmed and/or otherwise configured to execute, conduct, and/or facilitate the methods 400, 900, 1500 of
Turning now to
In some embodiments, the system 1200 may be utilized to check, determine, and/or manage inventory and/or stocking in a retail environment. The user device 1202 may be utilized, for example, to capture an image (depicted as having a field-of-view represented by dashed lines in
According to some embodiments, the database 1240 may store product stocking plans, arrangements, and/or guidelines for the particular shelves 1270a-b. Each shelf 1270a-b may, for example, be actually or virtually segmented or divided into different zones in which different product types are supposed to be stocked (e.g., a “plan-o-gram”). A first shelf 1270a, for example, may be divided into three (3) product placement zones 1270a-1, 1270a-2, 1270a-3, and/or a second shelf 1270b may be divided into two (2) product placement zones 1270b-1, 1270b-2. Stocking guidelines may dictate, as an example, that a first type of product should be stocked in a first product placement zone 1270a-1 of the first shelf 1270a, a second type of product should be stocked in a second product placement zone 1270a-2 of the first shelf 1270a, and a third type of product should be stocked in a third product placement zone 1270a-3 of the first shelf 1270a. According to some embodiments, the stored guidelines and/or placement rules may require that products from a first manufacturer be placed in a first product placement zone 1270b-1 of the second shelf 1270b and/or that products from a second manufacturer be placed in a second product placement zone 1270b-2 of the second shelf 1270b.
In some embodiments, the image data may be analyzed (e.g., by the controller device 1210 and/or the user device 1202) to determine whether the actual stocking of the shelves 1270a-b is in compliance with the desired plan(s) stored in the database 1240. The image data corresponding to the first shelf 1270a, for example, may be analyzed to determine that a first unit of product 1260a-1 of the desired first type of product is indeed stored in the first product placement zone 1270a-1 of the first shelf 1270a. The image data may also or alternatively be analyzed to determine that a second unit of product 1260a-2 of the desired second type of product is incorrectly stored in the first product placement zone 1270a-1 of the first shelf 1270a (e.g., with (on top of, behind, and/or next to) the first unit of product 1260a-1 of the desired first type of product). As depicted by the arrow in
According to some embodiments, the image data corresponding to the second shelf 1270b may be analyzed to determine that while a unit of product 1260b-1 of a first manufacturer is stored in a first product placement area 1270b-1 of the second shelf 1270b, a unit of product 1260b-2 is stored in a second product placement area 1270b-2 of the second shelf 1270b. In the case that the units or product 1260b-1, 1260b-2 from the two different manufacturers are not desired for adjacent storage (e.g., pursuant to rules stored in the database 1240 and/or based on data received from the manufacturer device 1206), it may be suggested (e.g., by the controller device 1210 and/or the user device 1202—e.g., via output of the user device 1202 and/or to the user of the user device 1202) that one or both of the units of product 1260b-1, 1260b-2 from the two different manufacturers be relocated and/or removed from the second shelf 1270b. The various suggestions regarding product placement and/or stocking/restocking may be output to the user in a variety of manners. In some embodiments, suggestions may be output via an ARR interface such as one or more of the interfaces 220, 620, 820, 1020, 1320, 1420 of
Fewer or more components 1202, 1204, 1206, 1208b, 1210, 1240, 1260a-b, 1270a-b and/or various configurations of the depicted components 1202, 1204, 1206, 1208b, 1210, 1240, 1260a-b, 1270a-b may be included in the system 1200 without deviating from the scope of embodiments described herein. In some embodiments, the components 1202, 1204, 1206, 1208b, 1210, 1240, 1260a-b, 1270a-b may be similar in configuration and/or functionality to similarly named and/or numbered components as described herein. In some embodiments, the system 1200 (and/or portion thereof) may be utilized by and/or in conjunction with an ARR application program and/or platform programmed and/or otherwise configured to execute, conduct, and/or facilitate the methods 400, 900, 1500 of
Turning now to
In some embodiments, the interface 1320 may be augmented with data supplemental to the real-time, real-world image data received by the camera and output via the display device 1316. The interface 1320 may comprise, for example, highlighting 1322a-b of one or more objects or features in the real-time image. As depicted, for example, a first highlighting 1322a alters the portion of the real-time image corresponding to a first unit of product 1360a. In such a manner, for example, the user's attention may be drawn to the first unit of product 1360a and/or the first highlighting 1322a may comprise an indication that the first unit of product 1360a has been locked-onto as an ARR target. In some embodiments, the first highlighting 1322a may change color, appearance, and/or animation based on whether the first unit of product 1360a has been identified as an ARR target (e.g., an image for which a stored representation in a database and associated supplemental content corresponds). In some embodiments, the first highlighting 1322a may indicate that the identified first unit of product 1360a does not belong in the position on a first shelf 1370a, in which the first unit of product 1360a is currently placed. In some embodiments, a selection of the first unit of product 1360a and/or the first highlighting 1322a via the interface 1320 may trigger an outputting of supplemental data related to the first unit of product 1360a such as an indication of where the first unit of product 1360a actually belongs.
According to some embodiments, a second highlighting 1322b may be configured to virtually surround and/or identify a second unit of product 1360b. The second highlighting 1322b may, in some embodiments, be implemented in response to input received (e.g., via the interface 1320 and/or via the user device 1302) from the user that indicates a desire to retrieve supplemental data related to the second unit of product 1360b (e.g., input associated with a portion of the image corresponding to the second unit of product 1360b). In such a manner, for example, a user may utilize the interface 1320 to easily and/or readily access supplemental data relating to individual desired units of product 1360a-d stored on the shelves 1370a-d. In some embodiments, the second highlighting 1322b may be provided to indicate that the second unit of product 1360b has (or will shortly—e.g., within a predetermined approaching time threshold) expired and/or passed (or is soon to pass) an associated best-by or other pertinent stocking and/or product characteristic date. According to some embodiments, the second highlighting 1322b may indicate that the second unit of product 1360b has been recalled and should accordingly be removed from the first shelf 1370a. In such a manner, for example, a user of the interface 1320 may readily view which units of product 1360a-d on the shelves 1370a-d are in need of replacement and/or removal.
In some embodiments, the interface 1320 may comprise other and/or additional enhancements to the real-time and/or real-world image output by the display device 1316. The interface 1320 may comprise, for example, a first image enhancement 1326a. In some embodiments, the first image enhancement 1326a may comprise an indication of an area on a second shelf 1370b where inventory is lacking. As depicted, for example, the first image enhancement 1326a may superimpose a shape, object, image, and/or other ARR feature over a portion of the image output by the interface 1320 that corresponds to an empty portion of the second shelf 1370b. In some embodiments, out of inventory items and/or improperly stocked items (e.g., items in the wrong shelf positions and/or items not properly “faced”; e.g., oriented) may accordingly be readily visible via the ARR interface 1320.
According to some embodiments, out of stock items and/or proper item placement may also or alternatively be indicated by use of a second image enhancement 1326b. The second image enhancement 1326b may comprise, for example, a ‘ghost’ image and/or outline of a missing item such as a dotted-line representation and/or a partially translucent or faded image of an item desired for the indicated location on a third shelf 1370c. In some embodiments, quantity, identifying, and/or other information regarding proper product placement may be indicated such as via a third image enhancement 1326c. The third image enhancement 1326c may, for example, indicate that an additional unit of a product (e.g., of a certain type, brand, etc.) should be added to the third shelf 1370c above the enhanced placard upon which the third image enhancement 1326c is superimposed.
In some embodiments, a fourth image enhancement 1326d may be utilized to indicate that a third unit of product 1360c should be removed from the location on a fourth shelf 1370d in which the third unit of product 1360c is currently placed. The third unit of product 1360c may be in the proper position on the fourth shelf 1370d but facing backward (e.g., a primary side and/or logo face of the third unit of product 1360c may not be facing the user device 1302), may be in an improper position but on the correct fourth shelf 1370d, or may be on an entirely incorrect shelf 1370a-d or even aisle. According to some embodiments, such as in the case that a store sets up a promotional ‘island’ and/or other display such as at the end of an aisle, utilizing products such as the third unit of product 1360c, the fourth image enhancement 1326d may indicate that the third unit of product 1360c should be relocated to such special display area.
According to some embodiments, a fifth image enhancement 1326e may comprise a directional arrow indicating that a fourth unit of product 1360d on the fourth shelf 1370d should be moved to a new position on the fourth shelf 1370d. In such a manner, for example, plan-o-gram and/or other product storage and/or placement guidelines may be quickly and easily realized by a user of the user device 1302 and corrective actions such as restocking, reordering, product removal, product placement, and/or product relocation may accordingly be easily and quickly effectuated by the user based on the ARR information provided via the interface 1320.
In some embodiments, any or all of the highlighting 1322a-b and image enhancements 1326a-e may be updated and/or modified (i) as the user and/or user device 1302 move, (ii) as time passes (e.g., the interface 1320 may change based on time windows and/or triggers), and/or (iii) based on information received from other devices (such as the merchant device 106, sensor devices 108a-c, and/or controller device 110 of
Fewer or more components 1302, 1316, 1320, 1322a-b, 1326a-e, 1360a-d, 1370a-d and/or various configurations of the depicted components 1302, 1316, 1320, 1322a-b, 1326a-e, 1360a-d, 1370a-d may be included in the system 1300 without deviating from the scope of embodiments described herein. In some embodiments, the components 1302, 1316, 1320, 1322a-b, 1326a-e, 1360a-d, 1370a-d may be similar in configuration and/or functionality to similarly named and/or numbered components as described herein. In some embodiments, the user device 1302 (and/or portion thereof) may comprise an ARR program and/or platform programmed and/or otherwise configured to execute, conduct, and/or facilitate the methods 400, 900, 1500 of
Referring now to
In some embodiments, the interface 1420 may be augmented with data supplemental to the real-time, real-world image data received by the camera and output via the display device 1416. The interface 1420 may comprise, for example, highlighting 1422 of one or more objects or features in the real-time image. As depicted, for example, the 1422 alters the portion of the real-time image corresponding to a unit of product 1460a. In such a manner, for example, the user's attention may be drawn to the unit of product 1460 and/or the highlighting 1422 may comprise an indication that the unit of product 1460 has been locked-onto as an ARR target. In some embodiments, the highlighting 1422 may change color, appearance, and/or animation based on whether the unit of product 1460 has been identified as an ARR target (e.g., an image for which a stored representation in a database and associated supplemental content corresponds). In some embodiments, the highlighting 1422 may indicate that the unit of product 1460 correspond to a product on a shopping (e.g., grocery) list associated with the user. In such a manner, for example, the user may simply point the user device 1402 down the aisle and quickly and easily spot products that are on the user's grocery list (e.g., automatically placed on the user's grocery list by a smart refrigerator and/or smart shelf such as the smart refrigerator 1108a and/or the smart shelf 1170 of
According to some embodiments, a first image enhancement 1426a may comprise an indicator relating to a shopping list of which the unit of product 1460 is a member. The interface 1420 may, for example, guide the user through the store from one product to the next until all items required for a shopping list have been acquired. As depicted, in some embodiments, the first image enhancement 1426a may comprise a numeric and/or hierarchical indicator that suggests to the user an order in which the desired products should be acquired. In some embodiments, a second image enhancement 1426b may comprise an animation such as the animated product depicted as hopping off a shelf and running across the aisle. In such a manner, for example, the user's attention may be focused on important products on the user's list, products having special pricing, and/or products for which promotional consideration has been provided for the benefit of appearing on the interface 1420.
In some embodiments, a third image enhancement 1426c may comprise a directional feature that informs the user which direction to take within a store (and/or inside another structure). Utilizing locational information from the user device 1402 and/or from sensor devices such as iBeacons® (not shown in
In some embodiments, any or all of the highlighting 1422 and image enhancements 1426a-c may be updated and/or modified (i) as the user and/or user device 1402 move, (ii) as time passes (e.g., the interface 1420 may change based on time windows and/or triggers), and/or (iii) based on information received from other devices (such as the merchant device 106, sensor devices 108a-c, and/or controller device 110 of
Fewer or more components 1402, 1416, 1420, 1422, 1426a-c, 1460 and/or various configurations of the depicted components 1402, 1416, 1420, 1422, 1426a-c, 1460 may be included in the system 1400 without deviating from the scope of embodiments described herein. In some embodiments, the components 1402, 1416, 1420, 1422, 1426a-c, 1460 may be similar in configuration and/or functionality to similarly named and/or numbered components as described herein. In some embodiments, the user device 1402 (and/or portion thereof) may comprise an ARR program and/or platform programmed and/or otherwise configured to execute, conduct, and/or facilitate the methods 400, 900, 1500 of
Turning now to
According to some embodiments, the method 1500 may comprise capturing (e.g., by a processing device) image of contents of shelf, at 1502. A portable image device and/or an image device coupled to the shelf may, for example, capture an image of a plurality of products (and accordingly product positions) on the shelf. In some embodiments, the image device may comprise one or more cameras coupled to a shelf edge and oriented to capture images of products stored above and/or below the coupling location. According to some embodiments, the image device(s) may be coupled to a shelf and/or other structure and oriented to capture images of a shelf opposite to the coupling location. A camera coupled to a shelf on one side of an aisle may, for example, be oriented to capture images of one or more shelves across the aisle from the shelf to which the camera is coupled. According to some embodiments, such as in the case that the camera comprises and/or is part of a mobile device, a designated shelf inventory image location may be established. Store personnel (in the case of a retail shelf image capture) or consumers (in the case of a consumer's pantry or refrigerator shelf) may be directed (e.g., via prompts output by a user device) to stand in a certain position and/or orient the camera in a particular direction and/or manner (e.g., to achieve the desired shelf image results). In the example of store inventory, an image-based stocking location may be designated for a shelf and/or set of shelves by a floor decal and/or other visual indicator of appropriate positioning. According to some embodiments, such as in the case that the camera is coupled to capture images of a refrigerator shelf, the camera may be coupled to the inside of a refrigerator cabinet and/or to an interior portion of a door of the refrigerator. In such a manner, for example, the camera may capture images of the contents of the refrigerator even when the refrigerator door is closed. Indeed, the camera may be triggered to capture shelf inventory images based on refrigerator door opening and/or closing.
In some embodiments, the method 1500 may comprise comparing (e.g., by the processing device) stored images to the captured image, at 1504. Stored images of various products, logos, etc. may, for example, be compared to portions of the image to determine (i) what types of products are stored on the shelf, (ii) what brands of products are stored on the shelf, (iii) quantities (e.g., counts) of various types/brands of units of products stored on the shelf, (iv) remaining quantities for particular units of product stored on the shelf, and/or (v) characteristic information descriptive of particular units of product stored on the shelf (e.g., expiration dates, best-by dates, lots, runs, batches, originating canning and/or bottling facilitates, etc.). In some embodiments, the stored images may comprise images of products from various angles such that captured images taken from shelf-mounted cameras may be utilized to compare product data even in cases where imagery is not captured from a traditional frontal orientation.
According to some embodiments, the method 1500 may comprise determining (e.g., by the processing device) an inventory of the shelf, at 1506. The product identities and/or unit counts determined at 1504, for example, may be utilized to determine total inventory counts for units of different types of products stored on the shelf. The inventory may include, in some embodiments, inventory counts by product type, manufacturer and/or brand, and/or product type volume and/or mass quantities (e.g., cups, ounces, pounds, milliliters, grams, etc.). In some embodiments, the inventory figures may be utilized to predict product type usage rates and/or restocking levels required to meet certain requirements (e.g., holiday rush periods in a store or anticipated and/or scheduled recipe preparation at a consumer's home or restaurant). Inventory levels may be determined at intervals and/or upon triggering events, for example, and may accordingly be analyzed with respect to inventory level changes over time. In such a manner, it may be determined that a family uses, on average, two (2) jars of peanut butter every month or that a restaurant consumes twenty (20) pounds of butter per week. Such rate of consumption figures may be utilized, in some embodiments, to predict remaining quantities of particular units of product stored on the shelf. According to some embodiments, images for products having translucent or clear packaging may be analyzed for indications of remaining quantities. An apparent current fill-level line around the sides of a plastic milk carton may be utilized, for example, to determine that approximately twenty percent (20%) of the original gallon remains at a current inventory imaging time. In some embodiments, predicted inventory depletion dates may be utilized in conjunction with zero inventory levels for various products to determine which products should be re-ordered, purchased, and/or added to a shopping list. Suggested, planned, and/or predicted purchase (e.g., grocery trip, restocking deliveries) dates may be utilized to plan the timing of the suggested restocking events.
Turning now to
According to some embodiments, the processor 1612 may be or include any type, quantity, and/or configuration of processor that is or becomes known. The processor 1612 may comprise, for example, an Intel® IXP 2800 network processor or an Intel® XEON™ Processor coupled with an Intel® E7501 chipset. In some embodiments, the processor 1612 may comprise multiple inter-connected processors, microprocessors, and/or micro-engines. According to some embodiments, the processor 1612 (and/or the apparatus 1610 and/or other components thereof) may be supplied power via a power supply (not shown) such as a battery, an Alternating Current (AC) source, a Direct Current (DC) source, an AC/DC adapter, solar cells, and/or an inertial generator. In the case that the apparatus 1610 comprises a server such as a blade server, necessary power may be supplied via a standard AC outlet, power strip, surge protector, and/or Uninterruptible Power Supply (UPS) device. According to some embodiments, the processor 1612 may primarily comprise and/or be limited to a specific class of processors referred to herein as “processing devices”. “Processing devices” are a subset of processors limited to physical devices such as CPU devices, Printed Circuit Board (PCB) devices, transistors, capacitors, logic gates, etc.
In some embodiments, the input device 1614 and/or the output device 1616 are communicatively coupled to the processor 1612 (e.g., via wired and/or wireless connections and/or pathways) and they may generally comprise any types or configurations of input and output components and/or devices that are or become known, respectively. The input device 1614 may comprise, for example, a keyboard that allows an operator of the apparatus 1610 to interface with the apparatus 1610 (e.g., by a consumer, such as to utilize ARR interface to interact with and/or manage retail products as described herein). In some embodiments, the input device 1614 may comprise a sensor configured to provide information such as geospatial, image, and/or other location data to the apparatus 1610 and/or the processor 1612. The output device 1616 may, according to some embodiments, comprise a display screen and/or other practicable output component and/or device. The output device 1616 may, for example, provide an ARR interface (e.g., the interfaces 220, 620, 820, 1020, 1320, 1420 of
In some embodiments, the communication device 1618 may comprise any type or configuration of communication device that is or becomes known or practicable. The communication device 1618 may, for example, comprise a Network Interface Card (NIC), a telephonic device, a cellular network device, a router, a hub, a modem, and/or a communications port or cable. In some embodiments, the communication device 1618 may be coupled to provide data to a remote mobile device, such as in the case that the apparatus 1610 is utilized to provide ARR supplemental data to a remote and/or mobile user device as described herein. The communication device 1618 may, for example, comprise a cellular telephone network transmission device that sends signals indicative of product stocking, restocking, ordering, purchasing, and/or locating data. According to some embodiments, the communication device 1618 may also or alternatively be coupled to the processor 1612. In some embodiments, the communication device 1618 may comprise an IR, RF, Bluetooth®, NFC, and/or Wi-Fi® network device coupled to facilitate communications between the processor 1612 and another device (such as a client device and/or a third-party device, not shown in
The memory device 1640 may comprise any appropriate information storage device that is or becomes known or available, including, but not limited to, units and/or combinations of magnetic storage devices (e.g., a hard disk drive), optical storage devices, and/or semiconductor memory devices such as RAM devices, Read Only Memory (ROM) devices, Single Data Rate Random Access Memory (SDR-RAM), Double Data Rate Random Access Memory (DDR-RAM), and/or Programmable Read Only Memory (PROM). The memory device 1640 may, according to some embodiments, store one or more of Augmented Retail Reality (ARR) instructions 1642-1, promotion instructions 1642-2, social network instructions 1642-3, smart appliance instructions 1642-4, user data 1644-1, location data 1644-2, image data 1644-3, product data 1644-4, and/or promotion data 1644-5. In some embodiments, the ARR instructions 1642-1, promotion instructions 1642-2, social network instructions 1642-3, and/or smart appliance instructions 1642-4 may be utilized by the processor 1612 to provide output information via the output device 1616 and/or the communication device 1618.
According to some embodiments, the ARR instructions 1642-1 may be operable to cause the processor 1612 to process the user data 1644-1, location data 1644-2, image data 1644-3, product data 1644-4, and/or promotion data 1644-5 in accordance with embodiments as described herein. User data 1644-1, location data 1644-2, image data 1644-3, product data 1644-4, and/or promotion data 1644-5 received via the input device 1614 and/or the communication device 1618 may, for example, be analyzed, sorted, filtered, decoded, decompressed, ranked, scored, plotted, and/or otherwise processed by the processor 1612 in accordance with the ARR instructions 1642-1. In some embodiments, user data 1644-1, location data 1644-2, image data 1644-3, product data 1644-4, and/or promotion data 1644-5 may be fed by the processor 1612 through one or more mathematical and/or statistical formulas and/or models in accordance with the ARR instructions 1642-1 to determine user and/or user device location (e.g., within a structure such as a store), identify locations, products, and/or other objects in image data received from a user and/or user device, determine supplemental data to provide, and/or provide data defining an ARR interface and/or display, as described herein.
In some embodiments, the promotion instructions 1642-2 may be operable to cause the processor 1612 to process the user data 1644-1, location data 1644-2, image data 1644-3, product data 1644-4, and/or promotion data 1644-5 in accordance with embodiments as described herein. User data 1644-1, location data 1644-2, image data 1644-3, product data 1644-4, and/or promotion data 1644-5 received via the input device 1614 and/or the communication device 1618 may, for example, be analyzed, sorted, filtered, decoded, decompressed, ranked, scored, plotted, and/or otherwise processed by the processor 1612 in accordance with the promotion instructions 1642-2. In some embodiments, user data 1644-1, location data 1644-2, image data 1644-3, product data 1644-4, and/or promotion data 1644-5 may be fed by the processor 1612 through one or more mathematical and/or statistical formulas and/or models in accordance with the promotion instructions 1642-2 to determine a promotion associated with a product, location, and/or other object, as described herein.
According to some embodiments, the social network instructions 1642-3 may be operable to cause the processor 1612 to process the user data 1644-1, location data 1644-2, image data 1644-3, product data 1644-4, and/or promotion data 1644-5 in accordance with embodiments as described herein. User data 1644-1, location data 1644-2, image data 1644-3, product data 1644-4, and/or promotion data 1644-5 received via the input device 1614 and/or the communication device 1618 may, for example, be analyzed, sorted, filtered, decoded, decompressed, ranked, scored, plotted, and/or otherwise processed by the processor 1612 in accordance with the social network instructions 1642-3. In some embodiments, user data 1644-1, location data 1644-2, image data 1644-3, product data 1644-4, and/or promotion data 1644-5 may be fed by the processor 1612 through one or more mathematical and/or statistical formulas and/or models in accordance with the social network instructions 1642-3 to determine user-defined and/or user-selected product, location, and/or object data, select user devices to which such data should be provided, receive social networking votes and/or ratings or suggestions, and/or activate social networking promotions, as described herein.
In some embodiments, the smart appliance instructions 1642-4 may be operable to cause the processor 1612 to process the user data 1644-1, location data 1644-2, image data 1644-3, product data 1644-4, and/or promotion data 1644-5 in accordance with embodiments as described herein. User data 1644-1, location data 1644-2, image data 1644-3, product data 1644-4, and/or promotion data 1644-5 received via the input device 1614 and/or the communication device 1618 may, for example, be analyzed, sorted, filtered, decoded, decompressed, ranked, scored, plotted, and/or otherwise processed by the processor 1612 in accordance with the smart appliance instructions 1642-4. In some embodiments, user data 1644-1, location data 1644-2, image data 1644-3, product data 1644-4, and/or promotion data 1644-5 may be fed by the processor 1612 through one or more mathematical and/or statistical formulas and/or models in accordance with the smart appliance instructions 1642-4 to determine and/or manage product inventory, restocking, and/or ordering and/or to facilitate product preparation (such as measuring, cooking, etc.), as described herein.
In some embodiments, the apparatus 1610 may comprise the cooling device 1650. According to some embodiments, the cooling device 1650 may be coupled (physically, thermally, and/or electrically) to the processor 1612 and/or to the memory device 1640. The cooling device 1650 may, for example, comprise a fan, heat sink, heat pipe, radiator, cold plate, and/or other cooling component or device or combinations thereof, configured to remove heat from portions or components of the apparatus 1010.
Any or all of the exemplary instructions and data types described herein and other practicable types of data may be stored in any number, type, and/or configuration of memory devices that is or becomes known. The memory device 1640 may, for example, comprise one or more data tables or files, databases, table spaces, registers, and/or other storage structures. In some embodiments, multiple databases and/or storage structures (and/or multiple memory devices 1640) may be utilized to store information associated with the apparatus 1610. According to some embodiments, the memory device 1640 may be incorporated into and/or otherwise coupled to the apparatus 1610 (e.g., as shown) or may simply be accessible to the apparatus 1610 (e.g., externally located and/or situated).
Referring to
According to some embodiments, the first data storage device 1740a may comprise one or more various types of internal and/or external hard drives. The first data storage device 1740a may, for example, comprise a data storage medium 1746 that is read, interrogated, and/or otherwise communicatively coupled to and/or via a disk reading device 1748. In some embodiments, the first data storage device 1740a and/or the data storage medium 1746 may be configured to store information utilizing one or more magnetic, inductive, and/or optical means (e.g., magnetic, inductive, and/or optical-encoding). The data storage medium 1746, depicted as a first data storage medium 1746a for example (e.g., breakout cross-section “A”), may comprise one or more of a polymer layer 1746a-1, a magnetic data storage layer 1746a-2, a non-magnetic layer 1746a-3, a magnetic base layer 1746a-4, a contact layer 1746a-5, and/or a substrate layer 1746a-6. According to some embodiments, a magnetic read head 1746a may be coupled and/or disposed to read data from the magnetic data storage layer 1746a-2.
In some embodiments, the data storage medium 1746, depicted as a second data storage medium 1746b for example (e.g., breakout cross-section “B”), may comprise a plurality of data points 1746b-2 disposed with the second data storage medium 1746b. The data points 1746b-2 may, in some embodiments, be read and/or otherwise interfaced with via a laser-enabled read head 1748b disposed and/or coupled to direct a laser beam (and/or other optical signal) through the second data storage medium 1746b.
In some embodiments, the second data storage device 1740b may comprise a CD, CD-ROM, DVD, Blu-Ray™ Disc, and/or other type of optically-encoded disk and/or other storage medium that is or becomes know or practicable. In some embodiments, the third data storage device 1740c may comprise a USB keyfob, dongle, and/or other type of flash memory data storage device that is or becomes know or practicable. In some embodiments, the fourth data storage device 1740d may comprise RAM of any type, quantity, and/or configuration that is or becomes practicable and/or desirable. In some embodiments, the fourth data storage device 1740d may comprise an off-chip cache such as a Level 2 (L2) cache memory device. According to some embodiments, the fifth data storage device 1740e may comprise an on-chip memory device such as a Level 1 (L1) cache memory device.
The data storage devices 1740a-e may generally store program instructions, code, and/or modules that, when executed by a processing device cause a particular machine to function in accordance with one or more embodiments described herein. The data storage devices 1740a-e depicted in
Throughout the description herein and unless otherwise specified, the following terms may include and/or encompass the example meanings provided. These terms and illustrative example meanings are provided to clarify the language selected to describe embodiments both in the specification and in the appended claims, and accordingly, are not intended to be generally limiting. While not generally limiting and while not limiting for all described embodiments, in some embodiments, the terms are specifically limited to the example definitions and/or examples provided. Other terms are defined throughout the present description.
Some embodiments described herein are associated with a “user device” or a “network device”. As used herein, the terms “user device” and “network device” may be used interchangeably and may generally refer to any device that can communicate via a network. Examples of user or network devices include a PC, a workstation, a server, a printer, a scanner, a facsimile machine, a copier, a Personal Digital Assistant (PDA), a storage device (e.g., a disk drive), a hub, a router, a switch, and a modem, a video game console, or a wireless phone. User and network devices may comprise one or more communication or network components. As used herein, a “user” may generally refer to any individual and/or entity that operates a user device. Users may comprise, for example, customers, consumers, product underwriters, product distributors, customer service representatives, agents, brokers, etc.
As used herein, the term “network component” may refer to a user or network device, or a component, piece, portion, or combination of user or network devices. Examples of network components may include a Static Random Access Memory (SRAM) device or module, a network processor, and a network communication path, connection, port, or cable.
In addition, some embodiments are associated with a “network” or a “communication network”. As used herein, the terms “network” and “communication network” may be used interchangeably and may refer to any object, entity, component, device, and/or any combination thereof that permits, facilitates, and/or otherwise contributes to or is associated with the transmission of messages, packets, signals, and/or other forms of information between and/or within one or more network devices. Networks may be or include a plurality of interconnected network devices. In some embodiments, networks may be hard-wired, wireless, virtual, neural, and/or any other configuration of type that is or becomes known. Communication networks may include, for example, one or more networks configured to operate in accordance with the Fast Ethernet LAN transmission standard 802.3-2002® published by the Institute of Electrical and Electronics Engineers (IEEE). In some embodiments, a network may include one or more wired and/or wireless networks operated in accordance with any communication standard or protocol that is or becomes known or practicable.
As used herein, the terms “information” and “data” may be used interchangeably and may refer to any data, text, voice, video, image, message, bit, packet, pulse, tone, waveform, and/or other type or configuration of signal and/or information. Information may comprise information packets transmitted, for example, in accordance with the Internet Protocol Version 6 (IPv6) standard as defined by “Internet Protocol Version 6 (IPv6) Specification” RFC 1883, published by the Internet Engineering Task Force (IETF), Network Working Group, S. Deering et al. (December 1995). Information may, according to some embodiments, be compressed, encoded, encrypted, and/or otherwise packaged or manipulated in accordance with any method that is or becomes known or practicable.
In addition, some embodiments described herein are associated with an “indication”. As used herein, the term “indication” may be used to refer to any indicia and/or other information indicative of or associated with a subject, item, entity, and/or other object and/or idea. As used herein, the phrases “information indicative of” and “indicia” may be used to refer to any information that represents, describes, and/or is otherwise associated with a related entity, subject, or object. Indicia of information may include, for example, a code, a reference, a link, a signal, an identifier, and/or any combination thereof and/or any other informative representation associated with the information. In some embodiments, indicia of information (or indicative of the information) may be or include the information itself and/or any portion or component of the information. In some embodiments, an indication may include a request, a solicitation, a broadcast, and/or any other form of information gathering and/or dissemination.
Numerous embodiments are described in this patent application, and are presented for illustrative purposes only. The described embodiments are not, and are not intended to be, limiting in any sense. The presently disclosed invention(s) are widely applicable to numerous embodiments, as is readily apparent from the disclosure. One of ordinary skill in the art will recognize that the disclosed invention(s) may be practiced with various modifications and alterations, such as structural, logical, software, and electrical modifications. Although particular features of the disclosed invention(s) may be described with reference to one or more particular embodiments and/or drawings, it should be understood that such features are not limited to usage in the one or more particular embodiments or drawings with reference to which they are described, unless expressly specified otherwise.
Devices that are in communication with each other need not be in continuous communication with each other, unless expressly specified otherwise. On the contrary, such devices need only transmit to each other as necessary or desirable, and may actually refrain from exchanging data most of the time. For example, a machine in communication with another machine via the Internet may not transmit data to the other machine for weeks at a time. In addition, devices that are in communication with each other may communicate directly or indirectly through one or more intermediaries.
A description of an embodiment with several components or features does not imply that all or even any of such components and/or features are required. On the contrary, a variety of optional components are described to illustrate the wide variety of possible embodiments of the present invention(s). Unless otherwise specified explicitly, no component and/or feature is essential or required.
Further, although process steps, algorithms or the like may be described in a sequential order, such processes may be configured to work in different orders. In other words, any sequence or order of steps that may be explicitly described does not necessarily indicate a requirement that the steps be performed in that order. The steps of processes described herein may be performed in any order practical. Further, some steps may be performed simultaneously despite being described or implied as occurring non-simultaneously (e.g., because one step is described after the other step). Moreover, the illustration of a process by its depiction in a drawing does not imply that the illustrated process is exclusive of other variations and modifications thereto, does not imply that the illustrated process or any of its steps are necessary to the invention, and does not imply that the illustrated process is preferred.
“Determining” something can be performed in a variety of manners and therefore the term “determining” (and like terms) includes calculating, computing, deriving, looking up (e.g., in a table, database or data structure), ascertaining and the like.
It will be readily apparent that the various methods and algorithms described herein may be implemented by, e.g., appropriately and/or specially-programmed general purpose computers and/or computing devices. Typically a processor (e.g., one or more microprocessors) will receive instructions from a memory or like device, and execute those instructions, thereby performing one or more processes defined by those instructions. Further, programs that implement such methods and algorithms may be stored and transmitted using a variety of media (e.g., computer readable media) in a number of manners. In some embodiments, hard-wired circuitry or custom hardware may be used in place of, or in combination with, software instructions for implementation of the processes of various embodiments. Thus, embodiments are not limited to any specific combination of hardware and software
A “processor” generally means any one or more microprocessors, CPU devices, computing devices, microcontrollers, digital signal processors, or like devices, as further described herein. According to some embodiments, a processor may primarily comprise and/or be limited to a specific class of processors referred to herein as “processing devices”. “Processing devices” are a subset of processors limited to physical devices such as CPU devices, Printed Circuit Board (PCB) devices, transistors, capacitors, logic gates, etc. “Processing devices”, for example, specifically exclude software-only objects, modules, and/or components.
The term “computer-readable medium” refers to any medium that participates in providing data (e.g., instructions or other information) that may be read by a computer, a processor or a like device. Such a medium may take many forms, including but not limited to, non-volatile media, volatile media, and transmission media. Non-volatile media include, for example, optical or magnetic disks and other persistent memory. Volatile media include DRAM, which typically constitutes the main memory. Transmission media include coaxial cables, copper wire and fiber optics, including the wires that comprise a system bus coupled to the processor. Transmission media may include or convey acoustic waves, light waves and electromagnetic emissions, such as those generated during RF and IR data communications. Common forms of computer-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD-ROM, DVD, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, an EPROM, a FLASH-EEPROM, any other memory chip or cartridge, a carrier wave, or any other medium from which a computer can read.
The term “computer-readable memory” may generally refer to a subset and/or class of computer-readable medium that does not include transmission media such as waveforms, carrier waves, electromagnetic emissions, etc. Computer-readable memory may typically include physical media upon which data (e.g., instructions or other information) are stored, such as optical or magnetic disks and other persistent memory, DRAM, a floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD-ROM, DVD, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, an EPROM, a FLASH-EEPROM, any other memory chip or cartridge, computer hard drives, backup tapes, Universal Serial Bus (USB) memory devices, and the like.
Various forms of computer readable media may be involved in carrying data, including sequences of instructions, to a processor. For example, sequences of instruction (i) may be delivered from RAM to a processor, (ii) may be carried over a wireless transmission medium, and/or (iii) may be formatted according to numerous formats, standards or protocols, such as Bluetooth™, TDMA, CDMA, 3G.
Where databases are described, it will be understood by one of ordinary skill in the art that (i) alternative database structures to those described may be readily employed, and (ii) other memory structures besides databases may be readily employed. Any illustrations or descriptions of any sample databases presented herein are illustrative arrangements for stored representations of information. Any number of other arrangements may be employed besides those suggested by, e.g., tables illustrated in drawings or elsewhere. Similarly, any illustrated entries of the databases represent exemplary information only; one of ordinary skill in the art will understand that the number and content of the entries can be different from those described herein. Further, despite any depiction of the databases as tables, other formats (including relational databases, object-based models and/or distributed databases) could be used to store and manipulate the data types described herein. Likewise, object methods or behaviors of a database can be used to implement various processes, such as the described herein. In addition, the databases may, in a known manner, be stored locally or remotely from a device that accesses data in such a database.
The present embodiments can be configured to work in a network environment including a computer that is in communication, via a communications network, with one or more devices. The computer may communicate with the devices directly or indirectly, via a wired or wireless medium such as the Internet, LAN, WAN or Ethernet, Token Ring, or via any appropriate communications means or combination of communications means. Each of the devices may comprise computers, such as those based on the Intel® Pentium® or Centrino™ processor, that are adapted to communicate with the computer. Any number and type of machines may be in communication with the computer.
In some embodiments. a method may comprise capturing an image from a mobile device of a user; determining, by the mobile device and from the image, that an image artifact in the image matches a promotion image on the mobile device, transmitting, to a server device, information identifying the image, identifying, by the server device, a promotion associated with the promotion information stored in the database, and determining, by the server device and in response to the identifying, a promotion. While many embodiments herein are described with reference to a server device identifying a product (and/or location or object) from image data, in some embodiments, a user device may conduct the identifying (of the product and/or the supplemental content thereof). The user device may be periodically loaded with location-based portions of a database, for example, that allow the user device to identify product, locations, and/or objects known to be in proximity to (and/or in a region of) the user device. In such a manner, for example, even if connectivity to the server is lost for some period of time, the user device may be able to operate in accordance with embodiments described herein due to data pre-loaded (e.g., prior to the outage) onto the user device.
According to some embodiments, a method may comprise capturing, by a camera device in communication with a processing device, a first image of contents of a shelf, comparing, by the processing device, the first image of the contents of the shelf with stored images of products, and determining, by the processing device and based on the comparing, an inventory of the shelf. In some embodiments, the method may further comprise capturing, by the camera device and after the capturing of the first image of the contents of the shelf, a second image of contents of a shelf. In some embodiments, the method may further comprise comparing, by the processing device, the second image of the contents of the shelf with the stored images of products, an determining, by the processing device and based on the comparing of the second image to the stored images, an updated inventory of the shelf. In some embodiments, the method may further comprise comparing, by the processing device, the second image of the contents of the shelf with the first image of the contents of the shelf, and determining, by the processing device and based on the comparing of the second image to the first image, an updated inventory of the shelf. In some embodiments, the method may further comprise determining, based on the updated inventory, that an additional unit of a product should be purchased, and adding the additional unit of product to an electronic list.
In some embodiments, the method may further comprise comparing the inventory of the shelf to a determining, based on the comparing of the inventory of the shelf to the predetermined inventory, that at least one unit of product is missing from the shelf, and adding the missing at least one unit of product to an electronic list. In some embodiments, the shelf may comprise a plurality of identifiable product placement zones and wherein the predetermined inventory comprises a plurality of corresponding product placement guidelines, and the comparing of the inventory of the shelf to the predetermined inventory may comprise identifying one of the product placement zones, determining a type of a unit of product stored in the identified one of the product placement zones, determining, based on the product placement guideline corresponding to the identified one of the product placement zones, that an appropriate type of product for the identified one of the product placement zones does not match the type of the unit of product stored in the identified one of the product placement zones, and outputting an indication that the identified one of the product placement zones contains an incorrect type of product.
In some embodiments, the method may further comprise outputting a real-time image of the shelf, and superimposing, on the real-time image, at least one indication of a type of product that is desired to be stored on a particular portion of the shelf. In some embodiments, the indication of the type of product that is desired to be stored on the particular portion of the shelf may comprise a digital representation of a unit of the desired type of product and the superimposing comprises positioning the digital representation in a portion of the real-time image that corresponds to the particular portion of the shelf. In some embodiments, the particular portion of the shelf may comprise an empty portion of the shelf. In some embodiments, the camera device may be coupled to the shelf.
The present disclosure provides, to one of ordinary skill in the art, an enabling description of several embodiments and/or inventions. Some of these embodiments and/or inventions may not be claimed in the present application, but may nevertheless be claimed in one or more continuing applications that claim the benefit of priority of the present application. Applicants intend to file additional applications to pursue patents for subject matter that has been disclosed and enabled but not claimed in the present application.
The present application claims benefit and priority under 35 U.S.C. §120 to, and is a non-provisional application of, U.S. Provisional Patent Application No. 61/756,509 filed on Jan. 25, 2013 and titled “SYSTEMS AND METHODS FOR AUGMENTED REALITY APPLICATIONS”, the contents of which are hereby incorporated by reference herein.
Number | Date | Country | |
---|---|---|---|
61756509 | Jan 2013 | US |