Multi-target edge real-time detection system and method

By using defocus optical components and large-faced array detectors to capture multi-objective light spots in the field of space alarm, and using FPGA to process image data, edge detection within and between channels is achieved, the problem of edge detection and positioning of multiple targets of different sizes is solved, and efficient and real-time target edge recognition is achieved.

CN120070908APending Publication Date: 2025-05-30SHANGHAI AEROSPACE CONTROL TECH INST
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411966760.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-30
Publication Date
2025-05-30

AI Technical Summary

Technical Problem

The prior art is difficult to detect and locate multiple targets of different sizes in the sensor field of view in the field of space alarm, and requires high update rate and real-time performance.

Method used

Defocus optical components and large-faced array detectors are used to capture multi-objective light spots, and image data is processed through FPGA to realize edge detection within and between channels, identify and position the edges of different targets.

Benefits of technology

It realizes stable edge detection and positioning of multiple targets of different sizes in the sensor field of view, and has the advantages of low latency, good real-time and small storage space requirements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120070908A_ABST
    Figure CN120070908A_ABST
Patent Text Reader

Abstract

The invention discloses a multi-target edge real-time detection system and method, and the method comprises the steps: S1, carrying out the multi-channel target edge detection of a multi-target edge image cached in an FPGA, so as to determine a target edge; s2, performing inter-channel edge detection on the multi-target edge blocks subjected to in-channel multi-target edge detection so as to identify target edges of the same target in different channels; and S3, finally obtaining target edges of all different targets in the multi-target edge image. According to the multi-target edge real-time detection system and method provided by the invention, edge detection and positioning of a plurality of targets with different sizes in the field of view of the sensor can be realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of multi-target detection, and in particular to a multi-target edge real-time detection system and method. Background Art

[0002] Space-based optical detection has become the main means in the field of space warning due to its advantages such as high reliability, wide coverage of observation distance segments, and low energy consumption. And the recognition and positioning of space targets such as satellites and space stations are the most important and fundamental part in space-based optical detection. At present, in the field of space warning, the commonly used target recognition method is the target edge detection technology. The application difficulties of this technology are as follows: 1) The imaging sizes of space targets vary greatly in different distance segments, requiring the edge detection system to be able to adapt to target images of different sizes; 2) The number of targets is uncertain. When multiple targets exist in the field of view simultaneously, it is required to correctly recognize and associate the edges of each target, and have the ability to detect and position the edges of each target; 3) The special nature of the space warning task requires the edge detection system to have a high update rate, generally 10HZ or above, and a short information output delay, requiring the edge detection system to have high real-time performance.

[0003] Therefore, based on the above application difficulties, the present invention provides a multi-target edge real-time detection system and method to realize the edge detection and positioning of multiple targets with different sizes existing in the field of view of the sensor. Summary of the Invention

[0004] The object of the present invention is to provide a multi-target edge real-time detection system and method, which can solve the problem of inability to perform edge detection and positioning on multiple targets with different sizes existing in the field of view of the sensor.

[0005] To achieve the above object, the present invention provides a multi-target edge real-time detection system, including:

[0006] A defocus optical component for collecting light and forming multi-target light spots;

[0007] A large area array detector for capturing the multi-target light spots transmitted by the defocus optical component and forming image data of multi-target edges;

[0008] An FPGA, communicatively connected to the large area array detector, for receiving and processing the image data of the multi-target edges to detect and recognize the edges of different targets;

[0009] Wherein, the FPGA includes a data storage module for storing the image data of the multi-target edges to form a multi-target edge image; and a data processing module for detecting and recognizing the edges of different targets.

[0010] The present invention also provides a method for detection using a multi-target edge real-time detection system, comprising the following steps:

[0011] S1. Perform multi-channel in-target edge detection on the multi-target edge image cached in the FPGA to determine the target edge;

[0012] S2. Perform inter-channel edge detection on the multi-target edge blocks that have undergone in-channel multi-target edge detection to identify the target edges of the same target located in different channels;

[0013] S3. Finally, obtain the target edges of all different targets in the multi-target edge image.

[0014] Optionally, before the step S1, the multi-target edge image needs to be evenly divided into N parts in terms of the number of pixel columns and detected and output one-to-one through N channels.

[0015] Optionally, the step S1 includes:

[0016] S1.1. Divide the multi-target edge image in each channel according to pixels to obtain a number of sub-image blocks with the same pixel size;

[0017] S1.2. Obtain the between-class gray-level difference feature quantity of each sub-image block in each channel through the FPGA; when the between-class gray-level difference feature quantity of the sub-image block is greater than a preset edge detection threshold, the sub-image block is a suspected edge block;

[0018] S1.3. Determine the multi-target edge blocks in each channel by calculating the edge weights of each suspected edge block.

[0019] Optionally, the step S1.3 includes:

[0020] For each suspected edge block, calculate the edge weight of the suspected edge block through the eight-neighborhood blocks of the suspected edge block;

[0021] When the edge weight of the suspected edge block exceeds the set target detection threshold, it is considered that the suspected edge block is a multi-target edge block, and these multi-target edge blocks are marked as target block S;

[0022] Number the target block S.

[0023] Optionally, the calculation method of the edge weight of the suspected edge block is:

[0024] Set the edge weight of the first suspected edge block in each channel to 1, and the edge weight of each subsequent suspected edge block is: the maximum value of the edge weight values of the eight-neighborhood blocks to which the suspected edge block belongs + 1.

[0025] Optionally, the numbering rule for numbering the target block S is as follows:

[0026] For each target block S in each of the channels: The first target block S in each channel is numbered i1; when the edge weight of a target block S after the target block S numbered i1 is equal to a preset edge weight value, then this target block S is numbered i2; when the edge weight of a target block S after the target block S numbered i2 is equal to the preset edge weight value again, then this target block S is numbered i3; …; until the last target block S whose edge weight is equal to the preset edge weight value appears, and it is numbered in;

[0027] All the target blocks S between the target block S numbered i1 and the target block S numbered i2 are numbered i1; all the target blocks S between the target block S numbered i2 and the target block S numbered i3 are numbered i2; …; all the target blocks S after the target block S numbered in are numbered in;

[0028] Where i = 1, 2, …, N, and N represents the number of channels.

[0029] Optionally, the step S2 includes:

[0030] Line by line, confirm whether the adjacent sub-image blocks between adjacent channels are multi-target edge blocks;

[0031] If both adjacent sub-image blocks are multi-target edge blocks, then consider that these two adjacent sub-image blocks belong to the edge of the same target, and change the numbering so that the number of the target block S in the right channel is the same as the number of the adjacent target block S in the left channel; if only one of the adjacent sub-image blocks is a multi-target edge block, then consider that these two adjacent sub-image blocks do not belong to the edge of the same target, and keep the original numbering; if neither of the adjacent sub-image blocks is a multi-target edge block, then skip and do not process.

[0032] Optionally, the sub-image blocks in each channel are detected row by row from left to right and top to bottom; and the sub-image blocks in each channel of the same row are detected simultaneously.

[0033] Optionally, the step S3 is specifically:

[0034] Through the numbering of the target block S in each of the channels and the change of the numbering of the target block S in adjacent channels, the target edges of the same target corresponding to the same number and the target edges of different targets corresponding to different numbers are obtained.

[0035] In summary, compared with the prior art, the present invention has the following beneficial effects:

[0036] 1. A multi-target edge real-time detection system and method provided by the present invention can achieve stable edge detection and positioning for each target when there are targets of different sizes in the field of view of the sensor.

[0037] 2. A multi-target edge real-time detection system and method provided by the present invention has low data delay, good real-time performance, and small required storage space. BRIEF DESCRIPTION OF THE DRAWINGS

[0038] Figure 1 Figure (a) in [the drawings] is a schematic diagram of target imaging in the long-distance section of the present invention; Figure 1 Figure (b) in [the drawings] is a schematic diagram of target imaging in the medium-distance section of the present invention; Figure 1 Figure (c) in [the drawings] is a schematic diagram of target imaging in the short-distance section of the present invention;

[0039] Figure 2 is a flowchart of the steps of the target edge real-time detection method of the present invention;

[0040] Figure 3 is a schematic diagram of 4 image detection output channels of the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0041] The following will be combined with the attached Figures 1 to 3 , and the technical content, structural features, achieved objectives and effects of the present invention will be described in detail through preferred embodiments.

[0042] It should be noted that the drawings are in a very simplified form and all use non-precise scales, and are only used to conveniently and clearly assist in explaining the purpose of the embodiments of the present invention, rather than being used to limit the limiting conditions for the implementation of the present invention. Therefore, they do not have technical substance significance. Any modification of the structure, change of the proportional relationship, or adjustment of the size, without affecting the effects that the present invention can produce and the objectives that can be achieved, should still fall within the scope covered by the technical content disclosed by the present invention.

[0043] In the description of the present invention, it should be noted that the orientation or positional relationship indicated by the terms "upper", "lower", "left", "right", "vertical", "horizontal", "inner", "outer", etc. is based on the orientation or positional relationship shown in the drawings, and is only for the convenience of describing the present invention and simplifying the description, rather than indicating or implying that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and therefore cannot be understood as a limitation of the present invention. In addition, the terms "first", "second", "third" are only used for descriptive purposes and cannot be understood as indicating or implying relative importance.

[0044] In the description of the present invention, it should be noted that, unless otherwise clearly specified and defined, the terms "installation", "connection", and "coupling" should be understood in a broad sense. For example, it may be a fixed connection, a detachable connection, or an integral connection; it may be a mechanical connection; it may be a direct connection, or an indirect connection through an intermediate medium, and it may be the communication inside two components. For those of ordinary skill in the art, the specific meanings of the above terms in the present invention can be understood according to specific situations.

[0045] The present invention provides a multi-target edge real-time detection system, which includes: a defocus optical component for collecting light and forming multi-target light spots; a large area array detector for capturing the multi-target light spots transmitted through the defocus optical component and forming image data of multi-target edges; an FPGA (Field Programmable Gate Array), communicatively connected to the large area array detector, for receiving and processing the image data of multi-target edges to detect and identify the edges of different targets.

[0046] Among them, the FPGA includes a data storage module for storing the image data of multi-target edges; and a data processing module for detecting and identifying the edges of different targets.

[0047] As Figure 2 shown, the present invention also provides a method for multi-target edge detection based on the multi-target edge real-time detection system, including the following steps:

[0048] S1, performing multi-channel in-target edge detection on the image data of multi-target edges cached in the FPGA to determine the target edges.

[0049] Among them, the multi-target edge image formed by the multi-target edge image data includes N c (N c represents the number of pixel rows in this channel) × M c (M c represents the number of pixel columns in this channel) pixels. The multi-target edge image of the N c × M c pixels is evenly divided into N parts in terms of the number of pixel columns and detected and output through N channels one by one.

[0050] As Figure 3 shown, in a specific embodiment of the present invention, the multi-target edge image of the N c × M c pixels is divided into 4 parts and synchronously detected in 4 (i.e., N = 4) channels one by one; among them, the 4 channels include a first channel 100, a second channel 200, a third channel 300, and a fourth channel 400.

[0051] Among them, the step S1 includes:

[0052] S1.1, divide the multi-target edge images in each channel according to pixels to obtain a number of sub-image blocks with the same pixel size; and at the same time, run these sub-image blocks row by row from left to right and top to bottom in each channel.

[0053] Among them, as Figure 3 shown, the first channel 100 includes a first-channel first sub-image block A1, a first-channel second sub-image block A2,..., a first-channel twelfth sub-image block A12,... (depending on the pixel size division of the multi-target edge image in the specific first channel to form different numbers of sub-image blocks in the first channel).

[0054] The second channel 200 includes a second-channel first sub-image block B1, a second-channel second sub-image block B2,..., a second-channel twelfth sub-image block B12,... (depending on the pixel size division of the multi-target edge image in the specific second channel to form different numbers of sub-image blocks in the second channel).

[0055] The settings of the several third-channel sub-image blocks in the third channel 300 and the several fourth-channel sub-image blocks in the fourth channel 400 are the same by analogy.

[0056] S1.2, obtain the between-class gray-level difference feature quantity of each sub-image block in each channel through the FPGA; when the between-class gray-level difference feature quantity of the sub-image block is greater than a pre-set edge detection threshold, the sub-image block is a suspected edge block, and mark the suspected edge block as a suspected block Y.

[0057] Specifically, mark the suspected edge blocks in the first channel 100 as first-channel suspected blocks Y, mark the suspected edge blocks in the second channel 200 as second-channel suspected blocks Y, mark the suspected edge blocks in the third channel 300 as third-channel suspected blocks Y, and mark the suspected edge blocks in the fourth channel 400 as fourth-channel suspected blocks Y.

[0058] S1.3, determine the multi-target edge blocks in each channel by calculating the edge weights of each suspected edge block.

[0059] S1.3.1, for each suspected edge block, calculate the edge weight of the suspected edge block through the eight-neighborhood blocks of the suspected edge block.

[0060] Specifically, set the edge weight of the first suspected edge block in each channel to 1, and the edge weight of each subsequent suspected edge block is: the maximum value of the edge weight values of the eight-neighborhood blocks to which the suspected edge block belongs + 1.

[0061] Taking the fifth sub-image block A5 in the first channel 100 as an example, the eight-neighborhood blocks of the fifth sub-image block A5 in the first channel are the first sub-image block A1, the second sub-image block A2, the third sub-image block A3, the fourth sub-image block A4, the sixth sub-image block A6, the seventh sub-image block A7, the eighth sub-image block A8, and the ninth sub-image block A9 in the first channel; during the operation of each first-channel sub-image block in the first channel 100, since the operations of the sixth sub-image block A6, the seventh sub-image block A7, the eighth sub-image block A8, and the ninth sub-image block A9 in the first channel are after the fifth sub-image block A5 in the first channel, when actually calculating the fifth sub-image block A5 in the first channel, only by comparing the edge weights of the first sub-image block A1, the second sub-image block A2, the third sub-image block A3, and the fourth sub-image block A4 in the first channel, taking the maximum value from the edge weight values of these first-channel sub-image blocks (A1, A2, A3, A4), and adding 1 to this maximum value, it is the edge weight of the fifth sub-image block A5 in the first channel.

[0062] Specifically, the edge weight of the first sub-image block A1 in the first channel is 1 (initial value 0 + 1); the edge weight of the second sub-image block A2 in the first channel is the edge weight value of the first sub-image block A1 in the first channel + 1 (i.e., 2); the edge weight of the third sub-image block A3 in the first channel is the edge weight value of the second sub-image block A2 in the first channel + 1 (i.e., 3); since the only eight-neighborhood blocks that the fourth sub-image block A4 in the first channel can calculate are the first sub-image block A1 and the second sub-image block A2 in the first channel, the edge weight of the fourth sub-image block A4 in the first channel is the edge weight value of the second sub-image block A2 in the first channel + 1 (i.e., 3), and the edge weight of the fifth sub-image block A5 in the first channel is the edge weight of the third sub-image block A3 in the first channel / the edge weight of the fourth sub-image block A4 in the first channel + 1 (i.e., 4). The edge weight calculation rules for the remaining first-channel sub-image blocks are the same.

[0063] The edge weight calculations for each second-channel sub-image block, each third-channel sub-image block, and each fourth-channel sub-image block in the second channel 200, the third channel 300, and the fourth channel 400 are the same.

[0064] It should be noted that the detection and calculation within each channel are relatively independent. Taking the first sub-image block B1 in the second channel 200 as an example, the edge weight of the first sub-image block B1 in the second channel is 1 (initial value 0 + 1), and there is no need to calculate its edge weight through the third sub-image block A3 in the first channel.

[0065] S1.3.2. When the edge weight of the suspected edge block exceeds the set target detection threshold, it is considered that the suspected edge block is a multi-target edge block, and these multi-target edge blocks are marked as target block S.

[0066] Specifically, the multi-target edge blocks in the first channel 100 are marked as the first-channel target block S, the multi-target edge blocks in the second channel 200 are marked as the second-channel target block S, the multi-target edge blocks in the third channel 300 are marked as the third-channel target block S, and the multi-target edge blocks in the fourth channel 400 are marked as the fourth-channel target block S.

[0067] S1.3.3. Number the multiple first-channel target blocks S in the first channel 100, the multiple second-channel target blocks S in the second channel 200, the third-channel target block S in the third channel 300, and the fourth-channel target block S in the fourth channel 400.

[0068] Among them, the numbering rules are as follows:

[0069] For the multiple first-channel target blocks S in the first channel 100: The first first-channel target block S is numbered 11; when the edge weight of a certain first-channel target block S after the first-channel target block S numbered 11 is equal to the preset edge weight value, then this first-channel target block S is numbered 12; when the edge weight of a certain first-channel target block S after the first-channel target block S numbered 12 is equal to the preset edge weight value again, then this first-channel target block S is numbered 13;...; until the last first-channel target block S with an edge weight equal to the preset edge weight value appears, and it is numbered 1n.

[0070] Those first-channel target blocks S between the first-channel target block S numbered 11 and the first-channel target block S numbered 12 are all numbered 11; those first-channel target blocks S between the first-channel target block S numbered 12 and the first-channel target block S numbered 13 are all numbered 12;...; those first-channel target blocks S after the first-channel target block S numbered 1n are all numbered 1n.

[0071] That is, in the numbering order from left to right and from top to bottom, the first first-channel target block S is numbered 11; if the edge weight of the next first-channel target block S is not equal to the preset edge weight value, then continue to be numbered 11;...; until the edge weight of a certain first-channel target block S is equal to the preset edge weight value, then it is numbered 12; if the edge weight of the subsequent first-channel target block S is not equal to the preset edge weight value, then continue to be numbered 12;...; until the numbering of all the first-channel target blocks S is completed.

[0072] Similarly, the multiple second channel target blocks S in the second channel 200 are numbered 21, ..., 22, ..., 23, ..., 2n in sequence; the multiple third channel target blocks S in the third channel 300 are numbered 31, ..., 32, ..., 33, ..., 3n in sequence; and the multiple fourth channel target blocks S in the fourth channel 400 are numbered 41, ..., 42, ..., 43, ..., 4n in sequence.

[0073] Furthermore, after performing the above-mentioned intra-channel target edge detection on each sub-image block of the previous row in each channel, it is necessary to determine whether there are any sub-image blocks in the next row that have not been detected. If there are, it means that the intra-channel target edge detection has not been completed, and it is necessary to switch to the intra-channel target edge detection of each sub-image block in the next row; if not, it means that the intra-channel target edge detection is completed, and enter the inter-channel edge detection.

[0074] S2, performing inter-channel edge detection on the multi-target edge blocks that have undergone intra-channel multi-target edge detection, so as to identify target edges of the same target located in different channels.

[0075] S2.1, confirming whether adjacent sub-image blocks between adjacent channels belong to multi-target edge blocks row by row;

[0076] S2.2, if both adjacent sub-image blocks are multi-target edge blocks, then the two adjacent sub-image blocks are considered to belong to the edge of the same target, and the numbers are changed so that the number of the target block S in the right channel is consistent with the number of the adjacent target block S in the left channel; if only one of the adjacent sub-image blocks is a multi-target edge block, then the two adjacent sub-image blocks are considered not to belong to the edge of the same target, and the original numbers are retained; if both adjacent sub-image blocks are not multi-target edge blocks, then they are skipped and not processed.

[0077] S3, finally obtaining the object edges of all different objects in the multi-object edge image.

[0078] Specifically, by numbering the target blocks S in each channel and changing the numbers of the target blocks S between adjacent channels, target edges corresponding to the same target with the same number and target edges corresponding to different targets with different numbers are obtained.

[0079] The detection and confirmation of sub-image blocks in different channels but in the same row are performed simultaneously, which improves the detection efficiency of the multi-target edge real-time detection system.

[0080] In a specific embodiment of the present invention, the target edge images are respectively as follows: Figure 1 Figure (a) in Figure 1 Figure (b) and Figure 1The edge images of the large area array detector in the far, medium, and near distance segments shown in Figure (c), where the pixel size of the edge image of the large area array detector is 2048×2048.

[0081] The process of performing multi-target edge detection on the edge image of the large area array detector is as follows:

[0082] Step S1, perform in-channel multi-target edge detection on the edge image of the large area array detector.

[0083] Step S1.1, divide the edge image of the large area array detector into several sub-image blocks of 16×16 pixels;

[0084] Among them, the several sub-image blocks of 16×16 pixels are detected simultaneously through the first channel 100, the second channel 200, the third channel 300, and the fourth channel 400; further, each sub-image block is detected and output row by row in the first channel 100, the second channel 200, the third channel 300, and the fourth channel 400 in the order from left to right (the first column to the Mth column) and from top to bottom (the first row to the Nth row).

[0085] Step S1.2, for the first row of sub-image blocks in the first channel 100, the second channel 200, the third channel 300, and the fourth channel 400, calculate the inter-class gray difference feature quantity of each sub-image block in this row through the FPGA; if in this row, the inter-class gray difference feature quantity of a certain sub-image block is greater than the preset edge detection threshold, then define the sub-image blocks in this row that are greater than the edge detection threshold as suspected edge blocks, and mark the suspected edge blocks as suspected block Y;

[0086] In the order from top to bottom, simultaneously identify the suspected edge blocks row by row for the remaining rows (i.e., the second row to the Nth row) of image blocks in the first channel 100, the second channel 200, the third channel 300, and the fourth channel 400 according to the above method. Similarly, mark the identified suspected edge blocks as suspected block Y.

[0087] Specifically, mark the suspected edge blocks identified from the first channel 100 as the first channel suspected block Y, mark the suspected edge blocks identified from the second channel 200 as the second channel suspected block Y, mark the suspected edge blocks identified from the third channel 300 as the third channel suspected block Y, and mark the suspected edge blocks identified from the fourth channel 400 as the fourth channel suspected block Y.

[0088] Step S1.3, determine the multi-target edge blocks by calculating the edge weights of the suspected edge blocks;

[0089] Step S1.3.1, calculate the edge weights for the suspected edge blocks in each channel respectively;

[0090] Specifically, the edge weight of the first sub-image block A1 in the first channel is 1 (initial value 0 + 1), the edge weight of the second sub-image block A2 in the first channel is the edge weight value of the first sub-image block A1 in the first channel + 1 (i.e., 2), the edge weight of the third sub-image block A3 in the first channel is the edge weight value of the second sub-image block A2 in the first channel + 1 (i.e., 3), the edge weight of the fourth sub-image block A4 in the first channel is the edge weight value of the second sub-image block A2 in the first channel + 1 (i.e., 3), the edge weight of the fifth sub-image block A5 in the first channel is the edge weight of the third sub-image block A3 in the first channel / the edge weight of the fourth sub-image block A4 in the first channel + 1 (i.e., 4). The edge weight calculation rules for the remaining first-channel sub-image blocks are the same.

[0091] Similarly, the edge weights of each second-channel sub-image block, each third-channel sub-image block, and each fourth-channel sub-image block in the second channel 200, the third channel 300, and the fourth channel 400 are calculated.

[0092] Step S1.3.2: Screen out the multi-target edges in each channel respectively. That is, when the edge weight of the suspected edge block exceeds the set target detection threshold, it is considered that the suspected edge block is a multi-target edge block, and these multi-target edge blocks are marked as target block S.

[0093] Specifically, the multi-target edges in the first channel 100 are marked as the first-channel target block S, the multi-target edges in the second channel 200 are marked as the second-channel target block S, the multi-target edges in the third channel 300 are marked as the third-channel target block S, and the multi-target edges in the fourth channel 400 are marked as the fourth-channel target block S.

[0094] Step S1.3.3: Number the multiple first-channel target blocks S in the first channel 100, the multiple second-channel target blocks S in the second channel 200, the third-channel target block S in the third channel 300, and the fourth-channel target block S in the fourth channel 400.

[0095] That is, in the numbering order from left to right and from top to bottom, the first first-channel target block S is numbered 11; if the edge weight of the next first-channel target block S is not equal to the pre-set edge weight value, it continues to be numbered 11;...; until the edge weight of a certain first-channel target block S is equal to the pre-set edge weight value, it is numbered 12; if the edge weight of the subsequent first-channel target block S is not equal to the pre-set edge weight value, it continues to be numbered 12;...; until the numbering of all the first-channel target blocks S is completed.

[0096] Similarly, number the multiple second-channel target blocks S in the second channel 200 as 21, …, 22, …, 23, …, 2n in sequence; number the multiple third-channel target blocks S in the third channel 300 as 31, …, 32, …, 33, …, 3n in sequence; number the multiple fourth-channel target blocks S in the fourth channel 400 as 41, …, 42, …, 43, …, 4n in sequence.

[0097] Further, after performing the above-mentioned in-channel target edge detection on each sub-image block in the previous row within each channel, it is necessary to determine whether there are still sub-image blocks in the next row that have not been detected. If so, it means that the in-channel target edge detection is not over, and it is necessary to transfer to the in-channel target edge detection of each sub-image block in the next row; if not, it means that the in-channel target edge detection is over, and enter the inter-channel edge detection.

[0098] Step S2, perform inter-channel edge detection on the multi-target edges that have undergone in-channel multi-target edge detection, so as to merge the same target edge located in different channels.

[0099] Specifically, for adjacent sub-image blocks between adjacent channels (taking the first channel 100 and the second channel 200 as an example), such as the first-channel third sub-image block A3, the first-channel sixth sub-image block A6, the first-channel ninth sub-image block A9, and the first-channel twelfth sub-image block A12 in the first channel 100, and the second-channel first sub-image block B1, the second-channel fourth sub-image block B4, the second-channel seventh sub-image block B7, and the second-channel tenth sub-image block B10 in the adjacent second channel 200, it is necessary to detect and confirm whether they belong to the same target edge row by row from top to bottom through the following detection rules.

[0100] It is necessary to confirm whether the first-channel third sub-image block A3 is a multi-target edge in the first channel 100 (that is, whether it is marked as a first-channel target block S), and confirm whether the second-channel first sub-image block B1 is a multi-target edge in the second channel 200 (that is, whether it is marked as a second-channel target block S).

[0101] 1) If both the adjacent first-channel third sub-image block A3 and the second-channel first sub-image block B1 are multi-target edges, it is considered that these two adjacent first-channel third sub-image block A3 and second-channel first sub-image block B1 belong to the edge of the same target, and change the number, that is, modify the number of the second-channel first sub-image block B1 to be the same as that of the first-channel third sub-image block A3;

[0102] 2) If the third sub-image block A3 of the first channel is a multi-target edge, while the first sub-image block B1 of the second channel is not a multi-target edge, then it is considered that the two adjacent third sub-image block A3 of the first channel and the first sub-image block B1 of the second channel do not belong to the edges of the same target, and the original number of the third sub-image block A3 of the first channel is retained;

[0103] 3) If the third sub-image block A3 of the first channel is not a multi-target edge, while the first sub-image block B1 of the second channel is a multi-target edge, then it is considered that the two adjacent third sub-image block A3 of the first channel and the first sub-image block B1 of the second channel do not belong to the edges of the same target, and the original number of the first sub-image block B1 of the second channel is retained;

[0104] 4) If neither the adjacent third sub-image block A3 of the first channel nor the first sub-image block B1 of the second channel is a multi-target edge, then skip and do not process.

[0105] 5) The confirmation process for adjacent sub-image blocks in other first channel 100 and second channel 200 is the same by analogy.

[0106] Perform detection and confirmation on whether adjacent sub-image blocks between the second channel 200 and the third channel 300 and between the third channel 300 and the fourth channel belong to the edges of the same target according to the above method.

[0107] Step S3, finally obtain the target edges of all different targets in the edge image of the large area array detector.

[0108] Specifically, by numbering the first channel target block S in the first channel 100, the second channel target block S in the second channel 200, the third channel target block S in the third channel 300, and the fourth channel target block S in the fourth channel 400, as well as the number change for target blocks S between adjacent channels, obtain the target edges of the same target corresponding to the same number and the target edges of different targets corresponding to different numbers.

[0109] In summary, a multi-target edge real-time detection system and method provided by the present invention uses a defocus optical component and realizes real-time processing of the output image of a large area array detector based on FPGA, can detect and locate multi-target edges in the image, realizes edge detection of multiple targets simultaneously existing in the field of view of the sensor, and has the advantages of adapting to the target size, good real-time performance, and less storage space requirement.

[0110] Although the content of the present invention has been described in detail through the above preferred embodiments, it should be recognized that the above description should not be considered as a limitation of the invention. After those skilled in the art have read the above content, various modifications and alternatives to the present invention will be obvious. Therefore, the protection scope of the present invention should be defined by the appended claims.

Claims

1. A multi-target edge real-time detection system, characterized in that: Include: A defocusing optical component for collecting light and forming a multi-target light spot; A large area array detector, used to capture the multi-target light spots transmitted through the defocus optical component and form image data of the edges of the multi-targets; FPGA, connected to the large array detector for receiving and processing the image data of the edges of the multiple targets to detect and identify the edges of different targets; The FPGA includes a data storage module for storing the image data of the edges of multiple targets to form a multi-target edge image; and a data processing module for detecting and identifying the edges of different targets.

2. A multi-target edge real-time detection method, implemented based on the multi-target edge real-time detection system according to claim 1, characterized in that: The multi-target edge real-time detection method comprises the following steps: S1, performing multi-channel intra-target edge detection on the multi-target edge images cached in the FPGA to determine the target edges; S2, performing inter-channel edge detection on the multi-target edge blocks that have undergone intra-channel multi-target edge detection, so as to identify target edges of the same target located in different channels; S3, finally obtaining the object edges of all different objects in the multi-object edge image.

3. The multi-target edge real-time detection method according to claim 2, characterized in that: Before step S1, the multi-target edge image needs to be evenly divided into N parts in terms of the number of pixel columns, and detected and outputted through N channels in a one-to-one correspondence.

4. The multi-target edge real-time detection method according to claim 3, characterized in that: The steps S1 contains: S1.1, dividing the multi-target edge image in each channel according to pixels to obtain a plurality of sub-image blocks with the same pixel size; S1.2, obtaining the inter-class grayscale difference feature of each sub-image block in each channel through the FPGA; when the inter-class grayscale difference feature of the sub-image block is greater than a preset edge detection threshold, the sub-image block is a suspected edge block; S1.3, determining the multi-target edge blocks in each channel by calculating the edge weight of each suspected edge block.

5. The multi-target edge real-time detection method according to claim 4, characterized in that: The step S1.3 comprises: For each suspected edge block, the edge weight of the suspected edge block is calculated through the eight neighborhood blocks of the suspected edge block; When the edge weight of the suspected edge block exceeds the set target detection threshold, the suspected edge block is considered to be a multi-target edge block, and the multi-target edge blocks are marked as target blocks S; The target blocks S are numbered.

6. The multi-target edge real-time detection method according to claim 5, characterized in that: The edge weight calculation method of the suspected edge block is: The edge weight of the first suspected edge block in each channel is set to 1, and the edge weight of each subsequent suspected edge block is set to: the maximum value of the edge weight values ​​of the eight neighborhood blocks to which the suspected edge block belongs + 1.

7. The multi-target edge real-time detection method according to claim 5, characterized in that: The numbering rule for numbering the target block S is: For each target block S in each of the channels: the first target block S in each channel is numbered i1; when the edge weight of a target block S after the target block S numbered i1 is equal to the preset edge weight value, the target block S is numbered i2; when the edge weight of a target block S after the target block S numbered i2 is again equal to the preset edge weight value, the target block S is numbered i3; ...; until the last target block S with an edge weight equal to the preset edge weight value appears, and it is numbered in; The target blocks S between the target block S numbered i1 and the target block S numbered i2 are all numbered i1; the target blocks S between the target block S numbered i2 and the target block S numbered i3 are all numbered i2; ...; the target blocks S after the target block S numbered in are all numbered in; Wherein, i=1, 2, ..., N, where N represents the number of channels.

8. The multi-target edge real-time detection method according to claim 5, characterized in that: The step S2 comprises: Confirming whether adjacent sub-image blocks between adjacent channels belong to multi-target edge blocks row by row; If both adjacent sub-image blocks are multi-target edge blocks, the two adjacent sub-image blocks are considered to belong to the edge of the same target, and the numbers are changed so that the number of the target block S in the right channel is consistent with the number of the adjacent target block S in the left channel; if only one of the adjacent sub-image blocks is a multi-target edge block, the two adjacent sub-image blocks are considered not to belong to the edge of the same target, and the original numbers are retained; if both adjacent sub-image blocks are not multi-target edge blocks, they are skipped and not processed.

9. The multi-target edge real-time detection method according to claim 4, characterized in that: The sub-image blocks in each channel are detected row by row from left to right and from top to bottom; and the sub-image blocks in each channel of the same row are detected simultaneously.

10. The multi-target edge real-time detection method according to claim 8, characterized in that: The step S3 is specifically as follows: By numbering the target blocks S in each of the channels and changing the numbering of the target blocks S between adjacent channels, target edges corresponding to the same target with the same number and target edges corresponding to different targets with different numbers are obtained.