Image processing method, system, device and equipment and storage medium
By automating the grouping and parallel processing of material fitting tasks for multiple model meshes, the problem of low material fitting efficiency in existing technologies is solved, and efficient resource utilization of image processing systems is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-03
- Publication Date
- 2026-03-10
AI Technical Summary
Existing material fitting methods are inefficient, leading to wasted resources in image processing systems and an inability to efficiently handle material fitting tasks involving multiple model meshes.
By acquiring the material and lighting data of multiple model meshes of the target object, the material differential fitting is automatically grouped and performed in parallel, and the material fitting efficiency is improved by utilizing cloud resource clusters or local computing resources.
It improves the material fitting efficiency of mesh groups, enhances the production efficiency of object texture data, reduces system resource waste, and optimizes the operating efficiency of the image processing system.
Smart Images

Figure CN121639892A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of image rendering technology, and in particular to an image processing method, system, apparatus, device and storage medium. Background Technology
[0002] Material baking is a common technique in 3D modeling and rendering. It typically involves combining multiple texture maps of the object to be rendered into a single texture map. During the image rendering process of the object, this single texture map can be directly mapped onto the model of the object to be rendered, which can significantly reduce rendering resource overhead while approximating the original rendering effect.
[0003] Currently, existing material fitting methods typically require manually grouping the model mesh of the object to be rendered, and only one group of model mesh can be specified at a time for material fitting. This results in low fitting efficiency, which in turn affects the operating efficiency of the image processing system and leads to a waste of system resources. Summary of the Invention
[0004] This application provides an image processing method, system, apparatus, device, and storage medium, which can effectively improve the production efficiency of object texture data while enhancing the material fitting efficiency of mesh groups, thereby improving the operating efficiency of the image processing system and reducing the waste of system resources. The technical solution of this application is as follows:
[0005] On the one hand, an image processing method is provided, the method comprising:
[0006] Obtain the material data of multiple model meshes of the target object in the target scene and the lighting data of the target object in the target scene. The material data of each model mesh includes: diffuse map data;
[0007] Based on the diffuse texture data of each of the multiple model meshes, the multiple model meshes are grouped to obtain multiple mesh groups, and the diffuse texture data of the model meshes in each mesh group is the same.
[0008] Extract sub-lighting data for each of the multiple grid groups from the lighting data;
[0009] Based on the sub-lighting data and material data of each mesh group, material differential fitting is performed in parallel on the multiple mesh groups to obtain the fitted texture data of each of the multiple mesh groups.
[0010] Based on the fitted texture data of each of the multiple mesh groups, material baking is performed on the target object to obtain the object texture data of the target object in the target scene.
[0011] On the other hand, an image processing system is provided, the system comprising: an image processing terminal, an image processing platform, and a cloud resource cluster; wherein:
[0012] The image processing terminal is used to acquire material data of multiple model meshes of a target object in a target scene and lighting data of the target object in the target scene. The material data of each model mesh includes diffuse texture data. Based on the diffuse texture data of each model mesh, the multiple model meshes are grouped to obtain multiple mesh groups, and the diffuse texture data of the model meshes in each mesh group is the same. Sub-lighting data of each of the multiple mesh groups is extracted from the lighting data. The material data of each mesh group and the sub-lighting data of each mesh group are sent to the image processing platform. The terminal receives the fitted texture data of each of the multiple mesh groups sent by the image processing platform. Based on the fitted texture data of each of the multiple mesh groups, the target object is baked to obtain the object texture data of the target object in the target scene.
[0013] The image processing platform is used to schedule the cloud resource cluster to perform material differential fitting on the multiple mesh groups in parallel based on the material data and sub-lighting data of each mesh group; and to feed back the fitted texture data of each of the multiple mesh groups sent by the cloud resource cluster to the image processing terminal.
[0014] The cloud resource cluster is used to perform material differential fitting on the multiple mesh groups in parallel to obtain the fitting texture data of each of the multiple mesh groups; and to send the fitting texture data of each of the multiple mesh groups to the image processing platform.
[0015] On the other hand, an image processing apparatus is provided, the apparatus comprising:
[0016] The data acquisition module is used to acquire the material data of multiple model meshes of the target object in the target scene and the lighting data of the target object in the target scene. The material data of each model mesh includes: diffuse texture data;
[0017] The mesh grouping model is used to group the multiple model meshes based on their respective diffuse texture data to obtain multiple mesh groups, where the diffuse texture data of the model meshes in each mesh group is the same;
[0018] A sub-illuminance data extraction module is used to extract sub-illuminance data for each of the multiple grid groups from the illumination data;
[0019] The parallel fitting module is used to perform material differential fitting on the multiple mesh groups in parallel based on the sub-lighting data and material data of each mesh group, so as to obtain the fitting texture data of each of the multiple mesh groups.
[0020] The material baking module is used to bake the material of the target object based on the fitted texture data of each of the multiple mesh groups, so as to obtain the object texture data of the target object in the target scene.
[0021] On the other hand, an image processing apparatus is provided, the apparatus including a processor and a memory, the memory storing at least one instruction or at least one program, the at least one instruction or the at least one program being loaded and executed by the processor to implement the image processing method as described above.
[0022] On the other hand, a computer-readable storage medium is provided, wherein at least one instruction or at least one program is stored therein, the at least one instruction or the at least one program being loaded and executed by a processor to implement the image processing method as described above.
[0023] On the other hand, a computer program product or computer program is provided, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the image processing method described above.
[0024] The image processing method, system, apparatus, device, and storage medium provided in this application have the following technical advantages:
[0025] In the application scenario of producing texture resources for target objects, this application utilizes the diffuse reflection texture data from the material data of multiple model meshes of the target object in the target scene to automatically group multiple model meshes into multiple mesh groups. The diffuse reflection texture data corresponding to the model meshes in each mesh group is the same, which effectively improves the rationality and efficiency of mesh grouping. Then, the application automatically extracts the sub-lighting data of each mesh group from the lighting data of the target object in the target scene. Based on the sub-lighting data and material data of each mesh group, the application performs parallel material differential fitting on multiple mesh groups to obtain the fitted texture data of each mesh group, which greatly improves the material fitting efficiency of the mesh groups. Based on the fitted texture data of each mesh group, the application performs material baking on the target object to obtain the object texture data of the target object in the target scene. This can effectively improve the production efficiency of object texture data while improving the material fitting efficiency of the mesh groups, thereby improving the operating efficiency of the image processing system and reducing the waste of system resources. Attached Figure Description
[0026] To more clearly illustrate the technical solutions and advantages in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0027] Figure 1 This is a schematic diagram of an application environment provided in an embodiment of this application;
[0028] Figure 2 This is a schematic flowchart of an image processing method provided in an embodiment of this application;
[0029] Figure 3 This is a flowchart illustrating a process of grouping multiple model meshes into multiple mesh groups based on the diffuse reflection map data of each model mesh provided in this application embodiment;
[0030] Figure 4 This is a schematic diagram of a process for collecting illumination data provided in an embodiment of this application;
[0031] Figure 5 This is a flowchart illustrating the process of extracting sub-lighting data from a mesh group in a game scene, as provided in an embodiment of this application.
[0032] Figure 6 This is a flowchart illustrating another image processing method provided in an embodiment of this application;
[0033] Figure 7 This is a flowchart illustrating a material fitting process based on a service proxy, as provided in an embodiment of this application.
[0034] Figure 8 This is a data interaction diagram based on an image processing system provided in an embodiment of this application;
[0035] Figure 9 This is a block diagram of an image processing apparatus provided in an embodiment of this application;
[0036] Figure 10 This is a schematic diagram of the structure of an image processing device provided in an embodiment of this application. Detailed Implementation
[0037] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of this application.
[0038] It should be noted that the terms "comprising" and "having" and any variations thereof in the specification, claims and accompanying drawings of this application are intended to cover non-exclusive inclusion. For example, a process, method, system, product or server that includes a series of steps or units is not necessarily limited to those steps or units that are explicitly listed, but may include other steps or units that are not explicitly listed or that are inherent to such processes, methods, products or devices.
[0039] It is understood that in the specific embodiments of this application, data such as user information are involved. When the above embodiments of this application are applied to specific products or technologies, user permission or consent is required, and the collection, use and processing of related data must comply with the relevant laws, regulations and standards of the relevant countries and regions.
[0040] To facilitate understanding of the embodiments of this application, several concepts will be briefly introduced below:
[0041] Differentiable Rendering (DR): Differentiable rendering involves calculating the derivative of the rendering process. Specific applications can include incorporating the rendering process into neural networks to solve more complex visual problems (differentiability is a necessary condition for training the network).
[0042] In differential rendering, a mesh typically refers to the geometric grid that makes up a 3D model. It consists of multiple vertices, edges, and faces, where faces are usually polygons composed of multiple triangles. During rendering, the mesh provides geometric information about objects in the scene, which is then processed by the rendering engine to calculate the final image output.
[0043] Local Monitor: A graphical (visual) tool for a local supervised material fitting process.
[0044] Physically Based Shading Model (PBR) is a rendering technique that simulates real-world lighting and material properties. In PBR rendering, multiple material maps are typically needed to define the surface characteristics of an object, including diffuse maps, normal maps, metallic maps, and roughness maps.
[0045] Unity: A rendering engine that supports 3D game development and is now widely used in mobile games, virtual reality, and augmented reality.
[0046] UE (Unreal Engine): A 3D graphics rendering engine that provides developers with a range of powerful features.
[0047] DCC (Digital Content Creation): This type of software is designed for creating, editing, managing, and synthesizing various digital media content. It covers a wide range of creative and technological applications and is mainly used to generate, process, and ultimately present various forms of digital artworks and multimedia projects.
[0048] FrameDebugger: A GPU data viewing tool in Unity. Its technical principle is to hook into Unity's rendering pipeline, capture the rendering process of each frame, save it, and then view and analyze this data in the editor.
[0049] The image processing method provided in this application embodiment can be applied to, for example... Figure 1 In the application environment shown, this environment may include a client 10 and a server 20, which can be indirectly connected via wireless communication. A relevant object (such as a user) can send an image processing request carrying the target object to the server 20 through the client 10. In response to the image processing request, the server 20 obtains the material data of multiple model meshes of the target object in the target scene and the lighting data of the target object in the target scene. The material data of each model mesh includes diffuse map data. Then, based on the diffuse map data of each model mesh, the multiple model meshes are grouped to obtain multiple mesh groups. The diffuse map data corresponding to the model meshes in each mesh group is the same. Sub-lighting data of each mesh group is extracted from the lighting data. Then, based on the sub-lighting data and the material data of each mesh group, material differential fitting is performed in parallel on the multiple mesh groups to obtain the fitted texture data of each mesh group. Finally, based on the fitted texture data of each mesh group, material baking is performed on the target object to obtain the object texture data of the target object in the target scene, and the object texture data is fed back to the client 10. It should be noted that... Figure 1 This is just one example.
[0050] The client can be a physical device such as a smartphone, computer (e.g., desktop computer, tablet computer, laptop computer), digital assistant, smart voice interaction device (e.g., smart speaker), smart wearable device, in-vehicle terminal, etc., or it can be software running on the physical device, such as a computer program. The operating system corresponding to the first client can be Android, iOS (a mobile operating system developed by Apple), Linux, Microsoft Windows, etc.
[0051] The server side can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms. The server may include network communication units, processors, and memory, etc. The server side can provide backend services to the corresponding clients.
[0052] The aforementioned client 10 and server 20 can be used to build an image processing system, which can be a distributed system.
[0053] It should be noted that the image processing method provided in this application can be applied to both the client and the server, and is not limited to the embodiments described above.
[0054] The following describes a specific embodiment of an image processing method provided in this application. Figure 2 This is a flowchart illustrating an image processing method provided in an embodiment of this application. This application provides the operational steps of the method described in the embodiment or flowchart, but based on conventional or non-inventive labor, more or fewer operational steps may be included. The order of steps listed in the embodiment is merely one possible execution order among many steps and does not represent the only execution order. In actual systems or products, the method can be executed sequentially or in parallel (e.g., in a parallel processor or multi-threaded processing environment) as shown in the embodiment or drawings. Specifically, as... Figure 2 As shown, the method may include:
[0055] S201, Obtain the material data of each of the multiple model meshes of the target object in the target scene and the lighting data of the target object in the target scene. The material data of each model mesh includes: diffuse texture data.
[0056] In the embodiments of this specification, the target scene can be a virtual scene displayed (or provided) by an application running on a terminal. This virtual scene can be a simulation of the real world, a semi-simulated / semi-fictional virtual environment, or a purely fictional virtual environment. The virtual scene can be any one of a two-dimensional, 2.5-dimensional, or three-dimensional virtual scene; this application embodiment does not limit the dimension of the virtual scene. For example, a virtual scene can include the sky, land, ocean, etc., and the land can include environmental elements such as deserts and cities. Illustratively, the application can be a game program, and correspondingly, the virtual scene can be a game scene.
[0057] In the embodiments of this specification, the target object can be a virtual object displayed in a virtual scene. Specifically, the types of virtual objects can include, but are not limited to, people, animals, plants, buildings, etc. A virtual scene can include multiple virtual objects, each with its own shape and volume, occupying a portion of the space in the virtual scene. Illustratively, the virtual object can be a virtual avatar representing the user within the virtual scene.
[0058] It should be noted that, in this embodiment, the virtual object can be represented as an object model. Specifically, the object model can include multiple model meshes that constitute the model. Each model mesh is a geometric mesh composed of vertices, edges, and faces. The material data of each mesh can be relevant parameters used to define the visual characteristics of the mesh surface. The material data can affect the lighting, shadows, reflections, and other effects during the rendering process.
[0059] In one specific embodiment, the material data for each mesh may include, but is not limited to, multiple texture data. Schematic, the multiple texture data may include, for example, diffuse maps, normal maps, metallic maps, and roughness maps.
[0060] In an optional embodiment, the material data of each of the multiple model meshes of the target object may include: extracting the material data of each of the multiple model meshes from the physically based rendering shading model of the target object in the target scene.
[0061] In the embodiments of this specification, the lighting data of the target object in the target scene can be used to simulate the interaction between virtual light and the surface of the target object in the target scene. In a specific embodiment, the lighting data can be obtained by performing lighting calculations on the target object based on the light source data in the target scene.
[0062] S202, based on the diffuse texture data of each of the multiple model meshes, the multiple model meshes are grouped to obtain multiple mesh groups, and the diffuse texture data of the model meshes in each mesh group is the same.
[0063] Specifically, material baking based on differential fitting essentially fits multiple material maps required by physically based rendering shading models into a single diffuse map. Therefore, diffuse map data can be used as the basis for grouping model meshes, thereby performing material differential fitting on model meshes with the same diffuse map data in the same mesh group, which can effectively improve the training efficiency of material differential fitting.
[0064] In a specific embodiment, such as Figure 3 As shown above, based on the diffuse texture data of each of the multiple model meshes, the multiple model meshes are grouped to obtain multiple mesh groups, which may include:
[0065] S301, determine the texture data set under the diffuse type and the data identification information corresponding to each texture data in the texture data set.
[0066] Specifically, a texture data set under the diffuse type can contain multiple texture parameters under the diffuse type. Each texture data corresponds to a unique data identifier. For example, the data identifier may include: data name, data sequence number, etc.
[0067] S302 iterates through the diffuse texture data of multiple model meshes.
[0068] S303: If the diffuse texture data of the currently traversed model mesh is the target data, mark the data identification information corresponding to the target data on the currently traversed model mesh; the target data is any texture data in the texture data set.
[0069] Specifically, when the diffuse texture data of the currently traversed model mesh is any texture data in the texture data set, the data identification information corresponding to the texture data is used as the marker of the currently traversed model mesh. Indicatively, it can be stored in the form of (data identification information, [Mesh i]), where Mesh i can represent the i-th model mesh among multiple model meshes.
[0070] S304, if the diffuse texture data of the currently traversed model mesh is not the target data, based on the diffuse texture data of the currently traversed model mesh, update the texture data set and the data identification information corresponding to the texture data set, and mark the data identification information corresponding to the diffuse texture data of the currently traversed model mesh.
[0071] Specifically, if the diffuse texture data of the currently traversed model mesh is not any texture data in the texture data set, the diffuse texture data of the currently traversed model mesh is added to the texture data set as a new texture data, and a new identification information corresponding to the new texture data is generated, thereby marking the currently traversed model mesh with the new identification information.
[0072] S305 After traversing the diffuse texture data of multiple model meshes, the multiple model meshes are grouped based on the data identification information to obtain multiple mesh groups. The data identification information of the model meshes in each mesh group is the same.
[0073] Specifically, model grids with the same corresponding data identification information are grouped together to obtain multiple grid groups.
[0074] As can be seen from the above embodiments, using diffuse texture data as the basis for grouping model meshes and automatically grouping multiple model meshes can improve the rationality and efficiency of mesh grouping. Thus, performing material differential fitting on model meshes with the same diffuse texture data in the same mesh group can reduce iteration time and effectively improve the training efficiency of material differential fitting.
[0075] S203 extracts sub-illumination data from multiple grid groups from the illumination data.
[0076] In a specific embodiment, such as Figure 4 As shown, the illumination data was collected in the following way:
[0077] S401, captures static lighting data associated with the target object from the rendering tool.
[0078] Specifically, the rendering tool can be an image processing tool with image rendering capabilities, and the static lighting data can be the lighting data pre-configured in the rendering tool. For illustrative purposes, the rendering tool can include, but is not limited to, Unity, UE, DCC, etc.
[0079] In one specific embodiment, static lighting data may include, but is not limited to: light source information of the target scene (e.g., light source position, light source direction, light source color, light source intensity, light source rotation angle, etc.), position information of the target object in the target scene, and light map data of the target object (e.g., IBL diffuse file, specular file, etc.).
[0080] In an optional embodiment, static lighting data associated with the target object in the target scene can be collected from the editor of the rendering tool, or static lighting data associated with the target object can be extracted from the object video while playing the object video of the target object in the target scene. For example, if the target scene is a game scene, the object video can be the idle animation of the target object.
[0081] S402, during the playback of the object video of the target object in the target scene, the rendering and drawing records corresponding to the target object are collected based on the frame debugger corresponding to the rendering tool.
[0082] Specifically, the frame debugger can hook the rendering pipeline of the rendering tool to capture the GPU rendering process of each video frame in the target video, thereby generating the rendering and drawing record corresponding to the target object in each video frame.
[0083] S403 extracts dynamic lighting data associated with the target object from the rendering and drawing records.
[0084] Specifically, dynamic lighting data can be real-time lighting calculation data during GPU rendering. In an optional embodiment, the object video may include multiple video frames, the rendering and drawing records may include drawing records corresponding to each of the multiple video frames, and the dynamic lighting data may include lighting calculation data corresponding to each of the multiple video frames.
[0085] S404 uses static lighting data and dynamic lighting data as lighting data.
[0086] In an optional embodiment, the above-mentioned lighting data may include: static lighting data and dynamic lighting data, and extracting sub-lighting data for each of the multiple grid groups from the lighting data may include:
[0087] S2031, extract sub-static lighting data from multiple grid groups from static lighting data;
[0088] S2032 extracts sub-dynamic lighting data from multiple grid groups from dynamic lighting data.
[0089] Specifically, extracting sub-dynamic lighting data for each grid group from dynamic lighting data can include: extracting sub-dynamic lighting data for each grid group from the lighting calculation data corresponding to each video frame in multiple video frames.
[0090] Indicative Figure 5 This is a flowchart illustrating the sub-lighting data extraction process for a mesh group in a game scene, as provided in an embodiment of this application. Figure 5As shown, the idle animation of the target object in the target scene is played. During the playback of the idle animation, scene light source data, object model position data, camera data, lightmap data, and various material data of the object model are collected from the editor of the rendering tool as static lighting data. Sub-static lighting data of multiple mesh groups are extracted from the static lighting data. Then, the frame debugger in the rendering tool (e.g., Unity) is opened to determine the total number of frames of the idle animation. The rendering drawing record corresponding to each frame of the animation is collected in sequence. Dynamic lighting data associated with the target object is extracted from the rendering drawing record corresponding to each frame of the animation. Then, sub-dynamic lighting data of multiple mesh groups are extracted from the dynamic lighting data corresponding to each frame of the animation. Finally, the scene is rendered based on the sub-static lighting data and the sub-dynamic lighting data of each mesh group to obtain the scene rendering data used for material fitting.
[0091] As can be seen from the above embodiments, by collecting static lighting data associated with the target object in the rendering tool and collecting the rendering drawing records corresponding to the target object based on the frame debugger of the rendering tool during the playback of the target object video in the target scene, and using the static lighting data and dynamic lighting data associated with the target object from the rendering drawing records, the comprehensiveness and accuracy of the lighting data can be improved.
[0092] S204, based on the sub-lighting data and material data of each mesh group, performs material differential fitting on multiple mesh groups in parallel to obtain the fitting texture data of each mesh group.
[0093] Specifically, the material differential fitting operation for each mesh group can be an iterative training process. Illustratively, the material differential fitting operation may include the following steps:
[0094] S1: Based on the sub-lighting data and material data of each mesh group, perform standard rendering processing on the model mesh in each mesh group to obtain the target rendering image corresponding to each mesh group;
[0095] S2: Based on the sub-lighting data of each mesh group, perform differential fitting on the material data of each mesh group to obtain the fitted diffuse texture of each mesh group;
[0096] S3: Based on the fitted diffuse map, perform fitting rendering on each mesh group to obtain the fitted rendering image corresponding to each mesh group;
[0097] S4: Based on the target rendered image and the fitted rendered image, construct the rendering loss information corresponding to each grid group;
[0098] S5: Update the fitted diffuse map based on the rendering loss information until the iteration termination condition is met. Use the updated fitted diffuse map at the end of the iteration as the fitted map data for each mesh group.
[0099] In an optional embodiment, the above-mentioned construction of rendering loss information corresponding to each grid group based on the target rendering image and the fitted rendering image may include: determining the rendering loss information between the target rendering image and the fitted rendering image based on a preset rendering loss function.
[0100] In an optional embodiment, the above-mentioned iteration termination condition may be that the value of the current rendering loss information is less than a preset loss threshold, or that the number of iterations has reached a preset number. This application does not impose any special limitations on this.
[0101] In a specific embodiment, the above-mentioned parallel material differential fitting of multiple mesh groups based on the sub-lighting data and material data of each mesh group to obtain the fitted texture data of each mesh group may include:
[0102] S2041, based on the material data and sub-lighting data of each mesh group, creates a material fitting task corresponding to each mesh group.
[0103] Specifically, based on the material data and sub-lighting data of each mesh group, data conversion is performed according to a preset protocol format to obtain the corresponding protocol message and art resources for each mesh group. Then, based on the protocol message and art resources, the corresponding material fitting task for each mesh group is configured. Specifically, the preset protocol format can be a pre-agreed protocol format between different processing modules of the image processing system.
[0104] S2042, determine the currently available computing resources.
[0105] Specifically, available computing resources can be GPU hardware resources used for material differential fitting.
[0106] S2043 controls available computing resources to execute material fitting tasks for multiple mesh groups in parallel, obtaining fitting texture data for each mesh group.
[0107] As can be seen from the above embodiments, based on the material data and sub-lighting data of each mesh group, a material fitting task corresponding to each mesh group is created, and the available computing resources are controlled to execute the material fitting tasks of multiple mesh groups in parallel, thereby obtaining the fitting texture data of multiple mesh groups. This can effectively improve the production efficiency of object texture data while improving the material fitting efficiency of mesh groups, thereby improving the operating efficiency of the image processing system and reducing the waste of system resources.
[0108] In an optional embodiment, when the available computing resources are cloud computing resources, the above determination of the current available computing resources may include:
[0109] 1) Determine the number of parallel computing resources required for the material fitting task corresponding to multiple mesh groups.
[0110] Specifically, the number of parallel computing resources can be the number of GPU resources required for the material fitting task corresponding to multiple mesh groups. For example, if the computing resources required for the material fitting task of each mesh group are 1 GPU computing node, then the parallel computing resources required for the material fitting task corresponding to N mesh groups are N GPU computing nodes.
[0111] 2) Based on the number of parallel computing resources, send a cloud resource allocation request to the cloud resource cluster to obtain cloud computing resources.
[0112] Specifically, it requests cloud computing resources from the cloud resource cluster corresponding to the number of parallel computing resources, and controls the cloud computing resources to execute the material fitting tasks of multiple mesh groups in parallel.
[0113] In another optional embodiment, when the available computing resources are local computing resources, the above-mentioned control of available computing resources to execute the material fitting tasks of multiple mesh groups in parallel, and to obtain the fitting texture data of multiple mesh groups, may include:
[0114] 1) Determine the number of parallel tasks corresponding to the local computing resources.
[0115] Specifically, the number of parallel tasks can be the maximum number of material fitting tasks that can be executed in parallel based on local computing resources.
[0116] 2) Control local computing resources and execute the material fitting tasks of multiple mesh groups in parallel based on the number of parallel tasks to obtain the fitting texture data of multiple mesh groups.
[0117] In an optional embodiment, when the number of parallel tasks is greater than or equal to the number of mesh groups, local computing resources can be controlled to directly process the material fitting tasks of each of the multiple mesh groups in parallel. When the number of parallel tasks is less than the number of mesh groups, controlling local computing resources to execute the material fitting tasks of each of the multiple mesh groups in parallel based on the number of parallel tasks, and obtaining the fitted texture data of each of the multiple mesh groups, may include: determining a number of current parallel tasks (currently scheduled material fitting tasks) from the material fitting tasks of each of the multiple mesh groups, adding other material fitting tasks besides the number of current parallel tasks to the waiting queue; executing the number of current parallel tasks in parallel; after any current task in the number of current parallel tasks has been executed, updating the number of current parallel tasks based on the material fitting task ranked first in the waiting queue, obtaining a number of updated parallel tasks; and based on the number of updated parallel tasks, jumping to the step of executing the number of current parallel tasks in parallel, until the number of tasks in the waiting queue is zero.
[0118] As can be seen from the above embodiments, when the available computing resources are cloud computing resources, cloud computing resources corresponding to the number of parallel computing resources can be requested from the cloud resource cluster, and the cloud computing resources can be controlled to execute the material fitting tasks of multiple mesh groups in parallel. Based on the automatic expansion capability of cloud computing resources, the execution efficiency of material fitting can be further improved. When the available computing resources are local computing resources, local computing resources can be controlled to execute the material fitting tasks of multiple mesh groups in parallel based on the number of parallel tasks. This can improve the execution efficiency of material fitting while improving the utilization rate of local computing resources.
[0119] S205, based on the fitted texture data of multiple mesh groups, performs material baking on the target object to obtain the object texture data of the target object in the target scene.
[0120] In the embodiments described in this specification, the object texture data of the target object in the target scene is texture data that can be directly applied to the object model during the image rendering process. Specifically, the object texture data can be stored as game art resources. In practical applications, when the user operates the application to run the target scene, the application can directly read the object texture data from the game art resources for image rendering to obtain the rendered object image.
[0121] In a specific embodiment, such as Figure 6 As shown, obtaining the material data of each of the multiple model meshes of the target object in the target scene and the lighting data of the target object in the target scene can include:
[0122] S2011, the image processing page is displayed, showing multiple objects to be processed.
[0123] Specifically, multiple objects to be processed can be multiple virtual objects contained in the target scene.
[0124] Specifically, the image processing page can be a visualization operation page in a visualization tool used to supervise the material fitting process; illustratively, this visualization tool can be a Local Monitor.
[0125] S2012, in response to an object selection instruction for a target object among multiple objects to be processed, obtains the material data and lighting data of each of the multiple model meshes.
[0126] Accordingly, the above methods may also include:
[0127] S206 performs real-time detection of texture data in the preset texture cache area.
[0128] S207, If the object texture data of the target object is detected, display the object texture data on the image processing page.
[0129] Specifically, the visualization tools are decoupled from the material fitting process. The underlying layer continuously executes the material fitting process for virtual objects, and then writes the resulting texture data of the virtual objects into a preset texture cache area. This preset texture cache area can be a specific color cache area. The Local Monitor performs real-time detection of texture data in the preset texture cache area. When the object texture data of a certain virtual object is detected, the object texture data of the virtual object is displayed on the corresponding image processing page.
[0130] As can be seen from the above embodiments, by decoupling the visualization tool from the material fitting process, the underlying layer continuously executes the material fitting process for virtual objects. The Local Monitor performs real-time detection of texture data in the preset texture cache area. When the object texture data of a certain virtual object is detected, the object texture data of the virtual object is displayed on the corresponding image processing page. This can improve the automation level of the material fitting process, enable multiple mesh groups to perform material fitting in parallel, and effectively improve the production efficiency of object texture data by improving the material fitting efficiency of mesh groups. This, in turn, improves the operating efficiency of the image processing system and reduces the waste of system resources.
[0131] Indicative Figure 7 This is a flowchart illustrating a material fitting process based on a service proxy, as provided in an embodiment of this application. Figure 7 As shown, specifically:
[0132] S701: The local rendering tool plugin can divide the model meshes that share a diffuse map in multiple model meshes of the target object into a mesh group (i.e. the smallest training unit for material fitting training), obtain multiple mesh groups, and collect the material data and sub-lighting data corresponding to each mesh group.
[0133] S702: The rendering tool plugin performs data conversion on the material data and sub-lighting data corresponding to each mesh group based on a preset protocol format, obtaining the protocol message and art assets corresponding to each mesh group. Specifically, the preset protocol format is a protocol format pre-agreed between the rendering tool plugin and the image processing service.
[0134] S703: The service proxy module is responsible for establishing a communication connection between the rendering tool plugin and the image processing service. Specifically, it standardizes the protocol messages sent by one party (the rendering tool plugin and the image processing service) and sends the standardized protocol messages to the other party. The rendering tool plugin can send the protocol messages and art assets corresponding to each mesh group to the image processing service through the service proxy module. Optionally, the training data (protocol messages and art assets) corresponding to multiple mesh groups can be sent sequentially in a certain order, or the training data corresponding to multiple mesh groups can be sent in parallel.
[0135] S704: The image processing service can forward training data corresponding to multiple mesh groups to the fitting training module, supervising the material fitting training process of the fitting training module for multiple mesh groups. Optionally, the image processing service can be a local service or a cloud service.
[0136] S705: The fitting training module performs material fitting training on multiple mesh groups based on its own computing resources. Optionally, the material fitting training can be performed on multiple mesh groups sequentially in a certain order, or the material fitting training can be performed on multiple mesh groups in parallel.
[0137] S706: The image processing service obtains the training results (fitted texture data) for each grid group from the fitting training module.
[0138] S707: The rendering tool plugin receives training results from the image processing service through the service proxy module.
[0139] S708: The rendering tool plugin performs material baking on the target object based on the fitted texture data of multiple mesh groups, and obtains the object texture data of the target object in the target scene.
[0140] This application embodiment also provides an image processing system, the system comprising: an image processing terminal, an image processing platform, and a cloud resource cluster; wherein:
[0141] An image processing terminal is used to acquire material data of multiple model meshes of a target object in a target scene and lighting data of the target object in the target scene. The material data of each model mesh includes diffuse texture data. Based on the diffuse texture data of each model mesh, the multiple model meshes are grouped into multiple mesh groups, and the diffuse texture data of the model meshes in each mesh group is the same. Sub-lighting data of each mesh group is extracted from the lighting data. The material data and sub-lighting data of each mesh group are sent to the image processing platform. The terminal receives the fitted texture data of each mesh group sent by the image processing platform. Based on the fitted texture data of each mesh group, the target object is baked to obtain the object texture data of the target object in the target scene.
[0142] The image processing platform is used to schedule the cloud resource cluster to perform material differential fitting on multiple mesh groups in parallel based on the material data and sub-lighting data of each mesh group; and to feed back the fitted texture data of each mesh group sent by the cloud resource cluster to the image processing terminal.
[0143] The cloud resource cluster is used to perform material differential fitting on multiple mesh groups in parallel to obtain the fitting texture data of each mesh group; the fitting texture data of each mesh group is then sent to the image processing platform.
[0144] Specifically, an image processing terminal can be a rendering engine, a rendering plugin, or an application with rendering capabilities. The image processing platform provides unified network protocol standards (e.g., HTTP, gRPC) and platform access services to different types of image processing terminals.
[0145] In one specific embodiment, the image processing platform is further configured to determine the currently available cloud resources in the cloud resource cluster; if the currently available cloud resources meet the number of parallel computing resources required by multiple grid groups, control the currently available cloud resources to perform material differential fitting on multiple grid groups in parallel; if the currently available cloud resources do not meet the number of parallel computing resources, send a resource expansion request to the cloud resource cluster, obtain the expanded cloud resources allocated by the cloud resource cluster, and control the currently available cloud resources and the expanded cloud resources to perform material differential fitting on multiple grid groups in parallel, thereby realizing the automated expansion of training hardware resources.
[0146] In one specific embodiment, the image processing platform may include: an access service, an application service, a scheduling service, and a computing service, wherein: the access service is responsible for communicating with the image processing terminal, the application service is responsible for storing art resources, the scheduling service is used to schedule resources for the cloud resource cluster, and the computing service is used to control the cloud resource cluster to perform computing operations (material fitting).
[0147] Indicative Figure 8 This application provides a data interaction diagram based on an image processing system, specifically, as shown in the embodiments below. Figure 8 As shown, the image processing system may include: an image processing terminal 810, an image processing platform 820, and a cloud resource cluster 830. The image processing platform 820 may include: an access service 821, an application service 822, and a scheduling service 823. The image processing terminal 810, in response to a material baking instruction for a target object, can group multiple model meshes of the target object into multiple mesh groups, configure material differential fitting tasks corresponding to each mesh group, and then call the access service 821 based on gRPC (a remote procedure call framework) to send the material differential fitting tasks. The access service 821 forwards the material differential fitting tasks from the image processing terminal 810. The scheduling service 823 sends a resource scheduling request to the cloud resource cluster 830 based on the material differential fitting task. The cloud resource cluster 830 responds to the resource scheduling request, executes the material differential fitting tasks corresponding to multiple mesh groups in parallel, and feeds back the fitting texture data corresponding to each mesh group to the image processing platform 820. The image processing platform 820 can store the fitting texture data corresponding to each mesh group in the application service 822 and feed it back to the image processing terminal 810 based on the access service 821. The image processing terminal 810 performs material baking on the target object based on the fitting texture data of multiple mesh groups to obtain the object texture data of the target object in the target scene.
[0148] It should be noted that the apparatus and method embodiments in the system embodiments are based on the same inventive concept.
[0149] As can be seen from the technical solutions provided in the embodiments of this application above, in the application scenario of producing texture resources for target objects, the diffuse reflection texture data in the material data of multiple model meshes of the target object in the target scene is used to automatically group multiple model meshes to obtain multiple mesh groups. The diffuse reflection texture data corresponding to the model meshes in each mesh group is the same, which effectively improves the rationality and efficiency of mesh grouping. Then, the sub-lighting data of each mesh group is automatically extracted from the lighting data of the target object in the target scene. Based on the sub-lighting data and material data of each mesh group, the material differential fitting of multiple mesh groups is performed in parallel to obtain the fitted texture data of each mesh group, which greatly improves the material fitting efficiency of the mesh groups. Based on the fitted texture data of each mesh group, the target object is baked to obtain the object texture data of the target object in the target scene. On the basis of improving the material fitting efficiency of the mesh groups, the production efficiency of object texture data can be effectively improved, thereby improving the operating efficiency of the image processing system and reducing the waste of system resources.
[0150] This application also provides an image processing apparatus, such as... Figure 9 As shown, the image processing apparatus may include:
[0151] The data acquisition module 910 is used to acquire the material data of each of the multiple model meshes of the target object in the target scene and the lighting data of the target object in the target scene. The material data of each model mesh includes: diffuse texture data;
[0152] The mesh grouping module 920 is used to group multiple model meshes based on their respective diffuse texture data to obtain multiple mesh groups. The diffuse texture data of the model meshes in each mesh group is the same.
[0153] Sub-illuminance data extraction module 930 is used to extract sub-illuminance data for each of multiple grid groups from the illumination data;
[0154] Parallel fitting module 940 is used to perform material differential fitting on multiple mesh groups in parallel based on the sub-lighting data and material data of each mesh group, so as to obtain the fitting texture data of each mesh group.
[0155] The Material Baking Module 950 is used to bake materials on a target object based on the fitted texture data of multiple mesh groups, so as to obtain the object texture data of the target object in the target scene.
[0156] In one specific embodiment, the above-mentioned mesh grouping model 920 may include:
[0157] The data identification information determination unit is used to determine the texture data set under the diffuse reflection type and the data identification information corresponding to each texture data in the texture data set;
[0158] The traversal unit is used to traverse the diffuse map data of multiple model meshes.
[0159] The first identification and marking unit is used to mark the data identification information corresponding to the target data of the currently traversed model mesh when the diffuse texture data of the currently traversed model mesh is the target data; the target data is any texture data in the texture data set;
[0160] The second identification and marking unit is used to update the texture data set and the data identification information corresponding to the texture data set based on the diffuse texture data of the currently traversed model mesh when the diffuse texture data of the currently traversed model mesh is not the target data, and to mark the data identification information corresponding to the diffuse texture data of the currently traversed model mesh.
[0161] The mesh grouping unit is used to group multiple model meshes based on data identification information after traversing the diffuse map data of each model mesh, resulting in multiple mesh groups. The data identification information of the model meshes in each mesh group is the same.
[0162] In one specific embodiment, the illumination data is acquired using the following device:
[0163] The static lighting data acquisition unit is used to acquire static lighting data associated with the target object in the rendering tool;
[0164] The rendering and drawing record acquisition unit is used to acquire the rendering and drawing records of the target object based on the frame debugger of the rendering tool during the playback of the target object video in the target scene.
[0165] The dynamic lighting data extraction unit is used to extract dynamic lighting data associated with the target object from the rendering and drawing records.
[0166] The illumination data determination unit is used to use static illumination data and dynamic illumination data as illumination data.
[0167] In one specific embodiment, the parallel fitting module 940 described above may include:
[0168] The fitting task creation unit is used to create a material fitting task for each mesh group based on the material data and sub-lighting data of each mesh group.
[0169] Available computing resources determination unit, used to determine the currently available computing resources;
[0170] The task parallel execution unit is used to control available computing resources and execute the material fitting tasks of multiple mesh groups in parallel to obtain the fitting texture data of each mesh group.
[0171] In an optional embodiment, when the available computing resources are cloud computing resources, the aforementioned available computing resource determination unit may include:
[0172] The parallel computing resource quantity determination unit is used to determine the number of parallel computing resources required for the material fitting task corresponding to multiple mesh groups;
[0173] The cloud resource request unit is used to send a cloud resource allocation request to the cloud resource cluster based on the number of parallel computing resources, and obtain cloud computing resources.
[0174] In another alternative embodiment, when the available computing resources are local computing resources, the above-mentioned task parallel execution unit may include:
[0175] The parallel task quantity determination unit is used to determine the number of parallel tasks corresponding to local computing resources;
[0176] The local execution unit controls local computing resources and executes the material fitting tasks of multiple mesh groups in parallel based on the number of parallel tasks, thereby obtaining the fitting texture data of each mesh group.
[0177] In one specific embodiment, the above-mentioned data acquisition module 910 includes:
[0178] The page display unit is used to display the image processing page, which shows multiple objects to be processed.
[0179] The data acquisition unit is used to acquire the material data and lighting data of each of the multiple model meshes in response to an object selection instruction for a target object among multiple objects to be processed.
[0180] Accordingly, the above-mentioned device may further include:
[0181] The texture data detection unit is used to perform real-time detection of texture data in a preset texture cache area;
[0182] The object texture data display unit is used to display the object texture data on the image processing page when the object texture data of the target object is detected.
[0183] It should be noted that the apparatus and method embodiments described above are based on the same inventive concept.
[0184] This application provides an image processing device, which includes a processor and a memory. The memory stores at least one instruction or at least one program, which is loaded and executed by the processor to implement the image processing method provided in the above method embodiments.
[0185] Furthermore, Figure 10 A schematic diagram of the hardware structure of an image processing device for implementing the image processing method provided in the embodiments of this application is shown. The image processing device may constitute or include the image processing apparatus provided in the embodiments of this application. Figure 10 As shown, the image processing device 100 may include one or more ( Figure 10The processor 1002 (which may include, but is not limited to, a microprocessor MCU or a programmable logic device FPGA), 1004 for storing data, and 1006 for communication functions may also be included. In addition, it may include: a display, an input / output interface (I / O interface), a universal serial bus (USB) port (which may be included as one of the ports in the I / O interface), a network interface, a power supply, and / or a camera. Those skilled in the art will understand that... Figure 10 The structure shown is for illustrative purposes only and does not limit the structure of the aforementioned electronic device. For example, the image processing device 100 may also include a... Figure 10 The more or fewer components shown, or having the same Figure 10 The different configurations shown.
[0186] It should be noted that the aforementioned one or more processors 1002 and / or other data processing circuits are generally referred to herein as "data processing circuits". These data processing circuits may be embodied, in whole or in part, in software, hardware, firmware, or any other combination thereof. Furthermore, the data processing circuits may be a single, independent processing module, or may be integrated, in whole or in part, into any other element within the image processing device 100 (or mobile device). As involved in the embodiments of this application, the data processing circuits serve as a processor control mechanism (e.g., selection of a variable resistor termination path connected to an interface).
[0187] The memory 1004 can be used to store software programs and modules of application software, such as the program instructions / data storage device corresponding to the image processing method described in the embodiments of this application. The processor 1002 executes various functional applications and data processing by running the software programs and modules stored in the memory 1004, thereby implementing the aforementioned image processing method. The memory 1004 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 1004 may further include memory remotely located relative to the processor 1002, and these remote memories can be connected to the image processing device 100 via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.
[0188] The transmission device 1006 is used to receive or send data via a network. Specific examples of the network described above may include a wireless network provided by the communication provider of the image processing device 100. In one example, the transmission device 1006 includes a network interface controller (NIC), which can connect to other network devices via a base station to communicate with the Internet. In one embodiment, the transmission device 1006 may be a radio frequency (RF) module for wireless communication with the Internet.
[0189] The display may be, for example, a touchscreen liquid crystal display (LCD) that allows a user to interact with the user interface of the image processing device 100 (or a mobile device).
[0190] Embodiments of this application also provide a computer-readable storage medium, which can be disposed in an image processing device to store at least one instruction or at least one program segment for implementing at least one instruction or at least one program segment, which is loaded and executed by the processor to implement the image processing method provided in the above-described method embodiments. Optionally, in this embodiment, the storage medium can be located in at least one of a plurality of network servers in a computer network. Optionally, in this embodiment, the storage medium can be, but is not limited to, various media capable of storing program code, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard drive, magnetic disk, or optical disk.
[0191] Embodiments of this application also provide a computer program product or computer program that includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the image processing method provided in the method embodiments.
[0192] In this application embodiment, the terms "module" or "unit" refer to a computer program or part of a computer program that has a predetermined function and works with other related parts to achieve a predetermined goal, and can be implemented wholly or partially using software, hardware (such as processing circuitry or memory), or a combination thereof. Similarly, a processor (or multiple processors or memory) can be used to implement one or more modules or units. Furthermore, each module or unit can be part of an overall module or unit that includes the functionality of that module or unit.
[0193] It should be noted that the order of the embodiments described above is merely for descriptive purposes and does not represent the superiority or inferiority of the embodiments. Furthermore, the above description focuses on specific embodiments of this application. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps described in the claims can be performed in a different order than that shown in the embodiments and still achieve the desired results. Additionally, the processes depicted in the drawings do not necessarily require a specific or sequential order to achieve the desired results. In some implementations, multitasking and parallel processing are also possible or may be advantageous.
[0194] The various embodiments in this application are described in a progressive manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, the device and apparatus embodiments are basically similar to the method embodiments, so the descriptions are relatively simple; relevant parts can be referred to the descriptions of the method embodiments.
[0195] In this application embodiment, the terms "module" or "unit" refer to a computer program or part of a computer program that has a predetermined function and works with other related parts to achieve a predetermined goal, and can be implemented wholly or partially using software, hardware (such as processing circuitry or memory), or a combination thereof. Similarly, a processor (or multiple processors or memory) can be used to implement one or more modules or units. Furthermore, each module or unit can be part of an overall module or unit that includes the functionality of that module or unit.
[0196] Those skilled in the art will understand that all or part of the steps of the above embodiments can be implemented by hardware or by a program instructing related hardware. The program can be stored in a computer-readable storage medium, such as a read-only memory, a disk, or an optical disk.
[0197] The above description is only a preferred embodiment of this application and is not intended to limit this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.
Claims
1. An image processing method, characterized by, The method comprises: acquiring material data of each of a plurality of model meshes of a target object in a target scene and illumination data of the target object in the target scene, the material data of each of the plurality of model meshes comprising diffuse reflection map data; grouping the plurality of model meshes based on the diffuse reflection map data of each of the plurality of model meshes to obtain a plurality of mesh groups, the model meshes in each of the plurality of mesh groups having the same diffuse reflection map data; extracting sub-illumination data of each of the plurality of mesh groups from the illumination data; performing material micro-differential fitting on the plurality of mesh groups in parallel based on the sub-illumination data of each of the plurality of mesh groups and the material data of each of the plurality of mesh groups to obtain fitting map data of each of the plurality of mesh groups; performing material baking on the target object based on the fitting map data of each of the plurality of mesh groups to obtain object map data of the target object in the target scene.
2. The method of claim 1, wherein, The grouping of the plurality of model meshes based on the diffuse reflection map data of each of the plurality of model meshes to obtain a plurality of mesh groups comprises: determining a set of map data in a diffuse reflection type and data identification information corresponding to each of the map data in the set of map data; traversing the diffuse reflection map data of each of the plurality of model meshes; in a case where the diffuse reflection map data of a currently traversed model mesh is target data, marking the currently traversed model mesh with data identification information corresponding to the target data; the target data being any of the map data in the set of map data; in a case where the diffuse reflection map data of the currently traversed model mesh is not the target data, updating the set of map data and the data identification information corresponding to the set of map data based on the diffuse reflection map data of the currently traversed model mesh, and marking the currently traversed model mesh with data identification information corresponding to the diffuse reflection map data of the currently traversed model mesh; after the traversal of the diffuse reflection map data of each of the plurality of model meshes ends, grouping the plurality of model meshes based on the data identification information to obtain the plurality of mesh groups, the model meshes in each of the plurality of mesh groups having the same data identification information.
3. The method of claim 1, wherein, The illumination data is collected in the following manner: collecting static illumination data associated with the target object in a rendering tool; during playing of an object video of the target object in the target scene, collecting rendering drawing records corresponding to the target object based on a frame debugger corresponding to the rendering tool; extracting dynamic illumination data associated with the target object from the rendering drawing records; taking the static illumination data and the dynamic illumination data as the illumination data.
4. The method of claim 1, wherein, The acquisition of the material data of each of the plurality of model meshes of the target object in the target scene and the illumination data of the target object in the target scene comprises: displaying an image processing page, the image processing page displaying a plurality of objects to be processed; in response to an object selection instruction for the target object in the plurality of objects to be processed, acquiring the material data of each of the plurality of model meshes and the illumination data; The method further comprises: Real-time detection of mapping data of a preset mapping cache area; In a case where object mapping data of the target object is detected, the object mapping data is displayed on the image processing page.
5. The method of claim 1, wherein, The material differential fitting of the plurality of mesh groups in parallel based on the material data of each mesh group and the sub-illumination data of each mesh group includes: Creating a material fitting task corresponding to each mesh group based on the material data of each mesh group and the sub-illumination data of each mesh group; Determining the current available computing resources; Controlling the available computing resources and executing the material fitting tasks of the plurality of mesh groups in parallel to obtain the fitting mapping data of the plurality of mesh groups.
6. The method of claim 5, wherein, In a case where the available computing resources are cloud computing resources, the determination of the current available computing resources includes: Determining the number of parallel computing resources required by the material fitting tasks corresponding to the plurality of mesh groups; Based on the number of parallel computing resources, sending a cloud resource allocation request to a cloud resource cluster to obtain the cloud computing resources.
7. The method of claim 5, wherein, In a case where the available computing resources are local computing resources, the controlling of the available computing resources and the parallel execution of the material fitting tasks of the plurality of mesh groups to obtain the fitting mapping data of the plurality of mesh groups includes: Determining the number of parallel tasks corresponding to the local computing resources; Controlling the local computing resources to execute the material fitting tasks of the plurality of mesh groups in parallel based on the number of parallel tasks to obtain the fitting mapping data of the plurality of mesh groups.
8. An image processing system, characterized by The system includes an image processing terminal, an image processing platform, and a cloud resource cluster; wherein: The image processing terminal is configured to obtain material data of a plurality of model meshes of a target object in a target scene and illumination data of the target object in the target scene, the material data of each model mesh including diffuse reflection mapping data; group the plurality of model meshes based on the diffuse reflection mapping data of each model mesh to obtain a plurality of mesh groups, the diffuse reflection mapping data of the model meshes in each mesh group being the same; extract sub-illumination data of the plurality of mesh groups from the illumination data; send the material data of each mesh group and the sub-illumination data of each mesh group to the image processing platform; receive fitting mapping data of the plurality of mesh groups sent by the image processing platform; and perform material baking on the target object based on the fitting mapping data of the plurality of mesh groups to obtain object mapping data of the target object in the target scene; The image processing platform is configured to schedule the cloud resource cluster to perform material differential fitting of the plurality of mesh groups in parallel based on the material data of each mesh group and the sub-illumination data of each mesh group; and feed back the fitting mapping data of the plurality of mesh groups sent by the cloud resource cluster to the image processing terminal. The cloud resource cluster is configured to perform material differential fitting on the plurality of mesh groups in parallel to obtain fitting map data of each of the plurality of mesh groups; and send the fitting map data of each of the plurality of mesh groups to the image processing platform.
9. The system of claim 8, wherein, The image processing platform is further configured to determine current available cloud resources in the cloud resource cluster; in a case where the current available cloud resources meet a required number of parallel computing resources for the plurality of mesh groups, control the current available cloud resources to perform material differential fitting on the plurality of mesh groups in parallel; and in a case where the current available cloud resources do not meet the required number of parallel computing resources, send a resource expansion request to the cloud resource cluster, obtain expansion cloud resources allocated by the cloud resource cluster, and control the current available cloud resources and the expansion cloud resources to perform material differential fitting on the plurality of mesh groups in parallel.
10. An image processing apparatus characterized by comprising: The apparatus comprises: a to-be-fitted data acquisition module configured to acquire material data of a plurality of model meshes of a target object in a target scene and illumination data of the target object in the target scene, the material data of each model mesh comprising diffuse reflection map data; a mesh grouping model configured to group the plurality of model meshes based on the diffuse reflection map data of each model mesh to obtain a plurality of mesh groups, the model meshes in each mesh group having the same diffuse reflection map data; a sub-illumination data extraction module configured to extract sub-illumination data of each mesh group from the illumination data; a parallel fitting module configured to perform material differential fitting on the plurality of mesh groups in parallel based on the sub-illumination data of each mesh group and the material data of each mesh group to obtain fitting map data of each mesh group; a material baking module configured to perform material baking on the target object based on the fitting map data of each mesh group to obtain object map data of the target object in the target scene.
11. An image processing apparatus characterized by comprising: The device comprises a processor and a memory, the memory storing at least one instruction or at least one program, the at least one instruction or the at least one program being loaded and executed by the processor to implement the image processing method according to any one of claims 1 to 7.
12. A computer-readable storage medium, characterized in that, The storage medium stores at least one instruction or at least one program, the at least one instruction or the at least one program being loaded and executed by the processor to implement the image processing method according to any one of claims 1 to 7.
13. A computer program product, characterised in that, The computer program product comprises at least one instruction or at least one program, the at least one instruction or the at least one program being loaded and executed by the processor to implement the image processing method according to any one of claims 1 to 7.