DE112022002520T5 - Verfahren zur automatischen Kalibrierung von Kameras und Erstellung von Karten - Google Patents

Verfahren zur automatischen Kalibrierung von Kameras und Erstellung von Karten Download PDF

Info

Publication number
DE112022002520T5
DE112022002520T5 DE112022002520.4T DE112022002520T DE112022002520T5 DE 112022002520 T5 DE112022002520 T5 DE 112022002520T5 DE 112022002520 T DE112022002520 T DE 112022002520T DE 112022002520 T5 DE112022002520 T5 DE 112022002520T5
Authority
DE
Germany
Prior art keywords
objects
procedure according
video
camera
map
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
DE112022002520.4T
Other languages
English (en)
Inventor
Oliver KING SMITH
Thomas Zoehrer
Lars Tinnefeld
Daniel Rathmaier
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.)
Ssy Ai Inc
SsyAi Inc
Original Assignee
Ssy Ai Inc
SsyAi Inc
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 Ssy Ai Inc, SsyAi Inc filed Critical Ssy Ai Inc
Publication of DE112022002520T5 publication Critical patent/DE112022002520T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/52Surveillance or monitoring of activities, e.g. for recognising suspicious objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/62Analysis of geometric attributes of area, perimeter, diameter or volume
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • 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/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20076Probabilistic image processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30204Marker
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30232Surveillance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30241Trajectory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

Es werden ein Verfahren und ein System zur Kalibrierung einer Kamera bereitgestellt, um perspektivische und objektive Verzerrungen zu korrigieren. Die Videokamera liefert Bilder an einen Computer, der Objekte identifiziert und ihre Bewegung während einer Kalibrierungsperiode verfolgt. DieGrößenänderungen der verfolgten Objekte wird verwendet, um auf Perspektive und Verzerrung in der Videokamera zu schließen. Es kann eine Karte des Raums erstellt werden, auf der die Positionen von Objekten und Bodenoberflächen vermerkt sind. Die Bewegung von Objekten entlang des Bodens kann anhand der kalibrierten Kamerabilder genauer gemessen werden.

Description

  • QUERVERWEIS AUF VERWANDTE ANMELDUNGEN
  • Diese Anmeldung beansprucht die Vorrechte der zuvor eingereichten US-Patentanmeldung US63/186896 , eingereicht am 11. Mai 2021 mit dem Titel „Method to Automatically Calibrate Cameras and Generate Maps“.
  • GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung liegt auf dem technischen Gebiet der Videoverarbeitung. Insbesondere liegt die vorliegende Erfindung auf dem Gebiet der Verfolgung von organischen und nicht-organischen Objekten. Insbesondere liegt die vorliegende Erfindung auf dem Gebiet der automatischen Kalibrierung von Kameras für die genaue Verfolgung von organischen und nicht-organischen Objekten.
  • HINTERGRUND DER ERFINDUNG
  • Die Verfolgung organischer und nicht-organischer Objekte aus Kameras ist eine kostengünstige und unauffällige Methode. In der Lage zu sein, Pfade mit genauen Metriken oder genauen Spaghetti-Diagramme zu erstellen, kann allerdings arbeitsintensiv und mühsam sein. Moderne Kameras leiden unter Verzerrungen. Diese Verzerrungen können bei der Verfolgung von Objekten zu Fehlern in der Pfadlänge führen. Bei Weitwinkelobjektiven können diese Verzerrungen erheblich sein und dazu führen, dass gerade Linien bei der Erfassung durch den Bildsensor stark gekrümmt werden. In manchen Fällen sind die Objektive nicht einmal geradlinig, um Kosten zu sparen. Das bedeutet, dass das Objektiv speziell hergestellt wird, um das Bild zu verzerren.
  • Um die Verzerrungen zu korrigieren, müssen die Kameraobjektive gegen kalibrierte Zielobjekte getestet werden. Bei der Verwendung von Zielobjekten zur Kalibrierung von Kameraobjektiven müssen die Zielobjekte traditionell sorgfältig auf das Objektiv ausgerichtet werden. Dies kostet Geld und Zeit und muss vor der Installation der Kameras durchgeführt werden.
  • Sobald eine Kamera mit Objektiv installiert ist, muss das System so eingerichtet werden, dass das Bild gerade ausgerichtet wird. Anschließend müssen der Winkel und die Höhe des Objektivs und der Kamera berücksichtigt werden, um ein genaues räumliches Bild der Kamera zu erhalten. Dazu ist ein zweiter manueller Kalibrierungsschritt erforderlich, bei dem Zielobjekte an bekannten Stellen auf dem Boden platziert werden.
  • Wenn die Kalibrierung des Objektivs abgeschlossen ist, kann der Blick dann zur Messung der Entfernung verwendet werden, die organische oder nicht-organische Objekte über den Rahmen zurücklegen.
  • Anhand all dieser Beispiele wird deutlich, dass die Kalibrierung digitaler Videosysteme ein ernsthaftes Hindernis darstellt.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Die vorliegende Erfindung ist ein Verfahren zur automatischen Kalibrierung der Kameras und zur Rekonstruktion einer genauen Karte des Raums.
  • Gemäß einem ersten Aspekt der Erfindung wird ein Verfahren zum Kalibrieren einer Videokamera, die einen Raum erfasst, bereitgestellt, das umfasst: Empfangen von Bildern von der Kamera; Identifizieren von Objekten in den Bildern; Verfolgen der identifizierten Objekte, während sie sich bewegen; Verwenden von Größenänderungen der verfolgten Objekte, wenn sie sich bewegen, zur Ableitung der Perspektive in der Videokamera; und Verwenden der abgeleiteten Perspektive zum Erstellen eines Abbildungsmodells, um Pixel in den empfangenen Bildern in eine metrische Karte des Raums umzuwandeln.
  • Gemäß einem zweiten Aspekt der Erfindung wird ein Verfahren zum Erstellen einer Karte aus einer Videokamera, die einen Raum erfasst, bereitgestellt, das umfasst: Empfangen von Bildern von der Kamera; Identifizieren von Objekten in den Bildern; Verfolgen der identifizierten Objekte, während sie sich bewegen; Verwenden von Größenänderungen der verfolgten Objekte, zur Ableitung der Perspektive in den Bildern; Bestimmen von Teilen der Objekte, die einen Boden berühren, um Positionen von Bodenpixeln in dem Bild zu bestimmen; und Erstellen einer metrischen 2D-Karte des Raums aus der abgeleiteten Perspektive und den Positionen der Bodenpixel.
  • Das Verfahren kann eine Schätzung der räumlichen Lage verwenden, um ein Bein als den Teil des Objekts zu bestimmen, der den Boden berührt.
  • Das Verfahren kann die Größe der Pixel an anderer Stelle des Bildes bestimmen.
  • Das Verfahren kann aus den empfangenen Bildern korrigierte Bilder erzeugen, indem es um die perspektivischen und verzerrenden Effekte korrigiert.
  • Die Gegenstände können mit treuhänderischen Markierungen versehen werden, um sie eindeutig zu identifizieren.
  • Zur Identifizierung von Objekten kann ein Segmentierungsmodell verwendet werden, vorzugsweise ein semantisches Segmentierungsmodell.
  • Das Verfahren kann ein statistisches Rückschlussmodell für die Höhe der Objekte erstellen.
  • Das Verfahren kann Objekte als sich bewegende oder unbewegliche Objekte klassifizieren.
  • Das Verfahren kann Lagepläne eingeben, um die Erstellung der Karte einzuschränken und identifizierte Objekte der Karte in Merkmalen des Lageplans zu verzeichnen.
  • Anhand der Größenänderungen der verfolgten Objekte kann das Verfahren eine räumliche Lage der Kamera in Bezug auf den Raum bestimmen.
  • Die Identifizierung und Verfolgung von Objekten kann während einer Kalibrierungsperiode durchgeführt werden.
  • Zumindest einige der Objekte können eine IMU tragen, um dieses Objekt und seine Abmessungen zu identifizieren.
  • Das Verfahren kann die Verfolgung von Objekten unter Verwendung des Abbildungsmodells fortsetzen, um Bewegungsmetriken für ein vorgegebenes Objekt zu berechnen.
  • Gemäß einem dritten Aspekt der Erfindung wird ein System bereitgestellt, das umfasst:
    • eine oder mehrere Videokameras, die einen Raum erfassen; Computer, der derart wirkend angeschlossen ist, dass er Videos von einer oder den mehreren Videokameras empfängt; eine Datenbank mit Objekten, die in diesem Raum erwartet werden, und deren Dimensionen; und einen Speicher, der Befehle speichert, die, wenn sie von dem Computer ausgeführt werden, den Computer veranlassen, die oben genannten Verfahren auszuführen.
  • Weitere Aspekte und Ausführungsformen der Erfindung werden, ohne Einschränkung, in der nachfolgenden detaillierten Beschreibung der Erfindung erläutert.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
    • 1 ist ein Blockdiagramm, das die wichtigsten Hardware-Elemente der vorliegenden Erfindung zeigt.
    • 2 ist eine orthogonale Ansicht eines Videobildes, das eine Auswahl von Objekten enthält, die zur Kalibrierung der Kamera verwendet werden.
    • 3 ist eine orthogonale Ansicht einer Reihe von Videobildern, die die Bewegung eines Objekts durch das Videobild zeigt.
    • 4 ist eine isometrische Ansicht des Weges, den ein Objekt durch ein oder mehrere Videobilder nimmt.
    • 5 ist eine orthogonale Ansicht einer Reihe von Videobildern, die die Bewegung eines Objekts durch mehrere Kameras zeigen.
    • 6 ist eine orthogonale Ansicht eines Videobildes, das die Bewegung eines Objekts hinter einer Verdeckung einschließlich einer Lichtquelle/Beleuchtung zeigt.
    • 7 ist eine orthogonale Ansicht eines Videobildes, die eine Änderung des Objekts in einem Videobild zeigt.
    • 8 ist eine orthogonale Ansicht eines Videobildes, die ein Objekt zeigt, das im Videobild verfolgt werden kann.
    • 9 ist ein Flussdiagramm zur Erstellung einer Karte aus in Bildern erkannten Objekten.
    • 10 ist ein Flussdiagramm zur Aktualisierung einer Karte aus nicht-menschlichen Objekten.
  • DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
  • Wie hier beschrieben, können kalibrierte Kameras verwendet werden, um Karten einer Szene zu erstellen, die sich bewegende und unbewegliche Objekte enthält, und diese Objekte auf diesen Karten genau zu verfolgen. Bei der Szene kann es sich um das Innere einer Struktur handeln, z. B. einen Raum, eine Sportanlage, ein Schiff, ein Lager oder eine Fabrik. Diese Informationen werden mit Hilfe von Videokameras extrahiert. Diese Kameras können bereits installiert sein, z. B. für die Videoüberwachung.
  • Durch die Verfolgung von Objekten im Videobild kann die Software genaue/zuverlässige Karten erstellen. In einer Ausführungsform identifiziert die Software die Pixel im Bild, die dem Boden in der Karte entsprechen, indem sie sich ansieht, wo die Objekte im Videobild den Boden berühren. Insbesondere wird davon ausgegangen, dass die den Boden berührenden Pixel eines identifizierten Objekts oder bestimmter bekannter Teile die Stellen sind, an denen ein Objekt den Boden in der realen Welt berührt. Dies sind die im Objekt enthaltenen Pixel, die dem Boden am nächsten sind, wenn sie durch den Normalenvektor zum Boden auf den Boden projiziert werden. Die Software kann die Pixelgröße des Objekts an dieser Stelle messen und dann extrapolieren, wie weit es von der Kamera entfernt ist oder wo genau es sich im Videobild befindet.
  • Durch den Aufbau eines großen Datensatzes von Objekten im Videobild, die sich während eines Kalibrierungszeitraums bewegen, kann die Software eine 2D-Karte des Bodens/der Oberfläche erstellen. Die Karte ist eine digitale Darstellung der Positionen im Raum, die von der Videokamera erfasst wurden. Die Karte ist eine metrische Karte in dem Sinne, dass sie Messungen zwischen Punkten liefern kann.
  • Da Kameraobjektive verzerrt sein können, können die Karten gekrümmt sein. In einer Ausführungsform kann die Kameraverzerrung entfernt werden, indem untersucht wird, wie sich Objekte innerhalb des Videobildes bewegen, und indem verglichen wird, wie die Verzerrungen zwischen Kameras mit sich überlappenden Videoansichten variieren.
  • 1 zeigt ein Blockdiagramm der Hardware-Elemente des aktuellen Entwurfs. Eine oder mehrere Kameras 10 stehen in Verbindung mit einem Computer 50. Die Kamera 10 kann Live-Videobilder an den Computer 50 senden. Die Kamera 10 kann Videoaufnahmen speichern, die zu einem späteren Zeitpunkt an den Computer 50 gesendet werden können. Der Computer 50 steht in Verbindung mit einer Datenbank 80. Der Computer 50 kann die Datenbank 80 aktualisieren und darauf zugreifen, während er Videobilder von der Kamera 10 verarbeitet. Die Kamera 10 hat ein Objektiv 5.
  • 2 zeigt eine orthogonale Ansicht eines Videobildes 100. Das Videobild setzt sich aus mehreren Objekten zusammen. Die Videobilder werden von einer Videoquelle, z. B. einer Kamera 10, aufgenommen. Eine Reihe von beweglichen Objekten mit unterschiedlicher Pixelgröße 200 ist an verschiedenen Stellen des Videobildes zu sehen. Eine Reihe von beweglichen Objekten bekannter Größe 250 sind in dem Bild zu sehen. Eine Reihe von stationären Objekten 260 sind im Videobild zu sehen.
  • Weiterhin bezugnehmend auf 2 versteht sich, dass bewegliche Objekte unterschiedlicher Größe 200 ohne Einschränkung Menschen, Koffer, Pakete, Lebensmittel, Obst, Gemüse, Fertigteile, Autos, Lastwagen, Flugzeuge und Tiere einschließen können. Das heißt, die Objekte können sich selbst bewegen oder innerhalb des Sichtfelds (FoV) bewegt werden.
  • Weiterhin bezugnehmend auf 2 versteht sich, dass bewegliche Objekte eine reale Größenvariation aufweisen, die einem statistischen Modell mit einer messbaren Wahrscheinlichkeitsdichtefunktion folgt. Die Wahrscheinlichkeitsdichtefunktion kann für bestimmte Umstände angepasst werden. Zum Beispiel sind Menschen in Nordeuropa in der Regel größer als Menschen auf den Philippinen, aber beide folgen einer wohldefinierten Verteilung.
  • Weiterhin bezugnehmend auf 2 versteht sich, dass die Software des Computers 50 die Wahrscheinlichkeitsdichtefunktion für bewegliche Objekte unterschiedlicher Größe manuell oder programmgesteuert eingeben kann.
  • Weiterhin bezugnehmend auf 2 versteht sich, dass bei Objekten bekannter Größe 250 und stationären Objekten 260 die tatsächliche Größe manuell oder programmgesteuert in die Software des Rechners 50 eingegeben werden kann.
  • Weiterhin bezugnehmend auf 2 versteht sich, dass Beispiele für Objekte mit den bekannten Größen 250 Gabelstapler, Paletten, Behälter, Behälter, Roboter, Wagen, Sportplatzmarkierungen, Sportgeräte und Lastwagen einschließen, aber nicht darauf eingeschränkt sind.
  • Weiterhin bezugnehmend auf 2 versteht sich, dass sich ein bewegliches Objekt unterschiedlicher Größe (200), ein bewegliches Objekt bekannter Größe (250) und ein stationäres Objekt (260) in Kontakt mit einer ebenen Fläche in der realen Welt befinden, deren Niveau von der Software erfasst werden soll.
  • Weiterhin bezugnehmend auf 2 identifiziert die Software Pixel im Videobild 100, in denen Objekte (200, 250, 260) mit einer ebenen Fläche 800 in Kontakt sind. So erkennt die Software beispielsweise zunächst, dass es sich bei dem beweglichen Objekt um einen Menschen handelt, und identifiziert dann das Pixel, an dem die Füße des Menschen den Boden im Videobild berühren. Ein weiteres Beispiel: Handelt es sich bei einem beweglichen Objekt bekannter Größe (250) um einen Gabelstapler, kann das Pixel, an dem die Reifen den Boden berühren, im Videobild identifiziert werden.
  • Die Software kann eine von mehreren bekannten maschinellen Lernarchitekturen verwenden, die Objekte identifizieren, vorzugsweise Segmentierungsnetze. Dies können U-Net oder DeepLab sein. Das Segmentierungsnetz wird so trainiert, dass es jedes Pixel des Bildes einem Objekttyp oder einem Hintergrund zuordnet. Bei den Objekten handelt es sich in der Regel um Menschen und Maschinen, von denen man annimmt, dass sie sich in diesem Raum befinden, während der Hintergrund im Allgemeinen aus Wänden und Böden besteht. Vorzugsweise wird ein semantisches Segmentierungsnetz verwendet, um jedes der Objekte für die laufende Verfolgung während einer Kalibrierungsperiode zu klassifizieren. Der Kalibrierungszeitraum kann typischerweise Minuten bis Stunden betragen, in denen sich die Objekte, vorzugsweise unter kontrollierten Bedingungen, in allen Regionen des Raums bewegen. Die Kalibrierung kann wiederholt werden, um sicherzustellen, dass Änderungen in der Kameraeinstellung erfasst werden.
  • Weiterhin bezugnehmend auf 2 versteht sich, dass die Lokalisierung des Pixels, wenn ein Objekt (200, 250, 260) mit der ebenen Fläche 800 in Kontakt ist, auf programmatische Weise erfolgen kann. So können beispielsweise die Räder eines Gabelstaplers mit Hilfe von Computer Vision Processing erkannt werden. Ein anderes Beispiel wäre die Verwendung eines segmentierten neuronalen Netzes, um die Füße von Personen oder einer Palette zu erkennen.
  • Da moderne Videokameras sowohl in Bezug auf die Bildrate als auch auf die Pixelauflösung riesige Videodatenströme liefern, ist es vorzuziehen, einen Teil der Segmentierung in einem ersten, niedrig auflösenden Modus für eine schnelle, kontinuierliche Echtzeitüberwachung durchzuführen. Der Prozess kann aus zwei Teilen bestehen, wobei die erste Segmentierung auf Bildern mit niedriger Auflösung und niedriger Bildrate erfolgt, gefolgt von einer Segmentierung mit hoher Auflösung, falls dies zur besseren Identifizierung von Objekten und bodenberührenden Pixeln erforderlich ist.
  • Weiterhin bezugnehmend auf 2 versteht sich, dass das bewegliche Objekt mit variabler Größe 200, das bewegliche Objekt mit bekannter Größe 250 und das stationäre Objekt 260 alle eine Pixelmetrik 900 haben, die auf dem Videobild 100 auf programmatische Weise gemessen werden kann. Die Pixelmetrik kann die Höhe oder Breite in Pixeln sein.
  • Weiterhin bezugnehmend auf 2 versteht sich, dass mit zunehmender Anzahl von gesammelten Videobildern 100 mehr Pixel der ebenen Fläche 800 und entsprechende Pixelmetriken 900 für bewegliche Objekte unterschiedlicher Größe 200 und Objekte bekannter Größe 250 gesammelt werden können. Auf diese Weise wird ein stochastisches Inferenzmodell der Objekthöhen erstellt, das dann von der Software zur Analyse der Perspektive, der Verzerrung und der Kameraposition verwendet wird.
  • Weiterhin bezugnehmend auf 2 versteht sich, dass das Pixel eines Objekts (200, 250, 260) im Videobild 100 mit der ebenen Fläche 800 in Verbindung steht und das vom Objekt belegte Pixel in einer Datenbank 80 in 1 gespeichert werden kann.
  • 3 ist eine orthogonale Ansicht einer Reihe von Videobildern 100, die den Weg 301/ 302 desselben Objekts mit Beobachtungen 201, 202, 203 während einer Kalibrierungsperiode zeigen. Bei dem Objekt 201, 202, 203 kann es sich um ein bewegliches Objekt unterschiedlicher Größe 200 oder um ein bewegliches Objekt mit bekannter Größe 250 handeln. Es versteht sich, dass die Änderungen der Objektgröße in erster Linie Änderungen der Perspektive des Videobildes 100 sind.
  • Die Pixel, an denen das Objekt bei den Beobachtungen 201, 202, 203 mit der ebenen Fläche in Berührung kommt, und die Pixelmetrik des Objekts bei jeder Beobachtung können in der Datenbank 80 gespeichert werden.
  • 4 ist eine isometrische Ansicht eines Pfades 501, 502, 503, den ein Objekt 201 durch eine Karte 400 mit einem oder mehreren Videobildern 101, 102 nimmt. Manchmal ist der Pfad 501 in einem Videobild 101 zu sehen und manchmal ist der Pfad 502 in mehr als einem Videobild 101 und 102 zu sehen, und manchmal ist der Pfad 503 in keinem Videobild zu sehen.
  • Weiterhin bezugnehmend auf 4 versteht sich, dass es sich bei dem Objekt 201 um ein bewegliches Objekt unterschiedlicher Größe 200 oder um ein bewegliches Objekt bekannter Größe 250 handeln kann. Die Software kann Video-Tracking-Techniken verwenden, um den Pfad 501, 502 auf der Karte 400 zu identifizieren. Die Objektverfolgung kann zum Beispiel mit Hilfe von Computer Vision Processing erfolgen.
  • Weiterhin bezugnehmend auf 4 versteht sich, dass das System auch andere Techniken als Video verwenden kann, um den Pfad 501, 502, 503 auf der Karte 400 festzulegen. Diese Techniken schließen IMU-Totpunktbestimmung, Funkverfolgung, Sonarverfolgung, thermische Verfolgung elektromagnetischer Felder, Berührungssensoren, Lichtstrahlen, Schallsensoren und globale Positionierungssysteme ein, sind aber nicht darauf eingeschränkt. Die Software kann den Pfad 501, 502, 503 in der Datenbank 80 speichern.
  • Die Software kann die Pfade 501, 502 zwischen den Videobildern 101, 102 und jedes andere zur Erfassung der Pfade 501, 502, 503 verwendete Verfahren zeitlich synchronisieren. Fachleute wissen, dass die Pfade 501, 502, 503 durch die Zusammenführung von „Sensor-Fusion“-Video- und Nicht-Video-Quellen erstellt werden können.
  • Weiterhin bezugnehmend auf 4 versteht sich, dass die Karte 400 mit bekannten Informationen überlagert werden kann. Beispielsweise können Architekturzeichnungen oder Grundrisse verwendet werden, um die Informationen auf der Karte zu verbessern, indem Grenzen, Größenerwartungen, Randbedingungen und Hauptmerkmale angegeben werden, die in die von der Software erstellten Karte eingetragen werden.
  • Weiterhin bezugnehmend auf 4 versteht sich, dass die Karte 400 bekannte Dimensionsinformationen des stationären Objekts 260 enthalten kann.
  • Weiterhin bezugnehmend auf 4 versteht sich, dass das Videobild 101, 102 eine Annäherung an die Position auf der Karte 400 ist, die als Startparameter angegeben werden kann.
  • 5 ist eine orthogonale Ansicht einer Reihe von Videobildern 101, 102, die die Wege 301, 302, 303 desselben Objekts 201, 202, 203, 204 durch mehrere Kameras zeigen. Das Objekt 202 in Videobild 101 tritt entlang des Pfades 302 in das Videobild 103 ein und erreicht die Position von Objekt 203. Zu diesem Zeitpunkt ist das Objekt 203 sowohl in Videobild 101 als auch in Videobild 102 sichtbar. Es versteht sich, dass der Zeitpunkt, zu dem das Objekt 203 mit der ebenen Fläche in Verbindung steht, in den Videobildern 101 und 102 unterschiedlich sein kann.
  • Die Pixel, an denen das Objekt 203 mit der ebenen Fläche in Berührung kommt, können sich zwischen den Videobildern 101 und 102 unterscheiden. Die Software kann die Mustererkennung nutzen, um das Verhalten eines organischen Objekts zu verstehen.
  • 6 ist eine orthogonale Ansicht des Videobildes 100, die die Pfade 301, 302 eines Objekts 201, 202 hinter einer Okklusion 700 bei Vorhandensein der Beleuchtung 710 des Raums zeigt. Vorzugsweise wird das Objekt 202 als das Objekt 201 erkannt, nachdem es hinter der Okklusion 700 vorbeigegangen ist, oder wenn die Beleuchtung 710 ausfällt oder wenn dem Objekt bei der Beobachtung 202 Identifikationsinformationen in einem oder mehreren Bildern fehlen. Die Software kann semantische Segmentierung verwenden, um Objekte eindeutig zu erkennen und zu identifizieren, oder das Objekt kann treuhänderische Markierungen aufweisen, die es für die Software eindeutig identifizieren. In den oben genannten Fällen unvollkommener Identifizierung wird die Software mit einem Schwellenwert für die Objektübereinstimmungswahrscheinlichkeit programmiert, um die Verfolgung fortzusetzen. Diese Übereinstimmungswahrscheinlichkeit kann erhöht werden, indem das ähnlichste Objekt zu einem früheren Objekt in diesem Bereich mit diesem Bewegungsvektor gefunden wird.
  • 7 ist eine orthogonale Ansicht des Videobildes 100, die eine Veränderung des Objekts 1000, 1100 zeigt. Die Software kann so programmiert werden, dass sie Objekte im Videobild 100, die sich für eine bestimmte Schwellenzeit nicht bewegt haben, als stationäre Objekte 260 klassifiziert. Die Software kann Änderungen im Videobild 100 erkennen. Wenn zum Beispiel ein neues Objekt 1000 in das Bild eintritt und länger als eine bestimmte Schwellenzeit in der gleichen Position bleibt, kann es als neues stationäres Objekt 260 betrachtet werden.
  • 8 ist eine orthogonale Ansicht des Videobildes 100 und zeigt Objekte bekannter Größe 250 im stationären Objekt 260 und in Kommunikation mit Objekt 201. Bei Objekt 201 kann es sich um ein Objekt mit variabler oder bekannter Größe handeln. Die Objekte bekannter Größe 250 haben eine Pixelmetrik 900 und sind in Kontakt mit der ebenen Fläche 800. Der Weg des Objekts 310 kann in Videobild 100 verfolgt werden. Das Objekt bekannter Größe 250 kann aus Paletten und Behältern bestehen.
  • BEVORZUGTE ANWENDUNG
  • Die folgenden Beispiele sollen dem Fachmann eine vollständige Offenlegung der Durchführung und Verwendung der hier dargelegten Aspekte und Ausführungsformen der Erfindung vermitteln.
  • Es wird davon ausgegangen, dass Objekte unterschiedlicher Größe verwendet werden, um ein probabilistisches Modell der Pixelmetrik an jedem Ort zu erstellen. Sobald genügend Daten gesammelt sind, kann die tatsächliche Höhe mit Hilfe von statistischen Standardverfahren programmatisch ermittelt werden.
  • Wenn mehr Pixel für die ebene Oberfläche und die Pixelmetrik im Bild gesammelt werden, kann eine Datenbank mit Pixelpositionen und Pixelmetrik erstellt werden. Wenn sich ein Objekt durch eine Reihe von Einzelbildern bewegt, kann die Pixelmetrik für einen direkten Vergleich zwischen verschiedenen Teilen des Videobildes verwendet werden. Die Datenbank der Pixel für die ebene Fläche kann dann interpoliert werden, um die ebene Fläche des Videobildes zu ermitteln.
  • Die Datenbank des Pixels für die ebene Fläche und die Pixelmetrik des Objekts können dann verwendet werden, um den physischen Abstand zu bestimmen, der durch die Pixel in einem lokalisierten Teil des Videobildes dargestellt wird.
  • Bei jedem Pixel in der konvexen Hülle des bekannten Pixels für die ebene Fläche kann die Software mit Hilfe von Standardtechniken, die dem Fachmann bekannt sind, interpolieren, wo sich die ebene Fläche befindet. Mit diesen Techniken lässt sich die durch die Linse 5 verursachte Verzerrung entfernen.
  • Für jedes Pixel in der konvexen Hülle des aufgezeichneten Pixels für die ebene Fläche kann die Größe eines Objekts durch Interpolation der metrischen Pixeldatenbank mit Hilfe von Techniken, die dem Fachmann bekannt sind, ermittelt werden.
  • Verzerrungen in der Linse 5 können durch Analyse der Krümmung der ebenen Fläche und durch Analyse der von Objekten in der Ebene zurückgelegten Wege korrigiert werden. Die ebenen Flächen sind in der Regel flach, auch auf verschiedenen Ebenen, und der Weg ist in der Regel stückweise linear. An einer Ecke zum Beispiel ist der Weg eher L-förmig. Die Algorithmen zur Begradigung des Bildes im Videobild sind dem Fachmann gut bekannt.
  • Wenn ein Objekt verfolgt wird, das sich zwischen zwei Kameras bewegt, kann die ebene Oberfläche der beiden Kameraansichten, die sich überschneiden, verglichen werden. Die beiden ebenen Flächen müssen übereinstimmen. Die etwaige Diskrepanz zwischen diesen ebenen Flächen kann genutzt werden, um die inhärenten Kamerawinkel anzupassen und die Linsenverzerrung beider Kameras mit Hilfe von Techniken zu entfernen, die dem Fachmann bekannt sind.
  • Nachdem die Entfernungsinformationen für die Pixel auf der ebenen Fläche gelernt wurden, ist es nun möglich, genau zu verfolgen, wie weit sich Objekte im Videobild bewegen.
  • Wenn ein Pfad unabhängig vom Videobild ermittelt werden kann, wie in 4 gezeigt, können Objekte auch dann verfolgt werden, wenn sie von keiner Kamera gesehen werden. Zum Beispiel kann eine Handy-App die IMU verwenden, um den Weg einer Person zu verfolgen.
  • Mit Hilfe bekannter Techniken können der auf dem Videobild sichtbare Weg und der unabhängig vom Videobild ermittelte Weg kombiniert werden, um ein genaueres Modell des wahren Weges zu erstellen.
  • Dieser genauere Pfad liefert Maßdaten für den gesamten von den Kameras erfassten Bereich.
  • Diese genauen Karten können nun mit der Pfadverfolgung im Videobild verwendet werden, um die Entfernung zu schätzen, über die sich Objekte im Bild bewegen.
  • Diese genauen Karten können zur Berechnung der Geschwindigkeit von Objekten in Bewegung verwendet werden.
  • Der unabhängig vom Videobild ermittelte Pfad kann verwendet werden, um ein Objekt zu verfolgen, während es sich zwischen zwei Videobildern bewegt.
  • Der unabhängig vom Videobild ermittelte Pfad kann verwendet werden, um Objekte wiederzuerkennen, die durch Verdeckungen oder fehlende Bilder aufgrund von Beleuchtungsproblemen verdeckt wurden.
  • Fachleute wissen, dass durch die Kombination dieser Techniken eine detaillierte Karte 400 inFIG. 3 auf programmatische Weise erstellt werden kann. Diese Karte kann vollständig aus dem Videobild erstellt werden.
  • Ein Objekt, das in 7 zu einem neuen stationären Objekt 1000 wird, oder ein unerwartetes, fehlendes Objekt kann ein Problem darstellen. Die Software könnte diese Objekte als Veränderung des Flusses der beweglichen Objekte identifizieren.
  • Außerdem können fehlende oder falsch lokalisierte Objekte aus offensichtlichen Gründen zu einem Problem werden.
  • In ist zu sehen, wie Objekte bekannter Größe 250 von anderen Objekten 201 bewegt werden. Es ist klar, dass Objekte bekannter Größe 250 verfolgt und ihre stationären Standorte aufgezeichnet werden können. Diese Informationen können dann verwendet werden, um den Standort von Objekten im Laufe der Zeit abzubilden und zu verfolgen.
  • Fachleute werden verstehen, dass die Möglichkeit, die Positionen auf einer Karte zu verfolgen, wie sich Objekte innerhalb und zwischen Videobildern bewegen, den Aufbau einer Datenbank mit Informationen über den Fluss und die Position von Objekten ermöglichen würde.
  • Erweiterung der Datenbank, so dass Objekte beim Betreten/Verlassen eines Bereichs protokolliert werden, die durchschnittliche Verweildauer an einem Regal notiert wird, die Geschwindigkeit der Mitarbeiter notiert und eingestuft wird; Muster in Abhängigkeit von der Tages- und Jahreszeit untersucht werden (z. B. wird in den Ferien vielleicht mehr Spielzeug verkauft als an anderen Tagen; vielleicht gehen die Mitarbeiter dienstags schneller usw.) usw.
  • Die 9 und 10 zeigen ein Flussdiagramm des Mapping-Algorithmus. In 9 wird ein entzerrtes Bild aufgenommen. Dabei handelt es sich um ein Bild, das um Kameraverzerrungen korrigiert wurde. Das entzerrte Bild wird mit Standardtechniken verkleinert. Das verkleinerte Bild wird dann mit einem Auffälligkeitsfilter verarbeitet, um die Interessenregionen zu identifizieren. Dies kann durch die Suche nach Objekten, die sich im Bild bewegen, oder durch ein neuronales Netz geschehen. Zu den neuronalen Netzen, die Points of Interest erkennen können, gehören Yolo oder FairMOTS. Beide Algorithmen sind in der Lage, die Identifizierung von Objekten zuzuordnen, um sie zwischen den Einzelbildern zu verfolgen.
  • Das System kann ein Abbildungsmodell ausgeben, um den Pixelraum in den Videobildern in den physischen Raum in der Karte des Raums umzuwandeln. Diese Abbildung berücksichtigt die Verzerrung des Objektivs, die Kameraposition und perspektivische Effekte, um eine genaue metrische Abbildung der Kamera zu erstellen. Auf diese Weise wird das Kamerasystem kalibriert.
  • Jede Region von Interesse wird aus dem Originalbild in voller Größe ausgeschnitten, um ein segmentierbares Bild zu erstellen. Handelt es sich bei der Region von Interesse nicht um einen Menschen, verwendet der Algorithmus das Flussdiagramm in 10. Das segmentierbare Bild der Person wird auf Pixelebene segmentiert, um festzustellen, wo sich die Person(en) im Bild befinden. Es gibt mehrere neuronale Netze, die dies tun können, z. B. U-Net und DeeplabV3.
  • Nachdem das Bild auf Pixelebene segmentiert wurde, bestimmt die Software, welcher Fuß den Boden berührt. Dies kann mithilfe eines neuronalen Netzes wie V2V-PoseNet geschehen, um zu bestimmen, welches Bein gerader ist, und dann die untersten Pixel als Bodenpixel zu klassifizieren.
  • Wenn die Software weiß, welche Pixel den Boden berühren, kann sie die Karte der Bodenebene aktualisieren. Die Software kann dann die Höhe des Menschen auf der Grundlage der statistischen Verteilung der Pixelhöhen anderer Menschen in derselben Region schätzen. Diese Schätzung verbessert sich mit der Zeit, wenn mehr Menschen in der Region gesehen werden. Menschen folgen einer vorhersehbaren statistischen Verteilung. Auf der Grundlage der geschätzten Höhe des Menschen kann eine Fläche für jedes Bodenpixel geschätzt werden.
  • Anhand der Veränderung der Pixelfläche im Bild kann die Software die Kameraposition schätzen. Dies geschieht mit Hilfe eines Kurvenanpassungsalgorithmus, der die 6DOF der Kameraposition zusammen mit der geschätzten intrinsischen Kameramatrix anpasst. Die Stabilität dieses Algorithmus kann durch eine anfängliche Schätzung der Kameraposition mithilfe eines neuronalen Netzes wie PoseNet verbessert werden.
  • Anhand der Kameraposition und der Bodenpixel kann die Software das Modell der 2D-Bodenkarte aktualisieren, indem sie die bekannten Bodenpixel anhand der Kameraposition auf eine 2D-Karte projiziert.
  • Die Software kann nun den Standort der Person auf der 2D-Karte aktualisieren, indem sie die vom Saliency-Filter gemeldete ID der Person verwendet.
  • zeigt, wie nicht-menschliche Objekte verarbeitet werden. Es wird davon ausgegangen, dass das System für nichtmenschliche Objekte Informationen über die Größe, die Geschwindigkeit, das Verhalten und die Bodenkontaktpunkte des Objekts speichert. Das Objekt kann eine Palette oder ein Gabelstapler sein.
  • Nicht-menschliche Objekte, insbesondere stationäre Objekte und strukturelle Objekte, können von der Software zur Korrektur von Krümmung und Verzerrung des Objektivs verwendet werden. Vertikale Aspekte dieser Objekte, die gelernt oder in der Datenbank gespeichert wurden, sollten als gerade vertikale Pixel im Bild erfasst werden, und die Software kann das Rohbild entzerrt (d. h. unverzerrt) darstellen, bis diese vertikalen Aspekte im entzerrten Bild gerade sind. So kann man z. B. davon ausgehen, dass strukturelle Säulen in einem Gebäude gerade sind, aber Fischaugeneffekte können sie an den Rändern des Rohbildes krümmen.
  • Das System verwendet ein neuronales Netz zur Segmentierung des Objekts. Das neuronale Netz ist spezifisch für den Objekttyp. Das neuronale Netz kann verschiedene Teile des Objekts identifizieren, z. B. Räder an einem Gabelstapler. Beispiele für neuronale Netze, die die Segmentierung vornehmen, sind U-Net und DeeplabV3. Nachdem das Bild segmentiert wurde, werden die Pixel identifiziert, die den Boden berühren. Dabei wird davon ausgegangen, dass es sich um die Pixel handelt, die dem unteren Rand des segmentierten Bildes am nächsten liegen und möglicherweise den Boden berühren können.
  • Da die Software nun die tatsächliche Größe des Objekts kennt, kann sie nun die Fläche schätzen, die ein Pixel in der realen Welt darstellt. Eine 1-Meter-Palette, die im Bild 100 Pixel breit ist, bedeutet zum Beispiel, dass jedes Pixel an dieser Stelle des Bildes 1 cm breit ist. Diese Kalibrierung der Pixelgröße ermöglicht es der Software, die Geschwindigkeit und die von einem Objekt zurückgelegte Strecke genau zu berechnen.
  • Genau wie bei der menschlichen Schätzung kann das System nun die Kameraposition verfeinern und dann die 2D-Karte des Bodens aktualisieren. Schließlich können der Objekttyp, die ID, die Zeit und der Standort in die 2D-Karte eingegeben werden.
  • Das System kann die Architektur und Lehre von C. Chen, C. X. Lu, J. Wahlström, A. Markham und N. Trigoni nutzen, „Deep Neural Network Based Inertial Odometry Using Low-Cost Inertial Measurement Units", in IEEE Transactions on Mobile Computing, vol. 20, no. 4, pp. 1351-1364, 1 April 2021, doi: 10.1109/TMC.2019.2960780.
  • ANWENDUNGSBEISPIELE
  • Die folgenden Beispiele sollen die Verwendungen des Systems verdeutlichen.
  • Eine Ausführungsform wäre ein Lagerhaus. Die Software verwendet die zuvor beschriebene statistische Methode, um eine lokalisierte Pixelmetrik für das Pixel auf der Oberflächenebene zu erstellen. Die Mitarbeiter im Lagerhaus tragen ein Mobiltelefon, auf dem eine Tracking-Anwendung läuft, die die interne Inertial Measurement Unit (IMU) überwacht. Der Pfad von der IMU wird mit dem Videobild der Kamera abgeglichen. Die Software auf dem Computer 50 in 1 kann dann den Weg zwischen der IMU und dem von der Kamera 10 aufgezeichneten Weg abgleichen. Dies ermöglicht es der Software nun, die Karte 400 automatisch zusammenzustellen, wie in 4 dargestellt. Die Software kann die Geschwindigkeiten und Positionen für alle Objekte in der Karte berechnen. Die Software kann auf der Grundlage dieser Daten in Echtzeit oder zu einem späteren Zeitpunkt Spaghetti-Diagramm mit genauen metrischen Informationen über die Bewegung erstellen.
  • Eine Ausführungsform wäre ein Lagerhaus. Im Lager werden die Regale, in denen sich die Waren befinden, mit Kameras erfasst. Die Ausführungsform im Lagerhaus wäre die Verfolgung von Gabelstaplern. In diesem Fall hat der Gabelstapler ein kleines Gerät, das eine IMU mit einem drahtlosen Sender enthält. In die Software, die auf dem Computer 50 läuft, können die Abmessungen des Gabelstaplers eingegeben werden. Wenn sie nun das Bild analysiert, ist der Gabelstapler bekannt und die Pixelmetrik wird berechnet. Aus diesen Daten kann die Software automatisch die Karte 400 erstellen, wie in 4 dargestellt. Auf diese Weise kann die Software verfolgen und wissen, wo (Standort) und wann Pakete in ein Lager, ein Regal oder einen Ort gestellt oder entnommen wurden.
  • Eine weitere Ausführungsform zur Verfolgung von Gabelstaplern ist die Verwendung eines visuellen Referenzpunktes, um den Gabelstapler zu identifizieren und dem Kamerasystem die Möglichkeit zu geben, die Höhe der Gabeln innerhalb des Videobildes zu verfolgen. Das Videobild kann die Höhe der Gabeln schätzen, indem es sich die Pixelmetrik auf dem Video ansieht und die Position des visuellen Referenzpunktes untersucht, um zu erwarten, wann sich die Gabeln in der Nähe der ebenen Fläche befinden.
  • Eine Ausführungsform wäre ein Lagerhaus. Im Lager werden die Regale, in denen sich die Waren befinden, mit Kameras erfasst. Die Software verwendet die zuvor beschriebene statistische Methode, um fehlende Objekte 1100 oder neue Objekte 1000 zu identifizieren. Diese Informationen könnten mit einer anderen Software im Lager, die für die Inventur zuständig ist, ausgetauscht werden.
  • Eine Ausführungsform wäre eine Sportanlage. Die Software verwendet die zuvor beschriebene statistische Methode, um lokalisierte Pixelmetriken für die Pixel auf der Oberflächenebene zu erstellen. Die Software kann die Geschwindigkeiten und Positionen für alle organischen Objekte, z. B. Spieler, und nicht-organischen Objekte, z. B. einen Ball in der Karte oder auf der Sportanlage, berechnen. Die Software kann auf der Grundlage dieser Daten in Echtzeit oder zu einem späteren Zeitpunkt Spaghetti-Diagramme mit genauen metrischen Informationen über die Bewegungen erstellen. Auf diese Weise lassen sich in Echtzeit und vorausschauend Informationen über den körperlichen Zustand zahlreicher einzelner Sportler gewinnen. Die auf diese Weise gesammelten Daten können auch zur Analyse der Taktik von Mannschaften und Gegnern verwendet werden und ermöglichen Anpassungen in Echtzeit. Darüber hinaus können statistische Daten zu einzelnen Sportlern, wie z. B. die maximale Geschwindigkeit oder die maximale Distanz vor Ermüdung, und zu Mannschaften, wie z. B. Torschussversuche oder Durchschnittswerte, abgeleitet werden, was eine wirtschaftliche Bewertung auf dem Transfer- und Wettmarkt ermöglicht.
  • Eine weitere Ausführungsform wäre ein Flughafen oder ein ähnlich überfüllter Ort oder Bereich. Die Software verwendet die zuvor beschriebene statistische Methode, um eine lokalisierte Pixelmetrik für die Pixel auf der Oberflächenebene zu erstellen. Die Software kann die Geschwindigkeiten und Positionen für alle organischen Objekte auf der Karte oder in einem überfüllten Gebiet (z. B. einem Flughafen) berechnen. Diese Informationen können an eine Steuerungssoftware weitergeleitet werden. Die Kontrollsoftware könnte außerdem den Verkehrsfluss beeinflussen, z. B. durch Textnachrichten auf dem Fernsehbildschirm, indem sie die Passagiere zu weniger stark frequentierten Sicherheitsschleusen laufen lässt.
  • Eine Ausführungsform wäre ein Sicherheitsfahrwassersystem. Die Software verwendet die zuvor beschriebene statistische Methode, um eine lokalisierte Pixelmetrik für das Pixel auf der Oberflächenebene zu erstellen. Die Menschen in den Gebäuden tragen ein Mobiltelefon, auf dem eine Tracking-Anwendung läuft, die die interne Inertial Measurement Unit (IMU) überwacht. Der Pfad der IMU wird mit dem Videobild der Sicherheitskamera abgeglichen. Die Software auf dem Computer 50 in 1 kann dann den Weg zwischen der IMU und dem von der Kamera 10 aufgezeichneten Weg abgleichen. Dies ermöglicht es der Software nun, die Karte 400, wie in 4 dargestellt, automatisch zusammenzustellen. Die Software kann die Geschwindigkeiten und Positionen für alle Objekte in der Karte berechnen. Die Software kann auf der Grundlage dieser Daten in Echtzeit oder zu einem späteren Zeitpunkt Spaghetti-Diagramme mit genauen metrischen Informationen über die Bewegungen erstellen. Dies ermöglicht eine systematische und intuitive Gestaltung von Sicherheitswegen bei Übungsläufen mit Hilfe von vorausschauenden Analysen der Fluchtdauer. Im Notfall können die Fluchtwege analysiert und durch Echtzeit-Kommunikation mit dem Menschen dynamisch angepasst werden, wenn sie blockiert sind (z. B. durch Feuer).
  • Ein Beispiel hierfür sind Gewächshäuser und vertikale Gewächshäuser sowie die Landwirtschaft und der Ackerbau. Die Software verwendet die zuvor beschriebene statistische Methode, um eine lokalisierte Pixelmetrik für das Pixel auf der Oberflächenebene zu erstellen. Anhand der erzeugten genauen metrischen Informationen kann die Software das Pflanzenwachstum erkennen und Parameter lernen, die zum Wachstum der Pflanze beitragen.
  • Eine Ausführungsform wäre der Zoo. Die Software verwendet die zuvor beschriebene statistische Methode, um eine lokalisierte Pixelmetrik für die Pixel auf der Oberflächenebene zu erstellen. Die Software kann die Geschwindigkeiten und Positionen für alle organischen Objekte, z. B. die Tiere im Zoo, berechnen. Die Software kann auf der Grundlage dieser Daten in Echtzeit oder zu einem späteren Zeitpunkt Spaghetti-Diagramme mit genauen metrischen Informationen über die Bewegungen erstellen. Auf diese Weise lassen sich Echtzeit- und Vorhersageinformationen über den physischen Zustand des Tieres gewinnen.
  • Ein Beispiel dafür wäre ein Einkaufszentrum. Die Software verwendet die zuvor beschriebene statistische Methode, um eine lokalisierte Pixelmetrik für die Pixel auf der Oberflächenebene zu erstellen. Dadurch kann die Software analysieren, wie sich die Menschen in dem Einkaufszentrum bewegen, was eine Korrelation zwischen dem Kaufverhalten und der Bewegung der Menschen ergibt. Diese Informationen ermöglichen einen systematischen Überblick über Geschäfte und Einkaufszentren einschließlich der Standorte von Einrichtungen wie Restaurants, Toiletten usw. Darüber hinaus könnte der Besucherstrom auch durch andere Software-Instanzen verwaltet werden, z. B. könnte ein Besucher einen Einkaufsgutschein auf sein Handy erhalten, um ein bestimmtes Geschäft zu besuchen.
  • Eine Ausführungsform wäre eine Paketverarbeitungsanlage. Die Software verwendet die zuvor beschriebene statistische Methode, um eine lokalisierte Pixelmetrik für das Pixel auf der Oberflächenebene zu erstellen. Die Software kann die Geschwindigkeiten und Positionen für alle Objekte in der Karte berechnen, einschließlich der Pakete auf einem Paketförderband oder einem Paketsortierer. Die Software kann diese Informationen an eine andere Steuerungssoftware in der Anlage weitergeben, die den Paketfluss, die Geschwindigkeit, die Anzahl der Pakete, die Induktionsgeschwindigkeit usw. verwalten kann.
  • Ein Beispiel dafür wäre die Baustelle eines Gebäudes. Die Software verwendet die zuvor beschriebene statistische Methode, um eine lokalisierte Pixelmetrik für das Pixel auf der Oberflächenebene zu erstellen. Dies ermöglicht es, in Echtzeit metrische Informationen über die von den Angestellten/Arbeitern während ihrer Schicht zurückgelegte Strecke zu erhalten. Diese Informationen sind außerdem für die Gesundheit und Sicherheit der Mitarbeiter relevant, da sie Rückschlüsse auf die Müdigkeit der Arbeiter auf der Baustelle zulassen.
  • Wie in dieser Beschreibung und den beigefügten Ansprüchen verwendet, schließen die Singularformen „ein“, „ein“ und „die“ Pluralreferenzen ein, sofern der Kontext nicht eindeutig etwas anderes vorschreibt. Die in dieser Beschreibung und den beigefügten Ansprüchen verwendeten Begriffe „umfasst“ und/oder „beinhaltend“ spezifizieren das Vorhandensein bestimmter Merkmale, ganzer Zahlen, Schritte, Operationen, Elemente und/oder Komponenten, schließen jedoch das Vorhandensein oder Hinzufügen eines oder mehrerer anderer Merkmale, ganzer Zahlen, Schritte, Operationen, Elemente, Komponenten und/oder Gruppen davon nicht aus.
  • Der hier verwendete Begriff „Kommunikation“ und „in Kommunikation“ bezieht sich auf Komponenten des Geräts, die zusammenarbeiten, aber nicht unbedingt miteinander verbunden sind. Darüber hinaus können zwischen den Komponenten zusätzliche Verarbeitungselemente vorhanden sein.
  • Der hier verwendete Begriff „Videoeinzelbild“ wird zur Beschreibung eines einzelnen Bildes verwendet.
  • Der hier verwendete Begriff „Pixel“ bezieht sich auf einen Punkt in einem Videobild.
    • Der hier verwendete Begriff „Pixelmetrik*Größe“ bezieht sich auf ein Maß für die Größe eines Objekts. Er kann sich auf die Anzahl der vertikalen Pixel eines Objekts in einem Videobild oder auf die Breite eines Objekts in Pixeln beziehen. Es kann sich um die Gesamtzahl der Pixel handeln, die ein Objekt einnimmt, oder um eine Bounding Box um das Objekt.
    • Der hier verwendete Begriff „Satz“ bezeichnet eine Sammlung von null oder mehr Objekten, die eine grundlegende Ähnlichkeit aufweisen.
    • Der hier verwendete Begriff „ebene Fläche“ wird verwendet, um eine Stelle auf der z-Achse zu beschreiben, auf der ein Objekt ruhen kann.
    • Der hier verwendete Begriff „Karte“ wird verwendet, um eine geometrisch genaue Visualisierung des Raums und des Objekts zu beschreiben, das von der Kamera und anderen Verfolgungstechnologien erfasst wird.
    • [00126] Der hier verwendete Begriff „programmatischer Weg“ wird verwendet, um einen Algorithmus zu beschreiben, der in Hardware und/oder Software implementiert ist.
    • Der hier verwendete Begriff „Videoquelle“ wird zur Beschreibung eines Geräts oder einer Software, die Videobilder erzeugt, verwendet.
    • Der hier verwendeten Begriffe „Sensor“ und „Sensoren“ werden verwendet, um ein Gerät zu beschreiben, das eine oder mehrere physikalische Eigenschaften misst.
    • Wie hier verwendet wären Beispiele für Sensoren Wärmekameras, Vibrationen, Schallwellen usw.
    • Der hier verwendete Begriff „Beleuchtung“ wird zur Beschreibung von Lichtquellen verwendet.
  • Der hier verwendete Begriff „Kamera“ wird für eine zweidimensionale Anordnung optischer Sensoren verwendet. Jeder Sensor in dieser Anordnung misst elektromagnetische Strahlung.
    • Der hier verwendete Begriff „konvexe Hülle“ wird verwendet, um einen Raum zu beschreiben, der durch alle Linearkombinationen aus einer Sammlung von Punkten gebildet wird, bei denen die in den Linearkombinationen verwendeten Koeffizienten größer oder gleich Null sind und die Summe aller Koeffizienten eins ist.
    • Der hier verwendete Begriff „Muster“ wird verwendet, um das Verhalten eines organischen Objekts zu beschreiben.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • US 63/186896 [0001]
  • Zitierte Nicht-Patentliteratur
    • Lehre von C. Chen, C. X. Lu, J. Wahlström, A. Markham und N. Trigoni nutzen, „Deep Neural Network Based Inertial Odometry Using Low-Cost Inertial Measurement Units“, in IEEE Transactions on Mobile Computing, vol. 20, no. 4, pp. 1351-1364, 1 April 2021, doi: 10.1109/TMC.2019.2960780 [0093]

Claims (16)

  1. Verfahren zur Kalibrierung einer Videokamera, die einen Raum erfasst, umfassend: a. Empfangen von Bildern von der Kamera; b. Identifizieren von Objekten in den Bildern; c. Verfolgen der identifizierten Objekte, während sie sich bewegen; d. Verwenden von Größenänderungen der verfolgten Objekte, wenn sie sich bewegen, zur Ableitung der Perspektive in der Videokamera; und e. Verwenden der abgeleiteten Perspektive zum Erstellen eines Abbildungsmodells, um Pixel in den empfangenen Bildern in eine metrische Karte des Raums umzuwandeln.
  2. Verfahren zum Erstellen einer Karte aus einer Videokamera, die einen Raum erfasst, umfassend: a. Empfangen von Bildern von der Kamera; b. Identifizieren von Objekten in den Bildern; c. Verfolgen der identifizierten Objekte, während sie sich bewegen; d. Verwenden von Größenänderungen der verfolgten Objekte zur Ableitung der Perspektive in den Bildern; e. Bestimmen von Teilen der Objekte, die einen Boden berühren, um Positionen von Bodenpixeln in dem Bild zu bestimmen; und f. Erstellen einer metrischen 2D-Karte des Raums aus der abgeleiteten Perspektive und den Positionen der Bodenpixel.
  3. Verfahren nach Anspruch 1 oder 2, welches ferner die Verwendung einer Schätzung der räumlichen Lage umfasst, um ein Bein als den Teil des Objekts zu bestimmen, der den Boden berührt.
  4. Verfahren nach Anspruch 1 oder 2, welches ferner die Bestimmung der Größe von Pixeln an anderer Stelle des Bildes umfasst.
  5. Verfahren nach Anspruch 1 oder 2, welches ferner die Erzeugung korrigierter Bilder aus den empfangenen Bildern durch Korrektur um die abgeleitete Perspektive und die Verzerrungseffekte des Objektivs umfasst.
  6. Verfahren nach Anspruch 1 oder 2, wobei die Objekte mit treuhänderischen Markierungen versehen sind, die sie eindeutig identifizieren.
  7. Verfahren nach Anspruch 1 oder 2, wobei ein Segmentierungsmodell zur Identifizierung von Objekten verwendet wird.
  8. Verfahren nach Anspruch 1 oder 2, wobei ein semantisches Segmentierungsmodell zur Identifizierung von Objekten verwendet wird.
  9. Verfahren nach Anspruch 1 oder 2, welches ferner das Erstellen eines statistischen Rückschlussmodells für die Höhe der Objekte umfasst.
  10. Verfahren nach Anspruch 1 oder 2, welches ferner die Klassifizierung von Objekten als sich bewegende oder unbewegliche Objekte umfasst.
  11. Verfahren nach Anspruch 1 oder 2, welches ferner die Eingabe von Lageplänen umfasst, um die Erstellung der Karte einzuschränken und identifizierte Objekte der Karte in Merkmalen des Lageplans zu verzeichnen.
  12. Verfahren nach Anspruch 1 oder 2, welches ferner die Bestimmung einer räumlichen Lage der Kamera in Bezug auf den Raum anhand der Größenänderungen der verfolgten Objekte umfasst.
  13. Verfahren nach Anspruch 1 oder 2, wobei die Identifizierung und Verfolgung von Objekten während einer Kalibrierungsperiode durchgeführt wird.
  14. Verfahren nach Anspruch 1 oder 2, wobei zumindest einige der Objekte eine IMU tragen, um dieses Objekt und seine Abmessungen zu identifizieren.
  15. Verfahren nach Anspruch 1 oder 2, welches ferner das Fortsetzen der Verfolgung von Objekten unter Verwendung des Abbildungsmodells zur Berechnung von Bewegungsmetriken für ein vorgegebenes Objekt umfasst.
  16. System, das Folgendes umfasst: a. eine oder mehrere Videokameras, die einen Raum erfassen; b. Computer, der derart wirkend angeschlossen ist, dass er Videos von einer oder mehreren Videokameras empfangen kann; c. eine Datenbank mit Objekten, die in diesem Raum erwartet werden, und deren Dimensionen; und d. einen Speicher, der Befehle speichert, die, wenn sie von dem Computer ausgeführt werden, den Computer veranlassen, das Verfahren nach Anspruch 1 oder 2 auszuführen.
DE112022002520.4T 2021-05-11 2022-05-11 Verfahren zur automatischen Kalibrierung von Kameras und Erstellung von Karten Pending DE112022002520T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202163186896P 2021-05-11 2021-05-11
US63/186,896 2021-05-11
PCT/IB2022/054397 WO2022238933A1 (en) 2021-05-11 2022-05-11 Method to automatically calibrate cameras and generate maps

Publications (1)

Publication Number Publication Date
DE112022002520T5 true DE112022002520T5 (de) 2024-06-13

Family

ID=84028912

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112022002520.4T Pending DE112022002520T5 (de) 2021-05-11 2022-05-11 Verfahren zur automatischen Kalibrierung von Kameras und Erstellung von Karten

Country Status (3)

Country Link
US (1) US20240233184A1 (de)
DE (1) DE112022002520T5 (de)
WO (1) WO2022238933A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4300410B1 (de) * 2022-06-29 2024-05-08 Axis AB Selbstlernende geometrischen verzerrungskorrektur

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160379074A1 (en) * 2015-06-25 2016-12-29 Appropolis Inc. System and a method for tracking mobile objects using cameras and tag devices
JP6984215B2 (ja) * 2017-08-02 2021-12-17 ソニーグループ株式会社 信号処理装置、および信号処理方法、プログラム、並びに移動体
US10832045B2 (en) * 2019-01-10 2020-11-10 Microsoft Technology Licensing, Llc Camera environment mapping

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Lehre von C. Chen, C. X. Lu, J. Wahlström, A. Markham und N. Trigoni nutzen, „Deep Neural Network Based Inertial Odometry Using Low-Cost Inertial Measurement Units", in IEEE Transactions on Mobile Computing, vol. 20, no. 4, pp. 1351-1364, 1 April 2021, doi: 10.1109/TMC.2019.2960780

Also Published As

Publication number Publication date
US20240233184A1 (en) 2024-07-11
WO2022238933A1 (en) 2022-11-17

Similar Documents

Publication Publication Date Title
EP3454298B1 (de) Kameravorrichtung und verfahren zur erfassung eines stromes aus objekten
DE102015207676B4 (de) Verfahren und Vorrichtung zur Hinderniserkennung auf Basis einer monokularen Kamera
DE102018006765B4 (de) Verfahren und system(e) für das management von frachtfahrzeugen
EP1210680B1 (de) Verfahren und anordnung zur erfassung und analyse des rezeptionsvrhaltens von personen
EP2439487B1 (de) Volumenmessvorrichtung für bewegte Objekte
EP3044760B1 (de) Verfahren zur analyse der verteilung von objekten in freien warteschlangen
DE102018121018A1 (de) Erweitern von realen sensoraufnahmen mit simuliertem sensordatenhintergrund
DE112011103690T5 (de) Erkennung und Verfolgung sich bewegender Objekte
EP3014569B1 (de) Inspektion der konturierten fläche des unterbodens eines kraftfahrzeugs
DE112009000480T5 (de) Dynamische Objektklassifikation
US11049259B2 (en) Image tracking method
DE102007001649A1 (de) Verfahren, Vorrichtung und Computerprogramm zur Selbstkalibrierung einer Überwachungskamera
DE102015206178A1 (de) Ein Videoverfolgungsbasiertes Verfahren zur automatischen Reihung von Fahrzeugen in Drivethrough-Anwendungen
EP2767925A2 (de) Verfahren zur Erkennung von Objekten in einem Lager und/oder zur räumlichen Orientierung in einem Lager
DE102014217361B4 (de) Bestimmen der quellspur eines sich bewegenden elements, das mit der zielspur zusammengeführt wird
CN107992819A (zh) 一种车辆属性结构化特征的确定方法与装置
DE102018006764B4 (de) Verfahren und system(e) für das management von frachtfahrzeugen
DE102015211874A1 (de) Objekterkennungsvorrichtung
DE102015207047A1 (de) Verfahren und System automatisierten Sequenzieren von Fahrzeugen in nebeneinander angeordneten Durchfahrtskonfigurationen über eine bildbasierte Einstufung
DE112022002520T5 (de) Verfahren zur automatischen Kalibrierung von Kameras und Erstellung von Karten
DE102014110201B3 (de) Selbstfahrender Roboter und Verfahren zur Hinderniserkennung bei einem selbstfahrenden Roboter
DE112019006186T5 (de) Verfahren und vorrichtung zur steuerung von lichtemittern einer mobilen automatisierungsvorrichtung
DE102019120022A1 (de) Flurförderzeug mit einer Objekterkennung
DE102017126861A1 (de) Verfahren und Vorrichtung zur Positionsbestimmung
DE202014101714U1 (de) Codelesesystem zum Lesen von Codes

Legal Events

Date Code Title Description
R012 Request for examination validly filed