DE102021131930A1 - Gesture recognition in traffic - Google Patents

Gesture recognition in traffic Download PDF

Info

Publication number
DE102021131930A1
DE102021131930A1 DE102021131930.7A DE102021131930A DE102021131930A1 DE 102021131930 A1 DE102021131930 A1 DE 102021131930A1 DE 102021131930 A DE102021131930 A DE 102021131930A DE 102021131930 A1 DE102021131930 A1 DE 102021131930A1
Authority
DE
Germany
Prior art keywords
computer
gesture
module
person
training
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
DE102021131930.7A
Other languages
German (de)
Inventor
Akhilesh Kumar Malviya
Arindam Das
Saquib Mansoor Alam
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.)
Connaught Electronics Ltd
Original Assignee
Connaught Electronics Ltd
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 Connaught Electronics Ltd filed Critical Connaught Electronics Ltd
Priority to DE102021131930.7A priority Critical patent/DE102021131930A1/en
Publication of DE102021131930A1 publication Critical patent/DE102021131930A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units, or advanced driver assistance systems for ensuring comfort, stability and safety or drive control systems for propelling or retarding the vehicle
    • B60W30/18Propelling the vehicle
    • B60W30/18009Propelling the vehicle related to particular drive situations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • G06N3/0442Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0455Auto-encoder networks; Encoder-decoder networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/094Adversarial learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/58Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0002Automatic control, details of type of controller or control system architecture
    • B60W2050/0014Adaptive controllers
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • B60W2420/40Photo or light sensitive means, e.g. infrared sensors
    • B60W2420/403Image sensing, e.g. optical camera

Abstract

Gemäß einem computerimplementierten Verfahren zur Gestenerkennung im Straßenverkehr wird ein Kamerabild (1) erhalten, das eine Umgebung eines Kraftfahrzeugs (15) abbildet. Es wird ein Bereich von Interesse einer Straßennutzer lenkenden Person (2) in dem Kamerabild (1) bestimmt. Eine Überauflösungstechnik wird auf Daten angewendet, die von dem Kamerabild (1) abhängen, um eine Bilddarstellung des Bereichs von Interesse der Straßennutzer lenkenden Person (2) zu erzeugen, wobei die Bilddarstellung eine gegenüber dem Kamerabild (1) erhöhte Auflösung hat. Eine Geste der Straßennutzer lenkenden Person (2) wird abhängig von der Bilddarstellung identifiziert.According to a computer-implemented method for recognizing gestures in road traffic, a camera image (1) is obtained which depicts the surroundings of a motor vehicle (15). An area of interest of a person (2) directing road users is determined in the camera image (1). A super-resolution technique is applied to data dependent on the camera image (1) to generate an image representation of the area of interest of the driver (2) of the road user, the image representation having an increased resolution compared to the camera image (1). A gesture by the person (2) directing the road user is identified depending on the image representation.

Description

Die Erfindung ist auf ein computerimplementiertes Verfahren zur Gestenerkennung im Straßenverkehr gerichtet, wobei ein Kamerabild erhalten wird, das eine Umgebung eines Kraftfahrzeugs abbildet. Die Erfindung ist des Weiteren auf ein Verfahren zum zumindest teilweise automatischen Führen eines Fahrzeugs, auf ein computerimplementiertes Trainingsverfahren zum Trainieren eines künstlichen neuronalen Netzwerks zur Gestenerkennung im Straßenverkehr, auf ein Datenverarbeitungsgerät, auf ein elektronisches Fahrzeugführungssystem sowie auf ein Computerprogrammprodukt gerichtet.The invention is aimed at a computer-implemented method for recognizing gestures in road traffic, with a camera image being obtained that depicts the surroundings of a motor vehicle. The invention is also directed to a method for at least partially automatically driving a vehicle, to a computer-implemented training method for training an artificial neural network for gesture recognition in road traffic, to a data processing device, to an electronic vehicle guidance system and to a computer program product.

Allgemeine Fußgängererkennung oder Personenidentifizierung in belebten Szenen sind bekannte Probleme, die in der Literatur bereits behandelt werden. Um jedoch autonome oder teilautonome Fahrzeuge in bestimmten Situationen sicher und funktionsfähig zu machen, ist es notwendig sicherzustellen, dass das eingesetzte System in der Lage ist, Personen, die andere Straßennutzer mittels statischer oder dynamischer Gesten lenken, wie etwa Polizeibeamte oder andere Strafverfolgungsbeamte, zuverlässig zu identifizieren und zu erkennen.General pedestrian detection or person identification in busy scenes are known problems that are already addressed in the literature. However, in order to make autonomous or semi-autonomous vehicles safe and functional in certain situations, it is necessary to ensure that the deployed system is able to reliably direct people directing other road users using static or dynamic gestures, such as police officers or other law enforcement officials identify and recognize.

Eine Aufgabe der vorliegenden Erfindung ist es, zuverlässige Gestenerkennung im Straßenverkehr mittels eines Kraftfahrzeugs zu erreichen.One object of the present invention is to achieve reliable gesture recognition in road traffic using a motor vehicle.

Diese Aufgabe wird durch den jeweiligen Gegenstand der unabhängigen Ansprüche erreicht. Weitere Ausführungen und bevorzugte Ausführungsformen sind Gegenstand der abhängigen Ansprüche.This object is achieved by the respective subject matter of the independent claims. Further designs and preferred embodiments are the subject of the dependent claims.

Die Erfindung beruht auf dem Gedanken, in einem ersten Schritt einen Bereich von Interesse einer Straßennutzer lenkenden Person in einem Kamerabild zu identifizieren und dann in einem zweiten Schritt eine Überauflösungstechnik anzuwenden, um die Auflösung dieses Bereichs von Interesse zu erhöhen. Eine Geste der Straßennutzer lenkenden Person kann dann basierend auf dem Bereich von Interesse mit erhöhter Auflösung identifiziert werden.The invention is based on the idea, in a first step, to identify an area of interest of a person directing a road user in a camera image and then in a second step to apply an over-resolution technique in order to increase the resolution of this area of interest. A gesture of the person directing the road user can then be identified based on the area of interest with increased resolution.

Gemäß einem Aspekt der Erfindung wird ein computerimplementiertes Verfahren zur Gestenerkennung im Straßenverkehr bereitgestellt. Dabei wird, insbesondere von einem Kamerasystem des Kraftfahrzeugs oder von einem Speichergerät des Kraftfahrzeugs, ein Kamerabild erhalten, das eine Umgebung des Kraftfahrzeugs abbildet. Ein Bereich von Interesse einer Straßennutzer lenkenden Person in dem Kamerabild wird bestimmt. Eine Überauflösungstechnik wird auf Daten angewendet, die von dem Kamerabild abhängen, insbesondere von dem Kamerabild und dem Bereich von Interesse der Straßennutzer lenkenden Person, um eine Bilddarstellung des Bereichs von Interesse der Straßennutzer lenkenden Person zu erzeugen, wobei die Bilddarstellung eine gegenüber dem Kamerabild erhöhte Auflösung hat. Eine Geste der Straßennutzer lenkenden Person wird abhängig von der Bilddarstellung identifiziert.According to one aspect of the invention, a computer-implemented method for gesture recognition in road traffic is provided. In this case, a camera image is obtained, in particular from a camera system of the motor vehicle or from a storage device of the motor vehicle, which images an environment of the motor vehicle. An area of interest of a person directing a road user in the camera image is determined. A super-resolution technique is applied to data dependent on the camera image, specifically the camera image and the area of interest of the road user driver, to generate an image representation of the area of interest of the road user driver, the image representation having an increased resolution relative to the camera image has. A gesture by the person directing the road user is identified depending on the image representation.

Insbesondere wird die Überauflösungstechnik nur auf den Teil des Kamerabilds angewendet, der dem Bereich von Interesse entspricht, und wird nicht auf andere Bereiche des Kamerabilds außerhalb des Bereichs von Interesse angewendet.In particular, the super-resolution technique is only applied to the portion of the camera image that corresponds to the area of interest and is not applied to other areas of the camera image outside the area of interest.

Soweit nicht anders angegeben, können alle Schritte des computerimplementierten Verfahrens von zumindest einer Recheneinheit durchgeführt werden. Insbesondere kann ein Datenverarbeitungsgerät mit zumindest einem Prozessor, der dazu eingerichtet oder angepasst ist, ein erfindungsgemäßes computerimplementiertes Verfahren durchzuführen, die Schritte des computerimplementierten Verfahrens durchführen. Zu diesem Zweck kann das Datenverarbeitungsgerät, das der zumindest einen Recheneinheit entsprechen kann, insbesondere ein Computerprogramm speichern, welches Befehle beinhaltet, die, wenn sie von dem Datenverarbeitungsgerät, insbesondere dem zumindest einen Prozessor, ausgeführt werden, das Datenverarbeitungsgerät dazu veranlassen, das computerimplementierte Verfahren auszuführen.Unless stated otherwise, all steps of the computer-implemented method can be carried out by at least one computing unit. In particular, a data processing device with at least one processor that is set up or adapted to carry out a computer-implemented method according to the invention can carry out the steps of the computer-implemented method. For this purpose, the data processing device, which can correspond to the at least one computing unit, can in particular store a computer program which contains instructions which, when executed by the data processing device, in particular the at least one processor, cause the data processing device to execute the computer-implemented method .

Die Straßennutzer lenkende Person kann eine Person sein, die Straßennutzer, einschließlich zum Beispiel des Kraftfahrzeugs und/oder anderer Kraftfahrzeuge, im Straßenverkehr mittels statischer und/oder dynamischer Gesten lenkt. Die Straßennutzer lenkende Person kann zum Beispiel aufgrund von charakteristischer Bekleidung, wie einer charakteristischen Uniform, Sicherheitsbekleidung, Hüten et cetera, als solche zu erkennen sein. Alternativ oder zusätzlich kann die Straßennutzer lenkende Person anhand von charakteristischen Posen oder Körperorientierungen oder Verhalten im Straßenverkehr als solche zu erkennen sein. Zum Beispiel kann die Straßennutzer lenkende Person ein Polizeibeamter oder ein anderer Strafverfolgungsbeamter sein, der visuell als solcher zu erkennen ist.The person directing the road user may be a person who directs road users, including for example the motor vehicle and/or other motor vehicles, in traffic using static and/or dynamic gestures. The person directing the road user can be recognized as such, for example, on the basis of characteristic clothing, such as a characteristic uniform, safety clothing, hats, etc. Alternatively or additionally, the person steering the road user can be recognized as such based on characteristic poses or body orientations or behavior in road traffic. For example, the road user driver may be a police officer or other law enforcement officer who is visually identifiable as such.

Zum Bestimmen des Bereichs von Interesse kann ein Objekterkennungsalgorithmus angewendet werden. Der Objekterkennungsalgorithmus kann zum Beispiel von einem trainierten künstlichen neuronalen Netzwerk oder einem entsprechenden Detektionsmodul eines derartigen künstlichen neuronalen Netzwerks ausgeführt werden.An object detection algorithm can be applied to determine the area of interest. The object recognition algorithm can be executed, for example, by a trained artificial neural network or a corresponding detection module of such an artificial neural network.

Unter einem Objekterkennungsalgorithmus kann ein Computeralgorithmus verstanden werden, der dazu in der Lage ist, eines oder mehrere Objekte innerhalb eines bereitgestellten Eingangsbilds zu identifizieren, indem jeweilige Bereiche von Interesse, auch als Begrenzungsboxen bezeichnet, spezifiziert werden und jeder der Begrenzungsboxen eine jeweilige Objektklasse zugewiesen wird, wobei die Objektklassen aus einem vorgegebenen Satz von Objektklassen ausgewählt werden können. Dabei kann die Zuweisung eines Bereichs von Interesse derart verstanden werden, dass ein entsprechender Vertrauenswert oder eine entsprechende Wahrscheinlichkeit dafür, dass das innerhalb des Bereichs von Interesse identifizierte Objekt zu der entsprechenden Objektklasse gehört, bereitgestellt wird. Zum Beispiel kann der Algorithmus einen solchen Vertrauenswert oder eine solche Wahrscheinlichkeit für jede der Objektklassen für einen gegebenen Bereich von Interesse bereitstellen. Die Zuweisung der Objektklasse kann zum Beispiel eine Auswahl oder Bereitstellung der Objektklasse mit dem größten Vertrauenswert oder der größten Wahrscheinlichkeit einschließen.An object recognition algorithm can be understood as a computer algorithm that is able to recognize one or more objects within a provided input image by specifying respective areas of interest, also referred to as bounding boxes, and assigning a respective object class to each of the bounding boxes, where the object classes can be selected from a predetermined set of object classes. In this context, the assignment of an area of interest can be understood in such a way that a corresponding confidence value or a corresponding probability is provided for the object identified within the area of interest belonging to the corresponding object class. For example, the algorithm can provide such a confidence value or probability for each of the object classes for a given area of interest. The assignment of the object class may involve, for example, selecting or providing the object class with the highest confidence value or the highest probability.

Bezüglich des Objekterkennungsalgorithmus, der zum Bestimmen des Bereichs von Interesse für die Straßennutzer lenkende Person benutzt werden kann, kann eine der Objektklassen eine Klasse Straßennutzer lenkender Personen sein. Es wird jedoch betont, dass das Bestimmen des Bereichs von Interesse der Straßennutzer lenkenden Person nicht notwendigerweise in einem Schritt oder unter Anwendung eines einzigen Objekterkennungsalgorithmus erfolgt. In manchen Ausführungen wird zum Beispiel ein Objekterkennungsalgorithmus angewendet, um Fußgänger oder Personen in dem Kamerabild zu identifizieren, die bestimmten Klassen entsprechen, wie etwa stehende oder gehende Personen et cetera. Diese Fußgänger oder Personen können die Straßennutzer lenkende Person beinhalten, die dann in einem zweiten Schritt ausgewählt oder identifiziert werden kann.Regarding the object detection algorithm that may be used to determine the area of interest for the road user driver, one of the object classes may be a road user driver class. However, it is emphasized that determining the area of interest of the driver does not necessarily take place in one step or using a single object detection algorithm. For example, in some implementations, an object detection algorithm is applied to identify pedestrians or people in the camera image that correspond to certain classes, such as people standing or walking, etc. These pedestrians or people can include the person directing the road user, who can then be selected or identified in a second step.

Insbesondere kann zum Bestimmen des Bereichs von Interesse der Straßennutzer lenkenden Person eine Position und/oder eine Form des Bereichs von Interesse in dem Kamerabild bestimmt werden, und es kann bestimmt werden, dass die jeweilige Objektklasse „Straßennutzer lenkende Person“ lautet.In particular, to determine the area of interest of the person directing road users, a position and/or a shape of the area of interest in the camera image can be determined and it can be determined that the respective object class is "person directing road users".

Eine Geste der Straßennutzer lenkenden Person kann eine statische oder eine dynamische Geste sein. Typischerweise beinhalten Gesten der Straßennutzer lenkenden Person charakteristische Positionen und/oder Orientierungen des Körpers oder eines Körperteils, des Gesichts oder des Kopfes oder der Hände et cetera, der Person ein. Gesten der Straßennutzer lenkenden Person können auch charakteristische Positionen und/oder Orientierungen eines Hilfsmittels, wie etwa einer Kelle, die von der Straßennutzer lenkenden Person gehalten wird, beinhalten. Derartige charakteristische Positionen und/oder Orientierungen können im Wesentlichen für eine bestimmte Zeitdauer konstant gehalten werden, die mehrere Kamera-Frames abdecken kann, wobei das Kamerabild einem der Kamera-Frames entspricht. Danach kann die Straßennutzer lenkende Person ihre Pose ändern, um den Straßennutzern eine andere Information zu signalisieren. Im Kontext der vorliegenden Offenbarung kann auch eine Pose während eines Zeitraums, während dem die Pose der Straßennutzer lenkenden Person im Wesentlichen konstant ist, als eine Geste betrachtet werden. Mit anderen Worten beinhaltet eine Geste nicht notwendigerweise eine tatsächliche Bewegung des Körpers oder des Hilfsmittels.A gesture of the person directing the road user can be a static or a dynamic gesture. Typically, gestures of the person directing the road user involve characteristic positions and/or orientations of the person's body or body part, face or head or hands, et cetera. Gestures by the driver may also include characteristic positions and/or orientations of an implement, such as a trowel, held by the driver. Such characteristic positions and/or orientations can be kept essentially constant for a certain period of time, which can cover several camera frames, with the camera image corresponding to one of the camera frames. After that, the person driving the road user can change his pose to signal different information to the road users. In the context of the present disclosure, a pose during a period of time during which the pose of the driver is substantially constant may also be considered a gesture. In other words, a gesture does not necessarily involve actual movement of the body or implement.

Die Bilddarstellung des Bereichs von Interesse kann als ein Bild aufgefasst werden, das den Teil des Kamerabilds abbildet, der dem Bereich von Interesse entspricht, jedoch mit einer gegenüber dem entsprechenden Bereich in dem Kamerabild erhöhten Auflösung. Es sind per se einige Algorithmen bekannt, die eine Überauflösung eines Bilds erreichen. Eine Überauflösungstechnik kann als ein Prozess zur Gewinnung von Bildern mit hoher Auflösung aus Bildern mit geringerer Auflösung betrachtet werden. Es gibt bekannte, auf Deep-Learning basierende Überauflösungsmodelle sowie klassische Upsampling-Techniken, wie etwa interpolierungsbasierte Verfahren, die als Überauflösungstechnik verwendet werden können.The image representation of the area of interest can be understood as an image that depicts the part of the camera image that corresponds to the area of interest, but with an increased resolution compared to the corresponding area in the camera image. A number of algorithms are known per se that achieve an over-resolution of an image. A super-resolution technique can be viewed as a process for obtaining high-resolution images from lower-resolution images. There are well-known super-resolution models based on deep learning as well as classic upsampling techniques such as interpolation-based methods that can be used as super-resolution techniques.

Zum Erkennen der Geste basierend auf der Bilddarstellung können auch bekannte Algorithmen, zum Beispiel auf Deep-Learning basierende Algorithmen, benutzt werden.Known algorithms, for example algorithms based on deep learning, can also be used to recognize the gesture based on the image representation.

Gemäß einem erfindungsgemäßen computerimplementierten Verfahren wird ein zweistufiger Ansatz angewendet, um eine zuverlässige Gestenerkennung in Straßenverkehrsumgebungen zu erzielen. Insbesondere wird in dem ersten Schritt der Bereich von Interesse der Straßennutzer lenkenden Person bestimmt. Ist dies erfolgt, so wird die Überauflösungstechnik speziell auf den Bereich von Interesse angewendet, um die Bilddarstellung mit erhöhter Auflösung zu erhalten. Durch Bestimmen der Geste basierend auf der Bilddarstellung mit erhöhter Auflösung ist eine besonders zuverlässige Gestenerkennung möglich, da diese sich die erhöhte Auflösung zunutze macht, ohne durch Zusatzinformationen außerhalb des Bereichs von Interesse gestört zu werden, was für das Erkennen der Geste nicht nützlich ist. Des Weiteren werden durch Einschränkung der Überauflösungstechnik auf den Bereich von Interesse der Rechenaufwand und der Speicherbedarf reduziert.According to a computer-implemented method according to the invention, a two-step approach is used to achieve reliable gesture recognition in road traffic environments. In particular, in the first step the area of interest of the person directing the road user is determined. Once this is done, the super-resolution technique is applied specifically to the region of interest to obtain the enhanced resolution image representation. By determining the gesture based on the image representation with increased resolution, a particularly reliable gesture recognition is possible, since it takes advantage of the increased resolution without being disturbed by additional information outside the area of interest, which is not useful for recognizing the gesture. Furthermore, by confining the super-resolution technique to the area of interest, computational effort and memory requirements are reduced.

Die erkannte Geste kann dann von einem elektronischen Fahrzeugführungssystem des Kraftfahrzeugs für autonomes oder teilautonomes Fahren des Kraftfahrzeugs abhängig von der identifizierten Geste benutzt werden. Zum Beispiel kann das elektronische Fahrzeugführungssystem einen Algorithmus zur Trajektorienplanung oder ähnliches basierend auf der Geste ausführen. Da die Geste erfindungsgemäß mit einer verbesserten Zuverlässigkeit bestimmt wird, werden auch die Sicherheit und Zuverlässigkeit sowie auch die Verfügbarkeit von autonomem und teilautonomem Fahren erhöht.The recognized gesture can then be used by an electronic vehicle guidance system of the motor vehicle for autonomous or semi-autonomous driving of the motor vehicle depending on the identified gesture. For example, the electronic vehicle guidance system may execute a trajectory planning algorithm or the like based on the gesture. Since the gesture is determined according to the invention with improved reliability, the safety and reliability as well as the availability of autonomous and semi-autonomous driving are increased.

Gemäß einigen Ausführungen des erfindungsgemäßen Verfahrens zur Gestenerkennung wird ein Detektionsmodul eines trainierten künstlichen neuronalen Netzwerks auf das Kamerabild angewendet, um den Bereich von Interesse der Straßennutzer lenkenden Person in dem Kamerabild zu bestimmen.According to some embodiments of the gesture recognition method according to the invention, a detection module of a trained artificial neural network is applied to the camera image in order to determine the area of interest of the person driving the road user in the camera image.

Ausführungen, die das künstliche neuronale Netzwerk nutzen, ermöglichen ein schnelles und zuverlässiges Erkennen des Bereichs von Interesse und/oder eine schnelle und zuverlässige Erzeugung der Bilddarstellung mit erhöhter Auflösung.Implementations utilizing the artificial neural network allow for quick and reliable detection of the area of interest and/or quick and reliable generation of the enhanced resolution image representation.

Gemäß einigen Ausführungen wird ein Überauflösungsmodul des künstlichen neuronalen Netzwerks auf die Daten angewendet, die von dem Kamerabild abhängen, um die Überauflösungstechnik anzuwenden.According to some implementations, a super-resolution module of the artificial neural network is applied to the data dependent on the camera image to apply the super-resolution technique.

Das Überauflösungsmodul ist ein trainiertes Modul des trainierten künstlichen neuronalen Netzwerks. Das gilt auch für alle anderen Module und Untermodule des trainierten künstlichen neuronalen Netzwerks, die im Folgenden für jeweilige Ausführungen eingeführt werden können, falls nicht anders angegeben.The super-resolution module is a trained module of the trained artificial neural network. This also applies to all other modules and sub-modules of the trained artificial neural network, which can be introduced below for specific implementations, unless stated otherwise.

Gemäß einigen Ausführungen weist das Überauflösungsmodul eine transponierte Faltungsschicht und/oder Subpixelschicht auf.According to some implementations, the super-resolution module includes a transposed convolution layer and/or sub-pixel layer.

Die transponierte Faltungsschicht und/oder die Subpixelschicht werden insbesondere auf die Daten angewendet, die von dem Kamerabild abhängen, insbesondere auf den Teil des Kamerabilds, der dem Bereich von Interesse entspricht, um die Bilddarstellung zu erzeugen.In particular, the transposed convolution layer and/or the sub-pixel layer is applied to the data that depends on the camera image, in particular to the part of the camera image that corresponds to the area of interest, to generate the image representation.

Auf diese Weise können ungewollte Nebenwirkungen anderer Ansätze zur Überauflösung, insbesondere Upsampling-Techniken, einschließlich Rechenkomplexität, Rauschverstärkung, Unschärfe, et cetera reduziert werden.In this way, unwanted side effects of other approaches to over-resolution, especially upsampling techniques, including computational complexity, noise amplification, blurring, et cetera, can be reduced.

Gemäß einigen Ausführungen wird ein Fußgängererkennungsuntermodul des Detektionsmoduls auf das Kamerabild angewendet, um Zwischendaten zu erzeugen, die einen jeweiligen Bereich von Interesse für jeden des einen oder der mehreren Fußgänger in dem Bild beschreiben. Ein Klassifizierungsuntermodul des Detektionsmoduls wird auf die Zwischendaten angewendet, um einen des einen oder der mehreren Fußgänger als die Straßennutzer lenkende Person zu klassifizieren.According to some implementations, a pedestrian detection sub-module of the detection module is applied to the camera image to generate intermediate data describing a respective area of interest for each of the one or more pedestrians in the image. A classification sub-module of the detection module is applied to the intermediate data to classify one of the one or more pedestrians as a driver of the road user.

Mit anderen Worten wird das Bestimmen des Bereichs von Interesse der Straßennutzer lenkenden Person in zwei Schritten von den jeweiligen Untermodulen des künstlichen neuronalen Netzwerks ausgeführt. In dem ersten Schritt kann ein Objekterkennungsalgorithmus angewendet werden, um alle Fußgänger in dem Kamerabild mit deren jeweiligem Bereich von Interesse und optional entsprechenden Fußgängerklassen zu identifizieren. Die unterschiedlichen Fußgängerklassen können zum Beispiel Klassen, wie etwa stehende Fußgänger, gehende Fußgänger oder sitzende Fußgänger et cetera beinhalten. Die Ausgabe des Fußgängererkennungsuntermoduls, insbesondere die Zwischendaten, enthalten jedoch keine Informationen darüber, ob der individuelle Bereich von Interesse einer Straßennutzer lenkenden Person entspricht oder nicht. Um die Straßennutzer lenkende Person zu klassifizieren, oder mit anderen Worten, um den richtigen Bereich von Interesse aus den verschiedenen Bereichen von Interesse für die Fußgänger, die in dem ersten Schritt erhalten wurden, auszuwählen oder zu bestimmen, werden die Zwischendaten an das Klassifizierungsuntermodul weitergeleitet.In other words, determining the area of interest of the person directing the road user is carried out in two steps by the respective sub-modules of the artificial neural network. In the first step, an object detection algorithm can be applied to identify all pedestrians in the camera image with their respective area of interest and optionally corresponding pedestrian classes. The different pedestrian classes can include, for example, classes such as standing pedestrians, walking pedestrians, or seated pedestrians, et cetera. However, the output of the pedestrian detection sub-module, in particular the intermediate data, does not contain any information as to whether the individual area of interest corresponds to a person driving the road user or not. In order to classify the person driving the road user, or in other words to select or determine the correct area of interest from the different areas of interest for the pedestrians obtained in the first step, the intermediate data is forwarded to the classification sub-module.

Zum Beispiel kann das Fußgängererkennungsuntermodul ein Encodermodul zum Encodieren von Merkmalen des Kamerabilds beinhalten. Das Fußgängererkennungsuntermodul kann dann die Bereiche von Interesse für die Fußgänger und die Fußgängerklassen basierend auf den encodierten Merkmalen bestimmen. Das Überauflösungsmodul kann als entsprechendes Decodermodul, das die Bilddarstellung aus den encodierten Merkmalen wiederherstellt, agieren oder ein solches aufweisen.For example, the pedestrian detection sub-module may include an encoder module for encoding features of the camera image. The pedestrian detection sub-module can then determine the areas of interest for the pedestrians and the pedestrian classes based on the encoded features. The super-resolution module may act or comprise a corresponding decoder module that reconstructs the image representation from the encoded features.

Gemäß mehreren Ausführungen wird eine gegenwärtige Pose der Straßennutzer lenkenden Person basierend auf der Bilddarstellung bestimmt, indem zum Beispiel ein Posenschätzmodul des künstlichen neuronalen Netzwerks auf die Bilddarstellung angewendet wird. Die Geste der Straßennutzer lenkenden Person wird abhängig von der gegenwärtigen Pose identifiziert.According to several implementations, a current pose of the person driving the road user is determined based on the image representation, for example by applying a pose estimation module of the artificial neural network to the image representation. The gesture of the person directing the road user is identified depending on the current pose.

Die gegenwärtige Pose der Straßennutzer lenkenden Person kann als eine Körperpose der Straßennutzer lenkenden Person, wie sie in dem Kamerabild gezeigt wird, betrachtet werden. Die Körperpose kann zum Beispiel eine Position und/oder Orientierung des Körpers und/oder des Gesichts, der Arme, der Hände, des Kopfs et cetera der Straßennutzer lenkenden Person beinhalten. Des Weiteren kann auch die Position und/oder Orientierung eines Hilfsmittels, zum Beispiel einer Verkehrskelle et cetera, als ein Teil der Körperpose betrachtet werden, obwohl das Hilfsmittel nicht ein Teil des Körpers der Straßennutzer lenkenden Person ist.The current pose of the person driving the road user can be regarded as a body pose of the person driving the road user as shown in the camera image. The body pose may include, for example, a position and/or orientation of the body and/or face, arms, hands, head, et cetera, of the person driving the road user. Furthermore, the position and/or orientation of an implement, e.g. a traffic signal indicator et cetera, may be considered part of the body pose, even though the implement is not a part of the body of the person driving the road user.

Um zum Beispiel die gegenwärtige Pose der Straßennutzer lenkenden Person zu bestimmen, können bestimmte vorgegebene Schlüsselpunkte der Straßennutzer lenkenden Person bestimmt werden, beispielsweise mittels des Posenschätzmoduls. Die Schlüsselpunkte können sich auf charakteristische Punkte beziehen, zum Beispiel in der Mitte der Hände oder des Gesichts oder der Kelle. Basierend auf der Position der Schlüsselpunkte kann die Geste gelernt oder bestimmt werden und es kann auch bestimmt werden, ob die Geste einem Signal entspricht, das an das Kraftfahrzeug oder dessen Benutzer selbst oder an ein anderes Fahrzeug in der Umgebung gerichtet ist. Zum Beispiel können Netzwerke zum Schätzen menschlicher Posen gemäß dem Stand der Technik dazu benutzt werden, unterschiedliche Posen und Gesten entsprechend zu lernen und zu identifizieren.For example, to determine the current pose of the driver, certain predetermined key points of the driver may be determined, for example by the pose estimation module. The key points can refer to characteristic points, for example in the middle of the hands or the face or the trowel. Based on the position of the key points, the gesture can be learned or determined and it can also be determined whether the gesture corresponds to a signal directed to the motor vehicle or its user himself or to another vehicle in the vicinity. For example, prior art human pose estimation networks can be used to learn and identify different poses and gestures appropriately.

Insbesondere kann ein Gestenerkennungsmodul des künstlichen neuronalen Netzwerks auf Eingabedaten, die die gegenwärtige Pose enthalten, angewendet werden, um die Geste der Straßennutzer lenkenden Person zu identifizieren.In particular, a gesture recognition module of the artificial neural network can be applied to input data containing the current pose to identify the gesture of the driver.

Gemäß einigen Ausführungen weist das Gestenerkennungsmodul ein Gestenvalidierungsuntermodul und ein rekurrentes neuronales Netzwerk, RNN, auf, das zum Beispiel derart ausgestaltet sein kann, dass es ein langes Kurzzeitgedächtnis, LSTM (englisch: long short-term memory) aufweist oder aus einem solchen besteht. Das Gestenvalidierungsuntermodul wird auf die Eingabedaten angewendet und das RNN wird auf eine Ausgabe des Gestenvalidierungsuntermoduls angewendet. Eine Ausgabe des RNN wird an das Gestenvalidierungsuntermodul als ein Teil der Eingabedaten rückgekoppelt. Die Geste wird basierend auf der Ausgabe des RNN identifiziert.According to some implementations, the gesture recognition module includes a gesture validation sub-module and a recurrent neural network, RNN, which may be configured, for example, to include or consist of a long short-term memory, LSTM. The gesture validation sub-module is applied to the input data and the RNN is applied to an output of the gesture validation sub-module. An output of the RNN is fed back to the gesture validation submodule as part of the input data. The gesture is identified based on the output of the RNN.

Insbesondere können die beschriebenen Schritte des computerimplementierten Verfahrens für eine Vielzahl von Kamerabildern ausgeführt werden, die jeweiligen aufeinanderfolgenden Kamera-Frames entsprechen. Durch die beschriebene Konstruktion des Gestenerkennungsmoduls mit dem RNN, welches seine Ausgabe an das Gestenvalidierungsuntermodul rückkoppelt, können mehrere aufeinanderfolgende Frames berücksichtigt werden, um ein besonders zuverlässiges Erkennen der korrekten Geste zu erzielen.In particular, the described steps of the computer-implemented method can be performed for a plurality of camera images corresponding to respective consecutive camera frames. Due to the described construction of the gesture recognition module with the RNN, which feeds back its output to the gesture validation sub-module, several consecutive frames can be taken into account in order to achieve a particularly reliable recognition of the correct gesture.

In manchen Fällen ist die Bedeutung der gegenwärtigen Pose auch nicht eindeutig, sondern kann von vorhergehenden Posen der Straßennutzer lenkenden Person abhängen. Indem die RNN-Ausgabe wie beschrieben berücksichtigt wird, können auch derartige Gesten auf zuverlässige Weise identifiziert werden.In some cases, the meaning of the current pose is not clear either, but may depend on previous poses of the person driving the road user. By considering the RNN output as described, such gestures can also be reliably identified.

Gemäß einem weiteren Aspekt der Erfindung wird ein computerimplementiertes Trainingsverfahren zum Trainieren eines künstlichen neuronalen Netzwerks zur Gestenerkennung im Straßenverkehr bereitgestellt. Es wird ein Trainingsbild erhalten, das eine Umgebung eines Kraftfahrzeugs abbildet. Ein Detektionsmodul eines trainierten künstlichen neuronalen Netzwerks wird auf einen Trainingsdatensatz angewendet, der von dem Trainingsbild abhängt, um einen Bereich von Interesse einer Straßennutzer lenkenden Person in dem Trainingsbild zu bestimmen. Ein Überauflösungsmodul des künstlichen neuronalen Netzwerks wird auf Daten angewendet, die von dem Trainingsdatensatz abhängen, um eine Bilddarstellung des Bereichs von Interesse der Straßennutzer lenkenden Person zu erzeugen, wobei die Bilddarstellung eine gegenüber dem Trainingsbild erhöhte Auflösung hat. Eine Geste der Straßennutzer lenkenden Person wird abhängig von der Bilddarstellung identifiziert. Eine Verlustfunktion, insbesondere eine gemeinsame Verlustfunktion, zum Trainieren des künstlichen neuronalen Netzwerks wird abhängig von der Geste ausgewertet.According to a further aspect of the invention, a computer-implemented training method for training an artificial neural network for gesture recognition in road traffic is provided. A training image is obtained that depicts the surroundings of a motor vehicle. A trained artificial neural network detection module is applied to a training data set dependent on the training image to determine an area of interest of a driver in the training image. A super-resolution module of the artificial neural network is applied to data dependent on the training data set to generate an image representation of the area of interest of the driver, the image representation having increased resolution over the training image. A gesture by the person directing the road user is identified depending on the image representation. A loss function, in particular a common loss function, for training the artificial neural network is evaluated depending on the gesture.

Insbesondere können die beschriebenen Schritte des Trainingsverfahrens als ein Teil einer einzigen Trainingsepoche des Trainings betrachtet werden. Die Schritte können mehrmals für mehrere Trainingsepochen entsprechend wiederholt werden bis ein vorgegebenes Abbruchkriterium erfüllt ist und das künstliche neuronale Netzwerk als ausreichend trainiert betrachtet werden kann.In particular, the described steps of the training method can be viewed as part of a single training epoch of training. The steps can be repeated several times for several training epochs until a predetermined termination criterion is met and the artificial neural network can be considered sufficiently trained.

Insbesondere können für jede der Trainingsepochen die Schritte auch für eine Sequenz von Trainingsbildern wiederholt werden, insbesondere falls das Gestenerkennungsmodul des künstlichen neuronalen Netzwerks das RNN aufweist.In particular, the steps can also be repeated for a sequence of training images for each of the training epochs, in particular if the gesture recognition module of the artificial neural network has the RNN.

Insbesondere kann das künstliche neuronale Netzwerk auf Ende-zu-Ende-Weise basierend auf der gemeinsamen Verlustfunktion trainiert werden.In particular, the artificial neural network can be trained in an end-to-end manner based on the joint loss function.

Gemäß einigen Ausführungen des erfindungsgemäßen computerimplementierten Trainingsverfahrens wird ein Maskierungs-und-Vorhersage-Modul auf das Trainingsbild angewendet, um den Trainingsdatensatz zu erzeugen, wobei der Trainingsdatensatz einer modifizierten Version des Trainingsbilds entspricht, wobei der Bereich von Interesse der Straßennutzer lenkenden Person teilweise verdeckt ist, insbesondere künstlich verdeckt ist.According to some embodiments of the inventive computer-implemented training method, a masking and prediction module is applied to the training image to generate the training data set, the training data set corresponding to a modified version of the training image, wherein the area of interest of the person driving the road user is partially obscured, in particular is artificially covered.

Die Verdeckung kann zum Beispiel in zufälliger Weise mit einer bestimmten Wahrscheinlichkeit und/oder Form und/oder in einem bestimmten Ausmaß gemäß einem vorgegebenen Schwierigkeitsgrad ausgeführt werden. Je höher die Wahrscheinlichkeit für die Verdeckung oder je größer der verdeckte Teil des Bereichs von Interesse, desto größer ist der Schwierigkeitsgrad.For example, the occlusion may be performed in a random manner with a certain probability and/or shape and/or to a certain extent according to a given level of difficulty. The higher the probability of occlusion, or the larger the occluded portion of the area of interest, the greater the difficulty.

Auf diese Weise kann die Robustheit des trainierten künstlichen neuronalen Netzwerks erhöht werden, da nicht nur die ursprünglichen Trainingsbilder, sondern auch zumindest teilweise verdeckte Versionen des Trainingsbilds für das Training benutzt werden.In this way, the robustness of the trained artificial neural network can be increased since not only the original training images but also at least partially covered versions of the training image are used for the training.

Gemäß einigen Ausführungen wird der Schwierigkeitsgrad entsprechend einer Curriculum-Lernstrategie bestimmt, und ein Verdeckungsgrad und/oder eine Verdeckungswahrscheinlichkeit des Bereichs von Interesse der Straßennutzer lenkenden Person hängt von dem Schwierigkeitsgrad ab oder wird abhängig davon bestimmt.According to some implementations, the difficulty level is determined according to a curriculum learning strategy, and an occlusion level and/or a occlusion probability of the area of interest of the road user driver depends on or is determined dependent on the difficulty level.

Curriculum-Lernen kann als eine Trainingsstrategie betrachtet werden, die darauf abzielt, die Komplexität oder den Schwierigkeitsgrad der Daten, die dem künstlichen neuronalen Netzwerk als Trainingseingabe zugeführt werden, schrittweise zu erhöhen. Auf diese Weise können zuerst einfachere Objekte trainiert werden und der Objektschwierigkeitsgrad kann allmählich gesteigert werden. In Kombination mit der Maskierungs-und-Vorhersage-Strategie kann die Straßennutzer lenkende Person zunehmend maskiert werden.Curriculum learning can be viewed as a training strategy that aims to gradually increase the complexity or difficulty of the data fed to the artificial neural network as training input. In this way, simpler objects can be trained first and the object difficulty can be gradually increased. In combination with the masking-and-predicting strategy, the person driving the road user can be increasingly masked.

Gemäß einigen Ausführungen des erfindungsgemäßen computerimplementierten Verfahrens zur Gestenerkennung im Straßenverkehr, wobei das Detektionsmodul dazu benutzt wird, den Bereich von Interesse zu bestimmen, und/oder das Überauflösungsmodul dazu benutzt wird, die Überauflösungstechnik anzuwenden, wird oder wurde das künstliche neuronale Netzwerk unter Anwendung eines erfindungsgemäßen computerimplementierten Trainingsverfahrens trainiert.According to some embodiments of the computer-implemented method for traffic gesture recognition according to the invention, wherein the detection module is used to determine the area of interest and/or the super-resolution module is used to apply the super-resolution technique, the artificial neural network is or has been generated using an inventive computer-implemented training method.

Gemäß einem weiteren Aspekt der Erfindung wird ein Verfahren zum zumindest teilweise automatischen Führen eines Kraftfahrzeugs bereitgestellt. Dabei wird eine Vielzahl von Kamerabildern, die aufeinanderfolgenden Kamera-Frames entsprechen, unter Verwendung einer Kamera des Fahrzeugs erzeugt. Für jedes der Kamerabilder wird ein erfindungsgemäßes computerimplementiertes Verfahren zur Gestenerkennung von einer Recheneinheit des Kraftfahrzeugs ausgeführt. Das Kraftfahrzeug wird abhängig von der bestimmten Geste zumindest teilweise automatisch geführt.According to a further aspect of the invention, a method for at least partially automatically driving a motor vehicle is provided. In this case, a multiplicity of camera images, which correspond to successive camera frames, are generated using a camera of the vehicle. For each of the camera images, a computer-implemented method according to the invention for gesture recognition is executed by a computing unit of the motor vehicle. The motor vehicle is guided at least partially automatically depending on the specific gesture.

Insbesondere kann die zumindest eine Recheneinheit eine Verkehrsregel oder eine durch die identifizierte Geste encodierte Anweisung identifizieren, und das Kraftfahrzeug wird abhängig von der Verkehrsregel oder der Anweisung zumindest teilweise automatisch geführt.In particular, the at least one computing unit can identify a traffic rule or an instruction encoded by the identified gesture, and the motor vehicle is guided at least partially automatically depending on the traffic rule or the instruction.

Um das Kraftfahrzeug zumindest teilweise automatisch zu führen, kann die Recheneinheit oder eine weitere Recheneinheit des Kraftfahrzeugs oder eine Steuereinheit des Kraftfahrzeugs zum Beispiel jeweilige Steuersignale für einen oder mehrere Aktuatoren des Kraftfahrzeugs erzeugen, die eine Längssteuerung und/oder Quersteuerung des Kraftfahrzeugs auf automatisierte oder teilautomatisierte Weise basierend auf den Steuersignalen implementieren oder beeinflussen kann.In order to guide the motor vehicle at least partially automatically, the computing unit or another computing unit of the motor vehicle or a control unit of the motor vehicle can, for example, generate respective control signals for one or more actuators of the motor vehicle, which enable longitudinal control and/or lateral control of the motor vehicle in an automated or partially automated manner implement or influence based on the control signals.

Gemäß einem weiteren Aspekt der Erfindung wird ein Datenverarbeitungsgerät mit zumindest einem Prozessor bereitgestellt, der dazu eingerichtet ist, ein erfindungsgemäßes computerimplementiertes Verfahren oder ein computerimplementiertes Trainingsverfahren auszuführen.According to a further aspect of the invention, a data processing device with at least one processor is provided, which is set up to execute a computer-implemented method according to the invention or a computer-implemented training method.

Zum Beispiel kann die Recheneinheit des Kraftfahrzeugs einem derartigen Datenverarbeitungsgerät entsprechen, das dazu eingerichtet ist, ein erfindungsgemäßes computerimplementiertes Verfahren auszuführen.For example, the computing unit of the motor vehicle can correspond to such a data processing device that is set up to execute a computer-implemented method according to the invention.

Gemäß einem weiteren Aspekt der Erfindung wird ein elektronisches Fahrzeugführungssystem zum zumindest teilweise automatischen Führen eines Kraftfahrzeugs abhängig von einer Geste einer Straßennutzer lenkenden Person in der Umgebung des Kraftfahrzeugs bereitgestellt. Das elektronische Fahrzeugführungssystem weist eine Kamera auf, die dazu eingerichtet ist, eine Vielzahl von Kamerabildern zu erzeugen, die aufeinanderfolgenden Kamerabildern entsprechen, und eine Recheneinheit, die dazu eingerichtet ist, die Geste unter Ausführung eines erfindungsgemäßen computerimplementierten Verfahrens zur Gestenerkennung für jedes der Kamerabilder zu bestimmen.According to a further aspect of the invention, an electronic vehicle guidance system is provided for at least partially automatically guiding a motor vehicle depending on a gesture by a person steering the road user in the vicinity of the motor vehicle. The electronic vehicle guidance system has a camera that is set up to generate a large number of camera images that correspond to successive camera images, and a processing unit that is set up to determine the gesture by executing a computer-implemented method for gesture recognition according to the invention for each of the camera images .

Weitere Ausführungen des elektronischen Fahrzeugführungssystems ergeben sich unmittelbar aus den verschiedenen Ausführungen des erfindungsgemäßen Verfahrens zum zumindest teilweise automatischen Führen eines Kraftfahrzeugs und umgekehrt. Insbesondere kann ein erfindungsgemäßes elektronisches Fahrzeugführungssystem dazu eingerichtet oder programmiert sein, ein erfindungsgemäßes Verfahren auszuführen, oder führt ein derartiges Verfahren aus.Further versions of the electronic vehicle guidance system result directly from the various versions of the method according to the invention for at least partially automatically driving a motor vehicle and vice versa. In particular, an electronic vehicle guidance system according to the invention can be set up or programmed to carry out a method according to the invention, or carries out such a method.

Gemäß einigen Ausführungen wird ein Computerprogrammprodukt, welches Befehle beinhaltet, bereitgestellt. Wenn die Befehle von einem Datenverarbeitungsgerät ausgeführt werden, veranlassen die Befehle das Datenverarbeitungsgerät dazu, ein computerimplementiertes Verfahren oder ein computerimplementiertes Trainingsverfahren gemäß der Erfindung durchzuführen.According to some implementations, a computer program product including instructions is provided. If the commands from a data processing device, the instructions cause the data processing device to perform a computer-implemented method or a computer-implemented training method according to the invention.

Gemäß einem weiteren Aspekt der Erfindung wird ein computerlesbares Speichermedium bereitgestellt, welches ein erfindungsgemäßes Computerprogramm speichert.According to a further aspect of the invention, a computer-readable storage medium is provided which stores a computer program according to the invention.

Das Computerprogramm und das computerlesbare Speichermedium können als jeweiliges Befehle beinhaltendes Computerprogrammprodukt bezeichnet werden.The computer program and the computer-readable storage medium can be referred to as a computer program product containing respective instructions.

Unter einem elektronischen Fahrzeugführungssystem kann ein elektronisches System verstanden werden, das dazu eingerichtet ist, ein Fahrzeug vollautomatisch oder vollautonom zu führen, insbesondere ohne dass ein manueller Eingriff oder eine manuelle Steuerung durch einen Fahrer oder Nutzer des Fahrzeugs erforderlich ist. Das Fahrzeug führt alle erforderlichen Funktionen, wie Lenk, Brems- und/oder Beschleunigungsmanöver, sowie Beobachtung und Erfassung des Straßenverkehrs und entsprechende Reaktionen automatisch durch. Insbesondere kann das elektronische Fahrzeugführungssystem einen vollautomatischen oder vollautonomen Fahrmodus nach Stufe 5 der Klassifizierung gemäß SAE J3016 implementieren. Ein elektronisches Fahrzeugführungssystem kann auch als ein Fahrerassistenzsystem (englisch: „advanced driver assistance system“, ADAS) implementiert sein, welches den Fahrer beim teilweise automatisierten oder teilautonomen Fahren unterstützt. Insbesondere kann das elektronische Fahrzeugführungssystem einen teilweise automatisierten oder teilautonomen Fahrmodus nach den Stufen 1 bis 4 der Klassifizierung gemäß SAE J3016 implementieren. Hier und im Folgenden bezieht sich „SAE J3016“ auf die entsprechende Norm in der Version vom Juni 2018.An electronic vehicle guidance system can be understood to mean an electronic system that is set up to guide a vehicle fully automatically or fully autonomously, in particular without manual intervention or manual control by a driver or user of the vehicle being required. The vehicle automatically carries out all necessary functions such as steering, braking and/or acceleration manoeuvres, as well as monitoring and registering road traffic and responding accordingly. In particular, the electronic vehicle guidance system can implement a fully automatic or fully autonomous driving mode according to level 5 of the classification according to SAE J3016. An electronic vehicle guidance system can also be implemented as a driver assistance system (English: "advanced driver assistance system", ADAS), which supports the driver in partially automated or partially autonomous driving. In particular, the electronic vehicle guidance system can implement a partially automated or partially autonomous driving mode according to levels 1 to 4 of the SAE J3016 classification. Here and in the following, "SAE J3016" refers to the corresponding standard in the June 2018 version.

Die wenigstens teilweise automatische Fahrzeugführung kann es daher beinhalten, das Fahrzeug gemäß eines vollautomatischen oder vollautonomen Fahrmodus nach der Stufe 5 der Klassifizierung gemäß SAE J3016 zu führen. Die wenigstens teilweise automatische Fahrzeugführung kann es auch beinhalten, das Fahrzeug gemäß einem teilweise automatisierten oder teilautonomen Fahrmodus nach den Stufen 1 bis 4 der Klassifizierung gemäß SAE J3016 zu führen.The at least partially automatic vehicle guidance can therefore include driving the vehicle according to a fully automatic or fully autonomous driving mode according to level 5 of the classification according to SAE J3016. The at least partially automatic vehicle guidance may also include driving the vehicle according to a partially automated or partially autonomous driving mode according to levels 1 to 4 of the SAE J3016 classification.

Unter einem Modul oder Untermodul kann ein Teil eines Softwarecodes verstanden werden, der funktional verbunden und zu einer Einheit kombiniert ist und in computerlesbarer Weise auf einem computerlesbaren Speichermedium gespeichert ist. Ein Modul oder Untermodul kann mehrere Verarbeitungsschritte und/oder Datenstrukturen aufweisen oder implementieren.A module or sub-module may be understood to mean a piece of software code that is operably linked and combined into a unit and is stored in a computer-readable manner on a computer-readable storage medium. A module or sub-module may have or implement multiple processing steps and/or data structures.

Unter einer Recheneinheit kann insbesondere ein Datenverarbeitungsgerät verstanden werden, das einen Verarbeitungsschaltkreis aufweist. Die Recheneinheit kann daher insbesondere Daten zur Durchführung von Rechenoperationen verarbeiten. Darunter fallen auch Operationen, um indizierte Zugriffe auf eine Datenstruktur, beispielsweise eine Umsetzungstabelle, LUT (englisch: „look-up table“), durchzuführen.A computing unit can be understood in particular as a data processing device which has a processing circuit. The arithmetic unit can therefore, in particular, process data for carrying out arithmetic operations. This also includes operations to perform indexed accesses to a data structure, for example a look-up table (LUT).

Die Recheneinheit kann insbesondere einen oder mehrere Computer, einen oder mehrere Mikrocontroller und/oder einen oder mehrere integrierte Schaltkreise enthalten, beispielsweise eine oder mehrere anwendungsspezifische integrierte Schaltungen, ASIC (englisch: „application-specific integrated circuit“), eines oder mehrere feldprogrammierbare Gate Arrays, FPGA, und/oder eines oder mehrere Einchipsysteme, SoC (englisch: „system on a chip“). Die Recheneinheit kann auch einen oder mehrere Prozessoren, beispielsweise einen oder mehrere Mikroprozessoren, eine oder mehrere zentrale Prozessoreinheiten, CPU (englisch: „central processing unit“), eine oder mehrere Grafikprozessoreinheiten, GPU (englisch: „graphics processing unit“) und/oder einen oder mehrere Signalprozessoren, insbesondere einen oder mehrere digitale Signalprozessoren, DSP, enthalten. Die Recheneinheit kann auch einen physischen oder einen virtuellen Verbund von Computern oder sonstigen der genannten Einheiten beinhalten.In particular, the processing unit can contain one or more computers, one or more microcontrollers and/or one or more integrated circuits, for example one or more application-specific integrated circuits, ASICs (English: “application-specific integrated circuit”), one or more field-programmable gate arrays , FPGA, and/or one or more single-chip systems, SoC (English: "system on a chip"). The computing unit can also have one or more processors, for example one or more microprocessors, one or more central processing units, CPU, one or more graphics processor units, GPU and/or contain one or more signal processors, in particular one or more digital signal processors, DSP. The computing unit can also contain a physical or a virtual network of computers or other of the units mentioned.

In verschiedenen Ausführungsformen enthält die Recheneinheit eine oder mehrere Hardware- und/oder Softwareschnittstellen und/oder eine oder mehrere Speichereinheiten.In various embodiments, the computing unit contains one or more hardware and/or software interfaces and/or one or more memory units.

Eine Speichereinheit kann als flüchtiger Datenspeicher, beispielsweise als dynamischer Speicher mit wahlfreiem Zugriff, DRAM (englisch: „dynamic random access memory“) oder statischer Speicher mit wahlfreiem Zugriff, SRAM (englisch: „static random access memory“), oder als nicht-flüchtiger Datenspeicher, beispielsweise als Festwertspeicher, ROM (englisch: „read-only memory“), als programmierbarer Festwertspeicher, PROM (englisch: „programmable read-only memory“), als löschbarer Festwertspeicher, EPROM (englisch: „erasable read-only memory“), als elektrisch löschbarer Festwertspeicher, EEPROM (englisch: „electrically erasable read-only memory“), als Flash-Speicher oder Flash-EEPROM, als ferroelektrischer Speicher mit wahlfreiem Zugriff, FRAM (englisch: „ferroelectric random access memory“), als magnetoresistiver Speicher mit wahlfreiem Zugriff, MRAM (englisch: „magnetoresistive random access memory“) oder als Phasenänderungsspeicher mit wahlfreiem Zugriff, PCRAM (englisch: „phase-change random access memory“), ausgestaltet sein.A memory device can be configured as volatile data storage, such as dynamic random access memory (DRAM), or static random access memory (SRAM), or non-volatile Data memory, for example as a read-only memory, ROM, as a programmable read-only memory, PROM, as an erasable read-only memory, EPROM (erasable read-only memory) ), as electrically erasable read-only memory, EEPROM (English: "electrically erasable read-only memory"), as flash memory or flash EEPROM, as ferroelectric memory with random access, FRAM (English: "ferroelectric random access memory"), as magnetoresistive random access memory, MRAM or phase change random access memory Access, PCRAM (English: "phase-change random access memory"), be configured.

Weitere Merkmale der Erfindung ergeben sich aus den Ansprüchen, den Figuren und der Figurenbeschreibung. Die oben in der Beschreibung erwähnten Merkmale und Merkmalskombinationen sowie die unten in der Figurenbeschreibung erwähnten und/oder in den Figuren gezeigten Merkmale und Merkmalskombinationen können von der Erfindung nicht nur in der jeweils angegebenen Kombination, sondern auch in anderen Kombinationen umfasst sein. Insbesondere sind Ausführungsformen und Merkmalskombinationen, die nicht alle Merkmale eines ursprünglich formulierten Anspruchs aufweisen, auch von der Erfindung umfasst. Darüber hinaus sind Ausführungsformen und Merkmalskombinationen, die über die in den Rückbezügen der Ansprüche dargelegten Merkmalskombinationen hinausgehen oder von diesen abweichen, von der Erfindung umfasst.Further features of the invention result from the claims, the figures and the description of the figures. The features and combinations of features mentioned above in the description and the features and combinations of features mentioned below in the description of the figures and/or shown in the figures can be included in the invention not only in the combination specified in each case, but also in other combinations. In particular, embodiments and combinations of features that do not have all the features of an originally formulated claim are also covered by the invention. In addition, embodiments and combinations of features that go beyond or deviate from the combinations of features set out in the back references of the claims are encompassed by the invention.

In den Figuren zeigen

  • 1 schematisch eine Straßennutzer lenkende Person;
  • 2 schematisch eine weitere Straßennutzer lenkende Person;
  • 3 schematisch ein Kraftfahrzeug mit einer beispielhaften Ausführung eines erfindungsgemäßen elektronischen Fahrzeugführungssystems;
  • 4 schematisch ein trainiertes künstliches neuronales Netzwerk zur Verwendung in einer beispielhaften Ausführung des erfindungsgemäßen computerimplementierten Verfahrens zur Gestenerkennung;
  • 5 schematisch das Wirkungsprinzip eines Gestenerkennungsmoduls eines künstlichen neuronalen Netzwerks zur Verwendung in einer weiteren beispielhaften Ausführung eines erfindungsgemäßen computerimplementierten Verfahrens zur Gestenerkennung; und
  • 6 schematisch eine Architektur eines künstlichen neuronalen Netzwerks, das gemäß einer beispielhaften Ausführung eines erfindungsgemäßen computerimplementieren Trainingsverfahrens trainiert werden soll.
Show in the figures
  • 1 schematic of a person steering a road user;
  • 2 schematically another person directing road users;
  • 3 schematically a motor vehicle with an exemplary embodiment of an electronic vehicle guidance system according to the invention;
  • 4 schematically shows a trained artificial neural network for use in an exemplary embodiment of the computer-implemented method for gesture recognition according to the invention;
  • 5 schematically shows the operating principle of a gesture recognition module of an artificial neural network for use in a further exemplary embodiment of a computer-implemented method for gesture recognition according to the invention; and
  • 6 schematically shows an architecture of an artificial neural network that is to be trained according to an exemplary embodiment of a computer-implemented training method according to the invention.

Allgemeine Fußgängererkennung oder Personenidentifizierung in belebten Szenen sind gängige Probleme und werden bereits in der Literatur behandelt. Um jedoch autonome Fahrzeuge in einigen Bereichen funktionsfähig zu machen werden zu lassen, müssen Hersteller sicherstellen, dass das installierte System dazu in der Lage ist, Straßennutzer lenkende Personen 2, wie etwa Strafverfolgungsbeamte, beispielsweise Polizeibeamte, in Kamerabildern 1, wie in 1 und in 2 schematisch gezeigt, in den meisten oder allen Fällen einschließlich belebter Szenen zu identifizieren und zu erkennen, und den Anweisungen entsprechend zu folgen, indem sie ihre statischen oder dynamischen Gesten interpretieren.General pedestrian detection or person identification in busy scenes are common problems and are already addressed in the literature. However, in order to make autonomous vehicles workable in some areas, manufacturers need to ensure that the installed system is capable of showing road users driving persons 2, such as law enforcement officers, e.g. police officers, in camera images 1, as in 1 and in 2 shown schematically, to identify and recognize in most or all cases including animated scenes, and to follow the instructions accordingly by interpreting their static or dynamic gestures.

3 zeigt schematisch ein Kraftfahrzeug 15 mit einer beispielhaften Ausführung eines erfindungsgemäßen elektronischen Fahrzeugführungssystems 18. Das elektronische Fahrzeugführungssystem 18 weist eine Kamera 16 auf, zum Beispiel eine Frontkamera des Kraftfahrzeugs 15, die dazu eingerichtet ist, eine Vielzahl von Kamerabildern 1 zu erzeugen, die aufeinanderfolgenden Kamera-Frames entsprechen, und eine Recheneinheit 17, zum Beispiel eine oder mehrere elektronische Steuereinheiten, ECUs (englisch: electronic control unit), des Kraftfahrzeugs 15. Die Recheneinheit 17 ist dazu eingerichtet, die Geste einer Straßennutzer lenkenden Person 2 in den Kamerabildern 1 unter Ausführung eines erfindungsgemäßen computerimplementierten Verfahrens zur Gestenerkennung im Straßenverkehr für jedes der Kamerabilder 1 zu bestimmen. Mit anderen Worten kann das elektronische Fahrzeugführungssystem 18 ein Verfahren zum zumindest teilweise automatischen Führen des Kraftfahrzeugs 15 abhängig von der Geste der Straßennutzer lenkenden Person 2 ausführen. 3 shows schematically a motor vehicle 15 with an exemplary embodiment of an electronic vehicle guidance system 18 according to the invention. The electronic vehicle guidance system 18 has a camera 16, for example a front camera of the motor vehicle 15, which is set up to generate a large number of camera images 1, the successive camera Frames correspond, and a computing unit 17, for example one or more electronic control units, ECUs (English: electronic control unit), of the motor vehicle 15. The computing unit 17 is set up to the gesture of a road user directing person 2 in the camera images 1 by executing a to determine computer-implemented method according to the invention for gesture recognition in road traffic for each of the camera images 1. In other words, the electronic vehicle guidance system 18 can execute a method for at least partially automatically guiding the motor vehicle 15 depending on the gesture of the person 2 steering the road user.

Zu diesem Zweck speichert ein Speichergerät (nicht gezeigt) des elektronischen Fahrzeugführungssystems 18, zum Beispiel der Recheneinheit 17, ein trainiertes künstliches neuronales Netzwerk, ANN (englisch: artificial neural network), 3, das schematisch in 4 gezeigt ist und zum Beispiel unter Verwendung eines erfindungsgemäßen computerimplementierten Verfahrens trainiert sein kann.For this purpose, a memory device (not shown) of the electronic vehicle guidance system 18, for example the computing unit 17, stores a trained artificial neural network, ANN (English: artificial neural network), 3, which is shown schematically in 4 is shown and may be trained, for example, using a computer-implemented method according to the invention.

Das ANN 3 weist zum Beispiel ein Detektionsmodul 5 auf, das in manchen Ausführungen Teil eines Schlüsselpunkterkennungsmodells 4 sein kann. Das Detektionsmodul 5 empfängt das Kamerabild 1 eines gegebenen Kamera-Frames als eine Eingabe und bestimmt einen Bereich von Interesse, ROI (englisch: region of interest), der Straßennutzer lenkenden Person 2 in dem Kamerabild 1. Das ANN 3 weist des Weiteren ein Überauflösungsmodul 6 auf, zum Beispiel als einen Teil des Schlüsselpunkterkennungsmodells 4. Das Überauflösungsmodul 6 empfängt Ausgabedaten des Detektionsmoduls 5 und wendet eine Überauflösungstechnik an, um eine Bilddarstellung des ROI der Straßennutzer lenkenden Person 2 zu erzeugen, wobei die Bilddarstellung eine gegenüber dem ursprünglichen Kamerabild 1 verbesserte Auflösung hat.The ANN 3 comprises, for example, a detection module 5 which may be part of a key point detection model 4 in some implementations. The detection module 5 receives the camera image 1 of a given camera frame as an input and determines a region of interest, ROI (region of interest), of the person directing the road user 2 in the camera image 1. The ANN 3 further has a super-resolution module 6 on, for example as part of the key point detection model 4. The super-resolution module 6 receives output data from the detection module 5 and applies a super-resolution technique to generate an image representation of the ROI of the road user directing person 2, the image representation having an improved resolution compared to the original camera image 1 .

Die Bildüberauflösung ist ein Prozess, bei dem Bilder mit hoher Auflösung aus Bildern mit niedriger Auflösung wiederhergestellt werden. Mit Fortschritten bei den Deep-Learning-Techniken wurden Deep-Learning-basierte Überauflösungsmodelle aktiv erforscht und erzielen häufig sehr gute Leistungen bei verschiedenen Benchmark-Tests zur Überauflösung. Verschiedene Deep-Learning-Verfahren sind zur Lösung von Überauflösungsaufgaben angewendet worden, die von Verfahren basierend auf faltenden neuronalen Netzwerken, CNN (englisch: convolutional neural network), bis zu Ansätzen basierend auf generativen adversen Netzwerken, GAN (englisch; generative adversarial network), reichen. Zur Anwendung der Überauflösungstechniken kann man die Eingabe einem Upsampling unterziehen. Im Allgemeinen gibt es zwei Ansätze zur Anwendung von Upsampling: Überauflösung vor dem Upsampling und Überauflösung nach dem Upsampling. Es gibt mehrere klassische Upsampling-Techniken einschließlich zum Beispiel interpolationsbasierter Verfahren. Um die Nachteile von interpolationsbasierten Verfahren, wie etwa Komplexität, Rauschverstärkung, unscharfe Ergebnisse et cetera zu überwinden und um Upsampling auf eine Ende-zu-Ende-Weise zu lernen, können transponierte faltende Schichten und Subpixelschichten verwendet werden.Image superresolution is a process of restoring high resolution images from low resolution images. With cont As deep learning techniques have advanced, deep learning-based super-resolution models have been actively explored and often perform very well on various super-resolution benchmark tests. Various deep learning methods have been applied to solve super-resolution problems, ranging from methods based on convolutional neural networks (CNN) to approaches based on generative adverse networks (GAN) are sufficient. To apply super-resolution techniques, the input can be upsampled. In general, there are two approaches to applying upsampling: oversampling before upsampling and oversampling after upsampling. There are several classic upsampling techniques including, for example, interpolation-based methods. To overcome the disadvantages of interpolation-based methods, such as complexity, noise amplification, fuzzy results et cetera, and to learn upsampling in an end-to-end manner, transposed convolutional layers and sub-pixel layers can be used.

Das ANN 3 kann auch ein Posenschätzmodul 11 aufweisen, zum Beispiel als ein Teil des Schlüsselpunkterkennungsmodells 4. Das Posenschätzmodul 11 kann die Bilddarstellung mit erhöhter Auflösung als Eingabe empfangen und eine gegenwärtige Pose der Straßennutzer lenkenden Person 2 als Ausgabe bestimmen.The ANN 3 may also include a pose estimation module 11, for example as part of the key point detection model 4. The pose estimation module 11 may receive the enhanced resolution image representation as input and determine a current pose of the road user driver 2 as output.

Um die Gestensignale der Straßennutzer lenkenden Person 2 zu identifizieren, kann das Posenschätzmodul 11 zum Beispiel charakteristische Schlüsselpunkte identifizieren, wie etwa die Hände und das Gesicht der Straßennutzer lenkenden Person 2. Basierend auf den Positionen der Schlüsselpunkte kann es sein, dass das Modell gelernt hat, die von der Straßennutzer lenkenden Person 2 gemachte Geste zu identifizieren und auch zu bestimmen, ob das gegebene Signal für das Kraftfahrzeug 15 oder für einen anderen Straßennutzer gedacht ist. In dem Schlüsselpunkterkennungsmodell 4 können Netzwerke zum Schätzen menschlicher Posen aus dem Stand der Technik dazu benutzt werden, unterschiedliche Posen zu lernen und zu identifizieren und die Gesten entsprechend zu lernen.For example, to identify the gesture signals of the driver 2, the pose estimation module 11 may identify characteristic key points, such as the hands and face of the driver 2. Based on the positions of the key points, the model may have learned to identify the gesture made by the person 2 driving the road user and also to determine whether the signal given is intended for the motor vehicle 15 or for another road user. In the key point recognition model 4, prior art human pose estimation networks can be used to learn and identify different poses and learn the gestures accordingly.

Das ANN 3 kann auch ein Gestenerkennungsmodul aufweisen, zum Beispiel zusätzlich zu dem Schlüsselpunkterkennungsmodell 4, welches ein Gestenvalidierungsuntermodul 12 und ein langes Kurzzeitgedächtnis, LSTM, 13 enthalten kann. Das Gestenvalidierungsuntermodul 12 wird auf Eingabedaten angewendet, die die Ausgabe des Posenschätzmoduls 11 enthalten, und das LSTM 13 empfängt eine jeweilige Ausgabe des Gestenvalidierungsuntermoduls 12. Eine Ausgabe des LSTM 13 wird an das Gestenvalidierungsuntermodul 12 als ein Teil der Eingabedaten rückgekoppelt.The ANN 3 may also comprise a gesture recognition module, for example in addition to the key point recognition model 4, which may contain a gesture validation sub-module 12 and a long short-term memory, LSTM, 13. The gesture validation sub-module 12 is applied to input data containing the output of the pose estimation module 11, and the LSTM 13 receives a respective output of the gesture validation sub-module 12. An output of the LSTM 13 is fed back to the gesture validation sub-module 12 as part of the input data.

Die von der Straßennutzer lenkenden Person 2 gemachte Geste kann unterschiedlicher Art sein mit unterschiedlichen Bedeutungen. Das Gestensignal für Verkehrskontrollen kann auch von Land zu Land variieren. Manche Gestensignale können mit bewegten Händen und mit unterschiedlichen Bewegungen ausgeführt werden und können daher nicht notwendigerweise zuverlässig innerhalb eines einzigen Kamera-Frames bestimmt werden. So kann es sein, dass das Erkennen dieser Arten von Gesten sich die Eingabe aus vorherigen Kamera-Frames zunutze macht. Das Gestenvalidierungsuntermodul 12 hat somit die Rückkopplungsverbindung aus den vorherigen Kamera-Frames, um alle Arten von Gesten zu bestimmen und zu lernen. Diese Rückkopplungsverbindungen kommen aus dem LSTM 13, das für das Lernen der vorherigen Frame-Abhängigkeiten verantwortlich ist.The gesture made by the person 2 directing the road user can be of different types with different meanings. The traffic control gesture signal may also vary from country to country. Some gesture signals can be performed with moving hands and with different movements and therefore cannot necessarily be reliably determined within a single camera frame. Thus, recognizing these types of gestures may leverage input from previous camera frames. The gesture validation sub-module 12 thus has the feedback link from the previous camera frames to determine and learn all types of gestures. These feedback connections come from the LSTM 13 which is responsible for learning the previous frame dependencies.

LSTM-Netzwerke sind eine Art von rekurrenten neuronalen Netzwerken, RNN, die dazu in der Lage sind, Abhängigkeiten von der Reihenfolge bei Sequenzvorhersageproblemen zu lernen. RNN unterscheiden sich von traditionellen vorwärtskoppelnden neuronalen Netzwerken. Anstatt nur Eingabedaten zuzuführen, nimmt es auch die vorherige historische Information, um das nächste Ergebnis in der Sequenz vorherzusagen. Das LSTM 13 ist dazu in der Lage, langfristige Abhängigkeiten zu lernen.LSTM networks are a type of recurrent neural networks, RNN, capable of learning order dependencies in sequence prediction problems. RNN differ from traditional feedforward neural networks. Rather than just feeding in input data, it also takes previous historical information to predict the next outcome in the sequence. The LSTM 13 is able to learn long-term dependencies.

In 5 wird das Arbeitsprinzip des LSTM 13 erklärt. Für unterschiedliche Kamera-Frames oder Zeitstempel ti, mit beispielsweise i = 1 ..3, hat man die Rückkoppelung der vorhergehenden Zeitstempel ti-1., die aus dem LSTM 13 kommen, an das Gestenvalidierungsuntermodul 12. Das Gestenvalidierungsuntermodul 12 kann die Signale basierend auf den Informationen des gegenwärtigen Frames und den Informationen der vorherigen Frames bestimmen.In 5 the working principle of the LSTM 13 is explained. For different camera frames or timestamps ti, with i=1 ..3 for example, one has the feedback of the previous timestamps t i-1 ., coming from the LSTM 13, to the gesture validation sub-module 12. The gesture validation sub-module 12 can base the signals based on the information of the current frame and the information of the previous frames.

Das ANN 3 kann auf Ende-zu-Ende-Weise trainiert werden, zum Beispiel unter Verwendung eines erfindungsgemäßen computerimplementierten Trainingsverfahrens, wie schematisch in 6 gezeigt.The ANN 3 can be trained in an end-to-end manner, for example using a computer-implemented training method according to the invention, as schematically illustrated in FIG 6 shown.

Zum Beispiel kann eine Curriculum-Lernstrategie dazu benutzt werden, das ANN 3 zu trainieren. Curriculum-Lernen ist ein Trainingsverfahren, das darauf abzielt, die Komplexität der dem Eingang des ANN 3 zugeführten Daten allmählich zu steigern. Der zentrale Gedanke ist es, zuerst unter Verwendung einfacher Objekte zu trainieren und allmählich den Schwierigkeitsgrad der Objekte zu erhöhen. In den meisten realen Szenarien sind die Objekte durch andere Objekte zumindest teilweise verdeckt, was zu falschen Vorhersagen führen kann. Um diesem Problem zu begegnen, kann das Training eine Maskierungs-und-Vorhersage-Strategie einsetzen. Maskierung-und-Vorhersage ist eine bestimmte Strategie, die zum Beispiel in Verbindung mit Curriculum-Lernen verwendet werden kann. Dabei kann die Straßennutzer lenkende Person 2 mittels eines Maskierungs-und-Vorhersage-Moduls 14 zunehmend maskiert werden, und das ANN soll Begrenzungsboxen sichtbarer Bereiche und maskierter Bereiche vorhersagen.For example, a curriculum learning strategy can be used to train the ANN3. Curriculum learning is a training method that aims to gradually increase the complexity of the data fed to the ANN 3 input. The central idea is to train using simple objects first and gradually increase the difficulty of the objects. In In most real-world scenarios, the objects are at least partially obscured by other objects, which can lead to incorrect predictions. To address this problem, training can employ a masking-and-prediction strategy. Masking-and-prediction is a particular strategy that can be used in connection with curriculum learning, for example. Here, the person 2 driving the road user can be increasingly masked by means of a masking and prediction module 14, and the ANN is intended to predict bounding boxes of visible areas and masked areas.

Das maskierte Bild kann zur Merkmalsextraktion an ein Encoderuntermodul 9 des Fußgängererkennungsuntermoduls 7 weitergeleitet werden. Bekannte Encoder-Architekturen mit tiefem neuronalen Netzwerk, zum Beispiel ResNet oder VGG, können verwendet werden. Die extrahierten Merkmale werden dann an mehrere Faltungsschichten 10 weitergeleitet, die für das Erkennen aller Fußgänger im Sichtfeld der Kamera 16 verantwortlich sind. Ein Klassifizierungsuntermodul 8 des Detektionsmoduls 5 kann die erkannten Fußgänger klassifizieren und den ROI der Straßennutzer lenkenden Person 2 in der Szene herausfiltern.The masked image can be passed to an encoder sub-module 9 of the pedestrian detection sub-module 7 for feature extraction. Known deep neural network encoder architectures, for example ResNet or VGG, can be used. The extracted features are then passed to multiple convolution layers 10 which are responsible for detecting all pedestrians in the camera 16 field of view. A classification sub-module 8 of the detection module 5 can classify the detected pedestrians and filter out the ROI of the person 2 directing road users in the scene.

Der ROI der Straßennutzer lenkenden Person 2 wird dann an das Überauflösungsmodul 6 weitergeleitet, welches für die Erhöhung der Qualität und Auflösung des ROI der Straßennutzer lenkenden Person 2 verantwortlich ist. Der verbesserte ROI wird dann an das Posenschätzmodul 11 weitergeleitet, welches für das Erkennen der Schlüsselpunkte verantwortlich ist und dafür, basierend auf diesen Schlüsselpunkten die Pose der Straßennutzer lenkenden Person 2 zu schätzen, zum Beispiel die relativen Positionen der Hände und die Gesichtsorientierung. Die Pose wird dazu verwendet, die Art der Gesten zu erkennen, die die Straßennutzer lenkende Person 2 zu machen versucht. Nach der Posenschätzung werden die extrahierten Informationen an das Gestenvalidierungsuntermodul 12 weitergeleitet. Dieses Modul bestimmt schließlich die Art der Gesten, die von der Straßennutzer lenkenden Person 2 gemacht werden. Für manche der Gesten ist ein Bewegen der Hände oder die Ausführung einer anderen Art von Bewegung erforderlich. Diese Art von Gesten zu erkennen, kann die Informationen aus vorherigen Frames erfordern, was mittels des LSTM 13 erreicht wird, welches die historischen Informationen zu der Szene berücksichtigt.The ROI of the person 2 driving the road user is then forwarded to the super-resolution module 6, which is responsible for increasing the quality and resolution of the ROI of the person 2 driving the road user. The improved ROI is then forwarded to the pose estimation module 11 which is responsible for recognizing the key points and for estimating the pose of the driver 2 based on these key points, for example the relative positions of the hands and the face orientation. The pose is used to recognize the type of gestures that the driver 2 is trying to make. After the pose estimation, the extracted information is passed to the gesture validation sub-module 12 . This module finally determines the type of gestures made by the person 2 directing the road user. Some of the gestures require moving the hands or performing some other type of movement. Recognizing this type of gesture may require the information from previous frames, which is achieved using the LSTM 13, which takes into account the historical information about the scene.

Die Erklärungen hinsichtlich des erfindungsgemäßen computerimplementierten Trainingsverfahrens lassen sich analog auf das erfindungsgemäße computerimplementierte Verfahren zur Gestenerkennung übertragen, mit der Ausnahme, dass das Maskierungs-und-Vorhersage-Modul 14 nach abgeschlossenem Training nicht mehr erforderlich ist.The explanations regarding the computer-implemented training method according to the invention can be transferred analogously to the computer-implemented method for gesture recognition according to the invention, with the exception that the masking and prediction module 14 is no longer required after the training has been completed.

Claims (15)

Computerimplementiertes Verfahren zur Gestenerkennung im Straßenverkehr, wobei ein Kamerabild (1) erhalten wird, welches eine Umgebung eines Kraftfahrzeugs (15) abbildet, dadurch gekennzeichnet, dass - ein Bereich von Interesse einer Straßennutzer lenkenden Person (2) in dem Kamerabild (1) bestimmt wird; - eine Überauflösungstechnik auf Daten angewendet wird, die von dem Kamerabild (1) abhängen, um eine Bilddarstellung des Bereichs von Interesse der Straßennutzer lenkenden Person (2) zu erzeugen, wobei die Bilddarstellung eine gegenüber dem Kamerabild (1) erhöhte Auflösung hat; und - eine Geste der Straßennutzer lenkenden Person (2) abhängig von der Bilddarstellung identifiziert wird.Computer-implemented method for recognizing gestures in road traffic, a camera image (1) being obtained which depicts the surroundings of a motor vehicle (15), characterized in that - an area of interest of a person (2) steering the road user is determined in the camera image (1). ; - applying a super-resolution technique to data dependent on the camera image (1) to generate an image representation of the area of interest of the person driving the road user (2), the image representation having an increased resolution compared to the camera image (1); and - a gesture by the person (2) directing the road user is identified as a function of the image representation. Computerimplementiertes Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass - ein Detektionsmodul (5) eines trainierten künstlichen neuronalen Netzwerks (3) auf das Kamerabild (1) angewendet wird, um den Bereich von Interesse der Straßennutzer lenkenden Person (2) in dem Kamerabild (1) zu bestimmen; und/oder - ein Überauflösungsmodul (6) des künstlichen neuronalen Netzwerks (3) auf die Daten angewendet wird, die von dem Kamerabild (1) abhängen, um die Überauflösungstechnik anzuwenden.Computer-implemented method claim 1 , characterized in that - a detection module (5) of a trained artificial neural network (3) is applied to the camera image (1) in order to determine the area of interest of the person (2) directing the road user in the camera image (1); and/or - a super-resolution module (6) of the artificial neural network (3) is applied to the data dependent on the camera image (1) in order to apply the super-resolution technique. Computerimplementiertes Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass - ein Fußgängererkennungsuntermodul (7) des Detektionsmoduls (5) auf das Kamerabild (1) angewendet wird, um Zwischendaten zu erzeugen, die einen jeweiligen Bereich von Interesse für jeden von einem oder mehreren Fußgängern in dem Kamerabild (1) beschreiben; und - ein Klassifizierungsuntermodul (8) des Detektionsmoduls (5) auf die Zwischendaten angewendet wird, um einen des einen oder der mehreren Fußgänger als die Straßennutzer lenkende Person (2) zu klassifizieren.Computer-implemented method claim 2 , characterized in that - a pedestrian detection sub-module (7) of the detection module (5) is applied to the camera image (1) to generate intermediate data describing a respective area of interest for each of one or more pedestrians in the camera image (1). ; and - a classification sub-module (8) of the detection module (5) is applied to the intermediate data to classify one of the one or more pedestrians as the person (2) driving the road user. Computerimplementiertes Verfahren nach einem der Ansprüche 2 oder 3, dadurch gekennzeichnet, dass - eine gegenwärtige Pose der Straßennutzer lenkenden Person (2) basierend auf der Bilddarstellung bestimmt wird, insbesondere unter Anwendung eines Posenschätzmoduls (11) des künstlichen neuronalen Netzwerks (3) auf die Bilddarstellung; und - die Geste der Straßennutzer lenkenden Person (2) abhängig von der gegenwärtigen Pose identifiziert wird.Computer-implemented method according to one of claims 2 or 3 , characterized in that - a current pose of the person (2) driving the road user is determined based on the image representation, in particular using a pose estimation module (11) of the artificial neural network (3) on the image representation; and - the gesture of the person (2) driving the road user is identified depending on the current pose. Computerimplementiertes Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass ein Gestenerkennungsmodul (12, 13) des künstlichen neuronalen Netzwerks (3) auf Eingabedaten angewendet wird, die die gegenwärtige Pose enthalten, um die Geste der Straßennutzer lenkenden Person (2) zu identifizieren.Computer-implemented method claim 4 , characterized in that a gesture recognition module (12, 13) of the artificial neural network (3) is applied to input data containing the current pose to identify the gesture of the person (2) driving the road user. Computerimplementiertes Verfahren nach Anspruch 5, dadurch gekennzeichnet, dass - das Gestenerkennungsmodul (12, 13) ein Gestenvalidierungsuntermodul (12) und ein rekurrentes neuronales Netzwerk (13) aufweist; - das Gestenvalidierungsuntermodul (12) auf die Eingabedaten angewendet wird und das rekurrente neuronale Netzwerk (13) auf eine Ausgabe des Gestenvalidierungsuntermoduls (12) angewendet wird; - eine Ausgabe des rekurrenten neuronalen Netzwerks (13) als ein Teil der Eingabedaten an das Gestenvalidierungsuntermodul (12) rückgekoppelt wird; und - die Geste basierend auf der Ausgabe des rekurrenten neuronalen Netzwerks (13) identifiziert wird.Computer-implemented method claim 5 , characterized in that - the gesture recognition module (12, 13) comprises a gesture validation sub-module (12) and a recurrent neural network (13); - the gesture validation sub-module (12) is applied to the input data and the recurrent neural network (13) is applied to an output of the gesture validation sub-module (12); - an output of the recurrent neural network (13) is fed back to the gesture validation sub-module (12) as part of the input data; and - the gesture is identified based on the output of the recurrent neural network (13). Computerimplementiertes Verfahren nach einem der Ansprüche 2 bis 6, dadurch gekennzeichnet, dass das Überauflösungsmodul (6) eine transponierte Faltungsschicht und/oder eine Subpixelschicht aufweist.Computer-implemented method according to one of claims 2 until 6 , characterized in that the super-resolution module (6) has a transposed convolution layer and/or a sub-pixel layer. Computerimplementiertes Trainingsverfahren zum Trainieren eines künstlichen neuronalen Netzwerks (3) zur Gestenerkennung im Straßenverkehr, wobei ein Trainingsbild erhalten wird, welches eine Umgebung eines Kraftfahrzeugs (15) abbildet, dadurch gekennzeichnet, dass - ein Detektionsmodul (5) eines trainierten künstlichen neuronalen Netzwerks (3) auf einen Trainingsdatensatz angewendet wird, der von dem Trainingsbild abhängt, um einen Bereich von Interesse einer Straßennutzer lenkenden Person (2) in dem Trainingsbild zu bestimmen; - ein Überauflösungsmodul (6) des künstlichen neuronalen Netzwerks (3) auf Daten angewendet wird, die von dem Trainingsdatensatz abhängen, um eine Bilddarstellung des Bereichs von Interesse der Straßennutzer lenkenden Person (2) zu erzeugen, wobei die Bilddarstellung eine gegenüber dem Trainingsbild erhöhte Auflösung hat; - eine Geste der Straßennutzer lenkenden Person (2) abhängig von der Bilddarstellung identifiziert wird; - eine Verlustfunktion zum Trainieren des künstlichen neuronalen Netzwerks (3) abhängig von der Geste ausgewertet wird.Computer-implemented training method for training an artificial neural network (3) for gesture recognition in road traffic, a training image being obtained which depicts the surroundings of a motor vehicle (15), characterized in that - a detection module (5) of a trained artificial neural network (3) is applied to a training data set dependent on the training image to determine an area of interest of a person driving the road user (2) in the training image; - a super-resolution module (6) of the artificial neural network (3) is applied to data dependent on the training data set in order to generate an image representation of the area of interest of the person (2) directing the road user, the image representation having an increased resolution compared to the training image has; - a gesture by the person (2) directing the road user is identified as a function of the image representation; - a loss function for training the artificial neural network (3) is evaluated depending on the gesture. Computerimplementiertes Trainingsverfahren nach Anspruch 8, dadurch gekennzeichnet, dass ein Maskierungs-und-Vorhersage-Modul (14) auf das Trainingsbild angewendet wird, um den Trainingsdatensatz zu erzeugen, wobei der Trainingsdatensatz einer modifizierten Version des Trainingsbilds entspricht, wobei der Bereich von Interesse der Straßennutzer lenkenden Person (2) teilweise verdeckt ist.Computer-implemented training method claim 8 , characterized in that a masking and prediction module (14) is applied to the training image to generate the training data set, the training data set corresponding to a modified version of the training image, the area of interest of the person directing the road user (2) is partially covered. Computerimplementiertes Trainingsverfahren nach einem der Ansprüche 8 oder 9, dadurch gekennzeichnet, dass - ein Schwierigkeitsgrad gemäß einer Curriculum-Lernstrategie bestimmt wird; und - ein Verdeckungsgrad und/oder eine Verdeckungswahrscheinlichkeit des Bereichs von Interesse der Straßennutzer lenkenden Person (2) von dem Schwierigkeitsgrad abhängt.Computer-implemented training method according to one of the Claims 8 or 9 , characterized in that - a degree of difficulty is determined according to a curriculum learning strategy; and - a degree of concealment and/or a probability of concealment of the area of interest of the person (2) directing the road user depends on the degree of difficulty. Computerimplementiertes Verfahren nach einem der Ansprüche 2 bis 7, dadurch gekennzeichnet, dass das künstliche neuronale Netzwerk (3) unter Anwendung eines computerimplementierten Trainingsverfahrens nach einem der Ansprüche 8 bis 10 trainiert wird.Computer-implemented method according to one of claims 2 until 7 , characterized in that the artificial neural network (3) using a computer-implemented training method according to one of Claims 8 until 10 is trained. Verfahren zum zumindest teilweise automatischen Führen eines Kraftfahrzeugs (15), wobei - eine Vielzahl von Kamerabildern (1), die aufeinanderfolgenden Kamera-Frames entsprechen, unter Verwendung einer Kamera (16) des Kraftfahrzeugs (15) erzeugt wird; - für jedes der Kamerabilder (1) ein computerimplementiertes Verfahren nach einem der Ansprüche 1 bis 7 oder 11 von einer Recheneinheit (17) des Kraftfahrzeugs (15) ausgeführt wird; und - das Kraftfahrzeug (15) abhängig von der Geste zumindest teilweise automatisch geführt wird.A method for at least partially automatically driving a motor vehicle (15), wherein - a multiplicity of camera images (1), which correspond to successive camera frames, are generated using a camera (16) of the motor vehicle (15); - For each of the camera images (1), a computer-implemented method according to one of Claims 1 until 7 or 11 is executed by a computing unit (17) of the motor vehicle (15); and - the motor vehicle (15) is guided at least partially automatically as a function of the gesture. Datenverarbeitungsgerät aufweisend zumindest einen Prozessor, der dazu eingerichtet ist, ein computerimplementiertes Verfahren nach einem der Ansprüche 1 bis 7 oder 11 auszuführen oder ein computerimplementiertes Trainingsverfahren nach einem der Ansprüche 8 bis 10 auszuführen.Data processing device having at least one processor which is set up to execute a computer-implemented method according to one of Claims 1 until 7 or 11 execute or a computer-implemented training method according to one of Claims 8 until 10 to execute. Elektronisches Fahrzeugführungssystem (18) zum zumindest teilweise automatischen Führen eines Kraftfahrzeugs (15) abhängig von einer Geste einer Straßennutzer lenkenden Person (2) in einer Umgebung eines Kraftfahrzeugs (15), wobei das elektronische Fahrzeugführungssystem (18) - eine Kamera (16) aufweist, die dazu eingerichtet ist, eine Vielzahl von Kamerabildern (1) zu erzeugen, die aufeinanderfolgenden Kamera-Frames entsprechen; und - eine Recheneinheit (17) aufweist, die dazu eingerichtet ist, durch Ausführen eines computerimplementierten Verfahrens nach einem der Ansprüche 1 bis 7 oder 11 für jedes der Kamerabilder (1) die Geste zu bestimmen.Electronic vehicle guidance system (18) for at least partially automatically driving a motor vehicle (15) depending on a gesture by a person (2) steering a road user in the vicinity of a motor vehicle (15), wherein the electronic vehicle guidance system (18) - has a camera (16), arranged to generate a plurality of camera images (1) corresponding to consecutive camera frames; and - a computing unit (17) which is set up to, by executing a computer-implemented method according to one of Claims 1 until 7 or 11 to determine the gesture for each of the camera images (1). Computerprogrammprodukt, welches Befehle beinhaltet, die, wenn sie von einem Datenverarbeitungsgerät ausgeführt werden, das Datenverarbeitungsgerät dazu veranlassen, ein computerimplementiertes Verfahren nach einem der Ansprüche 1 bis 7 oder 11 auszuführen oder ein computerimplementiertes Trainingsverfahren nach einem der Ansprüche 8 bis 10 durchzuführen.Computer program product, which contains instructions which, when executed by a data processing device, cause the data processing device to carry out a computer-implemented method according to one of Claims 1 until 7 or 11 execute or a computer-implemented training method according to one of Claims 8 until 10 to perform.
DE102021131930.7A 2021-12-03 2021-12-03 Gesture recognition in traffic Pending DE102021131930A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102021131930.7A DE102021131930A1 (en) 2021-12-03 2021-12-03 Gesture recognition in traffic

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102021131930.7A DE102021131930A1 (en) 2021-12-03 2021-12-03 Gesture recognition in traffic

Publications (1)

Publication Number Publication Date
DE102021131930A1 true DE102021131930A1 (en) 2023-06-07

Family

ID=86382278

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021131930.7A Pending DE102021131930A1 (en) 2021-12-03 2021-12-03 Gesture recognition in traffic

Country Status (1)

Country Link
DE (1) DE102021131930A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102015204528A1 (en) 2015-03-13 2016-09-15 Bayerische Motoren Werke Aktiengesellschaft Device and method for object recognition in a means of transportation
DE102018213600A1 (en) 2018-08-13 2020-02-13 Conti Temic Microelectronic Gmbh - gesture recognition device for a vehicle -
DE102019209560A1 (en) 2019-06-28 2020-12-31 Robert Bosch Gmbh Apparatus and method for training a neural network
DE112019006666T5 (en) 2019-01-15 2021-11-04 Google Llc Determination of areas of interest for photographic functions

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102015204528A1 (en) 2015-03-13 2016-09-15 Bayerische Motoren Werke Aktiengesellschaft Device and method for object recognition in a means of transportation
DE102018213600A1 (en) 2018-08-13 2020-02-13 Conti Temic Microelectronic Gmbh - gesture recognition device for a vehicle -
DE112019006666T5 (en) 2019-01-15 2021-11-04 Google Llc Determination of areas of interest for photographic functions
DE102019209560A1 (en) 2019-06-28 2020-12-31 Robert Bosch Gmbh Apparatus and method for training a neural network

Similar Documents

Publication Publication Date Title
DE102019008142A1 (en) Learning of representations using common semantic vectors
EP3466239A1 (en) Method for operating a self-propelled agricultural working machine
EP3765927B1 (en) Method for generating a training data record for training an artificial intelligence module for a control device of a vehicle
DE112011105445B4 (en) Red-eye detection device
WO2018158020A1 (en) Method and device for determining a trajectory in off-road scenarios
DE112020000448T5 (en) CAMERA SELF CALIBRATION NETWORK
DE112020005584T5 (en) Occlusion-aware interior scene analysis
DE102018008685A1 (en) Method for training an artificial neural network, artificial neural network, use of an artificial neural network and corresponding computer program, machine-readable storage medium and corresponding device
DE102019209457A1 (en) Method for training an artificial neural network, artificial neural network, use of an artificial neural network and a corresponding computer program, machine-readable storage medium and corresponding device
DE102021207505A1 (en) Method for training a deep neural network
DE102020200503A1 (en) Method for generating labeled data, in particular for training a neural network, by improving initial labels
EP3748454A1 (en) Method and device for automatically executing a control function of a vehicle
DE102019209463A1 (en) Method for determining the trust value of an object of a class
DE102021131930A1 (en) Gesture recognition in traffic
EP3876157B1 (en) Computer-implemented method and system for generating synthetic sensor data and training method
DE102020128952A1 (en) Method and assistance device for two-stage image-based scene recognition and motor vehicle
DE102020122979A1 (en) Method for providing a compressed, robust neural network and assistance device
DE102020126690A1 (en) Method for determining a movement model of an object in an area surrounding a motor vehicle, computer program product, computer-readable storage medium and assistance system
DE102019215120A1 (en) Method and device for classifying sensor data and for determining a control signal for controlling an actuator
DE102022121839A1 (en) Text recognition based on a recorded camera image
DE102021100940A1 (en) Reconstructing the environment of an environment sensor system
DE102018217219B4 (en) Method for determining a three-dimensional position of an object
DE102021115251A1 (en) Generating an input image for a computer vision algorithm
DE102021118664A1 (en) Reducing adverse environmental influences in a camera image
DE102021118694A1 (en) Pursuing an emergency vehicle

Legal Events

Date Code Title Description
R163 Identified publications notified