Dynamic invader detection method and device based on point cloud data, medium and equipment
The method enhances dynamic intrusion detection by identifying static and dynamic objects through frame point cloud analysis and clustering, addressing high computing power and cost issues in existing LiDAR-based systems.
Patent Information
- Application Number
- CN202411221202.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-02
- Publication Date
- 2024-12-27
AI Technical Summary
Existing dynamic intrusion detection methods using LiDAR point clouds require high computing power and are limited to labeled objects, making large-scale deployment costly and ineffective for unlabeled objects.
A method involving background point cloud recognition to identify static objects by common points in multiple frame point clouds, followed by foreground point cloud clustering to detect dynamic intruders, reducing computational requirements and deployment costs.
Improves the scope of dynamic intrusion detection and reduces equipment deployment costs while maintaining accuracy by leveraging frame point cloud analysis and clustering techniques.
Smart Images

Figure CN119206273A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology, and more specifically, to a method, device, medium and equipment for dynamic intrusion detection based on point cloud data. Background Art
[0002] Dynamic intrusion detection is mainly used to identify the activities of dynamic objects in a specific area or space. It has applications in many fields, such as critical infrastructure security, traffic monitoring, industrial automation, intelligent driving, and smart home systems. In the current technical solutions, the method of using LiDAR point cloud for dynamic target detection has also received widespread attention due to the characteristics of LiDAR such as all-weather operation, high detection accuracy, long effective detection distance, and easy acquisition of three-dimensional information. This method mostly uses deep learning models to identify LiDAR point clouds, which requires the collection of a large amount of data in advance and the annotation of dynamic objects to be identified, and then uses these data to train the model.
[0003] However, the above method not only requires the equipment to deploy the model to have strong computing power, which makes the equipment cost high and inconvenient for large-scale deployment, but also the model can only identify labeled objects and cannot do anything for unlabeled objects. Therefore, how to improve the scope of application of dynamic intrusion detection and reduce the cost of equipment deployment while ensuring the accuracy of dynamic intrusion detection has become a technical problem that needs to be solved urgently. Summary of the invention
[0004] The embodiments of the present application provide a method, apparatus, medium and equipment for dynamic intruder detection based on point cloud data, which can improve the scope of application of dynamic intruder detection and reduce the cost of equipment deployment while ensuring the accuracy of dynamic intruder detection, at least to a certain extent.
[0005] Other features and advantages of the present application will become apparent from the following detailed description, or may be learned in part by the practice of the present application.
[0006] According to one aspect of an embodiment of the present application, a dynamic intruder detection method based on point cloud data is provided, comprising:
[0007] Acquire a predetermined number of frame point clouds collected for the target scene;
[0008] Perform background point cloud recognition based on the predetermined number of frame point clouds to obtain background point clouds corresponding to static objects in the target scene, wherein the background point clouds are determined by common points between any two of the predetermined number of frame point clouds;
[0009] Determining, according to the background point cloud and the point cloud newly collected for the target scene, a foreground point cloud existing in the newly collected point cloud;
[0010] Clustering is performed on the foreground point clouds to obtain clusters corresponding to the dynamic objects in the target scene.
[0011] According to one aspect of an embodiment of the present application, a dynamic intrusion detection device based on point cloud data is provided, comprising:
[0012] An acquisition module, used to acquire a predetermined number of frame point clouds collected for a target scene;
[0013] A recognition module, configured to perform background point cloud recognition based on the predetermined number of frame point clouds to obtain background point clouds corresponding to static objects in the target scene, wherein the background point clouds are determined by common points between any two of the predetermined number of frame point clouds;
[0014] A determination module, configured to determine a foreground point cloud existing in the newly acquired point cloud according to the background point cloud and the current point cloud newly acquired for the target scene;
[0015] The processing module is used to cluster the foreground point clouds to obtain clusters corresponding to the dynamic objects in the target scene.
[0016] According to one aspect of an embodiment of the present application, a computer-readable medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the dynamic intruder detection method based on point cloud data as described in the above embodiment is implemented.
[0017] According to one aspect of an embodiment of the present application, an electronic device is provided, comprising: one or more processors; a storage device for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors implement a dynamic intruder detection method based on point cloud data as described in the above embodiments.
[0018] According to one aspect of the embodiments of the present application, a computer program product or a computer program is provided, the computer program product or the computer program includes computer instructions, and the computer instructions are stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the dynamic intrusion detection method based on point cloud data provided in the above embodiment.
[0019] In the technical solutions provided in some embodiments of the present application, a predetermined number of frame point clouds collected for the target scene are obtained, and background point cloud recognition is performed based on the predetermined number of frame point clouds, so as to obtain a background point cloud corresponding to the static object in the target scene. The background point cloud is determined by the common points between two of the predetermined number of frame point clouds. Based on the background point cloud and the point cloud newly collected for the target scene, the foreground point cloud existing in the newly collected point cloud is determined, and then the foreground point cloud is clustered to obtain cluster clusters corresponding to each dynamic object existing in the target scene. Therefore, when performing background point cloud recognition, the corresponding background point cloud is determined by identifying the common points between two of the predetermined number of frame point clouds, and there is no need to require the device to have strong computing power, thereby improving the scope of application of dynamic intrusion detection and reducing the cost of equipment deployment on the basis of ensuring the accuracy of dynamic intrusion detection.
[0020] It should be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present application. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] The drawings herein are incorporated into the specification and constitute a part of the specification, showing embodiments consistent with the present application, and together with the specification, are used to explain the principles of the present application. Obviously, the drawings described below are only some embodiments of the present application, and for ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work. In the drawings:
[0022] Figure 1 A schematic diagram of a process of a dynamic intruder detection method based on point cloud data according to an embodiment of the present application is shown;
[0023] Figure 2 A schematic diagram of a calibration process of two laser radars according to an embodiment of the present application is shown;
[0024] Figure 3 A block diagram of a dynamic intruder detection device based on point cloud data according to an embodiment of the present application is shown;
[0025] Figure 4 A schematic diagram of the structure of a computer system suitable for implementing an electronic device of an embodiment of the present application is shown. DETAILED DESCRIPTION
[0026] Example embodiments will now be described more fully with reference to the accompanying drawings. However, example embodiments can be implemented in a variety of forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that this application will be more comprehensive and complete and fully convey the concept of the example embodiments to those skilled in the art.
[0027] In addition, described feature, structure or characteristic can be combined in one or more embodiments in any suitable manner. In the following description, many specific details are provided to provide a full understanding of the embodiments of the present application. However, those skilled in the art will appreciate that the technical scheme of the present application can be put into practice without one or more of the specific details, or other methods, components, devices, steps, etc. can be adopted. In other cases, known methods, devices, realizations or operations are not shown or described in detail to avoid blurring the various aspects of the application.
[0028] The block diagrams shown in the accompanying drawings are merely functional entities and do not necessarily correspond to physically independent entities. That is, these functional entities may be implemented in software form, or in one or more hardware modules or integrated circuits, or in different networks and / or processor devices and / or microcontroller devices.
[0029] The flowcharts shown in the accompanying drawings are only exemplary and do not necessarily include all the contents and operations / steps, nor must they be executed in the order described. For example, some operations / steps can be decomposed, and some operations / steps can be combined or partially combined, so the actual execution order may change according to actual conditions.
[0030] Figure 1 A schematic flow chart of a dynamic intrusion detection method based on point cloud data according to an embodiment of the present application is shown. The method can be applied to a terminal device or a server, wherein the terminal device may include but is not limited to one or more of a smart phone, a tablet computer, a portable computer, a desktop computer, and an embedded device; the server may be a physical server or a cloud server.
[0031] like Figure 1 As shown, the dynamic intruder detection method based on point cloud data includes at least steps S110 to S140, which are described in detail as follows: (hereinafter, the method is applied to a terminal device as an example, hereinafter referred to as "terminal")
[0032] In step S110, a predetermined number of frame point clouds collected for the target scene are obtained.
[0033] In this embodiment, at least one laser radar may be provided in the target scene, and the terminal may be connected to each laser radar for communication, thereby receiving a plurality of frame point clouds acquired by each laser radar for the target scene. The terminal may select a predetermined number of frame point clouds from the plurality of frame point clouds acquired by the laser radar for subsequent processing.
[0034] Among them, the predetermined number can be predetermined by those skilled in the art based on prior experience, for example, the predetermined number can be three frames, five frames, etc. In addition, the predetermined number of frame point clouds can be continuous, or they can be obtained at intervals from several frame point clouds, and the intervals between two adjacent frame point clouds can be the same or different. For example, assuming that the predetermined number is three frames, the terminal can select the first frame, the third frame, and the seventh frame point cloud from several frame point clouds for subsequent processing, or it can select the first frame, the second frame, and the third frame for subsequent processing, or it can select the first frame, the third frame, and the sixth frame for subsequent processing, etc. Those skilled in the art can determine the corresponding point cloud selection method according to actual implementation needs, and this application does not make any special restrictions on this.
[0035] In one embodiment, obtaining a predetermined number of frame point clouds collected for a target scene includes:
[0036] At different time intervals, a predetermined number of frame point clouds collected for the target scene are acquired.
[0037] In this embodiment, the terminal can select a predetermined number of frame point clouds from the point cloud collected for the target scene according to different time intervals for subsequent background point cloud recognition. It should be understood that by using different time intervals, it is possible to avoid an object being mistakenly regarded as a static object because it remains static for a short period of time, and the point cloud corresponding to the object is recognized as a background point cloud, thereby ensuring the accuracy of background point cloud recognition.
[0038] In step S120, background point cloud recognition is performed based on the predetermined number of frame point clouds to obtain background point clouds corresponding to static objects in the target scene, and the background point clouds are determined by common points between any two of the predetermined number of frame point clouds.
[0039] The background point cloud may be a point cloud corresponding to a static object in the target scene. It should be noted that the static object may be a stationary object in the target scene, such as the ground, a table, etc. It may also be an object that remains stationary in the target scene for a certain period of time, such as a human body sitting still in the target scene. In other words, if an object in the target scene remains stationary in a predetermined number of frame point clouds used for background point cloud recognition, it will be regarded as a static object, and the point cloud corresponding to it will also be regarded as a background point cloud.
[0040] Background point cloud recognition can be a recognition process pre-set by a person skilled in the art to determine the background point cloud present in the point cloud. It should be understood that if an object remains stationary, the positions of each point in the point cloud obtained for it remain unchanged or only offset within a certain range. Therefore, the terminal can identify the common points between two of the predetermined number of frame point clouds through the background point cloud recognition, and then identify the background point cloud corresponding to the static object. It should be understood that the common points between different frame point clouds are not necessarily points with exactly the same position information, but may also be points with an offset less than a certain value.
[0041] In one example, when performing common point recognition, a spatial range can be set with each point in the previous point cloud frame as the center. If there is a point in the subsequent point cloud that is within the spatial range, it indicates that the point is a common point between the subsequent point cloud frame and the previous point cloud frame. In this way, the terminal can accurately identify the common points between the predetermined number of frame point clouds, and thus identify the background point cloud based on the common points.
[0042] In one embodiment of the present application, background point cloud recognition is performed according to the predetermined number of frame point clouds to obtain background point clouds corresponding to static objects in the target scene, including:
[0043] For each frame point cloud in the predetermined number of frame point clouds, determining the common points between the frame point cloud and other frame point clouds;
[0044] The common points between any two of the predetermined number of frame point clouds are merged and deduplicated to obtain a background point cloud corresponding to the static object in the target scene.
[0045] In this embodiment, the terminal can determine the common points between each frame point cloud in the predetermined number of frame point clouds and other frame point clouds in the predetermined number of frame point clouds. After traversing all point cloud frames, the terminal can determine the common points between the predetermined number of frame point clouds. Then, the terminal can merge and remove the common points between the two, so as to obtain the background point cloud corresponding to the static object in the target scene.
[0046] Please continue to refer to Figure 1 In step S130, based on the background point cloud and the point cloud newly collected for the target scene, the foreground point cloud existing in the newly collected point cloud is determined.
[0047] In this embodiment, after determining the background point cloud corresponding to the static object in the target scene, when a new point cloud is acquired for the target scene, the terminal can compare the background point cloud and the newly acquired point cloud to identify the foreground point cloud in the newly acquired point cloud except the background point cloud. It should be noted that the foreground point cloud is the point cloud corresponding to the dynamic object in the target scene. In one example, the terminal can subtract the background point cloud from the newly acquired point cloud to obtain the foreground point cloud, which is the extra point of the newly acquired point cloud relative to the background point cloud.
[0048] In step S140, clustering is performed on the foreground point clouds to obtain clusters corresponding to the dynamic objects in the target scene.
[0049] In this embodiment, the terminal can cluster the foreground point cloud according to the determined foreground point cloud, thereby clustering the foreground point cloud into at least one cluster cluster. It should be understood that each cluster cluster corresponds to a dynamic object. In one example, the DBSCAN algorithm can be used for clustering. Compared with the K-means algorithm, the DBSCAN algorithm does not need to determine the number of clusters, but infers the number of clusters based on data, and it can find clusters of any shape in noisy data and divide areas with sufficient density into clusters.
[0050] Therefore, after clustering the foreground point clouds, the terminal can obtain the cluster corresponding to each dynamic object in the target scene, thereby realizing the detection of dynamic intruders in the target scene.
[0051] exist Figure 1 In the embodiment shown, by acquiring a predetermined number of frame point clouds collected for the target scene, background point cloud recognition is performed based on the predetermined number of frame point clouds, thereby obtaining a background point cloud corresponding to the static object in the target scene, the background point cloud is determined by the common points between two of the predetermined number of frame point clouds, and the foreground point cloud existing in the newly collected point cloud is determined based on the background point cloud and the point cloud newly collected for the target scene, and then the foreground point cloud is clustered to obtain cluster clusters corresponding to each dynamic object existing in the target scene. Therefore, when performing background point cloud recognition, the corresponding background point cloud is determined by identifying the common points between two of the predetermined number of frame point clouds, which has stronger interpretability and lower computing resource requirements than the neural network algorithm, and does not require training, and only needs to input the predetermined number of frame point clouds according to its own needs, and the predetermined number of frame point clouds does not need to be deliberately selected, thereby ensuring the accuracy of dynamic intrusion detection, improving the scope of application of dynamic intrusion detection, and reducing the cost of equipment deployment.
[0052] In some embodiments of the present application, assuming that the predetermined number is three frames, background point cloud recognition is performed according to the predetermined number of frame point clouds to obtain background point clouds corresponding to static objects in the target scene, including:
[0053] Assume that the three frames of point clouds are point cloud A, point cloud B and point cloud E respectively, subtract the point cloud A from the point cloud B to obtain the additional point cloud C of the point cloud A relative to the point cloud B, subtract the point cloud A from the point cloud B to obtain the additional point cloud D of the point cloud B relative to the point cloud A, subtract the point cloud E from the point cloud C to obtain the additional point cloud F of the point cloud C relative to the point cloud E, subtract the point cloud E from the point cloud D to obtain the additional point cloud G of the point cloud D relative to the point cloud E, subtract the point cloud G from the point cloud B to obtain the additional point cloud H of the point cloud B relative to the point cloud G, subtract the point cloud F from the point cloud A to obtain the additional point cloud I of the point cloud A relative to the point cloud F, add the point cloud H and the point cloud I and remove the duplicates to obtain the background point cloud corresponding to the static object in the target scene.
[0054] In this embodiment, it is assumed that the three frames of point clouds acquired are point cloud A, point cloud B and point cloud E. It should be understood that point cloud A, point cloud B and point cloud E can be continuous or discontinuous, and when the three frames of point clouds are discontinuous, the intervals between the point clouds can be the same or different.
[0055] After obtaining three frames of point cloud, namely point cloud A, point cloud B and point cloud E, the terminal can perform subtraction or addition operations between the point clouds in the above manner, thereby identifying the common points between the three frames of point cloud, thereby obtaining the background point cloud corresponding to the target scene. The background point cloud obtained in the above manner has stronger interpretability and lower computing resource requirements than the neural network algorithm, and does not require training. You only need to set three frames for input according to your needs, and these three frames of point cloud can be any three frames without deliberate selection.
[0056] In addition, due to the high efficiency of this background point cloud acquisition method, a time interval can be set during program operation to regularly update the background point cloud. Specifically, in some embodiments of the present application, the method further includes:
[0057] The background point cloud is recognized based on the background point cloud and two frames of point cloud newly acquired for the target scene to update the background point cloud.
[0058] In this embodiment, the terminal can update the background point cloud according to a predetermined time interval. When the predetermined time interval is reached, the terminal can perform corresponding processing steps based on the previously determined background point cloud and the two frames of point cloud newly collected for the target scene with reference to the aforementioned point cloud A, point cloud B, and point cloud E, thereby obtaining a new background point cloud, and perform detection and identification based on the newly determined background point cloud during subsequent dynamic intrusion detection until the background point cloud is updated again.
[0059] Therefore, by regularly updating the background point cloud, the accuracy of the determined dynamic intruder can be guaranteed, and a static object added later can be prevented from being always identified as a dynamic object.
[0060] In some embodiments of the present application, each frame of the point cloud is obtained by stitching together sub-point clouds acquired by multiple laser radars for the target scene. Before acquiring a predetermined number of frames of point clouds acquired for the target scene, the method further includes:
[0061] The multiple laser radars are time synchronized and calibrated, and the calibration includes coarse alignment and fine alignment.
[0062] In this embodiment, multiple laser radars can be configured in the target scene, and each laser radar is used to obtain point cloud data (i.e., sub-point cloud) of a partial area in the target scene. The terminal can splice the received multiple sub-point clouds to obtain point cloud data for the entire target scene.
[0063] Since there are multiple LiDARs in the target scene, in order to ensure the matching degree between the sub-point clouds obtained by multiple LiDARs, it is necessary to synchronize and calibrate the LiDARs in advance. Taking an autonomous driving vehicle as an example, the vehicle can be equipped with multiple LiDARs to obtain point cloud data of the surrounding environment. However, each LiDAR works independently and has its own internal clock. Moreover, each LiDAR will not be powered on at the same time. In addition, the difference in their internal clock crystals may cause the clock frequency to be inconsistent. Therefore, if time synchronization is not performed, it may cause deviations in the time when each LiDAR collects data, which in turn causes deviations in the coordinates of the obstacles identified subsequently.
[0064] In one embodiment, a time synchronization box that supports multiple time synchronization protocols can be used, such as the time synchronization box model auto66, which supports multiple time synchronization protocols such as PTP (Precision Time Protocol), gPTP (generalized Precision Time Protocol) and NTP (Network Time Protocol), and can control the time synchronization error within a range of less than 1 millisecond. In addition, the laser radar used also supports PTP time synchronization and hardware triggering functions, further enhancing the reliability and accuracy of synchronization.
[0065] It should be understood that the PTP protocol, as an efficient master-slave synchronization protocol, can directly achieve time synchronization at the data link layer between sensors that support the protocol, and operate based on the open system interconnection model. This synchronization method can significantly reduce the delay in the data transmission process, thereby achieving more accurate time synchronization, thereby making the data collected from different sensors highly consistent in time, effectively avoiding the time misalignment problem that may occur during data fusion, ensuring detection accuracy, and improving the data processing efficiency and reliability of the entire system, which is crucial for advanced applications such as autonomous driving that rely on accurate spatiotemporal information, and can ensure the stable operation and efficient decision-making of the system in complex environments.
[0066] In addition, the use of PTP time synchronization does not require complex wiring, making its maintenance cost lower. The laser radar can adjust the slave clock inside the sensor according to the time delay obtained by the PTP protocol, and control the synchronization error of the sensor to the microsecond level. Another advantage of the PTP protocol is that it can output hardware pulses for precise time synchronization, called PPS pulses, which can be used to trigger the hardware. The speed and accuracy of this hardware triggering are higher than software triggering, and both the laser radar and the time synchronization box support hardware triggering. Therefore, in the embodiment of the present application, the hardware PPS pulse of PTP is used to synchronize the time of multiple laser radars.
[0067] After time synchronization is completed, multiple laser radars need to be calibrated. It should be noted that the rotating mechanical laser radar has a 360° viewing angle. Calibrating multiple laser radars together can greatly improve the range and accuracy of obstacle detection.
[0068] When using multiple LiDARs, calibration is a necessary step. However, the point cloud generated by each LiDAR is based on its own coordinate origin and cannot be directly spliced. The LiDARs need to be synchronized to the same coordinate system. Take the calibration of two LiDARs as an example. Figure 2 As shown, the two laser radars each have their own coordinate system, namely O Lidar(s) and OLidar(t) , the position transformation between them can be represented by T, which includes a rotation matrix R and a translation matrix t, as shown below:
[0069]
[0070] By calculating the rotation matrix R and the translation matrix t, we can get the positional relationship between the two lidars, thereby unifying all lidar data in one coordinate system, and ultimately providing accurate point cloud information for subsequent target detection work.
[0071] The method used for LiDAR calibration is to divide the calibration into two steps: coarse registration and fine registration. LiDAR registration is actually to register the point cloud P output by two LiDARs. s and Q t After a transformation matrix T, the points represented by the two point clouds in the real world are made as close as possible.
[0072] In the process of rough registration, when the distance between the two point clouds is too far or the rotation is too large, the conventional method will fail because the point clouds do not have enough overlap area. At this time, the only way to give the subsequent algorithm an initial value is to manually select points. The specific method is to manually select four corresponding points in the two point clouds. The positions of these four corresponding points on the two point clouds are the same point in the real world, which is equivalent to giving the algorithm the initial value of the correspondence relationship of the point cloud. It should be noted that in addition to finding corner points in space to select points, you can also use stickers with high reflectivity to select points, which makes it easier to find corresponding points.
[0073] It is worth noting that due to the sparsity of the point cloud, it is difficult for two manually selected points to correspond perfectly in real space. If the two sets of corresponding points are too close, the rotation deviation of the point cloud may be too large. When the space covered by the point cloud is large enough, the registration rotation error of the point cloud will be more obvious, which can be proved by the arc length formula:
[0074] l=rθ
[0075] The distance between the two groups of points can be regarded as r in the formula, the manually selected error can be regarded as l in the formula, and θ can be regarded as the rotation error of the manual calibration of the point cloud. Usually, the manual errors of point selection in areas with similar point cloud density are similar. In this case, increasing the distance between the two groups of points can effectively reduce the rotation error of manual calibration. Therefore, the four manually selected points should be as far as possible, and each point cannot be on the same plane. Try to select more evenly in the calibrated point cloud, so that the results of manual calibration can be more accurate.
[0076] After the point cloud is roughly aligned manually, it is difficult for the lidar points to fall on the same point in the real space because the point cloud is very sparse. Therefore, further optimization, namely fine alignment, is required.
[0077] In one example, the ICP algorithm is used for precise registration. The ICP algorithm is an optimization algorithm that uses the least squares method to perform point-to-point registration. The core idea of the algorithm is to transform a point cloud P s After a set of rotations and translations, it is projected onto the point cloud Q t After being placed in the coordinate system, the point clouds of the two groups have the highest degree of overlap.
[0078] Specifically, we first use the nearest neighbor algorithm to find the corresponding points between the two point clouds, that is, to find P s Any point in Q t The corresponding points in , and establish the corresponding relationship:
[0079]
[0080] Then the overlap degree of the point cloud is calculated by the least squares method. s The point in Q is transformed to t After the point cloud is in the coordinate system, the L2 norm between the corresponding points is calculated and the optimization function is constructed:
[0081]
[0082] The objective function is minimized by continuous iteration, and the translation t and rotation matrix R that satisfy the minimum objective function are used as the external parameters of the two lidars, so as to accurately align the point cloud data of the lidar based on the external parameters.
[0083] In some embodiments of the present application, after clustering the foreground point clouds to obtain clusters corresponding to the dynamic objects in the target scene, the method further includes:
[0084] The clusters corresponding to the dynamic objects are highlighted for visual display.
[0085] In this embodiment, after determining the clusters corresponding to each dynamic object, the terminal can highlight each cluster in the display interface. For example, a three-dimensional rectangular frame can be used to include the points in each cluster and display the three-dimensional rectangular frame in the display interface. The terminal can also use different colors to display the clusters corresponding to each dynamic object in the display interface to distinguish them from the background point cloud and other clusters.
[0086] In this way, the user can intuitively understand the position of each dynamic object in the target scene and the point cloud corresponding to the dynamic object, which is convenient for subsequent processing.
[0087] The following describes an embodiment of the device of the present application, which can be used to execute the dynamic intrusion detection method based on point cloud data in the above embodiment of the present application. For details not disclosed in the embodiment of the device of the present application, please refer to the embodiment of the dynamic intrusion detection method based on point cloud data in the above embodiment of the present application.
[0088] Figure 3 A block diagram of a dynamic intruder detection device based on point cloud data according to an embodiment of the present application is shown.
[0089] Reference Figure 3 As shown, according to an embodiment of the present application, a dynamic intrusion detection device based on point cloud data includes:
[0090] An acquisition module, used to acquire a predetermined number of frame point clouds collected for a target scene;
[0091] A recognition module, configured to perform background point cloud recognition based on the predetermined number of frame point clouds to obtain background point clouds corresponding to static objects in the target scene, wherein the background point clouds are determined by common points between any two of the predetermined number of frame point clouds;
[0092] A determination module, configured to determine a foreground point cloud existing in the newly acquired point cloud according to the background point cloud and the current point cloud newly acquired for the target scene;
[0093] The processing module is used to cluster the foreground point clouds to obtain clusters corresponding to the dynamic objects in the target scene.
[0094] In some embodiments of the present application, background point cloud recognition is performed according to the predetermined number of frame point clouds to obtain background point clouds corresponding to static objects in the target scene, including:
[0095] For each frame point cloud in the predetermined number of frame point clouds, determining the common points between the frame point cloud and other frame point clouds;
[0096] The common points between any two of the predetermined number of frame point clouds are merged and deduplicated to obtain a background point cloud corresponding to the static object in the target scene.
[0097] In some embodiments of the present application, the predetermined number is three frames, and background point cloud recognition is performed according to the predetermined number of frame point clouds to obtain background point clouds corresponding to static objects in the target scene, including:
[0098] Assume that the three frames of point clouds are point cloud A, point cloud B and point cloud E respectively, subtract the point cloud A from the point cloud B to obtain the additional point cloud C of the point cloud A relative to the point cloud B, subtract the point cloud A from the point cloud B to obtain the additional point cloud D of the point cloud B relative to the point cloud A, subtract the point cloud E from the point cloud C to obtain the additional point cloud F of the point cloud C relative to the point cloud E, subtract the point cloud E from the point cloud D to obtain the additional point cloud G of the point cloud D relative to the point cloud E, subtract the point cloud G from the point cloud B to obtain the additional point cloud H of the point cloud B relative to the point cloud G, subtract the point cloud F from the point cloud A to obtain the additional point cloud I of the point cloud A relative to the point cloud F, add the point cloud H and the point cloud I and remove the duplicates to obtain the background point cloud corresponding to the static object in the target scene.
[0099] In some embodiments of the present application, the recognition module is further used to: perform the background point cloud recognition based on the background point cloud and two frames of point clouds newly collected for the target scene to update the background point cloud.
[0100] In some embodiments of the present application, each frame of the point cloud is obtained by stitching together sub-point clouds acquired by multiple laser radars for the target scene. Before acquiring a predetermined number of frames of point clouds acquired for the target scene, the acquisition module is further used to:
[0101] The multiple laser radars are time synchronized and calibrated, and the calibration includes coarse alignment and fine alignment.
[0102] In some embodiments of the present application, after clustering the foreground point clouds to obtain clusters corresponding to the dynamic objects in the target scene, the processing module is further configured to:
[0103] The clusters corresponding to the dynamic objects are highlighted for visual display.
[0104] In some embodiments of the present application, obtaining a predetermined number of frame point clouds collected for a target scene includes:
[0105] At different time intervals, a predetermined number of frame point clouds collected for the target scene are obtained.
[0106] Figure 4 A schematic diagram of the structure of a computer system suitable for implementing an electronic device of an embodiment of the present application is shown.
[0107] It should be noted that Figure 4 The computer system of the electronic device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.
[0108] like Figure 4 As shown, the computer system includes a central processing unit (CPU) 401, which can perform various appropriate actions and processes according to the program stored in the read-only memory (ROM) 402 or the program loaded from the storage part 408 to the random access memory (RAM) 403, such as executing the method described in the above embodiment. In RAM 403, various programs and data required for system operation are also stored. CPU 401, ROM 402 and RAM 403 are connected to each other through bus 404. Input / output (I / O) interface 405 is also connected to bus 404.
[0109] The following components are connected to the I / O interface 405: an input section 406 including a keyboard, a mouse, etc.; an output section 407 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 408 including a hard disk, etc.; and a communication section 409 including a network interface card such as a LAN (Local Area Network) card, a modem, etc. The communication section 409 performs communication processing via a network such as the Internet. A drive 410 is also connected to the I / O interface 405 as needed. A removable medium 411, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 410 as needed so that a computer program read therefrom is installed into the storage section 408 as needed.
[0110] In particular, according to an embodiment of the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present application includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a computer program for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through a communication section 409, and / or installed from a removable medium 411. When the computer program is executed by a central processing unit (CPU) 401, various functions defined in the system of the present application are executed.
[0111] It should be noted that the computer-readable medium shown in the embodiment of the present application may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium may be, for example, - but not limited to - an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), a flash memory, an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present application, a computer-readable storage medium may be any tangible medium containing or storing a program, which may be used by an instruction execution system, device or device or used in combination with it. In the present application, a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, wherein a computer-readable computer program is carried. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. Computer-readable signal media may also be any computer-readable medium other than computer-readable storage media, which may send, propagate, or transmit programs for use by or in conjunction with an instruction execution system, apparatus, or device. The computer program contained on the computer-readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.
[0112] The flowchart and block diagram in the accompanying drawings illustrate the possible architecture, functions and operations of the system, method and computer program product according to various embodiments of the present application. Wherein, each box in the flowchart or block diagram can represent a module, a program segment, or a part of the code, and the above-mentioned module, program segment, or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flowchart, and the combination of boxes in the block diagram or flowchart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0113] The units involved in the embodiments described in this application may be implemented by software or hardware, and the units described may also be set in a processor. The names of these units do not, in some cases, constitute limitations on the units themselves.
[0114] As another aspect, the present application also provides a computer-readable medium, which may be included in the electronic device described in the above embodiment; or may exist independently without being assembled into the electronic device. The above computer-readable medium carries one or more programs, and when the above one or more programs are executed by an electronic device, the electronic device implements the method described in the above embodiment.
[0115] It should be noted that, although several modules or units of the equipment for action execution are mentioned in the above detailed description, this division is not mandatory. In fact, according to the embodiments of the present application, the features and functions of two or more modules or units described above can be embodied in one module or unit. On the contrary, the features and functions of one module or unit described above can be further divided into being embodied by multiple modules or units.
[0116] Through the description of the above implementation methods, it is easy for those skilled in the art to understand that the example implementation methods described here can be implemented by software or by combining software with necessary hardware. Therefore, the technical solution according to the implementation methods of the present application can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, and includes several instructions to enable a computing device (which can be a personal computer, a server, a touch terminal, or a network device, etc.) to execute the method according to the implementation methods of the present application.
[0117] Those skilled in the art will readily appreciate other embodiments of the present application after considering the specification and practicing the embodiments disclosed herein. The present application is intended to cover any variations, uses or adaptations of the present application, which follow the general principles of the present application and include common knowledge or customary technical means in the art that are not disclosed in the present application.
[0118] It should be understood that the present application is not limited to the precise structures that have been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present application is limited only by the appended claims.
Claims
1. A dynamic intrusion detection method based on point cloud data, characterized in that: include: Acquire a predetermined number of frame point clouds collected for the target scene; Perform background point cloud recognition based on the predetermined number of frame point clouds to obtain background point clouds corresponding to static objects in the target scene, wherein the background point clouds are determined by common points between any two of the predetermined number of frame point clouds; Determining, according to the background point cloud and the point cloud newly collected for the target scene, a foreground point cloud existing in the newly collected point cloud; Clustering is performed on the foreground point clouds to obtain clusters corresponding to the dynamic objects in the target scene.
2. The method according to claim 1, characterized in that Performing background point cloud recognition according to the predetermined number of frame point clouds to obtain background point clouds corresponding to static objects in the target scene includes: For each frame point cloud in the predetermined number of frame point clouds, determining the common points between the frame point cloud and other frame point clouds; The common points between any two of the predetermined number of frame point clouds are merged and deduplicated to obtain a background point cloud corresponding to the static object in the target scene.
3. The method according to claim 1, characterized in that The predetermined number is three frames, and background point cloud recognition is performed based on the predetermined number of frame point clouds to obtain background point clouds corresponding to static objects in the target scene, including: Assume that the three frames of point clouds are point cloud A, point cloud B and point cloud E respectively, subtract the point cloud A from the point cloud B to obtain the additional point cloud C of the point cloud A relative to the point cloud B, subtract the point cloud A from the point cloud B to obtain the additional point cloud D of the point cloud B relative to the point cloud A, subtract the point cloud E from the point cloud C to obtain the additional point cloud F of the point cloud C relative to the point cloud E, subtract the point cloud E from the point cloud D to obtain the additional point cloud G of the point cloud D relative to the point cloud E, subtract the point cloud G from the point cloud B to obtain the additional point cloud H of the point cloud B relative to the point cloud G, subtract the point cloud F from the point cloud A to obtain the additional point cloud I of the point cloud A relative to the point cloud F, add the point cloud H and the point cloud I and remove the duplicates to obtain the background point cloud corresponding to the static object in the target scene.
4. The method according to claim 3, characterized in that: The method further comprises: The background point cloud is recognized based on the background point cloud and two frames of point cloud newly acquired for the target scene to update the background point cloud.
5. The method according to claim 1, characterized in that Each frame of the point cloud is obtained by splicing sub-point clouds collected by multiple laser radars for the target scene. Before obtaining a predetermined number of frame point clouds collected for the target scene, the method further includes: The multiple laser radars are time synchronized and calibrated, and the calibration includes coarse alignment and fine alignment.
6. The method according to claim 1, characterized in that After clustering the foreground point clouds to obtain clusters corresponding to the dynamic objects in the target scene, the method further includes: The clusters corresponding to the dynamic objects are highlighted for visual display.
7. The method according to claim 1, characterized in that Obtaining a predetermined number of frame point clouds collected for the target scene, including: At different time intervals, a predetermined number of frame point clouds collected for the target scene are obtained.
8. A dynamic intrusion detection device based on point cloud data, characterized in that: include: An acquisition module, used to acquire a predetermined number of frame point clouds collected for a target scene; A recognition module, configured to perform background point cloud recognition based on the predetermined number of frame point clouds to obtain background point clouds corresponding to static objects in the target scene, wherein the background point clouds are determined by common points between any two of the predetermined number of frame point clouds; A determination module, configured to determine a foreground point cloud existing in the newly acquired point cloud according to the background point cloud and the current point cloud newly acquired for the target scene; The processing module is used to cluster the foreground point clouds to obtain clusters corresponding to the dynamic objects in the target scene.
9. A computer readable medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the method for dynamic intruder detection based on point cloud data as described in any one of claims 1 to 7 is implemented.
10. An electronic device, characterized in that: include: one or more processors; A storage device for storing one or more programs, which, when executed by the one or more processors, enables the one or more processors to implement the dynamic intruder detection method based on point cloud data as described in any one of claims 1 to 7.
