CN116805397A - System and method for detecting and identifying small objects in images using machine learning algorithms - Google Patents

System and method for detecting and identifying small objects in images using machine learning algorithms Download PDF

Info

Publication number
CN116805397A
CN116805397A CN202211641775.8A CN202211641775A CN116805397A CN 116805397 A CN116805397 A CN 116805397A CN 202211641775 A CN202211641775 A CN 202211641775A CN 116805397 A CN116805397 A CN 116805397A
Authority
CN
China
Prior art keywords
interest
image
drone
search parameters
machine learning
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN202211641775.8A
Other languages
Chinese (zh)
Inventor
弗拉基米尔·E·图罗夫
弗拉基米尔·Y·克莱施宁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kaspersky Lab AO
Original Assignee
Kaspersky Lab AO
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
Priority claimed from US17/978,311 external-priority patent/US20230306715A1/en
Application filed by Kaspersky Lab AO filed Critical Kaspersky Lab AO
Publication of CN116805397A publication Critical patent/CN116805397A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • G06V20/17Terrestrial scenes taken from planes or by drones
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects

Abstract

Systems and methods for detecting small-sized objects based on image analysis using Unmanned Aerial Vehicles (UAVs) are disclosed. The method comprises the following steps: obtaining object search parameters, wherein the search parameters comprise at least one feature of an object of interest; generating at least one image comprising a high resolution image during flight of the UAV; analyzing the generated image using a machine learning algorithm based on the obtained search parameters; identifying the object of interest using a machine learning algorithm if at least one object satisfying the search parameters is detected in the image during analysis; and determining a location of the detected object in response to identifying the detected object as the object of interest.

Description

System and method for detecting and identifying small objects in images using machine learning algorithms
Technical Field
The present invention relates generally to the field of computational data processing, and in particular to a system and method for detecting and identifying small objects in images using machine learning algorithms.
Background
Unmanned Aerial Vehicles (UAVs) are becoming increasingly popular in a variety of applications. For example, UAVs are popular among amateurs and enthusiasts and are increasingly being considered viable package delivery vehicles. In UAV aerial photography, processing and analysis of images is typically performed after the UAV returns to the ground and data is extracted from it.
At the same time, there are several conventional solutions that allow data processing to be performed directly on the UAV, but in this case strict requirements are placed on the size of the objects in the image as well as on the photo and video recordings. Preferably, the objects in the image should be large enough and the size of the photograph should be relatively small due to the limited computational power of the UAV. Typically, in such pictures, the size of the object should occupy a significant portion of the image, such as, but not limited to, more than 20%.
Known solutions typically do not allow the user to perform some tasks related to fast searching for small and ultra-small objects relative to the entire image size. Examples of such tasks include, but are not limited to, searching images for missing persons, searching for and counting affected persons and/or buildings within an emergency area. The search tasks may include: objects (e.g., people, pets, buildings, automobiles) are detected and/or identified. Thus, few optimized solutions are dedicated to joint detection and identification of small and ultra-small objects in an image.
Another task that the prior solutions in this field have not addressed is to process the images in order to detect and identify small and ultra-small objects directly on UAVs using machine learning algorithms. In general, if the UAV lacks some computing power, the likelihood of identifying or classifying the object may be significantly reduced and/or the time of image processing may be significantly increased. Thus, the lack of required computing resources may result in loss of information, time (e.g., if the UAV has left the area of interest), and may result in inefficiency in detecting objects in real-time. It should be noted that the mentioned image processing methods using machine learning image processing algorithms by UAV generally only mean a very simplified classification. In such classification, the number of categories is typically very small (2 to 3), or the categories in the classification have very different characteristics. For a set of features that may be fed into classifiers that share similar shapes and sizes (e.g., different types of devices), the accuracy of classification is often not high enough. In general, the smaller the size of the identified object, the more difficult the classification task.
Thus, there is a need to effectively detect, identify and classify small and ultra-small objects in real time directly on UAVs.
Disclosure of Invention
A new method of detecting and identifying small objects on high resolution optical images directly on UAVs using a computing module including a machine learning algorithm is disclosed. Advantageously, the disclosed solution is additionally able to classify the detected objects.
In one aspect, the machine learning algorithm may include a convolutional neural network. Advantageously, the disclosed solutions may be implemented using any type of UAV, including but not limited to: aircraft, helicopters, etc. The disclosed method allows to inform the operator of the ground based receiving station in real time the result of the detection and identification of the detected object using a radio channel or cellular network.
In one aspect, a method for detecting small-sized objects based on image analysis using a Unmanned Aerial Vehicle (UAV) includes: obtaining object search parameters, wherein the search parameters comprise at least one feature of the object of interest; generating at least one image comprising a high resolution image during flight of the UAV; analyzing the generated image using a machine learning algorithm based on the obtained search parameters; identifying the object of interest using a machine learning algorithm if at least one object satisfying the search parameters is detected in the image during analysis; and determining a location of the detected object in response to identifying the detected object as an object of interest.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate one or more exemplary aspects of the present invention and, together with the detailed description, serve to explain the principles and implementations of these exemplary aspects.
Fig. 1 schematically illustrates a particular example of an aircraft (e.g., a UAV) configured to facilitate detection and identification of small objects in an image using a machine learning algorithm in accordance with aspects of the present invention.
FIG. 2 is a flow chart illustrating an example method for detecting and identifying small objects in an image using a machine learning algorithm performed by a UAV in accordance with aspects of the present invention.
Fig. 3A-3C illustrate examples of detected and identified objects of interest that appear as fragments of an image from which the objects of interest are identified, according to aspects of the invention.
FIG. 4 presents an example of a captured image displaying small objects detected and identified in accordance with an aspect of the present invention.
Fig. 5 shows two examples of images in which detected and recognized small objects are represented.
FIG. 6 illustrates an example of a computer system upon which various aspects of the systems and methods disclosed herein may be implemented.
Detailed Description
Exemplary aspects are described herein in the context of systems, methods, and computer program products for detecting and identifying small objects in images using machine learning algorithms. Those of ordinary skill in the art will realize that the following description is illustrative only and is not intended to be in any way limiting. Other aspects will readily occur to those skilled in the art upon review of the present disclosure. Reference will now be made in detail to implementations of example aspects as illustrated in the accompanying drawings. The same reference indicators will be used throughout the drawings and the following description to the extent possible for the same or like items.
Glossary of terms: a number of terms are defined herein which will be used to describe various aspects of the invention.
As used herein, an "operator" refers to a "user" of the disclosed system.
As used herein, a "small object" refers to a relatively small or ultra-small spot of light in an image that has a brightness that is different from the brightness of its surrounding environment. The term "small object" particularly refers to an image of an object occupying several tens of pixels in an image (frame) having a resolution of at least 4K pixels, for example 6000x4000 pixels. Examples of small objects in an image may be pictures of private houses or automobiles, and examples of ultra-small objects may be people, by the ratio of the size of the object to the size of the image itself. It should be noted that with the aid of high resolution images, the disclosed system is capable of analyzing, on the one hand, images covering a large area of land. On the other hand, when the image covers such a large area, the disclosed system places additional demands on the analysis image itself to detect objects on the ground. For example, a UAV flying height of 150 meters and forming a photo frame of size 6000x4000 pixels (2400 ten thousand pixels) with an image size of 70 meters x46 meters and a resolution of 1.2 pixels per centimeter, the coverage area of one frame would be equal to 3320 square meters.
Aspects of the present invention can address the shortcomings of existing systems by providing methods and apparatus for detecting and identifying small objects based on analysis of high resolution photographs or video images using a computing module configured to implement at least one machine learning algorithm.
Fig. 1 schematically illustrates a particular example of an aircraft (e.g., a UAV) configured to facilitate detection and identification of small objects in an image using a machine learning algorithm in accordance with aspects of the present invention.
Turning to UAV100 shown in fig. 1. UAV100 may be designed according to commercial aviation standards and may include multiple redundancy to ensure reliability. In particular, UAV100 may include multiple systems or subsystems that operate under the control of on-board processing computer 125 or at least partially under the control of on-board processing computer 125, such as on a microcomputer (embedded microprocessor system) that has a small size for installation on a UAV and allows the necessary calculations of the claimed aspects to be performed.
In one aspect, UAV100 may include at least the following components shown in fig. 1: the detection module 110 and the calculation module 120 (which may implement an artificial neural network), the GPS/Glonass module 130 and the data transmission module 140. Furthermore, UAV100 may include elements required to fly for a period of time. Further, each UAV100 may use software configured to interact with each other and achieve its purpose. Communication between the above modules may be provided at least by wired communication (cabling).
In one aspect, detection module 110 may be configured as a mirror-less camera capable of generating high resolution images of UAV100 during the flight of UAV 100. For example, the detection module 110 may include a Sony Alpha6000 camera or the like. The computing module 120 may be implemented on an onboard processing computer 125, for example, on a microcomputer (embedded microprocessor system) that is sized to fit on the UAV and allows the necessary computations of the claimed aspects to be performed at the required speed (e.g., no more than 1 second for image processing and analysis). In one aspect, the microcomputer may be a stand-alone device in the form of a module board containing a processor, GPU, power management system, high speed interface, etc. An example of such a stand-alone device may be the use of NVIDIA (R) Jetson TM An implemented device or module such as MB164.01 from STC "module". GPS/Glonass module 130 may be configured to transmit location information (e.g., GPS coordinates of UAV 100). The data transmission module 140 may be a standard device for transmitting and receiving data over a communication channel (e.g., a wireless channel and/or cellular communication).
FIG. 2 is a flow chart illustrating an example method for detecting and identifying small objects in an image using a machine learning algorithm performed by a UAV.
It should be noted that in the description of method 200, features of the method may be used in both singular and plural forms, and in various aspects of the method, both forms may be used unless explicitly stated otherwise. For example, the term "object" may refer to both one object of interest and to a plurality of objects of interest. Thus, the term "specified parameter" may refer to a parameter of one search object, or may refer to parameters of a plurality of search objects.
The result of detecting and identifying a small object may be to select a set of pixels associated with the object of interest depicted on the image and to determine the object of interest using the selected set of pixels.
As shown in fig. 2, the claimed method 200 for detecting and identifying small objects in images obtained from detection module 110 using a calculation module 120 implementing at least one machine learning algorithm may include a series of sequential steps performed by the components that make up UAV 100.
According to the flowchart shown in fig. 2, detection module 110 may generate at least one image for analysis during UAV100 flight at step 210. In one aspect, UAV100 may fly along a given route and under real-time control, while UAV100 may also be configured to dynamically adjust the route. In one aspect, the detection module 110 may generate the ground image at least once per second from the air. The resulting size of the generated image and, accordingly, the picture presented by the image may be adjusted and may depend on the capabilities of the detection module 110 itself and the computing capabilities of the autonomous device that may implement the computing module 120. At the same time, the pictures in the obtained images should have high resolution for analysis, as the flight of UAV100 may be performed at heights exceeding 100 meters (e.g., 150 meters) so that the obtained images may be analyzed.
In one aspect, step 210 may additionally specify the flight path, photography mode, and parameters (e.g., frame/second frequency, image resolution) of UAV100 prior to image generation. Further, the computing module 120 may obtain data about at least one object to search for the object in the obtained image. The data about the object may be another image representing the object, a description of the object, a shape, a color, an estimated size, etc. of the object.
In one aspect, in response to obtaining the image, the detection module 110 may send the obtained data to the calculation module 120 at step 220. The transmitted data may contain at least one image depicting the detected object. Furthermore, in real-time, computing module 120 may additionally receive location information (e.g., GPS coordinates and altitude of UAV 100) when the image was generated.
In one aspect, at step 230, the computing module 120 may analyze each received image in real-time using a machine learning algorithm to search for at least one object that meets the criteria provided in the search options.
It should be noted that in one aspect, the machine learning algorithm may include an Artificial Neural Network (ANN). In one aspect, an ANN may be preselected to search for generated images to perform detection and identification of objects of interest based on specified parameters. Furthermore, the ANN may be pre-trained and may be configured to dynamically perform additional training. Training may be performed based on a list of prepared images on which similar objects of interest are depicted under different climatic conditions, from different angles and with different background illumination. Advantageously, the training process may utilize images of the object of interest made under limited visibility conditions. Furthermore, the ANN may be trained based on the provided search parameters just prior to starting searching for the object of interest. The search parameter may be a parameter characterizing the object of interest, such as, but not limited to, a size, a color, a geometry, or a set of shapes. For example, if the object of interest is a person, the search parameters provided may include, but are not limited to, the size of the person, hair color, the type and color of clothing they may be wearing. If the object of interest is a building or a vehicle, the search parameters may include, but are not limited to, the size, color, type of object or portion thereof. In other words, a feature element of a building or vehicle may be specified as a search parameter.
As used herein, limited visibility refers to difficult weather conditions (fog, side light, sunset, etc.), as well as other reasons that may be only partially visible from above UAV100 or from viewing the object of interest at an angle to the flight of UAV 100. For example, when a person is found in a forest in summer, the branches and leaves often cover most of the surface of the land and possibly also most of the object of interest. Thus, an ANN may be trained to detect segments of an object of interest, such as, but not limited to, only parts of the human body (arms, legs, shoulders, head, etc.) that are detectable in an image. The ANN may also be trained to make decisions on the detection of objects of interest based on analysis of the detected fragments.
In one aspect, convolutional Neural Networks (CNNs) may be used as machine learning algorithms, which may allow for more efficient detection and identification of objects in an image.
In response to the preliminary detection of an object satisfying the specified parameters in the analyzed image, the computing module 120 may identify the detected object using a machine learning algorithm to make a final decision on a match between the discovered object and the object of interest, step 240. In this case, the identification may be performed using the same machine learning algorithm as the detection object and/or using another machine learning algorithm that may be implemented by the computing module 220, depending on the particular implementation.
In one aspect, identifying may include determining a match between the detected object and at least some specified parameters of the object of interest. For example, if at least 75% of the parameters match, the detected object may be declared as an object of interest.
In one aspect, in response to successful identification of the object of interest, the location of the object may be determined by analyzing the location data obtained by the GPS/Glonass module 130, step 250. The location data may contain information about the coordinates and altitude of UAV100 at the time the image was generated, taking into account data (size and format) related to the image as well as data from the image, such as the size of the object (in pixels) and its location in the image. Based on the designation information, the position (coordinates) of the object of interest is calculated. Further, to determine coordinates of the object of interest, optical data of an image sensor (e.g., a lens used by the camera described above) used by the detection module 110 of the UAV100 is used. In one aspect, a 50mm fixed lens may be used.
In one aspect, in an additional step 260, the file may be organized. The file may contain a portion (fragment) of the image in which the object of interest was detected and identified, and the calculated coordinates of the object of interest. Examples of selected segments 303, 306, 309 are shown in fig. 3A-3C.
In one aspect, the transmission module 140 may transmit the generated file to the ground receiving station in step 270, and in the event that the connection is not available, the transmission module 140 may wait until the connection is available and may retransmit. Depending on the implementation, the ground-based receiving station may be stationary or mobile (e.g., a vehicle equipped with the necessary equipment to receive and visualize information).
In one aspect, in optional step 280, the ground-based receiving station may use data from the file to visualize the location of the object of interest on a map containing the search location. The ground-based receiving station may use, for example, a web interface or software application with similar characteristics for visualization.
It should be noted that in one aspect, the disclosed system may be implemented as a system including a plurality of UAVs 100 and at least one ground receiving station. When searching (detecting and identifying) objects, data may be exchanged between different UAVs 100 for more efficient searching. Data may be exchanged between UAV100 and a ground-based receiving station in communication with UAV 100. At the same time, each UAV100 may be controlled from a ground-based receiving station, for example, transmission of data regarding objects of interest, flight paths, and search patterns. In this system, UAV100 may be implemented as various types of UAVs. For example, one UAV100 may be of the aircraft type, while the other is of the helicopter type. Advantageously, the joint use of multiple UAVs 100 may aggregate data from them in a single interface (at the ground receiving station). The use of multiple UAVs 100 may increase the search area to at least several square kilometers at the same time.
Fig. 3A-3C illustrate examples of detected and identified objects of interest presented as fragments of an image identifying the object of interest in accordance with aspects of the invention. More specifically, fig. 3A-3C show examples of the following images:
the formation of a snapshot containing images 301, 304, 307;
the result of the detection and recognition of the discovered objects 302, 305, 308;
fragments 303, 306, 309 of images 301, 304, 307 representing the identified search object 310.
FIG. 4 presents an example of a captured image displaying small objects detected and identified in accordance with an aspect of the present invention. More specifically, fig. 4 shows the result of the application of the disclosed method for detecting and identifying several objects. Image 402 shows a picture of a portion of a city in which three types of objects are detected and identified. The first type of object 404 is a person. Each object 404 found and identified as a person in the image 402 is labeled "pedestrian" in the figure, while also indicating the confidence level calculated by the ANN, which may be expressed in percent. Each object 406 found and identified in the image 402 as a car is marked by the word car, while also indicating a confidence level. As the third type of object 408, a large car of the "van" type is detected and identified, and presented in the image 402 with the name "van" and the corresponding confidence.
Fig. 5 shows two examples of images showing detected and identified small objects of interest. In these examples, the task of finding the object is to search for houses located near the river.
In example 1, an image 502 is presented, wherein in a first instance, image 504 represents an image before the disclosed method is applied and image 505 represents an image after the disclosed method is applied. In example 2, a second image 506 is presented, where image 508 is an incoming method and image 510 shows the result of using the disclosed method.
FIG. 6 illustrates an example of a computer system upon which aspects of the systems and methods disclosed herein may be implemented. Computer system 20 may represent a system for detecting and identifying small objects in an image and may be in the form of multiple computing devices or a single computing device, such as a desktop computer, a notebook computer, a laptop computer, a mobile computing device, a smart phone, a tablet computer, a server, a mainframe, an embedded device, and other forms of computing devices.
As shown, the computer system 20 includes a central processing unit (Central Processing Unit, CPU) 21, a system memory 22, and a system bus 23 that connects the various system components, including memory associated with the central processing unit 21. The system bus 23 may include a bus memory or bus memory controller, a peripheral bus, and a local bus that may be capable of interacting with any other bus architecture. Examples of buses may include PCI, ISA, PCIExpress, hyperTransport TM (HyperTransport TM ) Infinite bandwidth TM (InfiniBand TM ) Serial ATA, I2C, and other suitable interconnections. The central processing unit 21 (also referred to as a processor) may include a single set or multiple sets of processors having a single core or multiple cores. The processor 21 may execute one or more computer-executable codes that implement the techniques of the present invention. The system memory 22 may be any memory for storing data used herein and/or computer programs executable by the processor 21. The system Memory 22 may include volatile Memory, such as random access Memory (Random Access Memory, RAM) 25, and non-volatile Memory, such as Read-Only Memory (ROM) 24, flash Memory, etc., or any combination thereof. A Basic Input/Output System (BIOS) 26 may store Basic programs that transfer information between elements within the computer System 20, such as those during loading of the operating System using ROM 24.
The computer system 20 may include one or more storage devices, such as one or more removable storage devices 27, one or more non-removable storage devices 28, or a combination thereof. The one or more removable storage devices 27 and the one or more non-removable storage devices 28 are connected to the system bus 23 by a storage device interface 32. In one aspect, the storage devices and corresponding computer-readable storage media are power-independent modules for storing computer instructions, data structures, program modules, and other data for computer system 20. The system memory 22, the removable storage device 27, and the non-removable storage device 28 may use a variety of computer-readable storage media. Examples of the computer readable storage medium include: machine memory such as cache, SRAM, DRAM, zero capacitance RAM, dual transistor RAM, eDRAM, EDO RAM, DDR RAM, EEPROM, NRAM, RRAM, SONOS, PRAM; flash memory or other storage technology, such as in a solid state drive (Solid State Drive, SSD) or flash memory drive; magnetic tape cartridges, magnetic tape, and magnetic disk storage, such as in a hard disk drive or floppy disk; optical storage, such as in compact discs (CD-ROM) or digital versatile discs (Digital Versatile Disk, DVD); and any other medium that can be used to store the desired data and that can be accessed by computer system 20.
The system memory 22, the removable storage device 27, and the non-removable storage device 28 of the computer system 20 may be used to store an operating system 35, additional application programs 37, other program modules 38, and program data 39. The computer system 20 may include a peripheral interface 46 for communicating data from an input device 40, such as a keyboard, mouse, stylus, game controller, voice input device, touch input device, or other peripheral device, such as a printer or scanner via one or more I/O ports, such as a serial port, parallel port, universal serial bus (Universal Serial Bus, USB), or other peripheral interface. A display device 47, such as one or more monitors, projectors or integrated displays, can also be connected to system bus 23 via an output interface 48, such as a video adapter. In addition to the display device 47, the computer system 20 may be equipped with other peripheral output devices (not shown), such as speakers and other audiovisual devices.
The computer system 20 may operate in a networked environment using network connections to one or more remote computers 49. The one or more remote computers 49 may be local computer workstations or servers that include most or all of the elements previously described above in describing the nature of the computer system 20. Other devices may also be present in a computer network such as, but not limited to, routers, network sites, peer devices, or other network nodes. The computer system 20 may include one or more Network interfaces 51 or Network adapters for communicating with remote computer 49 through one or more networks, such as a Local-Area Network (LAN) 50, a Wide-Area Network (WAN), an intranet, and the internet. Examples of network interfaces 51 may include ethernet interfaces, frame relay interfaces, SONET (synchronous optical network) interfaces, and wireless interfaces.
Aspects of the present invention may be a system, method, and/or computer program product. The computer program product may include one or more computer-readable storage media having computer-readable program instructions thereon for causing a processor to perform aspects of the present invention.
The computer readable storage medium may be a tangible device that can hold and store program code in the form of instructions or data structures that can be accessed by a processor of a computing device, such as computer system 20. The computer readable storage medium may be an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination thereof. By way of example, such computer-readable storage media may include Random Access Memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), portable compact disc read-only memory (CD-ROM), digital Versatile Discs (DVD), flash memory, hard disks, portable computer diskette, memory stick, floppy disk, or even a mechanical coding device such as a punch card or a protrusion structure in a groove having instructions recorded thereon. As used herein, a computer-readable storage medium should not be considered a transitory signal per se, such as a radio wave or other freely propagating electromagnetic wave, an electromagnetic wave propagating through a waveguide or transmission medium, or an electrical signal transmitted through an electrical wire.
The computer readable program instructions described herein may be downloaded from a computer readable storage medium to a corresponding computing device, or downloaded over a network (e.g., the internet, a local area network, a wide area network, and/or a wireless network) to an external computer or external storage device. The network may include copper transmission cables, optical transmission fibers, wireless transmissions, routers, firewalls, switches, gateway computers and/or edge servers. The network interface in each computing device receives computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in a computer-readable storage medium within the respective computing device.
Computer readable program instructions for performing the operations of the present invention can be assembly instructions, instruction Set Architecture (ISA) instructions, machine-related instructions, microcode, firmware instructions, state setting data, or source or object code written in any combination of one or more programming languages, including an object-oriented programming language and a conventional programming language. The computer-readable program instructions (as a stand-alone software package) may execute entirely on the user's computer, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network (including a LAN or a WAN), or the connection may be made to an external computer (for example, through the Internet). In some embodiments, electronic circuitry, including, for example, programmable logic circuitry, field Programmable Gate Arrays (FPGAs), or programmable logic arrays (Programmable Logic Array, PLAs), may execute computer-readable program instructions by utilizing state information of the computer-readable program instructions to personalize the electronic circuitry to perform aspects of the present invention.
In various aspects, the systems and methods described in this disclosure may be handled as modules. The term "module" as used herein refers to, for example, a real world device, a component, or an arrangement of components implemented using hardware, such as through an Application Specific Integrated Circuit (ASIC) or FPGA, or a combination of hardware and software, such as implemented by a microprocessor system and a set of instructions that, when executed, transform the microprocessor system into a special-purpose device, implement the functions of the module. A module may also be implemented as a combination of two modules, where some functions are facilitated by hardware alone, and other functions are facilitated by a combination of hardware and software. In some implementations, at least a portion of the modules (and in some cases all of the modules) may run on a processor of the computer system. Thus, each module may be implemented in a variety of suitable configurations and should not be limited to any particular implementation illustrated herein.
In the interest of clarity, not all routine features of the various aspects are disclosed herein. It will be appreciated that in the development of any actual implementation of the invention, numerous implementation-specific decisions must be made in order to achieve the developer's specific goals, and that these specific goals will vary from one implementation to another and from one developer to another. It will be appreciated that such a development effort might be complex and time-consuming, but would nevertheless be a routine undertaking of engineering for those of ordinary skill in the art having the benefit of this disclosure.
Further, it is to be understood that the phraseology or terminology used herein is for the purpose of description and not of limitation, such that the terminology or phraseology of the present specification is to be interpreted by the skilled artisan in light of the teachings and guidance presented herein, in combination with the knowledge of one(s) of ordinary skill in the relevant art. Furthermore, no terms in the specification or claims are intended to be ascribed an uncommon or special meaning unless explicitly set forth as such.
Various aspects disclosed herein include present and future known equivalents to the known modules referred to herein by way of illustration. Furthermore, while various aspects and applications have been shown and described, it would be apparent to those skilled in the art having the benefit of this disclosure that many more modifications than mentioned above are possible without departing from the inventive concepts disclosed herein.

Claims (20)

1. A method for detecting small-sized objects based on image analysis using a drone, comprising the steps of:
obtaining object search parameters, wherein the search parameters comprise at least one feature of an object of interest;
generating at least one image comprising a high resolution image during flight of the drone;
analyzing the generated image using a machine learning algorithm based on the obtained search parameters;
identifying the object of interest using a machine learning algorithm if at least one object satisfying the search parameters is detected in the image during analysis; and
in response to identifying a detected object as the object of interest, a location of the detected object is determined.
2. The method of claim 1, wherein the detection of the object of interest is performed by the drone in real-time.
3. The method of claim 1, wherein the machine learning algorithm is trained based on the search parameters corresponding to the object of interest.
4. The method of claim 1, wherein the frequency of image generation comprises about 1 image per second.
5. The method of claim 1, wherein the machine learning algorithm comprises a convolutional neural network.
6. The method of claim 1, wherein the location of the object of interest is determined based on GPS coordinates of the drone and a height of the drone at the time an image of the object of interest is generated, and based on data from the image regarding a size of the object of interest and a location of the object of interest within the obtained image.
7. The method of claim 1, wherein a segment of the image representing the object of interest is presented in an enlarged form, and wherein the segment indicates a location of the object of interest.
8. The method of claim 7, wherein the segments of the image contain information about the type of the object of interest and the corresponding matching probabilities.
9. The method of claim 7, wherein the generated file is transmitted to a recipient over a communication channel, the generated file comprising a segment having the generated image of the object of interest and a location of the object of interest.
10. The method of claim 9, wherein the recipient comprises a ground-based receiving station, and wherein recipient is an operator of the drone.
11. The method of claim 10, wherein the ground-based receiving station visualizes the location of the object of interest on a map based on data received from the drone.
12. A system for detecting small-sized objects based on image analysis using a drone, comprising:
a memory and a hardware processor configured to:
obtaining object search parameters, wherein the search parameters comprise at least one feature of an object of interest;
generating at least one image comprising a high resolution image during flight of the drone;
analyzing the generated image using a machine learning algorithm based on the obtained search parameters;
identifying the object of interest using a machine learning algorithm if at least one object satisfying the search parameters is detected in the image during analysis; and
in response to identifying a detected object as the object of interest, a location of the detected object is determined.
13. The system of claim 12, wherein the detection of the object of interest is performed by the drone in real-time.
14. The system of claim 12, wherein the machine learning algorithm is trained based on the search parameters corresponding to the object of interest.
15. The system of claim 12, wherein the frequency of image generation comprises about 1 image per second.
16. The system of claim 12, wherein the location of the object of interest is determined based on GPS coordinates of the drone and a height of the drone at the time an image of the object of interest is generated, and based on data from the image regarding a size of the object of interest and a location of the object of interest within the obtained image.
17. The system of claim 12, wherein a segment of the image representing the object of interest is presented in an enlarged form, and wherein the segment indicates a location of the object of interest.
18. The system of claim 17, wherein the segments of the image contain information about the type of the object of interest and the corresponding probability of matching.
19. The system of claim 17, wherein the generated file is transmitted to a recipient over a communication channel, the generated file including a segment having the generated image of the object of interest and a location of the object of interest.
20. A drone, the drone configured to:
obtaining object search parameters, wherein the search parameters comprise at least one feature of an object of interest;
generating at least one image comprising a high resolution image during flight of the drone;
analyzing the generated image using a machine learning algorithm based on the obtained search parameters;
identifying the object of interest using a machine learning algorithm if at least one object satisfying the search parameters is detected in the image during analysis; and
in response to identifying a detected object as the object of interest, a location of the detected object is determined.
CN202211641775.8A 2022-03-24 2022-12-20 System and method for detecting and identifying small objects in images using machine learning algorithms Pending CN116805397A (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
RU2022107829 2022-03-24
US17/978,311 2022-11-01
US17/978,311 US20230306715A1 (en) 2022-03-24 2022-11-01 System and method for detecting and recognizing small objects in images using a machine learning algorithm

Publications (1)

Publication Number Publication Date
CN116805397A true CN116805397A (en) 2023-09-26

Family

ID=88078565

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211641775.8A Pending CN116805397A (en) 2022-03-24 2022-12-20 System and method for detecting and identifying small objects in images using machine learning algorithms

Country Status (1)

Country Link
CN (1) CN116805397A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117456386A (en) * 2023-10-26 2024-01-26 西湾智慧(广东)信息科技有限公司 AI visual recognition system for unmanned equipment

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117456386A (en) * 2023-10-26 2024-01-26 西湾智慧(广东)信息科技有限公司 AI visual recognition system for unmanned equipment

Similar Documents

Publication Publication Date Title
US10728516B2 (en) Determining stereo distance information using imaging devices integrated into propeller blades
US10802509B2 (en) Selective processing of sensor data
WO2019033747A1 (en) Method for determining target intelligently followed by unmanned aerial vehicle, unmanned aerial vehicle and remote controller
CN109145680A (en) A kind of method, apparatus, equipment and computer storage medium obtaining obstacle information
CN111222395A (en) Target detection method and device and electronic equipment
US20190204093A1 (en) System and method for determining autonomous vehicle location using incremental image analysis
US10846326B2 (en) System and method for controlling camera and program
CN111913492B (en) Unmanned aerial vehicle safe landing method and device
US10281916B1 (en) Detection of transparent elements using specular reflection
US10196141B1 (en) Detection of transparent elements using reflective disparities
CN116805397A (en) System and method for detecting and identifying small objects in images using machine learning algorithms
CN112650300A (en) Unmanned aerial vehicle obstacle avoidance method and device
Nahar et al. Autonomous UAV forced graffiti detection and removal system based on machine learning
CN111767831A (en) Method, apparatus, device and storage medium for processing image
CN115019060A (en) Target recognition method, and training method and device of target recognition model
US11829959B1 (en) System and methods for fully autonomous potholes detection and road repair determination
Ryu et al. Heterogeneous sensor fusion based omnidirectional object detection
CN115082690B (en) Target recognition method, target recognition model training method and device
EP4250251A1 (en) System and method for detecting and recognizing small objects in images using a machine learning algorithm
US20230306715A1 (en) System and method for detecting and recognizing small objects in images using a machine learning algorithm
EP4064214B1 (en) Integrated deep learning model for co-operative and cascaded inference on edge
US11869236B1 (en) Generating data for training vision-based algorithms to detect airborne objects
Kristiani et al. Flame and smoke recognition on smart edge using deep learning
RU2799078C1 (en) Method for detecting and recognizing small-sized objects in images using machine learning algorithm and device for its implementation
Al Baghdadi et al. Unmanned aerial vehicles and machine learning for detecting objects in real time

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination