Indoor space visual presentation system and method
Two-dimensional contour lines are generated through the non-uniform rational B-spline algorithm and perspective projection converter, and interference areas are identified by combining line segment intersection detection and hierarchical clustering analysis. The collision prediction model and free deformation mesh algorithm are used to update the vertex coordinates. This solves the problems of geometric accuracy and dynamic association in traditional indoor space visual presentation systems, and achieves efficient visual interference response and spatial adaptation.
Patent Information
- Application Number
- CN202510919073.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-04
- Publication Date
- 2025-10-10
AI Technical Summary
Traditional indoor space visual presentation systems rely on the tabular entry of manual measurement data, resulting in geometric accuracy being restricted by operator experience, material reflectance coefficients being difficult to match the real physical environment, a lack of dynamic correlation between component spatial relationships, loss of topological structure information, a lack of quantitative basis for visual intervisibility assessment, and static model construction modes that restrict the timeliness of visual interference analysis.
The non-uniform rational B-spline algorithm is used to construct the furniture geometric structure, and the perspective projection converter is combined to generate the two-dimensional contour line. The interference area is identified through the line segment intersection detection algorithm and hierarchical clustering analysis method. The collision prediction model is used to calculate the displacement trend. The free deformation mesh algorithm and vertex shader program are combined to realize dynamic vertex update, forming a closed-loop processing flow.
It realizes the automatic generation of topological relationships, improves the accuracy of interference area recognition and the dynamic analysis capability of spatial relationships, reduces the need for manual intervention, and enhances the timeliness of visual interference response and the accuracy of spatial adaptation.
Smart Images

Figure CN120765875A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of three-dimensional modeling, and in particular to a system and method for visually presenting an indoor space. Background Art
[0002] The field of 3D modeling involves a technical system that uses computer algorithms to construct the spatial relationships and surface features of three-dimensional objects. Its core lies in converting physical spatial entities into quantifiable and processable geometric data sets. This technical field encompasses three fundamental technical levels: point cloud data processing, polygonal mesh construction, and texture mapping algorithms. In architectural design and interior planning, it is primarily used for virtual space construction and visualization analysis. Traditional interior space visual presentation systems, for example, rely on manual measurement to obtain spatial dimension data and then translate a two-dimensional plan view into a three-dimensional wireframe model. This approach reconstructs the space by manually annotating wall thickness parameters, manually setting material reflection coefficients, and incrementally adding furniture model library components. The specific implementation process involves three standard steps: tabular entry of measurement data, importing AutoCAD plans, and generating a basic mesh in 3ds Max.
[0003] Traditional technologies rely on manual measurement data entry in tabular form, requiring the conversion of two-dimensional floor plans into three-dimensional wireframe models. There is a conversion gap between spatial dimension data and three-dimensional models. Manually marking wall thickness parameters results in geometric accuracy being restricted by operator experience. Manually setting material reflection coefficients makes it difficult to match the optical properties of the real physical environment. Adding furniture model library components one by one results in a lack of dynamic association in the spatial relationship of components. Topological structure information is lost during the AutoCAD floor plan import process. The 3ds Max basic mesh generation process cannot respond to changes in spatial layout in real time. The static model construction mode restricts the timeliness of visual interference analysis. The lack of a line of sight projection plane mapping mechanism in the two-dimensional to three-dimensional conversion process leads to a lack of quantitative basis for visual visibility assessment. Summary of the Invention
[0004] The purpose of the present invention is to solve the shortcomings of the prior art and to propose an indoor space visual presentation system and method.
[0005] In order to achieve the above-mentioned purpose, the present invention adopts the following technical solution: the indoor space visual presentation system includes:
[0006] The contour modeling module is used to construct the furniture geometric structure through the non-uniform rational B-spline algorithm, input the three-dimensional coordinates into the perspective projection converter to generate a two-dimensional contour line, output the projection contour line data and transmit it to the interference detection module;
[0007] An interference detection module is configured to receive the projected contour line data, call a line segment intersection detection algorithm to identify the intersection area, calculate the shortest distance between line segments to generate an interference distance matrix, use a hierarchical clustering analysis method with a dynamic radius threshold to divide the intensity levels, output an interference area identification map, and transmit it to a path optimization module;
[0008] A path optimization module is used to analyze the boundary coordinates of the interference area identification map, generate a multi-directional displacement vector group with the line of sight as the axis, calculate the contour change trend after displacement through the collision prediction model, select the solution with the minimum overlapping area, output the path vector optimization set and transmit it to the deformation feedback module;
[0009] The deformation feedback module is used to obtain the displacement parameters of the path vector optimization set, reconstruct the vertex distribution using the free deformation mesh algorithm, activate the vertex offset calculation and input the vertex shader program to update the data, output the dynamic vertex coordinate set and return it to the contour modeling module.
[0010] As a further solution of the present invention, the projected contour line data includes vertex topological relationships, contour closure status, and component space identification; the interference area identification map is specifically a set of intersection coordinates, interference intensity grading marks, and area boundary indexes; the path vector optimization set specifically refers to a displacement direction vector group, collision avoidance parameters, and optimization weight coefficients; the dynamic vertex coordinate set includes deformation offset, vertex time series, and surface curvature parameters.
[0011] As a further solution of the present invention, the dynamic radius threshold is positively correlated with the maximum value of the interference distance matrix, and the proportional coefficient is 0.15-0.35.
[0012] As a further solution of the present invention, the contour modeling module includes:
[0013] The geometric structure construction submodule obtains the furniture's three-dimensional coordinate point set, calculates the ratio of the node vector spacing to the number of control points to determine the node vector parameters, calculates the weight factor distribution matrix based on the spatial coordinates of the control points, establishes the surface control network by multiplying the basis function coefficients with the weight factor matrix, and generates a curvature weight parameter set.
[0014] The coordinate projection conversion submodule calculates the viewpoint coordinate system conversion matrix based on the curvature weight parameter set, performs a dot product operation on the three-dimensional coordinate components and the projection plane normal vector to eliminate the depth axis component, and forms a two-dimensional coordinate mapping sequence by multiplying the perspective projection matrix with the homogeneous coordinates;
[0015] The contour optimization submodule calculates the difference between the curvature change rate between adjacent nodes and the preset threshold value of 0.15-0.35 according to the two-dimensional coordinate mapping sequence, selects the node with excessive difference as the insertion position, adjusts the spline curve density by node vector reorganization and basis function coefficient update, and outputs the contour curvature data set.
[0016] As a further scheme of the present application, the interference detection module comprises:
[0017] The intersection region identification sub-module acquires the projection profile line data set, calls the line segment endpoint coordinate parameters, establishes a line segment equation simultaneous solution model, calculates the coordinates of the intersection points of each two line segments, and screens the effective intersection points to form an intersection region coordinate set;
[0018] The interference intensity quantification sub-module extracts the adjacent line segment endpoint spacing parameters based on the intersection region coordinate set, and adopts the formula:
[0019] ;
[0020] The interference intensity coefficient matrix is calculated and generated;
[0021] wherein, represents the interference intensity coefficient matrix, is the elastic modulus of the composite material multiplied by the environmental temperature correction coefficient, is a safety margin adjustment factor obtained according to a safety level lookup table, represents the shortest distance between line segment i and line segment j, represents the structural thickness measurement value in meters, and i and j are line segment number indexes;
[0022] The strength grade division sub-module calls the interference intensity coefficient matrix, sets the quartile threshold value of the dimensionless normalized parameter, divides the interference region into three levels of high strength area, medium strength area and low strength area, and generates an interference region identification map.
[0023] As a further scheme of the present application, the path optimization module comprises:
[0024] The displacement vector generation sub-module analyzes the boundary coordinates of the interference region identification map, calculates the dot product value of the boundary point normal vector and the line of sight direction vector, divides the displacement direction quadrant according to the positive and negative signs of the dot product value, determines the modulus of the plurality of direction vectors by the product operation of the quadrant angle and the preset step length, and generates a plurality of multi-direction displacement vector groups;
[0025] The collision prediction sub-module calculates the nearest distance value between the profile vertex after displacement and the boundary of the interference region based on the plurality of multi-direction displacement vector groups, establishes an exponential decay function relationship between the distance value d and the collision probability P , screens the low-risk displacement vectors through a probability threshold, and forms a displacement risk coefficient set;
[0026] wherein λ is the decay coefficient and takes a value of 0.5-1.2;
[0027] The solution screening submodule calculates the area intersection and union ratio of the contours after displacement of multiple vector groups and the original contours based on the displacement risk coefficient set, selects the vector group corresponding to the minimum intersection and union ratio, eliminates the dimensional difference through vector modulus normalization, and outputs the path optimization vector set.
[0028] As a further solution of the present invention, the deformation feedback module includes:
[0029] The mesh reconstruction submodule obtains the displacement parameters of the path vector optimization set, calculates the inverse of the Euclidean distance between the control point and the displacement vector as the weight coefficient, reconstructs the mesh vertex distribution through the point-by-point product operation of the basis function and the control point coordinates, and generates a deformation weight parameter set;
[0030] The vertex offset submodule calculates the linear combination value of the original vertex coordinates and the control point displacement based on the deformation weight parameter set, determines the offset direction by the dot product operation of the displacement gradient matrix and the normal vector, and forms a vertex displacement gradient set;
[0031] The shader update submodule calls the vertex displacement gradient set, inputs the displacement gradient component into the vertex shader register, executes parallel thread calculation to update the vertex coordinate cache, and outputs the dynamic vertex coordinate set after floating point precision check in accordance with the IEEE754 single precision standard.
[0032] The indoor space visual presentation method is performed based on the indoor space visual presentation system described above, and includes the following steps:
[0033] S1: Construct the topological relationship of furniture vertices through the non-uniform rational B-spline algorithm, input the 3D space coordinates into the perspective projection converter to perform homogeneous coordinate transformation, and perform parametric interpolation operation on the transformed coordinates to generate projection contour line data;
[0034] S2: calling a line segment intersection detection algorithm to compare endpoint slopes of the projected contour data, establishing a line segment intersection index table, calculating the distance between adjacent line segments using the Minkowski distance formula, and using a hierarchical clustering analysis method to perform density grouping on the distance values to generate an interference area identification map;
[0035] S3: parsing the boundary vertex sequence of the interference area identification map, constructing a three-dimensional displacement coordinate system based on the sight line vector component, inputting the displacement vector into the collision prediction model to perform convolution kernel feature extraction, and screening the path vector optimization set through overlapping area integral operation;
[0036] S4: Using a free-deformation mesh algorithm to perform Laplace coordinate transformation on the optimized path vector set, performing bilinear interpolation operation on the deformed mesh vertices, and inputting the interpolation results into a vertex shader to perform homogeneous coordinate normalization processing to generate a dynamic vertex coordinate set.
[0037] Compared with the prior art, the advantages and positive effects of the present invention are:
[0038] In the present invention, a geometric structure is constructed through a non-uniform rational B-spline algorithm to realize automatic generation of topological relationships, a two-dimensional contour line is established in combination with a perspective projection converter to eliminate manual translation errors, a line segment intersection detection algorithm and a hierarchical clustering analysis method work together to improve the accuracy of interference area recognition, a collision prediction model predicts contour change trends based on a multi-directional displacement vector group, a free deformation mesh algorithm and a vertex shader program are linked to realize dynamic update of surface geometric structure, forming a closed-loop processing flow from three-dimensional modeling to visual feedback, while maintaining the integrity of geometric data, enhancing the dynamic analysis capability of spatial relationships, reducing the need for manual intervention through automatic contour generation and real-time deformation compensation mechanism, establishing an iterative optimization system for path optimization and deformation feedback, and improving the timeliness of visual interference response and the accuracy of spatial adaptation. BRIEF DESCRIPTION OF THE DRAWINGS
[0039] Figure 1 This is a flow chart of the indoor space visual presentation system of the present invention;
[0040] Figure 2 This is a flow chart of the contour modeling module of the present invention;
[0041] Figure 3 This is a flow chart of the interference detection module of the present invention;
[0042] Figure 4 This is a flow chart of the path optimization module of the present invention;
[0043] Figure 5 This is a flow chart of the deformation feedback module of the present invention. DETAILED DESCRIPTION
[0044] To make the purpose, technical solutions and advantages of the present invention clearer, the following is a detailed description of the technical solutions based on software implementation in conjunction with the system architecture diagram and embodiments. It should be understood that the specific embodiments described herein are only used to explain the technical solutions of the present invention and do not constitute a limitation on the scope of protection.
[0045] In the description of this invention, the system architecture relationships or data processing flows indicated by terms such as "layer," "module," "interface," "data flow," "client," and "server" are defined based on the architecture diagrams or flow charts corresponding to the embodiments. This expression is intended solely to clarify the logical relationships between the various elements of the technical solution and does not limit the physical deployment form. The term "plurality" encompasses two or more technical units, including but not limited to scalable elements such as multiple data nodes, processing threads, service instances, or functional components. The specific number will be determined based on the actual business scenario and requires special explanation.
[0046] See also Figure 1 andFigure 2 The present invention provides a technical solution: an indoor space visual presentation system includes:
[0047] The contour modeling module is used to construct the furniture geometric structure through the non-uniform rational B-spline algorithm, input the three-dimensional coordinates into the perspective projection converter to generate a two-dimensional contour line, output the projection contour line data and transmit it to the interference detection module;
[0048] Projected contour data includes vertex topological relationships, contour closure status, and component spatial identification;
[0049] The geometric structure construction submodule obtains the furniture's three-dimensional coordinate point set, calculates the ratio of the node vector spacing to the number of control points to determine the node vector parameters, calculates the weight factor distribution matrix based on the spatial coordinates of the control points, establishes the surface control network by multiplying the basis function coefficients with the weight factor matrix, and generates a curvature weight parameter set.
[0050] For example, the geometry of a red oak chair leg in an indoor scene is processed by the contour modeling module. First, the geometry construction submodule is started, and a set of 3D coordinate points of 5 key positions on the surface of the chair leg is obtained through a 3D scanning device, which is recorded as to Its coordinates in the right-handed Cartesian coordinate system (unit: meter) are: , , , , .
[0051] The geometry construction submodule then calculates the ratio of the knot vector spacing to the number of control points. In this example, the number of control points is 5. To ensure that the curve is shaped stable at the start and end points, the ratio of the knot vector spacing to the number of control points is set to 0.25. This ratio is used to determine the knot vector parameters of the non-uniform rational B-spline (NURBS). A cubic (3-degree) NURBS curve requires n+p+1 knots, where n is the number of control points (here 4, i.e., indexes 0-4) and p is the degree (here 3). Therefore, 5+3+1=9 knots are required. Knot vector is calculated as . This vector defines the range of influence of the basis function in the parameter space.
[0052] Subsequently, the submodule calculates the weight factor distribution matrix based on the spatial coordinates of the control points. are all set to 1.0, that is, , indicating that the curve is evenly affected by each control point. In order to reflect the slight convex shape of the middle part of the chair leg, the control point The corresponding weight factor is adjusted to 1.3. The basis for this adjustment is: through modeling tests on 150 furniture with different curvatures, it is found that when the weight factor is adjusted within the range of 1.2-1.5, a smooth curve that meets ergonomic and aesthetic requirements can be generated without introducing sharp corners. The adjusted weight factor matrix is The submodule establishes a surface control network that describes the chair leg curve by multiplying the basis function coefficients with the weight factor matrix, and ultimately generates a set of curvature weight parameters that contain information such as the curvature of each point and the tangent vector.
[0053] The coordinate projection conversion submodule calculates the viewpoint coordinate system conversion matrix based on the curvature weight parameter set, performs a dot product operation on the three-dimensional coordinate components and the projection plane normal vector to eliminate the depth axis component, and forms a two-dimensional coordinate mapping sequence by multiplying the perspective projection matrix with the homogeneous coordinates;
[0054] The coordinate projection conversion submodule receives the above curvature weight parameter set. First, set the observation point at the coordinate , the sight direction points to the coordinate origin , the projection plane is set to Based on this viewpoint information, the viewpoint coordinate system transformation matrix is calculated. Subsequently, in order to convert the three-dimensional coordinates into two dimensions, the depth axis (Z axis) component needs to be eliminated. This process is done by comparing each three-dimensional coordinate component with the normal vector of the projection plane. Finally, a 4x4 perspective projection matrix is applied to the homogeneous coordinates of each vertex (for example, Convert to homogeneous coordinates ) to perform product operation. For example, after the complete projection transformation, its mapping coordinates on the two-dimensional screen are calculated as This operation is performed on all sample points on the NURBS curve to form a two-dimensional coordinate mapping sequence.
[0055] The contour optimization submodule calculates the difference between the curvature change rate between adjacent nodes and the preset threshold of 0.15-0.35 based on the two-dimensional coordinate mapping sequence, selects the nodes with excessive difference as the insertion position, adjusts the spline curve density by reorganizing the node vectors and updating the basis function coefficients, and outputs the contour curvature dataset.
[0056] The contour optimization submodule receives the two-dimensional coordinate mapping sequence. This submodule calculates the curvature change rate between adjacent nodes in the sequence. The curvature change rate is defined as the change in the angle between the tangent vectors of two adjacent curve segments divided by the arc length between the two nodes. For example, the node is calculated to be and The curvature change rate between nodes is 0.12, and the and The curvature change rate between the two points is 0.38. The preset curvature change rate threshold range is 0.15-0.35. The determination of this threshold range is based on a visual perception experiment involving 50 observers: the observers were invited to rate the smoothness of 100 groups of contour lines with different node densities (1-5 points, 5 points being the smoothest). Experimental data shows that when the curvature change rate is lower than 0.15, increasing the node density improves the smoothness score by less than 3%, but the calculation time increases by an average of 28%. When the change rate is higher than 0.35, more than 92% of observers mark the area as "unsmooth" or "with corners". Therefore, 0.15-0.35 is selected as the threshold range that takes into account both visual effects and computational efficiency.
[0057] Set the threshold to 0.20. and The curvature change rate of 0.38 exceeds the threshold. Therefore, the and The parameter positions between and are used as the new knot insertion locations. By reorganizing the knot vectors (inserting a new knot value into the knot vector U) and recalculating the basis function coefficients, the density of the spline curve in this region is increased, resulting in a smoother transition. This process is iterated until the curvature change rate between all adjacent knots is less than 0.20. The optimized contour and its corresponding curvature dataset are output.
[0058] See also Figure 1 and Figure 3 ,Interference detection module is used to receive the projected contour line data, call the line segment intersection detection algorithm to identify the intersection area, calculate the shortest distance between the line segments to generate the interference distance matrix, use the hierarchical clustering analysis method with dynamic radius threshold to divide the intensity level, output the interference area identification map and transmit it to the path optimization module;
[0059] The interference region identification map specifically includes a set of intersection coordinates, interference intensity graded marks, and region boundary indexes;
[0060] The intersection area identification submodule obtains the projected contour line dataset, calls the line segment endpoint coordinate parameters, establishes a simultaneous solution model for line segment equations, calculates the coordinates of the intersection points of each line segment, and selects valid intersection points to form the intersection area coordinate set;
[0061] The Interference Detection Module receives projected contour data from the Contour Modeling Module. In addition to the aforementioned chair leg contour (denoted as Object A), the scene also contains a table corner contour (denoted as Object B), which visually overlaps from the current viewpoint. This projected contour data includes the vertex topology of Objects A and B (describing how vertices connect to form line segments), the contour closure status (both are closed contours), and the component spatial identification (A is a chair, B is a table).
[0062] The intersection area recognition submodule obtains these two sets of projection contour data sets. The submodule calls the vertex coordinate parameters on the contour lines and compares all line segments on the two contour lines. and The line segments For example, the line segment equation can be expressed as At the same time, object B consists of vertices and The line segments , whose equation is By establishing a simultaneous solution model for these two line segment equations, the coordinates of the intersection are calculated as The submodule performs this solution process for all line segment pairs and filters out all valid intersection points within the line segment range to form a set of intersection area coordinates, which defines the geometric shape of the visual interference area.
[0063] The interference intensity quantification submodule extracts the spacing parameters of adjacent line segment endpoints based on the intersection area coordinate set, using the formula:
[0064] ;
[0065] Calculate and generate interference intensity coefficient matrix;
[0066] in, represents the interference intensity coefficient matrix, is the elastic modulus of the composite material multiplied by the ambient temperature correction factor, is the safety margin adjustment factor obtained by looking up the table according to the safety level, represents the shortest distance between line segment i and line segment j, Represents the thickness measurement of the structure in meters, i and j are the line segment number indices;
[0067] The interference intensity quantification submodule quantifies the intensity of the line segments that constitute the intersection based on the intersection area coordinate set. This quantification process applies the formula .
[0068] The logic of the formula is that it takes the physical stiffness of the material (elastic modulus) ) and safety requirements (safety margin ) as a molecule, representing the object's ability to "resist" interference; the geometric proximity between line segments (the shortest distance ) and the thickness of the structure ( ) as the denominator, representing the “severity” of the interference. The absolute value of the numerator is positive, and the square root operation is performed The closer the distance, the greater the impact on the interference intensity and the faster the rate of change. The entire formula provides a physical quantitative evaluation of visual two-dimensional interference by combining physical properties, safety standards and geometric relationships. The formula is beneficial in that it introduces parameters related to real-world physical properties. and , making the purely visual interference detection results more realistic and meaningful. The "intensity" of its evaluation is no longer an arbitrarily set value, but an interpretable quantity related to the material and size of the object.
[0069] The parameter assignment and calculation process is as follows:
[0070] and : Segment number index, here is the intersection segment (number i=1) and (number j=2) as an example.
[0071] : The elastic modulus of the composite material multiplied by the ambient temperature correction factor. The chair legs are made of red oak, and its elastic modulus is 12.5 GPa (at 12% moisture content). Pa). The current indoor ambient temperature is 22°C, the standard temperature is set to 20°C, and the temperature correction coefficient is set to 0.99 (for every 1°C deviation from the standard temperature, the modulus decreases by 0.5%). Therefore, .
[0072] : A safety margin adjustment factor obtained from a safety level table. Safety levels are determined based on the furniture's intended use and load-bearing requirements. In this example, the chair is considered standard load-bearing furniture and has a medium safety level.
[0073] Table 1: Correspondence between safety level and margin adjustment factor
[0074] Safety Class Description Safety Margin Adjustment Factor (γsγs) High For children, elderly or public places 1.5 Medium Standard domestic, non-critical load bearing 1.2 Low Decorative, substantially no load bearing 1.0
[0075] As shown in Table 1, =1.2. This is a dimensionless parameter.
[0076] : The shortest distance between line segments i and j. For intersecting line segments, the shortest distance is 0. To avoid the denominator being zero, this formula is used to calculate the interference intensity of non-intersecting but adjacent line segments. We choose Another nearby parallel line segment from object B , which consists of vertices and Through geometric calculations, line segments and The shortest distance between is 5 pixels. If the screen display ratio is set to 500 pixels / meter, then rice.
[0077] : Thickness measurement of the structure in meters. This value is taken directly from the 3D model; the chair legs are 0.05 meters thick.
[0078] Substitute the above parameter values into the formula: By repeating this calculation for all adjacent non-intersecting line segment pairs, an interference intensity coefficient matrix is generated.
[0079] The intensity level division submodule calls the interference intensity coefficient matrix, sets the quartile threshold of the dimensionless normalized parameter, divides the area into three levels: high intensity area, medium intensity area, and low intensity area, and generates an interference area identification map;
[0080] The dynamic radius threshold is positively correlated with the maximum value of the interference distance matrix, with a proportional coefficient of 0.15-0.35.
[0081] The intensity level division submodule calls this matrix. Assume that a set of standardized dimensionless interference intensity coefficients are calculated as follows: . Sort the dataset And calculate its quartiles: Q1 is 0.45, Q2 (median) is , Q3 is 0.92. Based on this, the threshold is set: the area below Q1 (0.45) is divided into low-intensity area; the area between Q1 (0.45) and Q3 (0.92) is divided into medium-intensity area; the area above Q3 (0.92) is divided into high-intensity area. For the intersection area, its interference intensity is defined as infinity and is directly classified into the high-intensity area. Finally, the module integrates the intersection coordinates, the intensity grading marks of each area, and the area boundary index to generate an interference area identification map. The setting of the dynamic radius threshold is positively correlated with the maximum value of the interference distance matrix (for example, the distance between the farthest pair of concerned line segments is 0.1 meters), and the proportional coefficient is 0.2. Therefore, the dynamic radius threshold is Meters. This radius is used in hierarchical clustering analysis to aggregate spatially close interference points into clusters.
[0082] See also Figure 1 and Figure 4 ,Path optimization module, is used to analyze the boundary coordinates of the interference area identification map, generate a multi-directional displacement vector group with the line of sight direction as the axis, calculate the contour change trend after displacement through the collision prediction model, select the solution with the minimum overlapping area, output the path vector optimization set and transmit it to the deformation feedback module;
[0083] The path vector optimization set specifically refers to the displacement direction vector group, collision avoidance parameters, and optimization weight coefficients;
[0084] The displacement vector generation submodule analyzes the boundary coordinates of the interference area identification map, calculates the dot product value of the boundary point normal vector and the line of sight direction vector, divides the displacement direction quadrants according to the positive and negative signs of the dot product values, determines the modulus lengths of multiple direction vectors by multiplying the quadrant angles by the preset step length, and generates a multi-directional displacement vector group;
[0085] The path optimization module receives the interference area identification map. The boundary coordinates of the high-intensity interference area are parsed, such as a point set The goal of the module is to calculate an optimal displacement vector for object A (chair leg) to eliminate visual overlap.
[0086] The displacement vector generation submodule first analyzes the above boundary coordinates. As an example, calculate its normal vector on the polygon boundary, set The sight direction vector is set to the negative direction of the Z axis, and its projection on the XY plane is the zero vector. Here we define a reference sight vector from object A to object B, set as .calculate and The dot product value of : The dot product value is negative, indicating that the normal vector is opposite to the reference line of sight, so the displacement direction should be assigned to the third or fourth quadrant. By performing this operation on all boundary points, all possible displacement direction quadrants are determined. Next, the displacement step size is set to 10 pixel units, and the quadrant angle (for example, 210°) is multiplied by the step size, that is, , , generate a specific direction vector Repeat this process to generate a set of multi-directional displacement vectors containing 8 different directions, such as .
[0087] The collision prediction submodule calculates the closest distance between the contour vertex and the boundary of the interference area after displacement based on the multi-directional displacement vector group, and establishes an exponential decay function relationship between the distance value d and the collision probability P. ,The low-risk displacement vectors are screened by probability threshold to form a displacement risk coefficient set;
[0088] Where λ is the attenuation coefficient and has a value of 0.5-1.2;
[0089] The collision prediction submodule receives this set of displacement vectors. For each vector, such as , apply it to the outline of object A to get a new virtual outline. Then, calculate the closest distance between all vertices of this new outline and the boundary of the original interference area (the outline of object B) Assume that , the calculated closest distance is 3.0 pixels. The collision probability is calculated by an exponential decay function. Calculation. Parameters is the attenuation coefficient, and its value range is 0.5-1.2. This range is determined by the following experiments: In 50 typical indoor layout scenes, different value to optimize the path. When , the probability P decays too slowly with the distance d, causing the system to choose an excessively large displacement to avoid a very low-risk collision, resulting in low optimization efficiency. When , the probability P decays too quickly with the distance d, making the system insensitive to the risk of close collisions. In more than 30% of cases, the calculated paths result in the optimized contours still touching or very close to each other. Therefore, 0.5-1.2 is selected as the range to balance risk assessment and displacement efficiency. The collision probability is . Set a collision probability threshold to 0.1. Since 0.067<0.1, vector is considered a low-risk displacement vector. Repeat this calculation for all vectors in , filter out all low-risk vectors, and form a displacement risk coefficient set, where each element is (vector, risk probability P).
[0090] The solution screening submodule calculates the area intersection and union ratio of the displaced contours of multiple vector groups and the original contours based on the displacement risk coefficient set, selects the vector group corresponding to the minimum intersection and union ratio, eliminates the dimensional difference through vector modulus normalization, and outputs the path optimization vector set.
[0091] The solution screening submodule receives a set of displacement risk coefficients. For each low-risk displacement solution, the intersection over union (IoU) of the contour of the displaced object A and the contour of the original interference area (object B) is calculated. The IoU is calculated by calculating the intersection area of the two contours. , and the area of their union , then find the ratio . Assume that for the vector , the calculated IoU is 0.05; for another low-risk vector , the calculated IoU is 0.02. The submodule selects the solution with the smallest intersection-over-union ratio, that is, The corresponding displacement scheme. The selected vector group (here only one vector ) First, normalize the modulus to get the direction vector and a modulus of 10.0. This eliminates dimensional differences between different displacement schemes. The final output path optimization vector set includes the direction vector, the corresponding collision avoidance parameter (such as a risk probability of 0.02), and an optimization weight coefficient (calculated based on the Intersection over Union, here 1 / 0.02 = 50).
[0092] See also Figure 1 and Figure 5 ,Deformation feedback module, is used to obtain the displacement parameters of the path vector optimization set, reconstruct the vertex distribution using the free deformation mesh algorithm, activate the vertex offset calculation and input the vertex shader program to update the data, output the dynamic vertex coordinate set and return it to the contour modeling module;
[0093] The dynamic vertex coordinate set includes deformation offset, vertex time series, and surface curvature parameters;
[0094] The mesh reconstruction submodule obtains the displacement parameters of the path vector optimization set, calculates the inverse of the Euclidean distance between the control point and the displacement vector as the weight coefficient, reconstructs the mesh vertex distribution through the point-by-point product operation of the basis function and the control point coordinates, and generates a deformation weight parameter set;
[0095] The deformation feedback module receives the path vector optimization set output by the path optimization module, specifically the displacement vector Its task is to smoothly deform the visual representation of object A (chair leg) in response to this displacement instruction.
[0096] The mesh reconstruction submodule starts. It first builds a free-form deformation mesh (FFD) control point grid around the original 3D model of the chair leg. (In three-dimensional space, this may correspond to a When the vector ( ) acts on a specific control point of this lattice, it is necessary to calculate the effect of this displacement on all vertices on the chair leg model. , whose deformation weight coefficient is determined by the relationship between it and all the moved FFD control points For example, the vertex With control points The distance between the control point and the The distance is 0.08 meters, and the corresponding weight coefficients are and By performing this calculation on all vertices and all affected control points, a set of deformation weight parameters is generated. Subsequently, the vertex distribution of the model mesh is reconstructed through a point-by-point product operation of a basis function (such as a B-spline basis function) and the coordinates of each control point.
[0097] The vertex offset submodule calculates the linear combination of the original vertex coordinates and the control point displacement based on the deformation weight parameter set, determines the offset direction through the dot product operation of the displacement gradient matrix and the normal vector, and forms a vertex displacement gradient set;
[0098] The vertex offset submodule works based on the above deformation weight parameter set. It calculates each original vertex New coordinates The new coordinates are the displacement of the original coordinates and all related control points. The linear combination value of . This calculation provides a preliminary displacement vector for each vertex. In order to obtain a smoother and more natural deformation effect, the module further calculates the displacement gradient matrix, that is, the rate of change of the displacement of each point on the model surface, and then performs a dot product operation on the gradient matrix with the normal vector of each vertex. The result of this dot product accurately determines the final offset direction and amplitude of each vertex, ensuring that the deformation occurs along the surface normal direction or in a direction coordinated with it, avoiding unnatural interlacing or distortion. The result of this series of calculations is a vertex displacement gradient set that contains the precise displacement vector of each vertex.
[0099] The shader update submodule calls the vertex displacement gradient set, inputs the displacement gradient components into the vertex shader register, executes parallel thread calculation to update the vertex coordinate cache, and outputs the dynamic vertex coordinate set after floating-point precision verification that complies with the IEEE754 single-precision standard.
[0100] The shader update submodule calls this vertex displacement gradient set. This data set is loaded into a specific memory area on the graphics processing unit (GPU), namely a register or buffer object in the vertex shader program. The vertex shader is a highly parallel program running on the GPU, executed once for each vertex in the model. During this execution, it reads the original coordinates of the corresponding vertex and the displacement gradient vector for that vertex from the register, then adds the two together, updating the coordinate caches of all relevant vertices in a very short time. After the update is complete, the system performs a floating-point precision check, comparing the calculated new coordinate values with the standard representation of IEEE 754 single-precision floating-point numbers to check for invalid values (such as NaN or infinity) to ensure rendering pipeline stability. Once the check passes, the dynamic vertex coordinate set, which includes the deformation offset, update timestamp, and new surface curvature parameters, is output and returned to the silhouette modeling module as input for the next rendering frame, achieving closed-loop dynamic visual rendering and optimization.
[0101] The indoor space visual presentation method is based on the above-mentioned indoor space visual presentation system and includes the following steps:
[0102] S1: Construct the topological relationship of furniture vertices through the non-uniform rational B-spline algorithm, input the 3D space coordinates into the perspective projection converter to perform homogeneous coordinate transformation, and perform parametric interpolation operation on the transformed coordinates to generate projection contour line data;
[0103] S2: Call the line segment intersection detection algorithm to compare the endpoint slopes of the projected contour data, establish a line segment intersection index table, calculate the distance between adjacent line segments using the Minkowski distance formula, and use the hierarchical clustering analysis method to density group the distance values to generate an interference area identification map;
[0104] S3: Analyze the boundary vertex sequence of the interference area identification map, construct a three-dimensional displacement coordinate system based on the sight vector components, input the displacement vector into the collision prediction model to perform convolution kernel feature extraction, and screen the optimal path vector set through overlapping area integral operation;
[0105] S4: Use the free-deformation mesh algorithm to perform Laplace coordinate transformation on the optimized path vector set, perform bilinear interpolation on the deformed mesh vertices, and input the interpolation results into the vertex shader to perform homogeneous coordinate normalization processing to generate a dynamic vertex coordinate set.
[0106] The above examples illustrate preferred implementations of the present invention. Any equivalent adjustments to the technical solutions based on software engineering methods are within the scope of protection, including but not limited to: implementing algorithmic logic using different programming languages, service-oriented reconfiguration of functional modules, adjusting data interaction protocols, optimizing resource scheduling strategies, and other technical improvements. Any implementation scheme derived from reasonable modifications to the data processing flow, service call chain, or system architecture level that does not depart from the core technology of the present invention shall be deemed to be within the scope of protection defined by the claims of the present invention.
Claims
1. Indoor space visual presentation system, characterized by: The system comprises: The contour modeling module is used to construct the furniture geometric structure through the non-uniform rational B-spline algorithm, input the three-dimensional coordinates into the perspective projection converter to generate a two-dimensional contour line, output the projection contour line data and transmit it to the interference detection module; An interference detection module is configured to receive the projected contour line data, call a line segment intersection detection algorithm to identify the intersection area, calculate the shortest distance between line segments to generate an interference distance matrix, use a hierarchical clustering analysis method with a dynamic radius threshold to divide the intensity levels, output an interference area identification map, and transmit it to a path optimization module; A path optimization module is used to analyze the boundary coordinates of the interference area identification map, generate a multi-directional displacement vector group with the line of sight as the axis, calculate the contour change trend after displacement through the collision prediction model, select the solution with the minimum overlapping area, output the path vector optimization set and transmit it to the deformation feedback module; The deformation feedback module is used to obtain the displacement parameters of the path vector optimization set, reconstruct the vertex distribution using the free deformation mesh algorithm, activate the vertex offset calculation and input the vertex shader program to update the data, output the dynamic vertex coordinate set and return it to the contour modeling module.
2. The indoor space visual presentation system according to claim 1, characterized in that: The projected contour line data includes vertex topological relationships, contour closure status, and component space identification. The interference area identification map specifically includes a set of intersection coordinates, interference intensity grading marks, and area boundary indexes. The path vector optimization set specifically refers to a displacement direction vector group, collision avoidance parameters, and optimization weight coefficients. The dynamic vertex coordinate set includes deformation offset, vertex time series, and surface curvature parameters.
3. The indoor space visual presentation system according to claim 2, characterized in that: The dynamic radius threshold is positively correlated with the maximum value of the interference distance matrix, and the proportional coefficient is 0.15-0.
35.
4. The indoor space visual presentation system according to claim 3, characterized in that: The contour modeling module includes: The geometric structure construction submodule obtains the furniture's three-dimensional coordinate point set, calculates the ratio of the node vector spacing to the number of control points to determine the node vector parameters, calculates the weight factor distribution matrix based on the spatial coordinates of the control points, establishes the surface control network by multiplying the basis function coefficients with the weight factor matrix, and generates a curvature weight parameter set. The coordinate projection conversion submodule calculates the viewpoint coordinate system conversion matrix based on the curvature weight parameter set, performs a dot product operation on the three-dimensional coordinate components and the projection plane normal vector to eliminate the depth axis component, and forms a two-dimensional coordinate mapping sequence by multiplying the perspective projection matrix with the homogeneous coordinates; The contour optimization submodule calculates the difference between the curvature change rate between adjacent nodes and the preset threshold value of 0.15-0.35 according to the two-dimensional coordinate mapping sequence, selects the node with excessive difference as the insertion position, adjusts the spline curve density by node vector reorganization and basis function coefficient update, and outputs the contour curvature data set.
5. The indoor space visual presentation system according to claim 4, characterized in that: The interference detection module includes: The intersection area identification submodule obtains the projected contour line dataset, calls the line segment endpoint coordinate parameters, establishes a simultaneous solution model for line segment equations, calculates the coordinates of the intersection points of each line segment, and selects valid intersection points to form the intersection area coordinate set; The interference intensity quantification submodule extracts the spacing parameters of adjacent line segment endpoints based on the intersection area coordinate set, using the formula: ; Calculate and generate interference intensity coefficient matrix; in, represents the interference intensity coefficient matrix, is the elastic modulus of the composite material multiplied by the ambient temperature correction factor, is the safety margin adjustment factor obtained by looking up the table according to the safety level, represents the shortest distance between line segment i and line segment j, Represents the thickness measurement of the structure in meters, i and j are the line segment number indices; The intensity level division submodule calls the interference intensity coefficient matrix, sets the quartile threshold of the dimensionless normalized parameter, divides the area into three levels: high intensity area, medium intensity area, and low intensity area, and generates an interference area identification map.
6. The indoor space visual presentation system according to claim 5, characterized in that: The path optimization module includes: The displacement vector generation submodule parses the boundary coordinates of the interference area identification map, calculates the dot product value of the boundary point normal vector and the line of sight direction vector, divides the displacement direction quadrants according to the positive and negative signs of the dot product values, determines the modulus lengths of multiple direction vectors by multiplying the quadrant angles by a preset step length, and generates a multi-directional displacement vector group; The collision prediction submodule calculates the closest distance between the contour vertex and the boundary of the interference area after displacement based on the multi-directional displacement vector group, and establishes an exponential decay function relationship between the distance value d and the collision probability P. ,The low-risk displacement vectors are screened by probability threshold to form a displacement risk coefficient set; Where λ is the attenuation coefficient and has a value of 0.5-1.2; The solution screening submodule calculates the area intersection and union ratio of the contours after displacement of multiple vector groups and the original contours based on the displacement risk coefficient set, selects the vector group corresponding to the minimum intersection and union ratio, eliminates the dimensional difference through vector modulus normalization, and outputs the path optimization vector set.
7. The indoor space visual presentation system according to claim 6, characterized in that: The deformation feedback module includes: The mesh reconstruction submodule obtains the displacement parameters of the path vector optimization set, calculates the inverse of the Euclidean distance between the control point and the displacement vector as the weight coefficient, reconstructs the mesh vertex distribution through the point-by-point product operation of the basis function and the control point coordinates, and generates a deformation weight parameter set; The vertex offset submodule calculates the linear combination value of the original vertex coordinates and the control point displacement based on the deformation weight parameter set, determines the offset direction by the dot product operation of the displacement gradient matrix and the normal vector, and forms a vertex displacement gradient set; The shader update submodule calls the vertex displacement gradient set, inputs the displacement gradient component into the vertex shader register, executes parallel thread calculation to update the vertex coordinate cache, and outputs the dynamic vertex coordinate set after floating point precision check in accordance with the IEEE754 single precision standard.
8. A method for visually presenting an interior space, characterized in that: The method is used to implement the indoor space visual presentation system according to any one of claims 1 to 7, comprising the following steps: S1: Construct the topological relationship of furniture vertices through the non-uniform rational B-spline algorithm, input the 3D space coordinates into the perspective projection converter to perform homogeneous coordinate transformation, and perform parametric interpolation operation on the transformed coordinates to generate projection contour line data; S2: calling a line segment intersection detection algorithm to compare endpoint slopes of the projected contour data, establishing a line segment intersection index table, calculating the distance between adjacent line segments using the Minkowski distance formula, and using a hierarchical clustering analysis method to perform density grouping on the distance values to generate an interference area identification map; S3: parsing the boundary vertex sequence of the interference area identification map, constructing a three-dimensional displacement coordinate system based on the sight line vector component, inputting the displacement vector into the collision prediction model to perform convolution kernel feature extraction, and screening the path vector optimization set through overlapping area integral operation; S4: Using a free-deformation mesh algorithm to perform Laplace coordinate transformation on the optimized path vector set, performing bilinear interpolation operation on the deformed mesh vertices, and inputting the interpolation results into a vertex shader to perform homogeneous coordinate normalization processing to generate a dynamic vertex coordinate set.
Citation Information
Patent Citations
3D object collision detection method and system in indoor environment
CN110309584A
Method and system for automatically generating indoor three-dimensional model from point cloud by considering semanteme
CN111915730A
Indoor decoration simulation display method and system based on BIM
CN119091027A
News scene three-dimensional reconstruction and visualization method based on multi-source remote sensing data
CN119904592A
Table and chair remote management method based on smart home platform
CN120088768A
Cited By
Automobile exterior three-view automatic generation and calibration method based on engineering constraint
CN121527329A
BIM-based hydroelectric engineering surveying control network layout optimization method and system
CN122471581A