A system and method for measuring body based on large-screen photography

Through a system based on large-screen photo-based volume measurement, using the communication between mobile terminals and controlled terminals and 3D garment model rendering applications, the existing volume solution is solved, which is time-consuming, different and difficult for customers to understand, and achieves rapid, Accurate measurement and intuitive custom clothing display.

CN115277812BActive Publication Date: 2025-02-25QINGDAO KUTESMART CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210725052.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-06-24
Publication Date
2025-02-25
Estimated Expiration
2042-06-24

AI Technical Summary

Technical Problem

The existing clothing customization and volume measurement solutions take a long time and vary, making it difficult to standardize and speed, and it is difficult for customers to fully understand the customized process, which can easily lead to rework.

Method used

Using a system based on large-screen photo-based volume measurement, through communication between the mobile terminal and the controlled terminal, the 3D garment model rendering application is used to generate the 3D garment model rendering results, displayed to the customer, and customized according to the customer's volume measurement data.

Benefits of technology

A fast and accurate measurement process is achieved, which reduces human errors and improves the standardization and efficiency of measurement. Customers can understand the effects of customized clothing more intuitively and reduce the rework rate.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115277812B_ABST
    Figure CN115277812B_ABST
Patent Text Reader

Abstract

The present invention provides a system and method for measuring body based on large-screen photography. Both a mobile terminal and a controlled terminal are equipped with a 3D clothing model rendering application. When the application of the mobile terminal is started, it is registered with a screen projection device management server. When the controlled terminal is started, it registers its own local area network IP and port information with the screen projection device management server. After the controlled terminal opens the 3D clothing model rendering application, it monitors a fixed port and submits the IP address and port information of the current controlled terminal to the screen projection device management server. The screen projection device management server pushes the information of the controlled terminal to each connected mobile terminal. The mobile terminal receives the measurement data and generates a 3D clothing model rendering result. The mobile terminal selects a controlled terminal for connection as needed, and the screen of the controlled terminal displays the same 3D clothing model rendering result as that of the mobile terminal. The display effect of the present invention is good, and the screen size is fully utilized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of photographing and measuring body, and in particular to a system and method for photographing and measuring body based on a large screen. Background Art

[0002] The statements in this section merely provide background art related to the present invention and do not necessarily constitute prior art.

[0003] In the process of clothing customization, from receiving customers to taking measurements, the process of customizing clothing relies heavily on the personal ability and experience of the measurement consultant. The existing solution is that the measurement consultant uses a ruler to measure each part in turn, which takes a lot of time and has differences. It requires long-term training and is difficult to standardize and speed up.

[0004] When customizing clothing, due to the numerous processes involved and the lack of understanding of these processes, most displays are of finished products or process pictures, relying on the experience and recommendations of clothing consultants. As a result, customers may be dissatisfied with the final product and rework may be required. Moreover, most of the current similar solutions are for a single scenario, such as calculating the size by taking a photo of the customer, and displaying the finished product effect of the clothing by using a 3D engine to render the model on a mobile or PC terminal.

[0005] Therefore, the existing volume measurement solutions have the following problems:

[0006] (1) Traditional manual measurement takes a long time and requires training for the technician.

[0007] (2) The traditional method of displaying custom clothing craftsmanship in the form of samples or photos is extremely costly, and when there are more combinations of craftsmanship, the number of samples required increases exponentially; the picture format makes it difficult for customers to have a more comprehensive impression.

[0008] (3) The 3D model is rendered on a mobile or PC terminal, and the scene is single. For older users, they may not be able to operate it. In addition, the screen size is small, and the display effect of the finished product is questionable. In addition, the screen data can be mirrored to the TV screen by projection, but the resolution of the mirror projection depends on the resolution of the projection device, and irrelevant information such as notification information will be projected onto the screen; in addition, when using a vertical screen device to project to a horizontal screen device, the mirror only occupies the middle part of the screen, and the efficiency of using the screen size is low. Summary of the invention

[0009] In order to address the deficiencies in the prior art, the present invention provides a system and method based on large-screen photography. The content displayed on the screen can be customized according to demand, and the rendering resolution only depends on the actual resolution of the screen or the output resolution of the TV box. The display effect is good and the screen size is fully utilized. The mobile terminal and the controlled terminal can be automatically connected. At the same time, since there is no need to use the mirroring function, the impact on the GPU (graphics processor) is small, and the burden on the control device is small.

[0010] In order to achieve the above object, the present invention adopts the following technical solution:

[0011] A first aspect of the present invention provides a system for measuring body based on large-screen photography.

[0012] A system based on large-screen photography measurement includes: a mobile terminal, a controlled terminal with a screen, and a screen projection device management server, the mobile terminal communicates with the controlled terminal, and the mobile terminal and the controlled terminal communicate with the screen projection device management server respectively;

[0013] The mobile terminal and the controlled terminal are both equipped with a 3D clothing model rendering application. When the 3D clothing model rendering application of the mobile terminal is started, it registers with the screen projection device management server.

[0014] When the controlled terminal starts, it registers its LAN IP and port information with the screen projection device management server. After the controlled terminal opens the 3D clothing model rendering application, it listens to the fixed port and submits the current controlled terminal's IP address and port information to the screen projection device management server. The screen projection device management server pushes the controlled terminal's information to each connected mobile terminal.

[0015] The mobile terminal receives the measurement data and generates a 3D garment model rendering result according to the 3D garment model rendering application. The mobile terminal selects one or more controlled terminals for connection as needed, and the screen of the controlled terminal displays the same 3D garment model rendering result as the mobile terminal.

[0016] As an optional implementation method, after the controlled terminal opens the 3D clothing model rendering application, it starts a WebSocket or Socket service and listens to the fixed port.

[0017] As an optional implementation method, the mobile terminal is connected to the screen projection device management server via WebSocket or Socket.

[0018] As an optional implementation method, if the controlled terminal and the mobile terminal are in the same network segment, the mobile terminal directly connects to the Socket or WebSocket service of the controlled terminal;

[0019] If the controlled terminal and the mobile terminal are not in the same network segment, the mobile terminal first sends the data packet to the screen projection device management server, which then pushes it to the controlled terminal;

[0020] If the mobile terminal is not connected to the Internet, connect via Bonjour or DLNA protocol.

[0021] As an optional implementation, each data packet carries a random or increasing sequence number. When a random sequence number is used, the controlled terminal will cache the sequence number for each mobile terminal for a period of time, and will discard the corresponding data packet if the same sequence number is received again.

[0022] When using an incremental sequence number, the controlled terminal stores the sequence number of the currently received data packet. If the sequence number of the received data packet is less than or equal to the stored sequence number, the data packet is discarded.

[0023] As an optional implementation, the body measurement data at least includes: image data of the person being measured at multiple angles, height data, and weight data.

[0024] As an optional implementation, the 3D garment model rendering application of the mobile terminal generates model information required for rendering according to the selected process information, wherein the model information is a node tree, and the node tree corresponds one-to-one to the nodes of the Mesh tree finally rendered;

[0025] Generate the corresponding 3D clothing model rendering results according to the node tree, including:

[0026] All nodes have unique identifiers, which are stored in a hash table with the identifier as the key and the node as the value. The node corresponds to the Mesh in the 3D engine, and the two reference each other.

[0027] Traverse the new node tree and search for the old node according to the identifier. If found, return a closure and return the Mesh in the function. If not found, put the rendering of the Mesh into a function or closure and return the function as the result. The return value types of the above two steps are the same.

[0028] All found Mesh nodes can be marked with a flag. After the recursive traversal is completed, all unmarked nodes are marked as removed and the operation is returned as an optional result.

[0029] After the traversal is completed, one or two arrays are obtained, namely, the operation of rendering the model and the operation of removing the model (optional). After all rendering operations are completed, if the operation of removing the model is returned, it is executed to remove the redundant Mesh nodes. If it is not returned, the original parent-child relationship of all Mesh nodes is first released, and then according to the latest node tree information, starting from the root node, Mesh nodes are added in sequence to establish the Mesh tree.

[0030] Furthermore, all rendering operations being executed are stored in the cache with the aforementioned identifier as the key. When the previous rendering is not completed and the node information is updated, the rendering operation in the cache can be retrieved to avoid re-rendering when the node is updated before the rendering is completed. The rendering operation can be performed in a non-UI thread or time slicing can be used to avoid the current UI thread from freezing.

[0031] A second aspect of the present invention provides a system for measuring body based on large-screen photography.

[0032] A system based on large-screen photography measurement includes: a mobile terminal, a screen, a controlled terminal with an operating system, and a screen projection device management server, the mobile terminal communicates with the controlled terminal, the mobile terminal and the controlled terminal communicate with the screen projection device management server respectively, and the controlled terminal communicates with the screen;

[0033] The mobile terminal and the controlled terminal are both equipped with a 3D clothing model rendering application. When the 3D clothing model rendering application of the mobile terminal is started, it registers with the screen projection device management server.

[0034] When the controlled terminal starts, it registers its LAN IP and port information with the screen projection device management server. After the controlled terminal opens the 3D clothing model rendering application, it listens to the fixed port and submits the current controlled terminal's IP address and port information to the screen projection device management server. The screen projection device management server pushes the controlled terminal's information to each connected mobile terminal.

[0035] The mobile terminal receives the measurement data and generates a 3D garment model rendering result according to the 3D garment model rendering application. The mobile terminal selects one or more controlled terminals for connection as needed, and the screen connected to the controlled terminal displays the same 3D garment model rendering result as the mobile terminal.

[0036] As an optional implementation method, after the controlled terminal opens the 3D clothing model rendering application, it starts a WebSocket or Socket service and listens to the fixed port.

[0037] As an optional implementation method, the mobile terminal is connected to the screen projection device management server via WebSocket or Socket.

[0038] As an optional implementation method, if the controlled terminal and the mobile terminal are in the same network segment, the mobile terminal directly connects to the Socket or WebSocket service of the controlled terminal;

[0039] If the controlled terminal and the mobile terminal are not in the same network segment, the mobile terminal first sends the data packet to the screen projection device management server, which then pushes it to the controlled terminal;

[0040] If the mobile terminal is not connected to the Internet, connect via Bonjour or DLNA protocol.

[0041] As an optional implementation, each data packet carries a random or increasing sequence number. When a random sequence number is used, the controlled terminal will cache the sequence number for each mobile terminal for a period of time, and will discard the corresponding data packet if the same sequence number is received again.

[0042] When using an incremental sequence number, the controlled terminal stores the sequence number of the currently received data packet. If the sequence number of the received data packet is less than or equal to the stored sequence number, the data packet is discarded.

[0043] As an optional implementation, the body measurement data at least includes: image data of the person being measured at multiple angles, height data, and weight data.

[0044] As an optional implementation, the 3D garment model rendering application of the mobile terminal generates model information required for rendering according to the selected process information, wherein the model information is a node tree;

[0045] Generate the corresponding 3D clothing model rendering results according to the node tree, including:

[0046] All nodes have unique identifiers, which are stored in a hash table with the identifier as the key and the node as the value. The node corresponds to the Mesh in the 3D engine, and the two can reference each other.

[0047] Traverse the new node tree and search for the old node according to the identifier. If found, return a closure and return the Mesh in the function. If not found, put the rendering of the Mesh into a function or closure and return the function as the result. The return value types of the above two steps are the same.

[0048] All found nodes are marked with a flag. After the recursive traversal is completed, all unmarked nodes are marked as removed and the operation is returned as the result;

[0049] After the traversal is completed, two arrays are obtained, namely the operation of rendering the added model and the operation of removing the model.

[0050] A third aspect of the present invention provides a method for measuring body based on large-screen photography.

[0051] A method for measuring body based on large-screen photography, comprising the following steps:

[0052] The mobile terminal and the controlled terminal are both equipped with a 3D clothing model rendering application. When the 3D clothing model rendering application of the mobile terminal is started, it registers with the screen projection device management server.

[0053] When the controlled terminal starts, it registers its LAN IP and port information with the screen projection device management server. After the controlled terminal opens the 3D clothing model rendering application, it listens to the fixed port and submits the current controlled terminal's IP address and port information to the screen projection device management server. The screen projection device management server pushes the controlled terminal's information to each connected mobile terminal.

[0054] The mobile terminal receives the measurement data and generates a 3D garment model rendering result according to the 3D garment model rendering application. The mobile terminal selects one or more controlled terminals for connection as needed, and the screen of the controlled terminal displays the same 3D garment model rendering result as the mobile terminal.

[0055] A fourth aspect of the present invention provides a method for measuring body based on large-screen photography.

[0056] A method for measuring body based on large-screen photography, comprising the following steps:

[0057] The mobile terminal and the controlled terminal are both equipped with a 3D clothing model rendering application. When the 3D clothing model rendering application of the mobile terminal is started, it registers with the screen projection device management server.

[0058] When the controlled terminal starts, it registers its LAN IP and port information with the screen projection device management server. After the controlled terminal opens the 3D clothing model rendering application, it listens to the fixed port and submits the current controlled terminal's IP address and port information to the screen projection device management server. The screen projection device management server pushes the controlled terminal's information to each connected mobile terminal.

[0059] The mobile terminal receives the measurement data and generates a 3D garment model rendering result according to the 3D garment model rendering application. The mobile terminal selects one or more controlled terminals for connection as needed, and the screen connected to the controlled terminal displays the same 3D garment model rendering result as the mobile terminal.

[0060] Compared with the prior art, the present invention has the following beneficial effects:

[0061] 1. The system and method based on large-screen photography measurement described in the present invention can customize the content displayed on the screen according to needs, and the rendering resolution only depends on the actual resolution of the screen or the output resolution of the TV box. The display effect is good and the screen size is fully utilized.

[0062] 2. The system and method based on large-screen photography measurement described in the present invention can automatically connect the mobile terminal and the controlled terminal. At the same time, since there is no need to use the mirroring function, the impact on the GPU (graphics processing unit) is small and the burden on the control device is small. BRIEF DESCRIPTION OF THE DRAWINGS

[0063] The accompanying drawings in the specification, which constitute a part of the present invention, are used to provide a further understanding of the present invention. The exemplary embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute improper limitations on the present invention.

[0064] Figure 1 This is a connection diagram of a system based on large-screen photography and volume measurement provided in Example 1 of the present invention.

[0065] Figure 2 This is a connection diagram of a system based on large-screen photography and volume measurement provided in Example 2 of the present invention. DETAILED DESCRIPTION

[0066] The present invention will be further described below in conjunction with the accompanying drawings and embodiments.

[0067] It should be noted that the following detailed descriptions are all illustrative and intended to provide further explanation of the present invention. Unless otherwise specified, all technical and scientific terms used herein have the same meanings as those commonly understood by those skilled in the art to which the present invention belongs.

[0068] It should be noted that the terms used herein are only for describing specific embodiments and are not intended to limit exemplary embodiments according to the present invention. As used herein, unless the context clearly indicates otherwise, the singular form is also intended to include the plural form. In addition, it should be understood that when the terms "comprising" and / or "including" are used in this specification, it indicates the presence of features, steps, operations, devices, components and / or combinations thereof.

[0069] In the absence of conflict, the embodiments of the present invention and the features of the embodiments may be combined with each other.

[0070] Embodiment 1:

[0071] like Figure 1As shown, Embodiment 1 of the present invention provides a system based on large-screen photography measurement, including: a mobile terminal, a controlled terminal with a screen, and a screen projection device management server, the mobile terminal communicates with the controlled terminal, and the mobile terminal and the controlled terminal communicate with the screen projection device management server respectively;

[0072] The mobile terminal and the controlled terminal are both equipped with a 3D clothing model rendering application. When the 3D clothing model rendering application of the mobile terminal is started, it registers with the screen projection device management server.

[0073] When the controlled terminal starts, it registers its LAN IP and port information with the screen projection device management server. After the controlled terminal opens the 3D clothing model rendering application, it listens to the fixed port and submits the current controlled terminal's IP address and port information to the screen projection device management server. The screen projection device management server pushes the controlled terminal's information to each connected mobile terminal.

[0074] The mobile terminal receives the measurement data and generates a 3D garment model rendering result according to the 3D garment model rendering application. The mobile terminal selects one or more controlled terminals for connection as needed, and the screen of the controlled terminal displays the same 3D garment model rendering result as the mobile terminal.

[0075] The body measurement module includes a Raspberry Pi with a Linux operating system; the measurement module includes: front and side cameras, a height measurement device and a weight scale, the front and side cameras, the height measurement device and the weight scale communicate with the body measurement module; the body measurement module is communicated with the photo measurement service terminal, the photo measurement service terminal is communicated with the mobile terminal, and the body measurement module is communicated with the mobile terminal.

[0076] The mobile terminal is a mobile terminal with an operating system. The mobile terminal may be a mobile phone, a tablet computer or other devices. The operating system may be iOS, Android or other systems.

[0077] For large screen devices, choose a TV with an operating system.

[0078] The mobile terminal is installed with the Xiaoku App, which can calculate the 3D model information that needs to be rendered through a combination of processes, and then render the 3D clothing model through graphics libraries such as OpenGL, Metal, or 3D rendering engines such as Unity3D and Unreal.

[0079] The mobile terminal is connected to the device management server through WebSocket or Socket, and the Xiaoku APP registers with the device management server when it starts.

[0080] The controlled terminal is installed with a simplified version of the Xiaoku App and is connected to the device management server via WebSocket or Socket. When the device starts, it registers its LAN IP and other information with the device management server.

[0081] After the controlled terminal opens the Xiaoku App, it will start a WebSocket or Socket service to listen to a fixed port, and then submit the current device's IP address, port and other information to the device management server. The server pushes the information of the projection device to each connected mobile terminal.

[0082] The mobile terminal can select one or more controlled devices to connect as needed. If the controlled device and the mobile terminal are in the same network segment, they can directly connect to the Socket or WebSocket service of the controlled terminal. If they are not in the same network segment, the mobile terminal first sends the data packet to the server, which is then pushed to the controlled terminal by the server. If the mobile terminal is not connected to the Internet, it can be connected via the Bonjour (tvOS) or DLNA (Android or other operating systems) protocol.

[0083] The above three connection modes can exist at the same time or one or two can be selected.

[0084] When using more than one connection mode, each data packet has a random or increasing sequence number. When using a random sequence number, the controlled terminal will cache the sequence number for each control device for a period of time, and if the same sequence number is received again, the corresponding data packet will be discarded. When using an increasing sequence number, the controlled terminal will store the sequence number of the currently received data packet. If the sequence number of the received data packet is less than or equal to the stored sequence number, the data packet will be discarded.

[0085] When rendering a 3D page on a mobile terminal, the mobile terminal sends the relevant model parameter information to the controlled terminal through the above connection method; after receiving the data, the controlled terminal renders the same effect as the mobile terminal according to the model parameter information.

[0086] The controlled terminal device is usually displayed horizontally. If you need to display it vertically, just rotate the UI interface 90 degrees in the device App.

[0087] After the mainboard is started, it connects to the cloud server through WebSocket or Socket. When the mobile terminal needs to measure the customer's body, it obtains the device list information from the cloud server. After selecting the current device, the customer stands on the scale and starts the body measurement function. The mobile terminal sends a request to the cloud server, and the cloud server sends instructions to the mainboard through a long connection. The height measurement module installed on the top measures the height, and the cameras installed in the front and sides take photos. The height, weight data and photos will be sent to the cloud server. After calculation, the size of each part is obtained, and then the data is transmitted back to the mobile terminal.

[0088] In this embodiment, the 3D garment model rendering application of the mobile terminal generates model information required for rendering according to the selected process information, and the model information is a node tree, and the node tree corresponds one-to-one with the nodes of the Mesh tree that is finally rendered;

[0089] Generate the corresponding 3D clothing model rendering results according to the node tree, including:

[0090] All nodes have unique identifiers, which are stored in a hash table with the identifier as the key and the node as the value. The node corresponds to the Mesh in the 3D engine, and the two reference each other.

[0091] Traverse the new node tree and search for the old node according to the identifier. If found, return a closure and return the Mesh in the function. If not found, put the rendering of the Mesh into a function or closure and return the function as the result. The return value types of the above two steps are the same.

[0092] All found Mesh nodes can be marked with a flag. After the recursive traversal is completed, all unmarked nodes are marked as removed and the operation is returned as an optional result.

[0093] After the traversal is completed, one or two arrays are obtained, namely, the operation of rendering the model and the operation of removing the model (optional). After all rendering operations are completed, if the operation of removing the model is returned, it is executed to remove the redundant Mesh nodes. If it is not returned, the original parent-child relationship of all Mesh nodes is first released, and then according to the latest node tree information, starting from the root node, Mesh nodes are added in sequence to establish the Mesh tree.

[0094] All rendering operations in progress are stored in the cache using the aforementioned identifier as the key. When the previous rendering is not completed and the node information is updated, the rendering operation in the cache can be retrieved to avoid re-rendering when the node is updated before the rendering is completed. The rendering operation can be performed in a non-UI thread or time slicing can be used to avoid freezing of the current UI thread.

[0095] Embodiment 2:

[0096] like Figure 2 As shown, Embodiment 2 of the present invention provides a system based on large-screen photography measurement, including: a mobile terminal, a screen, a controlled terminal with an operating system, and a screen projection device management server, the mobile terminal communicates with the controlled terminal, the mobile terminal and the controlled terminal communicate with the screen projection device management server respectively, and the controlled terminal communicates with the screen;

[0097] The mobile terminal and the controlled terminal are both equipped with a 3D clothing model rendering application. When the 3D clothing model rendering application of the mobile terminal is started, it registers with the screen projection device management server.

[0098] When the controlled terminal starts, it registers its LAN IP and port information with the screen projection device management server. After the controlled terminal opens the 3D clothing model rendering application, it listens to the fixed port and submits the current controlled terminal's IP address and port information to the screen projection device management server. The screen projection device management server pushes the controlled terminal's information to each connected mobile terminal.

[0099] The mobile terminal receives the measurement data and generates a 3D garment model rendering result according to the 3D garment model rendering application. The mobile terminal selects one or more controlled terminals for connection as needed, and the screen connected to the controlled terminal displays the same 3D garment model rendering result as the mobile terminal.

[0100] Specifically, in this embodiment, the screen device does not have the ability to run the Xiaoku APP. The Xiaoku APP can be run on AppleTV or other TV boxes with an operating system and then connected to the screen.

[0101] The body measurement module includes a Raspberry Pi with a Linux operating system; the measurement module includes: front and side cameras, a height measurement device and a weight scale, the front and side cameras, the height measurement device and the weight scale communicate with the body measurement module; the body measurement module is communicated with the photo measurement service terminal, the photo measurement service terminal is communicated with the mobile terminal, and the body measurement module is communicated with the mobile terminal.

[0102] The mobile terminal is a mobile terminal with an operating system. The mobile terminal may be a mobile phone, a tablet computer or other devices. The operating system may be iOS, Android or other systems.

[0103] The mobile terminal is installed with the Xiaoku APP, which can calculate the 3D model information that needs to be rendered through a combination of processes, and then render the 3D clothing model through graphics libraries such as OpenGL, Metal, or 3D rendering engines such as Unity3D and Unreal.

[0104] The mobile terminal is connected to the device management server through WebSocket or Socket, and the Xiaoku APP registers with the device management server when it is started.

[0105] The controlled terminal is installed with a simplified version of the Xiaoku APP, which is connected to the device management server through WebSocket or Socket. When the device starts, it registers its LAN IP and other information with the device management server.

[0106] After the controlled terminal opens the Xiaoku APP, it will start a WebSocket or Socket service to listen to a fixed port, and then submit the current device's IP address, port and other information to the device management server. The server pushes the information of the projection device to each connected mobile terminal.

[0107] The mobile terminal can select one or more controlled devices to connect as needed. If the controlled device and the mobile terminal are in the same network segment, they can directly connect to the Socket or WebSocket service of the controlled terminal. If they are not in the same network segment, the mobile terminal first sends the data packet to the server, which is then pushed to the controlled terminal by the server. If the mobile terminal is not connected to the Internet, it can be connected via the Bonjour (tvOS) or DLNA (Android or other operating systems) protocol.

[0108] The above three connection modes can exist at the same time or one or two can be selected.

[0109] When using more than one connection mode, each data packet has a random or increasing sequence number. When using a random sequence number, the controlled terminal will cache the sequence number for each control device for a period of time, and if the same sequence number is received again, the corresponding data packet will be discarded. When using an increasing sequence number, the controlled terminal will store the sequence number of the currently received data packet. If the sequence number of the received data packet is less than or equal to the stored sequence number, the data packet will be discarded.

[0110] When rendering a 3D page on a mobile terminal, the mobile terminal sends the relevant model parameter information to the controlled terminal through the above connection method; after receiving the data, the controlled terminal renders the same effect as the mobile terminal according to the model parameter information.

[0111] The controlled terminal device is usually displayed horizontally. If you need to display it vertically, just rotate the UI interface 90 degrees in the device App.

[0112] After the mainboard is started, it connects to the cloud server through WebSocket or Socket. When the mobile terminal needs to measure the customer's body, it obtains the device list information from the cloud server. After selecting the current device, the customer stands on the scale and starts the body measurement function. The mobile terminal sends a request to the cloud server, and the cloud server sends instructions to the mainboard through a long connection. The height measurement module installed on the top measures the height, and the cameras installed in the front and sides take photos. The height, weight data and photos will be sent to the cloud server. After calculation, the size of each part is obtained, and then the data is transmitted back to the mobile terminal.

[0113] Specifically, in this embodiment, the 3D garment model rendering application of the mobile terminal generates model information required for rendering according to the selected process information, and the model information is a node tree, and the node tree corresponds one-to-one to the nodes of the Mesh tree that is finally rendered;

[0114] Generate the corresponding 3D clothing model rendering results according to the node tree, including:

[0115] All nodes have unique identifiers, which are stored in a hash table with the identifier as the key and the node as the value. The node corresponds to the Mesh in the 3D engine, and the two reference each other.

[0116] Traverse the new node tree and search for the old node according to the identifier. If found, return a closure and return the Mesh in the function. If not found, put the rendering of the Mesh into a function or closure and return the function as the result. The return value types of the above two steps are the same.

[0117] All found Mesh nodes can be marked with a flag. After the recursive traversal is completed, all unmarked nodes are marked as removed and the operation is returned as an optional result.

[0118] After the traversal is completed, one or two arrays are obtained, namely, the operation of rendering the model and the operation of removing the model (optional). After all rendering operations are completed, if the operation of removing the model is returned, it is executed to remove the redundant Mesh nodes. If it is not returned, the original parent-child relationship of all Mesh nodes is first released, and then according to the latest node tree information, starting from the root node, Mesh nodes are added in sequence to establish the Mesh tree.

[0119] All rendering operations in progress are stored in the cache using the aforementioned identifier as the key. When the previous rendering is not completed and the node information is updated, the rendering operation in the cache can be retrieved to avoid re-rendering when the node is updated before the rendering is completed. The rendering operation can be performed in a non-UI thread or time slicing can be used to avoid freezing of the current UI thread.

[0120] Embodiment 3:

[0121] Embodiment 3 of the present invention provides a method for measuring body based on large-screen photography, including the following process:

[0122] The mobile terminal and the controlled terminal are both equipped with a 3D clothing model rendering application. When the 3D clothing model rendering application of the mobile terminal is started, it registers with the screen projection device management server.

[0123] When the controlled terminal starts, it registers its LAN IP and port information with the screen projection device management server. After the controlled terminal opens the 3D clothing model rendering application, it listens to the fixed port and submits the current controlled terminal's IP address and port information to the screen projection device management server. The screen projection device management server pushes the controlled terminal's information to each connected mobile terminal.

[0124] The mobile terminal receives the measurement data and generates a 3D garment model rendering result according to the 3D garment model rendering application. The mobile terminal selects a controlled terminal for connection as needed, and the screen of the controlled terminal displays the same 3D garment model rendering result as the mobile terminal.

[0125] In this embodiment, the 3D garment model rendering application of the mobile terminal generates model information required for rendering according to the selected process information, and the model information is a node tree, and the node tree corresponds one-to-one with the nodes of the Mesh tree that is finally rendered;

[0126] Generate the corresponding 3D clothing model rendering results according to the node tree, including:

[0127] All nodes have unique identifiers, which are stored in a hash table with the identifier as the key and the node as the value. The node corresponds to the Mesh in the 3D engine, and the two reference each other.

[0128] Traverse the new node tree and search for the old node according to the identifier. If found, return a closure and return the Mesh in the function. If not found, put the rendering of the Mesh into a function or closure and return the function as the result. The return value types of the above two steps are the same.

[0129] All found Mesh nodes can be marked with a flag. After the recursive traversal is completed, all unmarked nodes are marked as removed and the operation is returned as an optional result.

[0130] After the traversal is completed, one or two arrays are obtained, namely, the operation of rendering the model and the operation of removing the model (optional). After all rendering operations are completed, if the operation of removing the model is returned, it is executed to remove the redundant Mesh nodes. If it is not returned, the original parent-child relationship of all Mesh nodes is first released, and then according to the latest node tree information, starting from the root node, Mesh nodes are added in sequence to establish the Mesh tree.

[0131] All rendering operations in progress are stored in the cache using the aforementioned identifier as the key. When the previous rendering is not completed and the node information is updated, the rendering operation in the cache can be retrieved to avoid re-rendering when the node is updated before the rendering is completed. The rendering operation can be performed in a non-UI thread or time slicing can be used to avoid freezing of the current UI thread.

[0132] Embodiment 4:

[0133] Embodiment 4 of the present invention provides a method for measuring body based on large-screen photography, including the following process:

[0134] The mobile terminal and the controlled terminal are both equipped with a 3D clothing model rendering application. When the 3D clothing model rendering application of the mobile terminal is started, it registers with the screen projection device management server.

[0135] When the controlled terminal starts, it registers its LAN IP and port information with the screen projection device management server. After the controlled terminal opens the 3D clothing model rendering application, it listens to the fixed port and submits the current controlled terminal's IP address and port information to the screen projection device management server. The screen projection device management server pushes the controlled terminal's information to each connected mobile terminal.

[0136] The mobile terminal receives the measurement data and generates a 3D garment model rendering result according to the 3D garment model rendering application. The mobile terminal selects a controlled terminal for connection as needed, and the screen connected to the controlled terminal displays the same 3D garment model rendering result as the mobile terminal.

[0137] In this embodiment, the 3D garment model rendering application of the mobile terminal generates model information required for rendering according to the selected process information, and the model information is a node tree, and the node tree corresponds one-to-one with the nodes of the Mesh tree that is finally rendered;

[0138] Generate the corresponding 3D clothing model rendering results according to the node tree, including:

[0139] All nodes have unique identifiers, which are stored in a hash table with the identifier as the key and the node as the value. The node corresponds to the Mesh in the 3D engine, and the two reference each other.

[0140] Traverse the new node tree and search for the old node according to the identifier. If found, return a closure and return the Mesh in the function. If not found, put the rendering of the Mesh into a function or closure and return the function as the result. The return value types of the above two steps are the same.

[0141] All found Mesh nodes can be marked with a flag. After the recursive traversal is completed, all unmarked nodes are marked as removed and the operation is returned as an optional result.

[0142] After the traversal is completed, one or two arrays are obtained, namely, the operation of rendering the model and the operation of removing the model (optional). After all rendering operations are completed, if the operation of removing the model is returned, it is executed to remove the redundant Mesh nodes. If it is not returned, the original parent-child relationship of all Mesh nodes is first released, and then according to the latest node tree information, starting from the root node, Mesh nodes are added in sequence to establish the Mesh tree.

[0143] All rendering operations in progress are stored in the cache using the aforementioned identifier as the key. When the previous rendering is not completed and the node information is updated, the rendering operation in the cache can be retrieved to avoid re-rendering when the node is updated before the rendering is completed. The rendering operation can be performed in a non-UI thread or time slicing can be used to avoid freezing of the current UI thread.

[0144] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. For those skilled in the art, the present invention may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.

Claims

1. A system based on large-screen photography and body measurement, characterized in that: include: A mobile terminal, a controlled terminal with a screen, and a screen projection device management server. The mobile terminal communicates with the controlled terminal, and the mobile terminal and the controlled terminal communicate with the screen projection device management server respectively. The mobile terminal and the controlled terminal are both equipped with a 3D clothing model rendering application. When the 3D clothing model rendering application of the mobile terminal is started, it registers with the screen projection device management server. When the controlled terminal starts, it registers its LAN IP and port information with the screen projection device management server. After the controlled terminal opens the 3D clothing model rendering application, it listens to the fixed port and submits the current controlled terminal's IP address and port information to the screen projection device management server. The screen projection device management server pushes the controlled terminal's information to each connected mobile terminal. The mobile terminal receives the body measurement data and generates a 3D garment model rendering result according to the 3D garment model rendering application. The mobile terminal selects a controlled terminal for connection as needed, and the screen of the controlled terminal displays the same 3D garment model rendering result as that of the mobile terminal. Each data packet carries a random or increasing sequence number. When using a random sequence number, the controlled terminal will cache the sequence number for each mobile terminal for a period of time. If the same sequence number is received again, the corresponding data packet will be discarded. When using an incremental sequence number, the controlled terminal stores the sequence number of the currently received data packet. If the sequence number of the received data packet is less than or equal to the stored sequence number, the data packet is discarded; The body measurement data at least includes: image data from multiple angles, height data and weight data of the person being measured; The 3D garment model rendering application of the mobile terminal generates model information required for rendering according to the selected process information, wherein the model information is a node tree, and the node tree corresponds one-to-one to the nodes of the Mesh tree finally rendered; Generate the corresponding 3D clothing model rendering results according to the node tree, including: All nodes have unique identifiers, which are stored in a hash table with the identifier as the key and the node as the value. The node corresponds to the Mesh in the 3D engine, and the two can reference each other. Traverse the new node tree and search for the old node according to the identifier. If found, return a closure and return the Mesh in the function. If not found, put the rendering of the Mesh into a function and return the function as the result. The return value types of the above two steps are the same. All found Mesh nodes can be marked with a flag. After the recursive traversal is completed, all unmarked nodes are marked as removed and the operation is returned as an optional result. After the traversal is completed, one or two arrays are obtained, which are the operations of rendering the model and removing the model. After all rendering operations are completed, if the operation of removing the model is returned, it is executed to remove the redundant Mesh nodes. If it is not returned, the original parent-child relationship of all Mesh nodes is first released, and then according to the latest node tree information, starting from the root node, Mesh nodes are added again in sequence to establish the Mesh tree; All rendering operations in progress are stored in the cache using the aforementioned identifier as the key. When the previous rendering is not completed and the node information is updated, the rendering operation in the cache is extracted and performed in a non-UI thread or using time slicing to avoid lag in the current UI thread.

2. The system based on large-screen photography and body measurement as claimed in claim 1, characterized in that: After the controlled terminal opens the 3D clothing model rendering application, it starts a WebSocket or Socket service, listens to the fixed port, and the mobile terminal connects to the projection device management server through WebSocket or Socket.

3. The system based on large-screen photography and body measurement as claimed in claim 1, characterized in that: If the controlled terminal and the mobile terminal are in the same network segment, the mobile terminal directly connects to the Socket or WebSocket service of the controlled terminal; If the controlled terminal and the mobile terminal are not in the same network segment, the mobile terminal first sends the data packet to the screen projection device management server, which then pushes it to the controlled terminal; If the mobile terminal is not connected to the Internet, connect via Bonjour or DLNA protocol.

4. A system based on large-screen photography and body measurement, characterized in that: include: A mobile terminal, a screen, a controlled terminal with an operating system, and a screen projection device management server. The mobile terminal communicates with the controlled terminal, and the mobile terminal and the controlled terminal communicate with the screen projection device management server respectively, and the controlled terminal communicates with the screen; The mobile terminal and the controlled terminal are both equipped with a 3D clothing model rendering application. When the 3D clothing model rendering application of the mobile terminal is started, it registers with the screen projection device management server. When the controlled terminal starts, it registers its LAN IP and port information with the screen projection device management server. After the controlled terminal opens the 3D clothing model rendering application, it listens to the fixed port and submits the current controlled terminal's IP address and port information to the screen projection device management server. The screen projection device management server pushes the controlled terminal's information to each connected mobile terminal. The mobile terminal receives the body measurement data and generates a 3D garment model rendering result according to the 3D garment model rendering application. The mobile terminal selects a controlled terminal for connection as needed, and the screen connected to the controlled terminal displays the same 3D garment model rendering result as the mobile terminal. Each data packet carries a random or increasing sequence number. When using a random sequence number, the controlled terminal will cache the sequence number for each mobile terminal for a period of time. If the same sequence number is received again, the corresponding data packet will be discarded. When using an incremental sequence number, the controlled terminal stores the sequence number of the currently received data packet. If the sequence number of the received data packet is less than or equal to the stored sequence number, the data packet is discarded; The body measurement data at least includes: image data from multiple angles, height data and weight data of the person being measured; The 3D garment model rendering application of the mobile terminal generates model information required for rendering according to the selected process information, wherein the model information is a node tree, and the node tree corresponds one-to-one to the nodes of the Mesh tree finally rendered; Generate the corresponding 3D clothing model rendering results according to the node tree, including: All nodes have unique identifiers, which are stored in a hash table with the identifier as the key and the node as the value. The node corresponds to the Mesh in the 3D engine, and the two can reference each other. Traverse the new node tree and search for the old node according to the identifier. If found, return a closure and return the Mesh in the function. If not found, put the rendering of the Mesh into a function and return the function as the result. The return value types of the above two steps are the same. All found Mesh nodes can be marked with a flag. After the recursive traversal is completed, all unmarked nodes are marked as removed and the operation is returned as an optional result. After the traversal is completed, one or two arrays are obtained, which are the operations of rendering the model and removing the model. After all rendering operations are completed, if the operation of removing the model is returned, it is executed to remove the redundant Mesh nodes. If it is not returned, the original parent-child relationship of all Mesh nodes is first released, and then according to the latest node tree information, starting from the root node, Mesh nodes are added again in sequence to establish the Mesh tree; All rendering operations in progress are stored in the cache using the aforementioned identifier as the key. When the previous rendering is not completed and the node information is updated, the rendering operation in the cache is extracted and performed in a non-UI thread or using time slicing to avoid lag in the current UI thread.

5. The system based on large-screen photography and body measurement as claimed in claim 4, characterized in that: After the controlled terminal opens the 3D clothing model rendering application, it starts a WebSocket or Socket service, listens to the fixed port, and the mobile terminal connects to the projection device management server through WebSocket or Socket.

6. The system based on large-screen photography and body measurement as claimed in claim 4, characterized in that: If the controlled terminal and the mobile terminal are in the same network segment, the mobile terminal directly connects to the Socket or WebSocket service of the controlled terminal; If the controlled terminal and the mobile terminal are not in the same network segment, the mobile terminal first sends the data packet to the screen projection device management server, which then pushes it to the controlled terminal; If the mobile terminal is not connected to the Internet, connect via Bonjour or DLNA protocol.

7. A method for measuring body based on large-screen photography, characterized in that: The process includes: The mobile terminal and the controlled terminal are both equipped with a 3D clothing model rendering application. When the 3D clothing model rendering application of the mobile terminal is started, it registers with the screen projection device management server. When the controlled terminal starts, it registers its LAN IP and port information with the screen projection device management server. After the controlled terminal opens the 3D clothing model rendering application, it listens to the fixed port and submits the current controlled terminal's IP address and port information to the screen projection device management server. The screen projection device management server pushes the controlled terminal's information to each connected mobile terminal. The mobile terminal receives the body measurement data and generates a 3D garment model rendering result according to the 3D garment model rendering application. The mobile terminal selects a controlled terminal for connection as needed, and the screen of the controlled terminal displays the same 3D garment model rendering result as that of the mobile terminal. Each data packet carries a random or increasing sequence number. When using a random sequence number, the controlled terminal will cache the sequence number for each mobile terminal for a period of time. If the same sequence number is received again, the corresponding data packet will be discarded. When using an incremental sequence number, the controlled terminal stores the sequence number of the currently received data packet. If the sequence number of the received data packet is less than or equal to the stored sequence number, the data packet is discarded; The body measurement data at least includes: image data from multiple angles, height data and weight data of the person being measured; The 3D garment model rendering application of the mobile terminal generates model information required for rendering according to the selected process information, wherein the model information is a node tree, and the node tree corresponds one-to-one to the nodes of the Mesh tree finally rendered; Generate the corresponding 3D clothing model rendering results according to the node tree, including: All nodes have unique identifiers, which are stored in a hash table with the identifier as the key and the node as the value. The node corresponds to the Mesh in the 3D engine, and the two can reference each other. Traverse the new node tree and search for the old node according to the identifier. If found, return a closure and return the Mesh in the function. If not found, put the rendering of the Mesh into a function and return the function as the result. The return value types of the above two steps are the same. All found Mesh nodes can be marked with a flag. After the recursive traversal is completed, all unmarked nodes are marked as removed and the operation is returned as an optional result. After the traversal is completed, one or two arrays are obtained, which are the operations of rendering the model and removing the model. After all rendering operations are completed, if the operation of removing the model is returned, it is executed to remove the redundant Mesh nodes. If it is not returned, the original parent-child relationship of all Mesh nodes is first released, and then according to the latest node tree information, starting from the root node, Mesh nodes are added again in sequence to establish the Mesh tree; All rendering operations in progress are stored in the cache using the aforementioned identifier as the key. When the previous rendering is not completed and the node information is updated, the rendering operation in the cache is extracted and performed in a non-UI thread or using time slicing to avoid lag in the current UI thread.

8. A method for measuring body based on large-screen photography, characterized in that: The mobile terminal and the controlled terminal are both equipped with a 3D clothing model rendering application. When the 3D clothing model rendering application of the mobile terminal is started, it registers with the screen projection device management server. When the controlled terminal starts, it registers its LAN IP and port information with the screen projection device management server. After the controlled terminal opens the 3D clothing model rendering application, it listens to the fixed port and submits the current controlled terminal's IP address and port information to the screen projection device management server. The screen projection device management server pushes the controlled terminal's information to each connected mobile terminal. The mobile terminal receives the body measurement data and generates a 3D garment model rendering result according to the 3D garment model rendering application. The mobile terminal selects a controlled terminal for connection as needed, and the screen connected to the controlled terminal displays the same 3D garment model rendering result as the mobile terminal. Each data packet carries a random or increasing sequence number. When using a random sequence number, the controlled terminal will cache the sequence number for each mobile terminal for a period of time. If the same sequence number is received again, the corresponding data packet will be discarded. When using an incremental sequence number, the controlled terminal stores the sequence number of the currently received data packet. If the sequence number of the received data packet is less than or equal to the stored sequence number, the data packet is discarded; The body measurement data at least includes: image data from multiple angles, height data and weight data of the person being measured; The 3D garment model rendering application of the mobile terminal generates model information required for rendering according to the selected process information, wherein the model information is a node tree, and the node tree corresponds one-to-one to the nodes of the Mesh tree finally rendered; Generate the corresponding 3D clothing model rendering results according to the node tree, including: All nodes have unique identifiers, which are stored in a hash table with the identifier as the key and the node as the value. The node corresponds to the Mesh in the 3D engine, and the two can reference each other. Traverse the new node tree and search for the old node according to the identifier. If found, return a closure and return the Mesh in the function. If not found, put the rendering of the Mesh into a function and return the function as the result. The return value types of the above two steps are the same. All found Mesh nodes can be marked with a flag. After the recursive traversal is completed, all unmarked nodes are marked as removed and the operation is returned as an optional result. After the traversal is completed, one or two arrays are obtained, which are the operations of rendering the model and removing the model. After all rendering operations are completed, if the operation of removing the model is returned, it is executed to remove the redundant Mesh nodes. If it is not returned, the original parent-child relationship of all Mesh nodes is first released, and then according to the latest node tree information, starting from the root node, Mesh nodes are added again in sequence to establish the Mesh tree; All rendering operations in progress are stored in the cache using the aforementioned identifier as the key. When the previous rendering is not completed and the node information is updated, the rendering operation in the cache is extracted and performed in a non-UI thread or using time slicing to avoid lag in the current UI thread.

Citation Information

Patent Citations

  • Real-time point cloud editing method based on MNO tree

    CN112052359A

  • Screen projection method and mobile terminal

    CN113590059A