Point cloud annotation method, device, equipment, storage medium and vehicle

By dividing the three-dimensional space of the point cloud file into multiple areas and determining the annotation area based on the target enclosure box, the inefficiency problem of the increase in the number of three-dimensional points in the point cloud file is solved, and the effect of improving the annotation efficiency is achieved.

CN119741309APending Publication Date: 2025-04-01BEIJING CO WHEELS TECH CO LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202311246218.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-09-25
Publication Date
2025-04-01

AI Technical Summary

Technical Problem

In the prior art, the increase in the number of three-dimensional points in point cloud files leads to low labeling efficiency and consumes a large amount of memory of computing resources.

Method used

The three-dimensional space corresponding to the point cloud file is divided into a plurality of first regions, and at least one second region is determined based on the position of the target enclosure box, in which three-dimensional points of the target type are obtained and marked.

Benefits of technology

The range of three-dimensional points that need to be calculated is narrowed, the amount of calculation of three-dimensional points is reduced, and the labeling efficiency of point cloud files is improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119741309A_ABST
    Figure CN119741309A_ABST
Patent Text Reader

Abstract

The present application discloses a method, device, equipment, storage medium and vehicle for annotating a point cloud. The method comprises: dividing the three-dimensional space corresponding to the point cloud file into a plurality of first regions, wherein the point cloud file comprises a plurality of three-dimensional points; receiving a target input, wherein the target input is to set a target bounding box in the three-dimensional space, and the target bounding box is used to enclose the three-dimensional points of the target type in the plurality of three-dimensional points; determining at least one second region based on the position of the target bounding box, wherein the second region is any one of the plurality of first regions, and each second region comprises at least part of the target bounding box; obtaining the three-dimensional points of the target type in at least one second region, and annotating the three-dimensional points of the target type. According to the embodiment of the present application, the annotation efficiency of the point cloud can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application belongs to the field of autonomous driving technology, and in particular, relates to a point cloud annotation method, device, equipment, storage medium and vehicle. Background Art

[0002] Point cloud files are data files composed of a large number of 3D point data, including the coordinate data and other attribute data of the 3D points in 3D space. Point cloud files are used to represent the shape and structure of 3D objects, scenes or environments. These points can be obtained by devices such as laser scanners, depth sensors or photogrammetry technology.

[0003] After collecting a large number of 3D points, some algorithms and techniques are usually used to identify and annotate the semantics of the 3D points in the point cloud file. Annotating the 3D points in the point cloud file can help understand the scene structure, identify objects, and achieve tasks such as target detection and scene segmentation. However, as the number of 3D points collected in the point cloud file increases, processing and annotating these 3D points requires a lot of computing resources and memory, which leads to low annotation efficiency. Summary of the invention

[0004] The embodiments of the present application provide a point cloud annotation method, device, equipment, storage medium and vehicle, which can solve the problem of low annotation efficiency of existing point cloud files.

[0005] In a first aspect, an embodiment of the present application provides a point cloud annotation method, the method comprising:

[0006] Dividing a three-dimensional space corresponding to a point cloud file into a plurality of first regions, wherein the point cloud file includes a plurality of three-dimensional points;

[0007] receiving a target input, wherein the target input is setting a target bounding box in the three-dimensional space, and the target bounding box is used to enclose three-dimensional points of the target type among the multiple three-dimensional points;

[0008] Determine at least one second area based on the position of the target bounding box, wherein the second area is any one of the plurality of first areas, and each of the second areas includes at least a portion of the target bounding box;

[0009] Acquire three-dimensional points of the target type in the at least one second area, and mark the three-dimensional points of the target type.

[0010] In some embodiments, dividing the three-dimensional space corresponding to the point cloud file into a plurality of first areas includes:

[0011] Projecting a plurality of three-dimensional points in the point cloud file onto a target plane to obtain a projection image, wherein the projection image includes a plurality of projection points, the three-dimensional points correspond to the projection points one by one, and the target plane is a two-dimensional plane;

[0012] dividing the projection image into a plurality of sub-images on the target plane;

[0013] The three-dimensional space where the point cloud file is located is divided into a plurality of first regions based on the plurality of sub-images, wherein the sub-images correspond to the first regions one by one.

[0014] In some embodiments, dividing the projection image into a plurality of sub-images on the target plane comprises:

[0015] Traversing a plurality of projection points in the projection image, determining a first projection point, a second projection point, a third projection point, and a fourth projection point from the plurality of projection points, wherein, in a two-dimensional coordinate system pre-constructed in the target plane, a first horizontal coordinate of the first projection point is a maximum horizontal coordinate of the plurality of projection points, a second horizontal coordinate of the second projection point is a minimum horizontal coordinate of the plurality of projection points, a first vertical coordinate of the third projection point is a maximum vertical coordinate of the plurality of projection points, and a second vertical coordinate of the fourth projection point is a minimum vertical coordinate of the plurality of projection points;

[0016] The projection image is divided into a plurality of sub-images based on the first abscissa, the second abscissa, the first ordinate, and the second ordinate.

[0017] In some embodiments, the determining of at least one second region based on the position of the target bounding box, wherein the second region is any one of the plurality of first regions, and each of the second regions includes at least a portion of the target bounding box, comprises:

[0018] Obtain a target bounding box projected onto the target plane;

[0019] Determine at least one sub-image based on the target bounding box, wherein each sub-image in the at least one sub-image overlaps at least partially with the target bounding box;

[0020] At least one second region corresponding to the at least one sub-image is determined as at least one second region that at least partially overlaps with the target bounding box.

[0021] In some embodiments, before acquiring the three-dimensional points of the target type in the at least one second area and marking the three-dimensional points of the target type, the method further includes:

[0022] Obtaining a sequence number of each three-dimensional point in the at least one second area;

[0023] According to the sequence number of the three-dimensional point, it is calculated in turn whether each three-dimensional point in the at least one second area is in the target bounding box.

[0024] In some embodiments, acquiring the three-dimensional points of the target type in the at least one second area and marking the three-dimensional points of the target type includes:

[0025] Obtaining a type label corresponding to the target bounding box;

[0026] The type label is set for the three-dimensional points in the at least one second region that are within the target bounding box.

[0027] In a second aspect, an embodiment of the present application provides a point cloud annotation device, the device comprising:

[0028] A division module, used to divide the three-dimensional space corresponding to the point cloud file into a plurality of first areas, wherein the point cloud file includes a plurality of three-dimensional points;

[0029] A receiving module, configured to receive a target input, wherein the target input is a target bounding box set in the three-dimensional space, and the target bounding box is used to enclose three-dimensional points of the target type among the multiple three-dimensional points;

[0030] A determination module, configured to determine at least one second region based on the position of the target bounding box, wherein the second region is any one of the plurality of first regions, and each of the second regions includes at least a portion of the target bounding box;

[0031] The marking module is used to obtain the three-dimensional points of the target type in the at least one second area and mark the three-dimensional points of the target type.

[0032] In a third aspect, an embodiment of the present application provides a point cloud annotation device, the device comprising: a processor and a memory storing computer program instructions;

[0033] When the processor executes the computer program instructions, the above point cloud labeling method is implemented.

[0034] In a fourth aspect, an embodiment of the present application provides a computer storage medium having computer program instructions stored thereon, and when the computer program instructions are executed by a processor, the above point cloud labeling method is implemented.

[0035] In a fifth aspect, an embodiment of the present application provides a vehicle, comprising computer program instructions, which implement the above point cloud labeling method when executed by a processor.

[0036] In the present application, the three-dimensional space corresponding to the point cloud file is divided into multiple first areas, wherein the point cloud file includes multiple three-dimensional points, a target input is received, and the target input is to set a target bounding box in the three-dimensional space, and the target bounding box is used to enclose the three-dimensional points of the target type in the multiple three-dimensional points; at least one second area is determined based on the position of the target bounding box, wherein the second area is any one of the multiple first areas, and each second area includes at least part of the target bounding box; the three-dimensional points of the target type are obtained in at least one second area, and the three-dimensional points of the target type are annotated. In this way, there is no need to search for the three-dimensional points of the target type from the entire point cloud file and annotate them, and only the three-dimensional points of the target type need to be found in at least one second area for annotation. Compared with the related art, the range of the three-dimensional points that need to be calculated is narrowed, the amount of calculation of the three-dimensional points is reduced, and the efficiency of the annotation of the point cloud file is improved. BRIEF DESCRIPTION OF THE DRAWINGS

[0037] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the embodiments of the present application will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0038] Figure 1 It is a flowchart of a point cloud annotation method provided by an embodiment of the present application;

[0039] Figure 2 It is a schematic diagram of the hardware structure of a point cloud annotation device provided in one embodiment of the present application;

[0040] Figure 3 It is a structural schematic diagram of a point cloud annotation device provided in one embodiment of the present application. DETAILED DESCRIPTION

[0041] The features and exemplary embodiments of various aspects of the present application will be described in detail below. In order to make the purpose, technical solutions and advantages of the present application clearer, the present application will be further described in detail below in conjunction with the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are only intended to explain the present application, rather than to limit the present application. For those skilled in the art, the present application can be implemented without the need for some of these specific details. The following description of the embodiments is only to provide a better understanding of the present application by illustrating the examples of the present application.

[0042] It should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the statement "include..." do not exclude the existence of other identical elements in the process, method, article or device including the elements.

[0043] It should be noted that, in the absence of conflict, the embodiments and features in the embodiments of the present application can be combined with each other. The embodiments will be described in detail below in conjunction with the accompanying drawings.

[0044] In related technologies, bounding box annotation is to enclose the target area in the 3D point cloud with a cube or rectangular bounding box, and then calculate whether each point is inside the bounding box. As the number of 3D points collected in the point cloud file increases, and the density of 3D points increases, processing and annotating these points consumes a lot of computing resources and memory, which leads to low annotation efficiency.

[0045] Specifically, in order to solve the problems of the prior art, the embodiments of the present application provide a point cloud annotation method, device, equipment, storage medium and vehicle. The point cloud annotation method provided by the embodiments of the present application is first introduced below.

[0046] Figure 1 A schematic diagram of a method for annotating a point cloud provided by an embodiment of the present application is shown. The method comprises the following steps:

[0047] S110, dividing a three-dimensional space corresponding to a point cloud file into a plurality of first areas, wherein the point cloud file includes a plurality of three-dimensional points.

[0048] In this embodiment, the point cloud file is a data file composed of a large number of three-dimensional points, each of which has a corresponding three-dimensional coordinate in a three-dimensional space. The point cloud file can be used to represent the shape and structure of a three-dimensional object, scene or environment. These three-dimensional points can be obtained by sensors or photographic equipment on the vehicle.

[0049] After the point cloud file is determined, since the point cloud file is composed of a large number of 3D points, each of which has its position coordinates in the 3D space, the point cloud file can be regarded as a data set of an object or scene in the 3D space. The 3D space where the multiple 3D points included in the point cloud file are located is the 3D space corresponding to the point cloud file.

[0050] S120, receiving a target input, wherein the target input is setting a target bounding box in the three-dimensional space, and the target bounding box is used to enclose three-dimensional points of the target type among the multiple three-dimensional points.

[0051] In this embodiment, since there are multiple 3D points in the point cloud file, and these 3D points are of different types, for example, different 3D points can represent the shapes and structures of different 3D objects, scenes or environments.

[0052] Therefore, different types of 3D points can be semantically segmented through target input. To perform semantic segmentation in a point cloud file, some algorithms and techniques are usually used to classify different types of 3D points in the point cloud into different semantic categories, and to give different semantic information to each 3D point, so that different parts of the point cloud file can be identified and distinguished.

[0053] In this embodiment, a cube or rectangular bounding box can be drawn in the three-dimensional space corresponding to the point cloud file, and three-dimensional points of the same type can be framed in a bounding box. The three-dimensional points in the same bounding box belong to the same type. In this way, all three-dimensional points of the target type can be framed in the target bounding box, thereby completing the semantic segmentation of the three-dimensional points.

[0054] S130: Determine at least one second region based on the position of the target bounding box, wherein the second region is any one of the plurality of first regions, and each of the second regions includes at least a portion of the target bounding box.

[0055] In this embodiment, since the target bounding box is a cube or a cuboid bounding box in three-dimensional space, it can be determined that the target bounding box is located in at least one second region, and at least part of the target bounding box exists in each first region of the at least one second region.

[0056] S140: Acquire three-dimensional points of the target type in the at least one second area, and mark the three-dimensional points of the target type.

[0057] In this embodiment, since the three-dimensional points of the target type are all in the target bounding box, and the target bounding box is in the at least one second region, it can be considered that the three-dimensional points of the target type are all in the at least one second region.

[0058] In this embodiment, the three-dimensional space corresponding to the point cloud file is divided into multiple first areas, wherein the point cloud file includes multiple three-dimensional points, a target input is received, and the target input is to set a target bounding box in the three-dimensional space, and the target bounding box is used to enclose the three-dimensional points of the target type in the multiple three-dimensional points; at least one second area is determined based on the position of the target bounding box, wherein the second area is any one of the multiple first areas, and each second area includes at least part of the target bounding box; the three-dimensional points of the target type are obtained in at least one second area, and the three-dimensional points of the target type are annotated. In this way, there is no need to search for the three-dimensional points of the target type from the entire point cloud file and annotate them, and only the three-dimensional points of the target type need to be searched and annotated in at least one second area. Compared with the related art, the range of the three-dimensional points that need to be calculated is narrowed, the amount of calculation of the three-dimensional points is reduced, and the efficiency of the annotation of the point cloud file is improved.

[0059] As an optional embodiment, the above S110 may include:

[0060] Projecting a plurality of three-dimensional points in the point cloud file onto a target plane to obtain a projection image, wherein the projection image includes a plurality of projection points, the three-dimensional points correspond to the projection points one by one, and the target plane is a two-dimensional plane;

[0061] dividing the projection image into a plurality of sub-images on the target plane;

[0062] The three-dimensional space where the point cloud file is located is divided into a plurality of first regions based on the plurality of sub-images, wherein the sub-images correspond to the first regions one by one.

[0063] In this embodiment, in the point cloud file, each three-dimensional point represents a spatial position, and in the three-dimensional coordinate system corresponding to the three-dimensional space, each three-dimensional point has a three-dimensional coordinate. In order to divide the three-dimensional space into multiple first areas, the three-dimensional points in the three-dimensional space can be projected onto a two-dimensional target plane to obtain multiple projection points, and the multiple projection points together constitute a projection image. Since each three-dimensional point is projected onto the target plane, each three-dimensional point corresponds to a projection point. The projection image can be divided into multiple sub-images, each of which includes some projection points. The three-dimensional space can be divided into multiple first areas based on multiple sub-images, so that the projection points in each sub-image correspond to the three-dimensional points in the first area corresponding to the sub-image one by one.

[0064] For example, the three-dimensional coordinate system corresponding to the three-dimensional space is the XYZ coordinate system. Each three-dimensional point P in the three-dimensional coordinate system has coordinates P(x, y, z). The XY plane of the three-dimensional coordinate system can be determined as the target plane. Each three-dimensional point P(x, y, z) is projected to the XY plane of the three-dimensional coordinate system through orthogonal projection. Only the X and Y coordinates of point P are retained to obtain the projection point P'(x', y'), which is the projection position of point P on the XY plane.

[0065] If the projected image on the XY plane is a rectangle, the projected image can be divided into a plurality of sub-images, each of which is a small rectangle. Each first region can be a cuboid with a sub-image as the base and the same height.

[0066] The above-mentioned projection method can easily display a three-dimensional object or scene in a two-dimensional form, making it visible on a plane.

[0067] As an optional embodiment, dividing the projection image into a plurality of sub-images on the target plane comprises:

[0068] Traversing a plurality of projection points in the projection image, determining a first projection point, a second projection point, a third projection point, and a fourth projection point from the plurality of projection points, wherein, in a two-dimensional coordinate system pre-constructed in the target plane, a first horizontal coordinate of the first projection point is a maximum horizontal coordinate of the plurality of projection points, a second horizontal coordinate of the second projection point is a minimum horizontal coordinate of the plurality of projection points, a first vertical coordinate of the third projection point is a maximum vertical coordinate of the plurality of projection points, and a second vertical coordinate of the fourth projection point is a minimum vertical coordinate of the plurality of projection points;

[0069] The projection image is divided into a plurality of sub-images based on the first abscissa, the second abscissa, the first ordinate, and the second ordinate.

[0070] In this embodiment, after projecting multiple three-dimensional points into multiple projection points on the target plane, in the pre-constructed two-dimensional coordinate system in the target plane, the first horizontal coordinate of the largest projection point in the X direction, the second horizontal coordinate of the smallest projection point, the first vertical coordinate of the largest projection point in the Y direction, and the second vertical coordinate of the smallest projection point can be determined. Then, a first rectangle can be set on the projected image with the first horizontal coordinate, the second horizontal coordinate, the first vertical coordinate, and the second vertical coordinate as boundaries, so that all projection points are in the first rectangle. The first rectangle can be evenly divided into multiple small second rectangles, each of which is a sub-image, and each second rectangle includes at least part of the projection points.

[0071] As an optional embodiment, the above S130 may include:

[0072] Obtain a target bounding box projected onto the target plane;

[0073] Determine at least one sub-image based on the target bounding box, wherein each sub-image in the at least one sub-image overlaps at least partially with the target bounding box;

[0074] At least one second region corresponding to the at least one sub-image is determined as at least one second region that at least partially overlaps with the target bounding box.

[0075] In this embodiment, since the target bounding box is a cube in the three-dimensional space corresponding to the point cloud file, the target bounding box can also be projected onto the target plane to obtain a quadrilateral, which is the target bounding box. On the target plane, the target bounding box still frames the projection points corresponding to the three-dimensional points of all target types.

[0076] When the projection image is divided into a plurality of sub-images, at least one sub-image which at least partially overlaps with the target bounding box may be determined among the plurality of sub-images.

[0077] Since the projection method in this embodiment is orthogonal projection, the at least one region corresponding to the at least one sub-image is the at least one second region that at least partially overlaps with the target bounding box.

[0078] In this way, the method for determining at least one second area can be transferred from three-dimensional space to a plane, simplifying the process of determining at least one second area based on the position of the target bounding box, wherein the second area is any one of the multiple first areas, and each second area includes at least part of the target bounding box, thereby reducing the amount of calculation and improving efficiency.

[0079] As an optional embodiment, before acquiring the three-dimensional points of the target type in the at least one second area and marking the three-dimensional points of the target type, the method further includes:

[0080] Obtaining a sequence number of each three-dimensional point in the at least one second area;

[0081] According to the sequence number of the three-dimensional point, it is calculated in turn whether each three-dimensional point in the at least one second area is in the target bounding box.

[0082] In this embodiment, in order to facilitate the management and calculation of the three-dimensional points in the point cloud file, the three-dimensional points in the point cloud file can be assigned serial numbers in a specific manner. For example, the three-dimensional points in the point cloud file can be spatially sorted according to the coordinate values ​​of the points in a certain direction, thereby obtaining an ordered point cloud.

[0083] After sorting the 3D points, the serial number of each 3D point in at least one second region may be obtained, and then, according to the serial numbers of the 3D points, it is calculated in turn whether each 3D point in at least one second region is in the target bounding box.

[0084] For example, since the target bounding box is a cube or a cuboid, each three-dimensional point in the at least one second region can be compared with the vertex of the target bounding box, and the target bounding box can be represented as the coordinates of eight vertices. Then, for each three-dimensional point, check whether its coordinates are between the minimum and maximum coordinates of the target bounding box. If so, it means that the point is inside the target bounding box.

[0085] As an optional embodiment, S140 may include:

[0086] Obtaining a type label corresponding to the target bounding box;

[0087] The type label is set for the three-dimensional points in the at least one second region that are within the target bounding box.

[0088] In this embodiment, the target bounding box corresponds to a type label, and the type label corresponding to the target bounding box can be determined, and all three-dimensional points inside the target bounding box in at least one second area are marked with the type label.

[0089] For example, the 3D points in the same target bounding box can be set to a color, and each color represents a type of 3D point. For example, in autonomous driving, the 3D points in the point cloud file represent the shape and structure of roadside scenes and objects. 3D points of different colors are used to characterize the shape or structure of the same object or scene. Different type labels can be used to characterize lane lines, traffic signs, pedestrians and other vehicles. Such operations can give semantic information to each 3D point in the point cloud file, so that different parts of the point cloud can be identified and distinguished.

[0090] Based on the point cloud annotation method provided in the above embodiment, the present application also provides a specific implementation of a point cloud annotation device. Please refer to the following embodiment.

[0091] See first Figure 2 The point cloud annotation device 200 provided in the embodiment of the present application includes the following modules:

[0092] A division module 201 is used to divide the three-dimensional space corresponding to the point cloud file into a plurality of first areas, wherein the point cloud file includes a plurality of three-dimensional points;

[0093] A receiving module 202 is used to receive a target input, wherein the target input is to set a target bounding box in the three-dimensional space, and the target bounding box is used to enclose three-dimensional points of the target type among the multiple three-dimensional points;

[0094] A determination module 203, configured to determine at least one second region based on the position of the target bounding box, wherein the second region is any one of the plurality of first regions, and each of the second regions includes at least a portion of the target bounding box;

[0095] The labeling module 204 is used to obtain the three-dimensional points of the target type in the at least one second area and label the three-dimensional points of the target type.

[0096] The device can divide the three-dimensional space corresponding to the point cloud file into multiple first areas, wherein the point cloud file includes multiple three-dimensional points, receive a target input, the target input is to set a target bounding box in the three-dimensional space, and the target bounding box is used to enclose the three-dimensional points of the target type in the multiple three-dimensional points; determine at least one second area based on the position of the target bounding box, wherein the second area is any one of the multiple first areas, and each second area includes at least part of the target bounding box; obtain the three-dimensional points of the target type in at least one second area, and mark the three-dimensional points of the target type. In this way, there is no need to search for the three-dimensional points of the target type from the entire point cloud file and mark them, and only needs to search for the three-dimensional points of the target type in at least one second area for marking. Compared with related technologies, the range of three-dimensional points that need to be calculated is narrowed, the amount of calculation of three-dimensional points is reduced, and the efficiency of marking point cloud files is improved.

[0097] As an implementation of the present application, the above-mentioned division module 201 may also include:

[0098] A projection unit, used for projecting a plurality of three-dimensional points in the point cloud file onto a target plane to obtain a projection image, wherein the projection image includes a plurality of projection points, the three-dimensional points correspond to the projection points one by one, and the target plane is a two-dimensional plane;

[0099] A first division unit, configured to divide the projection image into a plurality of sub-images on the target plane;

[0100] The second division unit is used to divide the three-dimensional space where the point cloud file is located into a plurality of first regions based on the plurality of sub-images, wherein the sub-images correspond to the first regions one by one.

[0101] As an implementation of the present application, the first division unit may also be used for:

[0102] Traversing a plurality of projection points in the projection image, determining a first projection point, a second projection point, a third projection point, and a fourth projection point from the plurality of projection points, wherein, in a two-dimensional coordinate system pre-constructed in the target plane, a first horizontal coordinate of the first projection point is a maximum horizontal coordinate of the plurality of projection points, a second horizontal coordinate of the second projection point is a minimum horizontal coordinate of the plurality of projection points, a first vertical coordinate of the third projection point is a maximum vertical coordinate of the plurality of projection points, and a second vertical coordinate of the fourth projection point is a minimum vertical coordinate of the plurality of projection points;

[0103] The projection image is divided into a plurality of sub-images based on the first abscissa, the second abscissa, the first ordinate, and the second ordinate.

[0104] As an implementation of the present application, the above-mentioned determination module 203 may also include:

[0105] An acquisition unit, used for acquiring a target bounding box projected on the target plane;

[0106] A first determining unit, configured to determine at least one sub-image based on the target bounding box, wherein each sub-image in the at least one sub-image at least partially overlaps with the target bounding box;

[0107] The second determining unit is configured to determine at least one second region corresponding to the at least one sub-image as at least one second region that at least partially overlaps with the target bounding box.

[0108] As an implementation of the present application, the point cloud annotation device 200 may further include:

[0109] An acquisition module, used to acquire a sequence number of each three-dimensional point in the at least one second area;

[0110] The calculation module is used to calculate, in sequence according to the sequence number of the three-dimensional point, whether each three-dimensional point in the at least one second area is in the target bounding box.

[0111] As an implementation of the present application, the point cloud annotation device 200 may also be used for:

[0112] Obtaining a type label corresponding to the target bounding box;

[0113] The type label is set for the three-dimensional points in the at least one second region that are within the target bounding box.

[0114] The point cloud annotation device provided in the embodiment of the present invention can implement each step in the above method embodiment, and will not be described again here to avoid repetition.

[0115] Figure 3 A schematic diagram of the hardware structure of a point cloud annotation device provided in an embodiment of the present application is shown.

[0116] The point cloud annotation device may include a processor 301 and a memory 302 storing computer program instructions.

[0117] Specifically, the processor 301 may include a central processing unit (CPU), or an application specific integrated circuit (ASIC), or may be configured to implement one or more integrated circuits of the embodiments of the present application.

[0118] The memory 302 may include a large capacity memory for data or instructions. By way of example and not limitation, the memory 302 may include a hard disk drive (HDD), a floppy disk drive, a flash memory, an optical disk, a magneto-optical disk, a magnetic tape, or a universal serial bus (USB) drive or a combination of two or more of these. In appropriate cases, the memory 302 may include a removable or non-removable (or fixed) medium. In appropriate cases, the memory 302 may be inside or outside the integrated gateway disaster recovery device. In a specific embodiment, the memory 302 is a non-volatile solid-state memory.

[0119] The memory may include read-only memory (ROM), random access memory (RAM), magnetic disk storage media devices, optical storage media devices, flash memory devices, electrical, optical or other physical / tangible memory storage devices. Thus, typically, the memory includes one or more tangible (non-transitory) computer-readable storage media (e.g., memory devices) encoded with software including computer-executable instructions, and when the software is executed (e.g., by one or more processors), it is operable to perform the operations described with reference to the method according to an aspect of the present disclosure.

[0120] The processor 301 implements any one of the point cloud annotation methods in the above embodiments by reading and executing computer program instructions stored in the memory 302 .

[0121] In one example, the point cloud annotation device may further include a communication interface 303 and a bus 310. Figure 3 As shown, the processor 301, the memory 302, and the communication interface 303 are connected via a bus 310 and communicate with each other.

[0122] The communication interface 303 is mainly used to implement communication between various modules, devices, units and / or equipment in the embodiments of the present application.

[0123] The bus 310 includes hardware, software or both, coupling the components of the annotation device of the point cloud to each other. For example and not limitation, the bus may include an accelerated graphics port (AGP) or other graphics bus, an enhanced industrial standard architecture (EISA) bus, a front-end bus (FSB), a hypertransport (HT) interconnect, an industrial standard architecture (ISA) bus, an infinite bandwidth interconnect, a low pin count (LPC) bus, a memory bus, a microchannel architecture (MCA) bus, a peripheral component interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a serial advanced technology attachment (SATA) bus, a video electronics standard association local (VLB) bus or other suitable bus or a combination of two or more of these. Where appropriate, the bus 310 may include one or more buses. Although the embodiments of the present application describe and illustrate a specific bus, the present application considers any suitable bus or interconnect.

[0124] The point cloud annotation device can be based on the above embodiment, so as to realize the point cloud annotation method and device combined with the above embodiment.

[0125] In addition, in combination with the point cloud annotation method in the above-mentioned embodiment, the embodiment of the present application may provide a computer storage medium for implementation. The computer storage medium stores computer program instructions; when the computer program instructions are executed by the processor, any one of the point cloud annotation methods in the above-mentioned embodiments is implemented, and the same technical effect can be achieved. To avoid repetition, it will not be repeated here. Among them, the above-mentioned computer-readable storage medium may include a non-transitory computer-readable storage medium, such as a read-only memory (Read-Only Memory, referred to as ROM), a random access memory (Random Access Memory, referred to as RAM), a disk or an optical disk, etc., which is not limited here.

[0126] In addition, an embodiment of the present application also provides a vehicle, including computer program instructions, which, when executed by a processor, can implement the steps and corresponding contents of the aforementioned method embodiment.

[0127] It should be clear that the present application is not limited to the specific configuration and processing described above and shown in the figures. For the sake of simplicity, a detailed description of the known method is omitted here. In the above embodiments, several specific steps are described and shown as examples. However, the method process of the present application is not limited to the specific steps described and shown, and those skilled in the art can make various changes, modifications and additions, or change the order between the steps after understanding the spirit of the present application.

[0128] The functional blocks shown in the above block diagram can be implemented as hardware, software, firmware or a combination thereof. When implemented in hardware, it can be, for example, an electronic circuit, an application specific integrated circuit (ASIC), appropriate firmware, a plug-in, a function card, etc. When implemented in software, the elements of the present application are programs or code segments that are used to perform the required tasks. The program or code segment can be stored in a machine-readable medium, or transmitted on a transmission medium or a communication link by a data signal carried in a carrier wave. "Machine-readable medium" can include any medium capable of storing or transmitting information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, ROM, flash memory, erasable ROM (EROM), floppy disks, CD-ROMs, optical disks, hard disks, optical fiber media, radio frequency (RF) links, etc. The code segment can be downloaded via a computer network such as the Internet, an intranet, etc.

[0129] It should also be noted that the exemplary embodiments mentioned in this application describe some methods or systems based on a series of steps or devices. However, this application is not limited to the order of the above steps, that is, the steps can be performed in the order mentioned in the embodiment, or in a different order from the embodiment, or several steps can be performed simultaneously.

[0130] Aspects of the present disclosure are described above with reference to the flowcharts and / or block diagrams of the methods, devices and vehicles according to the embodiments of the present disclosure. It should be understood that each box in the flowchart and / or block diagram and the combination of each box in the flowchart and / or block diagram can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device to produce a machine so that these instructions executed by the processor of the computer or other programmable data processing device enable the implementation of the function / action specified in one or more boxes of the flowchart and / or block diagram. Such a processor can be, but is not limited to, a general-purpose processor, a special-purpose processor, a special application processor, or a field programmable logic circuit. It can also be understood that each box in the block diagram and / or flowchart and the combination of boxes in the block diagram and / or flowchart can also be implemented by dedicated hardware that performs a specified function or action, or can be implemented by a combination of dedicated hardware and computer instructions.

[0131] The above are only specific implementation methods of the present application. Those skilled in the art can clearly understand that for the convenience and simplicity of description, the specific working processes of the systems, modules and units described above can refer to the corresponding processes in the aforementioned method embodiments, and will not be repeated here. It should be understood that the protection scope of the present application is not limited to this. Any technician familiar with the technical field can easily think of various equivalent modifications or replacements within the technical scope disclosed in this application, and these modifications or replacements should be included in the protection scope of this application.

Claims

1. A point cloud annotation method, characterized in that: The method comprises: Dividing a three-dimensional space corresponding to a point cloud file into a plurality of first regions, wherein the point cloud file includes a plurality of three-dimensional points; receiving a target input, wherein the target input is setting a target bounding box in the three-dimensional space, and the target bounding box is used to enclose three-dimensional points of the target type among the multiple three-dimensional points; Determine at least one second area based on the position of the target bounding box, wherein the second area is any one of the plurality of first areas, and each of the second areas includes at least a portion of the target bounding box; Acquire three-dimensional points of the target type in the at least one second area, and mark the three-dimensional points of the target type.

2. The point cloud annotation method according to claim 1, characterized in that: The step of dividing the three-dimensional space corresponding to the point cloud file into a plurality of first areas includes: Projecting a plurality of three-dimensional points in the point cloud file onto a target plane to obtain a projection image, wherein the projection image includes a plurality of projection points, the three-dimensional points correspond to the projection points one by one, and the target plane is a two-dimensional plane; dividing the projection image into a plurality of sub-images on the target plane; The three-dimensional space where the point cloud file is located is divided into a plurality of first regions based on the plurality of sub-images, wherein the sub-images correspond to the first regions one by one.

3. The point cloud annotation method according to claim 2, characterized in that: The step of dividing the projection image into a plurality of sub-images on the target plane comprises: Traversing a plurality of projection points in the projection image, determining a first projection point, a second projection point, a third projection point, and a fourth projection point from the plurality of projection points, wherein, in a two-dimensional coordinate system pre-constructed in the target plane, a first horizontal coordinate of the first projection point is a maximum horizontal coordinate of the plurality of projection points, a second horizontal coordinate of the second projection point is a minimum horizontal coordinate of the plurality of projection points, a first vertical coordinate of the third projection point is a maximum vertical coordinate of the plurality of projection points, and a second vertical coordinate of the fourth projection point is a minimum vertical coordinate of the plurality of projection points; The projection image is divided into a plurality of sub-images based on the first abscissa, the second abscissa, the first ordinate, and the second ordinate.

4. The point cloud annotation method according to claim 1, characterized in that: The determining at least one second area based on the position of the target bounding box comprises: Obtain a target bounding box projected onto the target plane; Determine at least one sub-image based on the target bounding box, wherein each sub-image in the at least one sub-image overlaps at least partially with the target bounding box; At least one second region corresponding to the at least one sub-image is determined as at least one second region that at least partially overlaps with the target bounding box.

5. The point cloud annotation method according to claim 1, characterized in that: Before acquiring the three-dimensional points of the target type in the at least one second area and marking the three-dimensional points of the target type, the method further includes: Obtaining a sequence number of each three-dimensional point in the at least one second area; According to the sequence number of the three-dimensional point, it is calculated in turn whether each three-dimensional point in the at least one second area is in the target bounding box.

6. The point cloud annotation method according to claim 1, characterized in that: The acquiring the three-dimensional points of the target type in the at least one second area and marking the three-dimensional points of the target type includes: Obtaining a type label corresponding to the target bounding box; The type label is set for the three-dimensional points in the at least one second region that are within the target bounding box.

7. A point cloud annotation device, characterized in that: The device comprises: A division module, used to divide the three-dimensional space corresponding to the point cloud file into a plurality of first areas, wherein the point cloud file includes a plurality of three-dimensional points; A receiving module, configured to receive a target input, wherein the target input is a target bounding box set in the three-dimensional space, and the target bounding box is used to enclose three-dimensional points of the target type among the multiple three-dimensional points; A determination module, configured to determine at least one second region based on the position of the target bounding box, wherein the second region is any one of the plurality of first regions, and each of the second regions includes at least a portion of the target bounding box; The marking module is used to obtain the three-dimensional points of the target type in the at least one second area and mark the three-dimensional points of the target type.

8. A point cloud annotation device, characterized in that: The point cloud annotation device includes: a processor and a memory storing computer program instructions; When the processor executes the computer program instructions, the point cloud labeling method according to any one of claims 1 to 6 is implemented.

9. A computer storage medium, characterized in that The computer storage medium stores computer program instructions, and when the computer program instructions are executed by a processor, the point cloud labeling method according to any one of claims 1 to 6 is implemented.

10. A vehicle, characterized in that: The vehicle includes computer program instructions, and when the computer program instructions are executed by a processor, the point cloud annotation method according to any one of claims 1 to 6 is implemented.

Citation Information

Cited By

  • Point cloud local quality inspection marking method and system, program product, equipment and medium

    CN120783344A