A ship extraction acceleration method based on wide-area satellite images

By adopting a multi-stage dynamic allocation strategy based on time slice weights and a multi-producer-data resource pool-multi-consumer model on the chip, the problems of insufficient computing power and poor timeliness in the extraction of wide-frame satellite image ships are solved, and fast and efficient ship extraction is achieved.

CN119168841BActive Publication Date: 2025-03-14XIAN SPACE STAR TECH IND GRP
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411604611.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-12
Publication Date
2025-03-14
Estimated Expiration
2044-11-12

AI Technical Summary

Technical Problem

In the prior art, the extraction of wide-frame satellite image ships based on chips faces problems such as insufficient computing power and energy efficiency and poor data processing timeliness, which makes it difficult to quickly obtain ship information in disaster areas in emergencies.

Method used

Using a multi-stage dynamic allocation strategy based on time slice weight, the Executor resources are dynamically allocated and adjusted in real time through the resource control manager, combined with the multi-producer-data resource pool-multi-consumer model, the resource utilization efficiency is optimized and the processing speed of ship extraction is improved.

Benefits of technology

The rapid extraction of wide-format satellite image ships based on chips has been achieved, which has improved the timeliness of ship extraction, ensured the full utilization of computing resources, and reduced resource waste.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119168841B_ABST
    Figure CN119168841B_ABST
Patent Text Reader

Abstract

The invention belongs to the technical field of satellite image intelligent processing, and discloses a ship extraction acceleration method based on wide-width satellite images. The specific steps include: reading a parameter configuration file and a wide-width satellite image to generate a wide-width satellite image slice pool; a resource control manager calculates the current maximum available Executor resource according to current system resources (including CPU, I / O, MEM, NPU); the resource control manager dynamically allocates and adjusts "wide-width satellite image preprocessing Executor resources", "ship extraction Executor resources" and "extraction result aggregation and merging Executor resources" in real time according to a "multi-stage dynamic allocation strategy based on time slice weights", and adopts an "Executor-based multi-producer-data resource pool-multi-consumer mode" to dynamically allocate wide-width satellite image slices to be processed at each stage, realize coupled pipelined parallel processing at each stage, complete rapid ship extraction, and improve the timeliness and application value of wide-width satellite image ship extraction results.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention belongs to the technical field of satellite image intelligent processing, and in particular relates to a ship extraction acceleration method based on wide-width satellite images. Background Art

[0002] With the rapid development of artificial intelligence technology, ship extraction plays an increasingly important role in the field of satellite image intelligent processing technology. In the field of satellite image intelligent processing technology, especially for applications that require rapid extraction of ship information, we face multiple challenges for the following reasons:

[0003] 1. Insufficient computing power and energy efficiency. In an emergency, when the situation in the disaster area needs to be quickly obtained, the processing speed of the chip directly affects the timeliness of the rescue operation.

[0004] 2. Poor timeliness of data processing. With the rapid development of satellite remote sensing technology, the width and resolution of acquired images have been continuously improved, and the details and clarity have been significantly enhanced. However, due to the huge amount of data in wide-format satellite images, the difficulty and time of ship extraction have been increased. Therefore, it is imperative to improve the efficiency and speed of wide-format satellite image processing.

[0005] In order to solve the above problems and ensure the rapid development of the aerospace industry, it is necessary to improve the independent research and development capabilities of ship extraction based on wide-width satellite images and ensure the safety and controllability of key technologies. Therefore, studying how to improve the speed of ship extraction based on wide-width satellite images has become an important topic at present. Through independent innovation, the needs of highly complex ship extraction tasks can be met, and the efficiency of wide-width satellite image processing can be improved. Summary of the invention

[0006] The purpose of the present invention is to provide a ship extraction acceleration method based on wide-width satellite imagery, so as to solve the problems faced by wide-width satellite imagery ship extraction on existing chips, such as insufficient computing power and energy efficiency, poor data processing timeliness, etc., to promote the progress of chip-based intelligent processing technology, and achieve high timeliness of ship extraction.

[0007] The technical solution of the present invention is a ship extraction acceleration method based on wide-width satellite images, comprising the following steps:

[0008] S1, reads parameter configuration files and wide-width satellite images to generate a wide-width satellite image slice pool;

[0009] S2, the resource control manager calculates the current maximum number of available Executors based on the current system available resources;

[0010] The current maximum number of available executors is calculated based on the number of CPU cores, target CPU utilization, unit task waiting time in the wide-band satellite image preprocessing stage, unit task waiting time in the ship extraction stage, unit task waiting time in the extraction result aggregation and merging stage, task execution time in the wide-band satellite image preprocessing stage, task execution time in the ship extraction stage, and task execution time in the extraction result aggregation and merging stage.

[0011] S3, the resource control manager dynamically allocates and adjusts the "wide-width satellite image preprocessing Executor resources" in real time according to the "multi-stage dynamic allocation strategy based on time slice weights", and dynamically allocates the wide-width satellite image slices waiting to enter the wide-width satellite image preprocessing stage through the "executor-based multi-producer-data resource pool-multi-consumer mode", and executes the wide-width satellite image preprocessing tasks;

[0012] "Multi-stage dynamic allocation strategy based on time slice weight" means to determine the amount of computing resources that should be given to each stage within a certain period of time by calculating the maximum available resources of the server according to the different input data amounts of the three stages, and to adjust the computing resource allocation of each stage in real time to optimize resource utilization efficiency. The strategy specifically includes initial resource allocation and dynamic resource adjustment, where:

[0013] The specific steps of initial resource allocation include: (1) resource initialization; (2) data input initialization;

[0014] "Wide-width satellite image preprocessing Executor resource" is a system-defined preprocessing unit that can execute wide-width satellite image preprocessing tasks cyclically. It includes system threads, pre-allocated memory, wide-width satellite image context information, shared objects, wide-width satellite image slices to be processed, and wide-width satellite image preprocessing result objects;

[0015] The "Executor-based multi-producer-data resource pool-multi-consumer mode" is a concurrent programming model that is suitable for processing large amounts of data and tasks. The mode refers to storing the data processed by multiple Executor resources concurrently in the data sharing resource pool of the next stage. The Executor of the next stage obtains the data to be processed from the data resource pool according to its own status for processing. After the processing is completed, the processing results are stored in the data sharing resource pool of the next stage.

[0016] S4, the resource control manager dynamically allocates and adjusts the "ship extraction Executor resources" in real time according to the "multi-stage dynamic allocation strategy based on time slice weights", and dynamically allocates wide-width satellite image slices waiting to enter the ship extraction stage through the "executor-based multi-producer-data resource pool-multi-consumer mode" to perform the ship extraction task;

[0017] The "Ship Extraction Executor Resource" is a system-defined ship extraction unit that can cyclically execute ship extraction tasks based on the preprocessing results of wide-width satellite images. It includes system threads, pre-allocated memory, wide-width satellite image context information, shared information, preprocessing results, and ship extraction result objects.

[0018] S5, the resource control manager dynamically allocates and adjusts the "extraction result aggregation and merging Executor resources" in real time according to the "multi-stage dynamic allocation strategy based on time slice weights", and dynamically allocates wide-width satellite image slices that are waiting to enter the extraction result aggregation and merging stage through the "executor-based multi-producer-data resource pool-multi-consumer mode" to perform the extraction result aggregation and merging task;

[0019] The "Extraction Result Summarization and Merging Executor Resource" is a system-defined extraction result summary and merging unit that can cyclically execute the result summary and merging task based on the ship extraction results, including system threads, pre-allocated memory, wide-width satellite image context information, shared objects, ship extraction results, and summary and merging result objects;

[0020] S6: The extraction results are aggregated and merged, and the Executor resources are released.

[0021] Furthermore, in S2, the resource control manager calculates the maximum number of available Executors based on the current system available resources, and the calculation formula is:

[0022] ;

[0023] in, The maximum number of currently available Executors; is the number of CPU cores; is the target utilization of the CPU; It is the unit task waiting time in the wide-width satellite image preprocessing stage; Waiting time for unit tasks in the ship extraction phase; The unit task waiting time of the extraction result aggregation stage is summarized; It is the task execution time of the wide-width satellite image preprocessing stage; The time for executing tasks in the ship extraction phase; Aggregate the execution time of the extraction results and merge the tasks in the phase.

[0024] Furthermore, in S3, the specific steps of the resource control manager dynamically allocating and adjusting the "wide-width satellite image preprocessing Executor resources" in real time according to the "multi-stage dynamic allocation strategy based on time slice weights" are:

[0025] "Wide-width satellite image preprocessing Executor resource" is M, and the initial M=R, is the current maximum number of available Executors; the wide-width satellite image slice allocation step length L=N / R, N is the total number of wide-width satellite image slices, and when the wide-width satellite image slices in the wide-width satellite image preprocessing stage are reduced to nL, n "wide-width satellite image preprocessing Executor resources" are released in real time and dynamically converted into "ship extraction Executor resources"; as the wide-width satellite image slices continuously complete the wide-width satellite image preprocessing and enter the ship extraction stage, M is dynamically reduced in real time, and the reduced part is converted into "ship extraction Executor resources".

[0026] Furthermore, in S3, the wide-format satellite image slices waiting to enter the wide-format satellite image preprocessing stage are dynamically allocated through the "Executor-based multi-producer-data resource pool-multi-consumer mode", and the specific steps of executing the wide-format satellite image preprocessing task include:

[0027] A1, in the wide-width satellite image preprocessing stage, the C wide-width satellite image slices waiting to enter the wide-width satellite image preprocessing stage are sorted, and the sequence numbers of the wide-width satellite image slices waiting to enter the wide-width satellite image preprocessing stage are calculated. The calculation formula is:

[0028] ;

[0029] in, Represents the ranking value of the Xth wide-format satellite image slice waiting to enter the wide-format satellite image preprocessing stage in the wide-format satellite image slice pool; Indicates that the wide-format satellite image slice numbers waiting to enter the wide-format satellite image preprocessing stage are sorted in ascending order;

[0030] A2, in the wide-width satellite image preprocessing stage, sort the M “wide-width satellite image preprocessing Executor resources” and calculate the sequence number of the “wide-width satellite image preprocessing Executor resource”. The calculation formula is:

[0031] ;

[0032] in, Represents the sequence number of the Yth "Wide-width Satellite Image Preprocessing Executor Resource" among the M "Wide-width Satellite Image Preprocessing Executor Resources"; The serial numbers representing the M "Wide-width Satellite Image Preprocessing Executor Resources" are sorted in ascending order;

[0033] A3, the resource control manager determines whether the "wide-band satellite image preprocessing Executor resource" M is 0. If M≠0 and When the minimum The wide satellite image slices are allocated to the minimum The "Wide-width Satellite Image Preprocessing Executor Resource" executes the wide-width satellite image preprocessing task until M=0. This acceleration strategy is not used in other cases.

[0034] Furthermore, it is determined whether there are wide-width satellite image slices that have not been preprocessed in the wide-width satellite image slice pool in the wide-width satellite image preprocessing stage. If yes, the steps in S3 are repeated.

[0035] Furthermore, in said S4, the specific steps of the resource control manager dynamically allocating and adjusting the "ship extraction Executor resources" in real time according to the "multi-stage dynamic allocation strategy based on time slice weight" are:

[0036] The "ship extraction Executor resource" is P, initially P=0. When the wide-width satellite image slices in the ship extraction stage are ≥1, P=1. The wide-width satellite image slice allocation step is L=N / R. For every increase of L wide-width satellite image slices in the ship extraction stage, 1 "ship extraction Executor resource" is added; for every decrease of L wide-width satellite image slices in the ship extraction stage, 1 "ship extraction Executor resource" is released, and this Executor can be converted to "extraction result summary and merging Executor resource".

[0037] Furthermore, in S4, the wide-width satellite image slices waiting to enter the ship extraction stage are dynamically allocated through the "Executor-based multi-producer-data resource pool-multi-consumer mode", and the specific steps of executing the ship extraction task include:

[0038] B1, in the ship extraction stage, the C wide-width satellite image slices after the wide-width satellite image preprocessing are sorted, and the sequence number of the wide-width satellite image slice waiting to enter the ship extraction stage is calculated. The calculation formula is:

[0039] ;

[0040] in, Represents the ranking value of the Xth wide-width satellite image slice waiting to enter the ship extraction phase in the wide-width satellite image slice pool; The sequence numbers of the wide-width satellite image slices waiting to enter the ship extraction phase are sorted in ascending order;

[0041] B2, in the ship extraction phase, sort the P “ship extraction Executor resources” and calculate the sequence number of the “ship extraction Executor resources”. The calculation formula is:

[0042] ;

[0043] in, Represents the sequence number of the Yth "Ship Extraction Executor Resource" among P "Ship Extraction Executor Resources"; The serial numbers representing the P “ship extraction Executor resources” are sorted in ascending order;

[0044] B3, the resource control manager determines whether the "ship extracts Executor resources" P is 0. When P≠0 and When the minimum time to enter the ship extraction phase is The wide satellite image slices are allocated to the minimum The "Ship Extraction Executor Resource" executes the ship extraction task until P=0. Other situations do not involve the use of this acceleration strategy.

[0045] Furthermore, in S5, the specific steps of the resource control manager dynamically allocating and adjusting the "executor resources for extracting result aggregation and merging" in real time according to the "multi-stage dynamic allocation strategy based on time slice weight" are:

[0046] The "Extraction result aggregation and merging Executor resource" is Q, the initial Q=0, and the wide satellite image slices in the extraction result aggregation and merging stage When , Q=1; the step length of wide-width satellite image slice allocation is L=N / R, and for every increase of L wide-width satellite image slices in the extraction result summary and merging stage, one "extraction result summary and merging Executor resource" is added. At the same time, the resource control manager resources satisfy R+2≥M+Q+P, and 2 represents that during the execution of the "multi-stage dynamic allocation strategy based on time slice weights", one Executor is initialized for each of the ship extraction and extraction result summary and merging stages.

[0047] Furthermore, in S5, the wide-width satellite image slices waiting to enter the extraction result aggregation and merging stage are dynamically allocated through the "Executor-based multi-producer-data resource pool-multi-consumer mode", and the specific steps of executing the extraction result aggregation and merging task include:

[0048] C1, in the extraction result summary and merging stage, the C wide-width satellite image slices extracted by the ship are sorted, and the sequence numbers of the wide-width satellite image slices waiting to enter the extraction result summary and merging stage are calculated. The calculation formula is:

[0049] ;

[0050] in, Represents the ranking value of the Xth wide-format satellite image slice in the wide-format satellite image slice pool waiting to enter the extraction result aggregation and merging stage; Indicates that the wide-width satellite image slice numbers waiting to enter the extraction result aggregation and merging stage are sorted in ascending order;

[0051] C2, in the extraction result aggregation and merging stage, sort the Q "extraction result aggregation and merging Executor resources" and calculate the sequence number of the "extraction result aggregation and merging Executor resources". The calculation formula is:

[0052] ;

[0053] in, Represents the sequence number of the Yth "Executor resource for merging and aggregating extraction results" among the Q "Executor resources for merging and aggregating extraction results"; The serial numbers representing the Q “Extraction result aggregation and merging Executor resources” are sorted in ascending order;

[0054] C3, the resource control manager determines whether the "extraction result aggregation and merging Executor resources" Q is 0. When Q≠0 and When the minimum number of nodes waiting to enter the extraction result aggregation and merging stage is The wide satellite image slices are allocated to the minimum The "Extraction Result Aggregation and Merging Executor Resource" executes the extraction result aggregation and merging task until Q = 0.

[0055] The beneficial effects of the present invention are:

[0056] Chip-based rapid extraction of ships from wide-format satellite imagery has been achieved: Based on a new application model for wide-format satellite image processing, research and implementation of brain-like computing acceleration methods have been conducted to enable the chip to process larger-scale wide-format satellite image slices, ensuring full utilization of chip computing resources and reducing resource waste, thereby greatly improving the timeliness of ship extraction. BRIEF DESCRIPTION OF THE DRAWINGS

[0057] Figure 1 It is a schematic diagram of the overall process of the method of the present invention.

[0058] Figure 2 The ship extraction effect of the method of the present invention is demonstrated Figure 1 .

[0059] Figure 3 The ship extraction effect of the method of the present invention is demonstrated Figure 2 . DETAILED DESCRIPTION

[0060] In order to make the purpose, technical solution and advantages of the present invention clearer and more understandable, the technical solution of the present invention will be further described in detail below with reference to the accompanying drawings.

[0061] A ship extraction acceleration method based on wide-area satellite images, such as Figure 1 As shown, the following steps are included:

[0062] S1, reads the parameter configuration file and wide-width satellite imagery to generate a wide-width satellite image slice pool.

[0063] S11, read the parameter configuration file to obtain necessary and non-essential parameters:

[0064] Necessary parameters: model type, model absolute path, model input length, model input width, confidence threshold, wide-area satellite image slice size, unit task execution time and waiting time at each stage, etc.

[0065] Non-essential parameters: data type, wide-area satellite image slice duplication area (default is 0), etc.

[0066] In the experiment, the slice size of the wide-area satellite image is set to 512×512, and the model used is the model for extracting ships. The model data input is 512×512 three-channel data, which is required to be of INT8 type, and the extracted result is a ship.

[0067] S12, reading wide-format satellite images, slicing the wide-format satellite images, and generating a wide-format satellite image slice pool.

[0068] In the experiment, a 3-band (RGB) wide-width satellite image (GF-4 wide-width satellite image) with a size of 10240×10240 pixels is used. The wide-width satellite image contains the ships to be extracted, and the data type of the wide-width satellite image is INT8. According to S11 setting of 512×512, the above wide-width satellite image is split and split in the manner of moving rows and columns to obtain 20 (10240 / 512) wide-width satellite image slices in the row direction and 20 (10240 / 512) wide-width satellite image slices in the column direction, for a total of 400 wide-width satellite image slices.

[0069] S2, the resource control manager calculates the current maximum number of available executors as 8 (i.e., the total number of executors for the current processing task) based on the current system available resources (including system CPU, IO, MEM, NPU, etc.). The current maximum number of available executors is calculated based on the number of CPU cores, the target CPU utilization, the waiting time of the unit task in the wide-width satellite image preprocessing stage, the waiting time of the unit task in the ship extraction stage, the waiting time of the unit task in the extraction result aggregation and merging stage, the task execution time in the wide-width satellite image preprocessing stage, the task execution time in the ship extraction stage, and the task execution time in the extraction result aggregation and merging stage. The calculation formula is:

[0070] ;

[0071] in, The maximum number of currently available Executors; is the number of CPU cores; is the target utilization of the CPU; It is the unit task waiting time in the wide-width satellite image preprocessing stage; Waiting time for unit tasks in the ship extraction phase; The unit task waiting time of the extraction result aggregation stage is summarized; It is the task execution time of the wide-width satellite image preprocessing stage; The time for executing tasks in the ship extraction phase; Aggregate the execution time of the extraction results and merge the tasks in the phase.

[0072] S3, the resource control manager dynamically allocates and adjusts the "wide-width satellite image preprocessing Executor resources" in real time according to the "multi-stage dynamic allocation strategy based on time slice weights", and dynamically allocates wide-width satellite image slices waiting to enter the wide-width satellite image preprocessing stage through the "Executor-based multi-producer-data resource pool-multi-consumer mode" to execute the wide-width satellite image preprocessing tasks.

[0073] The "multi-stage dynamic allocation strategy based on time slice weights" means that by calculating the maximum available resources of the server, according to the different input data amounts of the three stages (wide-band satellite image preprocessing stage, ship extraction stage, and extraction result aggregation and merging stage), the amount of computing resources that should be given to each stage within a certain period of time is determined, and the computing resource allocation of each stage is adjusted in real time to optimize resource utilization efficiency and improve the response speed and processing capacity of the overall system.

[0074] The strategy specifically includes initial resource allocation and dynamic resource adjustment:

[0075] 1. Initial Resource Allocation

[0076] (1) Resource initialization

[0077] The system determines the maximum value of available resources based on the server's computing resources (CPU, IO, MEM, NPU, etc.) ; When the system starts, all available resources All allocated to the first phase.

[0078] (2) Data input initialization

[0079] Calculate the data input volume of the three stages, assuming that the total data volume is , the data input amount in the first stage is , the data input amount of the second stage is , the data input amount of the third stage is ; Initially, all data enter the first stage, so , , .

[0080] 2. Dynamic Resource Adjustment

[0081] As the first stage of data processing progresses, the processing load of the first stage will gradually decrease. The system will regularly check the processing progress of the first stage and dynamically adjust the weight according to the processing progress. For example, if a part of the data has been processed in the first stage, its resource quantity can be appropriately reduced, while the resource quantity of the second stage is increased. The adjusted resource quantity can be based on the following formula:

[0082] , ;

[0083] in, The initial value is ;The initial value of P is 0; The number of resources after dynamic adjustment in the first and second stages; It is an integer multiple of L wide-format satellite image slices, L=N / R, where N is the total number of wide-format satellite image slices.

[0084] "Wide-width satellite image preprocessing Executor resource" is a system-defined preprocessing unit that can execute wide-width satellite image preprocessing tasks in a loop. It includes system threads, pre-allocated memory, wide-width satellite image context information (image width, image height, total number of wide-width satellite image slices), shared objects (number of wide-width satellite image slices that have completed preprocessing, wide-width satellite image slice data resource pool), wide-width satellite image slices to be processed, and wide-width satellite image preprocessing result (matrix) objects.

[0085] The "Executor-based multi-producer-data resource pool-multi-consumer mode" is a concurrent programming model that is suitable for processing large amounts of data and tasks. The mode refers to storing the data processed by multiple Executor resources concurrently in the data sharing resource pool of the next stage. The Executor of the next stage obtains the data to be processed from the data resource pool according to its own status for processing. After the processing is completed, the processing results are stored in the data sharing resource pool of the next stage, where:

[0086] Producer: refers to the Executor resources processed in the previous stage;

[0087] Consumer: refers to the processing Executor resources of this stage;

[0088] Data resource pool: A shared data structure used to store data generated by producers. The data structures stored in different stages are different. For example, the first stage stores the wide-format satellite image slice data to be processed, and the second stage stores the wide-format satellite image slice data processed in the first stage.

[0089] The specific steps for the resource control manager to dynamically allocate and adjust the "wide-width satellite image preprocessing Executor resources" in real time according to the "multi-stage dynamic allocation strategy based on time slice weights" are as follows:

[0090] The "wide-width satellite image preprocessing Executor resources" is M, and the initial M=8, where 8 is the current maximum number of available Executors; the wide-width satellite image slice allocation step size L=N / R, that is, L=12, where N is the total number of wide-width satellite image slices. When the wide-width satellite image slices in the wide-width satellite image preprocessing stage are reduced to 12n (n is a positive integer), n "wide-width satellite image preprocessing Executor resources" are released in real time and dynamically converted into "ship extraction Executor resources"; as the wide-width satellite image slices continuously complete the wide-width satellite image preprocessing and enter the ship extraction stage, M is dynamically reduced in real time, and the reduced part is converted into "ship extraction Executor resources".

[0091] The wide-format satellite image slices waiting to enter the wide-format satellite image preprocessing stage are dynamically allocated through the "Executor-based multi-producer-data resource pool-multi-consumer mode". The specific steps for executing the wide-format satellite image preprocessing task include:

[0092] A1, in the wide-width satellite image preprocessing stage, the C wide-width satellite image slices waiting to enter the wide-width satellite image preprocessing stage are sorted, and the sequence numbers of the wide-width satellite image slices waiting to enter the wide-width satellite image preprocessing stage are calculated. The calculation formula is:

[0093] ;

[0094] in, Represents the ranking value of the Xth wide-format satellite image slice waiting to enter the wide-format satellite image preprocessing stage in the wide-format satellite image slice pool; Indicates that the wide-format satellite image slice numbers waiting to enter the wide-format satellite image preprocessing stage are sorted in ascending order;

[0095] A2, in the wide-width satellite image preprocessing stage, sort the M “wide-width satellite image preprocessing Executor resources” and calculate the sequence number of the “wide-width satellite image preprocessing Executor resource”. The calculation formula is:

[0096] ;

[0097] in, Represents the sequence number of the Yth "Wide-width Satellite Image Preprocessing Executor Resource" among the M "Wide-width Satellite Image Preprocessing Executor Resources"; The serial numbers representing the M "Wide-width Satellite Image Preprocessing Executor Resources" are sorted in ascending order;

[0098] A3, the resource control manager determines whether the "wide-band satellite image preprocessing Executor resource" M is 0. If M≠0 and When the minimum The wide satellite image slices are allocated to the minimum The "Wide-width Satellite Image Preprocessing Executor Resource" executes the wide-width satellite image preprocessing task until M=0. This acceleration strategy is not used in other cases.

[0099] Whether there are wide-width satellite image slices that have not been preprocessed in the wide-width satellite image slice pool in the wide-width satellite image preprocessing stage, if yes, repeat the steps in S3.

[0100] S4, the resource control manager dynamically allocates and adjusts the "ship extraction Executor resources" in real time according to the "multi-stage dynamic allocation strategy based on time slice weights", and dynamically allocates wide-width satellite image slices waiting to enter the ship extraction stage through the "Executor-based multi-producer-data resource pool-multi-consumer mode" to execute the ship extraction task.

[0101] The "Ship Extraction Executor Resource" is a system-defined ship extraction unit that can cyclically execute ship extraction tasks based on wide-format satellite image preprocessing results. It includes system threads, pre-allocated memory, wide-format satellite image context information (image width, image height, total number of wide-format satellite image slices), shared information (number of wide-format satellite image preprocessing results that have completed ship extraction, wide-format satellite image preprocessing result data resource pool), preprocessing results, and ship extraction result (matrix) objects.

[0102] The specific steps for the resource control manager to dynamically allocate and adjust the "ship extraction Executor resources" in real time according to the "multi-stage dynamic allocation strategy based on time slice weight" are as follows:

[0103] The "ship extraction Executor resource" is P, initially P=0. When the wide-width satellite image slices in the ship extraction stage are ≥1, P=1. The allocation step of the wide-width satellite image slices is L=N / R, that is, L=12. For every 12 increase in the wide-width satellite image slices in the ship extraction stage, one "ship extraction Executor resource" is added; for every 12 decrease in the wide-width satellite image slices in the ship extraction stage, one "ship extraction Executor resource" is released, and the Executor can be converted to an "extraction result aggregation and merging Executor resource".

[0104] Through the "Executor-based multi-producer-data resource pool-multi-consumer mode", the wide-width satellite image slices waiting to enter the ship extraction stage are dynamically allocated. The specific steps for executing the ship extraction task include:

[0105] B1, in the ship extraction stage, the C wide-width satellite image slices after the wide-width satellite image preprocessing are sorted, and the sequence number of the wide-width satellite image slice waiting to enter the ship extraction stage is calculated. The calculation formula is:

[0106] ;

[0107] in, Represents the ranking value of the Xth wide-width satellite image slice waiting to enter the ship extraction phase in the wide-width satellite image slice pool; The sequence numbers of the wide-width satellite image slices waiting to enter the ship extraction phase are sorted in ascending order;

[0108] B2, in the ship extraction phase, sort the P “ship extraction Executor resources” and calculate the sequence number of the “ship extraction Executor resources”. The calculation formula is:

[0109] ;

[0110] in, Represents the sequence number of the Yth "Ship Extraction Executor Resource" among P "Ship Extraction Executor Resources"; The serial numbers representing the P “ship extraction Executor resources” are sorted in ascending order;

[0111] B3, the resource control manager determines whether the "ship extracts Executor resources" P is 0. When P≠0 and When the minimum time to enter the ship extraction phase is The wide satellite image slices are allocated to the minimum The "Ship Extraction Executor Resource" executes the ship extraction task until P=0. Other situations do not involve the use of this acceleration strategy.

[0112] In this scenario, a 512×512 model is used to extract ships from wide-width satellite image slices, and the wide-width satellite image slices after preprocessing are extracted to obtain preliminary extraction results.

[0113] S5, the resource control manager dynamically allocates and adjusts the "extraction result aggregation and merging Executor resources" in real time according to the "multi-stage dynamic allocation strategy based on time slice weights", and dynamically allocates wide-width satellite image slices that are waiting to enter the extraction result aggregation and merging stage through the "Executor-based multi-producer-data resource pool-multi-consumer mode" to execute the extraction result aggregation and merging task.

[0114] The "Extraction Result Summarization and Merging Executor Resource" is a system-defined extraction result summary and merging unit that can cyclically execute the result summary and merging tasks based on the ship extraction results. It includes system threads, pre-allocated memory, wide-format satellite image context information (image width, image height, total number of wide-format satellite image slices), shared objects (number of ship extraction results that have completed summary and merging, ship extraction result data resource pool), ship extraction results, and summary and merging result objects.

[0115] The specific steps for the resource control manager to dynamically allocate and adjust the "extraction result aggregation and merging Executor resources" in real time according to the "multi-stage dynamic allocation strategy based on time slice weight" are as follows:

[0116] The "Extraction result aggregation and merging Executor resource" is Q, the initial Q=0, and the wide satellite image slices in the extraction result aggregation and merging stage When , Q=1; the allocation step of wide-width satellite image slices is L=N / R, that is, L=12. For every 12 increase in the number of wide-width satellite image slices in the extraction result summary and merging stage, one "extraction result summary and merging Executor resource" is added. At the same time, the resource control manager resources satisfy R+2≥M+Q+P. 2 represents that during the execution of the "multi-stage dynamic allocation strategy based on time slice weights", one Executor is initialized for each of the ship extraction and extraction result summary and merging stages.

[0117] Through the "Executor-based multi-producer-data resource pool-multi-consumer mode", the wide-width satellite image slices that are waiting to enter the extraction result aggregation and merging stage are dynamically allocated. The specific steps for executing the extraction result aggregation and merging task include:

[0118] C1, in the extraction result summary and merging stage, the C wide-width satellite image slices extracted by the ship are sorted, and the sequence numbers of the wide-width satellite image slices waiting to enter the extraction result summary and merging stage are calculated. The calculation formula is:

[0119] ;

[0120] in, Represents the ranking value of the Xth wide-format satellite image slice in the wide-format satellite image slice pool waiting to enter the extraction result aggregation and merging stage; Indicates that the wide-width satellite image slice numbers waiting to enter the extraction result aggregation and merging stage are sorted in ascending order;

[0121] C2, in the extraction result aggregation and merging stage, sort the Q "extraction result aggregation and merging Executor resources" and calculate the sequence number of the "extraction result aggregation and merging Executor resources". The calculation formula is:

[0122] ;

[0123] in, Represents the sequence number of the Yth "Executor resource for merging and aggregating extraction results" among the Q "Executor resources for merging and aggregating extraction results"; The serial numbers representing the Q “Extraction result aggregation and merging Executor resources” are sorted in ascending order;

[0124] C3, the resource control manager determines whether the "extraction result aggregation and merging Executor resources" Q is 0. When Q≠0 and When the minimum number of nodes waiting to enter the extraction result aggregation and merging stage is The wide satellite image slices are allocated to the minimum The "Extraction Result Aggregation and Merging Executor Resource" executes the extraction result aggregation and merging task until Q = 0.

[0125] S6: The extraction results are aggregated and merged, and the Executor resources are released.

[0126] Summarize and merge the ship extraction results of "Summarize and merge Executor resources" and release the Executor resources. The total time taken by the accelerated method for ship extraction based on wide-area satellite images is about 2.9 seconds, which is about 2 times faster than the traditional unaccelerated method. The output ship extraction results are as follows: Figure 2 , Figure 3 shown.

[0127] The contents not described in detail in this specification belong to the prior art known to those skilled in the art.

Claims

1. A ship extraction acceleration method based on wide-area satellite images, characterized in that: The following steps are involved: S1, reads parameter configuration files and wide-width satellite images to generate a wide-width satellite image slice pool; S2, the resource control manager calculates the current maximum number of available Executors based on the current system available resources; The current maximum number of available executors is calculated based on the number of CPU cores, target CPU utilization, unit task waiting time in the wide-band satellite image preprocessing stage, unit task waiting time in the ship extraction stage, unit task waiting time in the extraction result aggregation and merging stage, task execution time in the wide-band satellite image preprocessing stage, task execution time in the ship extraction stage, and task execution time in the extraction result aggregation and merging stage. S3, the resource control manager dynamically allocates and adjusts the "wide-width satellite image preprocessing Executor resources" in real time according to the "multi-stage dynamic allocation strategy based on time slice weights", and dynamically allocates the wide-width satellite image slices waiting to enter the wide-width satellite image preprocessing stage through the "executor-based multi-producer-data resource pool-multi-consumer mode", and executes the wide-width satellite image preprocessing tasks; "Multi-stage dynamic allocation strategy based on time slice weight" means to determine the amount of computing resources to be given to each stage within a certain period of time by calculating the maximum available resources of the server according to the different input data amounts of the three stages, and to adjust the computing resource allocation of each stage in real time to optimize resource utilization efficiency. The strategy specifically includes initial resource allocation and dynamic resource adjustment, where: The specific steps of initial resource allocation include: (1) resource initialization; (2) data input initialization; "Wide-width satellite image preprocessing Executor resource" is a system-defined preprocessing unit that can execute wide-width satellite image preprocessing tasks cyclically. It includes system threads, pre-allocated memory, wide-width satellite image context information, shared objects, wide-width satellite image slices to be processed, and wide-width satellite image preprocessing result objects; "Multi-producer-data resource pool-multi-consumer mode based on Executor" is a concurrent programming model suitable for processing large amounts of data and tasks. The mode refers to storing the data processed by multiple Executor resources concurrently into the data sharing resource pool of the next stage. The Executor of the next stage obtains the data to be processed from the data resource pool according to its own status for processing. After the processing is completed, the processing result is stored in the data sharing resource pool of the next stage. S4, the resource control manager dynamically allocates and adjusts the "ship extraction Executor resources" in real time according to the "multi-stage dynamic allocation strategy based on time slice weights", and dynamically allocates wide-width satellite image slices waiting to enter the ship extraction stage through the "executor-based multi-producer-data resource pool-multi-consumer mode" to perform the ship extraction task; "Ship Extraction Executor Resource" is a system-defined ship extraction unit that can cyclically execute ship extraction tasks based on the preprocessing results of wide-width satellite images. It includes system threads, pre-allocated memory, wide-width satellite image context information, shared information, preprocessing results, and ship extraction result objects. S5, the resource control manager dynamically allocates and adjusts the "extraction result aggregation and merging Executor resources" in real time according to the "multi-stage dynamic allocation strategy based on time slice weights", dynamically allocates wide-width satellite image slices that are waiting to enter the extraction result aggregation and merging stage through the "executor-based multi-producer-data resource pool-multi-consumer mode", and executes the extraction result aggregation and merging task; "Extraction result aggregation and merging Executor resources" is a system-defined extraction result aggregation and merging unit, which can cyclically execute the result aggregation and merging tasks based on the ship extraction results, including system threads, pre-allocated memory, wide-width satellite image context information, shared objects, ship extraction results, and aggregation and merging result objects; S6: The extraction results are aggregated and merged, and the Executor resources are released.

2. The ship extraction acceleration method based on wide-width satellite images according to claim 1 is characterized in that: In S2, the resource control manager calculates the maximum number of available Executors based on the current system available resources. The calculation formula is: ; in, The current maximum number of available Executors; is the number of CPU cores; is the target utilization of the CPU; It is the unit task waiting time in the wide-width satellite image preprocessing stage; Waiting time for unit tasks in the ship extraction phase; The unit task waiting time of the extraction result aggregation stage is summarized; It is the task execution time of the wide-width satellite image preprocessing stage; The time for executing tasks in the ship extraction phase; Aggregate the execution time of the extraction results and merge the tasks in the phase.

3. The ship extraction acceleration method based on wide-width satellite images according to claim 1 is characterized in that: In S3, the specific steps of the resource control manager dynamically allocating and adjusting the "wide-width satellite image preprocessing Executor resources" in real time according to the "multi-stage dynamic allocation strategy based on time slice weights" are as follows: "Wide-width satellite image preprocessing Executor resources" is M, and the initial M=R, is the current maximum number of available Executors; the wide-width satellite image slice allocation step length L=N / R, N is the total number of wide-width satellite image slices, and when the wide-width satellite image slices in the wide-width satellite image preprocessing stage are reduced to nL, n "wide-width satellite image preprocessing Executor resources" are released in real time and dynamically converted into "ship extraction Executor resources"; as the wide-width satellite image slices continuously complete the wide-width satellite image preprocessing and enter the ship extraction stage, M is dynamically reduced in real time, and the reduced part is converted into "ship extraction Executor resources".

4. The ship extraction acceleration method based on wide-width satellite images according to claim 1 is characterized in that: Whether there are wide-width satellite image slices that have not been preprocessed in the wide-width satellite image slice pool in the wide-width satellite image preprocessing stage, if yes, repeat the steps in S3.

5. The ship extraction acceleration method based on wide-width satellite images according to claim 1 is characterized in that: In S4, the specific steps of the resource control manager dynamically allocating and adjusting the "ship extraction Executor resources" in real time according to the "multi-stage dynamic allocation strategy based on time slice weight" are: "Ship Extraction Executor Resources" is P, initially P=0, and when the wide-width satellite image slices in the ship extraction phase are ≥1, P=1; the wide-width satellite image slice allocation step is L=N / R, where N is the total number of wide-width satellite image slices. is the current maximum number of available Executors. For every L increase in the number of wide-width satellite image slices in the ship extraction phase, one "ship extraction Executor resource" is added; for every L decrease in the number of wide-width satellite image slices in the ship extraction phase, one "ship extraction Executor resource" is released, and the released one "ship extraction Executor resource" is converted to an "extraction result aggregation and merging Executor resource".

6. The ship extraction acceleration method based on wide-width satellite images according to claim 1 is characterized in that: In S5, the specific steps of the resource control manager dynamically allocating and adjusting the "executor resources for extracting result aggregation and merging" in real time according to the "multi-stage dynamic allocation strategy based on time slice weight" are as follows: "Extraction result aggregation and merging Executor resources" is Q, initial Q=0, and the wide satellite image slices in the stage of extraction result aggregation and merging When Q=1, the allocation step of wide-width satellite image slices is L=N / R, where N is the total number of wide-width satellite image slices. is the current maximum number of available Executors. For every L increase in the number of wide-width satellite image slices to be extracted in the result aggregation and merging stage, one "extraction result aggregation and merging Executor resource" is added. At the same time, the resource control manager resources satisfy R+2≥M+Q+P, where M is the "wide-width satellite image preprocessing Executor resource", P is the "ship extraction Executor resource", and 2 represents that during the execution of the "multi-stage dynamic allocation strategy based on time slice weights", one Executor is initialized for each of the ship extraction and extraction result aggregation and merging stages.

7. The ship extraction acceleration method based on wide-width satellite images according to claim 1 is characterized in that: In S5, the wide-width satellite image slices waiting to enter the extraction result aggregation and merging stage are dynamically allocated through the "Executor-based multi-producer-data resource pool-multi-consumer mode". The specific steps of executing the extraction result aggregation and merging task include: C1, in the extraction result summary and merging stage, the C wide-width satellite image slices extracted by the ship are sorted, and the sequence numbers of the wide-width satellite image slices waiting to enter the extraction result summary and merging stage are calculated. The calculation formula is: ; in, Represents the ranking value of the Xth wide-format satellite image slice in the wide-format satellite image slice pool waiting to enter the extraction result aggregation and merging stage; Indicates that the wide-width satellite image slice numbers waiting to enter the extraction result aggregation and merging stage are sorted in ascending order; C2, in the extraction result aggregation and merging stage, sort the Q "extraction result aggregation and merging Executor resources" and calculate the sequence number of the "extraction result aggregation and merging Executor resources". The calculation formula is: ; in, Represents the sequence number of the Yth "Executor resource for merging and aggregating extraction results" among the Q "Executor resources for merging and aggregating extraction results"; The serial numbers representing the Q "extraction result aggregation and merging Executor resources" are sorted in ascending order; C3, the resource control manager determines whether the "extraction result aggregation and merging Executor resources" Q is 0. When Q≠0 and When the minimum number of nodes waiting to enter the extraction result aggregation and merging stage is The wide satellite image slices are allocated to the minimum The "Extraction result aggregation and merging Executor resource" executes the extraction result aggregation and merging task until Q=0.

Citation Information

Patent Citations

  • Multimachine multitask parallel satellite remote sensing image normal incidence correction processing system and method thereof

    CN105117294A

  • GPU-based acceleration method of image feature extraction algorithm

    CN105550974A