Object three-dimensional profile construction method and device, electronic equipment and storage medium

By determining the side section view and occlusion fill value in the object's 3D contour construction method, the problem of inaccurate 3D contour caused by incomplete object point cloud data is solved, and the complete restoration of the object's 3D contour is achieved.

CN116310198BActive Publication Date: 2026-04-10SF TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SF TECH CO LTD
Filing Date
2021-12-21
Publication Date
2026-04-10

AI Technical Summary

Technical Problem

Because objects obstruct the line of sight of devices such as TOF cameras and LiDAR, point cloud data of some objects cannot be fully collected, making it impossible to accurately construct the three-dimensional contours of the objects.

Method used

By acquiring the target point cloud of the target loading space, the i-th side cross-sectional view of the target loading space is determined, the target contour pixel closest to the reference plane is obtained, and based on the target contour pixel and the pixel it is located in, the position of the supporting surface of the occluded object and the occlusion fill value are determined, and point cloud filling is performed to restore the three-dimensional contour of the object.

Benefits of technology

Even with incomplete point cloud data, it can completely and accurately construct the 3D contour of the object and restore the original 3D shape of the object.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116310198B_ABST
    Figure CN116310198B_ABST
Patent Text Reader

Abstract

The application provides a kind of object three-dimensional profile construction method, device, electronic equipment and computer readable storage medium.The object three-dimensional profile construction method includes: obtaining the target point cloud of target loading space where target object is placed;Determine the i-th side sectional view of target loading space based on target point cloud, the i-th side sectional view contains the pixel point of point cloud acquisition device of target point cloud;From each profile pixel point of target occlusion of the i-th side sectional view, obtain the target profile pixel point closest to reference surface distance;Determine the position of support surface and occlusion filling value of target occluded object in the i-th side sectional view based on target profile pixel point and the pixel point;Based on the position of support surface and occlusion filling value, the target object profile corresponding to target point cloud is filled, and the target three-dimensional profile of target object is obtained.The three-dimensional profile of object can be accurately constructed in the case of missing target object point cloud data in the application.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of 3D modeling technology, specifically to a method, apparatus, electronic device, and computer-readable storage medium for constructing the 3D contour of an object. Background Technology

[0002] With advancements in 3D technology, the performance of devices such as Time-of-Flight (TOF) cameras and LiDAR has gradually improved while their prices have decreased. The use of TOF cameras and LiDAR to collect point cloud data and obtain the 3D contours of objects for volume detection is finding increasing applications in various fields. For example, when calculating the load factor of a vehicle, point cloud data of the cargo is first collected using TOF cameras and LiDAR to calculate the volume of the cargo within the vehicle.

[0003] However, since the object itself can obstruct the line of sight of devices such as TOF cameras and LiDAR, the point cloud data of some objects cannot be completely collected. Therefore, the point cloud data collected by devices such as TOF cameras and LiDAR cannot be used to construct a complete three-dimensional outline of the object.

[0004] Therefore, how to construct a complete and accurate three-dimensional contour of an object is a technical problem that urgently needs to be solved. Summary of the Invention

[0005] This application provides a method, apparatus, electronic device, and computer-readable storage medium for constructing the three-dimensional contour of an object, aiming to solve the problem of inaccurate three-dimensional contour construction of an object due to incomplete point cloud data.

[0006] In a first aspect, this application provides a method for constructing a three-dimensional contour of an object, the method comprising:

[0007] Obtain the target point cloud of the target loading space, in which a target object is placed;

[0008] Based on the target point cloud, the i-th side sectional view of the target loading space is determined. The i-th side sectional view is perpendicular to the support surface of the target loading space and perpendicular to the reference surface of the target loading space. The i-th side sectional view includes the contour pixels of each occluder in the target object and the pixel of the point cloud acquisition device of the target point cloud.

[0009] From the contour pixels of the target occluder in the i-th side cross-sectional view, obtain the target contour pixel that is closest to the reference plane;

[0010] Based on the target contour pixels and the pixel at the location, determine the position of the supporting surface of the occluded object in the i-th side sectional view and the occlusion fill value of the occluded object;

[0011] Based on the location of the supporting surface and the occlusion fill value, the outline of the target object corresponding to the target point cloud is filled to obtain the target three-dimensional outline of the target object.

[0012] In some embodiments of this application, determining the position of the supporting surface of the occluded object in the i-th side cross-sectional view and the occlusion fill value of the occluded object based on the target contour pixels and the pixel at the location includes:

[0013] Determine the first line segment formed by the intersection of the extension of the target ray and the support surface and the target contour pixel, wherein the target ray is a ray that starts from the pixel and passes through the target contour pixel;

[0014] Determine the target intersection point between the extended line and the target object after it has been obscured;

[0015] Determine the second line segment formed by the target intersection point and the target contour pixels;

[0016] The position of the supporting surface of the target obscured object in the i-th side sectional view is determined based on the second line segment.

[0017] Based on the first projection length of the first line segment on the support surface and the second projection length of the second line segment on the support surface, the occlusion fill value of the target occluded object in the i-th side sectional view is determined.

[0018] In some embodiments of this application, determining the occlusion fill value of the target occluded object in the i-th side cross-sectional view based on the first projected length of the first line segment on the support surface and the second projected length of the second line segment on the support surface includes:

[0019] Obtain the ratio between the second projection length and the first projection length;

[0020] When the ratio is greater than a preset threshold, the point cloud height value of the target intersection is used as the occlusion filling value.

[0021] In some embodiments of this application, the step of obtaining the ratio between the second projection length and the first projection length further includes:

[0022] When the ratio is less than or equal to a preset threshold, a linear value between the point cloud height value of the target contour pixel and the point cloud height value of the target intersection is determined as the occlusion fill value.

[0023] In some embodiments of this application, the step of filling the target object contour corresponding to the target point cloud based on the location of the supporting surface and the occlusion fill value to obtain the target three-dimensional contour of the target object includes:

[0024] Based on the outline pixels of the target object, determine the boundary fill value of the reference plane in the i-th side sectional view;

[0025] Based on the boundary fill value of the reference plane in the i-th side sectional view, the outline of the target object corresponding to the target point cloud is filled to obtain the preliminary three-dimensional outline of the target object.

[0026] Based on the position of the supporting surface of the occluded object in the i-th side sectional view and the occlusion fill value, the preliminary three-dimensional contour is filled to obtain the target three-dimensional contour of the target object.

[0027] In some embodiments of this application, obtaining the target contour pixel closest to the reference plane from each contour pixel of the target occluder in the i-th side cross-sectional view includes:

[0028] The support surface is divided into a grid to obtain an m-row * n-column grid of the support surface;

[0029] Obtain the target 3D coordinates of the i-th column of the m-row*n-column grid, where 1≤i≤n. The target 3D coordinates include the point cloud height value and the support surface coordinate position of each grid in the i-th column. The support surface coordinate position of the i-th column is the same as the support surface coordinate position of the i-th side sectional view.

[0030] Based on the target's three-dimensional coordinates, from the first to the mth grids in the i-th column, determine the j-th grid whose point cloud height value is not null, where the (j-1)-th grid's point cloud height value is null or zero;

[0031] Based on the support surface coordinates corresponding to the j-th grid and the point cloud height value corresponding to the j-th grid, the target contour pixels are determined from the contour pixels of the target occluder.

[0032] In some embodiments of this application, the method further includes:

[0033] Based on the target's three-dimensional contour, the volume of the target object is determined.

[0034] In some embodiments of this application, the method further includes:

[0035] Obtain the capacity of the target loading space;

[0036] The loading rate of the target loading space is determined based on the capacity of the target loading space and the volume of the target object.

[0037] Secondly, this application provides a three-dimensional contour construction device for an object, the three-dimensional contour construction device comprising:

[0038] The first acquisition unit is used to acquire the target point cloud of the target loading space, wherein a target object is placed in the target loading space.

[0039] The determining unit is used to determine the i-th side sectional view of the target loading space based on the target point cloud. The i-th side sectional view is perpendicular to the support surface of the target loading space and perpendicular to the reference surface of the target loading space. The i-th side sectional view includes the contour pixels of each occluder in the target object and the pixel points of the point cloud acquisition device of the target point cloud.

[0040] The second acquisition unit is used to acquire the target contour pixel that is closest to the reference plane from each contour pixel of the target occluder in the i-th side cross-sectional view;

[0041] A construction unit is used to determine the position of the support surface of the occluded object in the i-th side sectional view and the occlusion fill value of the occluded object based on the target contour pixels and the pixel where it is located;

[0042] The construction unit is further configured to fill the target object contour corresponding to the target point cloud based on the location of the supporting surface and the occlusion fill value, so as to obtain the target three-dimensional contour of the target object.

[0043] In some embodiments of this application, the building unit is specifically used for:

[0044] Determine the first line segment formed by the intersection of the extension of the target ray and the support surface and the target contour pixel, wherein the target ray is a ray that starts from the pixel and passes through the target contour pixel;

[0045] Determine the target intersection point between the extended line and the target object after it has been obscured;

[0046] Determine the second line segment formed by the target intersection point and the target contour pixels;

[0047] The position of the supporting surface of the target obscured object in the i-th side sectional view is determined based on the second line segment.

[0048] Based on the first projection length of the first line segment on the support surface and the second projection length of the second line segment on the support surface, the occlusion fill value of the target occluded object in the i-th side sectional view is determined.

[0049] In some embodiments of this application, the building unit is specifically used for:

[0050] Obtain the ratio between the second projection length and the first projection length;

[0051] When the ratio is greater than a preset threshold, the point cloud height value of the target intersection is used as the occlusion filling value.

[0052] In some embodiments of this application, after the step of obtaining the ratio between the second projection length and the first projection length, the construction unit is specifically used for:

[0053] When the ratio is less than or equal to a preset threshold, a linear value between the point cloud height value of the target contour pixel and the point cloud height value of the target intersection is determined as the occlusion fill value.

[0054] In some embodiments of this application, the building unit is specifically used for:

[0055] Based on the outline pixels of the target object, determine the boundary fill value of the reference plane in the i-th side sectional view;

[0056] Based on the boundary fill value of the reference plane in the i-th side sectional view, the outline of the target object corresponding to the target point cloud is filled to obtain the preliminary three-dimensional outline of the target object.

[0057] Based on the position of the supporting surface of the occluded object in the i-th side sectional view and the occlusion fill value, the preliminary three-dimensional contour is filled to obtain the target three-dimensional contour of the target object.

[0058] In some embodiments of this application, the second acquisition unit is specifically used for:

[0059] The support surface is divided into a grid to obtain an m-row * n-column grid of the support surface;

[0060] Obtain the target 3D coordinates of the i-th column of the m-row*n-column grid, where 1≤i≤n. The target 3D coordinates include the point cloud height value and the support surface coordinate position of each grid in the i-th column. The support surface coordinate position of the i-th column is the same as the support surface coordinate position of the i-th side sectional view.

[0061] Based on the target's three-dimensional coordinates, from the first to the mth grids in the i-th column, determine the j-th grid whose point cloud height value is not null, where the (j-1)-th grid's point cloud height value is null or zero;

[0062] Based on the support surface coordinates corresponding to the j-th grid and the point cloud height value corresponding to the j-th grid, the target contour pixels are determined from the contour pixels of the target occluder.

[0063] In some embodiments of this application, the object three-dimensional contour construction device further includes a computing unit, which is specifically used for:

[0064] Based on the target's three-dimensional contour, the volume of the target object is determined.

[0065] In some embodiments of this application, the computing unit is specifically used for:

[0066] Obtain the capacity of the target loading space;

[0067] The loading rate of the target loading space is determined based on the capacity of the target loading space and the volume of the target object.

[0068] Thirdly, this application also provides an electronic device, which includes a processor and a memory, wherein the memory stores a computer program, and when the processor calls the computer program in the memory, it executes the steps in any of the object three-dimensional contour construction methods provided in this application.

[0069] Fourthly, this application also provides a computer-readable storage medium having a computer program stored thereon, the computer program being loaded by a processor to execute the steps in the object three-dimensional contour construction method.

[0070] This application determines the i-th side cross-sectional view of the target loading space based on the target point cloud of the target loading space; from the contour pixels of the occluded object in the i-th side cross-sectional view, the target contour pixel closest to the reference plane of the target loading space is obtained; then, based on the target contour pixel and the pixel of the point cloud acquisition device, the position of the supporting surface of the occluded object in the i-th side cross-sectional view and the occlusion fill value are determined, which are used to fill the target object contour corresponding to the target point cloud to obtain the target three-dimensional contour of the target object; since the target contour pixel and the pixel of the target point cloud acquisition device can fully reflect the positional relationship between the occluded object and the line of sight of the point cloud acquisition device, the position of the supporting surface of the occluded object can be accurately reflected; therefore, by combining the target contour pixel and the pixel of the target point cloud to determine the position of the supporting surface of the occluded object and the occlusion fill value, and filling the target object contour, the original three-dimensional contour of the object can be restored to a certain extent. It can be seen that this application can completely and accurately construct the three-dimensional contour of the object even when the target object point cloud data is incomplete. Attached Figure Description

[0071] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0072] Figure 1 This is a scene diagram of the object three-dimensional contour construction system provided in the embodiments of this application;

[0073] Figure 2 This is a flowchart illustrating a method for constructing a three-dimensional contour of an object provided in an embodiment of this application;

[0074] Figure 3 This is a schematic diagram of a scenario in which the target loading space is a carriage, as described in this application embodiment;

[0075] Figure 4 This is a scene diagram after the reference plane of the target loading space has been meshed;

[0076] Figure 5 yes Figure 4 A schematic diagram of a scenario where the i-th side cross-sectional view of the carriage corresponding to the i-th column grid is displayed.

[0077] Figure 6 This is a schematic diagram illustrating the determination of the occlusion fill value of the target occluded in the i-th side sectional view;

[0078] Figure 7This is a schematic diagram of an embodiment of the object three-dimensional contour construction device provided in this application.

[0079] Figure 8 This is a schematic diagram of an embodiment of the electronic device provided in this application. Detailed Implementation

[0080] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0081] In the description of the embodiments of this application, it should be understood that the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of indicated technical features. Therefore, features defined with "first" and "second" may explicitly or implicitly include one or more of the stated features. In the description of the embodiments of this application, "multiple" means two or more, unless otherwise explicitly specified.

[0082] To enable any person skilled in the art to implement and use this application, the following description is provided. In this description, details are set forth for purposes of explanation. It should be understood that those skilled in the art will recognize that this application can be implemented without using these specific details. In other instances, well-known processes will not be described in detail to avoid obscuring the description of the embodiments of this application with unnecessary detail. Therefore, this application is not intended to be limited to the embodiments shown, but is consistent with the broadest scope of the principles and features disclosed in the embodiments of this application.

[0083] The execution subject of the object three-dimensional contour construction method in this application embodiment can be the object three-dimensional contour construction device provided in this application embodiment, or different types of electronic devices such as server equipment, physical host, or user equipment (UE) that integrate the object three-dimensional contour construction device. The object three-dimensional contour construction device can be implemented in hardware or software. The UE can specifically be a terminal device such as a smartphone, tablet computer, laptop computer, handheld computer, desktop computer, or personal digital assistant (PDA).

[0084] The electronic device can operate independently or in a cluster.

[0085] See Figure 1 , Figure 1 This is a schematic diagram of a scenario for an object 3D contour construction system provided in an embodiment of this application. The object 3D contour construction system may include an electronic device 100, which integrates an object 3D contour construction device. For example, the electronic device can acquire a target point cloud of a target loading space of a target object; based on the target point cloud, determine an i-th side cross-sectional view of the target loading space, the i-th side cross-sectional view being perpendicular to the support surface and the reference surface of the target loading space, and the i-th side cross-sectional view containing the contour pixels of each occluder in the target object and the pixel where the point cloud acquisition device of the target point cloud is located; from the contour pixels of each occluder in the i-th side cross-sectional view, obtain the target contour pixel closest to the reference surface; based on the target contour pixel and the pixel where it is located, determine the position of the occluded object on the support surface and the occlusion fill value of the occluded object in the i-th side cross-sectional view; based on the position on the support surface and the occlusion fill value, fill the target object contour corresponding to the target point cloud to obtain the target 3D contour of the target object.

[0086] In addition, such as Figure 1 As shown, the object 3D contour construction system may also include a memory 200 for storing data, such as image data and video data.

[0087] It should be noted that, Figure 1 The schematic diagram of the object 3D contour construction system shown is merely an example. The object 3D contour construction system and scenario described in this application embodiment are for the purpose of more clearly illustrating the technical solutions of this application embodiment and do not constitute a limitation on the technical solutions provided by this application embodiment. As those skilled in the art will know, with the evolution of object 3D contour construction systems and the emergence of new business scenarios, the technical solutions provided by the embodiments of this invention are also applicable to similar technical problems.

[0088] The following describes the method for constructing a three-dimensional contour of an object provided in the embodiments of this application. In the embodiments of this application, an electronic device is used as the execution subject. For the sake of simplicity and ease of description, the execution subject will be omitted in the subsequent method embodiments.

[0089] Reference Figure 2 , Figure 2 This is a flowchart illustrating a method for constructing a three-dimensional contour of an object according to an embodiment of this application. It should be noted that although the logical order is shown in the flowchart, in some cases, the steps shown or described may be performed in a different order than that shown here. The method for constructing a three-dimensional contour of an object includes steps 201 to 205, wherein:

[0090] 201. Obtain the target point cloud of the target loading space of the target object.

[0091] The target loading space refers to the space used to place objects, such as a carriage used to store goods.

[0092] The target loading space contains the target object. The target object refers to the object placed in the target loading space, such as cargo placed inside the vehicle compartment.

[0093] A point cloud is a massive collection of points representing the surface characteristics of a target. Point clouds obtained based on laser measurement principles include three-dimensional coordinates (XYZ) and laser reflection intensity. Point clouds obtained based on photogrammetry principles include three-dimensional coordinates (XYZ) and color information (RGB).

[0094] Target point cloud refers to the massive set of points representing the surface characteristics of objects inside the target loading space, obtained by collecting point cloud data from objects inside the target loading space using point cloud acquisition devices such as TOF cameras and LiDAR.

[0095] In some embodiments, the target point cloud of the target loading space specifically refers to the dataset of point clouds within the target loading space projected onto the supporting surface of the target loading space.

[0096] In step 201, there are multiple ways to obtain the target point cloud of the target loading space, including, for example:

[0097] (1) In practical applications, electronic devices can integrate point cloud acquisition devices (such as TOF cameras, lidar, etc.) in hardware. The point cloud acquisition device can be used to acquire point cloud images or lidar point clouds of the target loading space in real time, thereby obtaining the target point cloud of the target loading space.

[0098] (2) Alternatively, a point cloud acquisition device can be deployed above the target loading space. This device can acquire point cloud images or lidar point clouds of the target loading space in real time. The electronic equipment establishes a network connection with the point cloud acquisition device above the target loading space. Based on this network connection, the point cloud images or lidar point clouds of the target loading space acquired by the point cloud acquisition device above the target loading space can be obtained online, thus obtaining the target point cloud of the target loading space.

[0099] (3) The electronic device can also read the point cloud image or lidar point cloud of the target loading space obtained by the point cloud acquisition device (including the point cloud acquisition device integrated in the electronic device or the point cloud acquisition device above the target loading space) from the storage medium of the storage medium, and use it as the target point cloud of the target loading space.

[0100] (4) Read the point cloud image or lidar point cloud of the target loading space that has been pre-collected and stored inside the electronic device, and use it as the target point cloud of the target loading space.

[0101] The point cloud acquisition device can acquire point cloud images or lidar point clouds of the target loading space according to a preset acquisition method. For example, the acquisition height, acquisition direction, or acquisition distance can be set. The specific acquisition method can be adjusted according to the point cloud acquisition device itself, and is not limited here. For example, in order to acquire the target point cloud inside the carriage as accurately and comprehensively as possible, the point cloud acquisition device is deployed above the carriage door.

[0102] The method of obtaining the target point cloud in the target loading space is only an example and is not limited to this.

[0103] 202. Based on the target point cloud, determine the i-th side cross-sectional view of the target loading space.

[0104] The i-th side sectional view is perpendicular to the support surface of the target loading space and the reference surface of the target loading space. The i-th side sectional view includes the outline pixels of each occluder in the target object and the pixel where it is located.

[0105] The pixel in question is the pixel used to indicate the position of the point cloud acquisition device on the support surface of the target point cloud.

[0106] Among them, the reference plane is the side of the target loading space that is far away from the point cloud acquisition device, specifically the side opposite to the point cloud acquisition device.

[0107] In this embodiment, the target object is mainly divided into three parts: an obstruction, an obstructed object, and an unobstructed object. An obstruction is a part of the target object; it is the portion of the target object from which point cloud data can be collected by the point cloud acquisition device, and which obstructs the view of other parts of the target object. An obstructed object is also a part of the target object; it is the portion of the target object from which point cloud data cannot be collected by the point cloud acquisition device. The obstructed object cannot collect point cloud data normally because its view is blocked by a part of the target object (i.e., the obstruction). An unobstructed object is also a part of the target object; it is the portion of the target object from which point cloud data can be collected by the point cloud acquisition device, and which does not obstruct the view of other parts of the target object.

[0108] For example, firstly, the support surface of the target loading space is meshed to obtain an m-row * n-column mesh; the target point cloud is projected onto the i-th column of the support surface mesh. Then, based on the point cloud height value corresponding to the target projected point cloud in the i-th column of the support surface mesh, the target 3D coordinates of the i-th column of the support surface mesh are obtained. Finally, based on the target 3D coordinates of the i-th column of the support surface mesh, the i-th side sectional view of the target loading space is determined. The target 3D coordinates of the i-th column of the mesh indicate the position of the target support surface corresponding to the i-th column of the mesh and the point cloud height value of the target object at that position. The target support surface position refers to the coordinate position of the support surface corresponding to the i-th column of the mesh. The coordinate position of the support surface corresponding to the i-th column of the mesh is the same as the coordinate position of the support surface corresponding to the i-th side sectional view.

[0109] The process of "dividing the support surface of the target loading space into a grid to obtain an m-row * n-column grid of the support surface" will be described in detail in this paper (such as step 2031). To simplify the description, repeated parts will not be repeated in this paper. For details, please refer to the relevant sections.

[0110] like Figure 3 As shown, Figure 3 This is a schematic diagram of a target loading space in an embodiment of this application. For ease of understanding, in this embodiment of the application, the target loading space is a carriage, the point cloud acquisition device is located at the top of the carriage door, the supporting surface is the carriage floor, the reference surface is the carriage wall opposite to the carriage door, the i-th side sectional view is perpendicular to the supporting surface (i.e., the carriage floor) and perpendicular to the reference surface (i.e., the carriage wall opposite the carriage door), and the target object is the goods inside the carriage, to illustrate the method of constructing the three-dimensional contour of the object.

[0111] like Figure 4 As shown, Figure 4 yes Figure 3 The point cloud image of the carriage shown. Figure 4 The rectangle, divided into multiple grids, represents the floor of the train car. Figure 4 Midpoint cloud image is precisely Figure 3 The point cloud of the middle carriage is projected onto the supporting surface of the carriage floor. Figure 4 In the design, the floor of the train car is divided into m*n = 13*5 grids, where m represents the number of rows and n represents the number of columns. For example... Figure 4 As shown, assuming each grid column corresponds to a side section view of the carriage, then Figure 4 The n=5 columns of grid shown correspond to n=5 side cross-sections of the carriage.

[0112] like Figure 5 As shown, Figure 5 It shows Figure 4The i-th side sectional view of the carriage corresponding to the i-th column grid can be determined by the target three-dimensional coordinates of the i-th column grid in the target point cloud of the target loading space (i.e., the point cloud of the carriage). Figure 5 (a) and (b) in the figure represent two different side sectional views.

[0113] Depend on Figure 5 As can be seen, because the point cloud acquisition device's line of sight is blocked by a part of the target object (i.e., the occluded object), point cloud data cannot be acquired normally. Therefore, it may be impossible to construct a complete outline pixel of the target object. Thus, the i-th side cross-sectional view initially constructed based on the target point cloud only includes the outline pixels of the occluded part (i.e., the occluded object) and the outline pixels of the unoccluded part (i.e., the unoccluded object), and will lack the outline pixels of the occluded part (i.e., the occluded object). Therefore, in order to construct a complete outline of the target object, it is necessary to reconstruct the outline pixels of the occluded part (i.e., the occluded object) in order to construct a complete 3D outline of the target object.

[0114] 203. From the contour pixels of the target occluder in the i-th side cross-sectional view, obtain the target contour pixel that is closest to the reference plane.

[0115] In the i-th side sectional view, the occluded part of the target object refers to the part of the target object that is obscured in the i-th side sectional view.

[0116] A target occluder refers to an object that obscures a target object in the i-th side cross-sectional view. A target occluder in the i-th side cross-sectional view is a continuous pixel region with a point cloud height greater than 0. It is understood that the i-th side cross-sectional view can have multiple target objects and multiple target occluders. In this embodiment, we take an example where the i-th side cross-sectional view has only one target occluder.

[0117] The target contour pixel refers to the contour pixel that is closest to the reference plane among all the contour pixels of the target occluder, specifically the contour pixel that is closest to the reference plane in terms of vertical distance.

[0118] like Figure 5 As shown in (a) and (b), the contour pixel point with the closest vertical distance to the reference plane is the vertical distance to the line segment representing the reference plane in the side sectional view. Figure 5 As shown in (a), the contour pixel closest to the reference plane is pixel "a1", therefore pixel "a1" can be determined as the target contour pixel. Figure 5 As shown in (b), the contour pixel closest to the reference plane is pixel "b1", so pixel "b1" can be determined as the target contour pixel.

[0119] In step 203, there are multiple ways to obtain the target contour pixels. For example, step 203 may specifically include the following steps 2031 to 2033:

[0120] 2031. The support surface is divided into a grid to obtain an m-row * n-column grid of the support surface.

[0121] For example, such as Figure 4 As shown, after dividing the carriage floor into grids, a grid of m rows * n columns = 13 rows * 5 columns is obtained.

[0122] 2032. Obtain the target three-dimensional coordinates of the i-th column of the m-row * n-column grid.

[0123] Wherein, 1≤i≤n, the target three-dimensional coordinates include the point cloud height value corresponding to each grid in the i-th column of the grid and the support surface coordinate position corresponding to each grid, and the support surface coordinate position corresponding to the i-th column of the grid is the same as the support surface coordinate position corresponding to the i-th side sectional view.

[0124] Specifically, firstly, the target point cloud can be orthographically projected onto the support surface to obtain the target projected point cloud projected onto the i-th column of the support surface grid. Then, the point cloud height value corresponding to the target projected point cloud is obtained, which serves as the point cloud height value for each grid cell in the i-th column; and the support surface coordinate position corresponding to each grid cell in the i-th column is also obtained. Finally, the target 3D coordinates of the i-th column grid can be obtained from the point cloud height values ​​and the support surface coordinate positions of each grid cell in the i-th column.

[0125] For example, such as Figure 4 The point cloud height values ​​of the 13x5 grid on the floor of the carriage shown are shown in Table 1. The support surface coordinates corresponding to the i-th column of the grid in Table 1 are the same as those corresponding to the i-th side sectional view. In Table 1, grids without values ​​represent point cloud heights of 0; "max" indicates the maximum point cloud height value for that grid; and "min" indicates the minimum point cloud height value for that grid. Based on the number of rows and columns of each grid, the support surface coordinates corresponding to that grid can be determined. Based on the maximum and minimum point cloud height values ​​recorded for each grid, the point cloud height value corresponding to that grid can be determined. Therefore, the target 3D coordinates of the i-th column of the grid can be obtained.

[0126] Table 1

[0127]

[0128] 2033. Based on the target's three-dimensional coordinates, determine the j-th grid with a non-empty point cloud height value from the 1st to the mth grids in the i-th column.

[0129] The point cloud height value of the (j-1)th grid is either null or zero. The first grid in the i-th column is the grid closest to the reference plane among all grids in the i-th column.

[0130] For example, as shown in Table 1, in the first to m=13th grids of the first column, the jth grid is the 5th grid, where the point cloud height value of the previous grid (i.e., the (j-1)th grid) is null or zero and the point cloud height value is non-null.

[0131] 2034. Based on the support surface coordinate position corresponding to the j-th grid and the point cloud height value corresponding to the j-th grid, determine the target contour pixel from each contour pixel of the target occluder.

[0132] For example, firstly, the coordinate positions of the supporting surfaces corresponding to each contour pixel of the target occluder and the point cloud height values ​​corresponding to each contour pixel of the target occluder are obtained. Then, from the contour pixels of the target occluder, the pixels whose corresponding supporting surface coordinate positions are the same as those of the j-th grid and whose corresponding point cloud height values ​​are the same as those of the j-th grid are selected as the target contour pixels.

[0133] like Figure 5 As shown, the coordinates of the support surface corresponding to each contour pixel of the target occluder are used to indicate the coordinates of the orthographic projection of each contour pixel of the target occluder onto the support surface. The point cloud height value corresponding to each contour pixel of the target occluder is used to indicate the point cloud height value of the target object at the support surface coordinates corresponding to each contour pixel of the target occluder.

[0134] The support surface is divided into m rows and n columns. From the first to the mth grid of the i-th column, the j-th grid is determined where the point cloud height value of the previous grid (i.e., the (j-1)-th grid) is null or zero and the point cloud height value is non-null. Based on the support surface coordinate position corresponding to the j-th grid and the point cloud height value corresponding to the j-th grid, the target contour pixel is determined. Since it is only necessary to traverse the first to the mth grid of the i-th column to accurately determine the target contour pixel, the determination speed of the target contour pixel is improved to a certain extent, thereby improving the construction speed of the object's three-dimensional contour.

[0135] 204. Based on the target contour pixels and the pixel at the location, determine the position of the support surface of the target occluded object in the i-th side cross-sectional view and the occlusion fill value of the target occluded object.

[0136] The occlusion fill value refers to the point cloud height value used to fill the occluded object in the i-th side sectional view, specifically the height of the outline pixels of the occluded object in the i-th side sectional view.

[0137] The location of the target object on the supporting surface refers to its position in the i-th side sectional view.

[0138] like Figure 6 As shown in the embodiments of this application, the line connecting the target intersection point and the target contour pixel is a second line segment (e.g., Figure 6 The vertical line connecting the center line segment BD, the target intersection point, and the support surface is the first vertical line segment (e.g., Figure 6 The vertical line connecting the midline segment DD', the target contour pixel, and the support surface is the second vertical line segment (e.g., Figure 6 The projection of the middle segment BB' and the second segment onto the supporting surface is the second projection segment (e.g., Figure 6 (Middle line segment B'D'). To more completely construct the three-dimensional contour of the object, in this embodiment, the portion enclosed by the second line segment, the second projected line segment, the first vertical line segment, and the second vertical line segment is regarded as the target occluded object and filled in. The target intersection point is the intersection between the extension of the ray originating from the current pixel and passing through the target contour pixel, and the re-enactment of the occluded target object after occlusion.

[0139] At this point, for example, step 204 may specifically include the following steps 2041 to 2045:

[0140] 2041. Determine the first line segment formed by the intersection of the extension of the target ray and the support surface and the target contour pixel.

[0141] The target ray is a ray that originates at the pixel and passes through the target contour pixel.

[0142] The first line segment refers to the line segment formed by the intersection of the extension of the target ray and the supporting surface, and the target contour pixel.

[0143] like Figure 6 As shown, Figure 6 This is a schematic diagram illustrating the determination of the occlusion fill value of the target occluded in the i-th side sectional view. The pixel is located at point A in the i-th side sectional view, and the target outline pixel is located at point B in the i-th side sectional view. The target ray formed by the pixel A and the target outline pixel B is: target ray A pointing from point A to point B.

[0144] The intersection point between the extension of the target ray A and the support surface is point C. The first line segment formed by the intersection point C of the extension of the target ray A and the support surface and the target contour pixel point B is line segment BC.

[0145] 2042. Determine the target intersection point between the extended line and the target object after it has been obscured.

[0146] The reproduced object can refer to the target object or the boundary (such as a reference plane or support plane) of the target loading space that appears behind the occluded object in the line of sight of the point cloud acquisition device.

[0147] The target intersection point refers to the intersection between the extension of the target ray and the object that was originally obscured and its reappearance after being obscured.

[0148] like Figure 6 As shown, the point where the extension of the target ray intersects with the target object in the object after it has been obscured is point D.

[0149] 2043. Determine the second line segment formed by the target intersection point and the target contour pixels.

[0150] like Figure 6 As shown, the target intersection point is point D. Therefore, it can be determined that the second line segment formed by the target intersection point D and the target contour pixel point B is line segment BD.

[0151] 2044. Determine the location of the supporting surface of the target obscured object in the i-th side sectional view based on the second line segment.

[0152] For example, such as Figure 6 As shown, the coordinate position of the second line segment projected onto the support surface is regarded as the position of the support surface where the target is obscured.

[0153] 2045. Based on the first projection length of the first line segment on the support surface and the second projection length of the second line segment on the support surface, determine the occlusion fill value of the target occluded object in the i-th side sectional view.

[0154] The first projection length refers to the projection length of the first line segment on the support surface.

[0155] The second projected length refers to the projected length of the second line segment on the supporting surface.

[0156] For example, such as Figure 6 As shown, the projection of the first line segment onto the supporting surface is line segment B'C', and the length of the first projection is the length of line segment B'C'. The projection of the second line segment onto the supporting surface is line segment B'D', and the length of the second projection is the length of line segment B'D'.

[0157] To improve filling accuracy and avoid large errors in filling, by Figure 6It can be seen that when the distance between the occluded object and the reproduced object is small, it proves that there is a high probability that an object exists between them, and a linear filling method can be used for filling. When the distance between the occluded object and the reproduced object is large, it proves that there may not be an object between them, and a fixed value filling method can be used for filling to reduce the filling value, thereby avoiding the problem of using a large filling value to fill areas where there is no object, which would lead to a large error in the reconstruction of the object's 3D contour. Therefore, in the embodiments of this application, the distance between the occluded object and the reproduced object is determined first, and then the filling method is determined.

[0158] At this point, step 2044 may specifically include the following steps A1 to A3:

[0159] A1. Obtain the ratio between the second projection length and the first projection length.

[0160] Specifically, first, the second projection length and the first projection length are calculated. Then, the ratio between the second projection length and the first projection length is obtained. When the ratio is greater than a preset threshold, such as 0.5, it indicates that the distance between the occluding object and the reproduced object is large, and there may not necessarily be an object between them. When the ratio is less than or equal to the preset threshold, such as 0.5, it indicates that the distance between the occluding object and the reproduced object is small, and there is a high probability that an object exists between them.

[0161] A2. When the ratio is greater than a preset threshold, the point cloud height value of the target intersection point is used as the occlusion filling value.

[0162] The point cloud height value of the target intersection point refers to the point cloud height value corresponding to the target intersection point.

[0163] When the ratio between the second projection length and the first projection length is greater than a preset threshold, it indicates that the distance between the occluder and the reproduced object is large, and there may not necessarily be an object between them. In this case, the point cloud height value of the target intersection point can be used as the occlusion fill value. The advantages of using the point cloud height value of the target intersection point as the occlusion fill value are as follows: Firstly, when the occluded object is between the reproduced object and the occluder, the point cloud height value of the target intersection point is the point cloud height value of the reproduced object, and the point cloud height value of the target contour pixel is the point cloud height value of the occluder; therefore, using the point cloud height value of the target intersection point or the point cloud height value of the target contour pixel as the fill value is more appropriate. Secondly, when the ratio between the second projection length and the first projection length is greater than a preset threshold, it indicates that the distance between the occluder and the reproduced object is large, and there may not necessarily be an object between them, and the point cloud height value of the target intersection point is relatively small; therefore, using the point cloud height value of the target intersection point as the occlusion fill value can avoid the problem of large errors in the constructed 3D contour caused by using a large fill value.

[0164] A3. When the ratio is less than or equal to a preset threshold, determine the linear value between the point cloud height value of the target contour pixel and the point cloud height value of the target intersection point, and use it as the occlusion filling value.

[0165] When the ratio between the second projection length and the first projection length is less than or equal to a preset threshold, it indicates that the distance between the occluder and the reproduced object is small, and there is a high probability that an object exists between them. In this case, the linear value between the point cloud height of the target contour pixel and the point cloud height of the target intersection point can be determined as the occlusion fill value. The advantage of using the linear value between the point cloud height of the target contour pixel and the point cloud height of the target intersection point as the occlusion fill value is as follows: Firstly, when the occluded object is between the reproduced object and the occluder, the point cloud height of the target intersection point is the point cloud height of the reproduced object, and the point cloud height of the target contour pixel is the point cloud height of the occluder; therefore, using the point cloud height of the target intersection point or the point cloud height of the target contour pixel as the fill value is more appropriate. Secondly, when the ratio between the second projection length and the first projection length is greater than a preset threshold, it proves that the distance between the occluder and the reproduced object is small, and there is a high probability that an object exists between them. Therefore, using the linear value between the point cloud height value of the target contour pixel and the point cloud height value of the target intersection point as the occlusion filling value can improve the accuracy of the construction of the object's three-dimensional contour.

[0166] As shown in Table 1 above, each grid records the maximum and minimum values ​​of the point cloud height, that is, the maximum and minimum values ​​of the point cloud height of the target contour pixels and the point cloud height of the target intersection are recorded. Furthermore, to reflect the change in linear values ​​and further improve the accuracy of constructing the 3D contour of the object, the linear value between the point cloud height of the target contour pixels and the point cloud height of the target intersection can be determined using the maximum value of the point cloud height of the target contour pixels and the minimum value of the point cloud height of the target intersection as the occlusion fill value.

[0167] 205. Based on the location of the supporting surface and the occlusion fill value, fill the outline of the target object corresponding to the target point cloud to obtain the target three-dimensional outline of the target object.

[0168] Among them, the target object contour refers to the three-dimensional contour of the target object obtained by directly constructing it based on the target point cloud.

[0169] The target 3D contour refers to the 3D contour of the target object obtained after filling the target object's outline.

[0170] In step 205, there are several ways to fill the outline of the target object corresponding to the target point cloud. For example, these include:

[0171] (1) Perform contour filling on the occluded target. In this case, step 205 may specifically include steps 2051A to 2052A:

[0172] 2051A. Construct the three-dimensional contour of the target object based on the target point cloud to obtain the target object contour.

[0173] To facilitate understanding, let's take the example of the target object's outline being the outline in the i-th side sectional view to illustrate how the target's 3D outline is determined. For instance, constructing the 3D outline of the target object based on the target point cloud yields the following result: Figure 6 The outline of the target object is shown.

[0174] 2052A. Based on the occlusion fill value of the occluded object in the i-th side sectional view and the position of the occluded object on the support surface in the i-th side sectional view, fill the outline of the target object to obtain the target three-dimensional outline of the target object.

[0175] like Figure 6 As shown, firstly, the occlusion fill value of the occluded object in the i-th side sectional view and the position of the occluded object on the supporting surface in the i-th side sectional view are used to determine the fill contour pixels of the occluded object in the i-th side sectional view. Then, the fill contour pixels of the occluded object in the i-th side sectional view are filled to obtain the target 3D contour of the target object in the i-th side sectional view. Similarly, the filling is performed for the side sectional views i = 1 to n to finally obtain the target 3D contour of the target object.

[0176] (2) Perform contour filling on the occluded target and on the boundary of the target loading space. In this case, step 205 may specifically include steps 2051B to 2053B:

[0177] 2051B. Construct the three-dimensional contour of the target object based on the target point cloud to obtain the target object contour.

[0178] Step 2051B is implemented similarly to step 2051A. For details, please refer to the relevant description of step 2051A. It will not be repeated here.

[0179] 2052B. Based on the contour pixels of the target object, determine the boundary fill value of the reference plane in the i-th side sectional view.

[0180] For example, step 2052B may specifically include: determining the boundary intersection between the extension line of the target ray and the boundary of the target loading space; and obtaining the point cloud height value of the boundary intersection as the boundary fill value of the reference plane in the i-th side sectional view.

[0181] The target ray is a ray that originates at the specified pixel and passes through the target contour pixel. The boundary of the target loading space refers to the reference plane or support plane of the target loading space.

[0182] For example, such as Figure 5 As shown in Figure (a), the intersection point between the extension of the target ray and the boundary of the target loading space (as shown in Figure (a), where the boundary of the target loading space is the support surface) is point E. Therefore, the point cloud height value of the boundary intersection point E can be used as the boundary fill value of the reference plane in the i-th side sectional view.

[0183] 2053B. Based on the occlusion fill value of the occluded object in the i-th side sectional view, the position of the supporting surface of the occluded object in the i-th side sectional view, and the boundary fill value of the reference surface in the i-th side sectional view, the outline of the target object is filled to obtain the target three-dimensional outline of the target object.

[0184] In step 2053B, the outline of the occluded target can be filled first, and then the outline of the target loading space can be filled. In this case, step 2053B may specifically include the following steps B1 to B2:

[0185] B1. Based on the boundary fill value of the reference plane in the i-th side sectional view, fill the target object contour corresponding to the target point cloud to obtain the preliminary three-dimensional contour of the target object.

[0186] The preliminary three-dimensional contour refers to the three-dimensional contour of the target object obtained by filling the boundary of the target loading space based on the contour of the target object.

[0187] For example, step B1 may specifically include: First, obtaining the coordinate position of the support surface projected from the reference surface in the i-th side sectional view. Then, determining the fill contour pixels of the reference surface in the i-th side sectional view based on the support surface coordinate position and boundary fill value of the reference surface. Finally, filling the fill contour pixels of the reference surface in the i-th side sectional view to obtain the preliminary three-dimensional contour of the target object in the i-th side sectional view. Similarly, filling is performed on the side sectional views i = 1 to n to finally obtain the preliminary three-dimensional contour of the target object.

[0188] B2. Based on the position of the supporting surface of the occluded object in the i-th side sectional view and the occlusion fill value, the preliminary three-dimensional contour is filled to obtain the target three-dimensional contour of the target object.

[0189] Step B2 is implemented similarly to step 2052A. For details, please refer to the relevant description of step 2052A. It will not be repeated here.

[0190] Alternatively, in 2053B, the boundary of the target loading space can be outlined first, and then the outline of the occluded object can be outlined. In this case, step 2053B may specifically include the following steps C1 to C2:

[0191] C1. Based on the position of the supporting surface of the occluded object in the i-th side cross-sectional view and the occlusion fill value, fill the outline of the target object corresponding to the target point cloud to obtain the middle three-dimensional outline of the target object.

[0192] Among them, the intermediate three-dimensional contour refers to the three-dimensional contour of the target object obtained by filling the contour of the occluded object on the basis of the target object contour.

[0193] Step C1 is similar to step 2052A. For details, please refer to the relevant description of step 2052A. It will not be repeated here.

[0194] C2. Based on the boundary fill value of the reference plane in the i-th side sectional view, fill the intermediate three-dimensional contour to obtain the target three-dimensional contour of the target object.

[0195] Step C2 is similar to step B1; please refer to the relevant explanation of step B1 for details, which will not be repeated here.

[0196] As can be seen from the above, firstly, by filling the outline of the target object according to the occlusion fill value of the occluded object in the i-th side sectional view, the outline of the occluded object can be filled, thereby avoiding the problem of large construction errors in the three-dimensional outline of the object. Secondly, by filling the outline of the target object according to the boundary fill value of the reference plane in the i-th side sectional view, the boundary of the target loading space can be filled, thereby avoiding the problem of missing boundary outlines and reducing the construction error of the three-dimensional outline of the object to a certain extent.

[0197] As can be seen from the above, in this embodiment, the i-th side cross-sectional view of the target loading space is determined based on the target point cloud of the target loading space; from the contour pixels of the occluded object in the i-th side cross-sectional view, the target contour pixel closest to the reference plane of the target loading space is obtained; then, based on the target contour pixel and the pixel of the point cloud acquisition device of the target point cloud, the position of the supporting surface of the occluded object in the i-th side cross-sectional view and the occlusion filling value are determined, which are used to fill the contour of the target object corresponding to the target point cloud to obtain the target three-dimensional contour of the target object; since the target contour pixel and the pixel of the target point cloud acquisition device can fully reflect the positional relationship between the occluded object and the line of sight of the point cloud acquisition device, the position of the supporting surface of the occluded object can be accurately reflected; therefore, by combining the target contour pixel and the pixel of the target point cloud to determine the position of the supporting surface of the occluded object and the occlusion filling value, and filling the contour of the target object, the original three-dimensional contour of the object can be restored to a certain extent. It can be seen that even when the target object point cloud data is incomplete, this embodiment can still completely and accurately construct the three-dimensional contour of the object.

[0198] Furthermore, after constructing the target three-dimensional contour of the target object, volume calculation can be performed based on the target three-dimensional contour. That is, the method for constructing the three-dimensional contour of the object can further include: determining the volume of the target object based on the target three-dimensional contour.

[0199] The volume of the target object can be calculated based on existing volume calculation methods. For example, the volume of the target object can be calculated by integrating its three-dimensional contour. No specific restrictions are placed on the specific volume calculation method used here.

[0200] Furthermore, to facilitate the management of the target loading space, after determining the volume of the target object, the loading rate of the target loading space can also be determined. For example, after determining the volume of goods in the carriage, the loading rate of the carriage can be further calculated to facilitate the scheduling and management of transport vehicles, thereby reducing the operating costs of transport vehicles to a certain extent. That is, the method for constructing the three-dimensional contour of the object can further include: obtaining the capacity of the target loading space; and determining the loading rate of the target loading space based on the capacity of the target loading space and the volume of the target object.

[0201] For example, when the volume of the target object is determined to be 4m³ 2 The target loading space has a capacity of 8m³. 2 At that time, the loading rate of the target loading space can be determined to be 4m. 2 / 8m 2 *100% = 50%.

[0202] To better implement the object three-dimensional contour construction method in the embodiments of this application, based on the object three-dimensional contour construction method, the embodiments of this application also provide an object three-dimensional contour construction device, such as... Figure 7 The diagram shown is a structural schematic of one embodiment of the object three-dimensional contour construction device in this application. The object three-dimensional contour construction device 700 includes:

[0203] The first acquisition unit 701 is used to acquire the target point cloud of the target loading space, wherein a target object is placed in the target loading space.

[0204] The determining unit 702 is used to determine the i-th side sectional view of the target loading space based on the target point cloud. The i-th side sectional view is perpendicular to the support surface of the target loading space and perpendicular to the reference surface of the target loading space. The i-th side sectional view includes the contour pixels of each occluder in the target object and the pixel of the point cloud acquisition device of the target point cloud.

[0205] The second acquisition unit 703 is used to acquire the target contour pixel that is closest to the reference plane from each contour pixel of the target occluder in the i-th side cross-sectional view.

[0206] The construction unit 704 is used to determine the position of the support surface of the target occluded object in the i-th side cross-sectional view and the occlusion fill value of the target occluded object based on the target contour pixels and the pixel where it is located;

[0207] The construction unit 704 is further configured to fill the target object contour corresponding to the target point cloud based on the position of the supporting surface and the occlusion filling value, so as to obtain the target three-dimensional contour of the target object.

[0208] In some embodiments of this application, the building unit 704 is specifically used for:

[0209] Determine the first line segment formed by the intersection of the extension of the target ray and the support surface and the target contour pixel, wherein the target ray is a ray that starts from the pixel and passes through the target contour pixel;

[0210] Determine the target intersection point between the extended line and the target object after it has been obscured;

[0211] Determine the second line segment formed by the target intersection point and the target contour pixels;

[0212] The position of the supporting surface of the target obscured object in the i-th side sectional view is determined based on the second line segment.

[0213] Based on the first projection length of the first line segment on the support surface and the second projection length of the second line segment on the support surface, the occlusion fill value of the target occluded object in the i-th side sectional view is determined.

[0214] In some embodiments of this application, the building unit 704 is specifically used for:

[0215] Obtain the ratio between the second projection length and the first projection length;

[0216] When the ratio is greater than a preset threshold, the point cloud height value of the target intersection is used as the occlusion filling value.

[0217] In some embodiments of this application, after the step of obtaining the ratio between the second projection length and the first projection length, the construction unit 704 is specifically used for:

[0218] When the ratio is less than or equal to a preset threshold, a linear value between the point cloud height value of the target contour pixel and the point cloud height value of the target intersection is determined as the occlusion fill value.

[0219] In some embodiments of this application, the building unit 704 is specifically used for:

[0220] Based on the outline pixels of the target object, determine the boundary fill value of the reference plane in the i-th side sectional view;

[0221] Based on the boundary fill value of the reference plane in the i-th side sectional view, the outline of the target object corresponding to the target point cloud is filled to obtain the preliminary three-dimensional outline of the target object.

[0222] Based on the position of the supporting surface of the occluded object in the i-th side sectional view and the occlusion fill value, the preliminary three-dimensional contour is filled to obtain the target three-dimensional contour of the target object.

[0223] In some embodiments of this application, the second acquisition unit 703 is specifically used for:

[0224] The support surface is divided into a grid to obtain an m-row * n-column grid of the support surface;

[0225] Obtain the target 3D coordinates of the i-th column of the m-row*n-column grid, where 1≤i≤n. The target 3D coordinates include the point cloud height value and the support surface coordinate position of each grid in the i-th column. The support surface coordinate position of the i-th column is the same as the support surface coordinate position of the i-th side sectional view.

[0226] Based on the target's three-dimensional coordinates, from the first to the mth grids in the i-th column, determine the j-th grid whose point cloud height value is not null, where the (j-1)-th grid's point cloud height value is null or zero;

[0227] Based on the support surface coordinates corresponding to the j-th grid and the point cloud height value corresponding to the j-th grid, the target contour pixels are determined from the contour pixels of the target occluder.

[0228] In some embodiments of this application, the object three-dimensional contour construction device 700 further includes a calculation unit (not shown in the figure), which is specifically used for:

[0229] Based on the target's three-dimensional contour, the volume of the target object is determined.

[0230] In some embodiments of this application, the computing unit is specifically used for:

[0231] Obtain the capacity of the target loading space;

[0232] The loading rate of the target loading space is determined based on the capacity of the target loading space and the volume of the target object.

[0233] In practice, each of the above units can be implemented as an independent entity or can be arbitrarily combined to be implemented as the same or several entities. For the specific implementation of each of the above units, please refer to the previous method embodiments, which will not be repeated here.

[0234] Because the object's three-dimensional contour construction device can perform the functions described in this application, Figures 1 to 6 Corresponding to the steps in the object 3D contour construction method in any embodiment, this application can be implemented as described above. Figures 1 to 6 For details on the beneficial effects that the object 3D contour construction method can achieve in any embodiment, please refer to the preceding description, which will not be repeated here.

[0235] Furthermore, to better implement the object 3D contour construction method in the embodiments of this application, based on the object 3D contour construction method, the embodiments of this application also provide an electronic device, see below. Figure 8 , Figure 8 This illustration shows a structural diagram of an electronic device according to an embodiment of this application. Specifically, the electronic device provided in this embodiment includes a processor 801, which executes a computer program stored in a memory 802 to implement, for example... Figures 1 to 6 Corresponding to each step of the object 3D contour construction method in any embodiment; or, when the processor 801 executes the computer program stored in the memory 802, it implements as follows: Figure 7 The functions of each unit in the corresponding embodiment.

[0236] For example, a computer program may be divided into one or more modules / units, one or more of which are stored in memory 802 and executed by processor 801 to complete the embodiments of this application. One or more modules / units may be a series of computer program instruction segments capable of performing a specific function, which describe the execution process of the computer program in a computer device.

[0237] The electronic device may include, but is not limited to, processor 801 and memory 802. Those skilled in the art will understand that the illustrations are merely examples of an electronic device and do not constitute a limitation on the electronic device. It may include more or fewer components than illustrated, or combine certain components, or different components. For example, the electronic device may also include input / output devices, network access devices, buses, etc., with processor 801, memory 802, input / output devices, and network access devices connected via a bus.

[0238] The processor 801 can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor can be a microprocessor or any conventional processor. The processor is the control center of the electronic device, connecting various parts of the electronic device through various interfaces and lines.

[0239] The memory 802 can be used to store computer programs and / or modules. The processor 801 implements various functions of the computer device by running or executing the computer programs and / or modules stored in the memory 802 and by calling the data stored in the memory 802. The memory 802 may mainly include a program storage area and a data storage area. The program storage area may store the operating system, application programs required for at least one function (such as sound playback function, image playback function, etc.), etc.; the data storage area may store data created according to the use of the electronic device (such as audio data, video data, etc.). In addition, the memory may include high-speed random access memory, and may also include non-volatile memory, such as hard disk, RAM, plug-in hard disk, smart media card (SMC), secure digital (SD) card, flash card, at least one disk storage device, flash memory device, or other volatile solid-state storage device.

[0240] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working process of the above-described object 3D contour construction device, electronic device, and its corresponding units can be referred to as follows: Figures 1 to 6 The description of the method for constructing the three-dimensional contour of an object in any embodiment will not be repeated here.

[0241] Those skilled in the art will understand that all or part of the steps in the various methods of the above embodiments can be performed by instructions, or by instructions controlling related hardware. These instructions can be stored in a computer-readable storage medium and loaded and executed by a processor.

[0242] Therefore, embodiments of this application provide a computer-readable storage medium storing a plurality of instructions that can be loaded by a processor to execute the present application. Figures 1 to 6 For the steps in the object 3D contour construction method corresponding to any embodiment, please refer to the following for specific operations: Figures 1 to 6 The description of the method for constructing the three-dimensional contour of the object in any embodiment will not be repeated here.

[0243] The computer-readable storage medium may include: read-only memory (ROM), random access memory (RAM), disk or optical disk, etc.

[0244] Because of the instructions stored in the computer-readable storage medium, the present application can be executed as described above. Figures 1 to 6 Corresponding to the steps in the object 3D contour construction method in any embodiment, this application can be implemented as described above. Figures 1 to 6For details on the beneficial effects that the object 3D contour construction method can achieve in any embodiment, please refer to the preceding description, which will not be repeated here.

[0245] The foregoing has provided a detailed description of a method, apparatus, electronic device, and computer-readable storage medium for constructing a three-dimensional contour of an object, as provided in the embodiments of this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the embodiments above are only for the purpose of helping to understand the method and core ideas of this application. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this application. Therefore, the content of this specification should not be construed as a limitation of this application.

Claims

1. A method of building a three-dimensional profile of an object, characterized by, The method includes: Obtain the target point cloud of the target loading space of the target object; Based on the target point cloud, an i-th side sectional view of the target loading space is determined. The i-th side sectional view is perpendicular to the support surface of the target loading space and perpendicular to the reference surface of the target loading space. The i-th side sectional view includes the contour pixels of each occluder in the target object and the pixel points of the point cloud acquisition device of the target point cloud. The reference surface is the side of the target loading space that is far away from the point cloud acquisition device of the target point cloud. From the contour pixels of the target occluder in the i-th side cross-sectional view, obtain the target contour pixel that is closest to the reference plane; Based on the target contour pixels and the pixel at the location, determine the position of the supporting surface of the occluded object in the i-th side sectional view and the occlusion fill value of the occluded object; Based on the location of the supporting surface and the occlusion fill value, the outline of the target object corresponding to the target point cloud is filled to obtain the target three-dimensional outline of the target object. The step of determining the position of the supporting surface of the occluded object in the i-th side cross-sectional view and the occlusion fill value of the occluded object based on the target contour pixels and the pixel at the location includes: Determine the first line segment formed by the intersection of the extension of the target ray and the support surface and the target contour pixel, wherein the target ray is a ray that starts at the pixel and passes through the target contour pixel; Determine the target intersection point between the extended line and the target object after it has been obscured; Determine the second line segment formed by the target intersection point and the target contour pixels; The position of the supporting surface of the target obscured object in the i-th side sectional view is determined based on the second line segment. Based on the first projection length of the first line segment on the support surface and the second projection length of the second line segment on the support surface, the occlusion fill value of the target occluded object in the i-th side sectional view is determined.

2. The object three-dimensional profile building method according to claim 1, wherein, The step of determining the occlusion fill value of the target occluded object in the i-th side sectional view based on the first projection length of the first line segment on the support surface and the second projection length of the second line segment on the support surface includes: Obtain the ratio between the second projection length and the first projection length; When the ratio is greater than a preset threshold, the point cloud height value of the target intersection is used as the occlusion filling value.

3. The method of claim 2, wherein, After obtaining the ratio between the second projection length and the first projection length, the method further includes: When the ratio is less than or equal to a preset threshold, a linear value between the point cloud height value of the target contour pixel and the point cloud height value of the target intersection is determined as the occlusion fill value.

4. The method of claim 1, wherein The process of filling the target object contour corresponding to the target point cloud based on the location of the supporting surface and the occlusion fill value to obtain the target three-dimensional contour of the target object includes: Based on the outline pixels of the target object, determine the boundary fill value of the reference plane in the i-th side sectional view; filling the target object profile corresponding to the target point cloud based on the boundary filling value of the reference face in the i-th side sectional view, to obtain a preliminary three-dimensional profile of the target object; filling the preliminary three-dimensional profile based on the located support surface position of the target occluded object in the i-th side sectional view and the occlusion filling value, to obtain a target three-dimensional profile of the target object.

5. The method of claim 1, wherein, the target profile pixel point closest to the reference face is obtained from each profile pixel point of the target occluded object in the i-th side sectional view, including: the support surface is meshed to obtain m rows and n columns of grids of the support surface; target three-dimensional coordinates of the i-th column of grids of the m rows and n columns of grids are obtained, where 1≤i≤n, the target three-dimensional coordinates include point cloud height values corresponding to each grid in the i-th column of grids and support surface coordinate positions corresponding to each grid, and the support surface coordinate positions corresponding to the i-th column of grids are the same as the support surface coordinate positions corresponding to the i-th side sectional view; based on the target three-dimensional coordinates, the j-th grid with a non-empty point cloud height value is determined from the 1st to the m-th grid of the i-th column of grids, where the point cloud height value of the j-1th grid is empty or zero; based on the support surface coordinate position corresponding to the j-th grid and the point cloud height value corresponding to the j-th grid, the target profile pixel point is determined from each profile pixel point of the target occluded object.

6. The method according to any one of claims 1 to 5, wherein The method further includes: based on the target three-dimensional profile, the volume of the target object is determined.

7. The method of claim 6, wherein, The method further includes: the capacity of the target loading space is obtained; based on the capacity of the target loading space and the volume of the target object, the loading rate of the target loading space is determined.

8. A device for constructing a three-dimensional contour of an object, characterized in that, The object three-dimensional profile construction device includes: a first obtaining unit configured to obtain a target point cloud of a target loading space, the target loading space containing a target object; a determining unit configured to determine an i-th side sectional view of the target loading space based on the target point cloud, the i-th side sectional view being perpendicular to a support surface of the target loading space and perpendicular to a reference face of the target loading space, the i-th side sectional view containing each profile pixel point of an occluded object in the target object and a pixel point of a point cloud acquisition device of the target point cloud, and the reference face being a face of the target loading space that is farthest from the point cloud acquisition device of the target point cloud; a second obtaining unit configured to obtain a target profile pixel point closest to the reference face from each profile pixel point of the target occluded object in the i-th side sectional view; a construction unit configured to determine a located support surface position of a target occluded object in the i-th side sectional view and an occlusion filling value of the target occluded object based on the target profile pixel point and the pixel point; the construction unit is further configured to fill a target object profile corresponding to the target point cloud based on the located support surface position and the occlusion filling value, to obtain a target three-dimensional profile of the target object; the construction unit is further configured to determining a first line segment formed by the intersection point between the extension line of the target ray and the support surface and the target contour pixel point, wherein the target ray is a ray with the starting point being the pixel point and passing through the target contour pixel point; determining a target intersection point between the extension line and the reappeared object after being occluded by the target occluded object; determining a second line segment formed by the target intersection point and the target contour pixel point; determining the support surface position of the target occluded object in the i-th side sectional view based on the second line segment; determining the occlusion filling value of the target occluded object in the i-th side sectional view based on the first projection length of the first line segment on the support surface and the second projection length of the second line segment on the support surface.

9. An electronic device, comprising: The object three-dimensional contour construction method comprises a processor and a memory, the memory stores a computer program, and the processor invokes the computer program in the memory to execute the object three-dimensional contour construction method according to any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that, The computer program is stored on the memory and is loaded by the processor to execute the steps in the object three-dimensional contour construction method according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Lane line detection method and device, computer equipment and storage medium

    CN109902637A

  • Method and device for removing interfering figure from image, and storage medium

    CN113240690A