Positioning method, device, electronic device and storage medium
By acquiring and processing images in the drone and matching the coordinate information of satellite images, the positioning problem of the drone in a GNSS signal environment is solved, and precise positioning is achieved under low signal conditions.
Patent Information
- Application Number
- CN202210263709.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-03-17
- Publication Date
- 2024-12-20
- Estimated Expiration
- 2042-03-17
AI Technical Summary
The drone cannot complete positioning in a GNSS-free environment, resulting in inconvenient use.
By acquiring the image of the current position in a low signal environment, processing the image with the preset model to obtain the first vector, and matching it with the second vector of the preset multiple satellite images, the satellite image with the highest similarity is determined as the target satellite image , thereby obtaining its coordinate information for positioning.
Achieving accurate positioning of the drone in a GNSS signal environment ensures normal operation of the drone under low signal conditions.
Smart Images

Figure CN114612555B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of positioning technology, and in particular to a positioning method, device, electronic device and storage medium. Background Art
[0002] The positioning and navigation systems carried by today's drones all rely on satellite systems to provide precise latitude and longitude location information. This positioning and navigation method is based on the premise that the satellite system operates normally and the GNSS (Global Navigation Satellite System) signal is not interfered with or blocked.
[0003] However, in actual use, the drone will inevitably operate in an environment without GNSS signals. At this time, the drone will not be able to complete positioning, which brings inconvenience to the use of the drone.
[0004] In summary, the prior art has the problem that when the UAV is in an environment without GNSS signals, it cannot complete positioning. Summary of the invention
[0005] The purpose of the present application is to provide a positioning method, device, electronic device and storage medium to solve the problem in the prior art that when a drone is in an environment without a GNSS signal, positioning cannot be completed.
[0006] In order to achieve the above purpose, the technical solution adopted in the embodiment of the present application is as follows:
[0007] In a first aspect, an embodiment of the present application provides a positioning method, the positioning method comprising:
[0008] When in a low signal environment, obtain images taken at the current location;
[0009] Processing the image using a preset model to obtain a first vector corresponding to the image;
[0010] Matching the first vector with second vectors corresponding to a plurality of preset satellite images, and taking the satellite image with the highest similarity as the target satellite image, wherein each satellite image is associated with coordinate information;
[0011] The coordinate information of the target satellite image is used as the coordinate information of the current position.
[0012] Optionally, after the step of using the coordinate information of the target satellite image as the coordinate information of the current position, the method further includes:
[0013] Updating the preset multiple satellite images according to the coordinate information of the current position;
[0014] When determining the positioning information of the next position, it is determined based on the first vector corresponding to the image captured at the next position and the second vector corresponding to the updated plurality of satellite images.
[0015] Optionally, the step of updating the preset multiple satellite images according to the coordinate information of the current position includes:
[0016] Taking the coordinates of the current position as the origin, determine the activity interval of the next position according to the current movement speed and sampling period;
[0017] The preset plurality of satellite images are updated using satellite images located within the activity interval.
[0018] Optionally, before the step of acquiring an image captured at the current position in a low signal environment, the method further includes:
[0019] Obtain global satellite images;
[0020] Cropping the global satellite image to obtain a plurality of preset satellite images;
[0021] The preset multiple satellite images are processed using the preset model to obtain a second vector corresponding to each of the multiple satellite images.
[0022] Optionally, the step of cropping the global satellite image includes:
[0023] The global satellite image is cropped at equal intervals.
[0024] Optionally, the step of acquiring a global satellite image includes:
[0025] Get the input area information;
[0026] The image where the regional information is located in the global satellite image is used as the global satellite image.
[0027] Optionally, the step of matching the first vector with second vectors corresponding to a plurality of preset satellite images and taking the satellite image with the highest similarity as the target satellite image includes:
[0028] determining the Euclidean distance between the first vector and each second vector in sequence;
[0029] The satellite image with the smallest Euclidean distance is taken as the target satellite image.
[0030] In a second aspect, an embodiment of the present application further provides a positioning device, the positioning device comprising:
[0031] A data acquisition unit, used to acquire an image taken at a current position when in a low signal environment;
[0032] A data processing unit, used to process the image using a preset model to obtain a first vector corresponding to the image;
[0033] A data matching unit, configured to match the first vector with second vectors corresponding to a plurality of preset satellite images, and use the satellite image with the highest similarity as a target satellite image, wherein each satellite image is associated with coordinate information;
[0034] The coordinate information determining unit is used to use the coordinate information of the target satellite image as the coordinate information of the current position.
[0035] In a third aspect, an embodiment of the present application further provides an electronic device, including:
[0036] A memory for storing one or more programs; a processor; when the one or more programs are executed by the processor, the above method is implemented.
[0037] In a fourth aspect, an embodiment of the present application further provides a computer-readable storage medium having a computer program stored thereon, which implements the above method when executed by a processor.
[0038] Compared with the prior art, this application has the following technical effects:
[0039] The embodiments of the present application provide a positioning method, device, electronic device and storage medium. When in a low-signal environment, an image taken at the current position is obtained, and then the image is processed using a preset model to obtain a first vector corresponding to the image, and then the first vector is used to match the second vector corresponding to multiple preset satellite images, and the satellite image with the highest similarity is used as the target satellite image, wherein each satellite image is associated with coordinate information, and finally the coordinate information of the target satellite image is used as the coordinate information of the current position. Through the positioning method provided by the present application, in a low-signal environment, it is possible to switch to a method of comparing the image taken at the current position with the satellite image for positioning, and then positioning is performed using the coordinate information associated with the satellite image, thereby achieving positioning in an environment without GNSS signals and ensuring the precise operation of the drone.
[0040] In order to make the above-mentioned objects, features and advantages of the present application more obvious and easy to understand, preferred embodiments are specifically cited below and described in detail with reference to the attached drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0041] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the embodiments will be briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present application and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.
[0042] Figure 1 A schematic diagram of a module of an electronic device provided in an embodiment of the present application.
[0043] Figure 2 A first exemplary flowchart of a positioning method provided in an embodiment of the present application.
[0044] Figure 3 A second exemplary flowchart of the positioning method provided in an embodiment of the present application.
[0045] Figure 4 A schematic diagram of equally spaced cropping of a global satellite image provided in an embodiment of the present application.
[0046] Figure 5 A third exemplary flowchart of the positioning method provided in an embodiment of the present application.
[0047] Figure 6 A fourth exemplary flowchart of the positioning method provided in an embodiment of the present application.
[0048] Figure 7 A fifth exemplary flowchart of the positioning method provided in an embodiment of the present application.
[0049] Figure 8 A schematic diagram of determining an activity interval provided in an embodiment of the present application.
[0050] Fig. 9 Another schematic diagram of determining an activity interval provided in an embodiment of the present application.
[0051] Fig.10 A schematic diagram of a module of a positioning device provided in an embodiment of the present application.
[0052] In the figure: 100 - electronic device; 101 - processor; 102 - memory; 103 - communication interface; 200 - positioning device; 210 - data acquisition unit; 220 - data processing unit; 230 - data matching unit; 240 - coordinate information determination unit. DETAILED DESCRIPTION
[0053] In order to make the purpose, technical solution and advantages of the embodiments of the present application clearer, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, rather than all the embodiments. The components of the embodiments of the present application described and shown in the drawings here can be arranged and designed in various different configurations.
[0054] Therefore, the following detailed description of the embodiments of the present application provided in the accompanying drawings is not intended to limit the scope of the present application for which protection is sought, but merely represents selected embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in the field without creative work are within the scope of protection of the present application.
[0055] It should be noted that similar reference numerals and letters represent similar items in the following drawings, so once an item is defined in one drawing, it does not need to be further defined and explained in subsequent drawings. At the same time, in the description of this application, the terms "first", "second", etc. are only used to distinguish the description and cannot be understood as indicating or implying relative importance.
[0056] It should be noted that, in this document, relational terms such as first and second, etc. are merely used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations.
[0057] In conjunction with the accompanying drawings, some embodiments of the present application are described in detail below. In the absence of conflict, the following embodiments and features in the embodiments can be combined with each other.
[0058] Drones have played a pivotal role in today's world and can be used in military operations, agricultural operations, ground reconnaissance or civilian aerial photography. As a carrier of cameras, drones have visual functions, and there are countless deep learning applications based on drone vision. With the improvement of onboard equipment performance and the lightweight of hardware, many algorithms such as target tracking, target detection, SLAM and other algorithms have been used on drones and achieved many results.
[0059] However, as described in the background technology, currently, drones generally use GNSS signals for positioning during use. But in actual use, drones will inevitably operate in an environment without GNSS signals. At this time, the drone will not be able to complete positioning, which brings inconvenience to the use of the drone.
[0060] In view of this, the present application provides a positioning method, which determines the coordinates of the current position by matching the image taken at the current position with the satellite image in a low-signal environment, and then obtains coordinate information from the matched satellite image, thereby realizing the determination of coordinates in a low-signal environment.
[0061] It should be noted that the positioning method described in the present application can be applied to electronic devices, and the electronic devices can be different based on different application scenarios. For example, when applied to an aircraft scenario, the electronic device can be a drone, and the drone is used to implement the positioning operation. Of course, it can also be a background server, which communicates with the drone, and the image taken at the current position is fed back to the server through the drone, and then the server implements positioning. Of course, the positioning method can also be applied to other scenarios, for example, in the scenario of car navigation, by obtaining the current position image, navigation in a low signal environment is achieved. Of course, it can also be applied in other positioning scenarios, and it only needs to obtain the image of the current position.
[0062] in, Figure 1 A schematic structural block diagram of an electronic device 100 provided in an embodiment of the present application is shown, and the electronic device 100 includes a memory 102, a processor 101, and a communication interface 103. The memory 102, the processor 101, and the communication interface 103 are electrically connected to each other directly or indirectly to achieve data transmission or interaction. For example, these components can be electrically connected to each other through one or more communication buses or signal lines.
[0063] The memory 102 can be used to store software programs and modules, such as program instructions or modules corresponding to the positioning device provided in the embodiment of the present application. The processor 101 executes the software programs and modules stored in the memory 102 to perform various functional applications and data processing, thereby executing the steps of the positioning method provided in the embodiment of the present application. The communication interface 103 can be used to communicate signaling or data with other node devices.
[0064] Among them, the memory 102 can be, but is not limited to, random access memory (Random Access Memory, RAM), read only memory (Read Only Memory, ROM), programmable read-only memory (Programmable Read-Only Memory, PROM), erasable programmable read-only memory (Erasable Programmable Read-Only Memory, EPROM), electrically erasable programmable read-only memory (Electric Erasable Programmable Read-Only Memory, EEPROM), etc.
[0065] The processor 101 may be an integrated circuit chip with signal processing capability. The processor 101 may be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it may also be a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components.
[0066] Understandably, Figure 1 The structure shown is for illustration only. The electronic device 100 may also include Figure 1 More or fewer components as shown, or with Figure 1 Different configurations are shown. Figure 1 Each component shown in the figure can be implemented by hardware, software or a combination thereof.
[0067] The positioning method provided in the embodiment of the present application is exemplarily described below using the electronic device 100 as an illustrative execution entity.
[0068] As an implementation, see Figure 2 , the positioning method includes:
[0069] S102, when in a low signal environment, obtaining an image taken at the current position.
[0070] S104: Process the image using a preset model to obtain a first vector corresponding to the image.
[0071] S106, using the first vector to match second vectors corresponding to a plurality of preset satellite images, and using the satellite image with the highest similarity as the target satellite image, wherein each satellite image is associated with coordinate information.
[0072] S108: Using the coordinate information of the target satellite image as the coordinate information of the current position.
[0073] The low signal environment described in the present application refers to an environment with low GNSS signals. For example, in a certain area, there is no GNSS signal at all, or the strength of the GNSS signal is low, and the GNSS signal cannot be used for normal navigation.
[0074] Based on this, in the present application, a signal threshold can be set in the electronic device. Taking the electronic device as a drone as an example, the drone detects the strength of the GNSS signal in real time during the flight. When the strength of the GNSS signal is lower than the threshold, the positioning method provided in the present application is used for positioning.
[0075] As an optional implementation method, a priority can be set in the drone in advance, where the priority of using GNSS signals for navigation is higher than the positioning method of this application. When the drone is running, when the strength of the GNSS signal is higher than the threshold, the GNSS signal is used for positioning first.
[0076] GNSS signal is the global navigation satellite system positioning signal, which can provide drones with 3D coordinates, speed and time information on the earth's surface or near-earth space around the clock, that is, it can accurately provide drones with longitude and latitude information.
[0077] When the strength of the GNSS signal is lower than the threshold, an image of the current position is acquired, and positioning is performed using the positioning method provided in the present application.
[0078] Generally, a camera is installed on a drone to collect image information. As an implementation method, when the drone is operating, it needs to collect image information by itself. For example, an aerial photography drone needs to acquire images during flight. When the strength of the GNSS signal is lower than a threshold, the drone is controlled to continue collecting images.
[0079] As another implementation method, the mission performed by the drone does not include collecting images. For example, when an agricultural drone is spraying pesticides over a large area, it does not need to obtain images; or, a transport drone is mainly used to transport goods and does not need to obtain images during flight. At this time, when the strength of the GNSS signal is lower than the threshold, the drone will control the camera to turn on and take images. That is, when in a low signal environment, the drone controls the camera to turn on to obtain images taken at the current location.
[0080] It should also be noted that when the electronic device is a drone, after obtaining the currently captured image, the image is directly processed using the positioning method carried by the drone to obtain the coordinate information of the current position, and the coordinate information of the current position is sent to the background server, so that the background server can directly determine the coordinates of the drone during the current flight, which is convenient for the background server to control the drone. For example, the background server can set the flight route of the drone, and by obtaining the real-time positioning information of the drone during the flight, it can determine whether the drone's flight is off course. When the electronic device is a background server, the drone directly sends the real-time captured picture to the background, and after the background server processes the image, it can obtain the positioning information of the drone in a low-signal environment.
[0081] After acquiring the captured image, no matter what electronic device is used for processing, it is necessary to process it according to the preset model to obtain the feature representation, that is, the first vector. Among them, the preset model described in this application refers to a trained model. After the image captured at the current position is input into the preset model, the preset model outputs the first vector accordingly. It should be noted that this application does not limit the preset model, as long as the image can be processed and the model of the corresponding feature representation can be output. For example, it can be a neural network model, and then the image taken by the drone can be used to perform forward propagation in the neural network to obtain the feature representation.
[0082] At the same time, the same model can be used to process satellite images of different areas to obtain the second vector. It can be understood that there can be multiple second vectors and they are stored in the database of the drone. For example, the second vectors include a1, a2, a3, a4…, and each vector is the second vector corresponding to a satellite image.
[0083] Since drones use aerial photography to shoot, and satellite images are essentially also shot from an aerial perspective, by comparing satellite images with the images currently shot by the drone, the satellite image that is most similar to the image shot by the drone can be determined. In this application, the satellite image that is most similar to the image currently shot by the drone is determined by matching the first vector with the second vector, and is used as the target satellite image.
[0084] For example, among all the second vectors mentioned above, it is determined that the second vector a1 has the highest similarity with the first vector, and the satellite image corresponding to the second vector a1 is determined to be the target satellite image.
[0085] It should be noted that each satellite image has corresponding coordinate information, and as an implementation method, the coordinate information is longitude and latitude coordinates. On this basis, each second vector corresponds to a specific longitude and latitude coordinate; for example, the second vector of the first satellite image is a1, and its corresponding longitude and latitude coordinates are (x1, y1); the second vector of the second satellite image is a2, and its corresponding longitude and latitude coordinates are (x2, y2)….
[0086] After determining the second vector that best matches the first vector, it means that the target satellite image that best matches the image taken at the current location has been determined. For example, the second vector that best matches the first vector is a5, and the coordinate information associated with a5 is (x5, y5), then the coordinate information of the drone at the current location is determined to be (x5, y5).
[0087] It can be understood that through the positioning method provided by the present application, when the drone is in an environment with relatively good GNSS signals, the GNSS signals can be used to locate the drone; and when the drone is in an environment with no GNSS signals or weak GNSS signals, the image currently taken by the drone can be compared with the preset satellite image to determine the coordinate information of the drone's current position, thereby solving the problem of drone positioning in a denied environment.
[0088] As an implementation, see Figure 3 Before S102, the method further includes:
[0089] S101-2, obtaining a global satellite image.
[0090] S101 - 4 , cropping the global satellite image to obtain a plurality of preset satellite images.
[0091] S101 - 6 , using a preset model to process the preset multiple satellite images to obtain a second vector corresponding to each of the multiple satellite images.
[0092] That is, when using the acquired drone images to determine the coordinates of the current location, the satellite images need to be processed first, so it is necessary to first obtain global satellite images, where the global satellite images can refer to satellite images worldwide, satellite images within China, or satellite images of a certain province.
[0093] Optionally, the step of S101-2 includes:
[0094] S101-21, obtaining input area information;
[0095] S101-22, taking the image where the regional information is located in the global satellite image as the global satellite image.
[0096] Since global satellite images are too large, if they are directly used for cropping, the amount of data will be huge. Therefore, when the UAV is performing a flight mission, the user can set the flight area information of the UAV in advance, and then use the satellite image corresponding to the area information as the global satellite image, and then crop it.
[0097] For example, when a drone is performing a flight mission and only flies around a mountain, the mountain is directly used as regional information, and the corresponding satellite image is selected as the global satellite image, and then cropped. Since only the satellite image corresponding to the mountain is selected for cropping, the cropping range is small and the amount of data processing is relatively small; in addition, while reducing the cropping range, the number of second vectors obtained is relatively small, so when matching the satellite image with the highest similarity, a large amount of data is also reduced, thereby achieving rapid positioning in a low-signal environment. Similarly, when a drone is performing a flight mission and needs to obtain image information of a town, the regional information can be set to the range of the town. On this basis, it can be understood that when determining the regional information, it can be determined based on actual conditions, and the regional information can be a village, a town, or a county, etc., which is not limited here.
[0098] Since the global satellite image is large, it is necessary to crop the global satellite image and obtain multiple satellite images.
[0099] As an implementation method, the global satellite image can be cropped at equal intervals during the cropping process. For example, see Figure 4 , Figure 5 In the example, an area is divided into 9 small areas at equal intervals, that is, the global satellite image is divided into multiple satellite images of equal size at equal intervals. It can be understood that each small satellite image does not overlap with other satellite images, and therefore can represent a specific longitude and latitude coordinate. Specifically, Figure 4 The coordinates of satellite image No. 1 are (x1, y1), the coordinates of satellite image No. 2 are (x2, y2)..., and then after matching the image taken at the current location with the satellite image, the longitude and latitude coordinates of the current location can be determined.
[0100] In a specific example, when a town is determined as regional information, the satellite image of the town is used as a global satellite image, and then the global satellite image is cut at equal intervals according to the size of 100x100, so as to obtain multiple satellite images of the same size, and each satellite image is processed using a preset model, and finally the second vector corresponding to each satellite image is obtained. Among them, since each cut satellite image can correspond to a coordinate information, after determining the second vector with the highest similarity, the coordinate information of the current position can be determined accordingly.
[0101] It should be noted that when selecting the size after cropping, it can be equal to the size of the image taken at the current position, or it can be different, and this is not limited here. Because when the two are equal, for example, by setting the size of the image taken at the current position to 100x100, the size of the cut satellite image is also 100x100, and the ratio of the two is the same, which is more convenient for vector matching, so this application sets the size of the two to be the same.
[0102] As an implementation method, when matching the first vector with the second vector, the similarity is determined by calculating the Euclidean distance. On this basis, see Figure 5 , S106 includes:
[0103] S1061, determining the Euclidean distance between the first vector and each second vector in sequence;
[0104] S1062, taking the satellite image with the smallest Euclidean distance as the target satellite image.
[0105] Among them, Euclidean distance is a commonly used distance definition, which refers to the real distance between two points in m-dimensional space. Its calculation formula is:
[0106]
[0107] Among them, Z represents the Euclidean distance between the first vector and the second vector, the first vector is (x1, y1), and the second vector is (x2, y2). Through this formula, the Euclidean distance between the first vector and each second vector can be calculated, and then the satellite image with the smallest Euclidean distance is selected as the target satellite image, and the latitude and longitude coordinates of the target satellite image are used as the current coordinate information of the drone.
[0108] For example, after calculating the Euclidean distance between the first vector and the second vector, the Euclidean distance between the first vector A1 and the second vector a1 is 1.53, the Euclidean distance between the first vector A1 and the second vector a2 is 0.95, the Euclidean distance between the first vector A1 and the second vector a3 is 0.55, the Euclidean distance between the first vector A1 and the second vector a4 is 0.98, the Euclidean distance between the first vector A1 and the second vector a5 is 1.77…, then it is determined that the satellite image corresponding to the second vector a3 is the target satellite image.
[0109] In addition, it should be noted that in the positioning process, real-time positioning needs to be performed continuously. For example, in one implementation, periodic positioning is adopted, that is, after positioning is performed at the current moment, positioning will be performed again after a period of time, and positioning will be repeated continuously. For example, with a period of 1S, after the coordinate information of the current position is determined at 11:00:00, the position will be repeatedly determined at 11:00:01, 11:00:02, 11:00:03... If the same processing is performed in each cycle, the amount of data processed will be large and the processing speed will be slow.
[0110] In view of this, in order to simplify the amount of data to be processed and improve the processing speed, after S108, please refer to Figure 6 , the method further comprises:
[0111] S110, updating a plurality of preset satellite images according to the coordinate information of the current position.
[0112] S112, when determining the positioning information of the next position, the positioning information is determined based on the first vector corresponding to the image taken at the next position and the second vector corresponding to the updated plurality of satellite images.
[0113] Since the positions of two adjacent collection points (i.e., two adjacent cycles) must be close to each other during the flight of the drone, a certain area can be determined based on the coordinate information of the previous cycle. When collecting data in the next cycle, the determined position information must be within this area. For example, an area is determined with the previous cycle as the origin and 10m as the radius. When the drone determines the coordinate information in the next cycle, it must be within this area. Then, the satellite image corresponding to the area can be updated to the global satellite image, which greatly reduces the number of second vectors and improves the processing speed.
[0114] In one implementation, when updating the second vector, redundant second vectors may be directly deleted; in another implementation, after determining the area, the satellite image corresponding to the area may be cut and the second vector may be re-determined.
[0115] Among them, see Figure 7 , S110 includes:
[0116] S110-1, taking the coordinates of the current position as the origin, determine the activity interval of the next position according to the current movement speed and sampling period.
[0117] S110 - 2 , using satellite images located within the activity area to update a plurality of preset satellite images.
[0118] That is, when updating the preset multiple satellite images, a circle is drawn with the coordinates of the current position as the origin, and the radius is determined by the movement speed of the drone and the sampling period to determine the activity interval of the next position. For example, see Figure 8 , if the current position is point A, after determining the coordinate information of point A, when determining the position information point B of the next cycle, point A is used as the center of the circle, and the radius is determined based on the current speed and sampling period to make a circle, and then the range of point B is determined, and point B must be within the circle. For example, if the sampling period is 1S and the flight speed of the drone is 1m / S, then in the next sampling period, the drone flies for 1S, that is, the drone flies for 1m. On this basis, the flight of the drone may be affected by the real-time wind force, so a certain error interval can also be set to determine the activity radius of the next position, such as the radius of the activity interval can be set to 2m or 5m.
[0119] Please continue reading Fig. 9 In the actual positioning process, the coordinate information of the sampling point is continuously determined, and the second vector corresponding to the next position is continuously updated. As shown in the figure, the image taken at point A is matched with the preset satellite image, and after the coordinates of point A are determined, the activity interval of the next period sampling point (point B) is determined based on point A, and the second vector corresponding to point B is determined accordingly; on this basis, after the coordinate information of point B is determined, the activity interval of the next period sampling point (point C) is continued to be determined based on point B, and the second vector corresponding to point C is determined accordingly, and so on, until it is determined that the UAV has completed the flight, or the GNSS signal status is updated to good.
[0120] Generally speaking, when the drone flies forward in the previous cycle, the flight direction of the next cycle will not change suddenly, that is, it will not fly backward. Therefore, as an implementation method, the route of the drone can also be obtained, and then the activity interval of the next position can be determined by the route, current movement speed, and sampling period. At this time, the determined activity interval is no longer a circle, but a semicircle, and the semicircle is the semicircle drawn by the forward movement of the drone.
[0121] Based on the above implementation, please refer to Fig.10 The embodiment of the present application further provides a positioning device 200, the positioning device 200 comprising:
[0122] The data acquisition unit 210 is used to acquire an image taken at the current position when in a low signal environment.
[0123] It can be understood that S102 can be executed by the data acquisition unit 210 .
[0124] The data processing unit 220 is used to process the image using a preset model to obtain a first vector corresponding to the image.
[0125] It can be understood that S104 can be executed by the data processing unit 220 .
[0126] The data matching unit 230 is used to match the first vector with second vectors corresponding to a plurality of preset satellite images, and use the satellite image with the highest similarity as the target satellite image, wherein each satellite image is associated with coordinate information.
[0127] It can be understood that S106 can be executed by the data matching unit 230 .
[0128] The coordinate information determining unit 240 is used to use the coordinate information of the target satellite image as the coordinate information of the current position.
[0129] It can be understood that S108 can be executed by the coordinate information determining unit 240 .
[0130] Of course, each step in the above implementation has a corresponding functional module, and since the above embodiment has been described in detail, it will not be repeated here.
[0131] In summary, the embodiments of the present application provide a positioning method, device, electronic device and storage medium. When in a low-signal environment, an image taken at the current position is obtained, and then the image is processed using a preset model to obtain a first vector corresponding to the image, and then the first vector is matched with a second vector corresponding to a plurality of preset satellite images, and the satellite image with the highest similarity is used as the target satellite image, wherein each satellite image is associated with coordinate information, and finally the coordinate information of the target satellite image is used as the coordinate information of the current position. Through the positioning method provided by the present application, in a low-signal environment, it is possible to switch to a method of comparing the image taken at the current position with the satellite image for positioning, and then positioning is performed using the coordinate information associated with the satellite image, thereby achieving positioning in an environment without GNSS signals and ensuring the precise operation of the drone.
[0132] In the embodiments provided in the present application, it should be understood that the disclosed devices and methods may also be implemented in other ways. The device embodiments described above are merely schematic, for example, the flowcharts and block diagrams in the accompanying drawings show the possible architectures, functions and operations of the devices, methods and computer program products according to the embodiments of the present application. In this regard, each box in the flowchart or block diagram may represent a module, a program segment or a part of a code, and the module, program segment or a part of a code includes one or more executable instructions for implementing a specified logical function.
[0133] It should also be noted that in some alternative implementations, the functions marked in the blocks may also occur in a different order than that marked in the accompanying drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in the opposite order, depending on the functions involved.
[0134] It should also be noted that each box in the block diagram and / or flowchart, and combinations of boxes in the block diagram and / or flowchart, can be implemented by a dedicated hardware-based system that performs the specified functions or actions, or can be implemented by a combination of dedicated hardware and computer instructions.
[0135] In addition, the functional modules in the embodiments of the present application may be integrated together to form an independent part, or each module may exist separately, or two or more modules may be integrated to form an independent part.
[0136] If the functions are implemented in the form of software function modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application can be essentially or partly embodied in the form of a software product that contributes to the prior art. The computer software product is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in the embodiment of the present application. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory, a random access memory, a magnetic disk, or an optical disk.
[0137] Although the present invention is disclosed as above, the present invention is not limited thereto. Any person skilled in the art can make various changes and modifications without departing from the spirit and scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the scope defined by the claims.
Claims
1. A positioning method, characterized in that: The positioning method comprises: When in a low signal environment, obtain images taken at the current location; Processing the image using a preset model to obtain a first vector corresponding to the image; Matching the first vector with second vectors corresponding to a plurality of preset satellite images, and taking the satellite image with the highest similarity as the target satellite image, wherein each satellite image is associated with coordinate information; Using the coordinate information of the target satellite image as the coordinate information of the current position; Updating the preset multiple satellite images according to the coordinate information of the current position; When determining the positioning information of the next position, the positioning information is determined based on the first vector corresponding to the image taken at the next position and the second vector corresponding to the updated plurality of satellite images; wherein, The step of updating the preset multiple satellite images according to the coordinate information of the current position includes: Taking the coordinates of the current position as the origin, determine the activity interval of the next position according to the current movement speed and sampling period; The preset plurality of satellite images are updated using satellite images located within the activity interval.
2. The positioning method according to claim 1, characterized in that: Before the step of acquiring an image captured at the current position when in a low signal environment, the method further includes: Obtain global satellite images; Cropping the global satellite image to obtain a plurality of preset satellite images; The preset multiple satellite images are processed using the preset model to obtain a second vector corresponding to each of the multiple satellite images.
3. The positioning method according to claim 2, characterized in that: The step of clipping the global satellite image comprises: The global satellite image is cropped at equal intervals.
4. The positioning method according to claim 2, characterized in that: The step of obtaining a global satellite image comprises: Get the input area information; The image where the regional information is located in the global satellite image is used as the global satellite image.
5. The positioning method according to claim 1, characterized in that: The step of matching the first vector with second vectors corresponding to a plurality of preset satellite images and taking the satellite image with the highest similarity as the target satellite image includes: determining the Euclidean distance between the first vector and each second vector in sequence; The satellite image with the smallest Euclidean distance is taken as the target satellite image.
6. A positioning device, characterized in that: Used to perform the positioning method according to any one of claims 1 to 5, the positioning device comprises: A data acquisition unit, used to acquire an image taken at a current position when in a low signal environment; A data processing unit, used to process the image using a preset model to obtain a first vector corresponding to the image; A data matching unit, configured to match the first vector with second vectors corresponding to a plurality of preset satellite images, and use the satellite image with the highest similarity as a target satellite image, wherein each satellite image is associated with coordinate information; The coordinate information determining unit is used to use the coordinate information of the target satellite image as the coordinate information of the current position.
7. An electronic device, characterized in that: include: A memory for storing one or more programs; processor; When the one or more programs are executed by the processor, the method according to any one of claims 1 to 5 is implemented.
8. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the method according to any one of claims 1 to 5 is implemented.
Citation Information
Patent Citations
Unmanned aerial vehicle target positioning method and system
CN106295613A
Image matching method, device, positioning method and system
CN109146936A
Equipment positioning method and device, electronic equipment and readable storage medium
CN113252045A
Geolocation with aerial and satellite photography
US20210383144A1
Positioning method and apparatus
WO2017161588A1
