WO2021038485A1 - System and method for autonomous navigation of unmanned aerial vehicle (uav) in gps denied environment - Google Patents

System and method for autonomous navigation of unmanned aerial vehicle (uav) in gps denied environment Download PDF

Info

Publication number
WO2021038485A1
WO2021038485A1 PCT/IB2020/058005 IB2020058005W WO2021038485A1 WO 2021038485 A1 WO2021038485 A1 WO 2021038485A1 IB 2020058005 W IB2020058005 W IB 2020058005W WO 2021038485 A1 WO2021038485 A1 WO 2021038485A1
Authority
WO
WIPO (PCT)
Prior art keywords
neural network
network model
artifact
accuracy
uav
Prior art date
Application number
PCT/IB2020/058005
Other languages
French (fr)
Inventor
Chaitanya MURTI
Prafull PRAKASH
Chiranjib Bhattacharyya
Amrutur BHARADWAJ
Original Assignee
Indian Institute Of Science
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Indian Institute Of Science filed Critical Indian Institute Of Science
Publication of WO2021038485A1 publication Critical patent/WO2021038485A1/en

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/10Simultaneous control of position or course in three dimensions
    • G05D1/101Simultaneous control of position or course in three dimensions specially adapted for aircraft
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/10Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
    • G01C21/12Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
    • G01C21/16Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
    • G01C21/165Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments
    • G01C21/1656Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments with passive imaging devices, e.g. cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U2101/00UAVs specially adapted for particular uses or applications
    • B64U2101/30UAVs specially adapted for particular uses or applications for imaging, photography or videography
    • B64U2101/31UAVs specially adapted for particular uses or applications for imaging, photography or videography for surveillance
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U2201/00UAVs characterised by their flight controls
    • B64U2201/10UAVs characterised by their flight controls autonomous, i.e. by navigating independently from ground or air stations, e.g. by using inertial navigation systems [INS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections

Definitions

  • UAV SYSTEM AND METHOD FOR AUTONOMOUS NAVIGATION OF UNMANNED AERIAL VEHICLE (UAV) IN GPS DENIED ENVIRONMENT TECHNICAL FIELD
  • MAVs micro aerial vehicles
  • GPS global positioning system
  • UAV Unmanned aerial vehicles
  • UAV are a class of aircrafts that can fly without the onboard presence of pilots. The UAVs can be controlled by onboard electronic equipments or via control equipment from ground.
  • UAVs For navigation and control of the UAVs, dedicated control systems are devoted that can be mounted aboard vehicles.
  • UAVs are used for observation and tactical planning and are classified based on an altitude range, endurance and weight, and support a wide range of applications including military and commercial applications [0003]
  • GPS receivers the most widely used navigation technologies for the UAVs. Satellite-based GPS navigation techniques can offer relatively consistent accuracy if sufficient GPS signals can be tracked during the entire UAV mission. However in areas where GPS signals are not available navigation of the UAVs is challenging. Also, occurrence of GPS signal blockage can cause a significant deviation in the GPS navigation solutions.
  • Prevalent techniques use a Convolutional neural network (CNN) for autonomous navigation of the UAVs in GPS denied environments, however deploying CNNs on low power devices that do not have high power Central processing units (CPUs) is a challenging task due to high speed of travel of the UAVs based on reactive control decisions and on inputs such as images taken from an on board camera.
  • CNN Convolutional neural network
  • CPUs Central processing units
  • An object of the present disclosure is to provide a system and method that facilitate autonomous navigation of MAVs on roads using Deep Neural Networks (DNNs) in GPS denied environments while using low power CPUs.
  • An object of the present disclosure is to provide a system and method that facilitates autonomous navigation of MAVs by converting perception and control task to a 3- class classification.
  • An object of the present disclosure is to provide a system and method that facilitates to employ neural networks with sparse architectures to avoid negotiating a tradeoff between accuracy and inference.
  • An object of the present disclosure is to provide a system and method that facilitates to efficiently search for a different, but identically sparse, neural network architecture having better generalization abilities.
  • An object of the present disclosure is to provide a system and method that facilitates to use large DNNs to be run on low power CPUs/GPUs in limited power budget and with weight constraints.
  • An object of the present disclosure is to provide a system and method that facilitates sparisification of DNNs to enable high inference rate of DNNs without requiring specialized hardware.
  • the present disclosure relates to a field of navigation, and specifically, to a method and system for navigation of aerial vehicles, preferably but not limited to, micro aerial vehicles (MAVs) and/or unmanned aerial systems in a global positioning system (GPS) denied environment.
  • MAVs micro aerial vehicles
  • GPS global positioning system
  • a system for autonomous navigation of an unmanned aerial vehicle (UAV) in a GPS denied environment comprising: one or more processors operatively coupled to a memory storing a set of executable instructions, which when executed by the one or more processors: enable configuration of at least one inference time constraint and a minimum desired accuracy; compress a neural network model that has been previously trained using an existing dataset, wherein said neural network model is compressed by: generating scores for each artifact of said neural network model containing non-zero weights; storing weights of a lowest ranked artifact in a dictionary, and setting weights of said lowest ranked artifact to zero to effect the compressed neural network model where the lowest ranked artifact is removed; and retraining said neural network model for a plurality of iterations such that accuracy of the compressed neural network model is checked at each iteration, and the steps of generating scores for each said artifact and storing weight of the lowest ranked artifact in the dictionary
  • the step of retraining is terminated if no artifact from the dictionary is able to replace the lowest ranked artifact to increase the accuracy of the neural network model on the validation set past the minimum desired accuracy.
  • the step of generating scores for each artifact is repeated.
  • the neural network model is a pre-trained convolutional neural network (CNN).
  • CNN convolutional neural network
  • the navigation is monocular based reactive navigation.
  • a method for autonomous navigation of an unmanned aerial vehicle (UAV) in a GPS denied environment comprising: enabling configuration of at least one inference time constraint and a minimum desired accuracy; compressing a neural network model that has been previously trained using an existing dataset, wherein said neural network model is compressed by: generating, at a processor of a computing device, scores for each artifact of the neural network model containing non-zero weights; storing, at the processor, weights of a lowest ranked artifact in a dictionary, and setting weights of said lowest ranked artifact to zero to effect a compressed neural network model where the lowest ranked artifact is removed; and retraining, at the processor, said neural network model for a plurality of iterations such that accuracy of the compressed neural network model is checked at each iteration, and the steps of generating scores for each said artifact and storing weight of the lowest ranked artifact in the dictionary are repeated if the minimum desired accuracy is not violated, wherein
  • an autonomous navigation for an unmanned aerial vehicle (UAV) in a GPS denied environment comprising: one or more processors operatively coupled to a memory storing a set of executable instructions and a camera operatively coupled with the one or more processors to capture an image of an area where the UAV is navigating; encoding the captured image and transmitting the encoded image to the compressed neural network model; and receiving a navigation decision from the compressed neural network model, and navigating the UAV in any of a left, right or straight direction based on the received navigation decision.
  • UAV unmanned aerial vehicle
  • the disclosure address the challenge of high speed, reactive (e.g., where control decisions are made reactively to inputs such as images), autonomous navigation of micro aerial vehicles (MAVs) on roads using DNNs in GPS-denied environments with low power CPUs.
  • MAVs micro aerial vehicles
  • a reactive road following mechanism is achieved by converting a direction determination problem for navigation of the UAVs to a three-class classification problem, which has been proposed to be resolved using a three-class CNN.
  • Using the three-class CNN allows us to convert perception and control navigation task to a three-class classification problem.
  • FIG. 1 illustrates a network implementation of an autonomous navigation system that facilitates autonomous navigation of a UAV in a GPS denied environment in accordance with an embodiment of the present disclosure.
  • FIG. 2 illustrates exemplary functional components of the system in accordance with an embodiment of the present disclosure.
  • FIG.3 illustrates an exemplary representation of a navigation technique and a control strategy for autonomous navigation of a UAV on roads using a monocular vision in accordance with an embodiment of the present disclosure.
  • FIG. 32 illustrates an exemplary representation of a navigation technique and a control strategy for autonomous navigation of a UAV on roads using a monocular vision in accordance with an embodiment of the present disclosure.
  • FIG. 4 is a high-level flow diagram representing a mechanism for generating and sending control signals to a UAV to generate flight maneuvers in accordance with an embodiment of the present disclosure.
  • FIG. 5 is high-level flow diagram representing a mechanism for iteratively sparsifying architecture of a pre-trained neural network in a greedy fashion while ensuring satisfying an accuracy threshold in accordance with an embodiment of the present disclosure.
  • FIG. 6 is a high-level flow diagram illustrating working of the system in accordance with an embodiment of the present disclosure.
  • FIG. 7 illustrates an exemplary computer system to implement the proposed system in accordance with embodiments of the present disclosure.
  • Embodiments of the present invention include various steps, which will be described below. The steps may be performed by hardware components or may be embodied in machine-executable instructions, which may be used to cause a general-purpose or special- purpose processor programmed with the instructions to perform the steps. Alternatively, steps may be performed by a combination of hardware, software, firmware and/or by human operators.
  • Embodiments of the present invention may be provided as a computer program product, which may include a machine-readable storage medium tangibly embodying thereon instructions, which may be used to program a computer (or other electronic devices) to perform a process.
  • the machine-readable medium may include, but is not limited to, fixed (hard) drives, magnetic tape, floppy diskettes, optical disks, compact disc read-only memories (CD-ROMs), and magneto-optical disks, semiconductor memories, such as ROMs, PROMs, random access memories (RAMs), programmable read-only memories (PROMs), erasable PROMs (EPROMs), electrically erasable PROMs (EEPROMs), flash memory, magnetic or optical cards, or other type of media/machine-readable medium suitable for storing electronic instructions (e.g., computer programming code, such as software or firmware).
  • the present disclosure relates to a field of navigation, and specifically, to a method and system for navigation of aerial vehicles, preferably but not limited to, micro aerial vehicles (MAVs) and/or unmanned aerial systems in a global positioning system (GPS) denied environment.
  • MAVs micro aerial vehicles
  • GPS global positioning system
  • the disclosure enables usage of limited, low power computers, typically used for on-board computation, for monocular vision based reactive navigation, using off-the-shelf components and software for reactive navigation of MAVs with monocular vision and without relying on GPS as high speed navigation is crucial.
  • FIG.1 illustrates a network implementation 100 of an autonomous navigation system 102 that facilitates autonomous navigation of a UAV in a GPS denied environment in accordance with an embodiment of the present disclosure.
  • an autonomous navigation system 102 (referred to herein as system 102) includes a UAV 104 and a one low power central processing unit (CPU) 106 (also referred to herein as a light weight computer).
  • CPU central processing unit
  • the CPU 106 is onboard UAV 104.
  • the UAV may be guided autonomously, by remote control and may be remarkably efficient while offering substantial greater range and endurance.
  • the UAVs may be classified by size, range and endurance, and may be classified as very small UAVs, micro or nano UAVs, small UAVs, mini UAVs, medium UAVs, and Large UAVs. Further, UAVs can also be classified according to the ranges they can travel as being very low cost close-range UAVs, close-range UAVs, short-range UAVs, mid-range UAVs, and endurance UAVs.
  • DNN is executed on CPU 106 to provide autonomous navigation of the UAV in a GPS denied environment. The navigation may be a monocular based reactive navigation.
  • one or more processors are provided that are operatively coupled to the lightweight computer 106 placed onboard and to a memory that stores a set of executable instructions.
  • the set of instructions run on the lightweight computer 106 placed onboard running a robotics middleware (for example Robotics Operating System- ROS).
  • the lightweight computer 106 has a camera onboard that uses a camera driver.
  • the camera driver may receive images from the onboard camera, decode and send them to a road following mechanism.
  • One or more control outputs produced using the road following mechanism are sent to an autopilot driver, which in turn sends control signals to plurality of Electronic Speed Controllers (ESCs) of a UAV propeller via an autopilot hardware (for example Pixhawk), to produce appropriate flight maneuvers for the UAV.
  • ESCs Electronic Speed Controllers
  • multiple entities 108-1, 108-2...108-N (which are collectively referred to as entities 108 and individually referred to as the entity 108, hereinafter) can communicate with the system 102 via a network 112 through one or more computing devices 110-1, 110-2...110-N (which are collectively referred to as computing devices 110 and individually referred to as the computing device 110, hereinafter) that can be communicatively coupled to the system 102.
  • the entity 112 can be any person, who is an administrator, a data scientist, a police officer, an investigator, a driver and the like.
  • the computing devices 110 can include a variety of computing systems, including but not limited to, a laptop computer, a desktop computer, a notebook, a workstation, a portable computer, a personal digital assistant, a handheld device, a smartphone and a mobile device.
  • the entity 108 may receive information from UAV 104 using the computing device 110, and use the information for applications such as for aerial photography, geographic mapping, precision agriculture, weather forecast and so forth.
  • Network 112 can be a wireless network, a wired network or a combination thereof.
  • the network 108 can be implemented as one of the different types of networks, such as intranet, local area network (LAN), wide area network (WAN), the internet, Wi-Fi, LTE network, CDMA network, and the like.
  • the network 112 can either be a dedicated network or a shared network.
  • the shared network represents an association of the different types of networks that use a variety of protocols, for example, Hypertext Transfer Protocol (HTTP), Transmission Control Protocol/Internet Protocol (TCP/IP), Wireless Application Protocol (WAP), and the like, to communicate with one another.
  • HTTP Hypertext Transfer Protocol
  • TCP/IP Transmission Control Protocol/Internet Protocol
  • WAP Wireless Application Protocol
  • the network 112 can include a variety of network devices, including routers, bridges, servers, computing devices, storage devices, and the like.
  • the set of instructions when executed by the one or more processors enable configuration of at least one inference time constraint and a minimum desired accuracy, and compress a neural network model that has been previously trained using an existing dataset.
  • the neural network model is compressed by generating scores for each artifact of the neural network model containing non-zero weights.
  • the neural network model may be a pre-trained convolutional neural network (CNN). Weights of a lowest ranked artifact are stored in a dictionary, and weights of the lowest ranked artifact are set to zero to effect the compressed neural network model where the lowest ranked artifact is removed. Further, the neural network model is retrained for a plurality of iterations such that accuracy of the compressed neural network model is checked at each iteration. Furthermore, the steps of generating scores for each the artifact and storing weight of the lowest ranked artifact in the dictionary are repeated if the minimum desired accuracy is not violated.
  • CNN convolutional neural network
  • the disclosure facilitates to balance a trade-off between accuracy and inference rate by discovering sparse architectures while maintaining a higher performance.
  • an artifact from the dictionary of previously pruned artifacts is returned to continue the retraining of the neural network model until accuracy of the neural network model on the validation set increases past the minimum desired accuracy.
  • inference time constraints are implicitly encoded by the sparsity of a pre-trained neural network model, and thus inference time of the model is minimized by maximizing the number of artifacts pruned.
  • the step of retraining is terminated if no artifact from the dictionary is able to replace the lowest ranked artifact to increase the accuracy of the neural network model on the validation set past the minimum desired accuracy.
  • the step of generating scores for each artifact is repeated if the accuracy of the neural network model on the validation set increases past the minimum desired accuracy.
  • post the step of generating the scores the artifacts is sequenced based on their respective scores. [00051]
  • the image upon receipt of an image captured by the UAV, the image may be encoded and processed by the compressed neural network model so as to obtain a decision from the compressed neural network model as to a direction in which the UAV should navigate.
  • FIG. 2 illustrates exemplary functional components 200 of the system 102 in accordance with an embodiment of the present disclosure.
  • the system 102 may comprise one or more processor(s) 202.
  • the one or more processor(s) 202 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, logic circuitries, and/or any devices that manipulate data based on operational instructions.
  • the one or more processor(s) 202 are configured to fetch and execute computer-readable instructions stored in a memory 204 of the system 102.
  • the memory 204 may store one or more computer-readable instructions or routines, which may be fetched and executed to create or share the data units over a network service.
  • the memory 204 may comprise any non-transitory storage device including, for example, volatile memory such as RAM, or non-volatile memory such as EPROM, flash memory, and the like.
  • the system 102 may also comprise an interface(s) 206.
  • the interface(s) 206 may comprise a variety of interfaces, for example, interfaces for data input and output devices, referred to as I/O devices, storage devices, and the like.
  • the interface(s) 206 may facilitate communication of system 102.
  • the interface(s) 206 may also provide a communication pathway for one or more components of the processing engine 208.
  • processing engine(s) 208 examples include, but are not limited to, processing engine(s) 208 and database 210.
  • the processing engine(s) 208 may be implemented as a combination of hardware and programming (for example, programmable instructions) to implement one or more functionalities of the processing engine(s) 208.
  • the processing engine(s) 208 is stored on the memory 204 and runs on the processor(s) 202.
  • such combinations of hardware and programming may be implemented in several different ways.
  • the programming for the processing engine(s) 208 may be processor executable instructions stored on a non-transitory machine-readable storage medium and the hardware for the processing engine(s) 208 may comprise a processing resource (for example, one or more processors), to execute such instructions.
  • the machine-readable storage medium may store instructions that, when executed by the processing resource, implement the processing engine(s) 208.
  • the system 102 may comprise the machine-readable storage medium storing the instructions and the processing resource to execute the instructions, or the machine-readable storage medium may be separate but accessible to system 102 and the processing resource.
  • the processing engine(s) 208 may be implemented by electronic circuitry.
  • the database 210 may comprise data that is either stored or generated as a result of functionalities implemented by any of the components of the processing engine(s) 208 or the system 102.
  • the processing engine(s) 208 may include a configuration and compressing engine 212, a scores generation engine 214, a storing and setting weights engine 216, an accuracy checking engine 218, and other engine (s) 220.
  • Other engine(s) 220 can supplement the functionalities of the processing engine 208 or the system 102.
  • the configuration and compressing engine 212 facilitates enabling configuration of at least one inference time constraint and a minimum desired accuracy, and enables compressing a neural network model that has been previously trained using an existing dataset.
  • the configuration and compressing engine 212 facilitates minimizing the inference time constraint by the minimum desired accuracy.
  • the scores generation engine 214 generates scores for each artifact of the neural network model containing non-zero weights, and the storing and setting weights engine 216 facilitates to store weights of a lowest ranked artifact in a dictionary. Further, weights of the lowest ranked artifact are set to zero to effect a compressed neural network model where the lowest ranked artifact is removed. In an embodiment, weights of the lowest ranked artifact are set to zero to affect a compressed neural network model. However, once the architecture with a desired level of sparsity is achieved, the zeroed out weights are removed for realization of gains in terms of inference speed as well as memory footprint.
  • the accuracy checking engine 218, retrains the neural network model for a plurality of iterations such that accuracy of the compressed neural network model is checked at each iteration, and the steps of generating scores for each the artifact and storing weight of the lowest ranked artifact in the dictionary are repeated if the minimum desired accuracy is not violated. While if the minimum desired accuracy is violated, an artifact from the dictionary of previously pruned artifacts is returned to continue the retraining of the neural network model until accuracy of the neural network model on the validation set increases past the minimum desired accuracy.
  • FIG. 3 illustrates an exemplary representation 300 of a navigation technique and a control strategy for autonomous navigation of a UAV on roads using a monocular vision in accordance with an embodiment of the present disclosure.
  • the navigation technique for an autonomous navigation of UAVs on roads using monocular vision is disclosed.
  • the complex control problem of autonomous navigation may be broken down into a three class classification problem, where each input image may be labeled as - (1) turn left, (2) go straight, or (3) turn right.
  • a control command for turning left at predefined angular velocity may be sent to the UAV.
  • a command for predefined forward velocity may be sent to the UAV for further movement of the UAV.
  • FIG.3 a control strategy where thee bars shown at bottom of each of the images represents a confidence assigned to each class and a top circle denotes a heading direction.
  • FIG. 4 is a high-level flow diagram 400 representing a mechanism for generating and sending control signals to a UAV to generate flight maneuvers in accordance with an embodiment of the present disclosure.
  • the disclosed road following mechanism runs on a lightweight computer placed onboard the UAV running a robotics middleware (for example Robotics Operating System- ROS).
  • a camera 402 onboard the UAV may capture a plurality of images.
  • the plurality of images may be encoded and received as input by a camera driver 404.
  • the lightweight computer supports and executes a road following mechanism and autopilot driver packages.
  • the camera driver 404 may decode the encoded image and feed the decoded image to a neural network at block 406.
  • the neural network at block 406 may generate control signals that are executed at block 408 by an autopilot driver.
  • each of a control signal may be generated per input of a Red Green Blue (RGB) monocular image.
  • the one or more control signals as received from the autopilot driver are executed by autopilot hardware at block 410, and the received control signals from the autopilot hardware are transferred to an Electronic Speed Controller (ESC) of the UAV, at block 412, for appropriate maneuvering of the UAVs.
  • ESC Electronic Speed Controller
  • the camera driver 404, the neural network 406, and the autopilot driver 408 are components of a middleware running on an onboard computer.
  • shallow CNN models may be separately trained on for example campus-roads and forest-trails datasets.
  • FIG.5 is high-level flow diagram 500 representing a mechanism for iteratively sparsifying architecture of a pre-trained neural network in a greedy fashion while ensuring satisfying an accuracy threshold in accordance with an embodiment of the present disclosure.
  • the disclosed mechanism iteratively sparsifies the architecture of a pre-trained neural network in a greedy fashion while ensuring that an accuracy threshold is satisfied.
  • all weights of a filter or column of an affine matrix hereafter referred to as artifacts
  • artifacts are set to a value of zero. This may facilitate to effectively remove the artifact from the architecture, leading to sparsification.
  • this step of removing the artifact from the architecture is commonly referred to as pruning.
  • one of a key step of the disclosed mechanism is use of a “Basis Exploration” step, which enables to find neural network models that are significantly sparser than existing methods in the art are capable of generating.
  • support denotes the cardinality of the support of w, which is a set containing the indices of all artifacts with nonzero weights. If the original pre-trained network has weights in n artifacts, then support Furthermore, t denotes the test error of the neural network model with weights w.
  • the model requires 95% accuracy and then the proposed invention can afford at most 5% test set error.
  • a test error rate is a parameter that the mechanism takes and is decided by a user as per required levels of performance.
  • the proposed mechanism performs the following series of steps.
  • the mechanism facilitates to generate scores for each artifact containing nonzero weights, and order them based on a score.
  • the weights of the lowest ranked artifact are stored in a dictionary, and are set to a value of zero in the network.
  • the neural network model is retrained.
  • the accuracy of the neural network model on the validation set is checked. If the minimum desired accuracy benchmark is not violated, the steps 1-3 are repeated.
  • step 4 an artifact from the dictionary of previously pruned artifacts is returned and the neural network model is retrained. If the accuracy increases past the minimum desired accuracy benchmark, the mechanism is directed to step 1, and is termed as a technique of basis exploration. [00068] In an embodiment, if the accuracy does not increases past the minimum desired accuracy benchmark, step 4 is repeated until the accuracy on the validation set increases past the minimum desired accuracy benchmark. In another embodiment, if no artifact from the dictionary can replace the lowest ranked artifact to increase the accuracy past the threshold, the mechanism is aborted. [00069] In an embodiment, scoring of the artifacts may be performed as: given a neural network with weights w and loss function f(w).
  • the proposed disclosure uses a scoring function, called score where score where are the weights of the jth artifact, or score when this is derived from the Taylor series expansion of the loss function f(w).
  • the pruning step may involve setting the weights of the jth artifact to 0. Thus, at each pruning step perform w and retrain, and where j is selected using the select() function.
  • a basis exploration step may occur after retraining.
  • pick an artifact w_((q))randomly with replacement from the dictionary of pruned artifacts, thus, at each basis exploration step, the mechanism performs w ⁇ (++) w ⁇ ++w_((q)), retrains, and checks if f(w ⁇ (++))£t. If the test fails, pick another w_((q'))from the dictionary of pruned artifacts and perform the step and retrain, until find a q’ such that f(w ⁇ (++))£t. If the proposed mechanism can find no such q’, the mechanism terminates.
  • retraining is performed, where at each pruning or basis exploration step, the neural network model is retrained, and the retraining is performed either until convergence or for a fixed number of iterations. Ideally, the model is retrained until convergence that is, a back propagation is run to obtain gradients, and update the weights in the remaining filters. In practice, retraining of the neural network model is done for a fixed number of iterations until a local minimum is approximately reached. [00074]
  • the mechanism as shown in FIG.5 can be described as follows.
  • a pre-trained network is defined with ⁇ ( w ) £ t, and a dictionary of pruned filters – that are empty.
  • a normalized score for artifacts is generated. Weights of lowest ranked artifacts is set to zero, and weights of removed artifacts are added to dictionary retrain model.
  • At block 506 is determined whether ⁇ ( w ) £ t. If yes the processing is diverted to step 504, else a determination is made at step 508 for determining if any more replacements are possible.
  • FIG.6 is a high-level flow diagram 600 illustrating working of the system in accordance with an embodiment of the present disclosure.
  • the process described with reference to FIG. 6 may be implemented in the form of executable instructions stored on a machine readable medium and executed by a processing resource (e.g., a microcontroller, a microprocessor, central processing unit core(s), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), and the like) and/or in the form of other types of electronic circuitry.
  • a processing resource e.g., a microcontroller, a microprocessor, central processing unit core(s), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), and the like
  • ASIC application-specific integrated circuit
  • FPGA field programmable gate array
  • this processing may be performed by one or more computer systems of various forms, such as the computer system 700 described with reference to FIG.7 below.
  • configuration of at least one inference time constraint and a minimum desired accuracy is enabled.
  • a neural network model is compressed that has been previously trained using an existing dataset.
  • the said neural network model is compressed by: at block 606 scores for each artifact of the neural network model containing non-zero weights are generated.
  • weights of a lowest ranked artifact are stored in a dictionary, and weights of said lowest ranked artifact are set to zero to effect a compressed neural network model where the lowest ranked artifact is removed.
  • said neural network model is retrained for a plurality of iterations such that accuracy of the compressed neural network model is checked at each iteration, and the steps of generating scores for each said artifact and stored weight of the lowest ranked artifact in the dictionary are repeated if the minimum desired accuracy is not violated. Further, if the minimum desired accuracy is violated, an artifact from the dictionary of previously pruned artifacts is returned to continue the retraining of said neural network model until accuracy of the neural network model on the validation set increases past the minimum desired accuracy.
  • the system and method of present disclosure finds sparse neural network architectures that are capable of achieving high inference rates such that on when sparse neural network architectures are deployed on low power computers like the Odroid XU4 and the Raspberry Pi 3, then the need for network connections to powerful computers is removed.
  • the proposed solution may be used for facilitating remote surveillance of paths, boundaries, infrastructure such as roads and bridges, particularly in environments where GPS connectivity is unreliable, For parcel delivery in gated communities or campuses, crop surveillance, and crowd surveillance in urban areas. [00078]
  • a novel procedure for structured pruning of CNNs is proposed.
  • FIG. 7 illustrates an exemplary computer system to implement the proposed system in accordance with embodiments of the present disclosure.
  • computer system can include an external storage device 710, a bus 720, a main memory 730, a read only memory 740, a mass storage device 750, communication port 760, and a processor 770.
  • processor 770 may include more than one processor and communication ports.
  • Examples of processor 770 include, but are not limited to, an Intel® Itanium® or Itanium 2 processor(s), or AMD® Opteron® or Athlon MP® processor(s), ARM Cortex processor(s), Motorola® lines of processors, FortiSOCTM system on a chip processors or other future processors.
  • Processor 770 may include various modules associated with embodiments of the present invention.
  • Communication port 760 can be any of an RS-232 port for use with a modem based dialup connection, a 10/100 Ethernet port, a Gigabit or 10 Gigabit port using copper or fiber, a serial port, a parallel port, or other existing or future ports.
  • Communication port 760 may be chosen depending on a network, such a Local Area Network (LAN), Wide Area Network (WAN), or any network to which computer system connects.
  • Memory 730 can be Random Access Memory (RAM), or any other dynamic storage device commonly known in the art.
  • RAM Random Access Memory
  • Read only memory 740 can be any static storage device(s) e.g., but not limited to, a Programmable Read Only Memory (PROM) chips for storing static information e.g., start-up or BIOS instructions for processor 770.
  • Mass storage 750 may be any current or future mass storage solution, which can be used to store information and/or instructions.
  • Exemplary mass storage solutions include, but are not limited to, Parallel Advanced Technology Attachment (PATA) or Serial Advanced Technology Attachment (SATA) hard disk drives or solid-state drives (internal or external, e.g., having Universal Serial Bus (USB) and/or Firewire interfaces), e.g. those available from Seagate (e.g., the Seagate Barracuda 7102 family) or Hitachi (e.g., the Hitachi Deskstar 7K1000), one or more optical discs, Redundant Array of Independent Disks (RAID) storage, e.g. an array of disks (e.g., SATA arrays), available from various vendors including Dot Hill Systems Corp., LaCie, Nexsan Technologies, Inc. and Enhance Technology, Inc.
  • PATA Parallel Advanced Technology Attachment
  • SATA Serial Advanced Technology Attachment
  • SSD Universal Serial Bus
  • Firewire interfaces e.g. those available from Seagate (e.g., the Seagate Barracuda 7102 family) or Hitachi (e.
  • Bus 720 communicatively couples processor(s) 770 with the other memory, storage and communication blocks.
  • Bus 720 can be, e.g. a Peripheral Component Interconnect (PCI) / PCI Extended (PCI-X) bus, Small Computer System Interface (SCSI), USB or the like, for connecting expansion cards, drives and other subsystems as well as other buses, such a front side bus (FSB), which connects processor 770 to software system.
  • PCI Peripheral Component Interconnect
  • PCI-X PCI Extended
  • SCSI Small Computer System Interface
  • FFB front side bus
  • operator and administrative interfaces e.g. a display, keyboard, and a cursor control device, may also be coupled to bus 720 to support direct operator interaction with computer system. Other operator and administrative interfaces can be provided through network connections connected through communication port 760.
  • External storage device 710 can be any kind of external hard-drives, floppy drives, IOMEGA® Zip Drives, Compact Disc - Read Only Memory (CD-ROM), Compact Disc - Re-Writable (CD- RW), Digital Video Disk - Read Only Memory (DVD-ROM).
  • CD-ROM Compact Disc - Read Only Memory
  • CD- RW Compact Disc - Re-Writable
  • DVD-ROM Digital Video Disk - Read Only Memory
  • Embodiments of the present disclosure may be implemented entirely hardware, entirely software (including firmware, resident software, micro-code, etc.) or combining software and hardware implementation that may all generally be referred to herein as a “circuit,” “module,” “component,” or “system.” Furthermore, aspects of the present disclosure may take the form of a computer program product comprising one or more computer readable media having computer readable program code embodied thereon. [00085] Thus, it will be appreciated by those of ordinary skill in the art that the diagrams, schematics, illustrations, and the like represent conceptual views or processes illustrating systems and methods embodying this invention. The functions of the various elements shown in the figures may be provided through the use of dedicated hardware as well as hardware capable of executing associated software.
  • any switches shown in the figures are conceptual only. Their function may be carried out through the operation of program logic, through dedicated logic, through the interaction of program control and dedicated logic, or even manually, the particular technique being selectable by the entity implementing this invention.
  • Those of ordinary skill in the art further understand that the exemplary hardware, software, processes, methods, and/or operating systems described herein are for illustrative purposes and, thus, are not intended to be limited to any particular named. [00086]
  • the term "coupled to” is intended to include both direct coupling (in which two elements that are coupled to each other contact each other) and indirect coupling (in which at least one additional element is located between the two elements).
  • Coupled to and “coupled with” are used synonymously.
  • terms “coupled to” and “coupled with” are also used euphemistically to mean “communicatively coupled with” over a network, where two or more devices are able to exchange data with each other over the network, possibly via one or more intermediary device.
  • the present disclosure provides a system and method that facilitate autonomous navigation of MAVs on roads using Deep Neural Networks (DNNs) in GPS denied environments while using low power CPUs.
  • DNNs Deep Neural Networks
  • the present disclosure provides a system and method that facilitates autonomous navigation of MAVs by converting perception and control task to a 3-class classification.
  • the present disclosure provides a system and method that facilitates to employ neural networks with sparse architectures to avoid negotiating a tradeoff between accuracy and inference.
  • the present disclosure provides a system and method that facilitates to efficiently search for a different, but identically sparse, neural network architecture having better generalization abilities.
  • the present disclosure provides a system and method that facilitates to improve inference times for autonomous navigation on low power computers functioning without GPUs.
  • the present disclosure provides a system and method that facilitates to provide higher speed autonomous navigation of the UAVs.
  • the present disclosure provides a system and method that facilitates to use large DNNs to be run on low power CPUs/GPUs in limited power budget and with weight constraints.
  • the present disclosure provides a system and method that facilitates sparisification of DNNs to enable high inference rate of DNNs without requiring specialized hardware.

Abstract

An embodiment of the present disclosure provides a system and a method for autonomous navigation of an unmanned aerial vehicle (UAV) in a GPS denied environment. The method facilitates to enable configuration of at least one inference time constraint and a minimum desired accuracy, and compress a neural network model that has been previously trained using an existing dataset. The neural network model is compressed by generating scores for each artifact of the neural network model containing non-zero weights. Weights of a lowest ranked artifact are stored in a dictionary. Weights of said lowest ranked artifact are set to zero to effect a compressed neural network model. Neural network model is retrained for a plurality of iterations such that accuracy of the compressed neural network model is checked at each iteration, and the steps of generating scores and storing weight are repeated if the minimum desired accuracy is not violated.

Description

SYSTEM AND METHOD FOR AUTONOMOUS NAVIGATION OF UNMANNED AERIAL VEHICLE (UAV) IN GPS DENIED ENVIRONMENT TECHNICAL FIELD [0001] The present disclosure relates to a field of navigation, and specifically, to a method and system for navigation of aerial vehicles, preferably but not limited to, micro aerial vehicles (MAVs) and/or unmanned aerial systems in a global positioning system (GPS) denied environment. BACKGROUND [0002] Unmanned aerial vehicles (UAV) are a class of aircrafts that can fly without the onboard presence of pilots. The UAVs can be controlled by onboard electronic equipments or via control equipment from ground. For navigation and control of the UAVs, dedicated control systems are devoted that can be mounted aboard vehicles. UAVs are used for observation and tactical planning and are classified based on an altitude range, endurance and weight, and support a wide range of applications including military and commercial applications [0003] Currently, the most widely used navigation technologies for the UAVs are GPS receivers. Satellite-based GPS navigation techniques can offer relatively consistent accuracy if sufficient GPS signals can be tracked during the entire UAV mission. However in areas where GPS signals are not available navigation of the UAVs is challenging. Also, occurrence of GPS signal blockage can cause a significant deviation in the GPS navigation solutions. [0004] Prevalent techniques use a Convolutional neural network (CNN) for autonomous navigation of the UAVs in GPS denied environments, however deploying CNNs on low power devices that do not have high power Central processing units (CPUs) is a challenging task due to high speed of travel of the UAVs based on reactive control decisions and on inputs such as images taken from an on board camera. [0005] There is therefore a need in the art to find and deploy a sparse neural network architecture that can achieve high speeds required for efficient mission completion by the UAVs without using high power CPUs. OBJECTS OF THE PRESENT DISCLOSURE [0006] Some of the objects of the present disclosure aimed to ameliorate one or more problems of the prior art or to at least provide a useful alternative are listed herein below. [0007] An object of the present disclosure is to provide a system and method that facilitate autonomous navigation of MAVs on roads using Deep Neural Networks (DNNs) in GPS denied environments while using low power CPUs. [0008] An object of the present disclosure is to provide a system and method that facilitates autonomous navigation of MAVs by converting perception and control task to a 3- class classification. [0009] An object of the present disclosure is to provide a system and method that facilitates to employ neural networks with sparse architectures to avoid negotiating a tradeoff between accuracy and inference. [00010] An object of the present disclosure is to provide a system and method that facilitates to efficiently search for a different, but identically sparse, neural network architecture having better generalization abilities. [00011] An object of the present disclosure is to provide a system and method that facilitates to use large DNNs to be run on low power CPUs/GPUs in limited power budget and with weight constraints. [00012] An object of the present disclosure is to provide a system and method that facilitates sparisification of DNNs to enable high inference rate of DNNs without requiring specialized hardware. SUMMARY OF THE INVENTION [00013] The present disclosure relates to a field of navigation, and specifically, to a method and system for navigation of aerial vehicles, preferably but not limited to, micro aerial vehicles (MAVs) and/or unmanned aerial systems in a global positioning system (GPS) denied environment. [00014] According to an aspect of the present disclosure is provided, a system for autonomous navigation of an unmanned aerial vehicle (UAV) in a GPS denied environment, said system comprising: one or more processors operatively coupled to a memory storing a set of executable instructions, which when executed by the one or more processors: enable configuration of at least one inference time constraint and a minimum desired accuracy; compress a neural network model that has been previously trained using an existing dataset, wherein said neural network model is compressed by: generating scores for each artifact of said neural network model containing non-zero weights; storing weights of a lowest ranked artifact in a dictionary, and setting weights of said lowest ranked artifact to zero to effect the compressed neural network model where the lowest ranked artifact is removed; and retraining said neural network model for a plurality of iterations such that accuracy of the compressed neural network model is checked at each iteration, and the steps of generating scores for each said artifact and storing weight of the lowest ranked artifact in the dictionary are repeated if the minimum desired accuracy is not violated, wherein if the minimum desired accuracy is violated, an artifact from the dictionary of previously pruned artifacts is returned to continue the retraining of said neural network model until accuracy of the neural network model on the validation set increases past the minimum desired accuracy. [00015] According to an embodiment, upon receipt of an image captured by the UAV, said image is encoded and processed by the compressed neural network model so as to obtain a decision from the compressed neural network model as to a direction in which the UAV should navigate. [00016] According to an embodiment, computation of gradients of weights is done through a standard back propagation mechanism. [00017] According to an embodiment, the step of retraining is terminated if no artifact from the dictionary is able to replace the lowest ranked artifact to increase the accuracy of the neural network model on the validation set past the minimum desired accuracy. [00018] According to an embodiment, if the accuracy of the neural network model on the validation set increases past the minimum desired accuracy, the step of generating scores for each artifact is repeated. [00019] According to an embodiment, post the step of generating the scores, said artifacts are sequenced based on their respective scores. [00020] According to an embodiment, the neural network model is a pre-trained convolutional neural network (CNN). [00021] According to an embodiment, the navigation is monocular based reactive navigation. [00022] According to another aspect is provided a method for autonomous navigation of an unmanned aerial vehicle (UAV) in a GPS denied environment, said method comprising: enabling configuration of at least one inference time constraint and a minimum desired accuracy; compressing a neural network model that has been previously trained using an existing dataset, wherein said neural network model is compressed by: generating, at a processor of a computing device, scores for each artifact of the neural network model containing non-zero weights; storing, at the processor, weights of a lowest ranked artifact in a dictionary, and setting weights of said lowest ranked artifact to zero to effect a compressed neural network model where the lowest ranked artifact is removed; and retraining, at the processor, said neural network model for a plurality of iterations such that accuracy of the compressed neural network model is checked at each iteration, and the steps of generating scores for each said artifact and storing weight of the lowest ranked artifact in the dictionary are repeated if the minimum desired accuracy is not violated, wherein if the minimum desired accuracy is violated, an artifact from the dictionary of previously pruned artifacts is returned to continue the retraining of said neural network model until accuracy of the neural network model on the validation set increases past the minimum desired accuracy. [00023] According to another aspect is provided an autonomous navigation for an unmanned aerial vehicle (UAV) in a GPS denied environment, said vehicle comprising: one or more processors operatively coupled to a memory storing a set of executable instructions and a camera operatively coupled with the one or more processors to capture an image of an area where the UAV is navigating; encoding the captured image and transmitting the encoded image to the compressed neural network model; and receiving a navigation decision from the compressed neural network model, and navigating the UAV in any of a left, right or straight direction based on the received navigation decision. [00024] As has been disclosed in details in detailed description, the disclosure address the challenge of high speed, reactive (e.g., where control decisions are made reactively to inputs such as images), autonomous navigation of micro aerial vehicles (MAVs) on roads using DNNs in GPS-denied environments with low power CPUs. A reactive road following mechanism is achieved by converting a direction determination problem for navigation of the UAVs to a three-class classification problem, which has been proposed to be resolved using a three-class CNN. [00025] Using the three-class CNN allows us to convert perception and control navigation task to a three-class classification problem. In addition, high computation costs of using DNNs for inference necessitates negotiating a tradeoff between accuracy and inference, and this tradeoff is balanced by employing neural networks with sparse architectures, which are using an enhanced mechanism to find sufficiently accurate “sub networks” of existing pre trained models. This enhanced mechanism includes a replacement step that efficiently searches for a different, but identically sparse, architecture with better generalization abilities. [00026] Using this enhanced mechanism makes it is possible to discover models which, on average, have up to 19x fewer parameters than those obtained using existing state of the art pruning methods on autonomous navigation datasets, and achieve up to 6x improvements on inference time compared to existing state of the art shallow models on low power computers, particularly those without GPUs. Also, sparsified models can complete autonomous navigation missions with speeds up to 4m/s using ODROID XU4, which existing state of the art methods fail to achieve. [00027] Various objects, features, aspects and advantages of the present disclosure will become more apparent from the following detailed description of preferred embodiments, along with the accompanying drawing figures in which like numerals represent like features. BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWINGS [00028] In the figures, similar components and/or features may have the same reference label. Further, various components of the same type may be distinguished by following the reference label with a second label that distinguishes among the similar components. If only the first reference label is used in the specification, the description is applicable to any one of the similar components having the same first reference label irrespective of the second reference label. [00029] FIG. 1 illustrates a network implementation of an autonomous navigation system that facilitates autonomous navigation of a UAV in a GPS denied environment in accordance with an embodiment of the present disclosure. [00030] FIG. 2 illustrates exemplary functional components of the system in accordance with an embodiment of the present disclosure. [00031] FIG.3 illustrates an exemplary representation of a navigation technique and a control strategy for autonomous navigation of a UAV on roads using a monocular vision in accordance with an embodiment of the present disclosure. [00032] FIG. 4 is a high-level flow diagram representing a mechanism for generating and sending control signals to a UAV to generate flight maneuvers in accordance with an embodiment of the present disclosure. [00033] FIG. 5 is high-level flow diagram representing a mechanism for iteratively sparsifying architecture of a pre-trained neural network in a greedy fashion while ensuring satisfying an accuracy threshold in accordance with an embodiment of the present disclosure. [00034] FIG. 6 is a high-level flow diagram illustrating working of the system in accordance with an embodiment of the present disclosure. [00035] FIG. 7 illustrates an exemplary computer system to implement the proposed system in accordance with embodiments of the present disclosure. DETAILED DESCRIPTION [00036] In the following description, numerous specific details are set forth in order to provide a thorough understanding of embodiments of the present invention. It will be apparent to one skilled in the art that embodiments of the present invention may be practiced without some of these specific details. [00037] Embodiments of the present invention include various steps, which will be described below. The steps may be performed by hardware components or may be embodied in machine-executable instructions, which may be used to cause a general-purpose or special- purpose processor programmed with the instructions to perform the steps. Alternatively, steps may be performed by a combination of hardware, software, firmware and/or by human operators. [00038] Embodiments of the present invention may be provided as a computer program product, which may include a machine-readable storage medium tangibly embodying thereon instructions, which may be used to program a computer (or other electronic devices) to perform a process. The machine-readable medium may include, but is not limited to, fixed (hard) drives, magnetic tape, floppy diskettes, optical disks, compact disc read-only memories (CD-ROMs), and magneto-optical disks, semiconductor memories, such as ROMs, PROMs, random access memories (RAMs), programmable read-only memories (PROMs), erasable PROMs (EPROMs), electrically erasable PROMs (EEPROMs), flash memory, magnetic or optical cards, or other type of media/machine-readable medium suitable for storing electronic instructions (e.g., computer programming code, such as software or firmware). [00039] Various methods described herein may be practiced by combining one or more machine-readable storage media containing the code according to the present invention with appropriate standard computer hardware to execute the code contained therein. An apparatus for practicing various embodiments of the present invention may involve one or more computers (or one or more processors within a single computer) and storage systems containing or having network access to computer program(s) coded in accordance with various methods described herein, and the method steps of the invention could be accomplished by modules, routines, subroutines, or subparts of a computer program product. [00040] Exemplary embodiments will now be described more fully hereinafter with reference to the accompanying drawings, in which exemplary embodiments are shown. This invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. These embodiments are provided so that this invention will be thorough and complete and will fully convey the scope of the invention to those of ordinary skill in the art. Moreover, all statements herein reciting embodiments of the invention, as well as specific examples thereof, are intended to encompass both structural and functional equivalents thereof. Additionally, it is intended that such equivalents include both currently known equivalents as well as equivalents developed in the future (i.e., any elements developed that perform the same function, regardless of structure). [00041] While embodiments of the present invention have been illustrated and described, it will be clear that the invention is not limited to these embodiments only. Numerous modifications, changes, variations, substitutions, and equivalents will be apparent to those skilled in the art, without departing from the spirit and scope of the invention, as described in the claim. [00042] The present disclosure relates to a field of navigation, and specifically, to a method and system for navigation of aerial vehicles, preferably but not limited to, micro aerial vehicles (MAVs) and/or unmanned aerial systems in a global positioning system (GPS) denied environment. [00043] In an embodiment, the disclosure enables usage of limited, low power computers, typically used for on-board computation, for monocular vision based reactive navigation, using off-the-shelf components and software for reactive navigation of MAVs with monocular vision and without relying on GPS as high speed navigation is crucial. In addition, the disclosure facilitates to obtain sparse DNN architectures that significantly improve upon state of the art iterative methods by adding a replacement step, called basis exploration, thereby enabling discovery of dramatically more sparse architectures. [00044] Referring to the drawings, the invention will now be described in more detail. [00045] FIG.1 illustrates a network implementation 100 of an autonomous navigation system 102 that facilitates autonomous navigation of a UAV in a GPS denied environment in accordance with an embodiment of the present disclosure. [00046] According to an embodiment, an autonomous navigation system 102 (referred to herein as system 102) includes a UAV 104 and a one low power central processing unit (CPU) 106 (also referred to herein as a light weight computer). The CPU 106 is onboard UAV 104. The UAV may be guided autonomously, by remote control and may be remarkably efficient while offering substantial greater range and endurance. The UAVs may be classified by size, range and endurance, and may be classified as very small UAVs, micro or nano UAVs, small UAVs, mini UAVs, medium UAVs, and Large UAVs. Further, UAVs can also be classified according to the ranges they can travel as being very low cost close-range UAVs, close-range UAVs, short-range UAVs, mid-range UAVs, and endurance UAVs. [00047] In an embodiment, DNN is executed on CPU 106 to provide autonomous navigation of the UAV in a GPS denied environment. The navigation may be a monocular based reactive navigation. Further, one or more processors are provided that are operatively coupled to the lightweight computer 106 placed onboard and to a memory that stores a set of executable instructions. The set of instructions run on the lightweight computer 106 placed onboard running a robotics middleware (for example Robotics Operating System- ROS). The lightweight computer 106 has a camera onboard that uses a camera driver. The camera driver may receive images from the onboard camera, decode and send them to a road following mechanism. One or more control outputs produced using the road following mechanism are sent to an autopilot driver, which in turn sends control signals to plurality of Electronic Speed Controllers (ESCs) of a UAV propeller via an autopilot hardware (for example Pixhawk), to produce appropriate flight maneuvers for the UAV. [00048] Further, multiple entities 108-1, 108-2…108-N (which are collectively referred to as entities 108 and individually referred to as the entity 108, hereinafter) can communicate with the system 102 via a network 112 through one or more computing devices 110-1, 110-2…110-N (which are collectively referred to as computing devices 110 and individually referred to as the computing device 110, hereinafter) that can be communicatively coupled to the system 102. The entity 112 can be any person, who is an administrator, a data scientist, a police officer, an investigator, a driver and the like. The computing devices 110 can include a variety of computing systems, including but not limited to, a laptop computer, a desktop computer, a notebook, a workstation, a portable computer, a personal digital assistant, a handheld device, a smartphone and a mobile device. In an embodiment, the entity 108 may receive information from UAV 104 using the computing device 110, and use the information for applications such as for aerial photography, geographic mapping, precision agriculture, weather forecast and so forth. Network 112 can be a wireless network, a wired network or a combination thereof. The network 108 can be implemented as one of the different types of networks, such as intranet, local area network (LAN), wide area network (WAN), the internet, Wi-Fi, LTE network, CDMA network, and the like. Further, the network 112 can either be a dedicated network or a shared network. The shared network represents an association of the different types of networks that use a variety of protocols, for example, Hypertext Transfer Protocol (HTTP), Transmission Control Protocol/Internet Protocol (TCP/IP), Wireless Application Protocol (WAP), and the like, to communicate with one another. Further the network 112 can include a variety of network devices, including routers, bridges, servers, computing devices, storage devices, and the like. [00049] The set of instructions when executed by the one or more processors enable configuration of at least one inference time constraint and a minimum desired accuracy, and compress a neural network model that has been previously trained using an existing dataset. The neural network model is compressed by generating scores for each artifact of the neural network model containing non-zero weights. The neural network model may be a pre-trained convolutional neural network (CNN). Weights of a lowest ranked artifact are stored in a dictionary, and weights of the lowest ranked artifact are set to zero to effect the compressed neural network model where the lowest ranked artifact is removed. Further, the neural network model is retrained for a plurality of iterations such that accuracy of the compressed neural network model is checked at each iteration. Furthermore, the steps of generating scores for each the artifact and storing weight of the lowest ranked artifact in the dictionary are repeated if the minimum desired accuracy is not violated. As can be appreciated by those skilled in the art, the disclosure facilitates to balance a trade-off between accuracy and inference rate by discovering sparse architectures while maintaining a higher performance. [00050] However, if the minimum desired accuracy is violated, an artifact from the dictionary of previously pruned artifacts is returned to continue the retraining of the neural network model until accuracy of the neural network model on the validation set increases past the minimum desired accuracy. Further, inference time constraints are implicitly encoded by the sparsity of a pre-trained neural network model, and thus inference time of the model is minimized by maximizing the number of artifacts pruned. Further, the step of retraining is terminated if no artifact from the dictionary is able to replace the lowest ranked artifact to increase the accuracy of the neural network model on the validation set past the minimum desired accuracy. In an embodiment, the step of generating scores for each artifact is repeated if the accuracy of the neural network model on the validation set increases past the minimum desired accuracy. In another embodiment, post the step of generating the scores, the artifacts is sequenced based on their respective scores. [00051] In an embodiment, upon receipt of an image captured by the UAV, the image may be encoded and processed by the compressed neural network model so as to obtain a decision from the compressed neural network model as to a direction in which the UAV should navigate. The navigation may be done in a left direction, right direction or a straight direction. Computation of gradients of weights is done through a standard back propagation mechanism. [00052] FIG. 2 illustrates exemplary functional components 200 of the system 102 in accordance with an embodiment of the present disclosure. [00053] In an aspect, the system 102 may comprise one or more processor(s) 202. The one or more processor(s) 202 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, logic circuitries, and/or any devices that manipulate data based on operational instructions. Among other capabilities, the one or more processor(s) 202 are configured to fetch and execute computer-readable instructions stored in a memory 204 of the system 102. The memory 204 may store one or more computer-readable instructions or routines, which may be fetched and executed to create or share the data units over a network service. The memory 204 may comprise any non-transitory storage device including, for example, volatile memory such as RAM, or non-volatile memory such as EPROM, flash memory, and the like. [00054] The system 102 may also comprise an interface(s) 206. The interface(s) 206 may comprise a variety of interfaces, for example, interfaces for data input and output devices, referred to as I/O devices, storage devices, and the like. The interface(s) 206 may facilitate communication of system 102. The interface(s) 206 may also provide a communication pathway for one or more components of the processing engine 208. Examples of such components include, but are not limited to, processing engine(s) 208 and database 210. [00055] The processing engine(s) 208 may be implemented as a combination of hardware and programming (for example, programmable instructions) to implement one or more functionalities of the processing engine(s) 208. The processing engine(s) 208 is stored on the memory 204 and runs on the processor(s) 202. In examples described herein, such combinations of hardware and programming may be implemented in several different ways. For example, the programming for the processing engine(s) 208 may be processor executable instructions stored on a non-transitory machine-readable storage medium and the hardware for the processing engine(s) 208 may comprise a processing resource (for example, one or more processors), to execute such instructions. In the present examples, the machine-readable storage medium may store instructions that, when executed by the processing resource, implement the processing engine(s) 208. In such examples, the system 102 may comprise the machine-readable storage medium storing the instructions and the processing resource to execute the instructions, or the machine-readable storage medium may be separate but accessible to system 102 and the processing resource. In other examples, the processing engine(s) 208 may be implemented by electronic circuitry. [00056] The database 210 may comprise data that is either stored or generated as a result of functionalities implemented by any of the components of the processing engine(s) 208 or the system 102. In an embodiment, the processing engine(s) 208 may include a configuration and compressing engine 212, a scores generation engine 214, a storing and setting weights engine 216, an accuracy checking engine 218, and other engine (s) 220. Other engine(s) 220 can supplement the functionalities of the processing engine 208 or the system 102. [00057] According to an embodiment, the configuration and compressing engine 212, facilitates enabling configuration of at least one inference time constraint and a minimum desired accuracy, and enables compressing a neural network model that has been previously trained using an existing dataset. The configuration and compressing engine 212 facilitates minimizing the inference time constraint by the minimum desired accuracy. The scores generation engine 214 generates scores for each artifact of the neural network model containing non-zero weights, and the storing and setting weights engine 216 facilitates to store weights of a lowest ranked artifact in a dictionary. Further, weights of the lowest ranked artifact are set to zero to effect a compressed neural network model where the lowest ranked artifact is removed. In an embodiment, weights of the lowest ranked artifact are set to zero to affect a compressed neural network model. However, once the architecture with a desired level of sparsity is achieved, the zeroed out weights are removed for realization of gains in terms of inference speed as well as memory footprint. [00058] The accuracy checking engine 218, retrains the neural network model for a plurality of iterations such that accuracy of the compressed neural network model is checked at each iteration, and the steps of generating scores for each the artifact and storing weight of the lowest ranked artifact in the dictionary are repeated if the minimum desired accuracy is not violated. While if the minimum desired accuracy is violated, an artifact from the dictionary of previously pruned artifacts is returned to continue the retraining of the neural network model until accuracy of the neural network model on the validation set increases past the minimum desired accuracy. [00059] In addition, the step of retraining is terminated if no artifact from the dictionary is able to replace the lowest ranked artifact so as to increase the accuracy of the neural network model on the validation set past the minimum desired accuracy. Further, if the accuracy of the neural network model on the validation set increases past the minimum desired accuracy, the step of generating scores for each artifact is repeated. [00060] FIG. 3 illustrates an exemplary representation 300 of a navigation technique and a control strategy for autonomous navigation of a UAV on roads using a monocular vision in accordance with an embodiment of the present disclosure. [00061] With respect to FIG.3 the navigation technique for an autonomous navigation of UAVs on roads using monocular vision is disclosed. For execution of the navigation technique semi-structured settings of urban roads may be utilized. The complex control problem of autonomous navigation may be broken down into a three class classification problem, where each input image may be labeled as - (1) turn left, (2) go straight, or (3) turn right. For execution of the control strategy, when an input image is classified as under a “turn left” or “turn right” category, a control command for turning left at predefined angular velocity may be sent to the UAV. In the case of “go Straight”, a command for predefined forward velocity may be sent to the UAV for further movement of the UAV. In each of the images of FIG.3 is shown a control strategy where thee bars shown at bottom of each of the images represents a confidence assigned to each class and a top circle denotes a heading direction. [00062] FIG. 4 is a high-level flow diagram 400 representing a mechanism for generating and sending control signals to a UAV to generate flight maneuvers in accordance with an embodiment of the present disclosure. [00063] With respect to FIG. 4, the disclosed road following mechanism runs on a lightweight computer placed onboard the UAV running a robotics middleware (for example Robotics Operating System- ROS). A camera 402 onboard the UAV may capture a plurality of images. The plurality of images may be encoded and received as input by a camera driver 404. The lightweight computer supports and executes a road following mechanism and autopilot driver packages. The camera driver 404 may decode the encoded image and feed the decoded image to a neural network at block 406. The neural network at block 406 may generate control signals that are executed at block 408 by an autopilot driver. In an embodiment, each of a control signal may be generated per input of a Red Green Blue (RGB) monocular image. The one or more control signals as received from the autopilot driver are executed by autopilot hardware at block 410, and the received control signals from the autopilot hardware are transferred to an Electronic Speed Controller (ESC) of the UAV, at block 412, for appropriate maneuvering of the UAVs. As can be appreciated by those skilled in the art, the camera driver 404, the neural network 406, and the autopilot driver 408 are components of a middleware running on an onboard computer. In an embodiment, shallow CNN models may be separately trained on for example campus-roads and forest-trails datasets. [00064] FIG.5 is high-level flow diagram 500 representing a mechanism for iteratively sparsifying architecture of a pre-trained neural network in a greedy fashion while ensuring satisfying an accuracy threshold in accordance with an embodiment of the present disclosure. [00065] In an embodiment, the disclosed mechanism iteratively sparsifies the architecture of a pre-trained neural network in a greedy fashion while ensuring that an accuracy threshold is satisfied. At each iteration, all weights of a filter or column of an affine matrix (hereafter referred to as artifacts), are set to a value of zero. This may facilitate to effectively remove the artifact from the architecture, leading to sparsification. As can be appreciated by those skilled in the art, this step of removing the artifact from the architecture is commonly referred to as pruning. In addition, one of a key step of the disclosed mechanism is use of a “Basis Exploration” step, which enables to find neural network models that are significantly sparser than existing methods in the art are capable of generating. [00066] In an embodiment, the mechanism solves the following problem: Here, |support
Figure imgf000016_0001
denotes the cardinality of the support of w, which is a set containing the indices of all artifacts with nonzero weights. If the original pre-trained network has weights in n artifacts, then support Furthermore, t denotes the test error of the neural
Figure imgf000016_0010
Figure imgf000016_0002
network model with weights w. Thus, the model requires 95% accuracy and then the proposed invention can afford at most 5% test set error. Also, a test error rate is a parameter that the mechanism takes and is decided by a user as per required levels of performance. [00067] In an embodiment, at each iteration, the proposed mechanism performs the following series of steps. At step 1, the mechanism facilitates to generate scores for each artifact containing nonzero weights, and order them based on a score. At step 2, the weights of the lowest ranked artifact are stored in a dictionary, and are set to a value of zero in the network. Thereafter, the neural network model is retrained. At step 3, the accuracy of the neural network model on the validation set is checked. If the minimum desired accuracy benchmark is not violated, the steps 1-3 are repeated. Otherwise at step 4 an artifact from the dictionary of previously pruned artifacts is returned and the neural network model is retrained. If the accuracy increases past the minimum desired accuracy benchmark, the mechanism is directed to step 1, and is termed as a technique of basis exploration. [00068] In an embodiment, if the accuracy does not increases past the minimum desired accuracy benchmark, step 4 is repeated until the accuracy on the validation set increases past the minimum desired accuracy benchmark. In another embodiment, if no artifact from the dictionary can replace the lowest ranked artifact to increase the accuracy past the threshold, the mechanism is aborted. [00069] In an embodiment, scoring of the artifacts may be performed as: given a neural network with weights w and loss function f(w). The proposed disclosure uses a scoring function, called score
Figure imgf000016_0003
where score
Figure imgf000016_0004
Figure imgf000016_0005
where
Figure imgf000016_0006
are the weights of the jth artifact, or score
Figure imgf000016_0007
Figure imgf000016_0008
when
Figure imgf000016_0009
this is derived from the Taylor series expansion of the loss function f(w). [00070] In an embodiment, selection of the artifacts may be performed by selecting which of the artifact to prune using a function called select(w), where consider layer l, and let
Figure imgf000017_0001
be the indices of the artifacts with nonzero weights in the lth layer . Then, define select(w) =
Figure imgf000017_0002
Figure imgf000017_0003
[00071] In an embodiment, the pruning step may involve setting the weights of the jth artifact to 0. Thus, at each pruning step perform w
Figure imgf000017_0004
and retrain, and where j is selected using the select() function. [00072] In an embodiment, is disclosed a basis exploration step. The basis exploration step may occur after retraining,
Figure imgf000017_0005
In this step, pick an artifact w_((q))randomly with replacement from the dictionary of pruned artifacts, thus, at each basis exploration step, the mechanism performs w^(++) =w^++w_((q)), retrains, and checks if f(w^(++))£t. If the test fails, pick another w_((q'))from the dictionary of pruned artifacts and perform the step
Figure imgf000017_0006
and retrain, until find a q’ such that f(w^(++))£t. If the proposed mechanism can find no such q’, the mechanism terminates. The mechanism will terminate, since any neural network has only finitely many artifacts, and as such, the number of pruned artifacts in the dictionary is also finite. [00073] In an embodiment, retraining is performed, where at each pruning or basis exploration step, the neural network model is retrained, and the retraining is performed either until convergence or for a fixed number of iterations. Ideally, the model is retrained until convergence that is, a back propagation is run to obtain gradients, and update the weights in the remaining filters. In practice, retraining of the neural network model is done for a fixed number of iterations until a local minimum is approximately reached. [00074] The mechanism as shown in FIG.5 can be described as follows. At block 502, a pre-trained network is defined with ƒ( w ) £ t, and a dictionary of pruned filters – that are empty. At block 504, is generated a normalized score for artifacts. Weights of lowest ranked artifacts is set to zero, and weights of removed artifacts are added to dictionary retrain model. At block 506, is determined whether ƒ( w ) £ t. If yes the processing is diverted to step 504, else a determination is made at step 508 for determining if any more replacements are possible. If yes at block 510, is determined if a filter is added in previous step, then randomly select filter us removed and returned to dictionary with replacement from dictionary and select filter is added to neural network retrain model, else at block 512 the mechanism is ended. [00075] FIG.6 is a high-level flow diagram 600 illustrating working of the system in accordance with an embodiment of the present disclosure. The process described with reference to FIG. 6 may be implemented in the form of executable instructions stored on a machine readable medium and executed by a processing resource (e.g., a microcontroller, a microprocessor, central processing unit core(s), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), and the like) and/or in the form of other types of electronic circuitry. For example, this processing may be performed by one or more computer systems of various forms, such as the computer system 700 described with reference to FIG.7 below. [00076] In context of the present example, at block 602 configuration of at least one inference time constraint and a minimum desired accuracy is enabled. At block 604, a neural network model is compressed that has been previously trained using an existing dataset. The said neural network model is compressed by: at block 606 scores for each artifact of the neural network model containing non-zero weights are generated. At block 608, weights of a lowest ranked artifact are stored in a dictionary, and weights of said lowest ranked artifact are set to zero to effect a compressed neural network model where the lowest ranked artifact is removed. Further at block 610, said neural network model is retrained for a plurality of iterations such that accuracy of the compressed neural network model is checked at each iteration, and the steps of generating scores for each said artifact and stored weight of the lowest ranked artifact in the dictionary are repeated if the minimum desired accuracy is not violated. Further, if the minimum desired accuracy is violated, an artifact from the dictionary of previously pruned artifacts is returned to continue the retraining of said neural network model until accuracy of the neural network model on the validation set increases past the minimum desired accuracy. [00077] Those skilled in the art would appreciate that in view of above-mentioned embodiments, the present disclosure provides a number of technical advantages. The system and method of present disclosure finds sparse neural network architectures that are capable of achieving high inference rates such that on when sparse neural network architectures are deployed on low power computers like the Odroid XU4 and the Raspberry Pi 3, then the need for network connections to powerful computers is removed. The proposed solution may be used for facilitating remote surveillance of paths, boundaries, infrastructure such as roads and bridges, particularly in environments where GPS connectivity is unreliable, For parcel delivery in gated communities or campuses, crop surveillance, and crowd surveillance in urban areas. [00078] In addition, to find sparse neural network architectures that facilitate to achieve high speeds required for efficient mission completion, we a novel procedure for structured pruning of CNNs is proposed. The novel basis exploration method in our proposed mechanism boosts its performance, enabling a significantly higher degree of sparsification than state-of-the-art methods while maintaining high accuracy, for autonomous navigation using edge devices. As can be appreciated by those skilled in the art, replacement strategy combined with informed pruning, instead of only informed pruning of structured groups of neurons, leads to unexpected improvement in performance. [00079] FIG. 7 illustrates an exemplary computer system to implement the proposed system in accordance with embodiments of the present disclosure. [00080] As shown in FIG. 7, computer system can include an external storage device 710, a bus 720, a main memory 730, a read only memory 740, a mass storage device 750, communication port 760, and a processor 770. A person skilled in the art will appreciate that computer system may include more than one processor and communication ports. Examples of processor 770 include, but are not limited to, an Intel® Itanium® or Itanium 2 processor(s), or AMD® Opteron® or Athlon MP® processor(s), ARM Cortex processor(s), Motorola® lines of processors, FortiSOC™ system on a chip processors or other future processors. Processor 770 may include various modules associated with embodiments of the present invention. Communication port 760 can be any of an RS-232 port for use with a modem based dialup connection, a 10/100 Ethernet port, a Gigabit or 10 Gigabit port using copper or fiber, a serial port, a parallel port, or other existing or future ports. Communication port 760 may be chosen depending on a network, such a Local Area Network (LAN), Wide Area Network (WAN), or any network to which computer system connects. [00081] Memory 730 can be Random Access Memory (RAM), or any other dynamic storage device commonly known in the art. Read only memory 740 can be any static storage device(s) e.g., but not limited to, a Programmable Read Only Memory (PROM) chips for storing static information e.g., start-up or BIOS instructions for processor 770. Mass storage 750 may be any current or future mass storage solution, which can be used to store information and/or instructions. Exemplary mass storage solutions include, but are not limited to, Parallel Advanced Technology Attachment (PATA) or Serial Advanced Technology Attachment (SATA) hard disk drives or solid-state drives (internal or external, e.g., having Universal Serial Bus (USB) and/or Firewire interfaces), e.g. those available from Seagate (e.g., the Seagate Barracuda 7102 family) or Hitachi (e.g., the Hitachi Deskstar 7K1000), one or more optical discs, Redundant Array of Independent Disks (RAID) storage, e.g. an array of disks (e.g., SATA arrays), available from various vendors including Dot Hill Systems Corp., LaCie, Nexsan Technologies, Inc. and Enhance Technology, Inc. [00082] Bus 720 communicatively couples processor(s) 770 with the other memory, storage and communication blocks. Bus 720 can be, e.g. a Peripheral Component Interconnect (PCI) / PCI Extended (PCI-X) bus, Small Computer System Interface (SCSI), USB or the like, for connecting expansion cards, drives and other subsystems as well as other buses, such a front side bus (FSB), which connects processor 770 to software system. [00083] Optionally, operator and administrative interfaces, e.g. a display, keyboard, and a cursor control device, may also be coupled to bus 720 to support direct operator interaction with computer system. Other operator and administrative interfaces can be provided through network connections connected through communication port 760. External storage device 710 can be any kind of external hard-drives, floppy drives, IOMEGA® Zip Drives, Compact Disc - Read Only Memory (CD-ROM), Compact Disc - Re-Writable (CD- RW), Digital Video Disk - Read Only Memory (DVD-ROM). Components described above are meant only to exemplify various possibilities. In no way should the aforementioned exemplary computer system limit the scope of the present disclosure. [00084] Embodiments of the present disclosure may be implemented entirely hardware, entirely software (including firmware, resident software, micro-code, etc.) or combining software and hardware implementation that may all generally be referred to herein as a “circuit,” “module,” “component,” or “system.” Furthermore, aspects of the present disclosure may take the form of a computer program product comprising one or more computer readable media having computer readable program code embodied thereon. [00085] Thus, it will be appreciated by those of ordinary skill in the art that the diagrams, schematics, illustrations, and the like represent conceptual views or processes illustrating systems and methods embodying this invention. The functions of the various elements shown in the figures may be provided through the use of dedicated hardware as well as hardware capable of executing associated software. Similarly, any switches shown in the figures are conceptual only. Their function may be carried out through the operation of program logic, through dedicated logic, through the interaction of program control and dedicated logic, or even manually, the particular technique being selectable by the entity implementing this invention. Those of ordinary skill in the art further understand that the exemplary hardware, software, processes, methods, and/or operating systems described herein are for illustrative purposes and, thus, are not intended to be limited to any particular named. [00086] As used herein, and unless the context dictates otherwise, the term "coupled to" is intended to include both direct coupling (in which two elements that are coupled to each other contact each other) and indirect coupling (in which at least one additional element is located between the two elements). Therefore, the terms "coupled to" and "coupled with" are used synonymously. Within the context of this document terms "coupled to" and "coupled with" are also used euphemistically to mean “communicatively coupled with” over a network, where two or more devices are able to exchange data with each other over the network, possibly via one or more intermediary device. [00087] It should be apparent to those skilled in the art that many more modifications besides those already described are possible without departing from the inventive concepts herein. The inventive subject matter, therefore, is not to be restricted except in the spirit of the appended claims. Moreover, in interpreting both the specification and the claims, all terms should be interpreted in the broadest possible manner consistent with the context. In particular, the terms “comprises” and “comprising” should be interpreted as referring to elements, components, or steps in a non-exclusive manner, indicating that the referenced elements, components, or steps may be present, or utilized, or combined with other elements, components, or steps that are not expressly referenced. Where the specification claims refers to at least one of something selected from the group consisting of A, B, C …. and N, the text should be interpreted as requiring only one element from the group, not A plus N, or B plus N, etc. [00088] While the foregoing describes various embodiments of the invention, other and further embodiments of the invention may be devised without departing from the basic scope thereof. The scope of the invention is determined by the claims that follow. The invention is not limited to the described embodiments, versions or examples, which are included to enable a person having ordinary skill in the art to make and use the invention when combined with information and knowledge available to the person having ordinary skill in the art. ADVANTAGES OF THE PRESENT DISCLOSURE [00089] The present disclosure provides a system and method that facilitate autonomous navigation of MAVs on roads using Deep Neural Networks (DNNs) in GPS denied environments while using low power CPUs. [00090] The present disclosure provides a system and method that facilitates autonomous navigation of MAVs by converting perception and control task to a 3-class classification. [00091] The present disclosure provides a system and method that facilitates to employ neural networks with sparse architectures to avoid negotiating a tradeoff between accuracy and inference. [00092] The present disclosure provides a system and method that facilitates to efficiently search for a different, but identically sparse, neural network architecture having better generalization abilities. [00093] The present disclosure provides a system and method that facilitates to improve inference times for autonomous navigation on low power computers functioning without GPUs. [00094] The present disclosure provides a system and method that facilitates to provide higher speed autonomous navigation of the UAVs. [00095] The present disclosure provides a system and method that facilitates to use large DNNs to be run on low power CPUs/GPUs in limited power budget and with weight constraints. [00096] The present disclosure provides a system and method that facilitates sparisification of DNNs to enable high inference rate of DNNs without requiring specialized hardware.

Claims

We Claim: 1. A system for autonomous navigation of an unmanned aerial vehicle (UAV) in a GPS denied environment, said system comprising: one or more processors operatively coupled to a memory storing a set of executable instructions, which when executed by the one or more processors: enable configuration of at least one inference time constraint and a minimum desired accuracy; compress a neural network model that has been previously trained using an existing dataset, wherein said neural network model is compressed by: generating scores for each artifact of said neural network model containing non-zero weights; storing weights of a lowest ranked artifact in a dictionary, and setting weights of said lowest ranked artifact to zero to effect the compressed neural network model where the lowest ranked artifact is removed; and retraining said neural network model for a plurality of iterations such that accuracy of the compressed neural network model is checked at each iteration, and the steps of generating scores for each said artifact and storing weight of the lowest ranked artifact in the dictionary are repeated if the minimum desired accuracy is not violated, wherein if the minimum desired accuracy is violated, an artifact from the dictionary of previously pruned artifacts is returned to continue the retraining of said neural network model until accuracy of the neural network model on the validation set increases past the minimum desired accuracy.
2. The system as claimed in claim 1, wherein upon receipt of an image captured by the UAV, said image is encoded and processed by the compressed neural network model so as to obtain a decision from the compressed neural network model as to a direction in which the UAV should navigate.
3. The system as claimed in claim 1, wherein computation of gradients of weights is done through a standard back propagation mechanism.
4. The system as claimed in claim 1, wherein the step of retraining is terminated if no artifact from the dictionary is able to replace the lowest ranked artifact to increase the accuracy of the neural network model on the validation set past the minimum desired accuracy.
5. The system as claimed in claim 1, wherein if the accuracy of the neural network model on the validation set increases past the minimum desired accuracy, the step of generating scores for each artifact is repeated.
6. The system as claimed in claim 1, wherein post the step of generating the scores, said artifacts are sequenced based on their respective scores.
7. The system as claimed in claim 1, wherein the neural network model is a pre-trained convolutional neural network (CNN).
8. The system as claimed in claim 1, wherein the navigation is monocular based reactive navigation.
9. A method for autonomous navigation of an unmanned aerial vehicle (UAV) in a GPS denied environment, said method comprising: enabling configuration of at least one inference time constraint and a minimum desired accuracy; compressing a neural network model that has been previously trained using an existing dataset, wherein said neural network model is compressed by: generating, at a processor of a computing device, scores for each artifact of the neural network model containing non-zero weights; storing, at the processor, weights of a lowest ranked artifact in a dictionary, and setting weights of said lowest ranked artifact to zero to effect a compressed neural network model where the lowest ranked artifact is removed; and retraining, at the processor, said neural network model for a plurality of iterations such that accuracy of the compressed neural network model is checked at each iteration, and the steps of generating scores for each said artifact and storing weight of the lowest ranked artifact in the dictionary are repeated if the minimum desired accuracy is not violated, wherein if the minimum desired accuracy is violated, an artifact from the dictionary of previously pruned artifacts is returned to continue the retraining of said neural network model until accuracy of the neural network model on the validation set increases past the minimum desired accuracy.
10. An autonomous navigation for an unmanned aerial vehicle (UAV) in a GPS denied environment, said vehicle comprising: one or more processors operatively coupled to a memory storing a set of executable instructions and a camera operatively coupled with the one or more processors to capture an image of an area where the UAV is navigating; encoding the captured image and transmitting the encoded image to the compressed neural network model; and receiving a navigation decision from the compressed neural network model, and navigating the UAV in any of a left, right or straight direction based on the received navigation decision.
PCT/IB2020/058005 2019-08-27 2020-08-27 System and method for autonomous navigation of unmanned aerial vehicle (uav) in gps denied environment WO2021038485A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IN201941034552 2019-08-27
IN201941034552 2019-08-27

Publications (1)

Publication Number Publication Date
WO2021038485A1 true WO2021038485A1 (en) 2021-03-04

Family

ID=74685251

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2020/058005 WO2021038485A1 (en) 2019-08-27 2020-08-27 System and method for autonomous navigation of unmanned aerial vehicle (uav) in gps denied environment

Country Status (1)

Country Link
WO (1) WO2021038485A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116499469A (en) * 2023-06-28 2023-07-28 北京航空航天大学 GNSS/INS combined navigation method utilizing neural network model on-line learning and compensation

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107543539A (en) * 2016-06-29 2018-01-05 联芯科技有限公司 The location information acquisition method and unmanned plane of a kind of unmanned plane
US20180010914A1 (en) * 2016-07-05 2018-01-11 The Boeing Company Navigation aids for unmanned aerial systems in a gps-denied environment

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107543539A (en) * 2016-06-29 2018-01-05 联芯科技有限公司 The location information acquisition method and unmanned plane of a kind of unmanned plane
US20180010914A1 (en) * 2016-07-05 2018-01-11 The Boeing Company Navigation aids for unmanned aerial systems in a gps-denied environment

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116499469A (en) * 2023-06-28 2023-07-28 北京航空航天大学 GNSS/INS combined navigation method utilizing neural network model on-line learning and compensation
CN116499469B (en) * 2023-06-28 2023-09-08 北京航空航天大学 GNSS/INS combined navigation method utilizing neural network model on-line learning and compensation

Similar Documents

Publication Publication Date Title
US20220398806A1 (en) Systems and methods for generating 3d models from drone imaging
US20160306363A1 (en) Autonomous long-range landing using sensor data
US11594138B1 (en) Systems and methods for optimizing a controlled flight plan
US11676005B2 (en) Method and system for deep neural networks using dynamically selected feature-relevant points from a point cloud
US10956807B1 (en) Adaptive and interchangeable neural networks utilizing predicting information
US11763686B2 (en) Systems and methods for digital communication of flight plan
US11755038B2 (en) Systems and methods for scaling lag based on flight phase of an electric aircraft
US20220388532A1 (en) Method for predicting a trajectory of an agent in a vicinity of a self-driving vehicle based on ranking
US11928867B2 (en) Group of neural networks ensuring integrity
WO2023109716A1 (en) Unmanned ground vehicle-unmanned aerial vehicle cooperative lost target tracking method and apparatus, device, and storage medium
WO2021038485A1 (en) System and method for autonomous navigation of unmanned aerial vehicle (uav) in gps denied environment
Navardi et al. An optimization framework for efficient vision-based autonomous drone navigation
EP3944154A1 (en) Method for optimizing on-device neural network model by using sub-kernel searching module and device using the same
WO2021053840A1 (en) Moving body, program, and control method
US20230348093A1 (en) Systems and methods for displaying a pilot display for an aircraft
CN116678424A (en) High-precision vehicle positioning, vectorization map construction and positioning model training method
US11598960B1 (en) Systems and methods for a heads-up display for an electric aircraft
CN115690608A (en) Fast object detection for vehicle situational awareness
Feng et al. Integration and Implementation of a Low-cost and Vision-based UAV Tracking System
Thanh Dat et al. A deep learning based implementation for self-driving car
RU2800694C2 (en) Method for predicting the trajectory of an agent near an unmanned vehicle based on the ranking
Li et al. UAV System integration of real-time sensing and flight task control for autonomous building inspection task
US11948326B2 (en) Fixed or movable electronic device with NPU and ISP
Sarkar Intelligent Energy-Efficient Drones: Path Planning, Real-Time Monitoring and Decision-Making
Jhan et al. Development of low-cost camera-based UAV control strategy

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20856175

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20856175

Country of ref document: EP

Kind code of ref document: A1