Intrusion detection method and device for security area, computer device and storage medium

By using the first processing core in a field-programmable gate array to generate point cloud data and combining it with the pre-computed set data of the second processing core for real-time spatial determination, the problems of detection latency and high resource consumption in the prior art are solved, and efficient and real-time intrusion detection is achieved.

CN121330619BActive Publication Date: 2026-02-13SHENZHEN BAYTEST TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202511883267.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-12-15
Publication Date
2026-02-13
Estimated Expiration
2045-12-15

AI Technical Summary

Technical Problem

In existing industrial security monitoring systems, intrusion detection relying on software methods using general-purpose processors results in high latency and resource consumption, making it difficult to meet the requirements for real-time performance and accuracy.

Method used

The first and second processing cores in a field-programmable gate array (FPGA) work together. The first core generates point cloud data, and the second core uses pre-computed set data to perform real-time spatial determination, reducing external access and redundant calculations.

Benefits of technology

It improves the real-time performance and stability of intrusion detection, reduces detection latency, and enhances detection accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121330619B_ABST
    Figure CN121330619B_ABST
Patent Text Reader

Abstract

The application discloses an intrusion detection method and device for a safety area, computer equipment and a storage medium. The method comprises the following steps: in a first processing core, the depth values of each pixel point in the received image data to be detected are calculated, and corresponding point cloud data is generated based on the depth values; in the initialization stage of the second processing core, for each safety area preset by a user, the precalculation set data for describing the spatial boundary and the spatial structure of the safety area is calculated according to the spatial parameters of the safety area, and is cached in the on-chip memory; in the detection stage of the second processing core, the point cloud coordinates are extracted from the point cloud data, and whether the point cloud coordinates fall into the corresponding safety area is judged based on the precalculation set data, so that the intrusion detection result of the image data to be detected is obtained. The real-time performance and stability of the intrusion detection can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of image recognition, and in particular to a security area intrusion detection method and device, a computer device and a storage medium. BACKGROUND

[0002] In the current industrial safety monitoring system, in order to determine whether a person or object enters a dangerous area, an external computing device is usually relied on to analyze the data collected by an imaging device. The imaging device generally only provides raw images, and an external processor processes the images and determines whether there is an intrusion behavior according to the processing result.

[0003] The prior art usually uses a software program running on a general-purpose processor to read image data continuously, perform necessary data processing, and then make an intrusion determination in combination with preset security area information. This type of method is simple to implement and easy to modify logic, so it is widely used in most scenarios.

[0004] However, this software method that relies entirely on a general-purpose processor has a long overall processing link, slow response speed, and high hardware resource occupation. When the image data volume is large or high-frequency determination is required, the computing and data interaction pressure of the processor increases significantly, making it difficult to meet the real-time intrusion detection requirements. At the same time, repeated reading and writing of data in the memory between steps is required, resulting in large system delay and insufficient reliability, which is not suitable for use in industrial scenarios that require high real-time performance and high certainty.

[0005] Therefore, how to provide a security area intrusion detection method that effectively reduces detection delay and improves detection accuracy in an industrial scenario has become a technical problem that needs to be solved in the field. SUMMARY

[0006] Therefore, it is necessary to provide a security area intrusion detection method, device, computer device and storage medium that effectively reduces detection delay and improves detection accuracy.

[0007] A security area intrusion detection method, applied to a field programmable logic gate array, the field programmable logic gate array comprising a first processing core, a second processing core and an on-chip memory, the method comprising:

[0008] In the first processing core, the depth values of each pixel point in the received image data to be detected are calculated, and corresponding point cloud data is generated based on the depth values;

[0009] In the initialization stage of the second processing core, for each security area preset by a user, according to the spatial parameters of the security area, pre-computed set data for describing the spatial boundary and spatial structure of the security area is calculated and cached in the on-chip memory.

[0010] In the detection stage of the second processing core, point cloud coordinates are extracted from the point cloud data, and it is determined whether the point cloud coordinates fall into a corresponding safety area based on the pre-computed set data, to obtain an intrusion detection result of the image data to be detected.

[0011] Optionally, the calculation of the depth value of each pixel point in the received image data to be detected comprises:

[0012] Based on the sampling intensity information in the image data to be detected, infrared intensity calculation processing is performed to obtain intensity data of each pixel point;

[0013] Based on the intensity data and the neighborhood pixel information of each pixel point, filter preprocessing is performed to obtain preprocessed image data;

[0014] Based on the multi-phase sampling information in the preprocessed image data, phase calculation processing is performed to obtain phase data of each pixel point;

[0015] Based on the phase data and a preset imaging distance model, depth solving processing is performed to obtain the depth value of each pixel point.

[0016] Optionally, the filter preprocessing based on the intensity data and the neighborhood pixel information of each pixel point to obtain preprocessed image data comprises:

[0017] Based on a preset row buffer structure, the pixel data of the current processing row and its adjacent multiple rows in the image data to be detected are buffered to obtain pixel neighborhood data for convolution processing;

[0018] Based on the pixel neighborhood data, sliding convolution processing is performed according to a preset filter core to obtain the preprocessed image data.

[0019] Optionally, the phase calculation processing based on the multi-phase sampling information in the preprocessed image data to obtain phase data of each pixel point comprises:

[0020] A phase lookup table is extracted from the on-chip memory;

[0021] Based on the phase lookup table, the multi-phase sampling information is indexed and mapped to obtain initial phase data of each pixel point;

[0022] Based on the initial phase data and a normalization parameter related to the pixel point, piecewise approximation compensation processing is performed to obtain compensated phase data.

[0023] Optionally, the spatial parameters include a center parameter for representing a spatial position of the safety region, a scale parameter for representing a geometric size of the safety region, and an orientation parameter for representing a spatial posture of the safety region, and the calculation of the pre-computed set data for describing the spatial boundary of the safety region and the spatial structure based on the spatial parameters of the safety region includes:

[0024] Based on the center parameter, the scale parameter, and the orientation parameter, a plurality of spatial vertices of the safety region are calculated and processed to obtain vertex data for describing a spatial range of the safety region;

[0025] Based on the vertex data, a geometric derivation is performed on each spatial face or spatial edge constituting the safety region to obtain directional vector data for representing a spatial structure of the safety region;

[0026] Based on the directional vector data, a pre-processing is performed on the spatial boundary of the safety region to obtain pre-computed coefficient data for accelerating spatial position judgment;

[0027] Based on the vertex data, the directional vector data, and the pre-computed coefficient data, the pre-computed set data is constructed.

[0028] Optionally, the pre-computed set data includes the vertex data, the directional vector data, and the pre-computed coefficient data, and the judgment of whether the point cloud coordinates fall within the corresponding safety region based on the pre-computed set data to obtain the intrusion detection result of the to-be-detected image data includes:

[0029] Based on the vertex data, a first spatial position judgment is performed on the point cloud coordinates to obtain candidate point cloud coordinates;

[0030] Based on the candidate point cloud coordinates and the directional vector data and the pre-computed coefficient data, a second spatial position judgment is performed to obtain a spatial position judgment result of each point cloud coordinate, and the judgment accuracy of the second spatial position judgment is higher than that of the first spatial position judgment;

[0031] Based on the spatial position judgment result, the intrusion detection result of the to-be-detected image data is determined.

[0032] Optionally, the point cloud data between the first processing core and the second processing core is transmitted in a streaming manner, and the streaming manner is that, after the point cloud data is generated, the first processing core outputs in a pixel order, and the second processing core synchronously receives and processes point by point, and the entire frame of point cloud data does not need to be buffered during the entire intrusion detection process.

[0033] An intrusion detection device of a safety area, the device is applied to a field programmable logic gate array, the field programmable logic gate array comprises a first processing core, a second processing core and an on-chip memory, and the device comprises:

[0034] A generation module is configured to calculate, in the first processing core, a depth value of each pixel point in received image data to be detected, and generate corresponding point cloud data based on the depth value;

[0035] A cache module is configured to, in an initialization stage of the second processing core, calculate, for each safety area preset by a user, pre-computed set data for describing a spatial boundary and a spatial structure of the safety area according to spatial parameters of the safety area, and cache the pre-computed set data in the on-chip memory;

[0036] A judgment module is configured to, in a detection stage of the second processing core, extract a point cloud coordinate in the point cloud data, and judge, based on the pre-computed set data, whether the point cloud coordinate falls into a corresponding safety area, to obtain an intrusion detection result of the image data to be detected.

[0037] A computer device comprises a memory, a processor and computer readable instructions stored in the memory and executable on the processor, and the processor implements the above-mentioned safety area intrusion detection method when executing the computer readable instructions.

[0038] A readable storage medium has computer readable instructions stored thereon, and the computer readable instructions are executed by a processor to implement the above-mentioned safety area intrusion detection method.

[0039] The above-mentioned safety area intrusion detection method, device, computer device and storage medium calculate, in the first processing core, a depth value of each pixel point in received image data to be detected, and generate corresponding point cloud data based on the depth value; in the initialization stage of the second processing core, calculate, for each safety area preset by a user, pre-computed set data for describing a spatial boundary and a spatial structure of the safety area according to spatial parameters of the safety area, and cache the pre-computed set data in the on-chip memory; in the detection stage of the second processing core, extract a point cloud coordinate in the point cloud data, and judge, based on the pre-computed set data, whether the point cloud coordinate falls into a corresponding safety area, to obtain an intrusion detection result of the image data to be detected. The first processing core and the second processing core are arranged on the same field programmable logic gate array, so that image depth calculation, point cloud generation and spatial judgment based on pre-computed safety area set data are completed along a unified on-chip flow link in sequence, thereby reducing external access and repeated calculation, shortening a data processing path, and improving real-time performance and stability of intrusion detection. BRIEF DESCRIPTION OF DRAWINGS

[0040] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the following will briefly introduce the drawings needed to be used in the description of the embodiments of the present application. Obviously, the drawings in the following description only some of the embodiments of the present application, and for those skilled in the art, other drawings can also be obtained without creative labor.

[0041] Figure 1 is a flowchart of a security area intrusion detection method in an embodiment of the present application;

[0042] Figure 2 is a structural diagram of a security area intrusion detection device in an embodiment of the present application;

[0043] Figure 3 is a schematic diagram of a computer device in an embodiment of the present application. DETAILED DESCRIPTION

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

[0045] In an embodiment, as shown in Figure 1 A security area intrusion detection method is provided. The method is applied to a field programmable logic gate array, which includes a first processing core, a second processing core and an on-chip memory. The method includes the following steps.

[0046] 101. In the first processing core, the depth values of each pixel point in the received image data to be detected are calculated, and corresponding point cloud data is generated based on the depth values.

[0047] In the embodiments of the present application, the above method is applied to a field programmable logic gate array, which integrates a first processing core and a second processing core that can be independently configured, and is equipped with an on-chip memory for storing intermediate data during operation. The first processing core can be a hardware computing unit for performing image processing and distance solving, such as an imaging processing module constructed based on a logic array and a digital signal processing unit; the second processing core is used for performing spatial judgment related calculations, which can be realized as a dedicated geometric judgment circuit according to needs. The on-chip memory can be a block RAM or a super RAM inside the FPGA, which is used to store pre-generated region parameters, lookup tables or temporary data.

[0048] The image data to be detected, serving as input data to the first processing core, is a general term for the data output by Time-of-Flight (ToF) 3D imaging sensors. This "image data to be detected" can have various specific forms and is not limited to a single fixed format, for example:

[0049] On the one hand, the image data to be detected can be raw, unprocessed data (RAW data) directly output by the sensor. This RAW data is usually transmitted in the form of a MIPI interface and contains modulated light intensity sample values ​​of multiple phase channels. It is the underlying data that is closest to the physical measurement results.

[0050] On the other hand, the image data to be detected can also be multi-channel image data obtained after preliminary decoding and reconstruction of RAW data. For example, multiple MIPIRAW12 data can be parsed and restored into a two-dimensional image structure with 16 phase sampling channels for subsequent processing such as filtering and phase calculation.

[0051] Furthermore, in some embodiments, the image data to be detected may also refer to the infrared intensity image formed by processing the above-mentioned multi-channel image through the intensity calculation module, which is suitable for scenarios where depth calculation is performed with infrared brightness as input.

[0052] The first processing core receives the image data to be detected (assuming the image data is RAW data), and then analyzes and restores the RAW data into a two-dimensional image structure with 16 phase sampling channels. It then calculates the depth value pixel by pixel and immediately converts the depth values ​​into three-dimensional coordinates according to a predetermined imaging model, thus forming point cloud data. After the point cloud is generated, the first processing core does not wait for the entire frame of data to be processed, but instead outputs the three-dimensional coordinates of each point in real time, pixel by pixel. The second processing core receives the data point by point in a synchronous manner and performs subsequent spatial determination. In this process, each point cloud data can be transmitted and processed immediately after generation, without the need for centralized caching of the entire frame of point cloud. This reduces data transfer and waiting time, which is beneficial for maintaining a continuous, low-latency processing flow.

[0053] Specifically, the calculation of the depth value can adopt any one of known methods such as infrared light ranging, active multi-phase sampling ranging, or phase difference-based time modulation ranging. For example, in the case of phase modulation imaging, the imaging device outputs multiple images with different modulation phases, and the first processing core can perform difference, amplitude extraction or phase solving on the images to obtain distance information corresponding to each pixel point. For another example, in the case of structured light ranging, the imaging device generates an image with a stripe or coded information, and the first processing core can derive the depth value of the pixel point by calculating the stripe position offset.

[0054] The generation of the point cloud can adopt a common imaging geometric back-projection method. Specifically, the first processing core combines the depth value corresponding to each pixel point with the coordinate of the pixel point in the two-dimensional image according to the intrinsic and extrinsic parameters of the imaging device, and calculates the position of the pixel point in the three-dimensional coordinate system through a preset projection model, for example, converts the image coordinate into a three-dimensional point in the camera coordinate system by using parameters such as focal length, principal point offset and pixel scale. The conversion process usually involves several multiplication and addition operations and scaling, which is suitable for being executed in a pipeline manner by the parallel operation unit in the FPGA, so that the corresponding three-dimensional point coordinates can be obtained immediately when the depth value is just obtained.

[0055] 102、In the initialization stage of the second processing core, for each security region preset by the user, the pre-computed set data for describing the spatial boundary and the spatial structure of the security region is calculated according to the spatial parameters of the security region, and is cached in the on-chip memory.

[0056] In the embodiment of the application, the second processing core will perform an initialization process before formally performing intrusion judgment. The initialization stage can be understood as a preparation process of organizing, deriving and structuring the security region related information configured by the user. The process is usually performed when the system is started, the parameters are updated or the security region is changed, and does not belong to the real-time judgment path, so that sufficient calculation steps are allowed to be used to exchange the efficiency of the subsequent detection stage.

[0057] Each security region can be a three-dimensional space range set by the user according to the actual application scene, and is used to represent an area that is prohibited to enter or needs to be monitored. For example, the security region can be a cuboid, a protection cover shape installed at an inclination, or an arbitrary regular solid region after rotation, the shape and position of which are manually configured by the user according to the device layout, or are dynamically issued by the upper system according to the running condition.

[0058] The spatial parameters of the safety region can be information for representing the position, size and attitude of the region in three-dimensional space. For example, the center parameters representing the center position of the region, the size parameters representing the length, width and height of the region, and the attitude parameters for representing the orientation or inclination of the region, etc. can be included. The above parameters can be input to the system in a structured manner for further derivation of the spatial shape of the region.

[0059] The pre-computed set data for describing the spatial boundary and structure of the safety region can be a set of geometric feature data calculated according to the above spatial parameters, which is directly called in the detection stage. For example, the pre-computed set data can include vertex coordinate data representing six faces or multiple boundaries of the region, direction vector data for describing the direction of the boundary, and several geometric coefficients or scaling coefficients for accelerating the calculation in the spatial judgment. The above data is generated once in the initialization stage and stored in the on-chip memory, so that in the subsequent real-time judgment process, the geometric quantities do not need to be repeatedly calculated, and the fast judgment can be directly completed, thereby greatly reducing the real-time operation burden.

[0060] Specifically, the generation of the pre-computed set data can be as follows: first, the second processing core calculates a plurality of vertex coordinates of the safety region in three-dimensional space according to the center parameters, the size parameters and the orientation parameters of the safety region. For example, for a cuboid safety region, eight corner point offset vectors relative to the center point can be first calculated according to the length, width and height, and then each corner point is mapped to a unified coordinate system by combining the rotation relationship corresponding to the orientation parameter, to obtain vertex data for describing the spatial range of the safety region. Then, based on the above vertex data, the geometric derivation of each spatial face or spatial edge constituting the safety region is performed, for example, the edge vector is obtained by the difference between adjacent vertices, and the direction vector data for representing the direction relationship of each face is calculated. Further, combined with the direction vector data, a plurality of coefficients or intermediate quantities repeatedly used in the spatial position judgment are pre-calculated in the initialization stage, for example, the normalization parameters, projection coefficients or scalar factors related to the direction vector, and the above results are uniformly arranged as pre-computed coefficient data. The vertex data, direction vector data and pre-computed coefficient data generated through the above steps jointly constitute the pre-computed set data, and are written into the on-chip memory to provide directly usable geometric judgment basis for the subsequent intrusion detection stage.

[0061] 103、In the detection stage of the second processing core, the point cloud coordinates are extracted from the point cloud data, and it is judged whether the point cloud coordinates fall within the corresponding safety region based on the pre-computed set data, to obtain the intrusion detection result of the to-be-detected image data.

[0062] In the embodiment of the present application, the detection stage can be understood as a process of real-time spatial position determination of the first processing core for the point cloud data continuously output by the first processing core, using the pre-computed set data generated in the initialization stage and stored in the on-chip memory. At this time, the spatial parameters and geometric features of the safety area are fixed, and the second processing core no longer updates the related parameters, but focuses on the determination of the continuously incoming point cloud coordinates.

[0063] The point cloud coordinates can be three-dimensional coordinate points converted from the depth values of the pixels in the image data to be detected by the first processing core, and each point cloud coordinate corresponds to the position of a pixel in the image data to be detected in a unified spatial coordinate system, which can be represented in the form of (x, y, z), for example. When the second processing core receives the point cloud data stream, it extracts each point cloud coordinate in sequence according to the output order of the point cloud data, and compares it with the pre-computed set data corresponding to the safety area. In the specific determination process, the vertex data in the pre-computed set data can be used to preliminarily determine the range of the point cloud coordinates to eliminate points obviously outside the safety area; for the candidate points determined by the preliminary determination, the direction vector data and the pre-computed coefficient data in the pre-computed set data are combined to perform more detailed spatial position calculation to determine whether the point cloud coordinates meet the constraint condition of falling within the safety area.

[0064] By sequentially performing the above determination process on each point cloud coordinate in the point cloud data, the determination result of whether each point belongs to the inside of any safety area can be obtained. According to the above determination result, the intrusion detection result corresponding to the image data to be detected can be further generated, for example, the corresponding positions in the image are marked with an intrusion mark, or it is counted whether there is an intrusion behavior in the current frame and the area where the intrusion occurs, to provide a basis for subsequent alarm logic or linkage control.

[0065] In the embodiment of the present application, in the first processing core, the depth values of each pixel point in the image data to be detected are calculated, and the corresponding point cloud data is generated based on the depth values; in the initialization stage of the second processing core, for each safety area preset by the user, the pre-computed set data for describing the spatial boundary and spatial structure of the safety area is calculated based on the spatial parameters of the safety area, and is buffered in the on-chip memory; in the detection stage of the second processing core, the point cloud coordinates are extracted from the point cloud data, and it is judged whether the point cloud coordinates fall within the corresponding safety area based on the pre-computed set data, to obtain the intrusion detection result of the image data to be detected. The first processing core and the second processing core are arranged on the same field programmable logic gate array, so that the image depth calculation, point cloud generation and spatial determination based on the pre-computed safety area set data are completed in sequence along the unified on-chip flow link, thereby reducing external access and repeated calculation, shortening the data processing path, and improving the real-time performance and stability of the intrusion detection.

[0066] It can be understood that in the specific embodiments of the present application, data related to the to-be-detected image data, the safety area, etc. are involved, and when the embodiments in the present application are applied to specific products or technologies, the user's permission or consent needs to be obtained, and the collection, use and processing of the related data and the construction and use of the programmable logic gate array need to comply with the relevant laws, regulations and standards of the relevant countries and regions.

[0067] Optionally, in the step of calculating the depth value of each pixel point in the received to-be-detected image data, infrared intensity calculation processing can also be performed based on the sampling intensity information in the to-be-detected image data to obtain intensity data of each pixel point; filtering preprocessing is performed based on the intensity data and the neighborhood pixel information of each pixel point to obtain preprocessed image data; phase calculation processing is performed based on the multi-phase sampling information in the preprocessed image data to obtain phase data of each pixel point; and depth solving processing is performed based on the phase data and a preset imaging distance model to obtain the depth value of each pixel point.

[0068] In the embodiments of the present application, the to-be-detected image data output by the imaging device generally contains sampling intensity information under multiple modulation phases, which can be first input to an infrared intensity calculation module to obtain intensity data reflecting the brightness and exposure state of the pixel by differentiating or extracting the amplitude of adjacent phase samples. On this basis, in order to suppress imaging noise and improve the stability of subsequent phase solving, the neighborhood pixel information of each pixel point can be used to generate smooth preprocessed image data through Gaussian filtering or other methods, such as using a configurable size convolution kernel to perform stream filtering processing on the image in the FPGA to reduce the interference of random noise.

[0069] After obtaining the preprocessed image data, the multi-phase sampling information of each pixel point can be extracted therefrom according to the modulation mode and input to a phase calculation module. The module can use a lookup table combined with piecewise linear approximation to quickly solve the phase, so as to reduce the hardware operation burden and ensure that the phase calculation can be continuously completed in a streaming manner. Subsequently, a depth solving module converts the phase value to the corresponding depth value according to the phase data and a preset imaging distance model, such as mapping the phase information to the actual spatial distance according to the modulation wavelength, baseline distance or calibration parameters, to realize the calculation of the depth information of each pixel point. The depth value obtained by the above steps will be used for subsequent point cloud generation and intrusion judgment processes.

[0070] In a specific implementation, before performing the infrared intensity calculation processing, the MIPI data parsing module can also be set in the first processing core to restore the format and channel expansion of the original serial data stream output by the imaging device. Specifically, the imaging device can output a RAW12 format data stream through a multi-channel MIPI interface, and the MIPI data parsing module in the first processing core performs timing recovery and word alignment on the differential serial data of each channel, re-frames the received multi-channel MIPI data in the order of frame, row and pixel, and restores the RAW12 data to the pixel-level grayscale value according to the preset packing format. In the scenario of multi-channel parallel input, the MIPI data parsing module can also demultiplex the 8-channel input data into several internal image channels according to the preset rule, for example, expand it into 16 parallel processing image data channels, so that the subsequent infrared intensity calculation, filter preprocessing and phase calculation modules can perform synchronous processing on multiple pixel points in a highly parallel and pipelined manner inside the FPGA, thereby improving the overall data throughput.

[0071] Optionally, in the step of performing filter preprocessing based on the intensity data and the neighborhood pixel information of each pixel point to obtain preprocessed image data, the pixel data of the current processing row and its adjacent multiple rows in the to-be-detected image data can also be buffered based on a preset row buffer structure to obtain pixel neighborhood data for convolution processing; and the preprocessed image data is obtained by performing sliding convolution processing on the pixel neighborhood data according to a preset filter kernel.

[0072] In the embodiment of the application, the preset row buffer structure can be composed of a plurality of row pixel buffer units, which are used to always retain the pixel data of the current processing row and its adjacent rows above and below in the case of row-priority input of the image.

[0073] Specifically, when the to-be-detected image data is input into the first processing core row by row, a newly arrived row of pixels is written into the row buffer structure, while the earlier rows are sequentially moved backward or covered, so that continuous multiple rows of pixel data around the current processing row can be obtained on-chip at any time. For scenarios that require the use of filter kernels of different sizes such as 3*3 or 5*5, the number of rows retained in the row buffer structure can be configured according to the height of the filter kernel to ensure that the upper and lower neighborhoods required for convolution operation can be obtained locally.

[0074] On this basis, a sliding window can be constructed on the row buffer structure to extract local neighborhood data pixel by pixel in the horizontal direction. When processing a certain pixel, the sliding window reads a pixel block matching the size of the filter kernel from the row buffer structure at a time as the neighborhood data of the current pixel input to the convolution unit; subsequently, as the image advances column by column in the horizontal direction, the sliding window only needs to update a column of new pixels, and the data of the remaining columns can be internally multiplexed, thereby reducing the data reading and moving overhead.

[0075] For pixels located at the edge of the image, the padding can be performed by introducing mirror or repeating boundary rows, columns in the address mapping of the row buffer structure, so that the edge pixels can also obtain a complete neighborhood window without interrupting the overall pipeline. In this way, the padding of the row buffer structure, the updating and the convolution processing of the sliding window can be strictly synchronized with the image input. After the initial padding is completed, a filtered pixel value can be output every clock cycle, without the need to cache the entire image to the external memory, thereby reducing the access bandwidth requirement and avoiding the filtering step from becoming a performance bottleneck of the entire data flow.

[0076] For example, the row buffer structure can be set as a two-dimensional buffer array composed of a plurality of storage units with the same depth. The number of rows can be configured to meet the value required by the filter kernel height. For example, when a 5x5 filter kernel is used, the row buffer can be configured to store at least the pixel data of the current processing row and the two rows above and below it, totaling 5 rows. In actual implementation, the structure can be allocated on-chip storage space with a depth of ROWS_PER_BATCH+4, so that it can meet the needs of multi-row caching and adapt to the streaming input mode of loading data in batches. When the image pixels enter the first processing core in sequence by row, the row buffer structure automatically writes each received row of data to the latest row position, and the original row moves down or is overwritten, so that the current row is always in the middle position of the buffer structure.

[0077] On this basis, a sliding window matching the size of the filter kernel can also be constructed to extract the neighborhood data required for convolution in a pixel-by-pixel moving manner in the horizontal direction. For example, when a 5x5 filter kernel is used, the sliding window can read 5 consecutive columns of pixels from the 5 rows of the row buffer structure at a time to form a 25-element convolution input. When the window moves horizontally, only the rightmost column of pixel data needs to be replaced, and other column data can be directly reused to reduce the amount of data movement. For pixels located at the edge of the image, mirror extension logic can be added to the address mapping of the row buffer structure. For example, when the read column index exceeds the left boundary, it can be mapped to the corresponding internal column index, so that a complete 5x5 window can also be constructed at the edge position without interrupting the pipeline.

[0078] Through the cooperation of the above-mentioned row buffer structure and sliding window, the filtering module can output a convolution result pixel every clock cycle after the row buffer padding is completed, realizing true continuous streaming filtering without the need to cache the entire image, thereby reducing the off-chip bandwidth requirement and avoiding the filtering process from becoming a bottleneck in the processing link.

[0079] Optionally, in the step of performing phase calculation processing based on the multi-phase sampling information in the pre-processed image data to obtain phase data of each pixel point, a phase lookup table can also be extracted in the on-chip memory; based on the phase lookup table, the multi-phase sampling information is indexed and mapped to obtain initial phase data of each pixel point; based on the initial phase data and a normalization parameter related to the pixel point, segmented approximate compensation processing is performed to obtain compensated phase data.

[0080] In the embodiment of the application, the phase calculation module preferably uses a pre-stored phase lookup table on the chip to replace the complex arctangent operation directly performed in hardware. In the system initialization or configuration phase, the corresponding phase values can be calculated in the discrete input interval according to the characteristics of the target phase function, and the above-mentioned phase values are solidified as a plurality of lookup table items and stored in the on-chip memory. When the multi-phase sampling information of a certain pixel point is obtained from the pre-processed image data, the amplitude ratio or equivalent parameter used for phase solving can be converted first, and then normalized and scaled to map it to the index range of the lookup table, and the corresponding initial phase data is directly read from the phase lookup table, thereby avoiding the execution of large-scale multiplication and division or inverse trigonometric function operations in the data path.

[0081] In order to further improve the accuracy of phase calculation, after obtaining the initial phase data, segmented approximate compensation processing can also be performed in combination with a normalization parameter related to the pixel point. For example, according to the normalized amplitude of the pixel, the interval or other preset calibration parameters, one or a small amount of addition, subtraction and scaling operations can be performed on the initial phase value output by the lookup table to correct the error caused by the discretization of the lookup table, which is equivalent to adding a layer of fine-grained linear or segmented linear correction on the basis of the lookup table.

[0082] In the above manner, the phase calculation process is simplified to a lookup table operation and a small amount of simple arithmetic operations in hardware, which not only ensures that the phase result meets the accuracy requirement of deep solving, but also significantly reduces the consumption of operation resources and calculation delay, and is suitable for being executed in a pixel-level continuous manner in the streaming processing architecture of the application.

[0083] For example, the phase lookup table can be set as a single-dimensional array structure with a length of 1024, and the index range is 0-1023. The lookup table can be selected according to the mathematical characteristics of the target arctangent function atan2 during the system initialization stage, and the input amplitude angle interval is sampled at equal intervals, and the 1024 phase values sampled are sequentially stored in the on-chip memory according to the index order. For example, the normalized interval of the input ratio a / b can be segmented, and the discrete points are discretized at 1024 equal steps, and the arctangent results (units can be radians or degrees) corresponding to the discrete points are written into the lookup table. When the system is running, after the phase calculation module receives the multi-phase sampling data of a certain pixel point, the difference between two adjacent phase samples can be calculated as the IQ component, and then the difference is mapped to the index interval of [0, 1023] according to the preset normalization rule. For example, according to the size of the absolute value of the IQ component, the corresponding quadrant is first determined, and then a integer index value between 0 and 1023 is obtained through proportional conversion to be used as the read address of the lookup table.

[0084] After reading the corresponding initial phase data in the lookup table, a piecewise linear compensation can also be performed in combination with the normalized amplitude value of the pixel point. The compensation parameters can be calculated in advance during the initialization stage and stored in the on-chip memory, for example, the slope coefficient and the offset coefficient corresponding to each phase interval are established, and during the running, the corresponding compensation coefficient is selected according to the index interval in which the pixel point falls, and the lookup table result is modified through a linear operation to make the phase value output by the discretized lookup table closer to the true result. Through the combination of the above lookup table and compensation, the phase calculation process can maintain a single cycle or approximate single cycle readout characteristics in hardware, and a small amount of multiplication and addition is used to correct the error, thereby balancing the speed and accuracy.

[0085] Optionally, the spatial parameters include a center parameter for representing a spatial position of the safety area, a scale parameter for representing a geometric size of the safety area, and an orientation parameter for representing a spatial attitude of the safety area. In the step of calculating the pre-computed set data for describing the spatial boundary and the spatial structure of the safety area according to the spatial parameters of the safety area, the center parameter, the scale parameter and the orientation parameter can also be used to calculate and process a plurality of spatial vertices of the safety area to obtain vertex data for describing a spatial range of the safety area; based on the vertex data, a geometric derivation processing is performed on each spatial face or spatial edge constituting the safety area to obtain directional vector data for representing the spatial structure of the safety area; based on the directional vector data, a preprocessing is performed on the spatial boundary of the safety area to obtain pre-computed coefficient data for accelerating the spatial position judgment; and based on the vertex data, the directional vector data and the pre-computed coefficient data, the pre-computed set data is constructed.

[0086] In the embodiments of the present application, in order to realize the rapid determination of the safety area of any spatial posture, the spatial parameters of the safety area can be used to comprehensively expand and structure the geometric boundaries in the initialization stage. The center parameter in the spatial parameters can be used to determine the reference position of the safety area in the three-dimensional coordinate system; the scale parameters such as length, width and height can be used to describe the extension range of the safety area in three dimensions; and the orientation parameter can be used to reflect the rotation posture of the safety area relative to the reference coordinate system, such as the rotation angle around each coordinate axis. Based on the above parameters, the positions of all the spatial vertices of the safety area in the unified coordinate system can be calculated through mathematical transformation. For example, for a safety area in the form of a cuboid, the offset of the eight corner points relative to the center position can be determined according to the scale parameters, and then the offset is converted into the world coordinate system by combining the rotation relationship described by the orientation parameters, so as to obtain the complete vertex data.

[0087] After obtaining the vertex data, the geometric derivation of each plane or edge constituting the boundary of the safety area can be further performed, the edge vector is obtained by the difference between adjacent vertices, and the direction vector representing the spatial orientation of each boundary surface is calculated according to the edge vector. The direction vector can be used to represent the direction attribute of the boundary surface during the determination, and provide direction information support for subsequent spatial position determination.

[0088] In addition, further preprocessing can also be performed on the direction vector data, such as calculating a plurality of coefficients used for accelerated judgment in spatial determination, including the normal vector obtained based on the cross product of the edge vector, the scalar coefficient used for vector projection or matrix transformation, or the reciprocal of the determinant used in the ray-plane intersection test. The above coefficients are frequently used in the determination stage, so they are calculated in advance in the initialization stage, which can reduce the real-time calculation amount. Finally, the vertex data, direction vector data and pre-calculated coefficient data can be combined into a complete pre-calculated set data, and stored in the on-chip memory, so that the system can quickly complete the spatial position determination based on the above pre-generated geometric features without repeating the complex geometric derivation in the subsequent intrusion detection stage.

[0089] For example, when the safety area is a cuboid with an arbitrary orientation, the eight standard vertex positions of the cuboid in its own coordinate system can be first determined according to the center parameter and the scale parameter, such as the left front upper, right front upper, left front lower, right front lower, left rear upper, right rear upper, left rear lower and right rear lower positions. Then, the above vertices are subjected to three-dimensional rotation transformation according to the rotation relationship described by the orientation parameter, and the rotation result is translated to the position determined by the center parameter, so as to obtain the coordinate data of the eight vertices in the unified world coordinate system. On this basis, the difference between each vertex and its adjacent vertex can be calculated to obtain the edge vector of the six faces of the cuboid, for example, each face can be represented by two non-parallel edge vectors.

[0090] Further, in order to facilitate efficient judgment of whether a space point is located inside the cube in the intrusion detection stage, the normal vector of the corresponding face can also be calculated based on the above edge vectors, and the normal vector can be obtained by the cross product of two edge vectors. When using the Moller-Trumbore intersection test method to determine the space of the point cloud coordinates, a plurality of vector operations need to be performed on the relative position of the point to the face, including the dot product operation between the normal vector and the direction of the point to be tested, and the determinant solution composed of a plurality of vector cross product results. In order to reduce the amount of calculation in real-time calculation, the reciprocal of the determinant of each face can be calculated in the initialization stage, and stored in the pre-computed set data together with the corresponding normal vector and edge vector, so that when the Moller-Trumbore determination is performed in the detection stage, the normal vector or the determinant value does not need to be calculated again, and only one multiplication operation is needed to complete the related judgment by using the pre-computed reciprocal, thereby significantly reducing the calculation overhead of each point cloud coordinate.

[0091] Optionally, the pre-computed set data includes vertex data, direction vector data, and pre-computed coefficient data. In the step of judging whether the point cloud coordinates fall into the corresponding safety region based on the pre-computed set data to obtain the intrusion detection result of the to-be-detected image data, the first space position determination processing can be performed on the point cloud coordinates based on the vertex data to obtain candidate point cloud coordinates; the second space position determination processing can be performed based on the candidate point cloud coordinates and the direction vector data and the pre-computed coefficient data to obtain the space position determination result of each point cloud coordinate, and the determination accuracy of the second space position determination processing is higher than that of the first space position determination processing; and the intrusion detection result of the to-be-detected image data can be determined based on the space position determination result.

[0092] In the embodiment of the present application, in order to improve the overall efficiency of safety region determination, the space position of each input point cloud coordinate can be determined in two stages in the detection stage. The first space position determination processing can construct an axis-aligned bounding box (AABB) of the safety region based on the vertex data in the pre-computed set data, for example, the minimum and maximum values are calculated according to the x, y, and z coordinates of the eight vertices, thereby forming an axis-aligned cube bounding box. When the point cloud coordinates reach the second processing core, it can be first judged whether the three-dimensional coordinates of the point are located within the range of the bounding box; if it is obviously located outside the bounding box, it can be directly excluded without entering more complex geometric calculations. Since this judgment only involves a plurality of comparison operations, a large number of point cloud coordinates can be preliminarily screened at a very high speed, thereby effectively reducing the calculation burden of subsequent fine determination.

[0093] For the candidate point cloud coordinates determined by the first spatial position determination processing, a second spatial position determination processing can be further performed in combination with the direction vector data and the pre-computed coefficient data. The second determination can be based on the geometric principle of ray-polygon intersection, for example, using the optimized Moller-Trumbore intersection test method, by operating the ray direction corresponding to the point cloud coordinates with the direction vector, normal vector and pre-computed determinant inverse of each face of the safety region, to determine whether the point is located inside the region. Since the direction vector and determinant inverse of each face have been pre-computed in the initialization stage, the second determination stage does not need to repeatedly perform geometric calculations with large operation amount such as cross product and dot product, but only needs to complete the face-level intersection test through several multiplication and addition operations, so its determination accuracy is higher than that of the first spatial position determination, and it can maintain high processing speed under the condition of streaming data input.

[0094] Finally, according to the determination result obtained by the second spatial position determination processing, it can be determined whether the corresponding point cloud coordinates fall inside the safety region, so as to generate the intrusion detection result corresponding to the input image. For example, when any one point cloud coordinate is determined to be located inside a certain safety region, it can be marked as an intrusion event; if all point cloud coordinates do not fall into the safety region, it is determined that there is no intrusion behavior in the current image.

[0095] Finally, it should be noted that the above field programmable logic gate array overall system adopts a unified data stream interface and a serial hardware organization structure, so that the data transmission between each functional module (such as the MIPI data analysis module for restoring the original data format of multiple channels, the infrared intensity calculation module for extracting intensity data, the filter preprocessing module for implementing neighborhood smoothing processing, the phase calculation module for calculating phase according to multi-phase sampling values, the depth solving module for converting phase information into distance information, the point cloud generation module for mapping distance data into three-dimensional coordinates, and the safety region detection module for performing safety region pre-computation and spatial determination) can be completed in a continuous and seamless manner. By taking AXI-Stream as the communication channel between modules and using the DATAFLOW mechanism of HLS to decompose each processing stage into independent sub-tasks that can run simultaneously, a flow processing path similar to an assembly line is formed inside the system. Among them, whenever a new data unit is generated by a certain level module, it can be immediately sent to the next processing module through the streaming interface, and the whole process does not need to wait for the end of the processing of the entire frame of data. With the above structure, the image analysis, intensity calculation, filter preprocessing, phase solving, depth solving and point cloud generation steps can be continuously carried out on the chip, and the intrusion determination module can also be executed simultaneously at the moment when the point cloud data is generated, so as to realize end-to-end, near real-time processing from image input to intrusion judgment output.

[0096] By the above system-level pipelining integration, the application can effectively avoid the delay accumulation caused by multiple data movements, cross-device calculations or batch processing in software in the prior art, so that the entire intrusion detection process always maintains stable, continuous and extremely low response time. In addition, all processing steps are completed inside the field programmable logic gate array, without relying on external processors or external memories to participate in deep calculation and region determination, thereby further reducing system redundancy overhead and improving the certainty of overall processing. With the support of the data flow architecture with high parallelism and depth solidification, the application can achieve high-speed intrusion detection at low power consumption, and can flexibly adjust parameters or expand modules according to different application requirements, and is therefore suitable for deployment in scenarios requiring fast response such as industrial security protection, automation device monitoring and robot operation space management.

[0097] It should be understood that the size of the serial number of each step in the above embodiment does not mean the order of execution, and the execution order of each process should be determined according to its function and internal logic, and should not constitute any limitation on the implementation process of the embodiment of the application.

[0098] In an embodiment, a security area intrusion detection device is provided, which corresponds to the security area intrusion detection method described above. As shown in the figure, the security area intrusion detection device is applied to a field programmable logic gate array, which includes a first processing core, a second processing core and an on-chip memory. The security area intrusion detection device includes a generation module 201, a cache module 202 and a judgment module 203. The functions of each module are described in detail as follows: Figure 2

[0099] The generation module 201 is configured to calculate the depth value of each pixel point in the received image data to be detected in the first processing core, and generate corresponding point cloud data based on the depth value.

[0100] The cache module 202 is configured to, in the initialization stage of the second processing core, calculate pre-computed set data for describing the spatial boundary and spatial structure of each security area preset by a user according to the spatial parameters of the security area, and cache the pre-computed set data in the on-chip memory.

[0101] The judgment module 203 is configured to, in the detection stage of the second processing core, extract point cloud coordinates from the point cloud data, and judge whether the point cloud coordinates fall within the corresponding security area based on the pre-computed set data, to obtain an intrusion detection result of the image data to be detected.

[0102] Optionally, the generation module 201 is further configured to:

[0103] ​performing infrared intensity calculation processing based on the sampling intensity information in the image data to be detected, to obtain intensity data of each pixel point;

[0104] performing filter preprocessing based on the intensity data and neighborhood pixel information of each pixel point, to obtain preprocessed image data;

[0105] performing phase calculation processing based on multi-phase sampling information in the preprocessed image data, to obtain phase data of each pixel point;

[0106] performing depth solving processing based on the phase data and a preset imaging distance model, to obtain depth values of the pixel points.

[0107] Optionally, the generating module 201 is further configured to:

[0108] based on a preset row buffer structure, buffering pixel data of a current processing row and adjacent multiple rows in the image data to be detected, to obtain pixel neighborhood data for convolution processing;

[0109] based on the pixel neighborhood data, performing sliding convolution processing according to a preset filter kernel, to obtain the preprocessed image data.

[0110] Optionally, the generating module 201 is further configured to:

[0111] extracting a phase lookup table from the on-chip memory;

[0112] based on the phase lookup table, performing index mapping on the multi-phase sampling information, to obtain initial phase data of each pixel point;

[0113] based on the initial phase data and a normalization parameter related to the pixel point, performing piecewise approximation compensation processing, to obtain compensated phase data.

[0114] Optionally, the spatial parameter includes a center parameter for representing a spatial position of a safety area, a scale parameter for representing a geometric size of the safety area, and an orientation parameter for representing a spatial attitude of the safety area, and the buffering module 202 is further configured to:

[0115] based on the center parameter, the scale parameter, and the orientation parameter, performing calculation processing on multiple spatial vertices of the safety area, to obtain vertex data for describing a spatial range of the safety area;

[0116] based on the vertex data, performing geometric derivation processing on each spatial face or spatial edge constituting the safety area, to obtain directional vector data for representing a spatial structure of the safety area;

[0117] Preprocess the security region space boundary based on the direction vector data to obtain pre-computed coefficient data for accelerating the spatial position determination;

[0118] Construct the pre-computed set data based on the vertex data, the direction vector data, and the pre-computed coefficient data.

[0119] Optionally, the pre-computed set data includes vertex data, direction vector data, and pre-computed coefficient data, and the determination module 203 is further configured to:

[0120] Perform first spatial position determination processing on the point cloud coordinates based on the vertex data to obtain candidate point cloud coordinates;

[0121] Perform second spatial position determination processing based on the candidate point cloud coordinates and the direction vector data and the pre-computed coefficient data to obtain the spatial position determination result of each point cloud coordinate, and the determination accuracy of the second spatial position determination processing is higher than that of the first spatial position determination processing.

[0122] Determine the intrusion detection result of the to-be-detected image data based on the spatial position determination result.

[0123] Optionally, the point cloud data between the first processing core and the second processing core is transmitted in a streaming manner, that is, after the point cloud data is generated, the first processing core outputs in pixel order, and the second processing core synchronously receives and processes point by point, and the entire frame of point cloud data does not need to be buffered during the entire intrusion detection process.

[0124] The above-mentioned modules in the intrusion detection apparatus of the security region can be all or partially implemented by software, hardware, and combinations thereof. The above-mentioned modules can be embedded in or independent of the processor in the computer device in hardware form, or can be stored in the memory in the computer device in software form, so as to be called and executed by the processor to perform the operations corresponding to the above-mentioned modules.

[0125] In one embodiment, a computer device is provided, which can be a terminal device, and an internal structure diagram thereof can be as shown in Figure 3 The computer device includes a processor, a memory, and a network interface connected through a system bus. The processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device includes a readable storage medium. The readable storage medium stores computer readable instructions. The network interface of the computer device is configured to communicate with an external terminal through a network connection. The computer readable instructions are executed by the processor to implement a security region intrusion detection method. The readable storage medium provided in the embodiment includes a non-volatile readable storage medium and a volatile readable storage medium.

[0126] In the embodiments of the present application, a computer device is provided, which comprises a memory, a processor, and computer readable instructions stored in the memory and executable on the processor, and the processor implements the steps of the intrusion detection method of the secure area as described above when executing the computer readable instructions.

[0127] In the embodiments of the present application, a readable storage medium is provided, which stores computer readable instructions, and the computer readable instructions implement the steps of the intrusion detection method of the secure area as described above when executed by a processor.

[0128] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by computer readable instructions instructing related hardware, and the computer readable instructions can be stored in a non-volatile readable storage medium or a volatile readable storage medium, and when executed, can include the processes of the above-mentioned embodiments of each method. Any reference to memory, storage, database or other medium used in each embodiment provided by the present application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. As an illustration but not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.

[0129] Those skilled in the art can clearly understand that, for the convenience and brevity of description, only the division of the above-mentioned functional units and modules is exemplified, and in actual application, the above-mentioned functions can be completed by different functional units and modules according to needs, that is, the internal structure of the device is divided into different functional units or modules to complete all or part of the above-described functions.

[0130] The above examples are only used to illustrate the technical solutions of the present application, but not limit the same; although the present application has been described in detail with reference to the foregoing examples, those skilled in the art should understand that the technical solutions recorded in the foregoing examples can be modified, or some technical features can be replaced by equivalent ones; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present application, and should be included in the protection scope of the present application.

Claims

1. A method of intrusion detection in a secure area, characterized by, The method is applied to a field programmable logic gate array including a first processing core, a second processing core and an on-chip memory, and the method comprises: In the first processing core, depth values of each pixel point in received image data to be detected are calculated, and corresponding point cloud data is generated based on the depth values; In an initialization stage of the second processing core, for each security region preset by a user, pre-computed set data for describing a spatial boundary and a spatial structure of the security region are calculated according to spatial parameters of the security region, and are cached in the on-chip memory; In a detection stage of the second processing core, point cloud coordinates are extracted from the point cloud data, and it is judged whether the point cloud coordinates fall into a corresponding security region based on the pre-computed set data, so as to obtain an intrusion detection result of the image data to be detected.

2. The method of intrusion detection of a secure area according to claim 1, wherein, The calculation of the depth values of each pixel point in the received image data to be detected comprises: Infrared intensity calculation processing is performed based on sampling intensity information in the image data to be detected, so as to obtain intensity data of each pixel point; Filtering preprocessing is performed based on the intensity data and neighborhood pixel information of each pixel point, so as to obtain preprocessed image data; Phase calculation processing is performed based on multi-phase sampling information in the preprocessed image data, so as to obtain phase data of each pixel point; Depth solving processing is performed based on the phase data and a preset imaging distance model, so as to obtain the depth values of the pixel points.

3. The method of intrusion detection of a secure area according to claim 2, wherein, The filtering preprocessing based on the intensity data and the neighborhood pixel information of each pixel point to obtain the preprocessed image data comprises: Based on a preset row buffer structure, pixel data of a current processing row and adjacent multiple rows in the image data to be detected is cached, so as to obtain pixel neighborhood data for convolution processing; Based on the pixel neighborhood data, sliding convolution processing is performed according to a preset filter kernel, so as to obtain the preprocessed image data.

4. The method of intrusion detection of a secure area according to claim 2, wherein, The phase calculation processing based on the multi-phase sampling information in the preprocessed image data to obtain the phase data of each pixel point comprises: A phase lookup table is extracted from the on-chip memory; Based on the phase lookup table, index mapping is performed on the multi-phase sampling information, so as to obtain initial phase data of each pixel point; Based on the initial phase data and a normalization parameter related to the pixel point, segmented approximate compensation processing is performed, so as to obtain compensated phase data.

5. The method of intrusion detection of a secure area according to claim 1, wherein, The spatial parameters include a center parameter for representing a spatial position of a security region, a scale parameter for representing a geometric size of the security region, and an orientation parameter for representing a spatial attitude of the security region, and the calculation of the pre-computed set data for describing the spatial boundary and the spatial structure of the security region according to the spatial parameters of the security region comprises: Based on the center parameter, the scale parameter and the orientation parameter, a plurality of spatial vertices of the security region are calculated, so as to obtain vertex data for describing a spatial range of the security region; Based on the vertex data, a geometric derivation process is performed on each space surface or space edge constituting the security area to obtain directional vector data for representing the spatial structure of the security area; Based on the directional vector data, a preprocessing is performed on the security area spatial boundary to obtain pre-computed coefficient data for accelerating spatial position determination; Based on the vertex data, the directional vector data and the pre-computed coefficient data, the pre-computed set data is constructed.

6. The method of intrusion detection of a secure area according to claim 1, wherein, The pre-computed set data includes vertex data, directional vector data and pre-computed coefficient data. Based on the pre-computed set data, it is determined whether the point cloud coordinates fall into the corresponding security area to obtain the intrusion detection result of the to-be-detected image data, which includes: Based on the vertex data, a first spatial position determination process is performed on the point cloud coordinates to obtain candidate point cloud coordinates; Based on the candidate point cloud coordinates and the directional vector data and the pre-computed coefficient data, a second spatial position determination process is performed to obtain the spatial position determination result of each point cloud coordinate, and the determination accuracy of the second spatial position determination process is higher than that of the first spatial position determination process; Based on the spatial position determination result, the intrusion detection result of the to-be-detected image data is determined.

7. The method of intrusion detection of a secure area according to claim 1, wherein, The point cloud data between the first processing core and the second processing core is transmitted in a streaming manner. After the point cloud data is generated, the first processing core outputs in pixel order, and the second processing core synchronously receives and processes point by point, without buffering the entire frame of point cloud data in the entire intrusion detection process.

8. An intrusion detection apparatus for a secure area, characterized by comprising: The device is applied to a field programmable logic gate array including a first processing core, a second processing core and an on-chip memory, and includes: A generation module is configured to calculate the depth value of each pixel point in the received to-be-detected image data in the first processing core, and generate corresponding point cloud data based on the depth value; A cache module is configured to, in the initialization stage of the second processing core, calculate, for each security area preset by a user, pre-computed set data for describing the spatial boundary and spatial structure of the security area based on the spatial parameters of the security area, and cache the pre-computed set data in the on-chip memory; A judgment module is configured to, in the detection stage of the second processing core, extract point cloud coordinates from the point cloud data, and determine whether the point cloud coordinates fall into the corresponding security area based on the pre-computed set data to obtain the intrusion detection result of the to-be-detected image data. 9.A computer device, comprising a memory, a processor, and computer readable instructions stored on the memory and running on the processor, wherein, The processor executes the computer readable instructions to implement the intrusion detection method of the security area according to any one of claims 1 to 7.

10. A readable storage medium, having stored thereon computer readable instructions, characterized in that, The computer readable instructions are executed by the processor to implement the intrusion detection method of the security area according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Intrusion detection method and system, terminal equipment and computer program product

    CN120032310A

  • System for detecting an intrusion into a zone

    WO2023126467A1