Method and device for generating flight route of drone
Patent Information
- Application Number
- KR1020240161697
- Authority / Receiving Office
- KR · KR
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2024-11-14
- Publication Date
- 2026-10-13
- Estimated Expiration
- 2044-11-14
Smart Images

Figure 112024125232195-PAT00002_ABST
Abstract
Description
Technology Field
[0001] The present invention relates to a method for generating a flight route for a drone and an apparatus thereof. Specifically, the present invention relates to a system for automatically generating a flight route that a drone must pass through to monitor conditions such as roads. Background Technology
[0002] A drone is an aircraft (airplane) without a human pilot on board, capable of autonomous flight in an automatic or semi-auto-piloted manner, either remotely piloted from the ground or following a pre-programmed path. Consequently, as it can be utilized in various fields such as drone security, drone delivery, drone taxis, and drone police, it is considered a promising technology of the Fourth Industrial Revolution and is expected to become an integral part of human life.
[0003] Furthermore, in September 2020, the Ministry of Land, Infrastructure and Transport distributed drones for inspecting road facilities to regional land management offices nationwide, and over the past four years, drones have been used to detect and crack down on approximately 20,000 cases of reckless driving on highways. With the utilization of drone functions for continuous management tasks such as industrial facility safety and road facilities, their use is also expected to extend to slope inspections and bridge inspections.
[0004] However, there are several limitations to providing accurate flight paths for drones. In particular, since high-accuracy drone routes are required for road management patrols, this technology is emerging.
[0005] In addition, when setting automatic drone routes, there is a growing demand to establish the optimal flight path while taking into account factors such as terrain and hazards.
[0006] The information described above may be provided as related art for the purpose of aiding understanding of the present disclosure. No claim or determination is made as to whether any of the foregoing may be applied as prior art related to the present disclosure. Prior art literature
[0007] Republic of Korea Registered Patent No. 10-2301530 (Published September 10, 2021) The problem to be solved
[0008] One objective of the present invention to solve the above-mentioned problems is to provide a method for generating a flight path of a drone and an apparatus thereof according to embodiments. means of solving the problem
[0009] As an embodiment of the present disclosure, a method for generating a flight path of a drone is proposed. The method for generating a flight path of a drone comprises: a step of generating a plurality of waypoints based on road access zone information and automatically generating a virtual drone path by selecting at least some of the generated plurality of waypoints; a step of setting a safety grid area expressed in three-dimensional spatial coordinates using the generated virtual drone path; and a step of generating drone path information including the virtual drone path and the safety grid area and providing it to the drone.
[0010] The step of automatically generating the virtual drone path may include: a step of setting a plurality of waypoints based on the road access zone information; a step of setting a cost for each of the plurality of waypoints in relation to ground terrain features; and a step of setting a drone flight path for the plurality of waypoints with the costs reflected.
[0011] The step of setting a drone flight path for a plurality of waypoints reflecting the above costs may include: clustering the plurality of waypoints reflecting the above costs into a plurality of clusters; connecting at least one of the plurality of clusters to generate a plurality of path graphs; and selecting one of the plurality of path graphs to set as a drone flight path.
[0012] The step of automatically generating the virtual drone path may further include: a step of performing height flattening based on height information for the drone flight path; and a step of setting the height-flattened drone flight path as the virtual drone path.
[0013] The above plurality of waypoints are set based on road information included in the road zone information, and may be set at a location spaced a certain distance from the boundary of the road.
[0014] The step of clustering multiple waypoints reflecting the above costs into multiple clusters may include the step of clustering into multiple clusters based on density-based spatial clustering of applications with noise (DBSCAN).
[0015] The step of generating a plurality of path graphs by connecting at least one of the plurality of clusters may include: a step of generating a plurality of Minimum Spanning Trees (MSTs) by connecting one or more waypoints included in each cluster; and a step of interconnecting the generated plurality of Minimum Spanning Trees, wherein a first waypoint within the first Minimum Spanning Tree and a second waypoint within the second Minimum Spanning Tree are connected by the shortest distance.
[0016] The method for generating a flight path of the drone described above may further include the step of setting at least one waypoint based on waypoint setting information input from a user terminal, and generating the drone path information such that the waypoint is included in the virtual drone path by assigning a weight to the cost of at least one waypoint corresponding to the at least one waypoint.
[0017] As an embodiment of the present disclosure, a flight path generation device for a drone is proposed. The flight path generation device for a drone includes at least one processor; and a memory for storing instructions. When the instructions are executed individually or collectively by the at least one processor, the processor generates a plurality of waypoints based on road zone information, selects at least some of the generated plurality of waypoints to automatically generate a virtual drone path, sets a safety grid area represented by three-dimensional spatial coordinates using the generated virtual drone path, and generates drone path information including the virtual drone path and the safety grid area, and provides it to the drone. Effects of the invention
[0018] According to various embodiments of the present disclosure, a flight path for a drone to automatically and safely monitor a road without human intervention can be generated.
[0019] According to various embodiments of the present disclosure, an optimized flight path is generated so that a drone can efficiently monitor a road at minimum cost.
[0020] According to various embodiments of the present disclosure, a safe flight path can be generated for a drone to fly, and at the same time, an optimal flight path can be generated so that the flight paths are naturally connected.
[0021] According to various embodiments of the present disclosure, a hazardous area where danger may occur during flight or crash of a drone, such as a transmission tower or a nearby highway, is set, and a path to avoid such hazardous area is automatically set to generate an optimal flight path for the drone more safely and precisely.
[0022] According to various embodiments of the present disclosure, by automatically setting a flight path to set an arbitrarily set path by the user as an intermediate path, an optimal flight path can be dynamically set by reflecting the user's input point or path.
[0023] The effects obtainable from the present disclosure are not limited to those mentioned above, and other unmentioned effects will be clearly understood by those skilled in the art to which the present disclosure belongs from the description below. Brief explanation of the drawing
[0024] FIG. 1 is a conceptual diagram illustrating a flight path generation system for a drone according to various embodiments of the present disclosure. FIG. 2 is a flowchart for explaining a method for generating a flight path of a drone according to various embodiments of the present disclosure. FIG. 3 is a conceptual diagram illustrating a flight path generating device for a drone according to various embodiments of the present disclosure. FIG. 4 is a flowchart for explaining an embodiment of a method for generating a flight path of a drone performed in a flight path generating device of a drone shown in FIG. 3. FIG. 5 is a block diagram illustrating an embodiment of the drone path generation unit illustrated in FIG. 3. FIG. 6 is a flowchart for explaining an embodiment of a method for generating a flight path of a drone performed in a drone path generation unit illustrated in FIG. 5. FIG. 7 illustrates the process of a drone flight path generating device generating one or more waypoints according to various embodiments of the present disclosure. FIG. 8 illustrates various embodiments for deriving height information of waypoints according to various embodiments of the present disclosure. FIG. 9 shows an example of a caution zone as an example of a cost setting according to various embodiments of the present disclosure. FIG. 10 is a drawing illustrating an example of a virtual drone path that is set differently depending on whether the cost for the waypoint is reflected, according to various embodiments of the present disclosure. FIG. 11 illustrates a detailed process of a drone flight path generating device according to various embodiments of the present disclosure, clustering waypoints, connecting waypoints by cluster, and connecting clusters to each other. FIG. 12 is a diagram showing an example of a drone flying a flight path derived using a road graph according to various embodiments of the present disclosure, and an actual drone flying. FIG. 13 is a drawing illustrating waypoints and a safety grid for the flight of a drone according to various embodiments of the present disclosure. FIG. 14 illustrates a method for setting a safety grid in the process of generating multiple paths so that multiple drones can fly. FIG. 15 is a flowchart illustrating a height flattening method according to various embodiments of the present disclosure. FIG. 16 is a drawing illustrating an example of a height-flattened virtual drone path according to various embodiments of the present disclosure. FIG. 17 is a drawing illustrating examples of a route setting interface and an interface for displaying a virtual drone path according to various embodiments of the present disclosure. FIG. 18 is a drawing illustrating an example of an interface displaying a safety area and a virtual drone path according to various embodiments of the present disclosure. FIG. 19 is a block diagram for illustrating a drone according to various embodiments of the present disclosure. FIG. 20 is a block diagram illustrating a flight path generation device for a drone according to various embodiments of the present disclosure. Specific details for implementing the invention
[0025] Hereinafter, embodiments of the present disclosure are described in detail with reference to the drawings so that those skilled in the art can easily practice them. However, the present disclosure may be embodied in various different forms and is not limited to the embodiments described herein. In relation to the description of the drawings, the same or similar reference numerals may be used for identical or similar components. Furthermore, in the drawings and related descriptions, descriptions of well-known functions and configurations may be omitted for clarity and brevity.
[0026] The various embodiments of this document and the terms used therein are not intended to limit the technical features described in this document to specific embodiments, and should be understood to include various modifications, equivalents, or substitutions of said embodiments. In connection with the description of the drawings, similar reference numerals may be used for similar or related components. The singular form of a noun corresponding to an item may include one or more of said items unless the relevant context clearly indicates otherwise. In this document, phrases such as "A or B," "at least one of A and B," "at least one of A or B," "A, B or C," "at least one of A, B and C," and "at least one of A, B, or C" may each include any one of the items listed together in the corresponding phrase, or all possible combinations thereof. Terms such as "first," "second," or "first" or "second" may be used simply to distinguish said components from other said components and do not limit said components in any other aspect (e.g., importance or order). Where any (e.g., 1st) component is referred to as "coupled" or "connected" to another (e.g., 2nd) component, with or without the terms "functionally" or "communicationly," it means that said any component may be connected to said other component directly (e.g., via a wire), wirelessly, or through a third component.
[0027] The term “module” as used in the various embodiments of this document may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit, for example. A module may be a component formed integrally, or a minimum unit of said component or a part thereof that performs one or more functions. For example, according to one embodiment, a module may be implemented in the form of an application-specific integrated circuit (ASIC).
[0028] Various embodiments of this document may be implemented as software (e.g., a program) comprising one or more instructions stored in a storage medium (e.g., memory) readable by a machine or device. For example, the processor of the machine or device may call at least one of the one or more instructions stored from the storage medium and execute it. This enables the machine to operate to perform at least one function according to the at least one called instruction. The one or more instructions may include code generated by a compiler or code that can be executed by an interpreter. The storage medium readable by a machine may be provided in the form of a non-transitory storage medium. Here, "non-transitory" simply means that the storage medium is a tangible device and does not contain a signal (e.g., electromagnetic waves), and this term does not distinguish between cases where data is stored semi-permanently and cases where it is stored temporarily in the storage medium.
[0029] According to one embodiment, the method according to the various embodiments disclosed herein may be provided by being included in a computer program product. The computer program product may be traded between a seller and a buyer as a product. The computer program product may be distributed in the form of a device-readable storage medium (e.g., compact disc read-only memory (CD-ROM)), or distributed online (e.g., download or upload) through an application store or directly between two user devices (e.g., smartphones). In the case of online distribution, at least a portion of the computer program product may be temporarily stored or temporarily created on a device-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or a relay server.
[0030] According to various embodiments, each component (e.g., module or program) of the components described above may include a singular or multiple entities, and some of the multiple entities may be separated and placed in other components. According to various embodiments, one or more of the components or operations of the aforementioned components may be omitted, or one or more other components or operations may be added. Generally or additionally, multiple components (e.g., module or program) may be integrated into a single component. In this case, the integrated component may perform one or more functions of each of the multiple components in the same or similar manner as those performed by the corresponding component among the multiple components prior to integration. According to various embodiments, operations performed by the module, program, or other components may be executed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations may be executed in a different order, omitted, or one or more other operations may be added.
[0031] In this disclosure, the term "processor" may refer to hardware capable of performing functions and operations according to each designation described herein, computer program code capable of performing specific functions and operations, or an electronic recording medium loaded with computer program code capable of performing specific functions and operations. According to an embodiment, the operation of the processor may be defined and / or interpreted as the operation of a flight path generation device of a drone, but is not limited thereto. The term "processor" may refer to a functional and / or structural combination of hardware for carrying out the technical concept of this disclosure and / or software for driving said hardware.
[0032] In this specification, unmanned aerial vehicles are collectively referred to as drones, but are not limited thereto. The present invention is applicable to various unmanned aerial vehicles capable of photography and autonomous flight in addition to drones.
[0034] FIG. 1 is a conceptual diagram illustrating a flight path generation system for a drone according to various embodiments of the present disclosure.
[0035] Referring to FIG. 1, the system includes a drone (100) and a flight path generating device for the drone (300, hereinafter abbreviated as 'flight path generating device'), and may further include a user terminal (200).
[0036] The drone (100) receives drone path information from the flight path generating device (300) and can autonomously perform flight based on the drone path information. While autonomously flying, the drone (100) can perform various activities such as image acquisition and transmission, data detection, and danger alerts.
[0037] The flight path generating device (300) can automatically set a flight path for the drone (100). To this end, the flight path generating device (300) can set a virtual drone path, which is a flight path of a virtual drone, and generate drone path information for the virtual drone path and provide it to the drone (100).
[0038] The flight path generating device (300) can generate the optimal flight path of the drone more safely and precisely by setting a dangerous area where danger may occur when the drone flies or crashes, such as a transmission tower or a nearby highway, and automatically setting a path to avoid such dangerous area.
[0039] The flight path generating device (300) can automatically set a flight path by setting a path arbitrarily set by the user as an intermediate path. For example, through the user terminal (200), the user can set a specific point as an essential transit route or transit point in the flight path generating device (300), and the flight path generating device (300) can automatically set such an essential transit route or transit point to be included when generating a virtual drone path. Through this, an optimal flight path can be dynamically set while reflecting the user's input point or path.
[0040] The flight path generating device (300) can perform automatic control, such as automatic patrolling via the drone, in conjunction with the drone (100). Additionally, the flight path generating device (300) can generate and manage control information related to the automatic control of the drone (100). The control information includes real-time relaying or storage of video acquired from the drone (100), and data generated by various drone control activities performed by the drone (100), such as event detection and sensing data collection, may also be included in the control information.
[0041] The user terminal (200) can be a variety of computing devices such as a PC (Personal Computer), tablet PC, smartphone, laptop, etc.
[0042] The flight path generating device (300) may be implemented as a server, but is not limited thereto. For example, the flight path generating device (300) may be implemented as a laptop or smartphone with a dedicated program installed. As another example, at least some functions of the flight path generating device (300) may be implemented as a computing device embedded in or attached to the drone (100).
[0044] With reference to FIGS. 2 to 18, a method and apparatus for generating a flight path of such a drone will be described in more detail below.
[0046] FIG. 2 is a flowchart for explaining a method for generating a flight path of a drone according to various embodiments of the present disclosure.
[0047] Referring to Fig. 2, an example of a method for generating a flight path of a drone is described.
[0048] The user terminal (200) can make a drone control request to the flight path generating device (300) (S201). For example, the drone control request may be a request to control flight in a specific path or specific area for purposes such as inspecting road facilities, searching for road accidents, or checking real-time road conditions.
[0049] The flight path generation device (300) can generate a virtual drone path using a drone control request. For example, it can generate multiple waypoints based on road zone information and automatically generate a virtual drone path by selecting at least some of the generated multiple waypoints (S202).
[0050] Roadside zone information can be determined using geographic information data, and a roadside zone refers to an area adjacent to a road. In other words, to prevent direct impact on roads or traffic even in the event of a drone crash, a roadside zone can be established as an area adjacent to a road that is outside the road, for example, within a certain distance from the road.
[0051] The flight path generating device (300) can automatically generate a safety grid area by using a virtual drone path when it is set (S203).
[0052] A safety grid is a cubic space with a specified length, and it refers to a space established to enable the drone to fly safely by configuring this safety grid in correspondence with the drone path.
[0053] The flight path generating device (300) can generate drone path information including a virtual drone path and a safety grid area and provide it to the drone (S204), and the drone can perform drone control while flying autonomously according to the drone path information and provide control data to the flight path generating device (300) or the user terminal (200) (S205).
[0054] For example, when setting a virtual drone path, the user may ensure that specific points are included. For instance, the user terminal (200) may set a route or a point of way to generate route setting information and provide it to the flight path generating device (300) (S206), and the flight path generating device (300) may generate a virtual drone path that includes the route or point of way of way of the route setting information, and generate drone path information based thereon and provide it to the drone (S207).
[0056] Hereinafter, with reference to FIGS. 3 to 18, various embodiments of a flight path generating device (300) and a method for generating a flight path of a drone performed thereon will be described.
[0058] FIG. 3 is a block diagram illustrating a flight path generation device for a drone according to various embodiments of the present disclosure.
[0059] Referring to FIG. 3, the flight path generating device (300) may include a drone path generating unit (310), a safety grid setting unit (320), and a drone control management unit (330). According to an embodiment, the flight path generating device (300) may further include a transit route setting unit (340) or an automatic patrol management unit (350).
[0060] The drone path generation unit (310) can identify a road access zone based on geographical information data and automatically generate a drone path based on the road access zone. This drone path can be expressed as three-dimensional spatial coordinates.
[0061] The safety grid setting unit (320) can set a grid space that is a three-dimensional grid space having a specific spatial volume for the road zone and its aerial space. For example, the road zone and its aerial space can be divided into a plurality of three-dimensional cubic grid spaces, and among them, a space that is safe for a drone to fly can be set as a safety grid.
[0062] The safety grid area can be established based on the drone path; if the drone path is the route itself, the safety grid area is the space where the drone can actually fly, and it can be the spatial area that includes the drone path.
[0063] For convenience of explanation, the grid area and the safety grid area are described below based on a cubic grid space, but are not limited thereto. Depending on the embodiment, the grid area may be set as a rectangular parallelepiped area or implemented as a space in which the size or side lengths are dynamically changed.
[0064] The drone control management unit (330) can provide control commands to the drone (100) and perform the collection, management, and storage of control data provided by the drone (100). For example, control commands may include patrolling, detection of abnormal events, and analysis of road conditions.
[0065] For example, the drone control management unit (330) can provide various control functions, such as identifying events or determining dangerous situations based on data provided by the drone and providing an alarm to the user through a user terminal.
[0066] For example, the drone control management unit (330) can check the flight position of the drone in real time by referring to the flight path of the completed drone and check whether the drone is operating correctly along the flight path. In addition, the drone control management unit (330) can control the flight position, flight height (altitude), and flight type (speed, acceleration, etc.) of the drone by checking information on waypoints on the flight path in real time.
[0067] The route setting unit (340) can set route setting information in conjunction with a user terminal and provide it to the drone path generation unit (310).
[0068] For example, the transit route setting unit (340) identifies waypoints corresponding to transit points included in the transit setting information and provides them to the drone path generation unit (310), and the drone path generation unit (310) can assign a cost weight to the waypoints corresponding to such transit points so that the transit points are included in the virtual drone path.
[0069] For example, the transit route setting unit (340) may receive a transit point or a transit route as transit setting information. If a transit route is specified, the transit route setting unit (340) may separate the transit route into multiple transit points and set them. Through this process, mapping with waypoints can be facilitated.
[0070] FIG. 17 is a drawing illustrating an example of a route setting interface and an interface for displaying a virtual drone path according to various embodiments of the present disclosure. The route setting unit (340) may provide a route addition interface (1701) as shown in FIG. 17, and may provide an interface for setting a route point (1704) in addition to a starting point (1703). In addition, it may also provide an interface (1702) for displaying such route setting information.
[0071] The automatic patrol management unit (350) can perform patrol management and monitoring of the drone. For example, when a drone path and a safety grid are set for a first patrol course, the automatic patrol management unit (350) can set a patrol cycle for the first patrol course and control the drone to automatically perform a patrol when the patrol cycle is reached. The automatic patrol management unit (350) can store result data regarding the patrol performance so that a user can check the records of the patrol automatically performed by the drone.
[0072] FIG. 18 is a drawing illustrating an example of an interface displaying a safety area and a virtual drone path according to various embodiments of the present disclosure, and the automatic patrol management unit (350) can provide a virtual monitoring interface to a user terminal as in the example shown in FIG. 18.
[0073] In the interface displaying the safety area and virtual drone path, in addition to the view selection box (1801), a safety area grid (1821, 1822) is displayed, and among the safety area grids, safety area grids with a high risk level can be indicated in a different color (1821). Additionally, the virtual drone path (1811, 1812) can also be visually represented in this interface. Although FIG. 18 illustrates an interface in the form of a virtual simulation, it can also be displayed in conjunction with patrol management and monitoring data captured by an actual drone.
[0075] FIG. 4 is a flowchart for explaining an embodiment of a method for generating a flight path of a drone performed in a flight path generating device of a drone shown in FIG. 3.
[0076] In one embodiment of FIG. 4, the drone path generation unit (310) can generate a plurality of waypoints at regular intervals in the road zone and generate a drone path by setting a path based on the plurality of waypoints (S410).
[0077] The safety grid setting unit (320) can set a grid space that is a three-dimensional grid space having a specific spatial volume for the road zone and its aerial space, and can set a safety grid area based on a virtual drone path (S420).
[0078] The drone control management department (330) can generate drone path information including the drone path and a safety grid area thereon and provide it to the drone (S430).
[0079] The drone control management unit (330) can provide control commands related to the drone path information and can receive and monitor control data provided from the drone (S440).
[0081] Referring to Figures 5 and 6, a method for generating a virtual drone path will be explained.
[0082] FIG. 5 is a block diagram for explaining an embodiment of a drone path generation unit illustrated in FIG. 3, and FIG. 6 is a flowchart for explaining an embodiment of a method for generating a flight path of a drone performed in the drone path generation unit illustrated in FIG. 5.
[0083] Referring to FIG. 5, the drone path generation unit (310) may include a waypoint generation unit (311), a cost setting unit (312), a waypoint path determination unit (313), and a drone path generation unit (315). According to an embodiment, the drone path generation unit (310) may further include a flattening post-processing unit (314).
[0084] The waypoint generation unit (311) can set multiple waypoints, which are three-dimensional spatial coordinates, based on the road zone included in the geographic information data (S610).
[0085] The cost setting unit (312) can set the cost for each waypoint in relation to ground terrain features (S620).
[0086] The waypoint path determination unit (313) can set multiple path graphs by reflecting costs for multiple waypoints (S630).
[0087] Afterwards, one of the multiple path graphs can be selected to set the drone flight path (S640).
[0088] The flattening post-processing unit (314) can perform height flattening based on height information for the drone flight path (S650).
[0089] The drone path generation unit (315) can set a high-level, flattened drone flight path as a virtual drone path (S660).
[0091] Hereinafter, various embodiments of a method for generating a flight path of a drone performed in a drone path generation unit will be described in more detail with reference to FIGS. 7 to 16.
[0093] FIG. 7 illustrates the process of a drone flight path generating device generating one or more waypoints according to various embodiments of the present disclosure.
[0094] In FIG. 7, the waypoint generation unit (311) generates waypoints based on map data and shows an example of determining information about the waypoints (location information, height information, attribute information, etc.).
[0095] The waypoint generation unit (311) can obtain map data (e.g., a high-precision road map, a cadastral map, topographic data, etc.) (200) to identify a road area (701). The road area (701) can be extracted, for example, from high-precision road map data (700), and the waypoint generation unit (311) can identify the road area (701) based on the geometry of the road.
[0096] In one embodiment, the waypoint generation unit (311) can look up a plurality of roads to identify the right-most boundary of the road. Then, the waypoint generation unit (311) can detect points spaced a certain distance from the identified boundary on a two-dimensional plane and can generate these points as waypoints (703) in a plan view.
[0097] Here, the waypoint (203) may be a point located at a certain distance from the far right point relative to the direction of travel of the road. In FIG. 7, since the road (701) is a two-way road, waypoints (703) may be created in the roadside zones on both sides of the road.
[0098] For example, if the type of road (701) in Fig. 7 is a highway, there may be cases where location information of shifts can be checked. This type of road can be set as a 'main road'. On the main road, shifts exist at regular intervals, and a shift is a structure installed near the far right boundary of the highway, installed at regular intervals. In this case, the waypoint generation unit (311) can generate points spaced at a certain distance from the shift as waypoints (703).
[0099] If the distance between two stops is greater than a certain distance, it is necessary to generate waypoints (703) more densely. In this case, the waypoint generation unit (311) may divide the line segment connecting the two stops into equal intervals and generate waypoints (703) at the divided points.
[0100] The waypoint generation unit (311) may have a road type with a sharp curve or an irregular shape, and may have no shifts. This type of road can be set as a 'ramp' road. In this case, the waypoint generation unit (311) can detect an area demarcated by an actual road, and after confirming the rightmost boundary line in the detected area, it can set waypoints by dividing the area by a certain distance from the boundary line and checking points separated at regular intervals.
[0101] The waypoint generation unit (311) can automatically detect all roads existing on the map data (700) through the operation described above and automatically generate waypoints (703) at optimal locations.
[0103] FIG. 8 illustrates various embodiments for deriving height information of waypoints according to various embodiments of the present disclosure.
[0104] The waypoint generation unit (311) can set height information for each waypoint, and this is explained with reference to FIG. 8.
[0105] Specifically, FIG. 3 is a diagram illustrating various methods for a device according to embodiments to determine location information and height information of waypoints based on map data.
[0106] First, referring to FIG. 8(A), 80A-1 represents a road. In one embodiment, a waypoint generation unit (311) defines the rightmost priority of the road and can generate waypoints at points (80A-2) located in a road section spaced a certain distance (xm) from the rightmost priority boundary. Here, the certain distance (xm) may be flexibly set by an administrator and may be set in various ways depending on the type of road, the size of the road, etc.
[0107] FIG. 8(B) shows a general case indicating the height of a waypoint. The height of a waypoint can generally be a height located at a certain distance (Y m) from the ground at the point where the waypoint is located. In FIG. 8(B), the point indicated by 81A-1 is a waypoint, which can form the flight path of the drone.
[0108] FIG. 8(C) shows another example illustrating the height of a waypoint. The terrain of the roadside zone may be higher or lower than the road. In the case of FIG. 8(C), the roadside zone has a higher elevation than the road zone. Although not illustrated in FIG. 8, the roadside zone may have a lower elevation than the road zone. Also, although not illustrated in FIG. 8, there may be other elevated roads in the roadside zone.
[0109] In this case, the waypoint generation unit (311) can determine the highest height among 1) the height of the road, 2) the ground height of the road zone, and 3) the height of another road, and then set the height of the waypoint to a height that is spaced a certain distance (Y m) from the highest height.
[0110] FIG. 8(D) shows another example of how to represent the height of a waypoint. FIG. 3(D) shows a case where a road intersects another road at a different height. For example, there may be a case where a road meets a bridge and passes under another road. In this case, if the height is set as in FIG. 8(A) to FIG. 8(C), it may collide with the other passing road. Therefore, in this case, the waypoint generation unit (311) can determine the height of the waypoint as a height that is spaced a certain distance (Y m) away from the height of the bridge.
[0112] The cost setting unit (312, illustrated in FIG. 5) can set costs for each waypoint in relation to ground terrain features.
[0113] Cost is a cost assigned to a waypoint, and the cost for each waypoint can be set differently depending on the environment surrounding that waypoint.
[0114] For example, the cost setting unit (312) can set a high cost for a caution zone where there are facilities or magnetic fields that are subject to caution around the waypoint.
[0115] For example, the cost setting unit (312) can set a high cost by setting it as a caution zone if the waypoint is on a path crossing a road.
[0116] FIG. 9 illustrates an example of a caution zone as an example of a cost setting according to various embodiments of the present disclosure and is described with reference to FIG. 9.
[0117] A caution zone refers to an area where caution is required during the flight of a drone. For example, caution is required during drone flight in an area where large and small structures are complexly located. For instance, it may be necessary to drive at a low speed or increase the flight altitude. Accordingly, the device according to the embodiments may add height information to waypoints existing in the caution zone and control the movement of the drone differently.
[0118] FIG. 9(A) illustrates a road crossing path as an example of a caution zone within a road zone adjacent to a road zone. Since caution is required when operating a drone when another road passes over a road or road zone (e.g., when there is a bridge or an overpass), when there is a railway, or when there are facilities, such areas can be identified and set as caution zones, and higher costs can be set for waypoints within the caution zone.
[0119] FIG. 9(B) illustrates an example of a caution zone defined by a specific object or a pre-set space. For example, if the location of a waypoint is within a certain distance (e.g., 50m) from a nearby transmission tower, caution is required during drone operation, so a higher cost can be set for that waypoint. As another example, if there is a transmission tower connected to a high-voltage power line, areas within a certain distance (e.g., 50m) from the high-voltage power line can be designated as caution zones, and a higher cost can be set for waypoints within the caution zones.
[0121] FIG. 10 is a drawing illustrating an example of a virtual drone path that is set differently depending on whether the cost for the waypoint is reflected, according to various embodiments of the present disclosure.
[0122] Figure 10 illustrates two paths from a starting point to an ending point, a blue path and a red path. The blue path corresponds to the shortest path, and the red path indicates a path with relatively low costs due to road crossing.
[0123] The route cost is determined by summing the costs of multiple waypoints included in each path. Let’s assume that the cost associated with road crossings is significantly higher than the general cost; for instance, let’s assume a cost of 10 is set per waypoint, while a waypoint crossing a road is set to a cost of 1,000, which is 100 times higher. The blue route has two highway crossings with 7 waypoints per crossing, whereas the red route has one highway crossing with 7 waypoints and two waypoints for crossing exit roads, resulting in a cost difference of over 5,000. In this way, by setting a high cost for hazardous areas, the drone's flight path can be established more safely.
[0125] The waypoint path determination unit (313) can generate a path including multiple waypoints based on waypoints and their costs. The blue path and red path in FIG. 10 can be examples of such a path.
[0126] For example, the waypoint path determination unit (313) can generate multiple path graphs using multiple waypoints and set one of the path graphs as a drone flight path by reflecting the cost for the multiple path graphs.
[0127] For example, the waypoint path determination unit (313) actively utilizes an algorithm related to a minimum cost spanning tree or graph to generate an optimized flight path so that the drone can efficiently monitor the road at minimum cost.
[0128] The operation of the waypoint path determination unit (313) will be explained with reference to FIGS. 11 and 12.
[0130] FIG. 11 illustrates a detailed process of a drone flight path generating device according to various embodiments of the present disclosure, clustering waypoints, connecting waypoints by cluster, and connecting clusters to each other.
[0131] The waypoint path determination unit (313) can cluster multiple waypoints based on previously generated waypoints and information about the waypoints—e.g., whether they are associated with the same road. That is, the waypoint path determination unit (313) can cluster multiple waypoints to create one or more clusters so that the same road or connected roads can be classified into the same cluster.
[0132] Each cluster includes waypoints derived from the same road or connected roads. Referring to identification number 1101 in FIG. 11, the solid line drawn on the road illustrates connecting the waypoints so that the clusters can be distinguished by the color of the solid line after clustering multiple waypoints.
[0133] The waypoint path determination unit (313) can perform clustering based on the information of each waypoint (location information, height information, attribute information). At this time, the algorithm used for clustering may be a density-based spatial clustering of applications with noise (DBSCAN) method, but is not limited thereto and various other algorithms can be applied. Referring to 1102 in FIG. 11, the waypoint path determination unit (313) clustered the waypoints to create three clusters.
[0134] The waypoint path determination unit (313) can cluster waypoints to create one or more clusters, and then connect the waypoints included in each cluster to each other.
[0135] For example, the waypoint path determination unit (313) can connect waypoints based on an algorithm that generates a Minimum Spanning Tree (MST) so that one graph is generated for each cluster.
[0136] As a result, the waypoint path determination unit (313) generates multiple clusters, and the waypoints of each cluster can form a graph as a minimum spanning tree. Meanwhile, the algorithm for generating the minimum spanning tree may be, for example, one of the Kruskal algorithm, Prim algorithm, or Sollin algorithm, or a combination thereof, and may be a greedy algorithm, but is not limited thereto.
[0137] Next, the waypoint path determination unit (313) can connect (1102) the minimum spanning trees created in each cluster. At this time, the device according to the embodiments can select a first waypoint and a second waypoint such that the distance (e.g., physical distance in three-dimensional space) between the first waypoint in the first minimum spanning tree and the second waypoint in the second minimum spanning tree is minimized. Then, the waypoint path determination unit (313) can connect the first waypoint and the second waypoint with an edge.
[0138] As a result, the waypoint path determination unit (313) can generate at least one path graph by connecting all minimum spanning trees to each other.
[0139] For example, the waypoint path determination unit (313) can generate a Minimum Spanning Tree (MST) with waypoints within the cluster as nodes and connect the waypoints within the cluster with edges (802). In 1103 of FIG. 11, only the red path graph is shown, but in addition to this, a path graph with yellow paths and blue paths connected can be generated.
[0141] FIG. 12 is a diagram showing an example of a drone flying a flight path derived using a road graph according to various embodiments of the present disclosure, and an actual drone flying.
[0142] Referring to FIG. 12, the waypoint path determination unit (313) sets the cost of the path graph by reflecting all the costs of the waypoints included in the path graph for each path graph, and can select the path graph with the smallest cost of the set path graph as the drone flight path. FIG. 12 illustrates an example of setting a drone flight path based on minimum cost.
[0143] In one embodiment, the waypoint path determination unit (313) can generate a flight path of a drone that can move from a starting point set by a user or manager to a destination point.
[0144] In one embodiment, the waypoint path determination unit (313) can set a path graph such that waypoints corresponding to the route entered by the user are necessarily included. For example, when information about a route is provided by the route setting unit (340), the waypoint path determination unit (313) can identify waypoints within such route. The waypoint path determination unit (313) can set a very large cost—e.g., 10,000 cost, etc.—for other clusters or at least a part of the path that can replace waypoints within the route so that waypoints within the route are necessarily included.
[0145] As described above, the waypoint path determination unit (313) actively utilizes an algorithm related to a minimum cost spanning tree or graph to generate an optimized flight path that allows the drone to efficiently monitor the road at a minimum cost. Accordingly, it can generate a safe flight path for the drone to fly, and at the same time, generate an optimal flight path so that the flight paths are naturally connected.
[0147] FIG. 13 is a drawing illustrating waypoints and a safety grid for the flight of a drone according to various embodiments of the present disclosure.
[0148] FIG. 13 describes an example of setting a safety grid area for a drone path by the safety grid setting unit (320).
[0149] The safety grid setting unit (320) divides the space where a drone path may exist into a predetermined grid space and identifies an area corresponding to a virtual drone path and sets it as a safety grid area.
[0150] In FIG. 13(A), for each waypoint included in the virtual drone path generated by the drone path generation unit (310), the safety grid setting unit (320) sets a safety grid corresponding to each waypoint of the virtual drone path.
[0151] That is, when a waypoint (center point) is set, this waypoint represents an ideal location that can exist on the flight path of the drone. However, when the drone actually flies, space is occupied and problems such as deviating from the waypoint due to wind or control conditions occur, so the safety grid setting unit (320) can set a safety grid, which is a standard space containing each of these waypoints.
[0152] For example, the safety grid setting unit (320) can set the safety grid based on the location and height of the waypoint. For instance, a space of a cube centered on the waypoint (e.g., a cube with a side length of 10m) can be set as the safety grid.
[0153] As another example, the safety grid setting unit (320) can pre-set the space as a pre-standardized grid space and set the space containing the waypoint as a safety grid.
[0154] Figure 13(B) shows the ideal flight of a drone as viewed from a plan view. The drone moves along the drone's flight path (drone path) created by the connection of waypoints, monitoring roads or structures around the roads.
[0155] FIG. 13(C) shows the ideal flight view of a waypoint and a drone as seen from the perspective view. A waypoint can be corresponded to the center of each cube.
[0156] As described above, the safety grid setting unit (320) can automatically detect all roads existing on the map data and set a safety grid corresponding to the waypoints of each virtual drone path.
[0157] Meanwhile, there may be cases where the elevation of the road access zone changes rapidly or the road intersects with other overpasses, in which case the drone's height information may change rapidly from a certain section. For example, referring to Fig. 13(D), in the section where there is a bridge on the road, waypoints may be formed in a range of 50 to 60m from the bridge (9D-1). Similarly, since the area within a specific range (50m) from the bridge is also a 'caution zone,' waypoints may be formed in a range of 50 to 60m from the bridge passed (9D-1). However, in the section outside the specific range from the bridge, that is, the area that is not a surrounding zone, waypoints may again be generated at a height of 50 to 60m from the height of the road (9D-2). In this case, the height between the waypoint located on the far right of 9D-1 and the waypoint located on the far left of 9D-2 may differ significantly. In this case, the safety grid setting unit (320) can stack one or more waypoints (9D-3) so that the space encompassing the waypoints can be connected to each other.
[0158] That is, if the difference in height between two adjacent waypoints generated from a road is greater than a threshold, one or more additional waypoints can be generated at the same location as one of the two waypoints, and the height of each generated waypoint can be set to be added at regular intervals.
[0159] In one embodiment, the safety grid setting unit (320) can dynamically adjust the size of the three-dimensional grid space. Specifically, the safety grid setting unit (320) can actively adjust the size of the grid space by setting the wind strength and a first element for the wind and a second element for the drone's flight capability, respectively, and then combining them.
[0160] For example, the safety grid setting unit (320) can set a first element by checking the wind strength and direction at the time of the scheduled flight. The wind direction is divided into vertical and horizontal components relative to the drone, and the wind strength can be set as the strength in those vertical and horizontal components. For example, the first element can be set as the left rear relative to the drone, and the wind strength as 5 out of 1 to 5. Subsequently, the second element can be set by checking the directional resistance of the drone to the wind. For example, if the drone has high resistance to the lateral direction and low resistance to the vertical direction, these can be quantified—e.g., lateral resistance 5 out of 1 to 5—and set as the second element. The safety grid setting unit (320) can calculate the wind influence deviation of the drone caused by the wind by reflecting the first element and the second element in combination. To do this, for example, the safety grid setting unit (320) may have pre-set flight deviation data according to each value of the first element and the second element. In this way, the safety grid setting unit (320) can actively adjust the size of the grid space in proportion to the wind influence deviation based on the calculated wind influence deviation. Through this embodiment, it is possible to set a space where the drone can fly safely even under the influence of wind.
[0162] FIG. 14 illustrates a method for setting a safety grid in the process of generating multiple paths so that multiple drones can fly.
[0163] If multiple drones are operated on the same flight path, collisions between the drones may occur, and in this case, unexpected damage to the road may occur. Therefore, the safety grid setting unit (320) can generate multiple drone flight paths based on a user's request to generate multiple drone flight paths.
[0164] In this case, the safety grid setting unit (320) may set the safety grid differently for virtual drone paths that are common in at least some parts. FIG. 14 illustrates a method of setting the safety grid so that it does not overlap with each other when generating two drone paths.
[0165] Referring to FIG. 14(A), the safety grid setting unit (320) can create safety grids so as to avoid collisions by making the positions of two safety grids identical but different heights. At this time, the distance between the two safety grids can be set in proportion to the size of the drone flight area as described above.
[0166] Referring to FIG. 14(B), the safety grid setting unit (320) can be configured to avoid collisions by creating two waypoints with different positions and heights. For example, the device according to the embodiments can set a first drone flight path by creating a first waypoint at a height 40 to 50 m away from the road zone, and a second drone flight path can be set by creating a certain distance in the planar direction (x direction and y direction) and a certain distance in height from the second waypoint.
[0167] Referring to FIG. 14(C), the safety grid setting unit (320) can be set so that the heights of two waypoints are equal to each other, but the distances separated in the planar direction (x-direction and y-direction) are different to avoid collision.
[0168] In this way, the safety grid setting unit (320) can set a space-based safety grid to ensure a safe flight path for the drone to fly, thereby enabling the drone to safely monitor the road without colliding with other drones.
[0170] FIG. 15 is a flowchart illustrating a height flattening method according to various embodiments of the present disclosure.
[0171] The height flattening method of Fig. 15 is performed by the flattening post-processing unit (315).
[0172] The flattening post-processing unit (315) can check the altitude values of multiple waypoints included in the drone flight path (S1510).
[0173] The flattening post-processing unit (315) can normalize the confirmed elevation values to a preset scale (S1520). For example, the flattening post-processing unit (315) can normalize all elevation values to a scale of mean 0 and standard deviation 1.
[0174] Afterward, the flattening post-processing unit (315) can perform peak smoothing processing on the normalized elevation value (S1530). Peak smoothing processing means mitigating or removing peaks in continuous data. To this end, the flattening post-processing unit (315) can identify peaks in the normalized elevation value and perform peak smoothing processing on the identified peaks by reflecting the previous elevation value and the subsequent elevation value that are continuous with them.
[0175] For example, the flattening post-processing unit (315) can set the number of pre-set peak values as a sliding window based on the peak point, calculate the average for the sliding window before the peak and the sliding window after the peak, calculate the average altitude value of the two windows, and set the average of the average altitude values of the two windows by replacing the peak altitude value.
[0176] Afterwards, the flattening post-processing unit (315) can convert the peak smoothed elevation value back to the original scale (S1540).
[0177] By smoothing the peak elevation values in this way, it is possible to perform calculations quickly while flattening the elevation values more precisely and reflecting the trend.
[0179] FIG. 16 is a drawing illustrating an example of a height-flattened virtual drone path according to various embodiments of the present disclosure.
[0180] Figure 16 (A) shows the altitude value of the drone before peak smoothing, which indicates that when there is a large difference in height of the ground, the altitude value of the drone is also not flattened.
[0181] Figure 16 (B) illustrates the altitude values of the drone after peak smoothing, and it can be seen that the drone's flight path is smoothed and connected smoothly.
[0182] This peak smoothing allows the drone to minimize unnecessary altitude changes, thereby enabling the drone's flight path to be set very efficiently and, accordingly, significantly improving flight efficiency such as flight time and flight distance.
[0185] FIG. 19 is a block diagram illustrating a drone according to various embodiments of the present disclosure.
[0186] The drone (100) includes a computing device and may include at least a processing unit (103) and a system memory (101).
[0187] The computing device may include multiple processing units that cooperate when executing a program. Depending on the exact configuration and type of the computing device, the system memory (101) may be volatile (e.g., RAM), non-volatile (e.g., ROM, flash memory, etc.), or a combination thereof. The system memory (101) includes a suitable operating system (102) for controlling the operation of the platform, which may be, for example, the WINDOWS operating system from Microsoft. The system memory (101) may include one or more software applications, such as program modules, applications, etc.
[0188] The drone (100) may include a driving device (104), an imaging device (105), a sensing device (106), and a communication device (107).
[0189] The driving device (104) is a mechanical device for flying the unmanned aerial vehicle (100) and a control device for the same. The imaging device (105) is a device for capturing images in the flying vehicle and includes at least one camera, and may also include a distance sensing sensor such as LiDAR depending on the embodiment. The sensing device (106) is a device for collecting sensing data for the unmanned aerial vehicle (100), such as a gyroscope or an accelerometer, and may include a GPS device. The output device (104) may include, for example, a display, a speaker, a printer, and other types of output devices. Since these devices are widely known in the art, a detailed description is omitted.
[0191] FIG. 20 is a block diagram illustrating a flight path generation device for a drone according to various embodiments of the present disclosure.
[0192] Referring to FIG. 20, a computing device such as a server is shown as an example of a flight path generating device (300).
[0193] The computing device may include at least a processing unit (303) and a system memory (301).
[0194] The computing device may include a plurality of processing units that cooperate when executing a program. The processor (101) may include, as an example, at least one of a microprocessor, a central processing unit, a processor core, a multi-core processor, a multiprocessor, an Application-Specific Integrated Circuit (ASIC), or a Field Programmable Gate Array (FPGA), but is not limited thereto.
[0195] System memory (101) may be volatile (e.g., RAM), non-volatile (e.g., ROM, flash memory, etc.), or a combination thereof. System memory (301) includes a suitable operating system (302) for controlling the operation of the platform, which may be, for example, the WINDOWS operating system from Microsoft. System memory (301) may include one or more software applications such as program modules, applications, etc.
[0196] The computing device may include additional data storage devices (304), such as magnetic disks, optical disks, or tapes. These additional storage devices may be removable storage and / or fixed storage. Computer-readable storage media may include volatile and non-volatile, removable and fixed media implemented by any method or technique for storing information such as computer-readable instructions, data structures, program modules, or other data. System memory (301) and storage (304) are merely examples of computer-readable storage media. Computer-readable storage media may include, but are not limited to, RAM, ROM, EERPOM, flash memory or other memory techniques, CD-ROM, DVD or other optical storage, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium that stores desired information and can be accessed by the computing device (300).
[0197] Input devices (305) of a computing device may include, for example, a keyboard, a mouse, a pen, a voice input device, a touch input device, and comparable input devices. Output devices (306) may include, for example, a display, a speaker, a printer, and other types of output devices. Since these devices are widely known in the art, a detailed description is omitted.
[0198] The computing device may include a communication device (307) that allows the device to communicate with other devices through a network in a distributed computing environment, such as a wired / wireless network, a satellite link, a cellular link, a local area network, and a comparable mechanism. The communication device (307) is one example of a communication medium, and the communication medium may contain computer-readable instructions, data structures, program modules, or other data. For example, the communication medium includes, but is not limited to, wired media such as a wired network or direct wired connection, and wireless media such as acoustic, RF, infrared, and other wireless media.
[0200] A flight path generating device for a drone according to various embodiments of the present disclosure may include a computer program stored on a computer-readable recording medium to perform operations described with reference to the drawings above, combined with a computer (or computing device) which is hardware.
[0201] Additionally, the flight path generation device of the drone may be implemented as a computing device comprising at least one processor that executes instructions of programs loaded in memory, and a program including instructions described to execute operations described with reference to the drawings above may be loaded in memory.
[0202] The device described above may be implemented as a hardware component, a software component, and / or a combination of a hardware component and a software component. For example, the device and components described in the embodiments may be implemented using one or more general-purpose or special-purpose computers, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA), a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing unit may execute an operating system (OS) and one or more software applications executed on said operating system. Additionally, the processing unit may access, store, manipulate, process, and generate data in response to the execution of the software. For ease of understanding, the processing unit may be described as being used as a single unit, but those skilled in the art will understand that the processing unit may include multiple processing elements and / or multiple types of processing elements. For example, the processing unit may include multiple processors or one processor and one controller. In addition, other processing configurations, such as parallel processors, are also possible.
[0203] Software may include computer programs, code, instructions, or a combination of one or more of these, and may configure a processing unit to operate as desired or command the processing unit independently or collectively. Software and / or data may be permanently or temporarily embodied in any type of machine, component, physical device, virtual equipment, computer storage medium or device, or transmitted signal wave so as to be interpreted by the processing unit or to provide instructions or data to the processing unit. Software may be distributed over networked computer systems and may be stored or executed in a distributed manner. Software and data may be stored on one or more computer-readable recording media.
[0204] The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc., either alone or in combination. The program instructions recorded on the medium may be those specifically designed and configured for the embodiment, or they may be those known and available to those skilled in the art of computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes; optical recording media such as CD-ROMs and DVDs; magneto-optical media such as floptical disks; and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, and flash memory. Examples of program instructions include machine code, such as that generated by a compiler, as well as high-level language code that can be executed by a computer using an interpreter, etc. The hardware devices described above may be configured to operate as one or more software modules to perform the operation of the embodiment, and vice versa.
[0205] Although the embodiments have been described above with reference to limited examples and drawings, those skilled in the art can make various modifications and variations from the description above. For example, suitable results can be achieved even if the described techniques are performed in a different order than described, and / or the components of the described system, structure, device, circuit, etc. are combined or assembled in a form different from described, or replaced or substituted by other components or equivalents.
[0206] Therefore, other implementations, other embodiments, and equivalents to the claims also fall within the scope of the claims set forth below.
[0207] Although specific embodiments have been described in the detailed description of this document, it will be obvious to those skilled in the art that various modifications are possible within the scope of this document.
Claims
Claim 1 A method for generating a flight path of a drone, comprising: a step of generating a plurality of waypoints based on road access zone information and automatically generating a virtual drone path by selecting at least some of the generated plurality of waypoints; a step of setting a safety grid area expressed in three-dimensional spatial coordinates using the generated virtual drone path; and a step of generating drone path information including the virtual drone path and the safety grid area and providing it to the drone; wherein the step of automatically generating the virtual drone path comprises: a step of setting the plurality of waypoints based on the road access zone information; a step of setting a cost for each of the plurality of waypoints in relation to ground terrain features; a step of clustering the plurality of waypoints with the set costs into a plurality of clusters so that waypoints derived from the same road or connected roads among the plurality of waypoints with the set costs can be classified into the same cluster; a step of generating a plurality of path graphs by connecting at least one of the plurality of clusters; and a step of reflecting all the costs of the waypoints included in the corresponding path graph for each of the plurality of path graphs, and selecting one of the plurality of path graphs with the reflected costs to set as the drone flight path. Claim 2 A method for generating a flight path of a drone according to claim 1, wherein the step of selecting one of a plurality of path graphs reflecting the cost and setting it as the drone flight path includes the step of selecting a path graph having the lowest cost among the plurality of path graphs reflecting the cost and setting it as the drone flight path. Claim 3 delete Claim 4 A method for generating a flight path of a drone according to claim 1, wherein the step of automatically generating the virtual drone path further comprises: a step of performing height flattening based on height information for the drone flight path; and a step of setting the height-flattened drone flight path as the virtual drone path. Claim 5 A method for generating a flight path of a drone according to claim 1, wherein the plurality of waypoints are set based on road information included in the road zone information, and are set at a position spaced apart from the boundary of the road by a certain distance. Claim 6 A method for generating a flight path of a drone, wherein, in claim 1, the step of clustering a plurality of waypoints with reflected costs into a plurality of clusters comprises the step of clustering into a plurality of clusters using density-based spatial clustering of applications with noise (DBSCAN) based on location information, height information, and attribute information of each of the plurality of waypoints with reflected costs. Claim 7 A method for generating a flight path of a drone according to claim 1, wherein the step of generating a plurality of path graphs by connecting at least one of the plurality of clusters comprises: a step of generating a plurality of Minimum Spanning Trees (MSTs) by connecting one or more waypoints included in each cluster; and a step of interconnecting the generated plurality of Minimum Spanning Trees, wherein a first waypoint within the first Minimum Spanning Tree and a second waypoint within the second Minimum Spanning Tree are connected by the shortest distance. Claim 8 A method for generating a flight path of a drone, further comprising the step of: in claim 7, setting at least one waypoint based on waypoint setting information input from a user terminal, and generating drone path information such that the waypoint is included in the virtual drone path by assigning a weight to the cost of at least one waypoint corresponding to the at least one waypoint. Claim 9 In a flight path generation device for a drone, at least one processor; The system includes a memory for storing instructions, and the at least one processor executes the instructions to: generate a plurality of waypoints based on road access zone information; automatically generate a virtual drone path by selecting at least some of the generated plurality of waypoints; set a safety grid area represented by three-dimensional spatial coordinates using the generated virtual drone path; and generate drone path information including the virtual drone path and the safety grid area, and provide it to a drone. In automatically generating the virtual drone path, the at least one processor sets a plurality of waypoints based on the road access zone information; sets a cost for each of the plurality of waypoints in relation to ground terrain features; clusters the plurality of waypoints with set costs into a plurality of clusters so that waypoints derived from the same road or connected roads among the plurality of waypoints with set costs can be classified into the same cluster; generates a plurality of path graphs by connecting at least one of the plurality of clusters; reflects all the costs of the waypoints included in the path graph for each of the plurality of path graphs; and selects one of the plurality of path graphs with reflected costs as the drone flight path. A drone flight path generating device that is additionally configured to be set. Claim 10 A computer-readable recording medium that is combined with hardware and stores a computer program for performing a method for generating a flight path of a drone according to any one of claims 1, 2, 4 through 8.
Citation Information
Patent Citations
A safety path navigator using drone and a method for controlling thereof
KR1020160093504A
Navigation system and method using drone
KR1020210026918A
Server, method and comptuer program for deriving optimum route for logistics using dynamic clustering
KR1020230078155A
Method for searching for optimal route of unmanned aerial vehicle, and server and system for searching for optimal route
WO2018021880A1
Base-type multi-purpose unmanned drone operation system linked with CCTV
KR1020240074964A