Techniques for accurately reproducing cosmetic products with trendy colors
A system with product mixing devices and a color communication computer system addresses the challenge of reproducing custom colors by collecting and distributing color information, ensuring accurate and synchronized color reproduction across devices.
Patent Information
- Application Number
- FR2022008062
- Authority / Receiving Office
- FR · FR
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-08-03
- Publication Date
- 2025-07-11
- Estimated Expiration
- 2042-08-03
AI Technical Summary
The advent of customizable cosmetic product mixing devices has made it difficult for users to receive color suggestions and accurately reproduce custom colors due to the lack of named recipes and variations in lighting and display configurations, making it challenging to communicate colors effectively.
A system comprising product mixing devices, mobile computing devices, and a color communication computer system that collects and distributes color information, including color interest messages, trend requests, and recipes to ensure accurate reproduction of custom colors across different devices.
The system improves the fidelity of custom color reproduction by determining trending colors and providing recipes for accurate dispensing, enabling synchronized color reproduction among users and devices.
Smart Images

Figure 00000031_0000 
Figure 00000032_0000 
Figure 00000033_0000
Abstract
Description
Title of the invention: Techniques for accurately reproducing cosmetic products having trendy colors Summary
[0001] The purpose of this summary is to present a selection of concepts in a simplified form which are described more fully below in the detailed description. This summary is not intended to identify key features of the claimed subject matter or to be used as an aid in determining the scope of the claimed subject matter.
[0002] Some embodiments provide a system. The system includes a plurality of product mixing devices, a plurality of mobile computing devices, and a color communication computing system. Each mobile computing device is communicatively coupled to a corresponding product mixing device of the plurality of product mixing devices. The color communication computing system includes a non-transitory computer-readable medium having computer-executable instructions stored thereon that, in response to execution by at least one processor of the color communication computing system, cause the color communication computing system to perform actions including receiving, by the color communication computing system,a plurality of color interest messages from the plurality of mobile computing devices, wherein each color interest message indicates a color of a product; receiving, by the color communication computer system, a trend request message from a mobile computing device, wherein the trend request message indicates one or more color constituent products within one or more cartridges installed in a product mixing device communicatively coupled with the mobile computing device; determining, by the color communication computer system, one or more relevant colors from the plurality of color interest messages; filtering, by the color communication computer system,the one or more relevant colors depending on whether each relevant color can be dispensed using the color constituent products within the one or more cartridges installed in the product mixing device communicatively coupled to the mobile computing device; and transmitting, by the color communication computer system, the filtered one or more relevant colors to the mobile computing device.
[0003] Some embodiments provide a method. A computer system of A color communication system receives a plurality of color interest messages from a plurality of mobile computing devices. Each color interest message indicates a color of a product. The color communication computer system receives a trend request message from a mobile computing device. The trend request message indicates one or more color constituent products within one or more cartridges installed in a product mixing device communicatively coupled to the mobile computing device. The color communication computer system determines one or more relevant colors from the plurality of color interest messages.The color communication computer system filters the one or more relevant colors based on whether each relevant color can be dispensed using the color constituent products contained within the one or more cartridges installed in the product mixing device communicatively coupled to the mobile computing device. The color communication computer system transmits the filtered one or more relevant colors to the mobile computing device.
[0004] Some embodiments provide a computer system. The computer system includes circuitry for receiving, via the computer system, a plurality of color interest messages from a plurality of mobile computing devices, wherein each color interest message indicates a color of a product; circuitry for receiving, via the computer system, a trend request message from a mobile computing device, wherein the trend request message indicates one or more color constituent products within one or more cartridges installed in a product mixing device communicatively coupled to the mobile device; circuitry for determining, via the computer system, one or more relevant colors from the color interest messages;circuitry for filtering, via the computer system, the one or more relevant colors based on whether each relevant color can be dispensed using the color constituent products within the one or more cartridges installed in the product mixing device communicatively coupled to the mobile computing device; and circuitry for transmitting, via the computer system, the filtered one or more relevant colors to the mobile computing device. ;
[0005] The present invention relates to a system, comprising:
[0006] a plurality of product mixing devices;
[0007] a plurality of mobile computing devices, each computing device mobile being communicatively coupled to a corresponding product mixing device of the plurality of product mixing devices; and
[0008] a computer system for color communication;
[0009] wherein the color communication computer system includes a non-transitory computer-readable medium having computer-executable instructions stored thereon that, in response to their execution by at least one processor of the color communication computer system, cause the color communication computer system to perform actions comprising:
[0010] receiving, by the color communication computer system, a plurality of color interest messages from the plurality of mobile computing devices, wherein each color interest message indicates a color of a product;
[0011] receiving, by the color communication computing system, a trend request message from a mobile computing device, wherein the trend request message indicates one or more color constituent products within one or more cartridges installed in a product mixing device communicatively coupled to the mobile computing device;
[0012] determining, by the color communication computer system, one or more relevant colors from the plurality of color interest messages;
[0013] filtering, by the color communication computer system, the one or more relevant colors based on whether each relevant color can be dispensed using the color constituent products contained within the one or more cartridges installed in the product mixing device communicatively coupled to the mobile computing device; and
[0014] transmitting, by the color communication computer system, the one or more filtered relevant colors to the mobile computing device.
[0015] According to embodiments, the system comprises one or more of the following characteristics: - each message of interest for a color indicates an interested user account;
[0016] wherein the trend request message indicates a requesting user account; and
[0017] wherein determining the one or more relevant colors includes determining the one or more colors indicated by the color interest messages that indicate interested user accounts that are associated with the requesting user account, - determining the one or more relevant colors from the plurality of color interest messages includes:
[0018] determining one or more trending colors by analyzing the frequencies of color interest messages that reference colors over time; and
[0019] the inclusion of one or more trending colors in one or more relevant colors, - each message of interest for a color indicates whether a product having the color has been distributed or not for the interested user account; and
[0020] wherein determining the one or more colors indicated by color interest messages that indicate interested user accounts that are associated with the requesting user account includes filtering the one or more colors to remove colors that have not been distributed for the interested user account, - each message of interest for a color indicates whether or not a product having the color has been distributed for the interested user account, whether or not the color has been saved by the interested user account and whether or not the color has been liked by the interested user account; and
[0021] wherein determining the one or more trending colors by analyzing the frequencies of color interest messages that reference the colors over time includes considering whether or not each color interest message indicates that the color has been distributed, saved, or liked, - the product is a cosmetic product, and / or - the cosmetic product is a lipstick, lip gloss or lip stain,
[0022] The present invention also relates to a computer system, comprising:
[0023] circuitry for receiving, via the computer system, a plurality of color interest messages from a plurality of mobile computing devices, wherein each color interest message indicates a color of a product;
[0024] circuitry for receiving, via the computing system, a trend request message from a mobile computing device, wherein the trend request message indicates one or more color constituent products within one or more cartridges installed in a product mixing device communicatively coupled to the mobile computing device;
[0025] a circuitry for determining, via the computer system, one or more relevant colors from several messages of interest for a color ;
[0026] circuitry for filtering, via the computer system, the one or more relevant colors based on whether each relevant color can be dispensed using color constituent products contained within the one or more cartridges installed in the product mixing device communicatively coupled to the mobile computing device, and
[0027] a circuitry for transmitting, via the computer system, the one or more filtered relevant colors to the mobile computing device.
[0028] According to embodiments, the computer system comprises one or more of the following features: - each message of interest for a color indicates an interested user account;
[0029] wherein the trend request message indicates a requesting user account; and
[0030] wherein determining the one or more relevant colors includes determining the one or more colors indicated by the color interest messages that indicate interested user accounts that are associated with the requesting user account, and - determining the one or more relevant colors from the plurality of color interest messages includes:
[0031] determining one or more trending colors by analyzing the frequencies of color interest messages that reference colors over time; and
[0032] the inclusion of one or more trending colors in one or more relevant colors. Brief description of the drawings
[0033] The foregoing aspects and numerous related advantages of the present invention will be more readily appreciated as they become better understood with reference to the following detailed description, when taken in conjunction with the accompanying drawings, in which:
[0034] [FIG. 1A-B] [Fig.lA] and [Fig.lB] illustrate a non-limiting example embodiment of a product mixing device according to various aspects of the present disclosure.
[0035] [Fig.2] [Fig.2] illustrates a color information communication system customized for distributing customized color products according to various aspects of this disclosure.
[0036] [Fig.3] [Fig.3] is a block diagram illustrating aspects of a non-example limiting embodiment of a color communication computer system according to various aspects of the present disclosure.
[0037] [Fig.4] [Fig.4] is a block diagram illustrating aspects of a non-example limiting embodiment of a mobile computing device according to various aspects of the present disclosure.
[0038] [FIG. 5A-C] [Fig.5A] and [Fig.5C] are a flowchart illustrating a non-limiting exemplary embodiment of a method for improving the reproduction accuracy of shared colors of cosmetic products according to various aspects of the present disclosure.
[0039] [Fig.6] [Fig.6] is an illustration of a non-limiting example of a method of rea ization of a user interface generated by the user interface engine of a mobile computing device according to various aspects of the present disclosure.
[0040] [Fig.7] [Fig.7] illustrates a non-limiting example of an embodiment of a pre representation of one or more relevant colors according to various aspects of the present disclosure.
[0041] [Fig.8] [Fig.8] illustrates a non-limiting example embodiment of a push presentation of color activity information according to various aspects of the present disclosure.
[0042] [Fig.9] [Fig.9] illustrates a non-limiting example of an embodiment of a pre providing a color identifier according to various aspects of the present disclosure.
[0043] [FIG. 10A-C] [Fig. 10A] and [Fig. 10C] are a flowchart that illustrates an exemplary, non-limiting embodiment of a method for accurately reproducing cosmetic product colors from shared presentations in accordance with various aspects of the present disclosure. Detailed description
[0044] [Fig. 1 A] and [Fig. 1B] illustrate a non-limiting example embodiment of a product mixing device according to various aspects of the present disclosure. The illustrated product mixing device 108 is a PERSO(TM) product mixing machine provided by L'Oréal, but other product mixing devices capable of performing the actions described herein may be used as the product mixing device 108 in other embodiments of the present disclosure. The mixing device 108 is configured to dispense products such as cosmetics, including, but not limited to, lipsticks, lip glosses, lip stains, and other cosmetics having customizable colors.
[0045] As shown in the front view of [Fig. 1 A], the product mixing device 108 includes a button 102. The product mixing device 108 receives ainstruction for dispensing the color component products which, when mixed, provide a mixed product having the desired color. The instructions may be transmitted by a paired device such as a first mobile computing device 204, and may include a recipe or other instructions on the amounts of each of the color component products to be dispensed to produce the desired color. Upon receiving such an instruction and pressing the button 102, the product mixing device 108 dispenses the appropriate amounts of each color component product onto a mixing surface 104. [Fig. 1A] shows the color component products 106 dispensed onto the mixing surface 104. In some embodiments, the user then uses a brush or other mixing tool to combine the color component products 106 dispensed onto the mixing surface 104.In some embodiments, the user does not need to press the button 102, and instead, the product mixing device 108 receives an instruction to automatically dispense the color constituent products directly from the first mobile computing device 204.
[0046] [Fig. 1B] illustrates a bottom perspective view of the product mixing device 108 of [Fig. 1A]. In [Fig. 1B], a cover 110 is shown in the open position, in which the cartridges 112a-112c are visible in the partially inserted position. Each cartridge 112a-112c includes a color constituent product having a predetermined color. The user may change one or more of the cartridges 112a-112c to change a spectrum of available colors that the product mixing device 210 can provide. In some embodiments, each cartridge 112a-112c includes a computer-readable identifier (e.g., an RFID tag, a serial number, a 2D or 3D barcode; not shown) that can be read by a reader of the product mixing device 108 and / or a first mobile computing device 204 and / or the color communication computing system 202, as described in more detail below.
[0047] Users of cosmetic products often wish to receive advice on suggested colors and to follow currently popular color trends. With the limited number of pre-made colors that were previously available (and often marketed using identifiable names), following trends or suggestions was as simple as finding the product with the suggested name. The advent of product mixing devices 108 has allowed users to access a large number of different customizable colors for cosmetic products. While this greatly increases the color options available to users, it raises a new problem in that it is no longer simple for a user to receive color suggestions because customizable colors are not marketed with names or defined for the user with detailed recipe information. In addition, differences in lighting, display configurations, and other technical factors make it extremely difficult to communicate a color for a product to be dispensed based on an image or other presentation of the color itself. Techniques are needed that can detect customized color trends and communicate them in such a way that the colors can be duplicated by a receiving product mixing device 108.
[0048] [Fig. 2] illustrates a customized color information communication system for dispensing customized color products according to various aspects of the present disclosure. The system 200 includes a plurality of mobile computing devices (including a first mobile computing device 204 and a second mobile computing device 208). Each of the mobile computing devices is communicatively coupled (e.g., paired via Bluetooth™ or other suitable communication technology) with a corresponding product mixing device. As illustrated, the first mobile computing device 204 is paired with a first product mixing device 210, and the second mobile computing device 208 is paired with a second product mixing device 212.Although only two sets of mobile computing device / product mixing device pairs are illustrated, it will be recognized that many other pairs may be present in the system 200 (including hundreds or thousands of pairs) without departing from the scope of the present disclosure.
[0049] As described above, without additional technical assistance, it would be very difficult for the first mixing device 210 and the second mixing device 212 to produce the same custom color. Therefore, the system 200 includes a color communication computer system 202. The first mobile computing device 204 and the second mobile computing device 208 communicate color information with the color communication computer system 202 via a network 206.
[0050] For example, mobile computing devices may transmit color interest messages that indicate that a user is interested in a given color. As described in more detail below, interest may include a "like" for a displayed color, a "save" for a displayed color, an indication that a color has been dispensed by the associated product mixing device, or any other suitable indication of interest in a color. Mobile computing devices may receive color information from the color communication computing system 202, including, but not limited to, indications of trending colors for which users of other devices Mobile computing users have expressed interest, and recipes for trending colors, colors associated with presentations, or any other type of color information.
[0051] By managing the communication of color information, the color communication computer system 202 provides technical advantages over prior techniques. As discussed above, prior techniques made it very difficult to accurately reproduce custom colors between different product mixing devices. By using the color communication computer system 202 to collect and distribute color information, the system 200 solves these technical problems and improves the fidelity of custom color reproduction between distinct product mixing devices.
[0052] [Fig. 3] is a block diagram illustrating aspects of a non-limiting example embodiment of a color communication computer system according to various aspects of the present disclosure. The illustrated color communication computer system 202 may be implemented on any computing device or set of computing devices, including, but not limited to, a desktop computing device, a portable computing device, a mobile computing device, a server computing device, a computing device of a cloud computing system, and / or combinations thereof.
[0053] In some embodiments, the color communication computer system 202 is configured to receive messages regarding interest in colors to determine trends and transmit information about trending colors to users. In some embodiments, the color communication computer system 202 is also configured to transmit recipes for the colors selected by the users from the trending colors so that the colors can be accurately reproduced by the product mixing devices 108. In some embodiments, the color communication computer system 202 is configured to transmit to the product mixing devices 108 instructions for automatically dispensing products having colors associated with a presentation.
[0054] As illustrated, the color communication computer system 202 includes one or more processors 302, one or more communication interfaces 304, a color data store 308, a user data store 312, a message data store 314, and a computer-readable medium 306.
[0055] In some embodiments, the processors 302 may include any suitable type of general purpose computer processor. In some embodiments, the processors 302 may include one or more computer processors Special purpose or AI accelerators optimized for specific tasks, including but not limited to graphics processing units (GPUs), vision processing units (VPTs), and tensor processing units (TPUs).
[0056] In some embodiments, the communication interfaces 304 include one or more hardware and / or software interfaces adapted to provide communication links between components. The communication interfaces 304 may support one or more wired communication technologies (including, but not limited to, Ethernet, FireWire™, and USB), one or more wireless communication technologies (including, but not limited to, Wi-Fi™, WiMAX™, Bluetooth™, 2G, 3G, 4G, 5G, and LTE), and / or combinations of these technologies.
[0057] As illustrated, the computer-readable medium 306 stores logic that, in response to its execution by one or more processors 302, causes the color communication computer system 202 to provide a user data engine 310, a message collection engine 316, and a trend determination engine 318.
[0058] As used herein, the term "computer-readable medium" means a removable or non-removable device that implements any technology capable of storing information in a volatile or non-volatile manner for reading by a processor of a computing device, including, but not limited to: a hard disk drive; flash memory; a solid-state drive; random access memory (RAM); read-only memory (ROM); a CD-ROM, DVD, or other disk storage; a magnetic cassette; magnetic tape; and magnetic disk storage.
[0059] In some embodiments, the user data engine 310 is configured to store information about users of the system 200 in the user data store 312. This information may include information associated with a given user, including, but not limited to, login information, saved color information, liked color information, privacy settings, notification settings, contact information (including, but not limited to, a network address of an associated first mobile computing device 204), profile pictures, information about the color constituent products of cartridges installed in an associated product mixing device, and / or any other information associated with the given user.This information may also include information that connects users, including other users followed by a given user, and / or other users who follow the given user.
[0060] In some embodiments, the message collection engine 316 is configured to receive messages from mobile computing devices and store related information in the message data store 314. In some embodiments, the messages relate to product colors that have been saved, liked, and / or dispensed by the product mixing devices within the system 200. In some embodiments, the trending engine 318 is configured to examine the information stored in the message data store 314 to determine "trends" (e.g., colors that are more commonly liked, saved, and / or dispensed by users within the system 200 than others).
[0061] A more detailed description of the configuration of each of these constituents is provided below.
[0062] As used herein, the term "engine" refers to the logic embodied in hardware or software instructions, which may be written in one or more programming languages, including, but not limited to, C, C++, C#, COBOL, JAVA™, PHP, Perl, HTML, CSS, JavaScript, VBScript, ASPX, Go, and Python. An engine may be compiled into executable programs or written in interpreted programming languages. Software engines may be called from other engines or from themselves. In general, the engines described herein refer to logic modules that may be merged with other engines or may be divided into sub-engines.Engines may be implemented by logic stored in any type of computer-readable computer storage medium or device and be stored and executed by one or more general-purpose computers, thereby creating a special-purpose computer configured to provide the engine or its functionality. Engines may be implemented by logic programmed in an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other hardware device.
[0063] As used herein, the term "data store" means any suitable device configured to store data for access by a computing device. An example of a data store is a highly reliable and fast relational database management system (DBMS) that runs on one or more computing devices and is accessible over a high-speed network. Another example of a data store is a key-value store. However, any other suitable storage technique and / or device capable of quickly and reliably providing the stored data in response to queries may be used, and the computing device may be accessed locally instead of being connected to a network, or may be provided as a cloud service. A data store may also include data stored in a manner organized on a computer-readable storage medium, such as a hard disk, flash memory, RAM, ROM, or any other type of computer-readable storage medium. One skilled in the art will recognize that separate data stores described herein may be combined into a single data store, and / or that a single data store described herein may be separated into multiple data stores, without departing from the scope of the present disclosure.
[0064] [Fig. 4] is a block diagram that illustrates aspects of a non-limiting example embodiment of a mobile computing device according to various aspects of the present disclosure. Generally, the mobile computing device 402 may be implemented by a smartphone or tablet computing device. However, any other type of computing device that can provide the described functionality, including, but not limited to, a desktop computing device, a portable computing device, a server computing device, a computing device in a cloud computing system, and / or combinations thereof, may be used instead.The mobile computing device 402 is configured to communicate with a product mixing device 108, including, but not limited to, communicating product dispensing instructions to a product mixing device 108, and messages from the product mixing device 108 regarding products that have been dispensed. The mobile computing device 402 is also configured to communicate with the color communication computing system 202 to report color interest information and to receive color information (including, but not limited to, trending color information and / or color information associated with presentations).
[0065] As illustrated, the mobile computing device 402 includes one or more processors 404, one or more communication interfaces 406, a display device 414, and a computer-readable medium 408.
[0066] In some embodiments, the processors 404 may include any suitable type of general purpose computer processor. In some embodiments, the processors 404 may include one or more special purpose computer processors or AI accelerators optimized for specific computing tasks, including, but not limited to, graphics processing units (GPUs), vision processing units (VPTs), and tensor processing units (TPUs).
[0067] In some embodiments, the communication interfaces 406 include one or more hardware and / or software interfaces adapted to provide communication links between components. The communication interfaces 406 may support one or more cable communication technologies (including, but not limited to, Ethernet, FireWire™, and USB), one or more tech wireless communication technologies (including, but not limited to, Wi-Fi™, WiMAX™, Bluetooth™, 2G, 3G, 4G, 5G and LTE), and / or combinations of these technologies.
[0068] In some embodiments, the display device 414 is an LCD display device, an LED display device, an OLED display device, a touchscreen display device, or any other suitable type of display device for use with the first mobile computing device 204 as described below. Although a "display device" for visual presentations is primarily discussed herein, this should not be considered limiting. In some embodiments, the display device 414 may include other technologies for presenting information, including, but not limited to, speakers for presenting audio information and haptic devices for presenting tactile information.
[0069] As shown in the illustration, the computer-readable medium 408 stores logic that, in response to its execution by one or more processors 404, causes the mobile computing device 402 to provide a message processing engine 410 and a user interface engine 412.
[0070] In some embodiments, the message processing engine 410 is configured to receive messages from an associated product mixing device, including information regarding dispensed products and / or color constituent products in cartridges installed in the product mixing device, and to report the information to the color communication computer system 202. In some embodiments, the message processing engine 410 is also configured to receive messages from the color communication computer system 202 and to perform an appropriate action, including, but not limited to, causing a product having a specified color to be automatically dispensed by the product mixing device, presenting a notification regarding a specified color, and / or other actions.In some embodiments, the user interface engine 412 is configured to present user interfaces using the display device 414, including, but not limited to, user interfaces for presenting trends, user interfaces for controlling connections between an associated user and other users, and user interfaces for presenting notifications associated with messages received from the color communication computer system 202.
[0071] A more detailed description of the configuration of each of these constituents is provided below.
[0072] [Fig.5A] and [Fig.5C] are a flowchart that illustrates an example of a mode of non-limiting embodiment of a method for improving the accuracy of reproduction of shared colors of cosmetic products according to various aspects of the present disclosure. In the method 500, relevant colors are determined by the color communication computer system 202 (e.g., trending colors among all users of the system 200, colors distributed by the friend user accounts, trending colors among the friend user accounts, etc.), and are communicated to the mobile computing devices so that the colors can be accurately reproduced using the associated product mixing devices.
[0073] From the start block, the method 500 proceeds to block 502, where a message processing engine 410 of a first mobile computing device 204 determines the identity of one or more cartridges. In some embodiments, an RFID reader of the first mobile computing device 204 may interrogate an RFID tag of each cartridge to obtain a unique identifier of each cartridge. In some embodiments, the first mobile computing device 204 may use a camera to capture an image of a barcode, QR code, or other indicator on each cartridge that encodes a unique identifier of each cartridge.In some embodiments, the first product mixing device 210 may obtain the unique identifier of each cartridge (e.g., by interrogating an RFID tag of each cartridge or via wired communication with each installed cartridge), and the first product mixing device 210 may transmit the unique identifiers to the first mobile computing device 204.
[0074] At block 504, the message processing engine 410 determines the identity of the color constituent products contained in the one or more cartridges. In some embodiments, a record is stored by the color communication computer system 202 in a color data store 308 for each cartridge (including, but not limited to, cartridges 112a-112c) that associates the cartridge's unique identifier with the identity of a color constituent product contained therein.
[0075] At block 506, a user loads the one or more cartridges into a first product mixing device 210. As illustrated in [Fig.lB], the user may open a cover on the first mixing device 210 and insert the one or more cartridges into the first product mixing device 210 for use.
[0076] At block 508, the message processing engine 410 transmits a cartridge information message that includes the identity of the color constituent products to a color communication computer system 202, and at block 510, a user data engine 310 of the color communication computing system 202 stores the identities of the color constituent products in a user data store 312. The user data engine 310 may store the identities of the color constituent products in a user record for a user associated with the first mobile computing device 204.
[0077] In addition to the identities of the color constituent products, the user record may store any other relevant information associated with the user associated with the first mobile computing device 204. For example, the user record may store a first and last name, a user name, contact information, including, but not limited to, an email address and / or phone number, an identifier of the first mobile computing device 204, an identifier of the first product mixing device 210, a profile picture of the user, and / or activity information for the user.The activity information may include, but is not limited to, information relating to colors dispensed by the first mixing device 210 (including one or more of a timestamp of the dispense, an identifier of a recipe for the dispensed colors, and identities of the color constituent products used to dispense the colors), and information relating to colors liked or saved by the user via a user interface generated by the user interface engine 412 (including one or more of a timestamp of the like / save, and an identifier of a recipe for the liked / saved colors).
[0078] At block 512, a user interface engine 412 of the first mobile computing device 204 presents a friend management interface on a display 414 of the first mobile computing device 204, and at block 514, the user interface engine 412 receives indications of associating one or more friend user accounts with a user account for the first mobile computing device 204 via the friend management interface. Any suitable user interface may be used for friend management, which may include searching for potential friend user accounts, and adding and / or removing friend user accounts to be followed by the user account for the first mobile computing device 204.
[0079] The friend management interface may also be used to modify the privacy settings of the user account of the first mobile computing device 204, such as switching from a private mode to a public mode, and / or specifying the types of stored information that are made available to friend user accounts that follow the user account of the first mobile computing device 204. In public mode, one or more features may be enabled, including, but not limited to, searching the user account via a search interface, sharing colors saved in association with the user account with other user accounts, sharing activities (e.g., colors distributed, liked, and / or saved) by the user account with other user accounts, and reporting the activity (e.g., colors distributed, liked, and / or saved) to the color communication computer system 202 for aggregation with activity associated with other user accounts to determine trends. In private mode, one or more of the above features may be disabled, including, but not limited to, hiding the user account and / or activity associated with other user accounts, unless mutual consent is obtained. In some embodiments, the friend management interface may allow individual features to be placed in public or private mode.
[0080] The method 500 then proceeds to a tracking terminal ("Terminal A"). From Terminal A ([Fig.5B]), the method 500 proceeds to block 516, where the user interface engine 412 transmits the one or more friend user accounts to the color communication computing system 202. At block 518, the user data engine 310 records the associations between the first mobile computing device user account 204 and the one or more friend user accounts in the user data store 312. In some embodiments, the associations are stored in the user record for the first mobile computing device user account 204. In some embodiments, separate records are stored for the associations.
[0081] [Fig. 6] is an illustration of a non-limiting example embodiment of a user interface generated by the user interface engine of a mobile computing device according to various aspects of the present disclosure. As illustrated, the first mobile computing device 204 has a user interface that has an activity list area 602 and a profile information area 604. The activity list area 602 includes one or more activities that have been performed by the user associated with the first mobile computing device 204 or related to the user associated with the first mobile computing device 204 (e.g., colors that have been distributed, colors that have been saved, and associations created with friend user accounts).The profile information area 604 displays a user name, a number of associated friend users, a profile picture of the user associated with the first mobile computing device 204, and interface elements for editing the user's information.
[0082] Returning to [Fig.5B], at block 520, a message collection engine 316 of the color communication computer system 202 receives a plurality of color interest messages, and at block 522, the message collection engine 316 stores the plurality of color interest messages in a message store. 314 message data.
[0083] The term "color interest message" is used to refer to various types of messages that indicate a level of interest between an interested user account and a color. One type of color interest message is a message that indicates that a color has been dispensed by a product mixing device associated with the interested user account, or at least that a command to dispense the color has been transmitted to a product mixing device. Another type of color interest message is a message that indicates that a color has been "liked" by the interested user account in a user interface generated by the user interface engine 412. Another type of color interest message is a message that indicates that a color has been "saved" by the interested user account in a user interface generated by the user interface engine 412.Another type of color interest message is a message that indicates that a color has been touched, reviewed by, or interacted with via the user interface by the interested user account without being saved, liked, or distributed. The plurality of color interest messages may be received from a plurality of mobile computing devices and may reflect color interest from a plurality of user accounts (including both friend user accounts and non-friend user accounts connected to the user account associated with the first mobile computing device 204) and colors distributed by a plurality of product mixing devices.
[0084] In some embodiments, the color interest message may include information related to the color and / or the indication of interest. For example, the color interest message may include one or more of a recipe identifier for the color that is linked to a recipe stored in the color data store 308 of the color communication computer system 202, a description of the color in a color space (e.g., a red-green-blue (RGB) color space), identifiers of one or more color constituent products used to dispense the color, a name of the color (which may be from a particular timestamp), a timestamp for the color interest message, an identifier of a collection associated with the color, an occasion type for the color (e.g., work, dinner, clubbing, etc.), a geographic location for the color, and a time of day for the color (e.g., day, night, day and night, etc.).
[0085] At block 524, the user interface engine 412 of the first mobile computing device 204 transmits a trend request message to the color communication computing system 202, and at block 526, a trend determination engine 318 of the color communication computing system 202 determines one or more relevant colors based on the color interest messages stored in the message data store 314.
[0086] How the one or more relevant colors are determined may be based on a trend type indicated by the trend request message. For example, the trend request message may indicate that an overall trend is desired, in which case the trend determination engine 318 may consider all messages of interest for a color in the message data store 314. As another example, the trend request message may indicate that a trend among friends is desired, in which case the trend determination engine 318 may limit its consideration to messages of interest for a color in the message data store 314 that are associated with friend user accounts followed by the requesting user account (i.e., the user account associated with the first mobile computing device 204).As yet another example, the trend request message may indicate that a trend for a particular situation such as a geographic region, time of day, type of occasion, or other type of situation is desired, in which case the trend determination engine 318 may limit its consideration to messages of interest for a color for the desired situation. As yet another example, the trend request message may indicate that a trend for dispensed products is desired, in which case the trend determination engine 318 may limit its consideration to messages of interest for a color that indicate that a color has been dispensed rather than simply saved or liked.
[0087] Once a set of messages of interest relevant to a color is determined, the trend determination engine 318 may determine the relevant colors using any suitable technique. In some embodiments, the trend determination engine 318 may identify the colors most frequently referred to in the messages of interest for a color as the relevant colors. In some embodiments, the trend determination engine 318 may identify the colors most frequently distributed in the messages of interest for a color as the relevant colors.In some embodiments, the trend determination engine 318 may identify the colors most frequently referenced in color interest messages associated with popular user accounts (e.g., user accounts with a high number of followers) as relevant colors. In some embodiments, the trend determination engine 318 may calculate a score for each color interest message that may be used to combine multiple characteristics (e.g., popularity of the associated user account, strength of interest (e.g., distribution being ranked higher). that the record and the record ranked higher than the "like"), whether the associated user account is a friend user account of the user account associated with the first mobile computing device 204, etc.), and can identify the colors having the highest total scores as the relevant colors.
[0088] At block 528, the trending engine 318 filters the one or more relevant colors based on the identities of the color constituent products stored in the user data store 312. In some embodiments, the trending engine 318 may determine whether the color constituent products used to create the color match the color constituent products stored in the user data store 312 (i.e., the color constituent products carried in the cartridges installed in the first product mixing device 108), and may exclude colors for which the color constituent products do not match.In some embodiments, if the color constituent products do not match, the trend determination engine 318 may determine whether an alternative recipe can be used to recreate the color using the color constituent products installed in the first product mixing device 210, and may only exclude the color if no alternative recipe is available.
[0089] In some embodiments, all of the one or more relevant colors may be transmitted to the first mobile computing device 204, and filtering may be performed by the first mobile computing device 204 to avoid presenting colors that cannot be dispensed by the product mixing device 108.In some embodiments, if the trend determination engine 318 determines that one or more relevant colors would be filtered out because they cannot be reproduced using the color constituent products of the cartridges installed in the first product mixing device 108, the trend determination engine 318 may transmit a message to the first mobile computing device 204 to indicate how the cartridges having the corresponding color constituent products can be obtained (e.g., information for ordering the color constituent products from a retailer, etc.).
[0090] At block 530, the trend determination engine 318 transmits the one or more filtered relevant colors to the first mobile computing device 204.
[0091] The method 500 then proceeds to another tracking terminal (“terminal B”). From terminal B ([Fig.5C]), the method 500 proceeds to block 532, where the user interface engine 412 of the first mobile computing device 204 presents the one or more filtered relevant colors. Any suitable technique for presenting the one or more filtered relevant colors may be used, including, but not limited to, presenting a color list showing a list of color names and showing tiles having the relevant one or more colors.
[0092] [Fig. 7] illustrates a non-limiting example embodiment of a presentation of one or more relevant colors according to various aspects of the present disclosure. In [Fig. 7], a global trend area 702 and a friend activity area 704 are shown.
[0093] The global trending area 702 displays tiles of a plurality of relevant colors that have been determined by the trending engine 318 to be trending based on the color interest messages in the message data store 314. Each tile includes a representation of the color itself, as well as a profile picture of a user account associated with the color, a count of times the color has been distributed (as indicated by the color interest messages), and a count of times the color has been saved (as indicated by the color interest messages).
[0094] The friends activity area 704 displays similar information, but for the friends user accounts associated with the user account of the first mobile computing device 204. In some embodiments, the relevant colors for the global trend area 702 and the friends activity area 704 may be retrieved by the user interface engine 412 in separate requests to the trend determination engine 318. In some embodiments, the colors for the friends activity area 704 may be extracted from the relevant colors returned in a global query and presented in the global trend area 702.
[0095] In some embodiments, a more active technique may be used to transmit activity information to the first mobile computing device 204. [Fig. 8] illustrates a non-limiting example embodiment of a push presentation of color activity information according to various aspects of the present disclosure. In [Fig. 8], an activity push notification 802 is presented at the top of the user interface presented by the first mobile computing device 204. Information for generating the activity push notification 802 may be transmitted to the first mobile computing device 204 by the color communication computing system 202 using an application-directed SMS message, an Apple™ Push Notification Service message, or any other suitable type of push notification.The activity push notification 802 may itself provide an indication of the color, may provide a close link to a portion of the user interface that exhibits the color, or may provide any other relevant information.
[0096] Returning to [Fig.5C], at block 534, the user interface engine 412 receives an input indicating a command to distribute a color from the one or more filtered relevant colors. Any suitable technique for entering the command into the user interface may be used, including, but not limited to, a click, a long click, a double click, a click-and-drag, or any other suitable input technique.
[0097] In some embodiments, the color information included with the relevant colors includes an identifier of the color, but not the recipe for the color, and the user interface engine 412 therefore transmits a request to the color communication computing system 202 to retrieve the recipe. This may help improve the reliability of the activity tracking provided by the color communication computing system 202, in that in these embodiments, the first mobile computing device 204 must contact the color communication computing system 202 to retrieve the recipe, which allows the color communication computing system 202 to record the request.This may also help improve the security of the system 200, as the recipe information is not shared with the first mobile computing device 204 until a product having the color is ready to be dispensed, and the recipe information can only be provided to authorized devices.
[0098] Accordingly, at block 536, the user interface engine 412 transmits to the color communication computer system 202 a recipe request for the color. At block 538, the message collection engine 316 of the color communication computer system 202 stores the recipe request as a color interest message in the message data store 314, and at block 540, the message collection engine 316 retrieves the recipe from a color data store 308 and transmits the recipe to the first mobile computing device 204.
[0099] At block 542, the user interface engine 412 of the first mobile computing device 204 transmits to the first product mixing device 108 a command to dispense the color component products according to the recipe, and at block 544, the first product mixing device 108 dispenses the color component products according to the recipe.
[0100] The method 500 then proceeds to an end block and terminates.
[0101] In some embodiments, instead of directly transmitting the command to dispense the product having the color to the first product mixing device 210, the user interface engine 412 may cause an identifier of the color to be presented, so that another device may be used to retrieve the recipe for the color from the color communication computer system 202. for dispensing. [Fig. 9] illustrates a non-limiting example embodiment of a presentation of a color identifier according to various aspects of the present disclosure. As illustrated, instead of transmitting the order directly to the first product mixing device 210, the user interface presents a color identifier 902 in both a human-readable format and a scannable format (e.g., a QR code). The color identifier 902 can then be provided to another device (e.g., a second mobile computing device 208) to retrieve the recipe from the color communication computing system 202 and cause another product mixing device (e.g., a second product mixing device 212) to dispense the product having the color.This embodiment may be particularly useful for a user who has a first mobile computing device 204 but does not have a first product mixing device 210, and who may visit a retailer that has a second mobile computing device 208 and a second product mixing device 212 available for public use.
[0102] In addition to enabling the highly accurate recreation of custom colors that are trending among a group of users, the color communication computer system 202 also enables the highly accurate recreation of specific custom colors on demand. With this functionality, the creation of specific custom colors can be synchronized to coincide with a presentation that uses the custom colors. For example, a presenter user may record a video or produce a live stream related to the use of a specific custom color, and the color communication computer system 202 may enable one or more viewer users to synchronize their product mixing device to generate the specific custom color with the recorded video or live stream.
[0103] [Fig. 10A] and [Fig. 10C] are a flowchart that illustrates a non-limiting exemplary embodiment of a method for accurately reproducing cosmetic product colors from shared presentations according to various aspects of the present disclosure. In method 1000, a notification that a second product mixing device 212 used by a presenter is dispensing a product having a color is transmitted to a first mobile computing device 204 associated with a first product mixing device 210, thereby enabling the first product mixing device 210 to operate in synchronization with the second product mixing device 212 and thereby enabling a user of the first product mixing device 210 to follow the presentation with highly accurate reproduction of the color used in the presentation.
[0104] From a start block, the method 1000 proceeds to block 1002, in which a A first product mixing device 210 is loaded with one or more cartridges 112a-112c, each cartridge comprising a color constituent product. At block 1004, the first product mixing device 210 interrogates the one or more cartridges 112a-112c to determine the identities of the color constituent products. At block 1006, the first product mixing device 210 transmits a cartridge information message to a first mobile computing device 204, wherein the cartridge information message includes the identities of the color constituent products. At block 1008, the message processing engine 410 transmits the cartridge information message to a color communication computer system 202. At block 1010, a user data engine 310 of the color communication computer system 202 stores the identities of the color constituent products in a user data store 312.The actions of method 1000 from block 1002 to block 1010 are the same as those of method 500 from block 502 to block 510 and are therefore not described herein again for the sake of brevity. Further, in some embodiments, similar actions for determining and transmitting indications to the color communication computer system 202 of the color constituent products installed in the second product mixing device 212 to be used in the presentation may also occur.
[0105] At block 1012, the user interface engine 412 receives an input indicating a command to be synchronized with a presentation associated with a second product mixing device 108. In some embodiments, the user interface engine 412 may present a list of presentations that may be synchronized, and the input may be received via the presented list. In some embodiments, the user interface engine 412 may present a notification indicating that a presentation is beginning, and interacting with the notification may be the input indicating the command to be synchronized.
[0106] The method 1000 then proceeds to a continuation terminal ("Terminal C"). From Terminal C ([Fig. 10B]), the method 1000 proceeds to block 1014, where the user data engine 310 of the color communication computer system 202 determines whether the identities of the color constituent products of the first product mixing device 210 are compatible with the color constituent products of the second product mixing device 212. As discussed above with respect to the filtering of relevant colors in block 528, the user data engine 310 may check whether the same color constituent products are installed in the first product mixing device 210 and the second product mixing device 212, or if they are different, may check whether other recipes can be used with the color constituent products installed in the first product mixing device 210 to generate the relevant colors.
[0107] The method 1000 then proceeds to decision block 1016. If, upon determination at block 1014, it is found that the color constituent products of the first product mixing device 210 are not compatible with the color constituent products of the second product mixing device 212, then the result of decision block 1016 is NO and the method 1000 proceeds to block 1018. At block 1018, the user data engine 310 of the color communication computing system 202 transmits an incompatibility notification to the first mobile computing device 204, and at block 1020, the user interface engine 412 presents an incompatibility error message on a display 414 of the first mobile computing device 204.Any type of suitable error message may be presented, including, but not limited to, a warning message, an instruction to replace the cartridges with compatible cartridges before continuing, etc. The method 1000 then proceeds to an end block and terminates, and may restart from the beginning upon detecting a replacement of the cartridges in the first product mixing device 210.
[0108] Returning to decision block 1016, if the determination of block 1014 revealed that the color constituent products of the first product mixing device 210 are compatible with the color constituent products of the second product mixing device 212, then the result of decision block 1016 is YES and the method 1000 proceeds to block 1022.
[0109] At block 1022, the user data engine 310 stores a record of the synchronization of the first product mixing device 210 to the second product mixing device 212 in the user data store 312. In some embodiments, the record may identify the user account associated with the first mobile computing device 204. In some embodiments, the record may include a network address or include other contact information that may be used to transmit push notifications or other messages to the first mobile computing device 204.
[0110] At block 1024, the first mobile computing device 204 presents a video associated with the presentation. In some embodiments, the video may be a recorded video. In some embodiments, the video may be a live stream. In some embodiments, the video may be presented in the user interface generated by the user interface engine 412. In some embodiments, the video may be presented by another application (e.g., a video streaming application such as YouTube™, Tik Tok™, Instagram™, etc.) while the message processing engine 410 remains available in the background to process incoming messages from the communication computing system. colors 202.
[0111] At block 1026, the second product mixing device 212 dispenses a product having a color and causes a message to be transmitted to the color communication computing system 202 indicating that the product having the color has been dispensed by the second product mixing device 212. In some embodiments, the second product mixing device 212 transmits the message to the second mobile computing device 208, and the second mobile computing device 208 in turn transmits the message to the color communication computing system 202. In some embodiments, the second mobile computing device 208 may transmit a dispensing command to the second product mixing device 212 and may then transmit the message to the color communication computing system 202 without receiving another communication from the second product mixing device 212.
[0112] The method 1000 then proceeds to another tracking terminal ("terminal D"). From terminal D ([Fig. 10C]), the method 1000 proceeds to block 1028, where the message collection engine 316 of the color communication computing system 202 transmits a distribution message to the first mobile computing device 204 indicating that the second product mixing device 212 has distributed the product having the color based on the synchronization record. In some embodiments, the message collection engine 316 may examine the synchronization records stored in the user data store 312 and may transmit the distribution messages to all relevant devices, including, but not limited to, the first mobile computing device 204.
[0113] At block 1030, the message processing engine 410 of the first mobile computing device 204 transmits to the first product mixing device 210 a command to automatically dispense the product having the color in response to receiving the dispense message, without having received user input after receiving the dispense message to cause transmission of the command, and at block 1032, the first product mixing device 210 dispenses the product having the color. In some embodiments, confirmation of dispensing the product having the color may be provided to the first product mixing device 210 via the button 102, even if no user input is provided to the first mobile computing device 204.In other embodiments, no confirmation of dispensing the product is received after receiving the dispensing message on either the first mobile computing device 204 or the first product mixing device 210 prior to automatically dispensing the product having the color.
[0114] In some embodiments, wherein the video is a live stream, the color communication computer system 202 may transmit the dispensing messages to the synchronized mobile computing devices in real time. Namely, the time between when the message indicating that the product has been dispensed is transmitted at block 1026 and when the dispensing message is received by the first mobile computing device 204 is short enough that the dispensing message appears to be received by the first mobile computing device 204 in coordination with the dispensing of the product by the second product mixing device 212, which may be visible in the live stream.This real-time communication results in the first product mixing device 210 and the second product mixing device 212 being able to simultaneously dispense the product having the color, thereby enabling the user of the first product mixing device 210 and the first mobile computing device 204 to follow the live stream and use the product having the color according to the instructions of the live stream.
[0115] In some embodiments, in which the video is a recording, the dispensing messages may include timestamps, time codes, or other indications of points in the recorded video when the product is to be dispensed. Accordingly, the first mobile computing device 204 may receive the dispensing messages and wait for appropriate times during playback of the recorded video to transmit the commands to the first product blending device 210.
[0116] The method 1000 then proceeds to an end block and terminates.
[0117] Although illustrative embodiments have been illustrated and described, it will be appreciated that various changes may be made therein without departing from the spirit and scope of the invention.
Claims
1. Claims System, comprising: a plurality of product mixing devices; a plurality of mobile computing devices, each mobile computing device communicatively coupled to a corresponding product mixing device of the plurality of product mixing devices; and a computer system for color communication; wherein the color communication computer system includes a non-transitory computer-readable medium having computer-executable instructions stored thereon that, in response to their execution by at least one processor of the color communication computer system, cause the color communication computer system to perform actions including: receiving, by the color communication computer system, a plurality of color interest messages from the plurality of mobile computing devices, wherein each color interest message indicates a color of a product;receiving, by the color communication computing system, a trend request message from a mobile computing device, wherein the trend request message indicates one or more color constituent products within one or more cartridges installed in a product mixing device communicatively coupled to the mobile computing device; determining, by the color communication computer system, one or more relevant colors from the plurality of color interest messages; filtering, by the color communication computer system, the one or more relevant colors based on whether each relevant color can be dispensed using the color constituent products contained within the one or more cartridges installed in the product mixing device communicatively coupled to the mobile computing device; and transmitting, by the color communication computer system, the filtered one or more relevant colors to the mobile computing device.
2. The system of claim 1, wherein each color interest message indicates an interested user account; wherein the trend request message indicates a requesting user account; and wherein determining the one or more relevant colors includes determining which one or more colors indicated by the color interest messages indicate interested user accounts that are associated with the requesting user account.
3. The system of claim 1, wherein determining the one or more relevant colors from the plurality of color interest messages includes: determining one or more trending colors by analyzing the frequencies of color interest messages that reference the colors over time; and including one or more trending colors in one or more relevant colors.
4. The system of claim 3, wherein each color interest message indicates whether or not a product having the color has been distributed to the interested user account; and wherein determining which one or more colors indicated by color interest messages indicate interested user accounts that are associated with the requesting user account includes filtering the one or more colors to remove colors that have not been distributed to the interested user account.
5. The system of claim 3, wherein each color interest message indicates whether or not a product having the color has been distributed to the interested user account, whether or not the color has been saved by the interested user account, and whether or not the color has been liked by the interested user account; and wherein determining the one or more trending colors by analyzing the frequencies of color interest messages that refer to the colors over time includes considering whether or not each color interest message indicates that the color has been distributed, saved, or liked.
6. The system of claim 3, wherein the product is a cosmetic product.
7. The system of claim 6, wherein the cosmetic product is a lipstick, lip gloss or lip stain.
8. A computer system, comprising: circuitry for receiving, via the computer system, a plurality of color interest messages from a plurality of mobile computing devices, wherein each color interest message indicates a color of a product; circuitry for receiving, via the computer system, a trend request message from a mobile computing device, wherein the trend request message indicates one or more color constituent products within one or more cartridges installed in a product mixing device communicatively coupled to the mobile computing device; circuitry for determining, via the computer system, one or more relevant colors from the plurality of color interest messages;circuitry for filtering, via the computer system, the one or more relevant colors based on whether each relevant color can be dispensed using color constituent products contained within the one or more cartridges installed in the product mixing device communicatively coupled to the mobile computing device, and circuitry for transmitting, via the computer system, the filtered one or more relevant colors to the mobile computing device.;
9. The computer system of claim 8, wherein each color interest message indicates an interested user account; wherein the trend request message indicates a requesting user account; and wherein determining the one or more relevant colors includes determining which one or more colors indicated by the color interest messages indicate interested user accounts that are associated with the requesting user account.
10. The computer system of claim 8, wherein determining the one or more relevant colors from the plurality of color interest messages includes: determining one or more trending colors by analyzing the frequencies of color interest messages that reference colors over time; and the inclusion of one or more trending colors in one or more relevant colors.