A method for optimizing computing power configuration of intelligent micro-host graphics processor
By generating point cloud data and analyzing its vertex degree and information complexity, optimizing the point selection rules of K-D trees, the problem of load imbalance in the graphics processor rendering architecture is solved, and rendering efficiency and load balancing are improved.
Patent Information
- Application Number
- CN202510252788.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-05
- Publication Date
- 2025-05-02
- Estimated Expiration
- 2045-03-05
AI Technical Summary
In the rendering architecture of the graphics processor, load imbalance of the distributed rendering system results in a long execution time of the computing node, which slows down the execution efficiency of the overall system.
By generating point cloud data, analyzing the vertex degree and information complexity of each point cloud data, combining the differences in rendering complexity, the K-D tree division point selection rules are optimized to achieve more uniform tree structure and load balancing.
It improves the rendering efficiency and load balancing of the graphics processor, reduces the performance bottlenecks caused by uneven division, and achieves a more reasonable computing power configuration.
Smart Images

Figure CN119762326B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of computing power configuration optimization, and specifically to a computing power configuration optimization method for an intelligent micro-host graphics processor. Background Art
[0002] Graphics Processing Unit (GPU) is a coprocessor specially used for image and graphics computing. As an important component of the hardware field, it is widely used in scientific computing, artificial intelligence, game development and other fields. In the rendering architecture of GPU, there are two main types of rendering systems: distributed rendering system and parallel rendering system. Among them, the distributed rendering system usually adopts the time-series parallel rendering mode. In this mode, the load imbalance of the system will cause some computing nodes to have a longer execution time, thereby slowing down the execution efficiency of the entire system, because the running time of the system is usually determined by the node with the heaviest load. Ideal load balancing can make the processing time of different computing cores close, thereby significantly shortening the execution time of the overall system and improving rendering efficiency.
[0003] Usually, a K-dimensional tree is used to partition the 3D model, and the 3D model rendering task is divided into multiple balanced subtasks and then assigned to the corresponding rendering cores. When selecting the partition point, the traditional algorithm directly uses the median as the partition point, so that the number of data points in the sub-area is relatively balanced. However, it ignores that the information contained in different point cloud data points is different. When rendering, the rendering difficulty is also inconsistent, resulting in an unbalanced load on the rendering core and low rendering efficiency. Summary of the invention
[0004] In view of the above, it is necessary to provide a method for optimizing the computing power configuration of an intelligent micro-host graphics processor to solve the above problems.
[0005] An embodiment of the present application provides a method for optimizing the computing power configuration of a graphics processor of an intelligent micro-host, the method comprising:
[0006] Generate point cloud data using computer software based on multiple images of the object to be modeled to obtain a three-dimensional model to be rendered;
[0007] According to the spatial distance distribution between the point cloud data, the neighborhood data points of each point cloud data are obtained; according to the division result of the plane corresponding to each dimension of the point cloud data on its neighborhood data points, the characteristic plane of the point cloud data is obtained; based on the connection line between the point cloud data and each of its neighborhood data points, the angle between each connection line and the characteristic plane is analyzed, and the vertex degree of the point cloud data is obtained in combination with the length of each connection line, so as to judge whether the point cloud data is a vertex;
[0008] Based on the difference between the grayscale values of the point cloud data and its neighborhood data points on the image and the grayscale values of the point cloud data in the 3D model, combined with the position distribution of the vertices, the information complexity of the point cloud data is obtained; based on the plane corresponding to each dimension of the point cloud data, the area to which the point cloud data belongs is divided, and based on the number of vertices in each divided sub-area, the number of point cloud data and the information complexity of the point cloud data, the rendering complexity difference of each dimension of the point cloud data is obtained;
[0009] Based on the differences in rendering complexity of all point cloud data in the KD tree partition dimension, the selection rules of partition points in the KD tree are obtained, and the KD tree is used to optimize the computing power configuration of the graphics processor.
[0010] The neighborhood data points of each point cloud data are determined by a preset number of point cloud data closest to each point cloud data.
[0011] The feature plane of the point cloud data is obtained by dividing the neighboring data points according to the plane corresponding to each dimension of the point cloud data, which is specifically:
[0012] Based on the plane corresponding to each dimension of the point cloud data, the absolute value of the difference in the number of neighborhood data points in the two parts of the point cloud data after plane segmentation is obtained, and the plane with the largest absolute value of the number difference is recorded as the feature plane of the point cloud data.
[0013] The specific formula for obtaining the vertex degree of the point cloud data is: , where Y represents the vertex degree of point cloud data q; C represents the absolute value of the difference in the number of neighborhood data points in the two parts after segmentation by the feature plane of point cloud data q; L represents the range of the angle between the neighborhood data points of point cloud data q and the straight line formed by point cloud data q and the feature plane; M represents the number of neighborhood data points of point cloud data q; Represents the spatial distance between the mth neighborhood data point of point cloud data q and point cloud data q.
[0014] The range of the angle interval is specifically:
[0015] The angle between the line connecting the point cloud data and its neighborhood data points and the feature plane is obtained, and the extreme values of all angles obtained between the point cloud data and its neighborhood data points are calculated and recorded as the range of the angle interval.
[0016] The process of determining whether the point cloud data is a vertex is as follows:
[0017] Calculate the average vertex degree of all point cloud data, and take the point cloud data with vertex degree greater than or equal to the average vertex degree as vertices.
[0018] Among them, the formula for the information complexity of the point cloud data is: , in the formula, represents the information complexity of point cloud data q; Y represents the vertex degree of point cloud data q; T represents the number of images corresponding to point cloud data q; Represents the mean gray value of point cloud data q in all its corresponding images; Represents the grayscale value of the point cloud data q in the tth image; Represents the number of neighborhood data points of point cloud data q; Represents the mean gray value of the mth neighborhood data point of point cloud data q in all its corresponding images; Represents the angle between the straight line formed by the mth neighborhood data point of point cloud data q and point cloud data q and the feature straight line; Indicates a parameter that is preset to be greater than zero.
[0019] The characteristic straight line is obtained by connecting the point cloud data with its nearest vertex.
[0020] The rendering complexity difference of each dimension of the point cloud data is specifically as follows:
[0021] Calculate the sum of the vertex degrees of all vertices in each sub-region after division, recorded as the first sum; obtain the sum of the information complexity of all point cloud data that are not vertices in each sub-region after division, recorded as the second sum; forward fuse the number of vertices in each sub-region after division, the first sum, and the second sum, and record the result as the rendering complexity of each sub-region;
[0022] The difference in rendering complexity between the two sub-areas corresponding to each dimension of the point cloud data is recorded as the rendering complexity difference of each dimension of the point cloud data.
[0023] The selection rule of the partition point in the KD tree is as follows:
[0024] The point cloud data corresponding to the two sub-areas with the smallest difference in rendering complexity under the KD tree partitioning dimension are used as the partitioning points of the corresponding partitioning dimension.
[0025] This application has at least the following beneficial effects:
[0026] The present application first obtains the plane corresponding to each dimension of the point cloud data, obtains the corresponding feature plane through the segmentation status of the neighborhood data points of the point cloud data by the plane, and adaptively constructs the vertex degree of the point cloud data point through the distribution characteristics of the neighborhood data points of the point cloud data point under the feature plane. Its beneficial effect is to analyze the position of each point cloud data in the three-dimensional model, characterize the possibility that the point cloud data is a vertex in the three-dimensional model, and provide a basis for the subsequent analysis of the model information contained in the point cloud data and the complexity of rendering based on the characteristics of the vertices in the three-dimensional model; based on the vertex degree and the change of the grayscale value in the corresponding image during the photogrammetry of the point cloud data, the information complexity of the point cloud data is constructed, which is helpful to analyze the texture features of the point cloud data in the three-dimensional model and can help to more accurately characterize the information features of the point cloud data in the three-dimensional model; and then the corresponding plane of each dimension of the point cloud data is divided into the corresponding area, and based on the number of vertices in each sub-area after the division, the number of point cloud data and the information complexity of the point cloud data, the rendering complexity difference of each dimension of the point cloud data is obtained, and the selection rules of the division points in the KD tree are established based on the rendering complexity difference, so that the division points can be selected more reasonably, thereby achieving a more uniform tree structure. This optimization can improve the efficiency of the KD tree in subsequent queries and processing, and reduce the performance bottleneck caused by uneven partitioning. The KD tree can be used to divide the 3D model rendering task into multiple load-balanced sub-rendering tasks, and assign them to the rendering core one by one, thereby improving the load balance and rendering efficiency of the rendering core. BRIEF DESCRIPTION OF THE DRAWINGS
[0027] Figure 1 A flowchart of a method for optimizing computing power configuration of a smart micro-host graphics processor provided in this application;
[0028] Figure 2 A flowchart for obtaining rendering complexity differences provided in this application. DETAILED DESCRIPTION
[0029] In the description of the embodiments of the present application, words such as "exemplary", "or", "for example" and the like are used to indicate examples, illustrations or descriptions. Any embodiment or design described as "exemplary" or "for example" in the embodiments of the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary", "or", "for example" and the like is intended to present related concepts in a concrete manner.
[0030] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art in the present application. The terms used in the specification of the present application are only for the purpose of describing specific embodiments and are not intended to limit the present application.
[0031] It should also be noted that the terms "first" and "second" in this application and its drawings are used to distinguish similar objects, rather than to describe a specific order or sequence. The method disclosed in the embodiments of the present application or the method shown in the flow chart includes one or more steps for implementing the method. Without departing from the scope of protection of this application, the execution order of multiple steps can be interchanged with each other, and some steps can also be deleted.
[0032] Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs.
[0033] This application proposes a computing power configuration optimization method for an intelligent micro-host graphics processor, which is applied to the technical field of computing power configuration optimization. Figure 1 , the method comprises the following steps:
[0034] S1: Generate point cloud data using computer software based on multiple images of the object to be modeled to obtain a three-dimensional model to be rendered.
[0035] The present application mainly improves the rendering efficiency of the rendering core of the image processor by adaptively segmenting the three-dimensional model rendering task. In the present application, the number of rendering cores of the graphics processing unit (GPU) in the micro host is an exponential value of 2, and the number of rendering cores in the present embodiment is 2 to the power of 10.
[0036] When obtaining the 3D model to be rendered, multiple images of the object to be modeled are taken, and the images are processed by computer software Agisoft Metashape to generate point cloud data to obtain the 3D model to be rendered. It should be noted that the implementer may also use other image processing software to build a 3D model based on images from multiple angles, such as RealityCapture, etc., and this application does not limit this.
[0037] S2: According to the spatial distance distribution between the point cloud data, the neighborhood data points of each point cloud data are obtained; according to the division result of the neighborhood data points of each dimension of the point cloud data by the corresponding plane, the characteristic plane of the point cloud data is obtained; based on the connection line between the point cloud data and each of its neighborhood data points, the angle between each connection line and the characteristic plane is analyzed, and the vertex degree of the point cloud data is obtained in combination with the length of each connection line, so as to determine whether the point cloud data is a vertex.
[0038] The load imbalance of the system will increase the execution time of the system, and the execution time of the system depends on the node with the longest execution time. Under ideal load balancing conditions, the time for each core of the graphics processor to complete the task is almost the same, which can significantly shorten the overall execution time of the system. Therefore, when the cores of the graphics processor of the smart micro-host perform parallel rendering, using a suitable load balancing algorithm can improve the performance of the graphics processor and optimize the computing power configuration.
[0039] For three-dimensional models, the structure and organization of model data are key factors in scene rendering. The design quality of the data structure directly affects the rendering efficiency and effect of the graphics processor. A reasonable data structure can significantly improve the rendering performance of the model. The present application uses a K-Dimension Tree (KD tree) to divide the point cloud data of the three-dimensional model. The KD tree is a binary tree structure for multidimensional spatial data, and usually divides the three-dimensional point cloud data set according to a certain dimension in each node. In three-dimensional space, the KD tree selects a specific dimension each time it divides. In this embodiment, the dimension is specifically x, y or z, and divides the data set into two parts according to the value of the dimension. By recursively selecting different dimensions for division, the KD tree can divide the three-dimensional space into multiple sub-areas.
[0040] For the 3D model to be rendered, when using the KD tree to divide it, the traditional algorithm directly divides the data set into two parts according to the median of the selected dimension, and continuously divides the 3D space model in this way to obtain sub-regions with similar point cloud data sets. The point cloud data of each sub-region is converted into metadata through geometric processing. However, when rendering the 3D model, the color, depth, and texture information contained in the point cloud data in different sub-regions are often different, which often causes different rendering difficulties for the GPU. This will cause the GPU to assign different rendering tasks to different rendering cores, which in turn leads to a waste of computing power in the image processor.
[0041] In order to maximize the performance of the rendering core and ensure that each core can process one or more sub-areas, thereby achieving load balancing and improving rendering efficiency, the number of sub-areas divided by the KD tree for the 3D model should be equal to the number of rendering cores or an integer multiple of the number of rendering cores.
[0042] The 3D model rendering process can be divided into two stages: the geometry stage and the raster stage. The task of the geometry stage is to convert the 3D coordinates of the model into the view volume according to the vertex information of the 3D model, and determine the corresponding position of each primitive on the screen, that is, to realize the mapping of 3D coordinates to 2D screen coordinates, and adjust to meet the requirements of the display window. The raster stage performs pixel shading based on the transformed and projected vertices, colors and textures output by the geometry stage, calculates the color information of the pixels, and draws the entire image based on these color information, that is, converts the point cloud data in the screen space into specific pixels on the display screen. Therefore, in this application, the geometric structure, lighting and texture features of the 3D model are analyzed to construct the rendering complexity of the point cloud data when rendering.
[0043] Since the images are taken from multiple angles under the same camera parameters during photogrammetry, the information of the point cloud data may only exist in part of the image. The grayscale value of each point cloud data in the corresponding image is obtained. The difference in grayscale values between the point cloud data point and the neighborhood data point can reflect the illumination information or texture information of the 3D model in the actual scene. For point cloud data q, the M point cloud data with the closest spatial distance in its 3D model are obtained, which are recorded as the neighborhood data points of point cloud data q. In this embodiment, M is a preset number with a value of 100, which can be adjusted by the implementer according to the actual situation.
[0044] If point cloud data q is a vertex of a 3D model, then the distribution direction of the neighborhood data points of point cloud data q in space is relatively concentrated and uniform relative to point cloud data q. The vertex degree of point cloud data can be constructed based on the vertex features of point cloud data. Since each point cloud data in a 3D model has a corresponding coordinate, for example, the coordinate of point cloud data q in the model is , and according to the plane corresponding to the coordinate value of any dimension of the point cloud data q, the corresponding dimension can be divided into two parts. One point cloud data can obtain 3 planes, and each plane can divide all the neighborhood data points of the point cloud data into two parts. The greater the difference in the number of neighborhood data points contained in the two parts, the more likely the corresponding point cloud data is to be the vertex of the three-dimensional model. Based on each plane of the point cloud data q, the absolute value of the difference in the number of neighborhood data points in the two parts of the neighborhood data points of the point cloud data q after plane segmentation is obtained, and the plane with the largest absolute value of the number difference is recorded as the characteristic plane of the point cloud data q. Obtain the angle between the straight line formed by the point cloud data q and its neighborhood data points and the characteristic plane, where the method for calculating the angle between the straight line and the plane is a well-known means and will not be repeated here, then the angle interval obtained by the neighborhood data points can be obtained, and the interval length is recorded as L, then the vertex degree of the point cloud data can be constructed: , where Y represents the vertex degree of point cloud data q; C represents the absolute value of the difference in the number of neighborhood data points in the two parts after segmentation by the feature plane of point cloud data q; L represents the range of the angle between the neighborhood data points of point cloud data q and the straight line formed by point cloud data q and the feature plane; M represents the number of neighborhood data points of point cloud data q; Represents the spatial distance between the mth neighborhood data point of point cloud data q and point cloud data q.
[0045] It should be noted that when the neighborhood data points are all located on one side of the plane, the plane fails to segment the neighborhood data points of the point cloud data q, and the absolute value of the number difference is the number of neighborhood data points.
[0046] It should be understood that the absolute value of the number difference is used to measure the segmentation of all the neighborhood data points of the point cloud data q by the plane. The larger the value, the more concentrated the distribution of the neighborhood data points of the point cloud data q is, and the greater the possibility that the point cloud data q is a vertex; Characterizes the distribution direction of the neighborhood data points of the point cloud data. The larger its value is, the more concentrated the distribution of the neighborhood data points of the point cloud data q is, and the greater the possibility that the point cloud data q is a vertex; It is used to characterize the distribution uniformity of the neighborhood data points of the point cloud data q. The larger the value, the more likely it is that there are point cloud data with a small distance in each distribution direction of the point cloud data q, and the more likely it is to be a vertex.
[0047] Each point cloud data has a corresponding vertex degree. The average vertex degree of all point cloud data of the 3D model is used as the vertex judgment threshold. When the vertex degree of the point cloud data is greater than or equal to the vertex judgment threshold, the point cloud data is judged to be a vertex. When the vertex degree of the point cloud data is less than the vertex judgment threshold, the point cloud data is judged not to be a vertex.
[0048] S3: Based on the difference between the grayscale values of the point cloud data and its neighborhood data points on the image and the grayscale values of the point cloud data in the three-dimensional model, combined with the position distribution of the vertices, the information complexity of the point cloud data is obtained; based on the plane corresponding to each dimension of the point cloud data, the area to which the point cloud data belongs is divided, and based on the number of vertices in each sub-area after division, the number of point cloud data and the information complexity of the point cloud data, the rendering complexity difference of each dimension of the point cloud data is obtained.
[0049] Vertex degree can not only measure the possibility that point cloud data is a vertex, but also reflect the texture information of point cloud data, because the vertices of an object often contain a lot of information about the object, and vertices are most likely to be generated where the object has rich texture. Therefore, the information complexity corresponding to the point cloud data is constructed to reflect the difficulty of rendering the point cloud data. The specific process is as follows: Since point cloud data q corresponds to several images, the information complexity of point cloud data q is constructed according to the changes in the grayscale values corresponding to point cloud data q in different images and the vertex degree of point cloud data q. , where Z represents the information complexity of point cloud data q, Y represents the vertex degree of point cloud data q; T represents the number of images corresponding to point cloud data q; Represents the mean gray value of point cloud data q in all its corresponding images; Represents the grayscale value of the point cloud data q in the tth image; Represents the number of neighborhood data points of point cloud data q; Represents the mean gray value of the mth neighborhood data point of point cloud data q in all its corresponding images; represents the angle between the straight line formed by the mth neighborhood data point of point cloud data q and point cloud data q and the feature straight line. It should be noted that the feature straight line is obtained by connecting point cloud data q with its nearest vertex; It indicates a parameter that is preset to be greater than zero. In order to prevent the denominator from being 0, the value is taken as 1 in this embodiment, and the implementer can adjust it at will.
[0050] It should be understood that the greater the information complexity, the greater the rendering difficulty of the graphics processor when rendering the corresponding point cloud data. Furthermore, the information complexity of the point cloud data can be obtained according to the above steps. Specifically: the area to which the point cloud data belongs is divided based on the corresponding plane of each dimension of the point cloud data, and the sum of the vertex degrees of all vertices in each sub-area after the division is calculated, which is recorded as the first sum; the sum of the information complexity of all point cloud data that are not vertices in each sub-area after the division is obtained, which is recorded as the second sum; the result of forward fusion of the number of vertices in each sub-area after the division, the first sum, and the second sum is recorded as the rendering complexity of each sub-area.
[0051] In this embodiment, the plane corresponding to each dimension of each point cloud data can divide the area where the point cloud data is located into a number of sub-areas, and each sub-area can obtain a corresponding rendering complexity. , its formula form is: In the formula, R is the number of vertices in each sub-region, and U is the number of point cloud data other than vertices in each sub-region. represents the information complexity of the u-th point cloud data in each sub-region, Represents the vertex degree of the rth vertex in each sub-region.
[0052] It should be understood that vertices usually contain richer model information, so the more vertices there are in each sub-area, the greater the rendering complexity of the corresponding sub-area; further, the rendering complexity of the sub-area as a whole is represented by the rendering complexity of each point cloud data in each sub-area. The more complex the local rendering is, the greater the overall rendering difficulty of the rendering core when rendering.
[0053] The difference in rendering complexity between the two sub-areas corresponding to each dimension of the point cloud data is recorded as the rendering complexity difference of each dimension of the point cloud data. The flowchart for obtaining the rendering complexity difference is as follows: Figure 2 shown.
[0054] S4: Based on the differences in rendering complexity of all point cloud data in the KD tree partitioning dimension, the selection rules of the partitioning points in the KD tree are obtained, and the KD tree is used to optimize the computing power configuration of the graphics processor.
[0055] In this application, when dividing each sub-region, the point cloud data corresponding to the two sub-regions with the smallest rendering complexity difference under the KD tree division dimension is used as the division point of the corresponding division dimension. At this time, each sub-region is divided into 2 sub-regions; based on this, the final result is sub-regions, in this embodiment a=10, each sub-region is assigned to a rendering core of a graphics processor, which improves the rendering efficiency and load balancing of the graphics processor and optimizes the computing power configuration of the graphics processor.
[0056] The present application provides a method for optimizing the computing power configuration of a graphics processor of an intelligent micro-host, the method comprising: firstly obtaining a plane corresponding to each dimension of point cloud data, obtaining a corresponding feature plane through the segmentation status of the neighborhood data points of the point cloud data by the plane, and adaptively constructing the vertex degree of the point cloud data point through the distribution characteristics of the neighborhood data points of the point cloud data point under the feature plane, the beneficial effect of which is to analyze the position of each point cloud data in a three-dimensional model, characterize the possibility that the point cloud data is a vertex in the three-dimensional model, and provide a basis for the subsequent analysis of the model information contained in the point cloud data and the complexity of rendering based on the characteristics of the vertices in the three-dimensional model; based on the vertex degree and the point cloud number, According to the change of gray value in the corresponding image during the photogrammetry process, the information complexity of the point cloud data is constructed, which is helpful for analyzing the texture features of the point cloud data in the three-dimensional model and can help to more accurately characterize the information features of the point cloud data in the three-dimensional model; then the corresponding plane of each dimension of the point cloud data is divided into the corresponding area, and based on the number of vertices in each sub-area after division, the number of point cloud data and the information complexity of the point cloud data, the rendering complexity difference of each dimension of the point cloud data is obtained. Based on the rendering complexity difference, the selection rules of the partitioning points in the KD tree are established, and the partitioning points can be selected more reasonably, thereby achieving a more uniform tree structure. This optimization can improve the efficiency of the KD tree in subsequent query and processing, reduce the performance bottleneck caused by uneven partitioning, and use the KD tree to divide the three-dimensional model rendering task into multiple sub-rendering tasks with load balance, and assign them to the rendering core one by one, which improves the load balance and rendering efficiency of the rendering core.
[0057] The flowchart and block diagram in the accompanying drawings show the possible architecture, function and operation of the system, method and computer program product according to the embodiment of the present application. In this regard, each box in the flowchart or block diagram can represent a module, a program segment or a part of the code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. In some alternative implementations, the function marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two continuous boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, which can depend on the functions involved. In the description corresponding to the flowchart and the block diagram in the accompanying drawings, the operations or steps corresponding to different boxes can also occur in a different order from the order disclosed in the description, and sometimes there is no specific order between different operations or steps. For example, two continuous operations or steps can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, which can depend on the functions involved. Each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, may be implemented by a dedicated hardware-based system that performs the specified functions or actions, or may be implemented by a combination of dedicated hardware and computer instructions.
[0058] The above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. These modifications or replacements do not deviate the essence of the corresponding technical solutions from the scope of the technical solutions of the embodiments of the present application, and should all be included in the protection scope of the present application.
Claims
1. A method for optimizing computing power configuration of an intelligent micro-host graphics processor, characterized in that: The method comprises the following steps: Generate point cloud data using computer software based on multiple images of the object to be modeled to obtain a three-dimensional model to be rendered; According to the spatial distance distribution between the point cloud data, the neighborhood data points of each point cloud data are obtained; according to the division result of the plane corresponding to each dimension of the point cloud data on its neighborhood data points, the characteristic plane of the point cloud data is obtained; based on the connection line between the point cloud data and each of its neighborhood data points, the angle between each connection line and the characteristic plane is analyzed, and the vertex degree of the point cloud data is obtained in combination with the length of each connection line, so as to judge whether the point cloud data is a vertex; Based on the difference between the grayscale values of the point cloud data and its neighborhood data points on the image and the grayscale values of the point cloud data in the 3D model, combined with the position distribution of the vertices, the information complexity of the point cloud data is obtained; based on the plane corresponding to each dimension of the point cloud data, the area to which the point cloud data belongs is divided, and based on the number of vertices in each divided sub-area, the number of point cloud data and the information complexity of the point cloud data, the rendering complexity difference of each dimension of the point cloud data is obtained; Based on the rendering complexity differences of all point cloud data in the KD tree partitioning dimension, the selection rules of the partitioning points in the KD tree are obtained, and the KD tree is used to optimize the computing power configuration of the graphics processor; The specific formula for obtaining the vertex degree of the point cloud data is: , where Y represents the vertex degree of point cloud data q; C represents the absolute value of the difference in the number of neighborhood data points in the two parts after segmentation by the feature plane of point cloud data q; L represents the range of the angle between the neighborhood data points of point cloud data q and the straight line formed by point cloud data q and the feature plane; M represents the number of neighborhood data points of point cloud data q; Represents the spatial distance between the mth neighborhood data point of point cloud data q and point cloud data q; The formula for the information complexity of the point cloud data is: , in the formula, represents the information complexity of point cloud data q; Y represents the vertex degree of point cloud data q; T represents the number of images corresponding to point cloud data q; Represents the mean gray value of point cloud data q in all its corresponding images; Represents the grayscale value of the point cloud data q in the tth image; Represents the number of neighborhood data points of point cloud data q; Represents the mean gray value of the mth neighborhood data point of point cloud data q in all its corresponding images; Represents the angle between the straight line formed by the mth neighborhood data point of point cloud data q and point cloud data q and the feature straight line; Indicates a parameter that is preset to be greater than zero.
2. The method for optimizing computing power configuration of a graphics processor of an intelligent micro-host according to claim 1, characterized in that: The neighborhood data points of each point cloud data are determined by a preset number of point cloud data closest to each point cloud data.
3. The method for optimizing computing power configuration of a graphics processor of an intelligent micro-host according to claim 1, characterized in that: The feature plane of the point cloud data is obtained by dividing the neighboring data points according to the plane corresponding to each dimension of the point cloud data, specifically: Based on the plane corresponding to each dimension of the point cloud data, the absolute value of the difference in the number of neighborhood data points in the two parts of the point cloud data after plane segmentation is obtained, and the plane with the largest absolute value of the number difference is recorded as the feature plane of the point cloud data.
4. The method for optimizing computing power configuration of a graphics processor of an intelligent micro-host according to claim 1, characterized in that: The range of the angle interval is specifically: The angle between the line connecting the point cloud data and its neighborhood data points and the feature plane is obtained, and the extreme values of all angles obtained between the point cloud data and its neighborhood data points are calculated and recorded as the range of the angle interval.
5. The method for optimizing computing power configuration of a graphics processor of an intelligent micro-host according to claim 1, characterized in that: The process of determining whether the point cloud data is a vertex is as follows: Calculate the average vertex degree of all point cloud data, and take the point cloud data with vertex degree greater than or equal to the average vertex degree as vertices.
6. The method for optimizing computing power configuration of a graphics processor of an intelligent micro-host according to claim 1, characterized in that: The characteristic straight line is obtained by connecting the point cloud data with its nearest vertex.
7. The method for optimizing computing power configuration of a graphics processor of an intelligent micro-host according to claim 1, characterized in that: The rendering complexity difference of each dimension of the point cloud data is specifically as follows: Calculate the sum of the vertex degrees of all vertices in each sub-region after division, recorded as the first sum; obtain the sum of the information complexity of all point cloud data that are not vertices in each sub-region after division, recorded as the second sum; forward fuse the number of vertices in each sub-region after division, the first sum, and the second sum, and record the result as the rendering complexity of each sub-region; The difference in rendering complexity between the two sub-areas corresponding to each dimension of the point cloud data is recorded as the rendering complexity difference of each dimension of the point cloud data.
8. The method for optimizing computing power configuration of a graphics processor of an intelligent micro-host as claimed in claim 1, characterized in that: The selection rule of the partition point in the KD tree is specifically: The point cloud data corresponding to the two sub-areas with the smallest difference in rendering complexity under the KD tree partitioning dimension are used as the partitioning points of the corresponding partitioning dimension.
Citation Information
Patent Citations
Computing platform and computing power extension method and device of computing platform
CN114661441A
GPU real-time task computing power dynamic allocation method and device
CN116225709A