Public-oriented remote sensing image target recognition system and method
Through the remote sensing image target recognition system with microservice architecture, the operational complexity and stability problems of the public when participating in remote sensing image target recognition are solved, the system is automatically expanded and scaled and high stability is realized, and a simple and easy-to-use recognition platform is provided. .
Patent Information
- Application Number
- CN202410387412.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-04-01
- Publication Date
- 2024-12-31
AI Technical Summary
The existing GIS system has problems such as complex operation, inability to automatically scale and poor stability when the public participates in remote sensing image target recognition, which is difficult to meet the needs of the public.
Remote sensing image target recognition system adopting microservice architecture, including target recognition subsystem, management subsystem, load balancing subsystem, distributed remote sensing image service subsystem and distributed database subsystem, using Asp.net Core MVC, Openlayers, and Kubernetes It realizes automatic scaling and load balancing and provides a simple and easy-to-use target recognition platform.
It realizes the simplicity and ease of use of the system, automatic expansion capacity and high stability, lowers the threshold for public users, and quickly releases remote sensing image services and target recognition tasks in emergency projects.
Smart Images

Figure CN119229264A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of geographic information system engineering technology, and in particular to a remote sensing image target recognition system and method for the public. Background Art
[0002] Remote sensing image target recognition refers to the process of identifying targets from remote sensing images, extracting the target's distribution, structure, function and other information qualitatively or quantitatively, and representing it in a vector layer. With the popularization of the Internet, smart phones, tablet computers, and personal computers, the general public has the possibility to participate in remote sensing image target recognition, especially in the emergency response process of disasters such as earthquakes, floods, and typhoons. The general public, especially the disaster-stricken people in the disaster area, are an important force in quickly obtaining disaster information.
[0003] At present, remote sensing impact target identification is mostly completed with the help of Geographic Information System (GIS). Currently, there are several types of GIS systems that can realize remote sensing image target identification:
[0004] 1. Desktop GIS: It is a GIS software based on C / S architecture and used on the operating system desktop. It is generally limited to use within the local area network and cannot be published on the wide area network.
[0005] 2. Web GIS: Web GIS is the product of Internet technology applied to GIS development. It is an important part of modern GIS technology and an interactive, distributed and dynamic geographic information system. WebGIS system is a GIS system based on B / S architecture, which is generally deployed on the server. The client interacts with the server through the browser.
[0006] 3. Mobile GIS: An application system that uses smartphones, tablet computers or portable computers as terminals, interacts with server-side GIS services through the Internet to realize GIS-related functions.
[0007] However, most of the general public are not remote sensing or GIS professionals, and their understanding of images varies. At the same time, the number of public participants is uncertain. When some hot events occur, there are too many visitors, while at other times, there are too few visitors. If the public uses the above three GIS systems to identify remote sensing image targets, the following problems will arise:
[0008] 1. Most existing GIS systems are tools for remote sensing or GIS professionals to visually interpret remote sensing images, which are difficult for the general public to use. Visual interpretation of remote sensing images, also known as interpretation or interpretation, refers to the basic process of obtaining information from images, that is, according to the requirements of thematic mapping, using interpretation symbols and practical experience and knowledge, to qualitatively and quantitatively extract the distribution, structure, function and other relevant information of the objects from remote sensing images, and represent them on the geographic base map. Obviously, the general public does not have professional remote sensing or geographical expertise, and cannot perform professional visual interpretation. They can only perform simple target recognition based on their own experience.
[0009] 2. The use environment of desktop GIS system cannot meet the needs of the public. Desktop GIS system adopts C / S architecture and is generally deployed in local area network and cannot be published on the Internet. Therefore, the general public cannot use such tools to participate in remote sensing image target recognition.
[0010] 3. The stability of Web GIS and mobile GIS cannot meet the needs of the public. Web GIS and mobile GIS can be published on the Internet, and the public can participate in remote sensing image target identification through them. However, the existing Web GIS and mobile GIS are generally statically deployed and cannot achieve dynamic expansion and contraction. When the number of visitors is small, server resources are wasted. When the number of visitors is too large, the server will crash due to insufficient computing resources.
[0011] Therefore, in response to the above problems, developing an identification system that can give full play to the power of the general public has broad application prospects. Summary of the invention
[0012] The purpose of the present invention is to provide a remote sensing image target recognition system and method for the public, which solves the technical problems of the existing Web GIS system as a remote sensing image target recognition system for public participation, such as complex operation, inability to automatically scale up and down, and poor stability, and has broad application prospects. By developing a remote sensing image target recognition system with a microservice architecture and automatic scaling, a simple and easy-to-use target recognition platform is provided for the general public to participate in remote sensing image target recognition tasks, and administrators are provided with target recognition task publishing and data processing services.
[0013] To achieve the above objectives, the present invention provides a remote sensing image target recognition system for the public, which includes five subsystems:
[0014] Target recognition subsystem: It is a platform for the public to identify targets in remote sensing images. It is implemented using the Asp.net Core MVC development model. It includes a registration and login module, a target recognition module, a tutorial library module, and a latest news module. The target recognition module is the core module, including task details, browsing, drawing, measurement, and help functions. The target recognition module is divided into three layers, including a raster layer for displaying remote sensing images, a vector layer for displaying point, line, and surface primitives, and a vector layer for displaying measurement information.
[0015] Management subsystem: used to provide management functions for administrators; implemented using Asp.net Core MVC development model, including task management module, message management module, tutorial management module, and user management module;
[0016] Load balancing subsystem: The hash consistency algorithm is used to balance the load of each node in the distributed database subsystem, ensuring that the data storage location does not change and that each subsystem does not interfere with each other when expanding or shrinking. The load balancing subsystem is based on the Asp.Net Core Web API framework and is implemented in the MVC mode, including six WebServices: registration and login, task management, element management, user management, tutorial management, and message management. The database access interface is implemented based on Asp.Net Core Dapper.
[0017] Distributed remote sensing image service subsystem: used to provide WMS or WMTS-compliant remote sensing image basemap services for the target recognition subsystem to improve system performance; it is deployed and implemented based on Kubernetes and Containerd cloud native environments using GeoServer or MapServer, and can automatically scale up and down;
[0018] Distributed database subsystem: used to provide data storage services for the target recognition subsystem and the management subsystem; implemented by distributed deployment of an open source relational database; the relational tables of each database in the distributed database subsystem include user tables, tutorial tables, latest message tables, task tables, and graphic element tables.
[0019] Preferably, the system is deployed as follows:
[0020] Distributed database subsystem: Based on the distributed deployment of cloud hosts, each database node runs independently, and the IP address and port are registered in the configuration table of the load balancing subsystem;
[0021] Target recognition subsystem, management subsystem, load balancing subsystem, and distributed remote sensing image service subsystem: 1) The four subsystems all generate Docker images through their respective target programs and store them in a container image repository built on DockerHub; 2) The four subsystems all build container cloud services based on Kubernetes and Containerd, create Kubernetes applications and publish them as services, and configure the number of automatically expanding and shrinking replicas in the Kubernetes environment to achieve automatic expansion and shrinkage of the system and solve the uncertainty of the number of public user visits.
[0022] Preferably, in the target recognition subsystem:
[0023] Registration and login module: After the user registers information through this module and waits for the administrator to review and approve it, he logs in to the target identification subsystem with his user name and password;
[0024] Target recognition module: implemented based on Asp.net Core MVC development model, Openlayers development library, and JQuery development library; users participate in remote sensing image target recognition tasks through the target recognition module; when the target recognition module is started, it loads the configuration information of the target recognition task from the database, and asynchronously loads the remote sensing image to the raster layer from the distributed remote sensing image service subsystem using the WMS protocol or WMTS protocol. The ground object target vector data drawn by the public user is saved in the distributed database subsystem in GeoJson format and WKT format through the storage service of the load balancing subsystem;
[0025] Latest news module: enables users to obtain the latest hot information and display it synchronously after the management subsystem releases the message.
[0026] Preferably, in the management subsystem:
[0027] Task management module: includes adding, modifying and deleting target recognition tasks. The configuration information of target recognition tasks includes task title, base map link, task introduction, quick view, target type, recognition requirements and task status. The administrator first uses the distributed remote sensing image service subsystem to publish the remote sensing image base map, and then uses the task management module to publish the task. The task is synchronously displayed in the target recognition subsystem, allowing public users to participate in the target recognition task.
[0028] Message management module: including the addition, modification and deletion of the latest message. The configuration information of the latest message includes the message title, message content and release time. After the administrator releases the latest message in the message management module, the target recognition subsystem will synchronously display the message so that the public users can browse the message.
[0029] Tutorial management module: includes adding, modifying and deleting tutorial information. The configuration information of the tutorial includes the tutorial name, attachment path, introduction and publishing time. After the administrator publishes a tutorial in the tutorial management module, the target recognition subsystem will display the tutorial synchronously, allowing public users to browse or download it.
[0030] User management module: provides administrators with the functions of modifying user information and managing user rights. In the user management module, administrators review the accounts registered by public users in the target identification subsystem and grant corresponding rights after the review is passed.
[0031] Preferably,
[0032] In the load balancing subsystem: when receiving access requests from the target identification subsystem and the management subsystem to the distributed database subsystem, the load balancing subsystem calculates the hash code based on the primary key of the data access and uses the hash consistency algorithm to determine the database to be accessed; the system's microservice architecture and automatic expansion and contraction effects are realized, solving the problem of traffic uncertainty for public users;
[0033] In the distributed remote sensing image subsystem: the administrator publishes remote sensing image basemap services within the geographic space, and publishes target recognition tasks in the management subsystem, allowing public users to browse remote sensing images and perform target recognition in the target recognition subsystem.
[0034] The present invention also adopts a remote sensing image target recognition method for the public, comprising the following steps:
[0035] S1. The administrator publishes remote sensing image basemap services based on the distributed remote sensing image service subsystem;
[0036] S2, the administrator publishes the target recognition task based on the management subsystem;
[0037] S3, public users log in to the target recognition subsystem to perform target recognition tasks;
[0038] S4. The administrator exports and processes the vector data of the ground objects based on the distributed database subsystem.
[0039] Preferably, step S1 specifically comprises:
[0040] S11. Select remote sensing images and perform radiation correction, geometric correction, atmospheric correction, band fusion, and seamless stitching to process multiple remote sensing images into a raster image; if the file size exceeds 2G, use FWTools to process it into a pyramid format;
[0041] S12, start and log in to GeoServer, create a workspace in GeoServer, create a storage warehouse based on the image processed in step S11, and then create a layer based on the storage warehouse;
[0042] S13. Based on Docker or Containerd, the GeoServer and remote sensing image in step S12 are created as a container image and uploaded to the image warehouse;
[0043] S14. Log in to Kubernetes, create an application based on the image repository in step S13, set the range of the number of replicas for automatic expansion and contraction, and then create a Service, and publish the remote sensing image service access address through the Service.
[0044] Preferably, step S2 specifically includes:
[0045] The administrator logs in to the management subsystem: enters the task management page to create a new target identification task, modify or delete task information; enters the user management page to modify or delete public user accounts.
[0046] Preferably, step S3 specifically includes:
[0047] S31, a public user logs in to the target recognition subsystem and enters the homepage, which includes a title, a navigation bar, the latest tasks, a task list, the latest news, a tutorial library, and a footer;
[0048] S32. Click a task on the home page or task list page to enter the task details page, click the "Start" link to enter the target recognition page; the target recognition page includes a title bar, a toolbar, a target recognition area, and a status bar;
[0049] S33, when the target recognition page is started, the JavaScript code of the remote sensing image base map link is loaded from the database through the load balancing subsystem, and then the remote sensing image base map service is called through the Ajax method to load the remote sensing image;
[0050] S34, initializing the above-mentioned loaded image, displaying the vector layer of point, line and surface primitives and the vector layer of measurement information, and then the public user clicks on each tool in the toolbar to complete the target recognition;
[0051] S35. After the target recognition is completed, a property window will pop up automatically. In the property window, select the land type information of the land object, click Submit, and asynchronously transmit the vector information and land object type information of the land object to the load balancing subsystem.
[0052] Preferably, in step S3:
[0053] The toolbar is implemented based on OpenLayers and JQuery, including browsing, measuring, drawing, modifying, and helping. The browsing tools include four options: zoom in, zoom out, full map, and full screen. The measuring tools include three options: distance measurement, area measurement, and clear traces. The drawing tools include three options: point drawing, line drawing, and surface drawing. The modifying tools include two options: modify and delete.
[0054] Therefore, the present invention adopts the above-mentioned remote sensing image target recognition system and method for the public to achieve the following beneficial effects:
[0055] 1. The system is simple and easy to use for public users. It only implements the drawing functions of point, line and surface primitives based on Openlayers, and the rest of the complex data processing is completed by professional administrator users. In addition, tutorials and help documents are provided for public users, further lowering the user threshold.
[0056] 2. For administrator users, they can quickly publish remote sensing image services and target recognition tasks, which is particularly important in some emergency projects.
[0057] 3. This system is implemented based on open source and cross-platform tools such as Asp.Net Core MVC, Asp.Net Core Web API, and GeoServer. It can be deployed in a cloud-native environment built with Kubernetes and Containerd, so as to achieve automatic expansion and contraction of each subsystem. When the number of public users is small, it can automatically shrink to reduce resource waste. When the number of public users is large, it can automatically expand to ensure system performance.
[0058] 4. This system is implemented using a microservice architecture, with multiple subsystems working together to complete the target identification task; the load balancing subsystem ensures the independence of each subsystem, and each subsystem runs independently without interfering with each other. At the same time, each subsystem has multiple copies in the cloud-native environment built on Kubernetes and Containerd, making this system very stable.
[0059] The technical solution of the present invention is further described in detail below through the accompanying drawings and embodiments. BRIEF DESCRIPTION OF THE DRAWINGS
[0060] Figure 1 is a system architecture diagram of the present invention;
[0061] Figure 2 This is an architecture diagram of the target identification subsystem of the present invention;
[0062] Figure 3 This is a diagram of the architecture of the target recognition module of the present invention;
[0063] Figure 4This is an architectural diagram of the management subsystem of the present invention;
[0064] Figure 5 This is an architecture diagram of the load balancing subsystem of the present invention;
[0065] Figure 6 The present invention is a flowchart of a remote sensing image target recognition method for the public. DETAILED DESCRIPTION
[0066] The technical solution of the present invention is further described below through the accompanying drawings and embodiments.
[0067] Unless otherwise defined, the technical terms or scientific terms used in the present invention shall have the usual meanings understood by persons with ordinary skills in the field to which the present invention belongs. The words "first", "second" and similar words used in the present invention do not indicate any order, quantity or importance, but are only used to distinguish different components. The words "include" or "comprise" and similar words mean that the elements or objects appearing before the word include the elements or objects listed after the word and their equivalents, but do not exclude other elements or objects. The terms "set", "install" and "connect" should be understood in a broad sense, for example, it can be a fixed connection, a detachable connection, or an integral connection; it can be a mechanical connection or an electrical connection; it can be directly connected, or indirectly connected through an intermediate medium, or it can be the internal connection of two elements. "Up", "down", "left", "right" and the like are only used to indicate relative positional relationships. When the absolute position of the described object changes, the relative positional relationship may also change accordingly.
[0068] Example
[0069] 1. If Figure 1-5 As shown, the present invention provides a remote sensing image target recognition system for the public, including five subsystems:
[0070] 1. Target recognition subsystem
[0071] Each module of the target recognition subsystem is implemented using the Asp.net Core MVC development model, including four modules: registration and login module, latest news module, tutorial library module and target recognition module.
[0072] a. Registration and login module: Through this module, only authorized users can access specific functions and information of this system, preventing illegal users from malicious attacks or abuse of authority. The information that public users need to fill in when registering includes user name, password, mobile phone number, payment account, contact address, whether they are GIS professionals, etc. After submitting the registration information and waiting for the administrator to review and approve it, you can log in to the target identification subsystem with your user name and password.
[0073] b. Latest news module: This module is used to facilitate users to obtain the latest hot information. After the administrator publishes a message in the management subsystem, this module will display it synchronously.
[0074] c. Target recognition module: This module is the core module of this system. Users participate in remote sensing image target recognition tasks through this module. A remote sensing image target recognition task is to identify a target of a certain topic on a remote sensing image within a certain geographic space and draw it into vector data. The functions of this module include task details, browsing, drawing, measurement and help. Among them, 1) the task details function is to show the public detailed information of the target recognition task; 2) the browsing function is to provide public users with tools to browse maps, including zooming in, zooming out, full map and full screen; 3) the drawing function provides public users with tools for drawing, modifying and deleting points, lines and surface elements. Public users use these tools to draw the identified targets into vector data; 4) the measurement function provides public users with measurement tools, including distance and area measurement and cleaning of measurement elements; 5) the help function provides public users with a tutorial for using this module.
[0075] In terms of technical implementation, in addition to the Asp.net Core MVC development model, the module is also implemented using the Openlayers development library and the JQuery development library. The module contains three layers: a raster layer that displays remote sensing images, a vector layer that displays point, line, and surface elements, and a vector layer that displays measurement information.
[0076] When the module is started, the configuration information of the target recognition task is loaded from the database, and the remote sensing image is asynchronously loaded from the distributed remote sensing image service subsystem to the raster layer using the WMS protocol or WMTS protocol. The vector data of the ground objects drawn by the public users are saved to the distributed database subsystem in GeoJson format and WKT format through the storage service of the load balancing subsystem.
[0077] 2. Management subsystem
[0078] The management subsystem provides management functions for administrators. It includes four modules: task management module, message management module, tutorial management module and user management module. Each module is implemented using the Asp.net Core MVC development model.
[0079] a. Task management module: 1) The main function is to add, modify and delete target recognition tasks; the configuration information of target recognition tasks includes task title, base map link, task introduction, quick view, target type, recognition requirements and task status. 2) The administrator first uses the distributed remote sensing image service system to publish the remote sensing image base map, and then uses the task management module to publish the task. The task is displayed synchronously in the target recognition subsystem, and public users can participate in the target recognition task.
[0080] b. Message management module: 1) The main function is to add, modify and delete the latest message; the configuration information of a latest message includes the message title, message content and release time, etc. 2) After the administrator releases the latest message in this module, the target recognition subsystem will display the message synchronously, and the public users can browse the message.
[0081] c. Tutorial management module: 1) The main function is to add, modify and delete tutorial information; the configuration information of a tutorial includes the tutorial name, attachment path, introduction and release time, etc. 2) After the administrator publishes a tutorial in this module, the target recognition subsystem will display the tutorial synchronously, and public users can browse the tutorial or download its attachments.
[0082] d. User management module: 1) This module provides administrators with the functions of modifying user information and managing user permissions; 2) The accounts registered by public users in the target identification subsystem must be reviewed by the administrator and granted corresponding permissions before they can log in to the target identification subsystem and participate in target identification tasks.
[0083] 3. Load balancing subsystem
[0084] The load balancing subsystem is based on the Asp.Net Core Web API framework and uses the MVC model to implement six WebServices: registration and login, task management, graphic management, user management, tutorial management, and message management. The database access interface is based on Asp.Net Core Dapper and can adapt to a variety of relational databases.
[0085] The role of this subsystem is to load balance the target identification subsystem and the management subsystem's access to the distributed database system. When receiving access requests from the target identification subsystem and the management subsystem to the distributed database system, the load balancing subsystem calculates the hash code based on the primary key of the data access and uses the hash consistency algorithm to determine the database to be accessed. Due to the use of the hash consistency algorithm, the expansion and contraction of the load balancing subsystem and other subsystems do not interfere with each other, which well implements the system's microservice architecture and automatic expansion and contraction effects, thereby coping with the problem of public user traffic uncertainty and making better use of server computing resources.
[0086] 4. Distributed remote sensing image service subsystem
[0087] Used to provide remote sensing image basemap services in accordance with WMS or WMTS specifications for the target recognition subsystem; it is deployed in Kubernetes and Containerd cloud-native environments using GeoServer or MapServer, and can automatically scale up and down.
[0088] After the administrator publishes the remote sensing image basemap service within a certain geographic space in the system and publishes the target recognition task in the management subsystem, public users can browse the remote sensing images and perform target recognition in the target recognition subsystem.
[0089] 5. Distributed database subsystem
[0090] Based on the distributed deployment of open source relational database (the purpose of adopting distributed deployment is to improve system performance through server cluster), its function is to provide data storage service for target recognition subsystem and management subsystem. The relational tables in each database of the system include user table, tutorial table, latest message table, task table and primitive table, which respectively store user registration information, tutorial related information, latest message related information, target recognition task configuration information and primitive vector data after target recognition. The target recognition subsystem and management subsystem determine the database to be accessed through the hash consistency algorithm of the load balancing subsystem.
[0091] 2. A remote sensing image target recognition system for the public, the system deployment is:
[0092] Distributed database subsystem: Based on the distributed deployment of cloud hosts, each database node runs independently, and the IP address and port are registered in the configuration table of the load balancing subsystem;
[0093] Target recognition subsystem, management subsystem, load balancing subsystem, and distributed remote sensing image service subsystem: 1) The four subsystems all generate Docker images through their respective target programs and store them in a container image repository built on DockerHub; 2) The four subsystems all build container cloud services based on Kubernetes and Containerd, create Kubernetes applications and publish them as services, and configure the number of automatically expanding and shrinking replicas in the Kubernetes environment to achieve automatic expansion and shrinkage of the system and solve the uncertainty of the number of public user visits.
[0094] 3. Figure 6 As shown, the present invention also provides a remote sensing image target recognition method for the public, comprising the following steps:
[0095] S1. The administrator publishes remote sensing image basemap services based on the distributed remote sensing image service subsystem. Specifically:
[0096] S11. Select remote sensing images and perform radiation correction, geometric correction, atmospheric correction, band fusion, and seamless stitching to process multiple remote sensing images into a raster image; if the file size exceeds 2G, use FWTools to process it into a pyramid format;
[0097] S12, start and log in to GeoServer, create a workspace in GeoServer, create a storage warehouse based on the image processed in step S11, and then create a layer based on the storage warehouse;
[0098] S13. Based on Docker or Containerd, the GeoServer and remote sensing image in step S12 are created as a container image and uploaded to the image warehouse;
[0099] S14. Log in to Kubernetes, create an application based on the image repository in step S13, set the range of the number of replicas for automatic expansion and contraction, and then create a Service, and publish the remote sensing image service access address through the Service.
[0100] S2. The administrator publishes the target recognition task based on the management subsystem. Specifically:
[0101] The administrator logs in to the management subsystem and enters the task management page to create a new target recognition task. The configuration information of a remote sensing image target recognition task includes: task title, base map link, task introduction, quick view, target type, recognition requirements and task status. Among them, 1) the task title is used to display the task title in the task column of the target recognition subsystem; 1) the base map link is a JavaScript code for Openlayers to load the remote sensing image base map service, which contains the remote sensing image service address. When the target recognition subsystem starts, it will load this code from the database and execute it, and then call the remote sensing image basemap service to load the remote sensing image basemap; 2) Task introduction is used to display a brief introduction of the task in the task column of the target recognition subsystem; 3) Quick view is used to display the picture of the task in the task column of the target recognition subsystem, so that the public users can understand the task more intuitively; 4) Target type is all types of targets that need to be identified in this task; 5) Identification requirements are the technical requirements of the task for the public users to identify remote sensing image targets. The editing of identification requirement information is based on Asp.NetCore rich text editing control, and the identification requirement information can be input with pictures and texts; 6) Task status includes two states: in progress and completed. When a task is released, it is in progress. When the public user completes the task, the administrator can change the task status to completed. After the administrator edits the configuration information of the task and saves it, the task can be displayed synchronously in the target recognition subsystem.
[0102] The administrator logs in to the management subsystem and enters the task management page to modify existing task information. Click the "Modify" link in the task list to modify the configuration information of a task and save it. The task will be updated synchronously in the target recognition subsystem.
[0103] The administrator logs in to the management subsystem, enters the task management page, and clicks the "Delete" link in the task list to delete existing task information. After a task is deleted, it will no longer be displayed in the target identification subsystem.
[0104] The administrator logs in to the management subsystem and enters the user management page. In the user list, the administrator can modify, delete, and perform other operations on public user accounts.
[0105] S3. Public users log in to the target recognition subsystem to perform target recognition tasks. Specifically:
[0106] S31, a public user logs in to the target recognition subsystem and enters the homepage, which includes a title, a navigation bar, the latest tasks, a task list, the latest news, a tutorial library, and a footer. Clicking the task list enters the task list page, clicking the tutorial list enters the tutorial list page, and clicking the latest news list enters the latest news page;
[0107] S32. Click a task on the homepage or task list page to enter the task details page (this page displays the identification requirements and other information entered by the administrator when publishing the task in the management subsystem), click the "Start" link to enter the target identification page; the target identification page includes a title bar, a toolbar, a target identification area, and a status bar; among which:
[0108] The drop-down menu of the browsing tool has four options: zoom in, zoom out, full map, and full screen; the drop-down menu of the measuring tool has three options: measure distance, measure area, and clear traces; the drop-down menu of the drawing tool contains three options: draw points, draw lines, and draw surfaces; the drop-down menu of the modification tool has two options: modify and delete. Each tool is implemented based on OpenLayers and JQuery. The target recognition area is the area where remote sensing images are browsed and the identified targets are drawn. It is implemented based on the map interface of OpenLayers and contains three layers (a raster layer that displays remote sensing images, a vector layer that displays point, line, and surface primitives, and a vector layer that displays measurement information).
[0109] S33, when the target recognition page is started, the JavaScript code of the remote sensing image base map link is loaded from the database through the load balancing subsystem, and then the remote sensing image base map service is called through the Ajax method to load the remote sensing image;
[0110] S34, initializing the above-mentioned loaded image, displaying the vector layer of point, line and surface primitives and the vector layer of measurement information, and then the public user clicks various tools in the toolbar to complete the target recognition; specifically including:
[0111] 1) Click the Full Map button to fully display the map in the target identification area; 2) Click the Distance button, then click the left mouse button one by one along the measurement path in the target identification area. When you are finished, double-click the mouse coordinates to automatically display the distance; 3) Click the Area button, click the mouse one by one in the target identification area to form a polygon. Double-click the left mouse button to end and the area of the polygon will be automatically displayed.
[0112] The drawing tool is implemented by the ol.interaction.Draw interface. To identify a point-like object, you only need to double-click the mouse; for a line-like object, you need to click the left button of the mouse one by one along the center line of the object, and double-click to end; for a surface-like object, you need to click the left button of the mouse one by one along the edge of the object, and double-click to end.
[0113] S35. After the target recognition is completed, the property window will pop up automatically. Select the land type information of the land object in the property window, click Submit, and the vector information and land object type information of the land object will be asynchronously transmitted to the load balancing subsystem in GeoJson format through Ajax.
[0114] The load balancing subsystem determines the database that needs to be saved for the information of the object based on the hash consistency algorithm. The modification tool is implemented based on the ol.interaction.Select and ol.interaction.Modify interfaces. Click the Modify button, click the mouse on the element to be modified to select the element, drag the point of the point object or the boundary line of the line and surface object to change the vector information of the element. After the modification is completed, cancel the selection of the element and the attribute information box will pop up automatically. If the attribute information needs to be modified, reselect the land type and enter the description information, click the Submit button, and the GeoJson format is asynchronously transmitted to the load balancing subsystem through Ajax. The load balancing subsystem determines the database that needs to be saved for the information of the object based on the hash consistency algorithm. Click the Delete button, click the left mouse button on the point element, or click on the boundary of the line and surface element, and a confirmation box will pop up. Click the Submit button, and the system will asynchronously transmit the ID number of the element to be deleted to the load balancing subsystem through Ajax. The load balancing subsystem determines which database the element is in based on the hash consistency algorithm, and then deletes it from the database.
[0115] S4. The administrator exports and processes the vector data of the ground objects based on the distributed database subsystem.
[0116] After the public user completes the target identification work of a certain task, the administrator will export the target identification data from the database for subsequent quality inspection, map visualization and other processing.
[0117] Therefore, the present invention adopts the above-mentioned public-oriented remote sensing image target recognition system and method, and develops a remote sensing image target recognition system with a microservice architecture and automatic scalability, which provides a simple and easy-to-use target recognition platform for the general public to participate in remote sensing image target recognition tasks, and provides administrators with target recognition task publishing and data processing services.
[0118] Finally, it should be noted that the above embodiments are only used to illustrate the technical solution of the present invention rather than to limit it. Although the present invention has been described in detail with reference to the preferred embodiments, those skilled in the art should understand that they can still modify or replace the technical solution of the present invention with equivalents, and these modifications or equivalent replacements cannot cause the modified technical solution to deviate from the spirit and scope of the technical solution of the present invention.
Claims
1. A remote sensing image target recognition system for the public, characterized in that: It includes five subsystems: Target recognition subsystem: It is a platform for the public to identify targets in remote sensing images. It is implemented using the Asp.net Core MVC development model. It includes a registration and login module, a target recognition module, a tutorial library module, and a latest news module. The target recognition module is the core module, including task details, browsing, drawing, measurement, and help functions. The target recognition module is divided into three layers, including a raster layer for displaying remote sensing images, a vector layer for displaying point, line, and surface primitives, and a vector layer for displaying measurement information. Management subsystem: used to provide management functions for administrators; implemented using Asp.net Core MVC development model, including task management module, message management module, tutorial management module, and user management module; Load balancing subsystem: Use the hash consistency algorithm to balance the load of each node in the distributed database subsystem, ensuring that the data storage location does not change and that each subsystem does not interfere with each other when expanding or shrinking. The load balancing subsystem is based on the Asp.NetCore Web API framework and is implemented in the MVC mode. It includes six WebServices: registration and login, task management, element management, user management, tutorial management, and message management. The database access interface is implemented based on Asp.Net Core Dapper. Distributed remote sensing image service subsystem: used to provide WMS or WMTS-compliant remote sensing image basemap services for the target recognition subsystem; it is deployed and implemented based on Kubernetes and Containerd cloud native environments using GeoServer or MapServer, and can automatically scale up and down; Distributed database subsystem: used to provide data storage services for the target recognition subsystem and the management subsystem; implemented by distributed deployment of an open source relational database; the relational tables of each database in the distributed database subsystem include user tables, tutorial tables, latest message tables, task tables, and graphic element tables.
2. A remote sensing image target recognition system for the public according to claim 1, characterized in that: The system is deployed as: Distributed database subsystem: Based on the distributed deployment of cloud hosts, each database node runs independently, and the IP address and port are registered in the configuration table of the load balancing subsystem; Target recognition subsystem, management subsystem, load balancing subsystem, and distributed remote sensing image service subsystem: 1) The four subsystems all generate Docker images through their respective target programs and store them in a container image repository built on DockerHub; 2) The four subsystems all build container cloud services based on Kubernetes and Containerd, create Kubernetes applications and publish them as services, and configure the number of automatically expanding and shrinking replicas in the Kubernetes environment to achieve automatic expansion and shrinkage of the system and solve the uncertainty of the number of public user visits.
3. A remote sensing image target recognition system for the public according to claim 2, characterized in that: In the target recognition subsystem: Registration and login module: After the user registers information through this module and waits for the administrator to review and approve it, he logs in to the target identification subsystem with his user name and password; Target recognition module: implemented based on Asp.net Core MVC development model, Openlayers development library, and JQuery development library; users participate in remote sensing image target recognition tasks through the target recognition module; when the target recognition module is started, it loads the configuration information of the target recognition task from the database, and asynchronously loads the remote sensing image to the raster layer from the distributed remote sensing image service subsystem using the WMS protocol or WMTS protocol. The ground object target vector data drawn by the public user is saved in the distributed database subsystem in GeoJson format and WKT format through the storage service of the load balancing subsystem; Latest news module: enables users to obtain the latest hot information and display it synchronously after the management subsystem releases the message.
4. A remote sensing image target recognition system for the public according to claim 3, characterized in that: In the management subsystem: Task management module: includes adding, modifying and deleting target recognition tasks. The configuration information of target recognition tasks includes task title, base map link, task introduction, quick view, target type, recognition requirements and task status. The administrator first uses the distributed remote sensing image service subsystem to publish the remote sensing image base map, and then uses the task management module to publish the task. The task is synchronously displayed in the target recognition subsystem, allowing public users to participate in the target recognition task. Message management module: including the addition, modification and deletion of the latest messages. The configuration information of the latest messages includes the message title, message content and release time. After the administrator publishes the latest message in the message management module, the target identification subsystem will synchronously display the message so that public users can browse the message; Tutorial management module: including adding, modifying and deleting tutorial information. The configuration information of the tutorial includes the tutorial name, attachment path, introduction and release time. After the administrator publishes a tutorial in the tutorial management module, the target recognition subsystem will display the tutorial synchronously, allowing public users to browse or download it; User management module: provides administrators with the functions of modifying user information and managing user rights; The administrator reviews the accounts registered by public users in the target identification subsystem in the user management module and grants corresponding permissions after the review is passed.
5. A remote sensing image target recognition system for the public according to claim 4, characterized in that: In the load balancing subsystem: when receiving access requests from the target identification subsystem and the management subsystem to the distributed database subsystem, the load balancing subsystem calculates the hash code based on the primary key of the data access and uses the hash consistency algorithm to determine the database to be accessed; Implement the system's microservice architecture and automatic scaling effects to solve the traffic uncertainty problem for public users; In the distributed remote sensing image subsystem: the administrator publishes remote sensing image basemap services within the geographic space, and publishes target recognition tasks in the management subsystem, allowing public users to browse remote sensing images and perform target recognition in the target recognition subsystem.
6. A remote sensing image target recognition method for the public, characterized in that: The following steps are involved: S1. The administrator publishes remote sensing image basemap services based on the distributed remote sensing image service subsystem; S2, the administrator publishes the target recognition task based on the management subsystem; S3, public users log in to the target recognition subsystem to perform target recognition tasks; S4. The administrator exports and processes the vector data of the ground objects based on the distributed database subsystem.
7. A method for public remote sensing image target recognition according to claim 6, characterized in that: Step S1 is specifically as follows: S11. Select remote sensing images and perform radiation correction, geometric correction, atmospheric correction, band fusion, and seamless stitching to process multiple remote sensing images into a raster image; if the file size exceeds 2G, use FWTools to process it into a pyramid format; S12, start and log in to GeoServer, create a workspace in GeoServer, create a storage warehouse based on the image processed in step S11, and then create a layer based on the storage warehouse; S13. Based on Docker or Containerd, the GeoServer and remote sensing image in step S12 are created as a container image and uploaded to the image warehouse; S14. Log in to Kubernetes, create an application based on the image repository in step S13, set the range of the number of replicas for automatic expansion and contraction, and then create a Service, and publish the remote sensing image service access address through the Service.
8. The method for public remote sensing image target recognition according to claim 7, characterized in that: Step S2 specifically includes: The administrator logs in to the management subsystem: enters the task management page to create a new target identification task, modify or delete task information; enters the user management page to modify or delete public user accounts.
9. A method for public remote sensing image target recognition according to claim 8, characterized in that: Step S3 specifically includes: S31, a public user logs in to the target recognition subsystem and enters the homepage, which includes a title, a navigation bar, the latest tasks, a task list, the latest news, a tutorial library, and a footer; S32. Click a task on the home page or task list page to enter the task details page, click the "Start" link to enter the target recognition page; the target recognition page includes a title bar, a toolbar, a target recognition area, and a status bar; S33, when the target recognition page is started, the JavaScript code of the remote sensing image base map link is loaded from the database through the load balancing subsystem, and then the remote sensing image base map service is called through the Ajax method to load the remote sensing image; S34, initializing the above-mentioned loaded image, displaying the vector layer of point, line and surface primitives and the vector layer of measurement information, and then the public user clicks on each tool in the toolbar to complete the target recognition; S35. After the target recognition is completed, a property window will pop up automatically. In the property window, select the land type information of the land object, click Submit, and asynchronously transmit the vector information and land object type information of the land object to the load balancing subsystem.
10. A method for public remote sensing image target recognition according to claim 9, characterized in that: In step S3: The toolbar is implemented based on OpenLayers and JQuery, including browsing, measuring, drawing, modifying, and helping. The browsing tools include four options: zoom in, zoom out, full map, and full screen. The measuring tools include three options: distance measurement, area measurement, and clear traces. The drawing tools include three options: point drawing, line drawing, and surface drawing. The modifying tools include two options: modify and delete.