EP4673925A1 - Procédé et dispositif de détection d'un corps en mouvement à proximité d'une structure - Google Patents

Procédé et dispositif de détection d'un corps en mouvement à proximité d'une structure

Info

Publication number
EP4673925A1
EP4673925A1 EP24707062.6A EP24707062A EP4673925A1 EP 4673925 A1 EP4673925 A1 EP 4673925A1 EP 24707062 A EP24707062 A EP 24707062A EP 4673925 A1 EP4673925 A1 EP 4673925A1
Authority
EP
European Patent Office
Prior art keywords
images
moving body
sequence
image
representative
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
EP24707062.6A
Other languages
German (de)
English (en)
Inventor
Hubert Lagrange
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.)
Sens of Life SAS
Original Assignee
Sens of Life SAS
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 Sens of Life SAS filed Critical Sens of Life SAS
Publication of EP4673925A1 publication Critical patent/EP4673925A1/fr
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/52Surveillance or monitoring of activities, e.g. for recognising suspicious objects

Definitions

  • the present invention relates to a method and device for detecting a moving body near a structure. It applies, in particular, to the field of intelligent management of wind energy production parks.
  • patents describe different solutions for keeping these animals away from structures with which they are likely to interact, so as to limit the risks caused by these interactions.
  • the use of sounds is often described.
  • These solutions consist of distributing sound emitters around or on the equipment to be protected.
  • patent US9125394B2 and patent application US20170127664A1 describe specific ultrasound emission systems (whistles, emitters fixed on bars outside the structure).
  • Such systems implement an image-to-image stacking of an activation map (from the English “feature map”) produced by a neural network.
  • Activation maps are the result of various computer treatments making the results difficult to interpret and validate by a human operator. This difficulty results in an often impoverished design resulting in a lower capacity to detect the presence of a moving body.
  • these extracted features are not sufficient to detect a moving body in some cases. For example, when a body, at a distance, has a point shape while moving forward or away from the camera such as a flying bird, a drone or an airplane, the body is not detected.
  • the object of the present invention is to detect moving bodies by means of the sequential analysis of the same zone in a succession of images, called a “search box”, initially determined as a function of the detection, on an image, of a shape representative of a moving body.
  • FIG. 1 represents, schematically, and in the form of a flowchart, a particular succession of steps of the method which is the subject of the present invention
  • FIG. 2 represents, schematically, a particular embodiment of the device which is the subject of the present invention.
  • the present invention aims to remedy all or part of these drawbacks.
  • the present invention aims at a method for detecting a moving body near a structure, which comprises: - a step of capturing a video stream representative of the environment near the structure,
  • a processing step by a trained neural network, of the sequence of truncated images to recognize a moving body in the sequence of images.
  • the volume of data transmitted to the neural network is limited to a useful part, of a plurality of images, in which a shape which could be that of a moving body has already been detected.
  • the sequence of truncated images, formed during the constitution step is a search box.
  • This search box is similar to a “virtual volume”, whose base is the area defined on the initial image around a bird, during the automatic definition step, the volume extending from the base on the following images, as long as a movement is detected.
  • the area defined on the initial image, upon detection of a movement is repeated on the following images to form this search box, as long as a movement is detected.
  • the definition frame has the same coordinates on the images following the initial image in order not to analyze this area several times.
  • the method which is the subject of the present invention further comprises, when the structure comprises a moving part, a step of issuing a command to stop the moving part when a moving body is detected.
  • the moving body is an animal.
  • the method which is the subject of the present invention comprises:
  • the step of issuing a command to stop the moving part is carried out based on the detected pattern.
  • the method which is the subject of the present invention comprises a step of emitting an audible and/or visual alert depending on the pattern detected.
  • the method which is the subject of the present invention comprises, downstream of the subtraction step, a thresholding step applied to the result of the subtraction step.
  • the method which is the subject of the present invention comprises, downstream of the thresholding step, an erosion step applied to the result of the thresholding step.
  • the method which is the subject of the present invention comprises, downstream of the erosion step, a dilation step applied to the result of the erosion step.
  • the method which is the subject of the present invention comprises, downstream of the expansion step, a segmentation step applied to the result of the expansion step.
  • the network is a convolutional neural network.
  • the present invention aims at a device for detecting a body in motion near a structure, which comprises:
  • - a means of decomposing the video stream into an initial sequence of at least two successive images, - a means of subtracting a first image and a second image from the initial sequence,
  • - a means of processing, by a trained neural network, the sequence of truncated images to recognize a moving body in the sequence of images.
  • the device which is the subject of the invention further comprises, when the structure comprises a moving part, a means for transmitting a command to stop the moving part when a moving body is detected.
  • the device which is the subject of the present invention has the same advantages as the method which is the subject of the present invention. Embodiments equivalent to those of the method which is the subject of the present invention can also be implemented.
  • inventive concepts may be implemented by one or more methods or devices described herein, several examples of which are provided herein.
  • the actions or steps performed in carrying out the method or device may be ordered in any suitable manner. Accordingly, it is possible to construct embodiments in which the actions or steps are performed in a different order than that illustrated, which may include performing certain acts simultaneously, even if they are presented as sequential acts in the illustrated embodiments.
  • a reference to "A and/or B", when used together with an open language such that “comprising” may refer, in one embodiment, to A only (optionally including elements other than B); in another embodiment, to B only (optionally including elements other than A); in yet another embodiment, to both A and B (optionally including other elements); etc.
  • the expression "at least one”, in reference to a list of one or more elements, is to be understood to mean at least one element selected from one or more elements in the list of elements, but not necessarily including at least one of each element specifically listed in the list of elements and not excluding any combination of elements in the list of elements.
  • This definition also allows for the optional presence of elements other than the elements specifically identified in the list of elements to which the expression “at least one” refers, whether or not related to those specifically identified elements.
  • “at least one of A and B” may refer, in one embodiment, to at least one, optionally including more than one, A, without B present (and optionally including elements other than B); in another embodiment, to at least one, optionally including more than one, B, without A present (and optionally including elements other than A); in yet another embodiment, to at least one, optionally including more than one, A, and at least one, optionally including more than one, B (and optionally including other elements); etc.
  • a “structure” is any physical element of the environment that can be a human construction, a natural element or flora. Such a structure is, for example, a building, a field, a river or a hill.
  • a "structure with a movable part” is any real estate structure with an operable movable part. Such a structure is, for example, a wind turbine.
  • FIG. 1 which is not to scale, shows a schematic view of an embodiment of the method 100 which is the subject of the present invention.
  • This method 100 for detecting a moving body near a structure comprises:
  • the capture step 105 is carried out, for example, by an input device 240 as described with respect to FIG. 2.
  • an input device 240 is, for example, a video camera operating in the visible or infrared spectrum.
  • the decomposition step 110 is carried out, for example, by the implementation of a set of computer instructions, forming computer software, executed by a computing device, such as a processor 210 as described with regard to FIG. 2.
  • the video stream captured during the capture step 105 is decomposed into a succession of independent images, all or part of which is retained. In preferred variants, each image is retained, improving the finesse of the analysis carried out.
  • the method 100 which is the subject of the present invention, as represented in FIG. 1, comprises a step (not represented) of selective conservation of images resulting from the decomposition step 110, according to a determined frequency (for example, one image out of two).
  • the method 100 which is the subject of the present invention, as represented in FIG. 1, comprises a step 115 of resizing the stored images.
  • the resizing step 115 is carried out, for example, by implementing a set of computer instructions, forming computer software, executed by a computing device, such as a processor 210 as described with reference to FIG. 2.
  • the dimensions of the images thus resized can be predetermined or determined by a user, via a configuration interface of the graphical interface type or an application interface of the API type.
  • the images obtained during the decomposition or resizing step 110 can be implemented during a storage step 195, described below.
  • the method 100 which is the subject of the present invention, as represented in FIG. 1, comprises a step 160 of converting the images preserved or resized into gray levels.
  • the conversion step 160 is carried out, for example, by the implementation of a set of computer instructions, forming computer software, executed by a computing device, such as a processor 210 as described with reference to FIG. 2.
  • an image processing algorithm is for example implemented to convert color images into grayscale images.
  • the method 100 which is the subject of the present invention, as represented in FIG. 1, comprises a step 120 of copying the images stored, resized and/or converted into gray levels.
  • the copying step 120 is carried out, for example, by the implementation of a set of computer instructions, forming computer software, executed by a computing device, such as a processor 210 as described with regard to FIG. 2.
  • the subtraction step 125 is carried out, for example, by the implementation of a set of computer instructions, forming computer software, executed by a computing device, such as a processor 210 as described with reference to FIG. 2.
  • a digital subtraction pixel by pixel, defined by abscissa coordinates, “x”, and ordinates, “y”, is carried out, so as to produce an image corresponding to an intensity of difference between the two images.
  • the images selected for this subtraction step 125 are preferably two immediately successive images in the captured image stream.
  • the method 100 which is the subject of the present invention, as represented in FIG. 1, comprises a thresholding step 130 on the result of the subtraction step 125.
  • the thresholding step 130 is carried out, for example, by the implementation of a set of computer instructions, forming computer software, executed by a computing device, such as a processor 210 as described with regard to FIG. 2.
  • a difference validity limit value also called a "thresholding value”
  • the thresholding value between the two subtracted images is implemented to nullify the differences considered insignificant.
  • the pixel values of the result of the subtraction step 125 that are less than the thresholding value are set to 0, and otherwise, to 1. Consequently, the result of the thresholding step 125 will be a binary image composed of the pixel values of 0 and 1.
  • the validity limit value can be predetermined or determined by a user, via a configuration interface of the graphical interface type or an application interface of the API type.
  • the method 100 which is the subject of the present invention, as represented in FIG. 1, comprises a step 135 of erosion on the result of the thresholding step 130.
  • the erosion step 135 is carried out, for example, by the implementation of a set of computer instructions, forming computer software, executed by a computing device, such as a processor 210 as described with regard to FIG. 2.
  • the method 100 which is the subject of the present invention, as represented in FIG. 1, comprises a step 140 of expansion on the result of the erosion step 135.
  • the expansion step 140 is carried out, for example, by the implementation of a set of computer instructions, forming computer software, executed by a computing device, such as a processor 210 as described with reference to FIG. 2.
  • a structuring element is moved on each pixel of the image to see if the structuring element intersects the structure of interest.
  • the result is a structure that is larger than the original structure.
  • some particles may become connected, and some holes may disappear.
  • the method 100 which is the subject of the present invention, as represented in FIG. 1, comprises a segmentation step 145 on the result of the expansion step 140.
  • the segmentation step 145 is carried out, for example, by the implementation of a set of computer instructions, forming computer software, executed by a computing device, such as a processor 210 as described with regard to FIG. 2.
  • an algorithm for identifying structures of interest in the image also called connected component analysis, connected component labeling, blob extraction or region labeling.
  • This algorithm implements an approach for identifying connected components.
  • Each individual connected component which is a group of connected pixels, is grouped or labeled as a blob.
  • a blob is then a region formed by a set of spatially connected pixels.
  • Connected component analysis is then an algorithmic application of graph theory used to determine the connectivity of "blob"-like regions in a binary image. The result is in the form of a labeled image, each label corresponding to a region.
  • the detection step 150 is carried out, for example, by the implementation of a set of computer instructions, forming computer software, executed by a computing device, such as a processor 210 as described with regard to FIG. 2.
  • This detection step 150 corresponds, for example, to the performance of an algorithm which, based on the result of the segmentation step 145, detects the presence of a shape likely to be a moving body. This detection can be performed based on a confidence value in the segmentation performed, for example.
  • Shape similarity criteria can be predetermined or determined by a user, via a configuration interface such as a graphical user interface or an application interface such as an API.
  • the definition step 155 is carried out, for example, by the implementation of a set of computer instructions, forming computer software, executed by a calculation device, such as a processor 210 as described with regard to FIG. 2.
  • a centroid of abscissa coordinates, “xc”, and ordinates, “yc”, of a moving body is defined.
  • This definition step 155 corresponds, for example, to the creation of an algorithm which, based on the dimensions of the shape detected during the detection step 150, determines coordinates to form a search box.
  • a search box results, for example, from dividing the initial image into squares of 120 x 120 pixels (or other dimensions adapted to the use case).
  • a search box can be a sub-image, corresponding to a truncated image, of 120 x 120 pixels in which the centroid of the moving body is located. If in one of these squares, at least one shape likely to be a moving body is detected, this square is selected to be analyzed by the neural network. This approach avoids sending the same area to be analyzed several times if several shapes likely to be a moving body are detected very close to each other.
  • the method 100 which is the subject of the present invention, as represented in FIG. 1, comprises, in parallel with the copying step 120, a step 165 of stacking images resulting from the decomposition step 110, the resizing step 115 or the conversion step 160.
  • the stacking step 165 is carried out, for example, by the implementation of a set of computer instructions, forming computer software, executed by a computing device, such as a processor 210 as described with regard to FIG. 2.
  • a memory 225 of a computer system 205 is for example implemented to store and index, in the capture order, the images thus stacked.
  • a stacked image is the result of preserving the darkest pixels during a pixel-by-pixel comparison of the two grayscale images being the old stacked image from the previous iteration and the current image resulting from conversion step 160.
  • the constitution step 170 is carried out, for example, by the implementation of a set of computer instructions, forming computer software, executed by a calculation device, such as a processor 210 as described with regard to FIG. 2.
  • the search box defined during step 155 is applied to a succession of captured images, resulting from the decomposition step 110 or from an optional downstream step.
  • This application corresponds to a truncation of the initial image to obtain an image of reduced dimensions around an area of interest corresponding to the area in which a suspect shape was detected during the detection step 150.
  • the search boxes are cut from the stacked image defined in step 155.
  • the search box containing the given centroid of abscissa coordinates, “xc”, and ordinates, “yc”, is defined during step 155.
  • the search box is then cut from the corresponding stacked image.
  • a sequence of truncated images from the stacked image is obtained.
  • the search box cropped from the stacked image is introduced as input into the convolutional neural network.
  • This sequence of truncated images serves as input for processing by a model trained by machine learning.
  • the stream of truncated images thus implemented corresponds to a stream of color or grayscale images.
  • the processing step 175 is carried out, for example, by the implementation of a set of computer instructions, forming computer software, executed by a computing device, such as a processor 210 as described with reference to FIG. 2.
  • the sequence of truncated images is provided to a model trained by machine learning to provide a prediction (or a “class”) relating to the presence or absence of a moving body in the captured video stream.
  • a prediction or a “class” relating to the presence or absence of a moving body in the captured video stream.
  • Such a prediction is made per image, preferably.
  • such a prediction may relate to the presence of several moving bodies per image at different positions on the image.
  • the trained model corresponds to the result of automatic learning carried out by a convolutional neural network.
  • the method 100 which is the subject of the present invention, as represented in FIG. 1, a step 180 of temporal integration of the treatments carried out.
  • the integration step 180 is carried out, for example, by the implementation of a set of computer instructions, forming computer software, executed by a calculation device, such as a processor 210 as described with regard to FIG. 2.
  • this integration step 180 a succession of results, organized according to an execution timestamp, are accumulated.
  • Such an integration corresponds, for example, to a succession of class predictions, corresponding for example to a succession of successive detections of shapes representative of a body in motion near the structure.
  • the result of this integration step is provided to a storage step 195.
  • the method 100 which is the subject of the present invention, as represented in FIG. 1, a step 195 of storage on detection.
  • the storage step 195 is carried out, for example, by the implementation of a set of computer instructions, forming computer software, executed by a calculation device, such as a processor 210 as described with regard to FIG. 2 associated with a memory 225.
  • a calculation device such as a processor 210 as described with regard to FIG. 2 associated with a memory 225.
  • This storage step 195 makes it possible to obtain qualitative and quantitative traceability of the detection and stops of moving parts, by visual inspection for example.
  • the method 100 which is the subject of the present invention, as shown in FIG. 1, further comprises, when the structure comprises a mobile part, a step 190 of transmitting a command to stop the mobile part when a moving body is detected.
  • the method 100 which is the subject of the present invention, as represented in FIG. 1, comprises a step 190 of transmitting a command to stop the mobile part.
  • Step 190 of issuing a stop command implements, for example, a set of computer instructions, forming computer software, executed by a calculation device, such as a processor 210 as described with respect to FIG. 2, associated with an interface 260 for wired or wireless communication with the structure.
  • a calculation device such as a processor 210 as described with respect to FIG. 2, associated with an interface 260 for wired or wireless communication with the structure.
  • This command depends on the signals expected by the moving part. This command can be analog or digital.
  • the moving body is an animal.
  • a moving body can be any element that can come into contact with a moving part.
  • a moving body is, for example, an animal or an object.
  • the moving body is a bird or a bat.
  • the method 100 which is the subject of the present invention, as represented in FIG. 1, comprises a step 195 of emitting an audible and/or visual alert when a moving body is detected.
  • Such an audible alert is emitted, for example, by a loudspeaker located near the structure.
  • Such a visual alert is emitted, for example, by a flash lamp located near the structure.
  • the issuance of an audible alert and/or a stop command may be sequential and determined based on the distance from the moving body or the direction of movement of the moving body. For example, if the moving body is at a distance greater than a predetermined limit distance, an audible alert is emitted while if the moving body is at a distance less than said limit distance, a stop command is emitted.
  • Detection step 185 is carried out, for example, by implementing a set of computer instructions, forming computer software, executed by a computing device, such as a processor 210 as described with reference to FIG. 2.
  • a pattern representative of a movement of a moving body is detected, such as a distance, a speed or a movement of approach or distance from the structure.
  • the processing carried out may vary.
  • the method 100 which is the subject of the present invention may comprise:
  • step 190 of issuing a command to stop the moving part may be performed based on the detected pattern.
  • the network is a convolutional neural network.
  • the method 100 which is the subject of the present invention comprises a step 300 of training a neural network.
  • This training step 300 implements, for example, a set of computer instructions executed by a computing device, such as a processor 210 as described with reference to FIG. 2.
  • a training data set is assembled, such a set comprising a plurality of image sequences, corresponding to the truncated images implemented by the trained model, associated with a predetermined class (“detection of a moving body”, “non-detection of a moving body”, for example).
  • An example of such a training dataset is a batch of images (120 x 120 pixels, grayscale, JPG compression) stored in two folders.
  • the other contains nearly 50,000 images of other moving objects (wind turbine blades, airplane, drone, clouds, insects, vegetation%) corresponding to a negative class of moving body detection.
  • This training dataset is provided to a machine learning architecture, such as a convolutional neural network.
  • Such a convolutional neural network has, for example, five successive layers of artificial neurons.
  • such a convolutional neural network may comprise five convolutional layers, followed by max pooling, batch normalization and dropout layers, and dense layers for classification.
  • the result of this training step 300 is the provision of a trained model, capable of assigning a class to a sequence of images.
  • the device 200 which is the subject of the invention may further comprise, when the structure comprises a mobile part, a means 260 for transmitting a command to stop the mobile part when a moving body is detected.
  • Figure 2 Generally, shown in Figure 2, which is not to scale, is a block diagram that illustrates an exemplary computer system with which an embodiment may be implemented.
  • a computer system 205 and instructions for implementing the disclosed technologies in the hardware, software, or combination of hardware and software are schematically depicted, such as in the form of boxes and circles, at the same level of detail that is commonly used by those of ordinary skill in the art to which this disclosure pertains to communicate computer architecture and computer system implementations.
  • the computer system 205 includes an input/output (I/O) subsystem 220 that may include a bus and/or one or more other communication mechanisms for communicating information and/or instructions between components of the computer system 205 over signal paths. electronics.
  • the input/output subsystem 220 may include an input/output controller, a memory controller, and at least one input/output port.
  • the electronic signal paths are shown schematically in the drawings, for example as lines, one-way arrows, or two-way arrows.
  • At least one processor 210 is coupled to the I/O subsystem 220 to process information and instructions.
  • the processor 210 may include, for example, a general purpose microprocessor or microcontroller and/or a special purpose microprocessor such as an embedded system or graphics processing unit (GPU) or a digital signal processor or an ARM processor.
  • the processor 210 may include an integrated arithmetic logic unit (ALU) or may be coupled to a separate ALU.
  • ALU integrated arithmetic logic unit
  • the computer system 205 includes one or more memories 225, such as a main memory, that is coupled to the I/O subsystem 220 to electronically digitally store data and instructions to be executed by the processor 210.
  • the memory 225 may include volatile memory such as various forms of random access memory (RAM) or other dynamic storage devices.
  • RAM random access memory
  • the memory 225 may also be used to store temporary variables or other intermediate information during execution of the instructions to be executed by the processor 210.
  • Such instructions when stored in a non-transitory computer-readable storage medium accessible to the processor 210, may transform the computer system 205 into a special purpose machine that is customized to perform the operations specified in the instructions.
  • the computer system 205 further includes non-volatile memory such as a read only memory (ROM) 230 or other static storage device coupled to the I/O subsystem 220 for storing information and instructions for the processor 210.
  • the ROM 230 may include various forms of programmable ROM (PROM) such as erasable PROM (EPROM) or electrically erasable PROM (EEPROM).
  • a persistent storage unit 215 may include various forms of non-volatile random access memory (NVRAM), such as FLASH memory, or solid state storage, a magnetic disk, or an optical disk such as a CD-ROM or DVD-ROM and may be coupled to the I/O subsystem 220 for storing information and instructions.
  • NVRAM non-volatile random access memory
  • Memory 215 is an example of a non-transitory computer-readable medium that can be used to store instructions and data that, when executed by processor 210, cause execution of computer-implemented methods for performing the techniques of this document.
  • the instructions in memory 225, ROM 230, or storage 215 may comprise one or more sets of instructions that are organized into modules, methods, objects, functions, routines, or calls.
  • the instructions may be organized as one or more computer programs, operating system services, or application programs, including mobile applications.
  • the instructions may comprise an operating system and/or system software; one or more libraries to support functions multimedia, programming or other; data protocol stacks or instructions for implementing TCP/IP, HTTP or other communications protocols; file format processing instructions for parsing or rendering files encoded using HTML, XML, JPEG, MPEG or PNG; user interface instructions for rendering or interpreting commands for a graphical user interface (GUI), command line interface or text-based user interface; application software such as an office suite, Internet access applications, design and manufacturing applications, graphics applications, audio applications, software engineering applications, educational applications, games or miscellaneous applications.
  • the instructions may implement a web server, web application server or web client.
  • the statements can be organized as a presentation layer, an application layer, and a data storage layer such as a relational database system using Structured Query Language (SQL) or no SQL, an object store, a graph database, a flat file system, or any other data storage.
  • SQL Structured Query Language
  • object store e.g., a graph database
  • flat file system e.g., a flat file system
  • the computer system 205 may be coupled via the I/O subsystem 220 to at least one output device 235.
  • the output device 235 is a digital computer display.
  • Exemplary displays that may be used in various embodiments include a touch screen or a light emitting diode (LED) display or a liquid crystal display (LCD) or an e-paper display.
  • the computer system 205 may include one or more other types of output devices 235, either in place of or in addition to a display device.
  • Exemplary other output devices 235 include printers, ticket printers, plotters, projectors, sound cards or video cards, speakers, buzzers or piezoelectric or other audible devices, LED or LCD lights or indicators, haptic devices, actuators, or servos.
  • At least one input device 240 is coupled to the I/O subsystem 220 for communicating signals, data, command selections, or gestures to the processor 210.
  • Examples of input devices 240 include touch screens, microphones, digital still and video cameras, alphanumeric and other keys, keyboards, graphics tablets, image scanners, joysticks, clocks, switches, buttons, dials, sliders.
  • the input device is a control device 245, which may perform cursor control or other automated control functions such as navigating a graphical interface on a display screen, alternatively or in addition to input functions.
  • the control device 245 may be a touchpad, mouse, trackball, or cursor direction keys to communicate direction information and control selections to the processor 210 and to control movement of the cursor on the screen 235.
  • the input device may have at least two degrees of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), which allows the device to specify positions in a plane.
  • An input device is a wired, wireless, or optical control device, such as a joystick, wand, console, steering wheel, pedal, gear shift mechanism, or other type of control device.
  • An input device 240 may include a combination of several different input devices, such as a video camera and a depth sensor.
  • the computer system 205 may include an Internet of Things (IoT) device in which one or more of the output device 235, the input device 240, and the control device 245 are omitted.
  • IoT Internet of Things
  • the input device 240 may include one or more cameras, motion detectors, thermometers, microphones, seismic detectors, other sensors or detectors, measuring devices, or encoders
  • the output device 235 may include a special purpose display such as a single-line LED or LCD display, one or more indicators, a display panel, a meter, a valve, a solenoid, an actuator, or a servo motor.
  • the output device 235 may include hardware, software, firmware, and interfaces to generate position report packets, notifications, pulse or heartbeat signals, or other recurring data transmissions that specify a position of the computer system 205, alone or in combination with other application-specific data, directed to the host 250 or server 255.
  • the computer system 205 may implement the techniques described herein using custom hardwired logic, at least one ASIC (Application-specific integrated circuit) or FPGA (Field-programmable gate array), firmware, and/or program instructions or logic that, when loaded and used or executed in combination with the computer system, cause or program the computer system to operate as a special purpose machine.
  • the techniques described herein are performed by the computer system 205 in response to the processor 210 executing at least one sequence of at least one instruction contained in the main memory 225. These instructions may be read into the main memory 225 from another storage medium, such as the memory 215. Execution of the sequences of instructions contained in the main memory 225 causes the processor 210 to perform the process steps described herein.
  • hardwired circuits may be used in place of or in combination with software instructions.
  • Non-volatile media include, for example, optical or magnetic disks, such as memory 215.
  • Volatile media include dynamic memory, such as memory 225.
  • Common forms of storage media include, for example, a hard disk, a solid-state drive, a flash drive, a magnetic data storage medium, any optical or physical data storage medium, a memory chip, etc.
  • Storage media are distinct from, but may be used in conjunction with, transmission media.
  • Transmission media assist in the transfer of information between storage media.
  • transmission media include coaxial cables, copper wires, and optical fibers, including the wires that make up a bus of the I/O subsystem 220.
  • Transmission media may also take the form of acoustic or light waves, such as those generated during radio and infrared data communications.
  • the instructions may initially be transported on a magnetic disk or solid state drive of a remote computer.
  • the remote computer may load the instructions into its dynamic memory and send the instructions over a communications link such as a fiber optic or coaxial cable or a telephone line using a modem.
  • a modem or router local to the computer system 205 may receive the data over the communications link and convert the data into a format that can be read by the computer system 205.
  • a receiver such as a radio frequency antenna or an infrared detector may receive the data transported in a wireless or optical signal and suitable circuitry may provide the data to the I/O subsystem 220, for example by placing the data on a bus.
  • the I/O subsystem 220 transports data to memory 225, from which the processor 210 retrieves and executes instructions. Instructions received by memory 225 may optionally be stored on memory 215 before or after execution by processor 210.
  • the computer system 205 may also include a communications interface 260 coupled to a bus 220.
  • the communications interface 260 provides a bidirectional data communications coupling to the at least one network link 265 that is directly or indirectly connected to at least one communications network, such as a network 270 or a public or private cloud on the Internet.
  • the communications interface 260 may be an Ethernet network interface, an Integrated Services Digital Network (ISDN) card, a cable modem, a satellite modem, or a modem for providing a data communications connection to a corresponding type of communications line, such as an Ethernet cable or a wireline of any type or a fiber optic line or a telephone line.
  • ISDN Integrated Services Digital Network
  • the network 270 broadly represents a local area network (LAN), a wide area network (WAN), or a "WAN", for "Wide Area Network”), a campus network, an Internet network, or any combination thereof.
  • the communications interface 260 may include a LAN card to provide a data communications connection to a compatible LAN, or a cellular radiotelephone interface that is wired to send or receive cellular data according to cellular radiotelephone wireless network standards, or a satellite radio interface that is wired to send or receive digital data according to satellite wireless network standards.
  • the communications interface 260 sends and receives electrical, electromagnetic, or optical signals over signal paths that carry digital data streams representing various types of information.
  • the network link 265 typically provides electrical, electromagnetic, or optical data communication directly or via at least one network to other data devices, using, for example, satellite, cellular, W-Fi, or BLUETOOTH technology.
  • the network link 265 may provide a connection through a network 270 to a host computer 250.
  • the server 255 may represent an electronic digital service that is implemented using more than one computer or instance and that is accessed and used by transmitting web service requests, uniform resource locator (URL) strings with parameters in hypertext transfer protocol (HTTP) payloads, application programming interface (API) calls, application service calls, or other service calls.
  • the computer system 205 and the server 255 may form elements of a distributed computing system that includes other computers, a processing cluster, a server farm, or other organization of computers that cooperate to perform tasks or run applications or services.
  • the server 255 may include one or more sets of instructions that are organized as modules, methods, objects, functions, routines, or calls. The instructions may be organized as one or more computer programs, operating system services, or application programs, including mobile applications.
  • the instructions may include an operating system and/or system software; one or more libraries to support multimedia functions, programming or the like; data protocol stacks or instructions for implementing TCP/IP (for "Transmission control protocol / Internet protocol”), HTTP or other communication protocols; file format processing instructions for parsing or rendering files encoded using HTML (for "Hypertext markup language"), XML (for "Extensible markup language”), JPEG (for "Joint Photographie Experts Group”), MPEG (for "Moving picture experts group”) or PNG (for "Portable Networks Graphie”); user interface instructions for rendering or interpreting commands for a graphical user interface (GUI), a command line interface or a text-based user interface; application software such as an office suite, Internet access applications, design and manufacturing applications, graphics applications, audio applications, software engineering applications, educational applications, games, or miscellaneous applications.
  • GUI graphical user interface
  • the server 255 may include a web application server that hosts a presentation layer, an application layer, and a data storage layer such as a relational database system using Structured Query Language (SQL) or no SQL, an object store, a graph database, a flat file system, or other data storage.
  • SQL Structured Query Language
  • object store an object store
  • graph database a graph database
  • flat file system a flat file system
  • the computer system 205 may send messages and receive data and instructions, including program code, via the network(s), network link 265, and communications interface 260.
  • a server 255 may transmit requested code for an application program via the Internet 280, ISP 275, local area network 270, and communications interface 260.
  • the received code may be executed by the processor 210 as it is received, and/or stored in memory 215, or other non-volatile memory for later execution.
  • Execution of instructions as described in this section may implement a process as an instance of a computer program that is currently running and consists of program code and its current activity.
  • a process may consist of multiple threads that execute instructions simultaneously.
  • a computer program is a passive collection of instructions, while a process may be the actual execution of those instructions.
  • Multiple processes may be associated with the same program; for example, having multiple instances of the same program open often means that more than one process is running.
  • Multitasking may be implemented to allow multiple processes to share the processor 210. Although each processor 210 or processor core executes only one task at a time, the computer system 205 may be programmed to implement multitasking to allow each processor to switch between running tasks without having to wait for each task to complete.
  • switches may be performed when tasks perform input/output operations, when a task indicates that it can be switched, or upon hardware interrupts.
  • Time sharing may be implemented to allow rapid response to user interactive applications by rapidly performing context switches to give the appearance of multiple processes running simultaneously.
  • an operating system may prevent direct communication between independent processes, by providing strictly mediated and controlled interprocess communication functionality.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

Le procédé (100) de détection d'un corps en mouvement à proximité d'une structure, comporte : - une étape (105) de capture d'un flux vidéo, - une étape (110) de décomposition du flux vidéo en une séquence d'images, - une étape (125) de soustraction d'une première image et d'une deuxième image de la séquence, - une étape (150) de détection d'un mouvement représentatif de la présence d'un corps en mouvement, - une étape (155) de définition de coordonnées représentatives d'une boite de recherche du corps en mouvement, - une étape (170) de constitution d'une séquence d'images tronquées par sélection, dans la séquence d'images initiale, d'une zone des images restreintes à la boite de recherche, - une étape (175) de traitement, par un réseau de neurones entraîné, de la séquence d'images tronquées.

Description

PROCÉDÉ ET DISPOSITIF DE DÉTECTION D’UN CORPS EN MOUVEMENT À PROXIMITÉ
D’UNE STRUCTURE
DOMAINE TECHNIQUE DE L’INVENTION
La présente invention vise un procédé et dispositif de détection d’un corps en mouvement à proximité d’une structure. Elle s’applique, notamment, au domaine de la gestion intelligente des parcs de production d’énergie d’origine éolienne.
ÉTAT DE LA TECHNIQUE
Les approches décrites dans cette section sont des approches qui pourraient être poursuivies, mais pas nécessairement des approches qui ont été conçues ou poursuivies précédemment. Par conséquent, sauf indication contraire, il convient de ne pas supposer que l'une ou l'autre des approches décrites dans cette section constitue un art antérieur du seul fait de son inclusion dans cette section.
L’interaction des animaux avec certaines infrastructures peut être source de danger pour ces animaux. Par exemple, certaines espèces d’oiseaux et de chauves-souris peuvent être tuées par les mouvements des pales d’éoliennes.
Inversement certaines espèces peuvent dégrader des structures existantes ou leurs usages. Par exemple, des panneaux photovoltaïques voient leurs performances dégradées par des fientes d’oiseaux utilisant ces structures comme reposoirs.
Plusieurs brevets décrivent différentes solutions pour éloigner ces animaux des structures avec lesquelles ils sont susceptibles d’interagir, de manière à limiter les risques causés par ces interactions. Parmi ces brevets, l’utilisation de sons est souvent décrite. Ces solutions consistent à répartir des émetteurs sonores autour ou sur l’équipement à protéger. Par exemple, le brevet US9125394B2 et la demande de brevet US20170127664A1 décrivent des systèmes particuliers d’émission d’ultrason (sifflets, émetteurs fixés sur des barres à l’extérieur de la structure).
Toutefois, ces approches partagent comme principal inconvénient leur faible capacité à détecter la présence d’animaux.
Pour remédier à cet inconvénient, certains systèmes mettent œuvre des dispositifs à base d’intelligence artificielle, tel que les systèmes décrits dans la demande de brevet CN11 1127516.
De tels systèmes mettent en œuvre un empilement d’image à image d’une carte d’activation (de l’anglais « features map ») produite par un réseau de neurones.
Les cartes d'activation résultent de divers traitements informatiques rendant les résultats difficiles à interpréter et à valider par un opérateur humain. Il découle de cette difficulté une conception souvent appauvrie résultant en une capacité plus faible à détecter la présence d’un corps en mouvement.
On connait, la publication scientifique de Yoshihashi R. ét al., intitulée « Bird detection and species classification with time-lapse images around a wind farm : Dataset construction and evaluation » qui divulgue le développement d’une base de données destinée à être utilisée dans le développement d’un système de détection automatique d’oiseau pour les champs d’éoliennes. Dans ce document, l’étape de définition de coordonnées autour d’un oiseau est manuelle et a lieu avant l’étape de détection de l’oiseau.
On connait, de plus, la brochure commerciale et technique de Rioperez A. et al., intitulée « DTBird: A self-working system to reduce Bird mortality in wind farms » qui divulgue un système de détection d’oiseau pour un champ d’éoliennes dont le procédé de traitement de l’image n’est pas décrit.
On connait aussi, des réseaux de neurones tels que le « R-CNN » (acronyme de « Region Based Convolutional Neural Networks ») et « YOLO » (acronyme de « You Only Look Once »). Il s’agit d’algorithmes couramment utilisés dans le domaine de la détection d’objets par région. Ces systèmes possèdent des couches convolutives chargées d’extraire les caractéristiques nécessaires à la détection telles que la forme, la couleur et/ou la texture d’un objet.
Cependant, ces caractéristiques extraites ne sont pas suffisantes pour détecter un corps en mouvement dans certains cas de figure. Par exemple, lorsqu’un corps, à distance, a une forme ponctuelle en s’avançant ou s’éloignant de la caméra tels un oiseau volant, un drone ou un avion, le corps n’est pas détecté.
RÉSUME DE L’INVENTION
La présente invention a pour objet de détecter des corps en mouvement grâce à l’analyse séquentielle d’une même zone dans une succession d’images, dite « boite de recherche », déterminée initialement en fonction de la détection, sur une image, d’une forme représentative d’un corps en mouvement.
BRÈVE DESCRIPTION DES FIGURES
D’autres avantages, buts et caractéristiques particulières de l’invention ressortiront de la description non limitative qui suit d’au moins un mode de réalisation particulier du procédé et du dispositif objets de la présente invention, en regard des dessins annexés, dans lesquels :
- la figure 1 représente, schématiquement, et sous forme d’un logigramme, une succession d’étapes particulière du procédé objet de la présente invention et
- la figure 2 représente, schématiquement, un mode de réalisation particulier du dispositif objet de la présente invention.
EXPOSÉ DE L’INVENTION
La présente invention vise à remédier à tout ou partie de ces inconvénients.
À cet effet, selon un premier aspect, la présente invention vise un procédé de détection d’un corps en mouvement à proximité d’une structure, qui comporte : - une étape de capture d’un flux vidéo représentatif de l’environnement à proximité de la structure,
- une étape de décomposition, par un dispositif de calcul, du flux vidéo en une séquence initiale d’au moins deux images successives,
- une étape de soustraction, par un dispositif de calcul, d’une première image et d’une deuxième image de la séquence initiale,
- une étape de détection, par un dispositif de calcul, d’un mouvement représentatif de la présence d’un corps en mouvement en fonction de la soustraction réalisée,
- une étape de définition, par un dispositif de calcul, de coordonnées représentatives d’une boite de recherche du corps en mouvement en fonction de coordonnées du mouvement détecté,
- une étape de constitution, par un dispositif de calcul, d’une séquence d’images tronquées par sélection, dans la séquence d’images initiale, d’une zone des images restreintes à la boite de recherche,
- une étape de traitement, par un réseau de neurones entraîné, de la séquence d’images tronquées pour reconnaître un corps en mouvement dans la séquence d’images.
Grâce à ces dispositions, le volume de données transmises au réseau de neurones est limité à une partie utile, d’une pluralité d’image, dans laquelle une forme pouvant être celle d’un corps en mouvement a déjà été détectée.
Ces dispositions permettent de réduire le nombre de sollicitations du réseau de neurones par unité de temps. Il en découle plusieurs avantages :
- une réduction des coûts des plateformes de calculs,
- une possibilité de mutualiser le traitement de plusieurs caméras sur la même plateforme et
- une possibilité de solliciter des réseaux de neurones particulièrement profonds (six couches de neurones ou plus).
De plus, la séquence d’images tronquées, constituée lors de l’étape de constitution, est une boite de recherche. Cette boite de recherche est semblable à un « volume virtuel », dont la base est la zone définie sur l’image initiale autour d’un oiseau, lors de l’étape de définition automatique, le volume s’étendant depuis la base sur les images suivantes, tant qu’un mouvement est détecté. Autrement dit, la zone définie sur l’image initiale, à la détection d’un mouvement, se répète sur les images suivantes pour former cette boite de recherche, tant qu’un mouvement est détecté. Le cadre de définition a les mêmes coordonnées sur les images qui suivent l’image initiale afin de ne pas analyser plusieurs fois cette zone.
Dans des modes de réalisation, le procédé objet de la présente invention comporte, de plus, lorsque la structure comporte une partie mobile, une étape d’émission d’une commande de mise à l’arrêt de la partie mobile lorsqu’un corps en mouvement est détecté.
Dans des modes de réalisation, le corps en mouvement est un animal. Dans des modes de réalisations optionnels, le procédé objet de la présente invention comporte :
- une étape d’intégration temporelle, par un dispositif de calcul, de résultats de l’étape de traitement,
- une étape de détection, dans les résultats intégrés, d’un motif représentatif d’un risque de collision entre le corps en mouvement et la partie mobile.
Dans des modes de réalisation, l’étape d’émission d’une commande de mise à l’arrêt de la partie mobile est réalisée en fonction du motif détecté.
Ces modes de réalisation permettent de déterminer si un corps en mouvement se rapproche ou s’éloigne de la structure, par exemple.
Dans des modes de réalisations optionnels, le procédé objet de la présente invention comporte une étape d’émission d’une alerte sonore et/ou visuelle en fonction du motif détecté.
Ces modes de réalisation permettent de graduer le niveau de réponse à la présence d’un animal, initialement en l’effrayant, par l’émission d’un son, puis en arrêtant la partie mobile si cela s’avère insuffisant.
Dans des modes de réalisations optionnels, le procédé objet de la présente invention comporte, en aval de l’étape de soustraction, une étape de seuillage appliquée au résultat de l’étape de soustraction.
Dans des modes de réalisations optionnels, le procédé objet de la présente invention comporte en aval de l’étape de seuillage, une étape d’érosion appliquée au résultat de l’étape de seuillage.
Dans des modes de réalisations optionnels, le procédé objet de la présente invention comporte en aval de l’étape d’érosion, une étape de dilation appliquée au résultat de l’étape d’érosion.
Ces modes de réalisation permettent d'éliminer les mouvements petits et insignifiants considérés comme du bruit.
Dans des modes de réalisations optionnels, le procédé objet de la présente invention comporte en aval de l’étape de dilatation, une étape de segmentation appliquée au résultat de l’étape de dilatation.
Dans des modes de réalisations optionnels, le réseau est un réseau de neurones à convolutions.
Selon un deuxième aspect, la présente invention vise un dispositif de détection d’un corps en mouvement à proximité d’une structure, qui comporte :
- un moyen de capture d’un flux vidéo représentatif de l’environnement à proximité de la structure,
- un moyen de décomposition du flux vidéo en une séquence initiale d’au moins deux images successives, - un moyen de soustraction d’une première image et d’une deuxième image de la séquence initiale,
- un moyen de détection d’un mouvement représentatif de la présence d’un corps en mouvement en fonction de la soustraction réalisée,
- un moyen de définition de coordonnées représentatives d’une boite de recherche du corps en mouvement en fonction de coordonnées du mouvement détecté,
- un moyen de constitution d’une séquence d’images tronquées par sélection, dans la séquence d’images initiale, d’une zone des images restreintes à la boite de recherche,
- un moyen de traitement, par un réseau de neurones entraîné, de la séquence d’images tronquées pour reconnaître un corps en mouvement dans la séquence d’images.
Dans des modes de réalisation, le dispositif objet de l’invention comporte, de plus, lorsque la structure comporte une partie mobile, un moyen d’émission d’une commande de mise à l’arrêt de la partie mobile lorsqu’un corps en mouvement est détecté.
Le dispositif objet de la présente invention présente les mêmes avantages que le procédé objet de la présente invention. Des modes de réalisation équivalents à ceux du procédé objet de la présente invention peuvent également être mis en œuvre.
DESCRIPTION DÉTAILLÉE
La présente description est donnée à titre non limitatif, chaque caractéristique d’un mode de réalisation pouvant être combinée à toute autre caractéristique de tout autre mode de réalisation de manière avantageuse.
On note dès à présent que les figures ne sont pas à l’échelle.
Comme on le comprend à la lecture de la présente description, divers concepts inventifs peuvent être mis en œuvre par une ou plusieurs méthodes ou dispositifs décrits ci-après, dont plusieurs exemples sont ici fournis. Les actions ou étapes réalisées dans le cadre de la réalisation du procédé ou du dispositif peuvent être ordonnées de toute manière appropriée. En conséquence, il est possible de construire des modes de réalisation dans lesquels les actions ou étapes sont exécutées dans un ordre différent de celui illustré, ce qui peut inclure l'exécution de certains actes simultanément, même s'ils sont présentés comme des actes séquentiels dans les modes de réalisation illustrés.
L'expression "et/ou", telle qu'elle est utilisée dans le présent document et dans les revendications, doit être comprise comme signifiant 'Tun ou l'autre ou les deux" des éléments ainsi conjoints, c'est-à-dire des éléments qui sont présents de manière conjonctive dans certains cas et de manière disjonctive dans d'autres cas. Les éléments multiples énumérés avec "et/ou" doivent être interprétés de la même manière, c'est-à-dire "un ou plusieurs" des éléments ainsi conjoints. D'autres éléments peuvent éventuellement être présents, autres que les éléments spécifiquement identifiés par la clause "et/ou", qu'ils soient liés ou non à ces éléments spécifiquement identifiés. Ainsi, à titre d'exemple non limitatif, une référence à "A et/ou B", lorsqu'elle est utilisée conjointement avec un langage ouvert tel que "comprenant" peut se référer, dans un mode de réalisation, à A seulement (incluant éventuellement des éléments autres que B) ; dans un autre mode de réalisation, à B seulement (incluant éventuellement des éléments autres que A) ; dans un autre mode de réalisation encore, à A et B (incluant éventuellement d'autres éléments) ; etc.
Telle qu'elle est utilisée dans la présente description et dans les revendications, l'expression "au moins un", en référence à une liste d'un ou de plusieurs éléments, doit être comprise comme signifiant au moins un élément choisi parmi un ou plusieurs éléments de la liste d'éléments, mais n'incluant pas nécessairement au moins un de chaque élément spécifiquement énuméré dans la liste d'éléments et n'excluant pas toute combinaison d'éléments dans la liste d'éléments. Cette définition permet également la présence facultative d'éléments autres que les éléments spécifiquement identifiés dans la liste des éléments auxquels l'expression "au moins un" fait référence, qu'ils soient liés ou non à ces éléments spécifiquement identifiés. Ainsi, à titre d'exemple non limitatif, "au moins l'un de A et B" (ou, de manière équivalente, "au moins l'un de A ou B", ou, de manière équivalente, "au moins l'un de A et/ou B") peut se référer, dans un mode de réalisation, à au moins un, incluant éventuellement plus d'un, A, sans B présent (et incluant éventuellement des éléments autres que B) ; dans un autre mode de réalisation, à au moins un, comprenant éventuellement plus d'un, B, sans A présent (et comprenant éventuellement des éléments autres que A) ; dans encore un autre mode de réalisation, à au moins un, comprenant éventuellement plus d'un, A, et au moins un, comprenant éventuellement plus d'un, B (et comprenant éventuellement d'autres éléments) ; etc.
Dans les revendications, ainsi que dans la description ci-dessous, toutes les expressions transitoires telles que "comprenant", "incluant", "portant", "ayant", "contenant", "impliquant", "tenant", "composé de", et autres, doivent être comprises comme étant ouvertes, c'est-à-dire comme signifiant incluant mais non limité à. Seules les expressions transitoires "consistant en" et "consistant essentiellement en" doivent être comprises comme des expressions transitoires fermées ou semi-fermées, respectivement.
On appelle « structure » tout élément physique de l’environnement pouvant être une construction humaine, un élément naturel ou de la flore. Une telle structure est, par exemple, un bâtiment, un champ, une rivière ou une colline.
On appelle « structure comportant une partie mobile » toute structure immobilière comportant une partie mobile actionnable. Une telle structure est, par exemple, une éolienne.
On observe, sur la figure 1 , qui n’est pas à l’échelle, une vue schématique d’un mode de réalisation du procédé 100 objet de la présente invention. Ce procédé 100 de détection d’un corps en mouvement à proximité d’une structure comporte :
- une étape 105 de capture d’un flux vidéo représentatif de l’environnement à proximité de la structure,
- une étape 1 10 de décomposition, par un dispositif de calcul, du flux vidéo en une séquence initiale d’au moins deux images successives, - une étape 125 de soustraction, par un dispositif de calcul, d’une première image et d’une deuxième image de la séquence initiale,
- une étape 150 de détection, par un dispositif de calcul, d’un mouvement représentatif de la présence d’un corps en mouvement en fonction de la soustraction réalisée,
- une étape 155 de définition, par un dispositif de calcul, de coordonnées représentatives d’une boite de recherche du corps en mouvement en fonction de coordonnées du mouvement détecté,
- une étape 170 de constitution, par un dispositif de calcul, d’une séquence d’images tronquées par sélection, dans la séquence d’images initiale, d’une zone des images restreintes à la boite de recherche,
- une étape 175 de traitement, par un réseau de neurones entraîné, de la séquence d’images tronquées pour reconnaître un corps en mouvement dans la séquence d’images.
L’étape 105 de capture est réalisée, par exemple, par un dispositif 240 d’entrée tel que décrit en regard de la figure 2. Un tel dispositif 240 d’entrée est, par exemple, une caméra vidéo opérant dans le spectre visible ou infrarouge.
L’étape 1 10 de décomposition est réalisée, par exemple, par la mise en œuvre d’un ensemble d’instructions informatiques, formant un logiciel informatique, exécutées par un dispositif de calcul, tel un processeur 210 tel que décrit en regard de la figure 2.
Au cours de cette étape 110 de décomposition, le flux vidéo capté au cours de l’étape 105 de capture est décomposé en une succession d’images indépendantes dont tout ou partie est conservée. Dans des variantes préférentielles, chaque image est conservée, améliorant la finesse de l’analyse réalisée.
Dans certaines variantes, le procédé 100 objet de la présente invention, tel que représenté en figure 1 , comporte une étape (non représentée) de conservation sélective d’images issues de l’étape 1 10 de décomposition, selon une fréquence déterminée (par exemple, une image sur deux).
Dans certaines variantes, le procédé 100 objet de la présente invention, tel que représenté en figure 1 , comporte une étape 1 15 de redimensionnement des images conservées.
L’étape 115 de redimensionnement est réalisée, par exemple, par la mise en œuvre d’un ensemble d’instructions informatiques, formant un logiciel informatique, exécutées par un dispositif de calcul, tel un processeur 210 tel que décrit en regard de la figure 2.
Les dimensions des images ainsi redimensionnées peuvent être prédéterminées ou déterminées par un utilisateur, via une interface de configuration de type interface graphique ou interface applicative de type API.
Les images obtenues au cours de l’étape 1 10 de décomposition ou de 1 15 redimensionnement peuvent être mises en œuvre au cours d’une étape 195 de stockage, décrite ci-après. Dans certaines variantes, le procédé 100 objet de la présente invention, tel que représenté en figure 1 , comporte une étape 160 de conversion des images conservées ou redimensionnées en niveaux de gris.
L’étape 160 de conversion est réalisée, par exemple, par la mise en œuvre d’un ensemble d’instructions informatiques, formant un logiciel informatique, exécutées par un dispositif de calcul, tel un processeur 210 tel que décrit en regard de la figure 2.
Au cours de cette étape 160 de conversion, un algorithme de traitement d’images est par exemple mis en œuvre pour convertir des images en couleurs en image en niveaux de gris.
Dans certaines variantes, le procédé 100 objet de la présente invention, tel que représenté en figure 1 , comporte une étape 120 de copie des images conservées, redimensionnées et/ou converties en niveaux de gris.
L’étape 120 de copie est réalisée, par exemple, par la mise en œuvre d’un ensemble d’instructions informatiques, formant un logiciel informatique, exécutées par un dispositif de calcul, tel un processeur 210 tel que décrit en regard de la figure 2.
Au cours de cette étape 120 de copie, tout ou partie des images conservées, redimensionnées et/ou converties en niveaux de gris sont copies dans une mémoire 225 d’un système 205 informatique, tel que décrits en regard de la figure 2.
L’étape 125 de soustraction est réalisée, par exemple, par la mise en œuvre d’un ensemble d’instructions informatiques, formant un logiciel informatique, exécutées par un dispositif de calcul, tel un processeur 210 tel que décrit en regard de la figure 2.
Au cours de cette étape 125 de soustraction, une soustraction numérique, pixel par pixel, définis par des coordonnées d’abscisse, « x », et d’ordonnées, « y », est réalisée, de manière à produire une image correspondant à une intensité de différence entre les deux images.
Les images sélectionnées pour cette étape 125 de soustraction sont préférentiellement deux images immédiatement successives dans le flux d’images capté.
Dans certaines variantes, le procédé 100 objet de la présente invention, tel que représenté en figure 1 , comporte une étape 130 de seuillage sur le résultat de l’étape 125 de soustraction.
L’étape 130 de seuillage est réalisée, par exemple, par la mise en œuvre d’un ensemble d’instructions informatiques, formant un logiciel informatique, exécutées par un dispositif de calcul, tel un processeur 210 tel que décrit en regard de la figure 2.
Au cours de cette étape 130 de seuillage, une valeur limite de validité de différence, également appelée « valeur de seuillage », est appliquée au résultat de l’étape 125 de soustraction. La valeur de seuillage entre les deux images soustraites est mise en œuvre pour nullifier les différences considérées comme insignifiantes. Les valeurs des pixels du résultat de l’étape 125 de soustraction qui sont inférieures à la valeur de seuillage sont mises à 0, et dans le cas contraire, à 1. Par conséquent, le résultat de l’étape 125 de seuillage sera une image binaire composée des valeurs de pixel de 0 et 1 . La valeur limite de validité peut être prédéterminée ou déterminée par un utilisateur, via une interface de configuration de type interface graphique ou interface applicative de type API.
Dans certaines variantes, le procédé 100 objet de la présente invention, tel que représenté en figure 1 , comporte une étape 135 d’érosion sur le résultat de l’étape 130 de seuillage.
L’étape 135 d’érosion est réalisée, par exemple, par la mise en œuvre d’un ensemble d’instructions informatiques, formant un logiciel informatique, exécutées par un dispositif de calcul, tel un processeur 210 tel que décrit en regard de la figure 2.
Au cours de cette étape 135 d’érosion, tous les pixels pour lesquels l'élément structurant centré sur ce pixel touche l'extérieur de la structure sont recherchés. Autrement dit, toutes les particules inférieures ou égales à la taille de l’élément structurant, également appelé « noyau d'érosion », sont mises à zéro. Le résultat est une structure rognée.
Dans certaines variantes, le procédé 100 objet de la présente invention, tel que représenté en figure 1 , comporte une étape 140 de dilatation sur le résultat de l’étape 135 d’érosion.
L’étape 140 de dilatation est réalisée, par exemple, par la mise en œuvre d’un ensemble d’instructions informatiques, formant un logiciel informatique, exécutées par un dispositif de calcul, tel un processeur 210 tel que décrit en regard de la figure 2.
Au cours de cette étape 140 de dilatation, un élément structurant est déplacé sur chaque pixel de l'image pour regarder si l'élément structurant intersecte la structure d'intérêt. Le résultat est une structure qui plus grosse que la structure d'origine. En fonction de la taille de l'élément structurant, certaines particules peuvent se trouver connectées, et certains trous disparaître.
Dans certaines variantes, le procédé 100 objet de la présente invention, tel que représenté en figure 1 , comporte une étape 145 de segmentation sur le résultat de l’étape 140 de dilatation.
L’étape 145 de segmentation est réalisée, par exemple, par la mise en œuvre d’un ensemble d’instructions informatiques, formant un logiciel informatique, exécutées par un dispositif de calcul, tel un processeur 210 tel que décrit en regard de la figure 2.
Au cours de cette étape 145 de segmentation, un algorithme d’identification de structures d’intérêt dans l’image, également appelée d’analyse des composantes connectées, d’étiquetage des composantes connectées, d’extraction de blob ou d'étiquetage des régions, est mis en œuvre. Cet algorithme met en œuvre une approche d’identification des composantes connectées. Chaque composante connectée individuelle, qui est un groupe de pixels connectés, est regroupée ou étiquetée comme un blob. Un blob est alors une région formée d’un ensemble de pixels connectés spatialement. L'analyse des composantes connectées est alors une application algorithmique de la théorie des graphes utilisée pour déterminer la connectivité des régions ressemblant à des "blob" dans une image binaire. Le résultat se présente sous la forme d'une image étiquetée, chaque étiquette ou label correspondant à une région.
L’étape 150 de détection est réalisée, par exemple, par la mise en œuvre d’un ensemble d’instructions informatiques, formant un logiciel informatique, exécutées par un dispositif de calcul, tel un processeur 210 tel que décrit en regard de la figure 2. Cette étape 150 de détection correspond, par exemple, à la réalisation d’un algorithme qui, en fonction du résultat de l’étape 145 de segmentation, détecte la présence d’une forme susceptible d’être un corps en mouvement. Cette détection peut être réalisée en fonction d’une valeur de confiance dans la segmentation réalisée, par exemple. Des critères de similarité des formes peuvent être prédéterminés ou déterminés par un utilisateur, via une interface de configuration telle qu'une interface utilisateur graphique ou une interface d'application telle qu'une API.
L’étape 155 de définition est réalisée, par exemple, par la mise en œuvre d’un ensemble d’instructions informatiques, formant un logiciel informatique, exécutées par un dispositif de calcul, tel un processeur 210 tel que décrit en regard de la figure 2.
Durant l'étape 155 de définition, un centroïde de coordonnées d’abscisse, « xc », et d’ordonnées, « yc », d’un corps en mouvement est défini.
Cette étape 155 de définition correspond, par exemple, à la réalisation d’un algorithme qui, en fonction des dimensions de la forme détectée au cours de l’étape 150 de détection, détermine des coordonnées pour former une boite de recherche. Une boite de recherche résulte, par exemple, du découpage de l'image initiale en carrés de 120 x 120 pixels (ou d’autres dimensions adaptées au cas d’usage). Autrement dit, une boîte de recherche peut être une sous-image, correspondant à une image tronquée, de 120 x 120 pixels dans laquelle se trouve le centroïde du corps en mouvement. Si dans l'un de ces carrés, au moins une forme susceptible d'être un corps en mouvement est détectée, ce carré est sélectionné pour être analysé par le réseau de neurones. Cette approche évite d'envoyer plusieurs fois la même zone à analyser si plusieurs formes susceptibles d'être un corps en mouvement sont détectées très proches les unes des autres.
Dans certaines variantes, le procédé 100 objet de la présente invention, tel que représenté en figure 1 , comporte, parallèlement à l’étape 120 de copie, une étape 165 d’empilement d’images issues de l’étape 110 de décomposition, de l’étape 115 de redimensionnement ou de l’étape 160 de conversion.
L’étape 165 d’empilement est réalisée, par exemple, par la mise en œuvre d’un ensemble d’instructions informatiques, formant un logiciel informatique, exécutées par un dispositif de calcul, tel un processeur 210 tel que décrit en regard de la figure 2.
Au cours de l’étape 165 d’empilement, une mémoire 225 d’un système 205 informatique, tel que décrits en regard de la figure 2, est par exemple mis en œuvre pour stocker et indexer, dans l’ordre de capture, les images ainsi empilées.
Une image empilée est le résultat de la préservation des pixels les plus sombres lors d'une comparaison pixel par pixel des deux images en niveaux de gris étant l'ancienne image empilée de l'itération précédente et l'image actuelle résultant de l'étape 160 de conversion.
L’étape 170 de constitution est réalisée, par exemple, par la mise en œuvre d’un ensemble d’instructions informatiques, formant un logiciel informatique, exécutées par un dispositif de calcul, tel un processeur 210 tel que décrit en regard de la figure 2. Au cours de cette étape 170 de constitution, la boite de recherche définie au cours de l’étape 155 est appliquée à une succession d’images captées, issues de l’étape 1 10 de décomposition ou d’une étape aval optionnelle. Cette application correspond à une troncature de l’image initiale pour obtenir une image de dimensions réduites autour d’une zone d’intérêt correspondant à la zone dans laquelle une forme suspecte a été détectée au cours de l’étape 150 de détection. Les boites de recherches sont coupées depuis l'image empilée définie à l'étape 155. La boîte de recherche contenant le centroïde donné de coordonnées d’abscisse, « xc », et d’ordonnées, « yc », est définie lors de l’étape 155. La boite de recherche est ensuite découpée dans l'image empilée correspondante.
À l’issue de l’étape 170 de constitution, une séquence d’images tronquées à partir de l’image empilée est obtenue. Autrement dit, la boîte de recherche recadrée à partir de l'image empilée est introduite en entrée dans le réseau de neurones à convolutions. Cette séquence d’images tronquées sert d’entrée pour le traitement par un modèle entraîné par apprentissage automatique.
Comme on le comprend, dans des variantes, le flux d’images tronquées ainsi mis en oeuvre correspond à un flux d’images en couleur ou en niveaux de gris.
L’étape 175 de traitement est réalisée, par exemple, par la mise en œuvre d’un ensemble d’instructions informatiques, formant un logiciel informatique, exécutées par un dispositif de calcul, tel un processeur 210 tel que décrit en regard de la figure 2.
Au cours de cette étape 175 de traitement, la séquence d’images tronquées est fournie à un modèle entraîné par apprentissage automatique pour fournir une prédiction (ou une « classe ») relative à la présence ou non d’un corps en mouvement dans le flux vidéo capté. Une telle prédiction est réalisée par image, préférentiellement. Par exemple, une telle prédiction peut être relative à la présence de plusieurs corps en mouvement par image à différentes positions sur l'image.
Dans des variantes préférentielles, le modèle entraîné correspond au résultat d’un apprentissage automatique réalisé par un réseau de neurones à convolutions (« Convolutional Neural Network », en anglais).
Dans certaines variantes, le procédé 100 objet de la présente invention, tel que représenté en figure 1 , une étape 180 d’intégration temporelle des traitements réalisés.
L’étape 180 d’intégration est réalisée, par exemple, par la mise en œuvre d’un ensemble d’instructions informatiques, formant un logiciel informatique, exécutées par un dispositif de calcul, tel un processeur 210 tel que décrit en regard de la figure 2.
Au cours de cette étape 180 d’intégration, une succession de résultats, organisés en fonction d’un horodatage d’exécution, sont accumulés. Une telle intégration correspond, par exemple, à une succession de prédictions de classes, correspondant par exemple à une succession de détection successives de formes représentatives d’un corps en mouvement à proximité de la structure. Dans des variantes, le résultat de cette étape d’intégration est fourni à une étape 195 de stockage.
Dans certaines variantes, le procédé 100 objet de la présente invention, tel que représenté en figure 1 , une étape 195 de stockage sur détection.
L’étape 195 de stockage est réalisée, par exemple, par la mise en œuvre d’un ensemble d’instructions informatiques, formant un logiciel informatique, exécutées par un dispositif de calcul, tel un processeur 210 tel que décrit en regard de la figure 2 associé à une mémoire 225.
Cette étape 195 de stockage permet d’obtenir une traçabilité qualitative et quantitative de la détection et des arrêts des parties mobiles, par contrôle visuel par exemple.
Dans des modes de réalisation, le procédé 100 objet de la présente invention, tel que représenté en figure 1 , comporte, de plus, lorsque la structure comporte une partie mobile, une étape 190 d’émission d’une commande de mise à l’arrêt de la partie mobile lorsqu’un corps en mouvement est détecté.
Dans certaines variantes, le procédé 100 objet de la présente invention, tel que représenté en figure 1 , comporte une étape 190 d’émission d’une commande de mise à l’arrêt de la partie mobile.
L’étape 190 d’émission d’une commande de mise à l’arrêt met en œuvre, par exemple, un ensemble d’instructions informatiques, formant un logiciel informatique, exécutées par un dispositif de calcul, tel un processeur 210 tel que décrit en regard de la figure 2, associé à une interface 260 de communication filaire ou sans-fil avec la structure. La nature exacte de cette commande dépend des signaux attendus par la pièce mobile. Cette commande peut être analogique ou numérique.
Dans des modes de réalisation, le corps en mouvement est un animal.
Un corps en mouvement peut être tout élément pouvant entrer en contact avec une partie mobile. Un tel corps en mouvement est, par exemple, un animal ou un objet. Préférentiellement, le corps en mouvement est un oiseau ou une chauve-souris.
Dans certaines variantes, le procédé 100 objet de la présente invention, tel que représenté en figure 1 , comporte une étape 195 d’émission d’une alerte sonore et/ou visuelle lorsqu’un corps en mouvement est détecté.
Une telle alerte sonore est émise, par exemple, par un haut parleur situé à proximité de la structure.
Une telle alerte visuelle est émise, par exemple, par une lampe à flash situé à proximité de la structure.
L’émission d’une alerte sonore et/ou d’une commande d’arrêt peuvent être séquentiels et déterminés en fonction de la distance du corps en mouvement ou de la direction du mouvement du corps en mouvement. Par exemple, si le corps en mouvement est à une distance supérieure à une distance limite prédéterminée, une alerte sonore est émise tandis que si le corps en mouvement est à une distance inférieure à ladite distance limite, une commande de mise à l’arrêt est émise. Dans certaines variantes, le procédé 100 objet de la présente invention, tel que représenté en figure 1 , une étape 185 de détection de motif.
L’étape 185 de détection est réalisée, par exemple, par la mise en œuvre d’un ensemble d’instructions informatiques, formant un logiciel informatique, exécutées par un dispositif de calcul, tel un processeur 210 tel que décrit en regard de la figure 2.
Au cours de cette étape 185 de détection, un motif représentatif d’un mouvement d’un corps en mouvement est détecté, tel une distance, une vitesse ou un mouvement d’approchement ou d’éloignement vis-à-vis de la structure. En fonction du motif détecté, le traitement réalisé peut varier.
Ainsi, comme on le comprend, le procédé 100 objet de la présente invention peut comporter :
- une étape 180 d’intégration temporelle, par un dispositif de calcul, de résultats de l’étape de traitement,
- une étape 185 de détection, dans les résultats intégrés, d’un motif représentatif d’un risque de collision entre le corps en mouvement et la partie mobile.
Dans des modes de réalisation, l’étape 190 d’émission d’une commande de mise à l’arrêt de la partie mobile peut être réalisée en fonction du motif détecté.
Dans des modes de réalisation, le réseau est un réseau de neurones à convolutions.
Dans des variantes, le procédé 100 objet de la présente invention comporte une étape d’entraînement 300 d’un réseau de neurones.
Cette étape 300 d’entraînement met en œuvre, par exemple, un ensemble d’instructions informatiques exécutées par un dispositif de calcul, tel un processeur 210 tel que décrit en regard de la figure 2.
Pour réaliser un tel entraînement, un ensemble de données d’entraînement est assemblé, un tel ensemble comportant une pluralité de séquences d’images, correspondant aux images tronquées mises en œuvre par le modèle entraîné, associées à une classe prédéterminée (« détection d’un corps en mouvement », « non détection d’un corps en mouvement », par exemple).
Un exemple d’un tel ensemble de données d’entrainement est un lot d’images (120 x 120 pixels, niveau de gris, compression au format JPG) stockées dans deux dossiers. L'un contient près de 50 000 images d'oiseaux en vol, en particulier de rapaces, correspondant à une classe positive de détection du corps en mouvement. L'autre contient près de 50 000 images d'autres objets en mouvement (pales d'éoliennes, avion, drone, nuages, insectes, végétation...) correspondant à une classe négative de détection du corps en mouvement.
Cet ensemble de données d’entraînement est fourni à une architecture d’apprentissage automatique, de type réseau de neurones à convolutions par exemple.
Un tel réseau de neurones à convolutions présente, par exemple, cinq couches successives de neurones artificiels. Dans des variantes, un tel réseau de neurones à convolutions peut comprendre cinq couches convolutives, suivies de couches de mise en commun maximale, de normalisation par lots et d'abandon, et de couches denses pour la classification.
Le résultat de cette étape 300 d’entraînement est la fourniture d’un modèle entraîné, capable d’attribuer une classe à une séquence d’images.
On observe, en figure 2, schématiquement, un mode de réalisation particulier du dispositif 200 de détection d’un corps en mouvement à proximité d’une structure, qui comporte :
- un moyen 240 de capture d’un flux vidéo représentatif de l’environnement à proximité de la structure,
- un moyen 210 de décomposition du flux vidéo en une séquence initiale d’au moins deux images successives,
- un moyen 210 de soustraction d’une première image et d’une deuxième image de la séquence initiale,
- un moyen 210 de détection d’un mouvement représentatif de la présence d’un corps en mouvement en fonction de la soustraction réalisée,
- un moyen 210 de définition de coordonnées représentatives d’une boite de recherche du corps en mouvement en fonction de coordonnées du mouvement détecté,
- un moyen 210 de constitution d’une séquence d’images tronquées par sélection, dans la séquence d’images initiale, d’une zone des images restreintes à la boite de recherche,
- un moyen 210 de traitement, par un réseau de neurones entraîné, de la séquence d’images tronquées pour reconnaître un corps en mouvement dans la séquence d’images.
Dans des variantes, le dispositif 200 objet de l’invention peut comporter, de plus, lorsque la structure comporte une partie mobile, un moyen 260 d’émission d’une commande de mise à l’arrêt de la partie mobile lorsqu’un corps en mouvement est détecté.
Des variantes d’implémentation des moyens du dispositif 200 sont présentés en regard de la figure 1 . De tels moyens sont par ailleurs décrits ci-dessous.
De manière générale, on observe, sur la figure 2, qui n’est pas à l’échelle, un schéma fonctionnel qui illustre un exemple de système informatique avec lequel un mode de réalisation peut être mis en oeuvre. Dans l'exemple de la figure 2, un système informatique 205 et des instructions pour la mise en œuvre des technologies divulguées dans le matériel, le logiciel, ou une combinaison de matériel et de logiciel, sont représentés schématiquement, par exemple sous forme de boîtes et de cercles, au même niveau de détail qui est couramment utilisé par les personnes de compétence ordinaire dans l'art auquel cette divulgation se rapporte pour communiquer sur l'architecture des ordinateurs et les mises en œuvre des systèmes informatiques.
Le système informatique 205 comporte un sous-système d'entrée/sortie (dit « I/O », pour « Input/Output », traduit par Entrée/sortie en français) 220 qui peut comporter un bus et/ou un ou plusieurs autres mécanismes de communication pour communiquer des informations et/ou des instructions entre les composants du système informatique 205 sur des chemins de signaux électroniques. Le sous-système d'entrée/sortie 220 peut comporter un contrôleur d'entrée/sortie, un contrôleur de mémoire et au moins un port d'entrée/sortie. Les chemins de signaux électroniques sont représentés schématiquement dans les dessins, par exemple sous forme de lignes, de flèches unidirectionnelles ou de flèches bidirectionnelles.
Au moins un processeur 210, ou dispositif de calcul, est couplé au sous-système I/O 220 pour traiter les informations et les instructions. Le processeur 210 peut comporter, par exemple, un microprocesseur ou un microcontrôleur à usage général et/ou un microprocesseur à usage spécial tel qu'un système intégré ou une unité de traitement graphique (GPU) ou un processeur de signaux numériques ou un processeur ARM. Le processeur 210 peut comporter une unité arithmétique et logique (UAL) intégrée ou peut être couplé à une UAL séparée.
Le système informatique 205 comporter une ou plusieurs mémoires 225, telle qu'une mémoire principale, qui est couplée au sous-système I/O 220 pour stocker numériquement de manière électronique des données et des instructions à exécuter par le processeur 210. La mémoire 225 peut comporter une mémoire volatile telle que diverses formes de mémoire vive (RAM) ou tout autre dispositif de stockage dynamique. La mémoire 225 peut également être utilisée pour stocker des variables temporaires ou d'autres informations intermédiaires pendant l'exécution des instructions à exécuter par le processeur 210. De telles instructions, lorsqu'elles sont stockées dans un support de stockage lisible par ordinateur non transitoire accessible au processeur 210, peuvent transformer le système informatique 205 en une machine à usage spécial qui est personnalisée pour effectuer les opérations spécifiées dans les instructions.
Le système informatique 205 comporte, de plus, une mémoire non volatile telle qu'une mémoire morte (ROM) 230 ou un autre dispositif de stockage statique couplé au sous-système I/O 220 pour stocker des informations et des instructions pour le processeur 210. La ROM 230 peut comporter diverses formes de ROM programmable (PROM) telles que la PROM effaçable (EPROM) ou la PROM effaçable électriquement (EEPROM). Une unité de stockage persistant 215 peut comporter diverses formes de mémoire vive non volatile (NVRAM), telle qu'une mémoire FLASH, ou un stockage à l'état solide, un disque magnétique ou un disque optique tel qu'un CD- ROM ou un DVD-ROM et peut être couplée au sous-système I/O 220 pour stocker des informations et des instructions. La mémoire 215 est un exemple de support lisible par ordinateur non transitoire qui peut être utilisé pour stocker des instructions et des données qui, lorsqu'elles sont exécutées par le processeur 210, provoquent l'exécution de méthodes mises en oeuvre par ordinateur pour exécuter les techniques du présent document.
Les instructions dans la mémoire 225, la ROM 230 ou le stockage 215 peuvent comporter un ou plusieurs ensembles d'instructions qui sont organisés en modules, méthodes, objets, fonctions, routines ou appels. Les instructions peuvent être organisées comme un ou plusieurs programmes informatiques, services de système d'exploitation ou programmes d'application, y compris les applications mobiles. Les instructions peuvent comporter un système d'exploitation et/ou un logiciel système ; une ou plusieurs bibliothèques pour prendre en charge des fonctions multimédias, de programmation ou autres ; des instructions ou des piles de protocoles de données pour mettre en œuvre des protocoles de communication TCP/IP, HTTP ou autres ; des instructions de traitement de format de fichier pour analyser ou rendre des fichiers codés en utilisant HTML, XML, JPEG, MPEG ou PNG ; des instructions d'interface utilisateur pour rendre ou interpréter des commandes pour une interface utilisateur graphique (dite « GUI », pour « Graphie User Interface », traduit par interface utilisateur graphique), une interface de ligne de commande ou une interface utilisateur textuelle ; un logiciel d'application tel qu'une suite bureautique, des applications d'accès à Internet, des applications de conception et de fabrication, des applications graphiques, des applications audio, des applications de génie logiciel, des applications éducatives, des jeux ou des applications diverses. Les instructions peuvent mettre en œuvre un serveur web, un serveur d'applications web ou un client web. Les instructions peuvent être organisées sous la forme d'une couche de présentation, d'une couche d'application et d'une couche de stockage de données telles qu'un système de base de données relationnelle utilisant un langage d'interrogation structuré (SQL) ou aucun SQL, un magasin d'objets, une base de données graphique, un système de fichiers plats ou tout autre stockage de données.
Le système informatique 205 peut être couplé via le sous-système I/O 220 à au moins un dispositif de sortie 235. Dans un mode de réalisation, le dispositif de sortie 235 est un écran d'ordinateur numérique. Des exemples d'affichage qui peuvent être utilisés dans divers modes de réalisation comprennent un écran tactile ou un affichage à diodes électroluminescentes (DEL) ou un affichage à cristaux liquides (LCD) ou un affichage sur papier électronique. Le système informatique 205 peut comporter un ou plusieurs autres types de dispositifs de sortie 235, en remplacement ou en plus d'un dispositif d'affichage. Des exemples d'autres dispositifs de sortie 235 comportent des imprimantes, des imprimantes de tickets, des traceurs, des projecteurs, des cartes son ou des cartes vidéo, des haut-parleurs, des buzzers ou des dispositifs piézoélectriques ou d'autres dispositifs audibles, des lampes ou des indicateurs LED ou LCD, des dispositifs haptiques, des actionneurs ou des servos.
Au moins un dispositif d'entrée 240 est couplé au sous-système I/O 220 pour communiquer des signaux, des données, des sélections de commandes ou des gestes au processeur 210. Des exemples de dispositifs d'entrée 240 comportent des écrans tactiles, des microphones, des caméras numériques fixes et vidéo, des touches alphanumériques et autres, des claviers, des tablettes graphiques, des scanners d'images, des joysticks, des horloges, des interrupteurs, des boutons, des cadrans, des glissières.
Un autre type de dispositif d'entrée est un dispositif de commande 245, qui peut effectuer une commande de curseur ou d'autres fonctions de commande automatisée telles que la navigation dans une interface graphique sur un écran d'affichage, alternativement ou en plus des fonctions d'entrée. Le dispositif de commande 245 peut être un pavé tactile, une souris, une boule de commande ou des touches de direction du curseur pour communiquer des informations de direction et des sélections de commande au processeur 210 et pour commander le mouvement du curseur sur l'écran 235. Le dispositif d'entrée peut avoir au moins deux degrés de liberté dans deux axes, un premier axe (par exemple, x) et un deuxième axe (par exemple, y), ce qui permet au dispositif de spécifier des positions dans un plan. Un autre type de dispositif d'entrée est un dispositif de commande filaire, sans-fil ou optique, tel qu'un joystick, une baguette, une console, un volant, une pédale, un mécanisme de changement de vitesse ou tout autre type de dispositif de commande. Un dispositif d'entrée 240 peut inclure une combinaison de plusieurs dispositifs d'entrée différents, tels qu'une caméra vidéo et un capteur de profondeur.
Dans un autre mode de réalisation, le système informatique 205 peut comprendre un dispositif de l'internet des objets (dit « loT », pour « Internet of things ») dans lequel un ou plusieurs du dispositif de sortie 235, du dispositif d'entrée 240 et du dispositif de commande 245 sont omis. Ou, dans un tel mode de réalisation, le dispositif d'entrée 240 peut comporter une ou plusieurs caméras, des détecteurs de mouvement, des thermomètres, des microphones, des détecteurs sismiques, d'autres capteurs ou détecteurs, des dispositifs de mesure ou des codeurs et le dispositif de sortie 235 peut comprendre un affichage à usage spécial tel qu'un affichage LED ou LCD à ligne unique, un ou plusieurs indicateurs, un panneau d'affichage, un compteur, une vanne, un solénoïde, un actionneur ou un servomoteur.
Le dispositif de sortie 235 peut comporter du matériel, des logiciels, des microprogrammes et des interfaces pour générer des paquets de rapport de position, des notifications, des signaux d'impulsion ou de battement de cœur, ou d'autres transmissions de données récurrentes qui spécifient une position du système informatique 205, seul ou en combinaison avec d'autres données spécifiques à l'application, dirigées vers l'hôte 250 ou le serveur 255.
Le système informatique 205 peut mettre en œuvre les techniques décrites dans le présent document en utilisant une logique câblée personnalisée, au moins un ASIC (pour « Applicationspecific integrated circuit », traduit par « circuit intégré propre à une application ») ou un FPGA (pour « Field-programmable gate array », traduit par « réseau de portes programmables in situ), un microprogramme et/ou des instructions de programme ou une logique qui, lorsqu'ils sont chargés et utilisés ou exécutés en combinaison avec le système informatique, provoquent ou programment le système informatique pour qu'il fonctionne comme une machine à usage spécifique. Selon un mode de réalisation, les techniques décrites ici sont exécutées par le système informatique 205 en réponse au processeur 210 qui exécute au moins une séquence d'au moins une instruction contenue dans la mémoire principale 225. Ces instructions peuvent être lues dans la mémoire principale 225 à partir d'un autre support de stockage, tel que la mémoire 215. L'exécution des séquences d'instructions contenues dans la mémoire principale 225 amène le processeur 210 à exécuter les étapes du processus décrites dans le présent document. Dans d'autres modes de réalisation, des circuits câblés peuvent être utilisés à la place ou en combinaison avec des instructions logicielles.
Le terme "support de stockage", tel qu'il est utilisé dans le présent document, désigne tout support non transitoire qui stocke des données et/ou des instructions permettant à une machine de fonctionner d'une manière spécifique. Ces supports de stockage peuvent comporter des supports non volatils et/ou des supports volatils. Les supports non volatils comprennent, par exemple, les disques optiques ou magnétiques, tels que la mémoire 215. Les supports volatils comportent la mémoire dynamique, telle que la mémoire 225. Les formes courantes de supports de stockage comportent, par exemple, un disque dur, un lecteur à semi-conducteurs, un lecteur flash, un support de stockage de données magnétique, tout support de stockage de données optique ou physique, une puce mémoire, etc.
Les supports de stockage sont distincts des supports de transmission, mais peuvent être utilisés conjointement avec eux. Les supports de transmission participent au transfert d'informations entre les supports de stockage. Par exemple, les supports de transmission comportent les câbles coaxiaux, les fils de cuivre et les fibres optiques, y compris les fils qui constituent un bus du sous-système I/O 220. Les supports de transmission peuvent également prendre la forme d'ondes acoustiques ou lumineuses, telles que celles générées pendant les communications de données par ondes radio et infrarouges.
Diverses formes de supports peuvent être impliquées dans le transport d'au moins une séquence d'au moins une instruction vers le processeur 210 pour exécution. Par exemple, les instructions peuvent initialement être transportées sur un disque magnétique ou un lecteur à semi- conducteurs d'un ordinateur distant. L'ordinateur distant peut charger les instructions dans sa mémoire dynamique et envoyer les instructions sur un lien de communication tel qu'un câble à fibre optique ou coaxial ou une ligne téléphonique en utilisant un modem. Un modem ou un routeur local au système informatique 205 peut recevoir les données sur la liaison de communication et convertir les données dans un format qui peut être lu par le système informatique 205. Par exemple, un récepteur tel qu'une antenne de radiofréquence ou un détecteur infrarouge peut recevoir les données transportées dans un signal sans fil ou optique et un circuit approprié peut fournir les données au sous-système I/O 220, par exemple en plaçant les données sur un bus. Le sous- système I/O 220 transporte les données vers la mémoire 225, à partir de laquelle le processeur 210 récupère et exécute les instructions. Les instructions reçues par la mémoire 225 peuvent éventuellement être stockées sur la mémoire 215 avant ou après l'exécution par le processeur 210.
Le système informatique 205 peut comporter également une interface de communication 260 couplée à un bus 220. L'interface de communication 260 fournit un couplage de communication de données bidirectionnel à la ou aux liaisons réseau 265 qui sont directement ou indirectement connectées à au moins un réseau de communication, tel qu'un réseau 270 ou un nuage public ou privé sur Internet. Par exemple, l'interface de communication 260 peut être une interface de réseau Ethernet, une carte de réseau numérique à intégration de services (RNIS), un modem câble, un modem satellite ou un modem pour fournir une connexion de communication de données à un type correspondant de ligne de communication, par exemple un câble Ethernet ou un câble métallique de tout type ou une ligne à fibre optique ou une ligne téléphonique. Le réseau 270 représente largement un réseau local (dit « LAN », pour « Local Area Network »), un réseau étendu (dit « WAN », pour « Wide Area Network »), un réseau de campus, un réseau Internet, ou toute combinaison de ceux-ci. L'interface de communication 260 peut comporter une carte LAN pour fournir une connexion de communication de données à un LAN compatible, ou une interface de radiotéléphone cellulaire qui est câblée pour envoyer ou recevoir des données cellulaires selon les normes de réseau sans fil de radiotéléphone cellulaire, ou une interface de radio satellite qui est câblée pour envoyer ou recevoir des données numériques selon les normes de réseau sans fil de satellites. Dans n'importe quelle mise en oeuvre de ce type, l'interface de communication 260 envoie et reçoit des signaux électriques, électromagnétiques ou optiques sur des trajets de signaux qui transportent des flux de données numériques représentant divers types d'informations.
La liaison réseau 265 fournit typiquement une communication de données électrique, électromagnétique ou optique directement ou par l'intermédiaire d'au moins un réseau à d'autres dispositifs de données, en utilisant, par exemple, la technologie satellite, cellulaire, W-Fi ou BLUETOOTH. Par exemple, la liaison réseau 265 peut fournir une connexion à travers un réseau 270 à un ordinateur hôte 250.
En outre, la liaison réseau 265 peut fournir une connexion par l'intermédiaire du réseau 270 ou à d'autres dispositifs informatiques via des dispositifs d'interconnexion et/ou des ordinateurs qui sont exploités par un fournisseur de services Internet (ISP) 275. Le FAI 275 fournit des services de communication de données par l'intermédiaire d'un réseau mondial de communication de données par paquets représenté par Internet 280. Un ordinateur serveur 255 peut être couplé à Internet 280. Le serveur 255 représente largement tout ordinateur, centre de données, machine virtuelle ou instance informatique virtuelle avec ou sans hyperviseur, ou ordinateur exécutant un système de programme conteneurisé tel que DOCKER ou KUBERNETES. Le serveur 255 peut représenter un service numérique électronique qui est mis en œuvre à l'aide de plus d'un ordinateur ou d'une instance et auquel on accède et qu'on utilise en transmettant des demandes de services Web, des chaînes de localisateurs de ressources uniformes (dit « URL », pour« Uniform Resource Locator ») avec des paramètres dans des charges utiles HTTP (pour « Hypertext transfer protocol », traduit par « protocole de transfert hypertexte », des appels d'API (pour « application programing interface », traduit par « interface de programmation applicative »), des appels de services d'applications ou d'autres appels de services. Le système informatique 205 et le serveur 255 peuvent former des éléments d'un système informatique distribué qui comprend d'autres ordinateurs, un cluster de traitement, une ferme de serveurs ou une autre organisation d'ordinateurs qui coopèrent pour effectuer des tâches ou exécuter des applications ou des services. Le serveur 255 peut comporter un ou plusieurs ensembles d'instructions qui sont organisés sous forme de modules, de méthodes, d'objets, de fonctions, de routines ou d'appels. Les instructions peuvent être organisées comme un ou plusieurs programmes informatiques, services de système d'exploitation ou programmes d'application, y compris des applications mobiles. Les instructions peuvent comporter un système d'exploitation et/ou un logiciel système ; une ou plusieurs bibliothèques pour prendre en charge des fonctions multimédias, de programmation ou autres ; des instructions ou des piles de protocoles de données pour mettre en oeuvre des protocoles de communication TCP/IP (pour « Transmission control protocol / Internet protocol », traduit par « protocole de contrôle de transmission / protocole internet »), HTTP ou autres ; des instructions de traitement de format de fichier pour analyser ou rendre des fichiers codés en utilisant HTML (pour « Hypertext markup language », traduit par « langage de balisage hypertexte »), XML (for « Extensible markup language », traduit par « langage de balisage extensible »), JPEG (pour « Joint Photographie Experts Group », traduit par « Groupe joint d’experts photographiques), MPEG (pour « Moving picture experts group », traduit par groupe d’experts d’images en mouvement ») ou PNG (for « Portable Networks Graphie », traduit par « graphiques portables pour réseaux »); des instructions d'interface utilisateur pour rendre ou interpréter des commandes pour une interface utilisateur graphique (GUI), une interface de ligne de commande ou une interface utilisateur textuelle ; un logiciel d'application tel qu'une suite bureautique, des applications d'accès à Internet, des applications de conception et de fabrication, des applications graphiques, des applications audio, des applications de génie logiciel, des applications éducatives, des jeux ou des applications diverses. Le serveur 255 peut comprendre un serveur d'application web qui héberge une couche de présentation, une couche d'application et une couche de stockage de données telles qu'un système de base de données relationnelle utilisant un langage d'interrogation structuré (dit « SQL », pour « Structured Query Language ») ou aucun SQL, un magasin d'objets, une base de données graphique, un système de fichiers plats ou tout autre stockage de données.
Le système informatique 205 peut envoyer des messages et recevoir des données et des instructions, y compris du code de programme, par l'intermédiaire du ou des réseaux, de la liaison réseau 265 et de l'interface de communication 260. Dans l'exemple Internet, un serveur 255 peut transmettre un code demandé pour un programme d'application par l'intermédiaire d'Internet 280, du FAI 275, du réseau local 270 et de l'interface de communication 260. Le code reçu peut être exécuté par le processeur 210 au fur et à mesure de sa réception, et/ou stocké dans la mémoire 215, ou dans une autre mémoire non volatile pour une exécution ultérieure.
L'exécution d'instructions telle que décrite dans cette section peut mettre en œuvre un processus sous la forme d'une instance d'un programme informatique en cours d'exécution et constitué d'un code de programme et de son activité actuelle. Selon le système d'exploitation (dit « OS », « operating system »), un processus peut être constitué de plusieurs fils d'exécution qui exécutent des instructions simultanément. Dans ce contexte, un programme informatique est une collection passive d'instructions, tandis qu'un processus peut être l'exécution réelle de ces instructions. Plusieurs processus peuvent être associés au même programme ; par exemple, l'ouverture de plusieurs instances du même programme signifie souvent que plus d'un processus est en cours d'exécution. Le multitâche peut être mis en œuvre pour permettre à plusieurs processus de partager le processeur 210. Bien que chaque processeur 210 ou noyau du processeur exécute une seule tâche à la fois, le système informatique 205 peut être programmé pour mettre en oeuvre le multitâche afin de permettre à chaque processeur de basculer entre les tâches en cours d'exécution sans avoir à attendre la fin de chaque tâche. Dans un mode de réalisation, les commutations peuvent être effectuées lorsque les tâches effectuent des opérations d’entrée/sortie, lorsqu'une tâche indique qu'elle peut être commutée, ou sur des interruptions matérielles. Le partage du temps peut être mis en œuvre pour permettre une réponse rapide aux applications interactives des utilisateurs en effectuant rapidement des commutations de contexte pour donner l'impression d'une exécution simultanée de plusieurs processus. Dans un mode de réalisation, pour des raisons de sécurité et de fiabilité, un système d'exploitation peut empêcher la communication directe entre des processus indépendants, en fournissant une fonctionnalité de communication interprocessus strictement médiatisée et contrôlée.

Claims

REVENDICATIONS
1. Procédé (100) de détection d’un corps en mouvement à proximité d’une structure, caractérisé en ce qu’il comporte :
- une étape (105) de capture d’un flux vidéo représentatif de l’environnement à proximité de la structure,
- une étape (110) de décomposition, par un dispositif de calcul, du flux vidéo en une séquence initiale d’au moins deux images successives,
- une étape (125) de soustraction, par un dispositif de calcul, d’une première image et d’une deuxième image de la séquence initiale,
- une étape (150) de détection, par un dispositif de calcul, d’un mouvement représentatif de la présence d’un corps en mouvement en fonction de la soustraction réalisée,
- une étape (155) de définition, par un dispositif de calcul, de coordonnées représentatives d’une boite de recherche du corps en mouvement en fonction de coordonnées du mouvement détecté,
- une étape (170) de constitution, par un dispositif de calcul, d’une séquence d’images tronquées par sélection, dans la séquence d’images initiale, d’une zone des images restreintes à la boite de recherche,
- une étape (175) de traitement, par un réseau de neurones entraîné, de la séquence d’images tronquées pour reconnaître un corps en mouvement dans la séquence d’images.
2. Procédé (100) selon la revendication 1 , qui comporte, de plus, lorsque la structure comporte une partie mobile, une étape (190) d’émission d’une commande de mise à l’arrêt de la partie mobile lorsqu’un corps en mouvement est détecté.
3. Procédé (100) selon l’une des revendications 1 ou 2, dans lequel le corps en mouvement est un animal.
4. Procédé (100) selon la revendication 1 , qui comporte :
- une étape (180) d’intégration temporelle, par un dispositif de calcul, de résultats de l’étape de traitement,
- une étape (185) de détection, dans les résultats intégrés, d’un motif représentatif d’un risque de collision entre le corps en mouvement et la partie mobile.
5. Procédé (100) selon la revendication 4, dans lequel, l’étape (190) d’émission d’une commande de mise à l’arrêt de la partie mobile est réalisée en fonction du motif détecté.
6. Procédé (100) selon l’une des revendications 1 à 5, qui comporte une étape (195) d’émission d’une alerte sonore et/ou visuelle en fonction du motif détecté.
7. Procédé (100) selon l’une des revendications 1 à 6, qui comporte, en aval de l’étape (125) de soustraction, une étape (130) de seuillage appliquée au résultat de l’étape de soustraction.
8. Procédé (100) selon la revendication 7, qui comporte en aval de l’étape (130) de seuillage, une étape (135) d’érosion appliquée au résultat de l’étape de seuillage.
9. Procédé (100) selon la revendication 8, qui comporte en aval de l’étape (135) d’érosion, une étape (140) de dilation appliquée au résultat de l’étape d’érosion.
10. Procédé (100) selon la revendication 9, qui comporte en aval de l’étape (140) de dilatation, une étape (145) de segmentation appliquée au résultat de l’étape de dilatation.
11. Procédé (100) selon l’une des revendications 1 à 10, dans lequel le réseau est un réseau de neurones à convolutions.
12. Dispositif (200) de détection d’un corps en mouvement à proximité d’une structure, caractérisé en ce qu’il comporte :
- un moyen (240) de capture d’un flux vidéo représentatif de l’environnement à proximité de la structure,
- un moyen (210) de décomposition du flux vidéo en une séquence initiale d’au moins deux images successives,
- un moyen (210) de soustraction d’une première image et d’une deuxième image de la séquence initiale,
- un moyen (210) de détection d’un mouvement représentatif de la présence d’un corps en mouvement en fonction de la soustraction réalisée,
- un moyen (210) de définition de coordonnées représentatives d’une boite de recherche du corps en mouvement en fonction de coordonnées du mouvement détecté,
- un moyen (210) de constitution d’une séquence d’images tronquées par sélection, dans la séquence d’images initiale, d’une zone des images restreintes à la boite de recherche,
- un moyen (210) de traitement, par un réseau de neurones entraîné, de la séquence d’images tronquées pour reconnaître un corps en mouvement dans la séquence d’images.
13. Dispositif (200) selon la revendication 12, qui comporte de plus, lorsque la structure comporte une partie mobile, un moyen (260) d’émission d’une commande de mise à l’arrêt de la partie mobile lorsqu’un corps en mouvement est détecté.
EP24707062.6A 2023-02-28 2024-02-27 Procédé et dispositif de détection d'un corps en mouvement à proximité d'une structure Pending EP4673925A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR2301837A FR3146227B1 (fr) 2023-02-28 2023-02-28 Procédé et dispositif de commande d’une partie mobile d’une structure pour éviter un risque de collision
PCT/EP2024/054870 WO2024180021A1 (fr) 2023-02-28 2024-02-27 Procédé et dispositif de détection d'un corps en mouvement à proximité d'une structure

Publications (1)

Publication Number Publication Date
EP4673925A1 true EP4673925A1 (fr) 2026-01-07

Family

ID=86469356

Family Applications (1)

Application Number Title Priority Date Filing Date
EP24707062.6A Pending EP4673925A1 (fr) 2023-02-28 2024-02-27 Procédé et dispositif de détection d'un corps en mouvement à proximité d'une structure

Country Status (4)

Country Link
EP (1) EP4673925A1 (fr)
AU (1) AU2024228532A1 (fr)
FR (1) FR3146227B1 (fr)
WO (1) WO2024180021A1 (fr)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR220E (fr) 1898-02-03 1902-11-21 Jensen Perfectionnements aux cisailles, clés anglaises, pinces el autres outils analogues
US20130050400A1 (en) * 2011-08-31 2013-02-28 Henrik Stiesdal Arrangement and Method to Prevent a Collision of a Flying Animal with a Wind Turbine
US9125394B2 (en) 2013-01-30 2015-09-08 General Electric Company Ultrasonic sound emitting devices for wind turbines
US10888084B2 (en) 2015-07-15 2021-01-12 Nrg Systems, Inc. Ultrasonic bat deterrent system
US11109586B2 (en) * 2019-11-13 2021-09-07 Bird Control Group, Bv System and methods for automated wildlife detection, monitoring and control
CN111127516A (zh) 2019-12-19 2020-05-08 苏州智加科技有限公司 无搜索框的目标检测和跟踪方法及系统

Also Published As

Publication number Publication date
FR3146227A1 (fr) 2024-08-30
AU2024228532A1 (en) 2025-08-14
FR3146227B1 (fr) 2025-02-28
WO2024180021A1 (fr) 2024-09-06

Similar Documents

Publication Publication Date Title
US12456209B2 (en) Systems and methods for estimating feature locations based on image analysis and homography
KR102451198B1 (ko) 이미지 생성 방법 및 장치
TWI766228B (zh) 網路模組、分配方法及裝置、電子設備和電腦可讀儲存媒體
EP3080684B1 (fr) Détection d'objet dans des systèmes de capteur optique
Shi et al. Single‐shot detector with enriched semantics for PCB tiny defect detection
US20170255198A1 (en) Drone and robot control systems and methods
WO2019091787A1 (fr) Procédé d'estimation de pose d'une caméra dans le référentiel d'une scène tridimensionnelle, dispositif, système de réalite augmentée et programme d'ordinateur associé
Zhao et al. Photon-efficient 3D reconstruction employing a edge enhancement method
US10761965B2 (en) Detecting method calls based on stack trace data
EP3674741A1 (fr) Système et procédé d'identification de source radar
US12061962B2 (en) Using unsupervised machine learning to produce interpretable routing rules
US12354271B2 (en) Imaging device and a method for image generation of a specimen
US20180367728A1 (en) Optimal scanning trajectories for 3d scenes
EP4049271A1 (fr) Architecture de séparation de source profonde
WO2016046336A1 (fr) Procede et systeme de detection d'evenements de nature connue
EP4673925A1 (fr) Procédé et dispositif de détection d'un corps en mouvement à proximité d'une structure
US10535156B2 (en) Scene reconstruction from bursts of image data
US12475589B1 (en) Recovering camera position from content file
Ildar Increasing FPS for single board computers and embedded computers in 2021 (Jetson nano and YOVOv4-tiny). Practice and review
FR3104291A1 (fr) Procédé et système de configuration d’un dispositif d’imagerie d’un véhicule automobile comportant N capteurs et N réseaux de neurones encodeurs dédiés
Rakhmatulin Increasing FPS for single board computers and embedded computers in 2021 (Jetson Nano and YOVOv4-tiny)
FR3155082A3 (fr) Procédé de détermination de risques sanitaires liés à la pollution atmosphérique
FR3146530A1 (fr) Dispositif et procédé de contrôle d’intégrité et/ou de conformité d’une préparation logistique d’une commande
US20250124078A1 (en) SpaceGPT: Visual Language Model Empowered Remote Sensing Data Service Platform
FR3146000A3 (fr) Systèmes et procédé de mise à jour d’une donnée représentative du poids d’un produit dans une base de données informatique

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20250919

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC ME MK MT NL NO PL PT RO RS SE SI SK SM TR