Systems and methods for color coordination and computer-readable media
By analyzing the pixel groups of social media images and matching paint colors, consumers' difficulties in choosing interior paint colors are solved, and fast and accurate paint selection is achieved.
Patent Information
- Application Number
- CN202311298788.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2018-06-08
- Filing Date
- 2018-06-14
- Publication Date
- 2025-07-01
- Estimated Expiration
- 2038-06-14
AI Technical Summary
Consumers have difficulties in choosing interior paint colors, and existing systems have difficulty quickly and accurately determining paint colors that match the main colors in social media images.
By analyzing images on social media platforms, dividing pixel groups and determining the main color at different sampling rates, matching the closest paint color, and displaying the color name and code.
Provides fast and accurate paint color selection, simplifying the paint process and reducing the risk of user selection errors.
Smart Images

Figure CN117274644B_ABST
Abstract
Description
[0001] This application is a divisional application. The filing date of the original application is June 14, 2018, the application number is 201810614644.8, and the invention title is "System and Method for Color Selection and Computer Readable Medium" (the original application claims the benefit of U.S. Provisional Application No. 62 / 519,657, filed on June 14, 2017). Technical Field
[0002] The present invention relates to analyzing colors from social media platforms, and more particularly, to color selection based on colors retrieved from analyzed images on social media platforms. Background Art
[0003] This section provides background information that is not necessarily prior art related to the present invention.
[0004] Due to the desire for change, consumers often start a new painting project. This usually stems from the desire for a fresh start, the desire to change the feel of a room, boredom with the old look, or seeing interiors elsewhere, such as in model home tours, friends' houses, magazine photos, etc.
[0005] The home painting process usually begins with color selection, which can be an emotional part of the process. Many consumers are concerned about making mistakes during the color selection process. Therefore, the color selection process can take several months to several years to complete when a user decides on a color.
[0006] Current systems for color selection allow consumers to electronically browse and select specific colors using, for example, self-service kiosks, websites, web applications, mobile applications, etc. For example, a color selection and coordination system described in U.S. Patent No. 7,230,629, titled "Data-driven color coordinator," which allows a user to select a starting color and provides coordinating colors for the starting color, is incorporated herein by reference. For another example, an automated method and apparatus for providing color selection capabilities described in U.S. Patent No. 9,530,163, titled "Automated Color Selection Method and Apparatus," is also incorporated herein by reference. Summary of the Invention
[0007] This section provides a general overview of the present invention and is not an exhaustive disclosure of its full scope or all of its features.
[0008] The present invention provides a system for color coordination, comprising:
[0009] A network server configured to store computer-executable instructions and transmit the computer-executable instructions to a user device, wherein the computer-executable instructions, when executed by the user device, configure the user device to:
[0010] Access a social media platform;
[0011] Retrieve a plurality of images from the social media platform;
[0012] Determine a dominant color of each of the plurality of images by: dividing the image into a plurality of pixel groups; analyzing pixels in each pixel group at different sampling rates based on the proximity of the pixel group to the center of the image, wherein pixel groups closer to the center of the image have a higher sampling rate; and determining the dominant color of the image based on the pixels analyzed in each pixel group;
[0013] Determine a paint color that most closely matches the dominant color of each image; and
[0014] Display at least one of a color name and a color code associated with the paint color that most closely matches the dominant color of each image.
[0015] In another form, the present invention provides a method for color coordination, comprising:
[0016] Using a network server to store computer-executable instructions;
[0017] Using the network server to transmit the computer-executable instructions to a user device, wherein the computer-executable instructions, when executed by the user device, configure the user device to:
[0018] Access a social media platform;
[0019] Retrieve a plurality of images from the social media platform;
[0020] Determine a dominant color of each of the plurality of images by: dividing the image into a plurality of pixel groups; analyzing pixels in each pixel group at different sampling rates based on the proximity of the pixel group to the center of the image, wherein pixel groups closer to the center of the image have a higher sampling rate; and determining the dominant color of the image based on the pixels analyzed in each pixel group;
[0021] Determine a paint color that most closely matches the dominant color of each image; and
[0022] Display at least one of a color name and a color code associated with the paint color that most closely matches the dominant color of each image.
[0023] In another form, the present invention provides a non-transitory computer-readable medium storing computer-executable instructions that, when executed by a processor of a computing device, configure the computing device to:
[0024] Receive an image;
[0025] Determine a dominant color of the image by: dividing the image into a plurality of pixel groups; analyzing pixels in each pixel group at different sampling rates based on the proximity of the pixel group to the center of the image, wherein pixel groups closer to the center of the image have a higher sampling rate; and determining the dominant color of the image based on the pixels analyzed in each pixel group;
[0026] Determine a paint color that most closely matches the dominant color of the image; and
[0027] Display at least one of a color name and a color code associated with the paint color that most closely matches the dominant color of the image.
[0028] In another form, the present invention provides a method for color coordination, including:
[0029] Receiving an image using a computing device;
[0030] Determining a dominant color of the image using the computing device by: dividing the image into a plurality of pixel groups; analyzing pixels in each pixel group at different sampling rates based on the proximity of the pixel group to the center of the image, wherein pixel groups closer to the center of the image have a higher sampling rate; and determining the dominant color of the image based on the pixels analyzed in each pixel group;
[0031] Determining a paint color that most closely matches the dominant color of the image using the computing device; and
[0032] Displaying at least one of a color name and a color code associated with the paint color that most closely matches the dominant color of the image using the computing device.
[0033] In another form, the present invention provides a system for color coordination, including:
[0034] A computing device including a non-transitory computer-readable medium storing computer-executable instructions that, when executed by a processor of the computing device, configure the computing device to:
[0035] Receive an image;
[0036] The dominant color of the image is determined by: dividing the image into a plurality of pixel groups; analyzing the pixels in each pixel group at different sampling rates based on the proximity of the pixel group to the center of the image, wherein pixel groups closer to the center of the image have a higher sampling rate; and determining the dominant color of the image based on the pixels analyzed in each pixel group;
[0037] Determine the paint color that most closely matches the dominant color of the image; and
[0038] Display at least one of the color name and color code associated with the paint color that most closely matches the dominant color of the image.
[0039] Other applications will become apparent from the description provided herein. The description and specific examples in this summary are intended for illustrative purposes only and are not intended to limit the scope of the invention. BRIEF DESCRIPTION OF THE DRAWINGS
[0040] The figures described herein are for illustrative purposes only of selected embodiments and not all possible implementations, and are not intended to limit the scope of the invention.
[0041] Figure 1 is a block diagram of a system for analyzing colors from a social media platform according to the present invention.
[0042] Figure 2 is a block diagram of another system for analyzing colors from a social media platform according to the present invention.
[0043] Figure 3 is a screenshot of a system for analyzing colors from a social media platform according to the present invention.
[0044] Figure 4 is a screenshot of a system for analyzing colors from a social media platform according to the present invention.
[0045] Figure 5 is a screenshot of a system for analyzing colors from a social media platform according to the present invention.
[0046] Figure 6 is a screenshot of a system for analyzing colors from a social media platform according to the present invention.
[0047] Figure 7 is a screenshot of a system for analyzing colors from a social media platform according to the present invention.
[0048] Figure 8 is a screenshot of a system for analyzing colors from a social media platform according to the present invention.
[0049] Figure 9 A screenshot of a system for analyzing colors from a social media platform according to the present invention.
[0050] Figure 10 A screenshot of a system for analyzing colors from a social media platform according to the present invention.
[0051] Figure 11 A screenshot of a system for analyzing colors from a social media platform according to the present invention.
[0052] Figure 12 A flowchart of a method for analyzing colors from a social media platform according to the present invention.
[0053] Figure 13 A block diagram of an image analysis system according to the present invention.
[0054] Figure 14 A diagram showing the analysis of image pixels by an image analysis system according to the present invention.
[0055] Figure 15 A flowchart of a method for analyzing an image according to the present invention.
[0056] Corresponding reference numerals always indicate corresponding parts in several views of the drawings. Detailed Description
[0057] Example embodiments will now be described more fully with reference to the accompanying drawings.
[0058] The present invention includes systems and methods for analyzing colors in images retrieved from social media platforms. For example, a social media platform can include a platform for uploading, saving, classifying, processing, and sharing images and / or image collections. For example, a user can browse images uploaded by other users and can tag, bookmark, or save an image or image collection, which can later be retrieved and viewed in the user's own area of the social media platform. For example, a social media platform can be implemented via a mobile application, a website, and / or a web application. For example, a social media platform can be the Pinterest Corporation's currently available at www.pinterest.com and via a mobile application Social media platform. The systems and methods of the present invention can then analyze images stored in the user's own area of the social media platform and present one or more dominant colors from each image. Specifically, for each of the dominant colors determined for each image in the images, the systems and methods of the present invention can determine the closest matching paint color associated with each of the dominant colors and can present information associated with each of the closest matching paint colors to the user, such as, paint color name and identification code.
[0059] After determining the paint colors, the systems and methods of the present invention can provide coordinating colors or coordinating color palettes for each of the paint colors. The systems and methods of the present invention can be integrated with other color coordination systems and methods that allow users to view specific paint colors in a simulated environment. For example, color coordination systems and methods that enable users to view specific colors in a simulated environment are described in U.S. Patent 7,230,629 titled "Data-driven color coordinator", which is incorporated herein by reference. The systems and methods of the present invention can also enable users to order samples of specific paint colors and save information associated with the specific paint colors, such as, color name and identification code, on a server for the user to retrieve later.
[0060] Furthermore, after determining or selecting a specific paint color, coordinating paint colors, and / or coordinating paint palettes, the systems and methods of the present invention can generate an image having the specific paint color, coordinating paint colors, and / or coordinating paint palettes, which can be uploaded and saved to the user area of the social platform and shared with other users of the social media platform.
[0061] In this way, users can browse images within the social media platform to seek color inspiration for painting projects. Users can then easily convert the dominant colors from a specific image retrieved from the social media platform into paint colors and can view the associated coordinating colors. Thus, the systems and methods of the present invention can assist users in quickly determining the paint colors for painting projects.
[0062] Reference Figure 1 , shows a block diagram of a system 10 for analyzing colors from a social media platform according to the present invention. System 10 includes a social media server 12 and a mobile device 14 that communicate via a network 16. The social media server 12 can be configured with one or more processors and a memory for storing content such as images. The network 16 can be a local area network (LAN) or a wide area network (WAN), such as the Internet. The social media server 12 includes a network communication module to communicate with the mobile device 14 via the network 16.
[0063] The social media server 12 may host a social media platform for uploading, saving, classifying, processing, and sharing images and / or image collections. For example, the social media server 12 may host a social media platform. In an instance of the social media platform, an image is referred to as a "pin". The image or pin is then saved to the user's "pinboard" or "board". Users can browse each other's boards and save specific images to their own boards. In this way, users can save interesting, inspiring, and / or specific images or pins that show a particular color of interest to the user's own board or area in the social media platform. Thus, users can accumulate a collection of images or pins in the user's own board or area in the social media platform.
[0064] The system and method of the present invention may be implemented through a mobile application. For example, the mobile device 14 may be a smart phone or a tablet computer device configured with a processor, a memory, and / or an input / output device (such as a touch screen). The mobile device 14 includes a network communication module to communicate with the social media server 12 through the network 16. The system and method of the present invention may be implemented through a mobile application installed on the mobile device 14.
[0065] Additionally or alternatively, the system and method of the present invention may be implemented using a web page and / or a web application. For example, referring to Figure 2 , a block diagram of another system 11 for analyzing colors from a social media platform according to the present invention is shown. In Figure 2 , the user device 15 communicates with the social media server 12 and the web server 18. The web server 12 may be configured with one or more processors and a memory storing content (such as a web page in hypertext markup language (HTML)), which can be accessed by the user device 15 through a web browser navigating to a website associated with the web server. For another example, the color selection system 11 may be implemented within a web application, whereby the web server 18 provides the code of the web application to the user device 15, and the web application runs in the web browser of the user device 15. Additionally or alternatively, the system 11 according to the present invention may be implemented through a stand-alone application running on the user device 15 outside the browser, while communicating with the web server 18 and the social media server 12. The social media server 12 and the web server 18 each include a network communication module to communicate with the user device 15 through the network 16.
[0066] The user device 15 is a computing device having input devices such as a keyboard and a mouse, and a display device such as a display screen. Additionally or alternatively, the user device 15 may include a touch screen device that receives both user input and displays output. The user device 15 includes one or more processors and a memory. The memory of the user device 15 may store code for a web browser that accesses and retrieves content from a website (e.g., a website associated with the web server 18). The memory of the user device 15 may also store code for a mobile application that provides the functionality of the color selection system and method of the present application. The user device 15 may include a personal computer, a laptop computer, a tablet computer, and / or a mobile device that utilizes a web browser, e.g., a smart phone. The user device 15 includes a network communication module to communicate with the social media server 12 and the web server 18 via the network 16.
[0067] Although examples of the system and method of the present invention are described with reference to a mobile application of a mobile device 14 such as a smart phone or a tablet computer device as shown, the system and method of the present invention can be similarly implemented by a website or a web application running in a web browser of the user device 15 as shown. Figure 1 Although examples of the system and method of the present invention are described with reference to a mobile application of a mobile device 14 such as a smart phone or a tablet computer device as shown, the system and method of the present invention can be similarly implemented by a website or a web application running in a web browser of the user device 15 as shown. Figure 2 Although examples of the system and method of the present invention are described with reference to a mobile application of a mobile device 14 such as a smart phone or a tablet computer device as shown, the system and method of the present invention can be similarly implemented by a website or a web application running in a web browser of the user device 15 as shown.
[0068] Reference Figure 3 , a screenshot of the first page 30 of a mobile application for implementing the system 10 according to the present invention is shown. The first page 30 includes a button 32 for logging in to the mobile application. The mobile application of the present invention can be integrated with a social media platform through an application programming interface or API available for the social media platform. For example, as discussed, the social media platform may include a social media platform, and the mobile application of the present invention can use the API to integrate with the social media platform. For example, a user of the mobile application of the present invention can log in to the mobile application using the user login and password of the social media platform (e.g., a social media platform). The mobile application can then use the API of the social media platform (e.g., the API) to access the content saved by the user on the social media platform. For example, in an instance of a social media platform, the mobile application can use the API to access and retrieve the pushpins or images saved by the user on the user's board. After the user clicks the login button 32, the second page 40 ( Figure 4 as shown) is displayed on the display of the mobile device 14.
[0069] ReferenceFigure 4 Page 40 contains multiple options that enable a user to log in. For example, the user can log in using a login associated with the user's account. Additionally or alternatively, the user can log in using a login associated with the user's account. Additionally or alternatively, the user can log in via an email or phone number and a password. After the user logs in, the mobile application can access and display content from the user's area on the social media platform.
[0070] For example, as Figure 5 shown, the mobile application can display Page 50, which contains a collection of images retrieved from the user's area on the social media platform. For example, taking the social media platform as an example, the mobile application can retrieve boards or collections of images that have been saved by the user or that the user is following. In the Figure 5 instance of Page 50 shown, the user has selected two boards 52, 54. The first board 52 is titled "Modern Architecture" and contains nine pins or images. The second board 54 is titled "Mid-Century Modern Furniture" and contains 13 pins or images. After the user has selected one or more boards, the user presses the "Continue" button 56 and Page 60 ( Figure 6 shown) is displayed on the display of the mobile device 14.
[0071] Referring to Figure 6 , Page 60 prompts the user to select individual images or pins from the boards selected in the previous step. For example, Page 60 contains a strip 62 that can be swiped left and / or right to view different boards selected in the previous step. In the Figure 6 instance, the Modern Architecture board is selected and individual pins or images saved within the board are displayed below the strip 62. The user can then select individual images or pins from each board. In the Figure 6 instance, the user has selected a first image 64 and a second image 66 from the Modern Architecture board. The user can select a maximum of a predetermined number of pins or images. For example, the mobile application may limit the user to selecting a maximum of six pins or images. After the user has selected the desired pins or images, the user can press the "Form Palette" button 68. After the user presses the "Form Palette" button 68, Page 70 (as Figure 7 shown) is displayed on the display of the mobile device 14.
[0072] Referring to Figure 7 , Page 70 displays the colors associated with each image or pin selected in the previous step. As will be discussed in further detail below with respect to the image analysis tool, the mobile application can analyze the pixels in each image or pin and select the dominant color associated with each image or pin. As inFigure 7 As shown in the example of, a thumbnail bar 72 is shown across the top of the fifth page 70, and this thumbnail bar shows thumbnail versions of each image or pin selected in the previous step. Additionally, two rows 74, 76 are shown below the thumbnail bar 72. The top row 74 shows three colors associated with the leftmost thumbnail image in the thumbnail bar 72. The bottom row 76 shows three colors associated with the rightmost thumbnail image in the thumbnail bar 72. The fifth page 70 also provides the user with the option to click on a color to modify or explore that color. The fifth page 70 also provides the user with the option to click on the "Spray Your Location" button 77 to enable the user to view one or more of the colors in a simulated environment. The fifth page 70 also provides the user with the option of a "Save to Pinterest" button that saves the collection of colors in the image, which is subsequently saved to the user's board or area on a social media platform (e.g., social media platform). The fifth page 70 also provides the user with the option of a "Get Samples" button that enables the user to order paint samples of one or more of the colors shown in the first row 74 and the second row 76. When the user clicks on a specific color, the sixth page 80 (as Figure 8 shown) is displayed on the display of the mobile device 14.
[0073] Refer to Figure 8 , the sixth page 80 shows a specific color 81 selected from the individual colors presented in the previous step. In Figure 8 's example, an enlarged square of the specific color 81 is shown in the central area of the sixth page 80, while a color bar 82 shows all six individual colors from the previous step. The selected specific color is highlighted in the color bar 82 by being surrounded by a darker circle to indicate that this color is the currently selected color. The name of the specific color 81 is shown below the specific color 81. In Figure 8 's case, the name of the specific color 81 is "Underground Garden" and the identification code associated with the color is N420 - 4. Additionally, the sixth page 80 shows a coordinated color palette 85 for the specific color. For example, each color palette of the coordinated color palette 85 shows the specific color and one or more coordinated colors of the specific color. Although Figure 8 shows four coordinated color palettes 85, the user can retrieve additional coordinated color palettes 85 by using the arrow buttons to scroll left or right. As further shown in Figure 8 , a delete button 84 is provided to allow the user to delete a specific color from the group of colors shown in the color bar 82. As further shown in Figure 8 , an edit button 83 is provided to enable the user to select a different color from the pin or image associated with the specific color. After the user clicks on the edit button 83, the seventh page 90 ( Figure 9as shown in [FIGURE] is displayed on the display of the mobile device 14.
[0074] Refer to Figure 9 , page 90 shows a specific pushpin or image 92 associated with a specific color 81 from the previous step. A smaller rectangle of the specific color 93 from the previous step is shown below the specific pushpin or image 92. Additionally, a color selection tool 94 appears in the specific pushpin or image 92 at the initial position corresponding to one or more pixels that correspond to the specific color. The user can then drag the color selection tool 94 to other positions within the specific pushpin or image 92 to view other colors within the pushpin or image 92. For example, after the color selection tool 94 is moved to another position within the specific pushpin or image 92, the specific color 93 is updated to another color that is the paint color that most closely matches the color in the specific pushpin or image 92 at the position indicated by the color selection tool 94. For example, the mobile device 14 can access a paint color database and can search the paint color database to find the closest matching paint color for the selected color in the specific pushpin or image 92 at the position indicated by the color selection tool 94 by comparing the color values of the selected color, e.g., RGB (red, green, blue) color values, CMYK (cyan, magenta, yellow, and key / black) color values, and / or CIE XYZ color values, with the color values of the individual paint colors in the paint color database. For example, systems and methods for determining the closest matching paint color for a specific color are described in co-owned U.S. Patent No. 9,928,543, titled "Data-Driven Color Coordinator," issued on March 27, 2018, the entire disclosure of which is incorporated herein by reference. The paint color database can be stored on the mobile device 14 or can be stored remotely such that the mobile device 14 can access the paint color database via communication over the network 16. After the user has selected a new color from the specific pushpin or image 92, the user can then click the save button 95 to save the new color to the color group selected from the previous step in place of the originally provided color. Alternatively, the user can click the cancel button to cancel the current editing process. Additionally, a thumbnail strip 97 is shown above the specific pushpin or image 92. The user can click on different pushpins or images from the thumbnail strip and similarly edit the colors associated with the pushpin or image.
[0075] Return to Figure 7 , after the user is satisfied with the color group, the user can select the "Save to Pinterest" button to save an image of the color group to the user's area on the social media platform. For example, the user can save an image of the color group to Specific board within a social media platform. After the user clicks the "Save to Pinterest" button 78, the eighth page 100 (as Figure 10 shown) is displayed on the display of the mobile device 14.
[0076] Refer to Figure 10 , the eighth page 100 displays images 102 from the color group of the previous step. The eighth page also prompts the user to select a specific board or color group from the social media platform. For example, the user can select Figure 10 the Modern Architecture board 103 shown in Figure 11 . After the user selects a specific board, the ninth page 110 (as
[0077] Refer to Figure 11 shown) is displayed on the display of the mobile device 14. Figure 6 The ninth page 110 shows images 102 of the color group on the board selected in the previous step, for example, the Modern Architecture board. At this point, the mobile application returns to
[0078] Refer to Figure 12 the fourth page 60 shown in Figure 5 and prompts the user to select individual images to form a color palette. Figure 6 Refer to
[0079] shown in Figure 7 and Figures 13 to 15 below for a flowchart of a method 1200 according to the present invention. The method 1200 can be executed by the mobile device 14 or a tablet computer and starts at 1202. At 1204, as described in detail above with reference to
[0080] shown in Figure 7 and Figure 8 a specific board or group of images is received from a social media platform. At 1206, as discussed in detail above with reference to Figure 8 shown in
[0081] a specific image or pin is selected from the selected board. Figure 8 At 1208, as described in detail above with reference to Figure 7 and Figure 7 shown in Figure 10 and Figure 11Discuss in detail saving an image of the color to a social media platform; and (4) ordering a sample of the color, as referenced above Figure 7 Discuss in detail. At 1216, as discussed in detail with reference to the annotated figure above, implement the selected option. At 1218, method 1200 ends.
[0082] In this way, the system and method of the present invention enable a user to quickly and effectively retrieve and view colors from images saved and shared on a social media platform, and specifically, the corresponding paint colors associated with the colors from the social media platform.
[0083] The system and method for analyzing colors in images retrieved from a social media platform can additionally track specific images selected by individual users to analyze the types of images that users find helpful or inspiring when selecting paint colors, which can assist in determining the types of images to be marketed to users. For example, after a user selects a specific image, the mobile device 14 or an additional server communicating with the mobile device 14 can utilize an image analysis tool to determine the content of the image and identify individual objects within the specific image. For example, the mobile device 14 or an additional server communicating with the mobile device 14 can utilize the CLOUDVISION API tool available through GOOGLE, which classifies the image into multiple categories and detects individual objects within the image (e.g., "sailboat", "lion", "Eiffel Tower", "living room", "tree", "beach", "sunset", etc.). For example, a specific image selected from the social media platform can have a specific Uniform Resource Locator (URL) associated with it. The system can retrieve the specific URL of the image and submit it to an image analysis tool, such as the CLOUDVISION API tool available through GOOGLE, which will analyze the image and output a list of individual objects detected in the image. The system and method of the present invention can then track and store the content present within the individual images selected by the user, and track any trends regarding whether content of a specific type of image is selected more frequently compared to other types of content.
[0084] In this way, the system and method of the present invention can track whether specific objects in an image are more popular than other objects, or for example, whether they are more popular among specific types of users within a specific demographic. For example, the system and method of the present invention can analyze the ranking of individual objects and determine trends in selections made by users within a specific demographic. For example, the system and method of the present invention can determine that images of teapots are popular among users in the northeastern region of the United States. For example, this information can subsequently be used to form marketing materials that show images of teapots targeted at users in the northeastern region of the United States.
[0085] In addition, the systems and methods of the present invention can identify trends regarding specific objects in an image selected by a particular user. For example, if a particular user typically selects images having objects such as trees, lakes, and beaches, the systems and methods of the present invention can determine that the particular user more frequently selects images having natural scenes as compared to other scenes. In this manner, the systems and methods of the present invention can identify the types of images commonly used by a particular user and / or can classify individual users based on their image selections. For example, the systems and methods of the present invention can classify a particular user within an "outdoor" user group and subsequently present targeted marketing to the particular user based on the classification. For example, based on the identified classification, marketing utilizing outdoor scenes can be presented to users within the "outdoor" user group.
[0086] Reference Figures 13 to 15 , shows a system and method for determining the dominant color in an image. Reference Figure 13 , shows a system 1300 for determining the dominant color in an image. The system 1300 can include a computing device 1302. The computing device can be a personal computer, laptop computer, mobile device, tablet computer, or another suitable computing device having a processor and memory for performing the functions described herein. The computing device includes an image analysis module 1304. For example, the image analysis module 1304 can be implemented as part of a mobile application of the mobile device 14 described in detail above.
[0087] The image analysis module 1304 receives an image 1306 as input. The image analysis module 1304 analyzes the received image and produces an output 1308 that includes one or more dominant colors from the image 1306.
[0088] Specifically, the image analysis module 1304 analyzes individual pixels within the image file, starting at the center of the image and operating downward in a spiral manner from the center. As the image analysis module 1304 moves further away from the center of the image, the sampling rate decreases such that pixels toward the center of the image are sampled at a higher rate compared to pixels toward the edge of the image. In this manner, pixels closer to the center are weighted more heavily compared to pixels further from the center and toward the edge of the image. Additionally, low chroma colors are excluded, e.g., pixels having a color with a chroma value below a predetermined chroma value threshold, i.e., very dull or not bright colors. Additionally, low luminance colors are also excluded, e.g., pixels having a luminance level below a luminance threshold, i.e., very dark colors. Furthermore, high luminance colors are also excluded, e.g., pixels having a luminance level above a luminance threshold, i.e., very bright colors. All remaining sampled colors are counted, where similar colors are grouped together. The image analysis module 1304 then determines the color or group of similar colors having the highest count and returns a representative of that color or group of similar colors as the dominant color of the image.
[0089] Reference Figure 14 , the example image 1400 is shown as being divided into individual pixel squares marked by columns and rows in a row, column format. For example, the top left pixel is marked as row, column: 1,1. The top right pixel is marked as row, column: 1,5. The bottom left pixel is marked as row, column: 7,1. The bottom right pixel is marked as row, column: 7,5.
[0090] In this example, the sequence being analyzed is indicated by the arrow and starts at pixel 4,3 in the center of the image. The pixels included in the analysis of the image are shown by white squares. The pixels that are skipped or excluded from the analysis are shown in gray.
[0091] Starting from the center of the image 1400, the image analysis module 1304 includes the first four pixels in the analysis (i.e., 4,3; 4,4; 5,4; and 5,3). Subsequently, starting at pixel 5,2, the image analysis module 1304 begins analyzing every other pixel. In other words, after pixel 5,3, the next four pixels analyzed are the pixels: 4,2; 3,3; 3,5; and 5,5. Subsequently, starting at pixel 6,5, the image analysis module 1304 begins skipping two pixels for each pixel included in the analysis. For example, after pixel 5,5, the next five pixels analyzed are the pixels: 6,3; 5,1; 2,1; 2,4; and 7,4. Subsequently, starting at pixel 7,4, the image analysis module 1304 begins skipping three pixels for each pixel analyzed. Thus, after 7,4, the next three pixels analyzed are the pixels: 1,1 and 1,5.
[0092] In this way, the image analysis module 1304 reduces the pixel sampling rate by skipping an increasing number of pixels as it moves away from the center of the image. For the remaining non-skipped pixels, the image analysis module 1304 applies the above filters for low chroma values, low luminance values, and high luminance values. The remaining pixels are then analyzed by grouping together similar pixel colors. Based on the number of colors or groups of similar pixel colors, the image analysis module then determines one or more dominant colors of the image 1400.
[0093] Reference Figure 15 , shows a method 1500 for analyzing an image according to the present invention. The method 1500 can be performed by the image analysis module 1304 of the computing device 1302 and starts at 1502. At 1504, the image analysis module receives the image. At 1506, the image analysis module 1304 divides the pixels of the image into subgroups, where each subgroup in the subgroup is analyzed by a different sampling rate. Using Figure 14For the example image, the first subgroup will include the pixels: 4,3; 4,4; 5,4; and 5,3. The second subgroup will include the pixels: 5,2; 4,2; 3,2; 3,3; 3,4; 3,5; 4,5; and 5,5. The third subgroup will include the pixels: 6,5; 6,4; 6,3; 6,2; 6,1; 5,1; 4,1; 3,1; 2,1; 2,2; 2,3; 2,4; 2,5; 7,5 and 7,4. The fourth subgroup will include the pixels: 7,3; 7,2; 7,1; 1,1; 1,2; 1,3; 1,4; and 1,5.
[0094] At 1508, the image analysis module analyzes different subgroups using different sampling rates. For example, every pixel of the first subgroup is analyzed. Every other pixel of the second subgroup is analyzed. Every second pixel of the third subgroup is analyzed. Every third pixel of the fourth subgroup is analyzed. Although reference Figure 14 and Figure 15 describe four different sampling rates for four different subgroups, any number of pixel subgroups and any number of sampling rates can be used. Additionally, the image analysis module 1304 can use different processing threads to perform the analysis of different subgroups simultaneously.
[0095] Also at 1508, individual pixels are analyzed based on the exclusion rules discussed above. For example, any pixel having a chroma value below the chroma threshold and a color that is too dull or not bright enough is excluded. Any pixel having a luminance value below the luminance threshold and a color that is too dark is excluded. Any pixel having a luminance value above the luminance threshold and a color that is too bright is excluded. Additionally, similar colors, i.e., colors having hue, chroma, and luminance / darkness values within a predetermined threshold of each other, are grouped together. For each subgroup, the total number of different colors or groups of similar colors is recorded by the image analysis module 1304.
[0096] At 1510, the totals from the individual subgroups are combined such that the same or similar colors are added together.
[0097] At 1512, the image analysis module then determines the dominant color based on the totals. In other words, the color or group of colors having the highest total is considered the dominant color of the image.
[0098] The method ends at 1514.
[0099] The foregoing description of the embodiments has been provided for purposes of illustration and description. The description is not intended to be exhaustive or to limit the invention. The individual elements or features of a particular embodiment are generally not limited to that particular embodiment, but, where applicable, are interchangeable and can be used in a selected embodiment, even if not specifically shown or described. The individual elements or features of a particular embodiment can also be varied in a number of ways. Such variations are not to be regarded as a departure from the invention, and all such modifications are intended to be included within the scope of the invention.
[0100] The terms "server", "user device", "computing device", and "module" can refer to part of or include the following: an application specific integrated circuit (ASIC); digital-analog or mixed analog / digital discrete circuits; digital-analog or mixed analog / digital integrated circuits; combinational logic circuits; field programmable gate arrays (FPGA); processors (shared, dedicated, or group) that execute code; memories (shared, dedicated, or group) that store code executed by the processors; other suitable hardware components that provide the described functionality; or a combination of some or all of the above devices, such as, in a system-on-chip.
[0101] The term "code" as used above can include software, firmware, and / or microcode, and can refer to programs, routines, functions, classes, and / or objects. The term "shared processor" encompasses a single processor that executes some or all of the code from multiple modules. The term "group processor" encompasses a processor that, in combination with additional processors, executes some or all of the code from one or more modules. The term "shared memory" encompasses a single memory that stores some or all of the code from multiple modules. The term "group memory" encompasses a memory that, in combination with additional memories, stores some or all of the code from one or more modules. The term "memory" can be a subset of the term "computer-readable medium". The term "computer-readable medium" does not cover transitory electrical and electromagnetic signals propagating through a medium and can thus be considered tangible and non-transitory. Non-limiting examples of non-transitory tangible computer-readable media include non-volatile memory, volatile memory, magnetic storage devices, and optical storage devices.
[0102] The servers, user devices, apparatuses, and methods described in this application can be implemented partially or fully using or by one or more computer programs executed by one or more processors. The computer programs include processor-executable instructions stored on at least one non-transitory tangible computer-readable medium. The computer programs can also include and / or rely on the stored data.
[0103] Example embodiments are provided so that this disclosure will be thorough, and will fully convey the scope to those of ordinary skill in the art. Numerous specific details are set forth such as examples of specific components, devices, and methods to provide a thorough understanding of embodiments of the disclosure. Those of ordinary skill in the art will understand that specific details need not be employed, that the example embodiments may be embodied in many different forms, and should not be construed as limiting the scope of the disclosure. In some example embodiments, well-known processes, well-known device structures, and well-known technologies are not described in detail.
[0104] The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting. As used herein, unless the context clearly dictates otherwise, the singular forms "a", "an", and "the" may be construed to also include the plural forms. The terms "comprises," "comprising," and "having" are inclusive and therefore specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof. The method steps, processes, and operations described herein should not be construed as necessarily requiring their performance in the particular order discussed or illustrated, unless specifically identified as an order of performance. It should also be understood that additional or alternative steps may be employed.
[0105] Spatial relative terms, such as "inner", "outer", "beneath", "below", "lower", "above", "upper", and the like, may be used herein for ease of description to describe one element or feature's relationship to another element or feature illustrated in the figures. Except for the orientation depicted in the figures, the spatial relative terms are intended to encompass different orientations of the device in use or operation. For example, if the device in the figures is turned over, elements described as "below" or "beneath" other elements or features would then be oriented "above" the other elements or features. Thus, the example term "below" can encompass both an orientation of above and below. The device may be otherwise oriented (rotated 90 degrees or at other orientations), and the spatial relative descriptors used herein may be interpreted accordingly.
Claims
1. A system for color coordination, characterized in that, Comprising: A network server configured to store computer-executable instructions and transmit the computer-executable instructions to a user device, wherein the computer-executable instructions, when executed by the user device, configure the user device to: Access a social media platform; Retrieve a plurality of images from the social media platform; Determine a dominant color of each image in the plurality of images by: dividing the image into a plurality of pixel groups; analyzing pixels in each pixel group at different sampling rates based on the proximity of the pixel group to the center of the image, wherein pixel groups closer to the center of the image have a higher sampling rate; and determining the dominant color of the image based on the pixels analyzed in each pixel group; Determine a paint color that most closely matches the dominant color of each image; and Display at least one of a color name and a color code associated with the paint color that most closely matches the dominant color of each image.
2. The system according to claim 1, characterized in that, The computer-executable instructions are included in a mobile application configured to be executed by the user device, and wherein the network server is further configured to transmit the computer-executable instructions to the user device by transmitting the mobile application to the user device.
3. The system according to claim 1, wherein The computer-executable instructions are configured to be executed within a web browser of the user device.
4. The system according to claim 1, characterized in that, The computer-executable instructions are included in a web application configured to be executed within a web browser of the user device, and wherein the network server is further configured to transmit the computer-executable instructions to the user device by transmitting the web application to the user device.
5. The system according to claim 1, characterized in that, The user device includes one of a personal computer, a laptop computer, a tablet computer, and a mobile device.
6. The system according to claim 1, characterized in that, The user device includes a smart phone.
7. The system according to claim 1, wherein The computer-executable instructions, when executed by the user device, further configure the user device to determine and display a plurality of coordinating paint colors for the paint color that most closely matches the dominant color of each image.
8. The system according to claim 1, wherein The computer-executable instructions, when executed by the user device, further configure the user device to enable a user to select a color different from the dominant color of an image in the plurality of images, determine a color that most closely matches the different color, and display at least one of a color name and a color code associated with the color that most closely matches the different color.
9. The system according to claim 1, characterized in that, The computer-executable instructions, when executed by the user device, further configure the user device to upload an image including the paint color that most closely matches the dominant color of each image to the social media platform.
10. The system according to claim 1, wherein The computer-executable instructions, when executed by the user device, further configure the user device to receive a selection of a particular image in the plurality of images, identify an object displayed in the particular image, and store the identified object.
11. A method for color coordination, characterized in that, Comprising: Using a network server to store computer-executable instructions; Use the network server to transmit the computer-executable instructions to a user device, wherein the computer-executable instructions, when executed by the user device, configure the user device to: Access a social media platform; Retrieve a plurality of images from the social media platform; Determine a dominant color of each of the plurality of images by: dividing the image into a plurality of pixel groups; analyzing pixels in each pixel group at different sampling rates based on the proximity of the pixel group to the center of the image, wherein pixel groups closer to the center of the image have a higher sampling rate; and determining the dominant color of the image based on the analyzed pixels in each pixel group; Determine a paint color that most closely matches the dominant color of each image; and Display at least one of a color name and a color code associated with the paint color that most closely matches the dominant color of each image.
12. The method according to claim 11, wherein The computer-executable instructions are included in a mobile application configured to be executed by the user device, and wherein transmitting the computer-executable instructions to the user device includes transmitting the mobile application to the user device.
13. The method according to claim 11, wherein The computer-executable instructions are configured to be executed within a web browser of the user device.
14. The method according to claim 11, wherein The computer-executable instructions are included in a web application configured to be executed within a web browser of the user device, and wherein transmitting the computer-executable instructions to the user device includes transmitting the web application to the user device.
15. The method according to claim 11, wherein The user device includes one of a personal computer, a laptop computer, a tablet computer, and a mobile device.
16. The method according to claim 11, wherein The user device includes a smart phone.
17. The method according to claim 11, wherein The computer-executable instructions, when executed by the user device, further configure the user device to determine and display a plurality of coordinating paint colors for the paint color that most closely matches the dominant color of each image.
18. The method according to claim 11, characterized in that The computer-executable instructions, when executed by the user device, further configure the user device to enable a user to select a color different from the dominant color of an image among the plurality of images, determine a color that most closely matches the different color, and display at least one of a color name and a color code associated with the color that most closely matches the different color.
19. The method according to claim 11, characterized in that, The computer-executable instructions, when executed by the user device, further configure the user device to upload an image including the paint color that most closely matches the dominant color of each image to the social media platform.
20. The method according to claim 11, wherein The computer-executable instructions, when executed by the user device, further configure the user device to receive a selection of a particular image among the plurality of images, identify an object displayed in the particular image, and store the identified object.
21. A non-transitory computer-readable medium storing computer-executable instructions, characterized in that, The computer-executable instructions, when executed by a processor of a computing device, configure the computing device to: Receive an image; Determine a dominant color of the image by: dividing the image into a plurality of pixel groups; analyzing pixels in each pixel group at different sampling rates based on the proximity of the pixel group to the center of the image, wherein pixel groups closer to the center of the image have a higher sampling rate; and determining a dominant color of the image based on pixels analyzed in each pixel group; determining a paint color that most closely matches the dominant color of the image; and displaying at least one of a color name and a color code associated with the paint color that most closely matches the dominant color of the image.
22. The non-transitory computer-readable medium according to claim 21, wherein When executed by the processor of the computing device, the computer-executable instructions further configure the computing device to access a social media platform and retrieve the image from the social media platform.
23. The non-transitory computer-readable medium according to claim 21, wherein The computing device is a mobile device and the computer-executable instructions are included in a mobile application configured to be executed by the mobile device.
24. The non-transitory computer-readable medium according to claim 21, wherein The computer-executable instructions are configured to be executed within a web browser of the computing device.
25. The non-transitory computer-readable medium according to claim 21, wherein The computer-executable instructions are included in a web application configured to be executed within a web browser of the computing device, and wherein a web server is further configured to transmit the computer-executable instructions to the computing device by transmitting the web application to the computing device.
26. The non-transitory computer-readable medium according to claim 21, wherein The computing device is one of a personal computer, a laptop computer, a tablet computer, and a mobile device.
27. The non-transitory computer-readable medium according to claim 21, wherein When executed by the computing device, the computer-executable instructions further configure the computing device to determine and display a plurality of coordinating paint colors for the paint color that most closely matches the dominant color of the image.
28. The non-transitory computer-readable medium according to claim 21, wherein When executed by the computing device, the computer-executable instructions further configure the computing device to enable a user to select a color different from the dominant color of the image, determine the color that most closely matches the different color, and display at least one of a color name and a color code associated with the color that most closely matches the different color.
29. A method for color coordination, characterized in that, comprising: receiving an image using a computing device; using the computing device to determine the dominant color of the image by: dividing the image into a plurality of pixel groups; analyzing pixels in each pixel group at different sampling rates based on the proximity of the pixel group to the center of the image, wherein pixel groups closer to the center of the image have a higher sampling rate; and determining a dominant color of the image based on pixels analyzed in each pixel group; using the computing device to determine a paint color that most closely matches the dominant color of the image; and using the computing device to display at least one of a color name and a color code associated with the paint color that most closely matches the dominant color of the image.
30. The method according to claim 29, wherein further comprising: using the computing device to access a social media platform; and using the computing device to retrieve the image from the social media platform.
31. The method according to claim 29, wherein, The computing device is a mobile device.
32. The method according to claim 29, wherein The computing device is one of a personal computer, a laptop computer, a tablet computer, and a mobile device.
33. The method according to claim 29, wherein further comprising: using the computing device to determine and display a plurality of coordinating paint colors for the paint color that most closely matches the dominant color of the image.
34. The method according to claim 29, wherein further comprising: receiving a selection of a color different from the dominant color of the image using the computing device; using the computing device to determine the color that most closely matches the different color; and Use the computing device to display at least one of a color name and a color code associated with a color that most closely matches the different color.
35. A system for color coordination, characterized in that, Comprising: A computing device including a non-transitory computer-readable medium storing computer-executable instructions that, when executed by a processor of the computing device, configure the computing device to: Receive an image; Determine a dominant color of the image by dividing the image into a plurality of pixel groups and analyzing pixels in each pixel group at different sampling rates based on the proximity of the pixel group to the center of the image, wherein pixel groups closer to the center of the image have a higher sampling rate; And determine the dominant color of the image based on the pixels analyzed in each pixel group; Determine a paint color that most closely matches the dominant color of the image; And Display at least one of a color name and a color code associated with the paint color that most closely matches the dominant color of the image.
36. The system according to claim 35, wherein The computer-executable instructions, when executed by the processor of the computing device, further configure the computing device to access a social media platform and retrieve the image from the social media platform.
37. The system according to claim 35, wherein The computing device is a mobile device and the computer-executable instructions are included in a mobile application configured to be executed by the mobile device.
38. The system according to claim 35, wherein The computer-executable instructions are configured to be executed within a web browser of the computing device.
39. The system according to claim 35, wherein The computer-executable instructions are included in a web application configured to be executed within a web browser of the computing device, and wherein a web server is further configured to transmit the computer-executable instructions to the computing device by transmitting the web application to the computing device.
40. The system according to claim 35, wherein The computing device is one of a personal computer, a laptop computer, a tablet computer, and a mobile device.
41. The system according to claim 35, wherein The computer-executable instructions, when executed by the computing device, further configure the computing device to determine and display a plurality of coordinating paint colors for the paint color that most closely matches the dominant color of the image.
42. The system according to claim 35, wherein, The computer-executable instructions, when executed by the computing device, further configure the computing device to enable a user to select a color different from the dominant color of the image, determine a color that most closely matches the different color, and display at least one of a color name and a color code associated with the color that most closely matches the different color.
Citation Information
Patent Citations
Data-driven color coordinator
US7230629B2
Automated color selection method and apparatus
US9530163B2
Data-driven color coordinator
US9928543B2
Method of sampling colors of images of a video sequence, and application to color clustering
CN104584556A
Methods and Systems for Content Processing
US20110034176A1