Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND SYSTEM FOR OPTIMIZING THE FABRICATION OF MOSAIC ARTWORK AND ASSEMBLY THEREOF
Document Type and Number:
WIPO Patent Application WO/2019/216824
Kind Code:
A1
Abstract:
A computerized device for facilitating assembly of a mosaic by a user may include a display and a processor. The processor may be configured to receive a mapping of image data between a plurality of studs on a mosaic baseplate and a plurality of mosaic pieces with a set of mosaic piece colors for assembly thereon, and to display an image of the mosaic for assembly by a user on the display as a plurality of pixels and a color palette with the set of mosaic piece colors. Each pixel in the displayed image may correspond to a stud in a plurality of studs on a mosaic baseplate and may indicate the color of a mosaic piece to be assembled onto the respective stud.

Inventors:
LIM WILLIAM CHZE SIN (SG)
Application Number:
PCT/SG2019/050254
Publication Date:
November 14, 2019
Filing Date:
May 03, 2019
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
BRICKZLE PTE LTD (SG)
International Classes:
G06T11/60; B44C1/28; B44C3/12
Foreign References:
US20100178448A12010-07-15
US20090153703A12009-06-18
US20110088839A12011-04-21
CN104715449A2015-06-17
Attorney, Agent or Firm:
SOROKER AGMON NORDMAN PTE LTD (SG)
Download PDF:
Claims:
CLAIMS

1. A computerized device for facilitating assembly of a mosaic by a user, the computerized device comprising:

a display; and

a processor configured to receive a mapping of image data for assembling a mosaic between a plurality of studs on a mosaic baseplate and a plurality of mosaic pieces with a set of mosaic piece colors for assembly thereon, and to display an image of the mosaic for assembly by a user on the display as a plurality of pixels and a color palette with the set of mosaic piece colors,

wherein each pixel in the displayed mosaic image corresponds to a stud in a plurality of studs on a mosaic baseplate and indicates the color of a mosaic piece to be assembled onto the respective stud.

2. The computerized device according to claim 1, wherein the color palette comprises a number of mosaic pieces for each mosaic piece color in the set.

3. The computerized device according to claim 1, wherein the processor is configured to display pixels from the plurality of pixels of a same mosaic piece color chosen by the user.

4. The computerized device according to claim 1, wherein the processor is configured to partition the plurality of pixels into multiple plates.

5. The computerized device according to claim 4, wherein the processor is configured to display grid boundaries of the partitioned pixels for each of the multiple plates on the displayed mosaic image.

6. The computerized device according to claim 4, wherein the processor is configured to display the partitioned plurality of pixels in a plate chosen from the multiple plates in response to the user choosing the plate from the displayed mosaic image.

7. The computerized device according to claim 6, wherein the processor is configured to display the color palette with the set of mosaic piece colors and a number of mosaic pieces for each mosaic piece color in the set corresponding to the partitioned plurality of pixels in the chosen plate.

8. The computerized device according to claim 1, wherein the processor is configured to display color symbol indicia on each pixel in the displayed mosaic corresponding to the color of the mosaic piece to be assembled onto the respective stud.

9. The computerized device according to claim 1, wherein the processor is configured to group adjacent pixels into a linear array with a same mosaic piece color for use of a multiple stud mosaic piece.

10. The computerized device according to claim 1, wherein the mosaic comprises a 3D mosaic, and wherein the processor is configured to display an indication of a slope or an orientation of the mosaic pieces for assembly onto the plurality of studs in the 3D mosaic.

11. The computerized device according to claim 1, wherein the processor is configured to display on the display of a percentage of a mosaic assembly completed by the user.

12. The computerized device according to claim 1, further comprising a memory, and wherein the processor is configured to save data in the memory with pixels in the plurality of pixels having mosaic pieces assembled thereon.

13. The computerized device according to claim 1, wherein the processor is configured to display on the display guiding grid lines on the displayed mosaic image.

14. The computerized device according to claim 1, wherein the processor is configured to display on the display X-Y coordinates of a selected pixel in the displayed mosaic image.

15. A computerized method for optimizing fabrication of mosaic artwork, the method comprising:

receiving in a processor, image data of a photograph;

generating by the processor a first mapping, based on a first set of mosaic piece colors in a plurality of mosaic pieces with a first number of mosaic piece colors, between the image data and a plurality of studs on a mosaic baseplate onto which the plurality of mosaic pieces with mosaic piece colors in the first set are assembled thereon;

eliminating by the processor, mosaic piece colors from the first set to generate a second set of mosaic piece colors in the plurality of mosaic pieces with a second number of mosaic piece colors when a number of mosaic pieces in said plurality of mosaic pieces for each mosaic piece color in the first set is less than a predefined threshold; and

generating by the processor, a second mapping between the image data and the plurality of studs on the mosaic baseplate onto which the plurality of mosaic pieces with mosaic piece colors in the second set are assembled thereon.

16. The method according to claim 15, wherein the second number of mosaic piece colors is smaller than the first number of mosaic piece colors.

17. The method according to claim 15, wherein generating the second mapping comprises assigning the eliminated mosaic piece colors from the first set to mosaic piece colors in the second set.

18. The method according to claim 17, wherein generating the second mapping comprises assigning the eliminated mosaic piece colors in the first set to mosaic piece colors in the second set having a closest RGB Euclidean distance to the eliminated mosaic piece colors from the first set.

19. The method according to claim 15, further comprising enhancing by the processor the image data of the photograph by:

detecting facial images of people in the image data of the photograph;

extracting facial colors of the detected facial images;

matching the facial colors to the mosaic piece colors in the first set; and enhancing key facial features in the image data of the photograph.

20. The method according to claim 19, wherein enhancing the image data of the photograph comprises detecting two or more facial images.

21. The method according to claim 20, wherein enhancing the image data of the photograph comprises ignoring facial images from the two or more facial images when an image area of the two or more facial images is less than a predefined facial threshold area.

22. The method according to claim 21 , wherein the predefined facial threshold area is based on an area of a largest facial image in the two or more facial images.

23. The method according to claim 19, wherein enhancing the image data of the photograph comprises blurring out imperfections in the key facial features.

24. The method according to claim 15, further comprising generating a mosaic assembly instruction data (MAID) file including the second mapping.

25. The method according to claim 15, further comprising eliminating a mosaic piece color from the first set with a same color as the mosaic baseplate.

26. The method according to claim 25, wherein the eliminated mosaic piece color is the mosaic piece color in the first set with a largest number of mosaic pieces.

27. The method according to claim 15, wherein the first set of colors comprise a set of greyscale colors, and further comprising applying by the processor, a sketch feature algorithm to the image data of the photograph.

28. A computerized system for optimizing fabrication of mosaic artwork, the computerized system comprising:

a memory; and

a processor, configured to receive image data of a photograph, to generate a first mapping, based on a first set of mosaic piece colors in a plurality of mosaic pieces with a first number of mosaic piece colors, between the image data and a plurality of studs on a mosaic baseplate onto which the plurality of mosaic pieces with mosaic piece colors in the first set are assembled thereon, to eliminate mosaic piece colors from the first set to generate a second set of mosaic piece colors in the plurality of mosaic pieces with a second number of mosaic piece colors when a number of mosaic pieces in said plurality of mosaic pieces for each mosaic piece color in the first set is less than a predefined threshold, and to generate a second mapping between the image data and the plurality of studs on the mosaic baseplate onto which the plurality of mosaic pieces with mosaic piece colors in the second set are assembled thereon.

29. The computerized system according to claim 28, wherein the second number of mosaic piece colors is smaller than the first number of mosaic piece colors.

30. The computerized system according to claim 28, wherein the processor is configured to generate the second mapping by assigning the eliminated mosaic piece colors from the first set to mosaic piece colors in the second set.

31. The computerized system according to claim 30, wherein the processor is configured to generate the second mapping by assigning the eliminated mosaic piece colors in the first set to mosaic piece colors in the second set having a closest RGB Euclidean distance to the eliminated mosaic piece colors from the first set.

32. The computerized system according to claim 28, wherein the processor is configured to enhancing the image data of the photograph by:

detecting facial images of people in the image data of the photograph;

extracting facial colors of the detected facial images;

matching the facial colors to the mosaic piece colors in the first set; and enhancing key facial features in the image data of the photograph.

33. The computerized system according to claim 32, wherein the processor is configured to enhance the image data of the photograph by detecting two or more facial images.

34. The computerized system according to claim 33, wherein the processor is configured to enhance the image data of the photograph by ignoring facial images from the two or more facial images when an image area of the two or more facial images is less than a predefined facial threshold area.

35. The computerized system according to claim 34, wherein the predefined facial threshold area is based on an area of a largest facial image in the two or more facial images.

36. The computerized system according to claim 32, wherein the processor is configured to enhance the image data of the photograph by blurring out imperfections in the key facial features.

37. The computerized system according to claim 28, wherein the processor is configured to generate a mosaic assembly instruction data (MAID) file including the second mapping.

38. The computerized system according to claim 28, wherein the processor is configured to eliminate a mosaic piece color from the first set with a same color as the mosaic baseplate.

39. The computerized system according to claim 38, wherein the eliminated mosaic piece color is the mosaic piece color in the first set with a largest number of mosaic pieces.

40. The computerized system according to claim 28, wherein the first set of colors comprise a set of greyscale colors, and wherein the processor is configured to apply a sketch feature algorithm to the image data of the photograph.

Description:
METHOD AND SYSTEM FOR OPTIMIZING THE FABRICATION OF MOSAIC ARTWORK AND ASSEMBLY THEREOF

TECHNICAL FIELD

[0001] The present invention generally relates to mosaic artwork, and more specifically to a method and system for optimizing the fabrication of mosaic artwork and assembly thereof.

BACKGROUND

[0002] Mosaic artwork may be created from a photograph. This may include the process of assessing the availability of different colored mosaic bricks, using a mosaic generation software with the available mosaic brick colors to pixelate the photograph and to map the pixelated image data into a mosaic map, and placing the mosaic bricks onto a mosaic baseplate either manually or automatically in accordance with the mosaic mapping. The mosaic bricks, or mosaic pieces, may include Lego or Nano bricks, for example.

[0003] Photographs may be taken by amateurs in non-optimal conditions, which do not render well into mosaic artwork. Thus, it is desirable to have a process for enhancing the photograph to produce a mosaic artwork kit, which reduces assembly time and mosaic brick costs for robotic fabrication or manual assembly by a user, while optimizing the image quality of the final mosaic artwork.

SUMMARY

[0004] There is provided, in accordance with some embodiments of the present invention, a computerized device for facilitating assembly of a mosaic by a user, which may include a display and a processor. The processor may be configured to receive a mapping of image data for assembling a mosaic between a plurality of studs on a mosaic baseplate and a plurality of mosaic pieces with a set of mosaic piece colors for assembly thereon, and to display an image of the mosaic for assembly by a user on the display as a plurality of pixels and a color palette with the set of mosaic piece colors. Each pixel in the displayed image may correspond to a stud in a plurality of studs on a mosaic baseplate and may indicate the color of a mosaic piece to be assembled onto the respective stud. [0005] Furthermore, in accordance with some embodiments of the present invention, the color palette may include a number of mosaic pieces for each mosaic piece color in the set.

[0006] Furthermore, in accordance with some embodiments of the present invention, the processor may be configured to display pixels from the plurality of pixels of a same mosaic piece color chosen by the user.

[0007] Furthermore, in accordance with some embodiments of the present invention, the processor may be configured to partition the plurality of pixels into multiple plates.

[0008] Furthermore, in accordance with some embodiments of the present invention, the processor may be configured to display grid boundaries of the partitioned pixels for each of the multiple plates on the displayed mosaic image.

[0009] Furthermore, in accordance with some embodiments of the present invention, the processor may be configured to display the partitioned plurality of pixels in a plate chosen from the multiple plates in response to the user choosing the plate from the displayed mosaic image.

[0010] Furthermore, in accordance with some embodiments of the present invention, the processor may be configured to display the color palette with the set of mosaic piece colors and a number of mosaic pieces for each mosaic piece color in the set corresponding to the partitioned plurality of pixels in the chosen plate.

[0011] Furthermore, in accordance with some embodiments of the present invention, the processor may be configured to display color symbol indicia on each pixel in the displayed mosaic corresponding to the color of the mosaic piece to be assembled onto the respective stud.

[0012] Furthermore, in accordance with some embodiments of the present invention, the processor may be configured to group adjacent pixels into a linear array with a same mosaic piece color for use of a multiple stud mosaic piece.

[0013] Furthermore, in accordance with some embodiments of the present invention, the mosaic may include a 3D mosaic, and the processor may be configured to display an indication of a slope or an orientation of the mosaic pieces for assembly onto the plurality of studs in the 3D mosaic. [0014] Furthermore, in accordance with some embodiments of the present invention, the processor may be configured to display on the display of a percentage of a mosaic assembly completed by the user.

[0015] Furthermore, in accordance with some embodiments of the present invention, the computerized device may include a memory, and the processor may be configured to save data in the memory with pixels in the plurality of pixels having mosaic pieces assembled thereon.

[0016] Furthermore, in accordance with some embodiments of the present invention, the processor may be configured to display on the display guiding grid lines on the displayed mosaic image.

[0017] Furthermore, in accordance with some embodiments of the present invention, the processor may be configured to display on the display X-Y coordinates of a selected pixel in the displayed mosaic image.

[0018] There is further provided, in accordance with some embodiments of the present invention, a computerized method for optimizing fabrication of mosaic artwork, which may include receiving in a processor, image data of a photograph. A first mapping may be generated by the processor, based on a first set of mosaic piece colors in a plurality of mosaic pieces with a first number of mosaic piece colors, between the image data and a plurality of studs on a mosaic baseplate onto which the plurality of mosaic pieces with mosaic piece colors in the first set are assembled thereon. Mosaic piece colors from the first set may be eliminated by the processor to generate a second set of mosaic piece colors in the plurality of mosaic pieces with a second number of mosaic piece colors when a number of mosaic pieces in said plurality of mosaic pieces for each mosaic piece color in the first set is less than a predefined threshold. A second mapping may be generated by the processor between the image data and the plurality of studs on the mosaic baseplate onto which the plurality of mosaic pieces with mosaic piece colors in the second set are assembled thereon.

[0019] Furthermore, in accordance with some embodiments of the present invention, the second number of mosaic piece colors may be smaller than the first number of mosaic piece colors. [0020] Furthermore, in accordance with some embodiments of the present invention, generating the second mapping may include assigning the eliminated mosaic piece colors from the first set to mosaic piece colors in the second set.

[0021] Furthermore, in accordance with some embodiments of the present invention, generating the second mapping may include assigning the eliminated mosaic piece colors in the first set to mosaic piece colors in the second set having a closest RGB Euclidean distance to the eliminated mosaic piece colors from the first set.

[0022] Furthermore, in accordance with some embodiments of the present invention, the method may include enhancing by the processor the image data of the photograph by: detecting facial images of people in the image data of the photograph;

extracting facial colors of the detected facial images;

matching the facial colors to the mosaic piece colors in the first set; and enhancing key facial features in the image data of the photograph.

[0023] Furthermore, in accordance with some embodiments of the present invention, enhancing the image data of the photograph may include detecting two or more facial images.

[0024] Furthermore, in accordance with some embodiments of the present invention, enhancing the image data of the photograph may include ignoring facial images from the two or more facial images when an image area of the two or more facial images is less than a predefined facial threshold area.

[0025] Furthermore, in accordance with some embodiments of the present invention, the predefined facial threshold area may be based on an area of a largest facial image in the two or more facial images.

[0026] Furthermore, in accordance with some embodiments of the present invention, enhancing the image data of the photograph may include blurring out imperfections in the key facial features.

[0027] Furthermore, in accordance with some embodiments of the present invention, the method may include generating a mosaic assembly instruction data (MAID) file including the second mapping. [0028] Furthermore, in accordance with some embodiments of the present invention, the method may include eliminating a mosaic piece color from the first set with a same color as the mosaic baseplate.

[0029] Furthermore, in accordance with some embodiments of the present invention, the eliminated mosaic piece color may be the mosaic piece color in the first set with a largest number of mosaic pieces.

[0030] Furthermore, in accordance with some embodiments of the present invention, the first set of colors may include a set of greyscale colors, and the method may include applying by the processor, a sketch feature algorithm to the image data of the photograph.

[0031] There is further provided, in accordance with some embodiments of the present invention, a computerized system for optimizing fabrication of mosaic artwork, which may include a memory and a processor. The processor may be configured to receive image data of a photograph, to generate a first mapping, based on a first set of mosaic piece colors in a plurality of mosaic pieces with a first number of mosaic piece colors, between the image data and a plurality of studs on a mosaic baseplate onto which the plurality of mosaic pieces with mosaic piece colors in the first set are assembled thereon, to eliminate mosaic piece colors from the first set to generate a second set of mosaic piece colors in the plurality of mosaic pieces with a second number of mosaic piece colors when a number of mosaic pieces in said plurality of mosaic pieces for each mosaic piece color in the first set is less than a predefined threshold, and to generate a second mapping between the image data and the plurality of studs on the mosaic baseplate onto which the plurality of mosaic pieces with mosaic piece colors in the second set are assembled thereon. BRIEF DESCRIPTION OF THE DRAWINGS

[0032] In order for the present invention, to be better understood and for its practical applications to be appreciated, the following Figures are provided and referenced hereafter. It should be noted that the Figures are given as examples only and in no way limit the scope of the invention. Fike components are denoted by like reference numerals. [0033] Fig. 1 schematically illustrates a flow diagram of a system for optimizing the fabrication of mosaic artwork and assembly thereof, in accordance with some embodiments of the present invention;

[0034] Fig. 2 schematically illustrates a block diagram of a server for optimizing the fabrication of mosaic artwork and assembly thereof, in accordance with some embodiments of the present invention;

[0035] Fig. 3 schematically illustrates a mosaic mapped using a first color palette, in accordance with some embodiments of the present invention;

[0036] Fig. 4 schematically illustrates mosaic pixels with a color index in a mosaic, in accordance with some embodiments of the present invention;

[0037] Fig. 5 schematically illustrates a mosaic remapped using a reduced second color palette, in accordance with some embodiments of the present invention;

[0038] Fig. 6 schematically illustrates a display view of a mobile app operating on a mobile device, in accordance with some embodiments of the present invention;

[0039] Fig. 7 schematically illustrates a mosaic for self-assembly in an assembly module in a mobile app, in accordance with some embodiments of the present invention;

[0040] Fig. 8 schematically illustrates a first enlarged view of a plate with a color palette, in accordance with some embodiments of the present invention;

[0041] Fig. 9 schematically illustrates a second enlarged view of a mosaic plate with a color palette, in accordance with some embodiments of the present invention;

[0042] Fig. 10 schematically illustrates a third enlarged view of a mosaic plate with a color palette, in accordance with some embodiments of the present invention;

[0043] Fig. 11 schematically illustrates a fourth enlarged view of a mosaic plate with a color palette, in accordance with some embodiments of the present invention;

[0044] Fig. 12 schematically illustrates an enlarged section of a mosaic plate with a color palette, in accordance with some embodiments of the present invention; and

[0045] Fig. 13 schematically illustrates a view of a 3D mosaic, in accordance with some embodiments of the present invention. DETAILED DESCRIPTION

[0046] In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the invention. However, it will be understood by those of ordinary skill in the art that the invention may be practiced without these specific details. In other instances, well-known methods, procedures, components, modules, units and/or circuits have not been described in detail so as not to obscure the invention.

[0047] Although embodiments of the invention are not limited in this regard, discussions utilizing terms such as, for example, “processing,” “computing,” “calculating,” “determining,” “establishing”, “analyzing”, “checking”, or the like, may refer to operation(s) and/or process(es) of a computer, a computing platform, a computing system, or other electronic computing device, that manipulates and/or transforms data represented as physical (e.g., electronic) quantities within the computer’s registers and/or memories into other data similarly represented as physical quantities within the computer’s registers and/or memories or other information non-transitory storage medium (e.g., a memory) that may store instructions to perform operations and/or processes. Although embodiments of the invention are not limited in this regard, the terms“plurality” and“a plurality” as used herein may include, for example,“multiple” or“two or more”. The terms“plurality” or“a plurality” may be used throughout the specification to describe two or more components, devices, elements, units, parameters, or the like. Unless explicitly stated, the method embodiments described herein are not constrained to a particular order or sequence. Additionally, some of the described method embodiments or elements thereof can occur or be performed simultaneously, at the same point in time, or concurrently. Unless otherwise indicated, use of the conjunction“or” as used herein is to be understood as inclusive (any or all of the stated options).

[0048] A user may wish to create mosaic artwork from a photograph. In the embodiments presented herein, the image data of the photograph may be uploaded to a server. The server may be configured to convert the image data to a mosaic artwork kit based on a set of available colors of mosaic pieces in inventory. The mosaic artwork kit may include a mosaic baseplate with an array of a plurality of studs onto which a plurality of mosaic pieces may be snapped on to form the mosaic artwork, and a mapping between pixelated image data and the location of each stud on the mosaic baseplate. The mapping may indicate to an automatic robotic assembly unit, or to a user manually assembling the mosaic artwork using a mobile application, onto which stud on the mosaic baseplate to place a mosaic piece of a particular color and/or type.

[0049] In the context of the present disclosure, the terms mosaic brick and mosaic piece may be used interchangeably herein. The terms mosaic artwork and mosaic may be used interchangeably herein.

[0050] A photographer, for example, may take a photograph for conversion to mosaic artwork in non-optimal conditions, which does not render well into mosaic artwork. In some embodiments, the server may be configured to perform image enhancement on the image data of the photo, so as to optimize the quality of the mosaic artwork based on the number of colors of the mosaic pieces needed to assemble the mosaic artwork.

[0051] Furthermore, to reduce assembly time and overall cost of the mosaic artwork, the server may be configured to reduce the color count of the mosaic pieces based on a first set of colors in the first mapping by eliminating colors of mosaic pieces with a low part count. The image data may be remapping the image data with a second set of colors of the mosaic pieces with a reduced number of colors. In some embodiments, a particular color of mosaic pieces with a large count may be eliminated by using a color of the mosaic baseplate to match the required color of mosaic pieces with the large count. For example, if the mosaic artwork is fabricated with 20,000 mosaic pieces where 10,000 of the 20,000 mosaic pieces are white, using a white mosaic baseplate eliminates the need for 10,000 white mosaic pieces. This saves the customer significant part cost and assembly time to form the mosaic artwork.

[0052] In some embodiments, a mobile application running on a remote mobile device (e.g., computerized device), such as a tablet or cellphone, for example, may provide the user wishing to self-assemble the mosaic artwork with a user-friendly guide for completing a large, complex mosaic, particularly when the remote mobile device may be offline.

[0053] Fig. 1 schematically illustrates a flow diagram of a system 10 for optimizing the fabrication of mosaic artwork and assembly thereof, in accordance with some embodiments of the present invention. System 10 may include a back office engine 15 running on a server or computer (e.g., a computerized system) communicating with a mobile or web application 25 running on a mobile device 27, such as a smartphone or a tablet, or any computing device. Back Office Engine 15 may perform the following functions:

1. Customer and Reseller Registration - managing all customer and reseller profiles including Customer Tier and Discount Rate within Loyalty Program, Reseller Margin sharing rate, etc.

2. Default Administrative Configurations

3. Inventory Management (e.g., managing all mosaic brick and mosaic baseplate types, colors, shapes, sizes, prices, and their respective quantities)

4. Order Tracking (e.g., tracking of all orders)

5. Portfolio Tracking - Tracks all Mosaics ordered

6. Manages all ready-made brick arts

7. Manages online forums including eMarketPlace

8. Report Management - provides all reporting functions including Profit Sharing Reports with Reseller

[0054] A customer may place an order for a mosaic artwork to the back office via back office engine 15 using mobile application (app) 25. Mobile App 25 may include the following functions and/or features:

1. Ready-made mosaic artwork - This feature allows the customer to buy a pre defined mosaic for assembly.

2. Personalized mosaic artwork - This feature allows the customer to customize a mosaic by uploading a personal photo.

3. Customer Portfolio - This feature allows the customer to view the purchased mosaic.

4. Assembly Module - This feature allows the customer to see the assembly instructions for the purchased mosaic.

5. Admin View - allows an administrator to track the completion status of factory assembled mosaics. 6. Reporting Module - provides all reporting functions including allowing resellers to view their profit margin sharing report.

7. Marketplace Module - permits the customer to post completed mosaic artwork for display or sale.

[0055] Mobile Application 25 may be configured to operate in tandem with a backend server running in a cloud computing services, such as host web based services, such as Amazon Web Services Cloud Hosting, for example.

[0056] The customer may upload 30 image data of a photograph to be converted to mosaic artwork to a server rendering engine (SRE) 20 running on a server (e.g., a computerized system). In some embodiments, SRE 20 may run on a server with cloud computing services. Server rendering engine 20 may render the image data to a mosaic artwork template in accordance with the inventory (e.g., available part count) of mosaic piece color and/or type. Different variations of the rendered images of the mosaic artwork may then be shown to the customer on mobile app 25. The customer may review 35 and select the most suitable rendered image, or request new rendered images based on different sizes and/or image crop settings, for example.

[0057] Once the customer approves and pays for the mosaic artwork, server rendering engine 20 may then generate a mosaic assembly instruction data (MAID) file 32. MAID file 32 may include a mapping 34 of the positions and/or colors and/or sizes of the different mosaic pieces 38 to be assembled on a plurality of studs 37 on mosaic baseplate 36.

[0058] MAID file 32 may then be sent for factory assembly 40 such as for automated assembly by a robot 40A. A finished mosaic artwork 45 assembled by robot 40A may be delivered 50 to the customer either by mail or by self-pickup collection of the mosaic at the shop. Optionally and/or additionally, MAID file 32 may be used to prepare a self- assembly kit 47 with all of the unassembled mosaic parts including, for example, mosaic pieces 38 with an assortment of colors/sizes/types (e.g., round, square, and/or sloped mosaic bricks, for example) and/or mosaic baseplate 36 with mapping 34. Self-assembly kit 47 may include information for the customer to self-assemble the mosaic artwork. Self-assembly kit 47 may be delivered 50 to the customer either by mail or by self-pickup collection of the mosaic at a shop or store, for example. [0059] Fig. 2 schematically illustrates a block diagram of a server 60 for optimizing the fabrication of mosaic artwork and assembly thereof, in accordance with some embodiments of the present invention. Server 60 (e.g., computerized system) may include a processor 65, a memory 70, an input device 75, an output device 80, and a communication module and interface 82 to communicate with mobile device 27 (e.g., computerized device) over a wired and/or wireless communication network. Processor 65 may execute code that may be stored in and fetched from memory 70, for example, such as SRE module 20. SRE module 20 may further include a mosaic rendering engine 22 and an image enhancement engine 24. Computerized device as used herein may refer to any mobile device, such as mobile device 27 (e.g., smartphone, tablet, etc) and/or any computing device (e.g., laptop, desktop, etc.) as used by the user or customer.

[0060] In some embodiments of the present invention, system 10 may include two separate servers 60 configured to communicate with each other and/or remote mobile device 27. One server may be used in the back office to execute back office engine 15 as previously described. Another server may be used to operate SRE 20. In other embodiments, one server such as server 60 may be used to operate both back office engine 15 and SRE 20 as shown in Fig. 2.

[0061] In some embodiments of the present invention, multiple servers may be used in the back office to execute back office engine 15 as previously described. In other embodiments, multiple servers may be used to operate SRE 20, through a Content Delivery Network (CDN) to distribute the load across different Cloud Computing Services.

[0062] Processor 65 may include one or more processing units, e.g. of one or more computers. Processor 65 may be configured to operate in accordance with programmed instructions stored in memory 18. Processor 65 may be capable of executing an application for optimizing the fabrication of mosaic artwork and assembly thereof.

[0063] Processor 65 may communicate with output device 80. For example, output device 80 may include a computer monitor or screen. Processor 65 may communicate with a screen of output device 80 to display any suitable outputs from the software modules operating on server 60 for optimizing the fabrication of mosaic artwork and assembly thereof. In another example, output device 80 may include a printer, display panel, speaker, or another device capable of producing visible, audible, or tactile output.

[0064] Processor 65 may communicate with input device 75. For example, input device 75 may include one or more of a keyboard, keypad, or pointing device for enabling a user to inputting data or instructions for operation of processor 65.

[0065] Processor 65 may communicate with memory 70. Memory 70 may include one or more volatile or nonvolatile memory devices. Memory 70 may be utilized to store, for example, programmed instructions for operation of processor 65, data or parameters for use by processor 65 during operation, or results of operation of processor 65.

[0066] In operation, processor 65 may execute a method for optimizing the fabrication of mosaic artwork and assembly thereof.

[0067] Computerized device, such as mobile device 27, may include a processor 90, a memory 95, an input/output (I/O) device 97, such as a touchscreen, for example, and a communication module and interface 85 to communicate with server 60 over a wired and/or wireless communication network. In some embodiments where the computerized device may include a laptop and/or desktop, there may be separate input and output devices (e.g., keyboard/mouse and/or screen display). Processor 90 may execute code that may be stored in and fetched from memory 95, for example, such as mosaic application 25. Mosaic application 25 may include an assembly module 93. Processor 90 may include one or more processing units. Memory 95 may include one or more volatile or nonvolatile memory devices. Memory 95 may be utilized to store, for example, programmed instructions for operation of processor 90, data or parameters for use by processor 90 during operation, or results of operation of processor 90.

[0068] In some embodiments of the present invention, image enhancement engine 24 may combine facial recognition and image processing algorithms while taking into consideration the mosaic colors that are available in inventory. Image enhancement engine 24 may determine enhancements to be made to the image data of each photo. In some embodiments, the algorithms may identify faces in the image data of the photo. Processor 65 may execute image enhancement engine 24 with the following algorithm, which may include the following features and steps: 1. Acquiring image data of a photo, such as from mobile device 27, as well as a set of colors of the mosaic pieces also known herein as a color palette. Typically, the set of colors of the mosaic pieces may include a limited set of mosaic piece colors, that may for example, be based on available inventory.

2. Detecting the faces in the photograph using, for example, Open Source Computer Vision (OpenCV) programs or Dlib (e.g., general purpose cross-platform software library written in the programming language C++), and extracting all the facial images.

3. Determining relevant faces (e.g., facial images) in the image data and faces that may be ignored, such as background faces (bystanders), for example, using a predefined setting. The predefined setting may include ignoring all faces with sizes or facial areas that are smaller than a predefined facial threshold area based on the area of the largest face detected in the image data of the photo (e.g., X% of area relative to the area of the largest face, for example).

4. Extracting all the facial colors of the relevant faces.

5. Determining the primary facial colors of each relevant face in cases where there are multiple shades due to lightings and shadows by analyzing the background colors.

6. Matching the determined primary facial colors to the color palette.

7. Determining if the determined primary facial colors fall within the color ranges of the color palette, otherwise processor 65 will retouch the photograph by determining the right degree of adjustments in the exposure, contrast, brightness, hue, and saturation.

8. Enhancing and highlighting the more prominent key facial details in the image data of the photograph such as hair, eyes, eyebrows, ears, nose, mouth, and chin.

9. Blurring out other imperfections in facial features image data, such as moles, acnes, pimples, scars, and other shadows, for example.

10. Removing the background and irrelevant faces

11. Submitting the retouched image data (e.g., the enhanced image data) to mosaic rendering engine 22. This may also produce grayscale sketches/line drawings, which may remove skin tones and may further darken/accentuate the key facial features. Processor 65 may relay different combinations of enhanced image data to mosaic rendering engine 22

[0069] In some embodiments of the present invention, image enhancement engine 24 may apply a Sketch feature algorithm to a greyscale version of the mosaic (e.g., using a greyscale palette). The Sketch feature algorithm may reduce the complexity of facial features so as to form an outline of the facial features. Facial tones may be removed and core facial feature details may be preserved such as the hair, eye brows, eyes, nose, ear, mouth, chin, moustache, and beard for example. In processor 65 applying the Sketch feature algorithm to the image data of the photograph, this may reduce the brick counts by up to 2/3, for example, which significantly reduces cost and assembly of the mosaic.

[0070] In some embodiments of the present invention, mosaic rendering engine 22 may generate MAID files 32 from the enhanced image data relayed from the image enhancement engine 24. Mosaic rendering engine 22 may relay MAID files 32 and the enhanced image data to Mobile App 25. Optionally and alternatively, mosaic rendering engine 22 may pass MAID files 32 to Robot 40A for factory assembly 40.

[0071] Mosaic rendering engine 22 may optimize the cost and assembly time of the mosaic artwork. Mosaic rendering engine 22 may determine the number of pieces for each brick color in the color palette and may eliminate the pieces with a particular color with a piece count lower than a predefined threshold of the total mosaic piece count (e.g., the number of all mosaic pieces needed to assemble the mosaic artwork). The color of pixel with eliminated pieces may be remapped to a color in a second palette with a reduced number of colors relative to the first palette, having a closest color to the original color as defined herein below.

[0072] The enhanced image data may then be remapped using the second color palette with the lower color count. Reducing the color count subsequently may reduce the assembly time and the different colors to be assembled either by factory assembly 40 or self-assembly 47. In some embodiments, the color of mosaic baseplate 38 may be changed to match the color of the color of the mosaic pieces with the highest part count so as to eliminate those mosaic pieces.

[0073] More specifically, in some embodiments, mosaic rendering engine 22 may operate in a two-step computation process: [0074] First, processor 65 may compute a RGB Euclidean Distance on the enhanced image data using a color palette with all of the available brick colors. For each pixel in the enhanced image data, processor 65 may determine which color in the color palette has the closest RGB Euclidean distance to that pixel, and use that color for that pixel in the mosaic artwork. In other embodiments, a weighted Euclidean distance method or other suitable mapping algorithms may be used.

[0075] Fig. 3 schematically illustrates a mosaic 100 mapped using a first color palette 105, in accordance with some embodiments of the present invention. Fig. 3 illustrates of a photograph of a face of a man pixelated into a plurality of pixels 110 in mosaic 100 using a first mapping represented by first color palette 105 designating the color of each pixel 110. Each of pixels 110 in Fig. 3 refers to mosaic piece 38 of a color designated in first color palette 105 that needs to be placed at that position during assembly. Each of pixels 110 may correspond to mosaic piece 38 to be placed on a specific stub 37 on mosaic baseplate 34 in accordance with the mosaic mapping. Hence, in the first pass mapping, nine greyscale colors were needed to form the rendered mosaic (e.g. mosaic 100). Mosaic 100 may include a number of grid lines 113 for visual guidance by the user when assembling the mosaic that may be toggled on/off.

[0076] In some embodiments, mosaic palette 105 may include a number of colors of the mosaic pieces designated by an index number (e.g., 0,1, 2, 3, 4, 5, 6, 162, and 168) ranging from shades of black to grey to white in color palette 105. For example, index 115 may refer to 25 black mosaic pieces where index 120 may refer to 75 dark grey mosaic pieces. The example shown in Fig. 3 is an array of 36x56 pixels, or 2016 pixels.

[0077] The embodiments of mosaics shown herein in following figures are shown using black, white, and shades of grey pixel colors, which is merely for simplicity and conceptual clarity, and not by way of limitation in the embodiments of the present invention. The set of mosaic piece colors (e.g., the color palette) may include any number of colors of mosaic pieces and the colors are not limited to greyscale; any colors may be used.

[0078] Once processor 65 determines the first mosaic mapping based on a first set of colors of mosaic pieces (e.g., as shown in first color palette 105), processor 65 may run a reduction cycle. Processor 65 may scan the colors of the mosaic returned in the first pass (e.g., in the first mosaic mapping) to determine if a color may be irrelevant and/or insignificant which may be further eliminated from the color palette. Eliminating irrelevant colors from the palette may reduce the cost of the mosaic artwork and the assembly time (either by robot or by self-assembly).

[0079] Eliminating an irrelevant mosaic color will not affect the overall image quality of a mosaic, if the following conditions are met: If a number of mosaic pieces of a specific color is less than a predefined threshold (which may be fine-tuned) within a certain region of the mosaic. For example, in a 20*20 (400 bricks) mosaic baseplate, a 3% threshold means that any color with less than (3% x 20 x 20) 12 counts within a 400 bricks mosaic baseplate will be discarded. The predefined threshold may be based on the number of mosaic pieces of a specific color and/or a percentage of mosaic pieces of a specific color.

[0080] Fig. 4 schematically illustrates mosaic pixels 126 with color index 0 at marker 115 in a mosaic 125, in accordance with some embodiments of the present invention. In this case, mosaic pixels 126 may include index color 115 (e.g., black) corresponding to abrick count of 25 pieces in shown in color palette 105, or 1.2% of the total mosaic brick count. Furthermore, the black mosaic bricks are scattered in this example over the entire area of mosaic 125 as shown in Fig. 4. Thus, eliminating the 25 black bricks and replacing them with a nearest color, or a closest color, based on the shortest RGB Euclidean distance to the nearest available color, such bricks with color index 1 at marker 120 may have little impact on the image quality of mosaic 100.

[0081] In some embodiments, eliminating irrelevant colors may affect image quality if the bricks of the same color are localized, for example, forming the nose or eyes of the subject. Thus, bricks with colors that are not contiguous (side-by-side) in a given region, but dispersed, may be eliminated with little impact to the image quality of the mosaic.

[0082] After the completion of the reduction cycle of eliminating bricks with colors having a brick count lower than a predefined threshold of the total brick count, processor 65 may run a second pass RGB Euclidean Distance second mapping (or any other mapping algorithm). The remapping may include a reduced second color palette, which may include only the brick colors selected in the first run less all of the colors that had been eliminated as being irrelevant or insignificant to the image quality of the mosaic, so as to form a modified mosaic with a smaller color count. [0083] Fig. 5 schematically illustrates a mosaic 130 remapped using a reduced second color palette 135, in accordance with some embodiments of the present invention. Index color 0 in first color palette with nine colors was eliminated from first color palette 105. Second color palette 135 now including eight color had the 25 pieces in index zero from first color palette 105 remapped to index color 1 at marker 120 (dark grey-black). Index color 1 in first color palette 105 included 75 pieces. Index color 1 at a marker 140 in second color palette 135 now includes 100 pieces (the 75 original pieces and the 25 pieces remapped from first color palette 105). Remapped mosaic 130 with replaced pixels 126 with index color 1 shows a negligible change in image quality relative to mosaic 100 in Fig. 3.

[0084] Note that the exemplary embodiments shown in Figs. 3-5 has one mosaic color eliminated, which was merely for conceptual clarity, and not by limitation of the embodiments herein. When 100 colors are used in a first color palette in remapping the mosaic to a reduced color palette where tens of colors, for example, are eliminated in the same manner, this color count reduction significantly optimizes the fabrication of the mosaic artwork and assembly thereof in terms of reduced cost and reduce assembly time, whether by self-assembly or automated robotic assembly.

[0085] In some embodiments of the present invention, processor 65 may identify which color has the highest mosaic brick count. Processor 65 may indicate that the most prevalent color be used as the color of mosaic baseplate 36. Mosaic rendering engine 22 may recommend on output device 80 and/or on I/O display 97 of mobile device 27 that the most prevalent identified color be used as the mosaic baseplate color. Mosaic rendering engine 22 may recommend eliminating the identified color from the assembly data (MAID file) and the color palette, which significantly reduces the time required to assemble the mosaic.

[0086] For sketch processing, processor 65 may eliminate, for example, the white colored bricks from the final MAID file and to recommend that a white mosaic baseplate be used, which significantly reduces the time required to build the mosaic. White bricks may prevalently form the face of the subject in the mosaic.

[0087] Fig. 6 schematically illustrates a display view 150 of mobile app 25 operating on mobile device 27, in accordance with some embodiments of the present invention. Display page 150 illustrates the customer mosaic portfolio (e.g.,“My Portfolio”) on display 97 (e.g., touchscreen). The user may be able to view all orders and mosaics purchased in the“My Portfolio” view as shown in Fig. 6.

[0088] In exemplary display view 150, there may be three mosaic order icons denoted 160A, 160B, and 160C. Orders 160A and 160B may be self-assembly mosaics, whereas mosaic 160C may be a factory-assembled mosaic. The self-assembly may indicate the number of hours to complete the mosaic. If factory-assembled, the estimated delivery date may be indicated. In some embodiments, clicking into the mosaic icons 160 may change the display view to the assembly module. When the customer or user may select a particular mosaic on display view 150, the user may follow the electronic guidance to install the mosaic MAID file to view the final mosaic mapping and the assembly map for self-assembly of the mosaic.

[0089] In some embodiments of the present invention, mosaic app 25 may include a “Personalised Brick Arts” Display view, for example, with a menu for mosaic order submission. The User may be able to perform the following functions using mosaic app 25:

1. Mosaic Type Selection: The user may select whether to render a Lego-sized or a Nano-sized as well as a 2D or a 3D mosaic.

2. Photograph Selection, Manipulation, and Submission: The user may be able to select whether to take a camera shot, or to submit a photograph from the user’s Camera Roll or camera gallery on mobile device 27, for example. The user may select the size of the mosaic to be rendered to, crop and/or re-size the photograph within a photograph boundary, and to submit the photograph for rendering. In the case of a 3D mosaic, the user may submit two photos for rendering.

3. Mosaic Selection: After photograph submission, server rendering engine 20 may return a few rendered mosaic samples to the mobile app 25. The user may view each mosaic sample and select a mosaic sample. In some embodiments, mobile app 25 may prompt the user to login, either directly or via some third party account such as Google or Facebook account, for example, to input a delivery address, and to make a payment. Once these actions are completed, the user may be able to access the Assembly Module for instructions to assemble the mosaic. 4. My Portfolio

[0090] In some embodiments of the present invention, mobile app 25 may include assembly module 93, which may provide the user with a user-friendly electronic guide to for self-assembling large complex mosaics.

[0091] In some embodiments of the present invention, a 3D mosaic may be implemented by using two images in one mosaic. A 3D mosaic may also be referred to as a lenticular mosaic. 3D mosaics may be formed using sloped top, or slanted shaped mosaic pieces. The sloped top of the mosaic brick may be assembled onto the mosaic baseplate with particular orientations to achieve a 3D image effect. Thus, when observing the mosaic from one orientation, the observer may see a first image. Subsequently when observing the mosaic from another orientation, the observer may see a second image.

[0092] Fig. 7 schematically illustrates a mosaic 200 for self-assembly in assembly module 93 in mobile app 25, in accordance with some embodiments of the present invention. In the exemplary embodiment shown in Fig. 7, mosaic 200 with an image of two children may include multiple plates 205 with a boundary 210 between multiple plates 205. Mosaic 200 may be partitioned into plates 205 separated by a plate boundary 210. When a user clicks on a plate in the home page of assembly module 93 in mobile app 25, such as a plate 220 as shown in Fig. 7, the user may access an enlarged view of the mosaic features of that plate on mobile app 25, so as to enhance the user experience for self-assembly.

[0093] Stated differently, mosaic baseplate 36 may be partitioned into a plurality of plates 205, smaller than the size of the mosaic (e.g., mosaic 200) for facilitating assembly of the mosaic. Partitioning mosaic baseplate 36 into the plurality of smaller plates 205 may be more useful where a customer may want to self-assemble the mosaic artwork.

[0094] In general, each mosaic plate may be in the form of a square or a rectangle, and in the exemplary case shown in Fig. 7, a square. Typically, a plate size may include a brick count of 20*20. The lateral dimensions of a Nano brick is typically 0.4cm, for example. Therefore, a 60*60 mosaic may include 9 x 20*20 plates, or dimensions of 24cm x 24 cm.

[0095] In the Home Page of assembly module 93: the full mosaic may be displayed for example on the left side as shown in Fig. 7. All the required colors of mosaic brick and the brick count for each color may be displayed in color palette 215, for example, on the right side of the display. There are a series of buttons available below color palette 215:

1. Rotate 230 - rotates the Portrait mosaic to Landscape so it is more viewable for a smaller mobile device.

2. Palette 235- toggles the color palette 250 on and off.

3. Grid 240 - toggles the grid lines 210 on and off. Each square or rectangle represents one plate 205.

[0096] In some embodiments, clicking into any single square/rectangle changes the view to an enlarged and detailed view for that plate, as shown, for example, for plate 220 in Fig. 8.

[0097] Fig. 8 schematically illustrates a first enlarged view of plate 220 with a color palette 250, in accordance with some embodiments of the present invention. Color palette 250 may include the mosaic brick colors and brick count for assembling plate 220. Image of plate 220 may include brick position indicia 245, so as to allow the user to easily identify the row and column of the pixel in the mosaic plate coordinate mapping on which to assemble a mosaic brick with the given brick color shown in the pixel.

[0098] The user may assemble the bricks color-by-color as shown in color palette 250. Upon completion of assembling all bricks of a particular color, the user may mark the color for completion as shown in an exemplary second palette 255 in which crosses out, or greys out, that particular color as shown for color indices 0 and 1 at a marker 260. A “Progress” indicator 261 will report the total percentage completion of that particular plate.

[0099] Assembly module 93 may include the following features:

1. To access a Plate, the user may click on any of the square (e.g., plate 220) in mosaic 200. Each square represents one Plate.

2. To go back to the home Mosaic page from the Plate view, the user may click on the "Back" button.

3. To see the position of all the brick pixels for a single color in a plate, the user may click on the color in the plate in the display image of the mosaic, or the palette on the right. 4. To mark a color as done on a Plate, the user may click on the percentage wording of a color in the Palette.

[00100] In some embodiments of the present invention, the user may click on "Save" at the bottom right to save the progress. In response, processor 90 may store in memory 95 data with pixels in the plurality of pixels having mosaic pieces assembled thereon by the user, so as to save the progress of the self-assembly of the mosaic by the user. In other embodiments, if a user uses a mobile phone to assemble a Portrait photo, the user may rotate the mosaic to a landscape mode for better viewing on a smaller mobile phone display by clicking on the "Rotate" button. If color palette 250 covers plate 220, for example, the user make click on the "Palette" button to hide the Palette. Clicking on the "Palette" button again to redisplays the Palette.

[00101] Fig. 9 schematically illustrates a second enlarged view of a mosaic plate 220A with a color palette 270, in accordance with some embodiments of the present invention. A user may choose a color in color palette 270, such as the brick color with color index 0 as shown at a marker 275, which may enable the user to view all pixels for a single color 265 with color index 0 (e.g., black colored bricks) in the exemplary embodiment shown in Fig. 9. Optionally or additionally, the user may click on a brick 265 to activate the same option for viewing all the pixels with single color 265 with color index 0.

[00102] In some embodiments of the present invention, clicking on a particular cell in mosaic plate 200 may display the x- and y- coordinates of that particular cell on the top of color palette 270.

[00103] Fig. 10 schematically illustrates a third enlarged view of a mosaic plate 220B with a color palette 305, in accordance with some embodiments of the present invention. The user may wish to assemble regions of mosaic plate 220B with a high density of pixels having the same color, such as black in the exemplary embodiment shown in Fig. 10. Mosaic app 25 may be configured to group the same colored pixels into linear array of 2, 3, 4, or more pixels so as to permit the use of 1*4 bricks (e.g., bricks occupying four studs on plate 220) for example, instead of 1* 1 bricks (e.g., for use of a multiple stud mosaic piece). Pressing the“Combo” button as shown in Fig. 10, for example, enable the user to view regions of plate 200B where 1*4 bricks may be used. [00104] Fig. 11 schematically illustrates a fourth enlarged view of a mosaic plate 220C with a color palette 350, in accordance with some embodiments of the present invention. In some cases, the user may find it difficult to view the different pixels on small tablet or smartphone screens, such as the pixel colors. Alternatively, the user may wish to print out, for example, the different colored pixels to self-assemble mosaic plate 220C when not connected to a communication network. In a print out of mosaic plate 220C for assembly, the user may not be able to distinguish the pixel colors correctly since the print out may distort the colors.

[00105] In some embodiments of the present invention, assembly module 93 may be configured to add color symbol indicia 355 to each of the pixels in mosaic plate 220C and respective color symbol indicia 353 to color palette 350. In some embodiments, this function may be activated when the user presses“ID->Color” button, so as to add color indicia symbols to the view and/or the printout of mosaic plate 220C.

[00106] In some embodiments of the present invention, the user may further zoom into a plate by clicking on the Grid button and clicking a section 360 of the plate 220C.

[00107] Fig. 12 schematically illustrates an enlarged section 360 of a mosaic plate 220C with a color palette 400, in accordance with some embodiments of the present invention. Enlarged section 360 of mosaic plate 220C may permit the user to better view color symbol indicia 355 on each of the pixels. Color palette 400 may be updated to show the brick color and brick count for each color only related to enlarged section 350.

[00108] Fig. 13 schematically illustrates a view of a 3D mosaic baseplate 400, in accordance with some embodiments of the present invention. For 3D mosaics, pushing a slope indicator 420 in an array of slope indicator buttons 410 at the bottom of mosaic baseplate 400 highlights a pixel 415, which indicates the proper orientation for mounting the brick. Thus, the user may use slope indicator 420 for how to assemble the sloped-top, or slanted top bricks with the proper slope or orientation to achieve a 3D image effect.

[00109] In some embodiments of the present invention, a computerized device for facilitating assembly of a mosaic by a user may include a display and a processor. The processor may be configured to receive a mapping of image data for assembling a mosaic between a plurality of studs on a mosaic baseplate and a plurality of mosaic pieces with a set of mosaic piece colors for assembly thereon, and to display an image of the mosaic for assembly by a user on the display as a plurality of pixels and a color palette with the set of mosaic piece colors. Each pixel in the displayed image may correspond to a stud in a plurality of studs on a mosaic baseplate and may indicate the color of a mosaic piece to be assembled onto the respective stud.

[00110] In some embodiments of the present invention, the color palette may include a number of mosaic pieces for each mosaic piece color in the set.

[00111] In some embodiments of the present invention, the processor may be configured to display pixels from the plurality of pixels of a same mosaic piece color chosen by the user.

[00112] In some embodiments of the present invention, the processor may be configured to partition the plurality of pixels into multiple plates.

[00113] In some embodiments of the present invention, the processor may be configured to display grid boundaries of the partitioned pixels for each of the multiple plates on the displayed mosaic image.

[00114] In some embodiments of the present invention, the processor may be configured to display the partitioned plurality of pixels in a plate chosen from the multiple plates in response to the user choosing the plate from the displayed mosaic image.

[00115] In some embodiments of the present invention, the processor may be configured to display the color palette with the set of mosaic piece colors and a number of mosaic pieces for each mosaic piece color in the set corresponding to the partitioned plurality of pixels in the chosen plate.

[00116] In some embodiments of the present invention, the processor may be configured to display color symbol indicia on each pixel in the displayed mosaic corresponding to the color of the mosaic piece to be assembled onto the respective stud.

[00117] In some embodiments of the present invention, the processor may be configured to group adjacent pixels into a linear array with a same mosaic piece color for use of a multiple stud mosaic piece.

[00118] In some embodiments of the present invention, the mosaic may include a 3D mosaic, and the processor may be configured to display an indication of a slope or an orientation of the mosaic pieces for assembly onto the plurality of studs in the 3D mosaic. [00119] In some embodiments of the present invention, the processor may be configured to display on the display of a percentage of a mosaic assembly completed by the user.

[00120] In some embodiments of the present invention, the computerized device may include a memory, and the processor may be configured to save data in the memory with pixels in the plurality of pixels having mosaic pieces assembled thereon.

[00121] In some embodiments of the present invention, the processor may be configured to display on the display guiding grid lines on the displayed mosaic image.

[00122] In some embodiments of the present invention, the processor may be configured to display on the display X-Y coordinates of a selected pixel in the displayed mosaic image.

[00123] A computerized method for optimizing fabrication of mosaic artwork may include receiving in a processor, image data of a photograph. A first mapping may be generated by the processor, based on a first set of mosaic piece colors in a plurality of mosaic pieces with a first number of mosaic piece colors, between the image data and a plurality of studs on a mosaic baseplate onto which the plurality of mosaic pieces with mosaic piece colors in the first set are assembled thereon. Mosaic piece colors from the first set may be eliminated by the processor to generate a second set of mosaic piece colors in the plurality of mosaic pieces with a second number of mosaic piece colors when a number of mosaic pieces in said plurality of mosaic pieces for each mosaic piece color in the first set is less than a predefined threshold. A second mapping may be generated by the processor between the image data and the plurality of studs on the mosaic baseplate onto which the plurality of mosaic pieces with mosaic piece colors in the second set are assembled thereon.

[00124] In some embodiments of the present invention, the second number of mosaic piece colors may be smaller than the first number of mosaic piece colors.

[00125] In some embodiments of the present invention, generating the second mapping may include assigning the eliminated mosaic piece colors from the first set to mosaic piece colors in the second set.

[00126] In some embodiments of the present invention, generating the second mapping may include assigning the eliminated mosaic piece colors in the first set to mosaic piece colors in the second set having a closest RGB Euclidean distance to the eliminated mosaic piece colors from the first set.

[00127] In some embodiments of the present invention, the method may include enhancing by the processor the image data of the photograph by:

detecting facial images of people in the image data of the photograph;

extracting facial colors of the detected facial images;

matching the facial colors to the mosaic piece colors in the first set; and enhancing key facial features in the image data of the photograph.

[00128] In some embodiments of the present invention, enhancing the image data of the photograph may include detecting two or more facial images.

[00129] In some embodiments of the present invention, enhancing the image data of the photograph may include ignoring facial images from the two or more facial images when an image area of the two or more facial images is less than a predefined facial threshold area.

[00130] In some embodiments of the present invention, the predefined facial threshold area may be based on an area of a largest facial image in the two or more facial images.

[00131] In some embodiments of the present invention, enhancing the image data of the photograph may include blurring out imperfections in the key facial features.

[00132] In some embodiments of the present invention, the method may include generating a mosaic assembly instruction data (MAID) file including the second mapping.

[00133] In some embodiments of the present invention, the method may include eliminating a mosaic piece color from the first set with a same color as the mosaic baseplate.

[00134] In some embodiments of the present invention, the eliminated mosaic piece color may be the mosaic piece color in the first set with a largest number of mosaic pieces.

[00135] In some embodiments of the present invention, the first set of colors may include a set of greyscale colors, and the method may include applying by the processor, a sketch feature algorithm to the image data of the photograph. [00136] In some embodiments of the present invention, a computerized system for optimizing fabrication of mosaic artwork may include a memory and a processor. The processor may be configured to receive image data of a photograph, to generate a first mapping, based on a first set of mosaic piece colors in a plurality of mosaic pieces with a first number of mosaic piece colors, between the image data and a plurality of studs on a mosaic baseplate onto which the plurality of mosaic pieces with mosaic piece colors in the first set are assembled thereon, to eliminate mosaic piece colors from the first set to generate a second set of mosaic piece colors in the plurality of mosaic pieces with a second number of mosaic piece colors when a number of mosaic pieces in said plurality of mosaic pieces for each mosaic piece color in the first set is less than a predefined threshold, and to generate a second mapping between the image data and the plurality of studs on the mosaic baseplate onto which the plurality of mosaic pieces with mosaic piece colors in the second set are assembled thereon.

[00137] In some embodiments of the present invention, the second number of mosaic piece colors may be smaller than the first number of mosaic piece colors.

[00138] In some embodiments of the present invention, the processor may be configured to generate the second mapping by assigning the eliminated mosaic piece colors from the first set to mosaic piece colors in the second set.

[00139] In some embodiments of the present invention, the processor may be configured to generate the second mapping by assigning the eliminated mosaic piece colors in the first set to mosaic piece colors in the second set having a closest RGB Euclidean distance to the eliminated mosaic piece colors from the first set.

[00140] In some embodiments of the present invention, the processor may be configured to enhancing the image data of the photograph by:

detecting facial images of people in the image data of the photograph;

extracting facial colors of the detected facial images;

matching the facial colors to the mosaic piece colors in the first set; and enhancing key facial features in the image data of the photograph. [00141] In some embodiments of the present invention, the processor may be configured to enhance the image data of the photograph by detecting two or more facial images.

[00142] In some embodiments of the present invention, the processor may be configured to enhance the image data of the photograph by ignoring facial images from the two or more facial images when an image area of the two or more facial images is less than a predefined facial threshold area.

[00143] In some embodiments of the present invention, the predefined facial threshold area may be based on an area of a largest facial image in the two or more facial images.

[00144] In some embodiments of the present invention, the processor may be configured to enhance the image data of the photograph by blurring out imperfections in the key facial features.

[00145] In some embodiments of the present invention, the processor may be configured to generate a mosaic assembly instruction data (MAID) file including the second mapping.

[00146] In some embodiments of the present invention, the processor may be configured to eliminate a mosaic piece color from the first set with a same color as the mosaic baseplate.

[00147] In some embodiments of the present invention, the eliminated mosaic piece color may be the mosaic piece color in the first set with a largest number of mosaic pieces.

[00148] In some embodiments of the present invention, the first set of colors may include a set of greyscale colors, and the processor may be configured to apply a sketch feature algorithm to the image data of the photograph.

[00149] Different embodiments are disclosed herein. Features of certain embodiments may be combined with features of other embodiments; thus certain embodiments may be combinations of features of multiple embodiments. The foregoing description of the embodiments of the invention has been presented for the purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed. It should be appreciated by persons skilled in the art that many modifications, variations, substitutions, changes, and equivalents are possible in light of the above teaching. It is, therefore, to be understood that the appended claims are intended to cover all such modifications and changes as fall within the true spirit of the invention.

[00150] While certain features of the invention have been illustrated and described herein, many modifications, substitutions, changes, and equivalents will now occur to those of ordinary skill in the art. It is, therefore, to be understood that the appended claims are intended to cover all such modifications and changes as fall within the true spirit of the invention.