-
Gebiet der Technik
-
Die vorliegende Erfindung betrifft eine Technik für eine Bewegungsanalyse.
-
Stand der Technik
-
Auf den Feldern der Industrie wird eine Verarbeitung wie eine Messung einer Zykluszeit und eine Analyse von Arbeitsinhalten hauptsächlich manuell durchgeführt.
-
Zykluszeit ist eine Zeit, die eine arbeitende Person benötigt, um ein Produkt zu montieren.
-
Eine Analyse von Arbeitsinhalten wird durchgeführt, um eine Nichtdurchführung von Arbeiten oder nicht-stationäre Arbeiten zu erfassen. Die nicht-stationären Arbeiten sind Arbeiten, die nicht stationär durchgeführt werden.
-
Eine manuelle Verarbeitung verursacht hohe Personalkosten. Ferner kann eine manuelle Verarbeitung eine Verarbeitung nur in einem begrenzten Bereich bewältigen.
-
Wenn es leicht wird, Bewegungen von arbeitenden Personen zu analysieren, wird überlegt, dass eine Verarbeitung einer solchen Zykluszeitmessung und Analyse von Arbeitsinhalten einfach wird.
-
Patentliteratur 1 offenbart eine Bewegungsanalyse, die automatisch durchgeführt wird. Für eine Bewegungsanalyse werden eine Kamera und ein dreidimensionaler Sensor am Kopf einer Person angebracht, und ein bestimmtes Maß an Bewegungen der Person wird unter Verwendung der Kamera und des dreidimensionalen Sensors extrahiert.
-
Liste der Entgegenhaltungen
-
Patentliteratur
-
Patentdokument 1:
JP 2016-099982 A
-
Abriss der Erfindung
-
Technische Aufgabe
-
In Patentliteratur 1 werden für eine automatische Bewegungsanalyse eine Kamera und ein dreidimensionaler Sensor am Kopf einer Person angebracht.
-
Wenn ein Verfahren aus Patentliteratur 1 angewendet wird, um Bewegungen einer arbeitenden Person zu analysieren, wird ein Objekt, das für Arbeiten nicht notwendig ist, am Körper der arbeitenden Person angebracht. Darüber hinaus kann das Objekt, das am Körper der arbeitenden Person angebracht wird, Arbeiten behindern.
-
Die vorliegende Erfindung zielt darauf ab, eine Analyse von Bewegungen einer arbeitenden Person zu ermöglichen, ohne Arbeiten zu behindern.
-
Lösung der Aufgabe
-
Gemäß einem Aspekt der vorliegenden Erfindung wird ein Bewegungsanalysesystem angegeben, das aufweist:
- eine Zielbildannahmeeinheit zum Annehmen einer Mehrzahl von Zielbilddatenteilen, die durch aufeinanderfolgendes Fotografieren einer Zielperson, die eine Reihe von Bewegungen durchzuführen hat, erhalten werden;
- eine Zielposenerfassungseinheit zum Erfassen einer Pose der Zielperson, die in einem Zielbild von jedem der Mehrzahl von Zielbilddatenteilen gezeigt wird, und zum Erzeugen von Zielposendaten, welche die erfasste Pose darstellen;
- eine Zieltrajektorieextraktionseinheit, um aus einer Mehrzahl von Zielposendatenteilen, die der Mehrzahl von Zielbilddatenteilen entsprechen, als Zieltrajektoriedaten, die einen Übergang der Pose der Zielperson darstellen, zwei oder mehr Zielposendatenteile zu extrahieren, die Zielposendaten zu einer Zielzeit und Zielposendaten von einer Zeit einschließen, bei der es sich um eine vorausgehende Zeit, die sich bis zu der Zielzeit fortsetzt, und/oder eine folgende Zeit, die sich an die Zielzeit anschließt, handelt; und
- eine Bewegungsspezifizierungseinheit, um eine Bewegungskennung zum Identifizieren einer Bewegung der Zielperson auf Basis der Zieltrajektoriedaten zu erhalten.
-
Vorteilhafte Wirkungen der Erfindung
-
Gemäß der vorliegenden Erfindung ist es möglich, Bewegungen einer arbeitenden Person zu spezifizieren, ohne ein Objekt, das für Arbeiten unnötig ist, wie eine Kamera und einen dreidimensionalen Sensor usw. am Körper einer arbeitenden Person (als Beispiel für eine Zielperson) anzubringen. Das heißt, es ist möglich, Bewegungen einer arbeitenden Person zu analysieren, ohne Arbeiten zu behindern.
-
Figurenliste
-
- 1 ist eine Konfigurationsskizze eines Bewegungsanalysesystems 100 gemäß einer ersten Ausführungsform;
- 2 ist eine Konfigurationsskizze einer Bewegungsanalysevorrichtung 200 gemäß der ersten Ausführungsform;
- 3 ist ein Flussdiagramm eines Bewegungsanalyseverfahrens gemäß der ersten Ausführungsform;
- 4 ist ein erläuterndes Diagramm eines Zielposenerfassungsprozesses (S120) gemäß der ersten Ausführungsform;
- 5 ist ein Flussdiagramm eines Zieltrajektorieextraktionsprozesses (S130) gemäß der ersten Ausführungsform;
- 6 ist ein erläuterndes Diagramm des Zieltrajektorieextraktionsprozesses (S130) gemäß der ersten Ausführungsform;
- 7 ist eine Konfigurationsskizze einer Bewegungsdatenbank 291 gemäß der ersten Ausführungsform;
- 8 ist ein Flussdiagramm eines Bewegungsspezifizierungsprozesses (S140) gemäß der ersten Ausführungsform;
- 9 ist ein Flussdiagramm eines Vergleichsprozesses (S144) gemäß der ersten Ausführungsform;
- 10 ist ein erläuterndes Diagramm betreffs einer Verwendung einer dynamischen Programmierung gemäß der ersten Ausführungsform;
- 11 ist eine Konfigurationsskizze des Bewegungsanalysesystems 100 gemäß der ersten Ausführungsform;
- 12 ist ein Konfigurationsdiagramm einer Registrierungseinheit 220 gemäß der ersten Ausführungsform;
- 13 ist ein Flussdiagramm eines Registrierungsprozesses gemäß der ersten Ausführungsform;
- 14 ist ein erläuterndes Diagramm des Bewegungstrajektorieerfassungsprozesses (S103) gemäß der ersten Ausführungsform;
- 15 ist ein Konfigurationsdiagramm einer Registrierungseinheit 220 gemäß einer zweiten Ausführungsform;
- 16 ist ein Flussdiagramm eines Registrierungsprozesses gemäß der zweiten Ausführungsform;
- 17 ist ein Flussdiagramm eines Bewegungsposenerzeugungsprozesses (S250) gemäß der zweiten Ausführungsform;
- 18 ist eine Skizze, die ein konkretes Beispiel für ein Sampeln bzw. Abtasten gemäß der zweiten Ausführungsform darstellt;
- 19 ist eine Konfigurationsskizze einer Bewegungsanalysevorrichtung 200 gemäß einer dritten Ausführungsform;
- 20 ist ein Konfigurationsdiagramm einer Lerneinheit 230 gemäß der dritten Ausführungsform;
- 21 ist ein Flussdiagramm eines Bewegungsanalyseverfahrens gemäß der dritten Ausführungsform;
- 22 ist ein Flussdiagramm eines Lernprozesses gemäß der dritten Ausführungsform; und
- 23 ist eine Konfigurationsskizze von Hardware der Bewegungsanalysevorrichtung 200 gemäß den Ausführungsformen.
-
Beschreibung von Ausführungsformen
-
In den Ausführungsformen und Zeichnungen werden gleiche Elemente oder entsprechende Elemente mit gleichen Bezugszahlen bezeichnet. Beschreibungen für die Elemente mit den gleichen Bezugszahlen wie Elemente, die bereits erläutert wurden, werden gegebenenfalls weggelassen oder vereinfacht. Die Pfeile in den Zeichnungen veranschaulichen hauptsächlich Datenflüsse oder Verarbeitungsabläufe.
-
Erste Ausführungsform
-
Ein Bewegungsanalysesystem 100 zum automatischen Analysieren von Bewegungen einer Person werden auf Basis von 1 bis 14 beschrieben.
-
***Erläuterung der Konfiguration***
-
Auf Basis von 1 wird eine Konfiguration des Bewegungsanalysesystems 100 beschrieben.
-
Das Bewegungsanalysesystem 100 weist eine Kamera 101 und eine Bewegungsanalysevorrichtung 200 auf.
-
Die Kamera 101 fotografiert eine Zielperson 111. Die Kamera 101 kann die Zielperson 111 von einer Front- bzw. Vorderseite fotografieren oder kann die Zielperson 111 aus einer Diagonale fotografieren. Ferner kann die Kamera 101 den gesamten Körper der Zielperson 111 fotografieren oder kann einen Teil (zum Beispiel die obere Hälfte des Körpers) der Zielperson 111 fotografieren.
-
Die Bewegungsanalysevorrichtung 200 analysiert Bewegungen der Zielperson 111.
-
Die Zielperson 111 ist eine Person, die ein Ziel einer Bewegungsanalyse sein soll. Ein konkretes Beispiel für die Zielperson 111 ist eine Person, die eine Arbeit zu verrichten hat (eine arbeitende Person).
-
Auf Basis von 2 wird die Konfiguration der Bewegungsanalysevorrichtung 200 beschrieben.
-
Die Bewegungsanalysevorrichtung 200 ist ein Computer, der Hardware-Komponenten wie einen Prozessor 201, einen Arbeitsspeicher 202, eine Hilfsspeichervorrichtung 203, eine Kommunikationsvorrichtung 204 und eine Eingabe- und Ausgabeschnittstelle 205 aufweist. Diese Hardware-Komponenten sind über Signalleitungen miteinander verbunden.
-
Der Prozessor 201 ist ein IC, der eine arithmetische Verarbeitung durchführt, wodurch andere Hardware-Komponenten gesteuert werden. Zum Beispiel ist der Prozessor 201 eine CPU, ein DSP oder GPU.
-
IC ist die Abkürzung für „Integrated Circuit“, d. h. integrierter Schaltkreis.
-
CPU ist die Abkürzung für „Central Processing Unit“, d. h. zentrale Verarbeitungseinheit.
-
DSP ist die Abkürzung für „Digital Signal Processor“, d. h. digitaler Signalprozessor.
-
GPU ist die Abkürzung für „Graphics Processing Unit“, d. h. Grafikprozessor.
-
Der Arbeitsspeicher 202 ist eine flüchtige oder nicht-flüchtige Speichervorrichtung. Der Arbeitsspeicher 202 wird auch als eine Hauptspeichervorrichtung oder als ein Hauptspeicher bezeichnet. Der Arbeitsspeicher 202 ist zum Beispiel ein RAM. Im Arbeitsspeicher 202 gespeicherte Daten werden nach Bedarf in der Hilfsspeichervorrichtung 203 gespeichert.
-
RAM ist die Abkürzung für „Random Access Memory“.
-
Die Hilfsspeichervorrichtung 203 ist eine nicht-flüchtige Speichervorrichtung. Zum Beispiel ist die Hilfsspeichervorrichtung 203 ein ROM, ein HDD oder ein Flash-Speicher. In der Hilfsspeichervorrichtung 203 gespeicherte Daten werden bei Bedarf in den Arbeitsspeicher 202 geladen.
-
ROM ist die Abkürzung für „Read Only Memory“.
-
HDD ist die Abkürzung für „Hard Disk Drive“.
-
Die Kommunikationsvorrichtung 204 ist ein Empfänger und ein Sender. Zum Beispiel ist die Kommunikationsvorrichtung 204 ein Kommunikations-Chip oder eine NIC.
-
NIC ist die Abkürzung für „Network Interface Card“.
-
Die Eingabe- und Ausgabeschnittstelle 205 ist ein Port, mit dem eine Eingabevorrichtung und eine Ausgabevorrichtung verbunden werden. Zum Beispiel ist die Eingabe- und Ausgabeschnittstelle 205 ein USB-Anschluss, ist die Eingabevorrichtung eine Tastatur oder eine Maus und ist die Ausgabevorrichtung ein Display.
-
USB ist die Abkürzung für „Universal Serial Bus“.
-
Die Bewegungsanalysevorrichtung 200 weist Elemente wie eine Spezifikationseinheit 210 und eine Registrierungseinheit 220 auf. Die Spezifikationseinheit 210 weist Elemente auf wie eine Zielbildannahmeeinheit 211, eine Zielposenerfassungseinheit 212, eine Zieltrajektorieextraktionseinheit 213, eine Bewegungsspezifikationseinheit 214 und eine Ergebnisausgabeeinheit 215. Diese Elemente werden durch Software verwirklicht.
-
Die Hilfsspeichervorrichtung 203 speichert ein Bewegungsanalyseprogramm, mit dem bewirkt wird, dass ein Computer als die Spezifikationseinheit 210 und die Registrierungseinheit 220 fungiert. Das Bewegungsanalyseprogramm wird in den Arbeitsspeicher 202 geladen und vom Prozessor 201 ausgeführt.
-
Ferner speichert die Hilfsspeichervorrichtung 203 ein OS. Zumindest ein Teil des OS wird in den Arbeitsspeicher 202 geladen und durch den Prozessor 201 ausgeführt.
-
Der Prozessor 201 führt das Bewegungsanalyseprogramm aus, während er das OS ausführt.
-
OS ist die Abkürzung für „Operating System“.
-
Die Eingabe- und Ausgabedaten des Bewegungsanalyseprogramms werden in einer Speichereinheit 290 gespeichert.
-
Der Arbeitsspeicher 202 fungiert als die Speichereinheit 290. Jedoch können Speichervorrichtungen wie die Hilfsspeichervorrichtung 203, ein Register in dem Prozessor 201 und ein Cache-Speicher in dem Prozessor 201 usw. anstelle des Arbeitsspeichers 202 oder zusammen mit dem Arbeitsspeicher 202 als die Speichereinheit 290 fungieren.
-
Die Speichereinheit 290 speichert eine Bewegungsdatenbank 291 usw.
-
Die Bewegungsanalysevorrichtung 200 kann eine Mehrzahl von Prozessoren einschließen, die den Prozessor 201 ersetzen. Die Mehrzahl von Prozessoren teilen sich die Funktionen des Prozessors 201.
-
Das Bewegungsanalyseprogramm kann auf computerlesbare Weise in einem nicht-flüchtigen Aufzeichnungsmedium wie einer Optical Disk oder einem Flash-Speicher usw. aufgezeichnet (gespeichert) werden.
-
***Erläuterung des Betriebs***
-
Ein Ablauf eines Betriebs des Bewegungsanalysesystems 100 entspricht einem Bewegungsanalyseverfahren. Ferner entspricht ein Ablauf eines Betriebs der Bewegungsanalysevorrichtung 200 einem Ablauf einer Verarbeitung durch ein Bewegungsanalyseprogramm.
-
Ein Bewegungsanalyseverfahren wird auf Basis von 3 erörtert.
-
In einem Schritt S110 nimmt die Zielbildannahmeeinheit 211 eine Mehrzahl von Zielbilddatenteilen entgegen.
-
Die Mehrzahl von Zielbilddatenteilen wird durch aufeinanderfolgendes Fotografieren der Zielperson 111, die eine Reihe von Bewegungen durchzuführen hat, erhalten.
-
Jeder Zielbilddatenteil stellt ein Zielbild dar. Die Zielperson 111 ist in dem Zielbild gezeigt.
-
Zum Beispiel wird die Mehrzahl von Zielbilddatenteilen von einem Anwender in die Bewegungsanalysevorrichtung 200 eingegeben. Die Zielbildannahmeeinheit 211 nimmt die Mehrzahl von eingegebenen Zielbilddatenteilen entgegen.
-
Zum Beispiel wird die Mehrzahl von Zielbilddatenteilen von der Kamera 101 gesendet und von der Bewegungsanalysevorrichtung 200 empfangen. Die Zielbildannahmeeinheit 211 nimmt die empfangene Mehrzahl von Zielbilddatenteilen an.
-
In einem Schritt S120 erfasst die Zielposenerfassungseinheit 212 eine Pose der Zielperson 111, die in dem Zielbild von jedem von den Zielbilddatenteilen gezeigt wird, und erzeugt Zielposendaten, welche die erfasste Pose ausdrücken.
-
Auf diese Weise ist es möglich, die Mehrzahl von Zielposendatenteilen zu erhalten, die der Mehrzahl von Zielbilddatenteilen entsprechen.
-
Ein Zielposenerfassungsprozess (S120) wird auf Basis von 4 beschrieben. [m-1], [m] und [m+1] geben drei aufeinanderfolgende Fotografierzeiten an. Die Fotografierzeit ist eine Zeit, zu der ein Fotografieren durchgeführt wird.
-
Zielbilddaten 121 zu den jeweiligen Fotografierzeiten stellen Zielbilder zu den jeweiligen Fotografierzeiten dar. In den Zielbildern zu den jeweiligen Fotografierzeiten ist die Zielperson 111 zu den jeweiligen Fotografierzeiten gezeigt.
-
Die Zielposenerfassungseinheit 212 erfasst eine Pose der Zielperson 111 zu allen Fotografierzeiten durch Durchführen eines Bildprozesses an dem Zielbild zu allen Fotografierzeiten.
-
Genauer erfasst die Zielposenerfassungseinheit 212 einen Skelettrahmen der Zielperson 111. Anhand des Skelettrahmens der Zielperson 111 wird eine Pose der Zielperson 111 spezifiziert.
-
Genauer gesagt stellt die Zielposenerfassungseinheit 212 die Positionen der einzelnen Gelenke der Zielperson 111 fest. Die Position jedes Gelenks kann eine absolute Position in einem spezifischen Koordinatensystem sein oder kann eine relative Position in Bezug auf andere Gelenke sein. Die Position jedes Gelenks wird von einem Koordinatenwert identifiziert. Der Skelettrahmen wird durch eine Mehrzahl von Gelenken, wie ein Halsgelenk, ein Schultergelenk, spezifiziert.
-
Die Zielposenerfassungseinheit 212 erzeugt Zielposendaten 122, die eine Pose der Zielperson 111 zur jeweiligen Fotografierzeit darstellen.
-
In den Zielposendaten 122 zur jeweiligen Fotografierzeit stellt jeder schwarze Punkt eine Position eines Gelenks der Zielperson 111 dar.
-
Es wird erneut auf 3 Bezug genommen, und die Beschreibungen werden ab Schritt S130 fortgesetzt.
-
Schritt S130 und Schritt S140 werden für jede Fotografierzeit in einem Fotografierzeitschlitz durchgeführt. Der Fotografierzeitschlitz ist ein Zeitschlitz, in dem ein Fotografieren durchgeführt wird.
-
Im Schritt S130 extrahiert die Zieltrajektorieextraktionseinheit 213 Zieltrajektoriedaten aus einer Mehrzahl von Zielposendatenteilen, die der Mehrzahl von Zielbilddatenteilen entsprechen.
-
Die Zieltrajektoriedaten werden von zwei oder mehr Zielposendatenteilen gebildet, die einen Übergang der Pose der Zielperson 111 darstellen. In den Zieltrajektoriedaten sind zwei oder mehr Zielposendatenteile nach Art einer Zeitreihe geordnet. Jedoch können die Zieltrajektoriedaten eine Polynomfunktion sein, die durch Approximieren von zwei oder mehr Zielposendatenteilen dargestellt wird.
-
Es folgt eine zusätzliche Erläuterung zu den Zieltrajektoriedaten. Trajektoriedaten sind Daten von aufeinanderfolgenden Zeiten. Die Zieltrajektoriedaten sind Zielposendaten von aufeinanderfolgenden Zeiten. Die aufeinanderfolgenden Zeiten sind eine Zielzeit und Zeiten, die sich bis zu der Zielzeit fortsetzen und auf diese folgen. Wenn die Zielzeit [t] ist, sind die aufeinanderfolgenden Zeiten [t-1], [t] und [t+1].
-
Der Zieltrajektorieextraktionsprozess (S130) wird auf Basis von 5 beschrieben.
-
In einem Schritt S131 wählt die Zieltrajektorieextraktionseinheit 213 eine noch nicht ausgewählte Fotografierzeit aus einem Fotografierzeitschlitz aus.
-
Der Fotografierzeitschlitz ist ein Zeitschlitz, in dem ein Fotografieren durchgeführt wird.
-
Die ausgewählte Fotografierzeit wird als „Zielzeit“ bezeichnet.
-
In einem Schritt S132 bestimmt die Zieltrajektorieextraktionseinheit 213 eine Fotografierzeitgruppe für die Zielzeit.
-
Die Fotografierzeitgruppe wird von zwei oder mehr aufeinanderfolgenden Fotografierzeiten einschließlich der Zielzeit gebildet. Es ist möglich, die Anzahl der Fotografierzeiten, die in der Fotografierzeitgruppe enthalten sind, vorab zu bestimmen.
-
Die Zielzeit wird mit „m“ bezeichnet. Zum Beispiel bestimmt die Zieltrajektorieextraktionseinheit 213 eine Fotografierzeitgruppe, die von einer Fotografierzeit (m-1), einer Fotografierzeit (m) und einer Fotografierzeit (m+1) gebildet wird, als Fotografierzeitgruppe für die Zielzeit.
-
Die bestimmte Fotografierzeitgruppe wird als „Zielzeitgruppe“ bezeichnet.
-
In einem Schritt S133 extrahiert die Zieltrajektorieextraktionseinheit 213 Zieltrajektoriedaten, die der Zielzeit entsprechen, aus der Mehrzahl von Zielposendatenteilen.
-
Wenn die Zielzeitgruppe beispielsweise von der Zeit (m-1), der Zeit (m) und der Zeit (m+1) gebildet wird, extrahiert die Zieltrajektorieextraktionseinheit 213 Zielposendaten zu der Zeit (m-1), die Zielposendaten zu der Zeit (m) und die Zielposendaten zu der Zeit (m+1). Drei extrahierte Zielposendatenteile bilden Zieltrajektoriedaten, die der Zielzeit entsprechen.
-
Der Zieltrajektorieextraktionsprozess (S130) wird auf Basis von 6 beschrieben. [m-1], [m] und [m+1] bezeichnen drei aufeinanderfolgende Fotografierzeiten.
-
Es wird davon ausgegangen, dass eine Zielzeitgruppe von [m-1], [m] und [m+1] gebildet wird.
-
Die Zieltrajektorieextraktionseinheit 213 extrahiert die Zielposendaten 122 bei [m-1], die Zielposendaten 122 bei [m] und die Zielposendaten 122 bei [m+1].
-
Drei extrahierte Zielposendaten 122 bilden Zieltrajektoriedaten 123 bei [m].
-
Es wird erneut auf 3 Bezug genommen, und die Beschreibungen werden für Schritt S140 und danach fortgesetzt.
-
Im Schritt S140 erhält die Bewegungsspezifizierungseinheit 214 eine Bewegungskennung zum Identifizieren einer Bewegung der Zielperson 111 auf Basis der Zieltrajektoriedaten.
-
Genauer extrahiert die Bewegungsspezifizierungseinheit 214 eine Bewegungskennung von Bewegungstrajektoriedaten, die mit den Zieltrajektoriedaten übereinstimmen, aus der Bewegungsdatenbank 291.
-
Die Bewegungsdatenbank 291 ist eine Datenbank, an der ein oder mehrere Sätze aus einer Bewegungskennung und einem Bewegungstrajektoriedatenteil registriert sind.
-
Die Bewegungskennung identifiziert eine Bewegung.
-
Die Bewegungstrajektoriedaten stellen einen Übergang von Positionen einer Person dar, die Bewegungen auszuführen hat, die von Bewegungskennungen zu identifizieren sind.
-
Nun wird die Konfiguration der Bewegungsdatenbank 291 auf Basis von 7 beschrieben. [t-1], [t] und [t+1] bezeichnen drei aufeinanderfolgende Fotografierzeiten.
-
In der Bewegungsdatenbank 291 sind eine Mehrzahl von Zeiten, eine Mehrzahl von Bewegungsposendatenteilen und eine Mehrzahl von Bewegungskennungen miteinander verknüpft.
-
Die Bewegungstrajektoriedaten 133 werden von zwei oder mehr Bewegungsposendatenteilen 132 gebildet. Genauer werden die Bewegungstrajektoriedaten 133 von zwei oder mehr Bewegungsposendatenteilen 132 gebildet, die mit zwei oder mehr aufeinanderfolgenden Zeiten verknüpft sind.
-
Die Bewegungsposendaten 132 stellen Posen einer Person dar, die Bewegungen auszuführen hat.
-
Die Bewegungstrajektoriedaten 133 bei [t] werden von Bewegungsposendaten 132 bei [t-1], Bewegungsposendaten 132 bei [t] und Bewegungsposendaten 132 bei [t+1] gebildet. Die Bewegungstrajektoriedaten 133 schließen Daten von aufeinanderfolgenden Zeiten vor und nach [t] ein.
-
Die Bewegungstrajektoriedaten 133 bei [t] stellen einen Übergang von Posen einer Person dar, die Bewegungen auszuführen hat, die von einer Bewegungskennung „Arbeit A“ zur Zeit t identifiziert werden.
-
Der Bewegungsspezifikationsprozess (S140) wird auf Basis von 8 beschrieben.
-
In einem Schritt S141 wählt die Bewegungsspezifizierungseinheit 214 eine noch nicht ausgewählte Zeit aus „Zeit“ in der Bewegungsdatenbank 291 aus. Genauer wählt die Bewegungsspezifizierungseinheit 214 Zeiten in aufsteigender Ordnung aus.
-
Die ausgewählte Zeit wird als „Vergleichszeit“ bezeichnet.
-
In einem Schritt S142 bestimmt die Bewegungsspezifizierungseinheit 214 eine Vergleichszeitgruppe in Bezug auf die Vergleichszeit.
-
Die Vergleichszeitgruppe wird von zwei oder mehr aufeinanderfolgenden Zeiten einschließlich der Vergleichszeit gebildet. Es ist möglich, die Anzahl der Zeiten, die in der Vergleichszeitgruppe enthalten sind, vorab zu bestimmen.
-
Die Vergleichszeit wird mit „t“ bezeichnet. Zum Beispiel bestimmt die Bewegungsspezifizierungseinheit 214 eine Zeitgruppe, die von der Zeit (t-1), der Zeit (t) und der Zeit (t+1) gebildet wird, als Vergleichszeitgruppe für die Vergleichszeit.
-
In einem Schritt S143 extrahiert die Bewegungsspezifizierungseinheit 214 Bewegungstrajektoriedaten, die der Vergleichszeit entsprechen, aus der Bewegungsdatenbank 291.
-
Beispielsweise extrahiert die Bewegungsspezifizierungseinheit 214, wenn die Vergleichszeitgruppe von der Zeit (t-1), der Zeit (t) und der Zeit (t+1) gebildet wird, Bewegungsposendaten zur Zeit (t-1), die Bewegungsposendaten zur Zeit (t) und die Bewegungsposendaten zur Zeit (t+1). Drei extrahierte Bewegungsposendaten werden von den Bewegungstrajektoriedaten gebildet, die der Vergleichszeit entsprechen.
-
In einem Schritt S144 vergleicht die Bewegungsspezifizierungseinheit 214 die Bewegungstrajektoriedaten mit den Zieltrajektoriedaten. Die Zieltrajektoriedaten werden in Schritt S130 extrahiert (siehe 3).
-
Genauer berechnet die Bewegungsspezifizierungseinheit 214 einen Abstand der Bewegungstrajektoriedaten in Bezug auf die Zieltrajektoriedaten.
-
Der Abstand der Bewegungstrajektoriedaten zu den Zieltrajektoriedaten entspricht der Größe der Differenz zwischen einem Übergang von Posen, die von den Zieltrajektoriedaten dargestellt werden, und einem Übergang von Posen, die von den Bewegungstrajektoriedaten dargestellt werden.
-
Ein Vergleichsprozess (S144) wird auf Basis von 9 beschrieben.
-
Zielposendaten, die in den Zieltrajektoriedaten enthalten sind, werden mit l(m) oder l(m+k) bezeichnet.
-
Bewegungsposendaten, die in den Bewegungstrajektoriedaten enthalten sind, werden mit R(t) oder R(t+k) bezeichnet.
-
„k“ ist eine ganze Zahl gleich oder größer als -i, aber gleich oder kleiner als +i. „i“ ist eine ganze Zahl gleich oder größer als 1. Wenn die Zahl der Zielposendatenteile, die in den Zieltrajektoriedaten enthalten sind, „3“ ist, ist „i“ gleich „1“.
-
In einem Schritt S1441 berechnet die Bewegungsspezifizierungseinheit 214 einen Abstand von Zielposendaten I(m+k) zu Zielposendaten I(m). Der berechnete Abstand wird mit I'(m+k) bezeichnet.
-
Der Abstand I'(m+k) entspricht der Größe der Differenz zwischen der Pose, die von den Zielposendaten I(m) dargestellt wird, und der Pose, die von den Zielposendaten I(m+k) dargestellt wird.
-
Es ist möglich, den Abstand I'(m+k) durch einen Ausdruck (1) darzustellen.
-
-
Genauer berechnet die Bewegungsspezifizierungseinheit 214 den Abstand I'(m+k) auf die folgende Weise.
-
Die Zielposendaten geben jeweilige Positionen einer Mehrzahl von Gelenken an.
-
Die Bewegungsspezifizierungseinheit 214 berechnet für jedes Gelenk einen Abstand zwischen einer Position eines Gelenks in den Zielposendaten I(m) und einer Position eines Gelenks in den Zielposendaten I(m+k). Es kann angezeigt sein, dass die Bewegungsspezifizierungseinheit 214 jedes Gelenk gewichtet und den Abstand für jedes Gelenk gemäß dem Gewicht jedes Gelenks berechnet. In diesem Fall wird der Abstand eines wichtigen Gelenks ein großer Wert.
-
Andernfalls berechnet die Bewegungsspezifizierungseinheit 214 eine Differenz zwischen dem Abstand zwischen Gelenken in den Zielposendaten l(m) und dem Abstand zwischen Gelenken in den Zielposendaten l(m+k) als Abstand in Bezug auf einen Satz von Gelenken. Es kann angezeigt sein, dass die Bewegungsspezifizierungseinheit 214 jeden Satz von Gelenken gewichtet und den Abstand in Bezug auf jeden Satz von Gelenken gemäß dem Gewicht jedes Satzes von Gelenken berechnet. In diesem Fall wird der Abstand in Bezug auf einen wichtigen Satz von Gelenken ein großer Wert.
-
Die Bewegungsspezifizierungseinheit 214 berechnet die Summe der berechneten Abstände. Die berechnete Summe wird ein Abstand I'(m+k).
-
In einem Schritt S1442 berechnet die Bewegungsspezifizierungseinheit 214 einen Abstand von Bewegungsposendaten R(t+k) in Bezug auf Bewegungsposendaten R(t). Der berechnete Abstand wird mit R'(t+k) bezeichnet
-
Der Abstand R'(t+k) entspricht der Größe der Differenz zwischen der Pose, die von den Bewegungsposendaten R(t) dargestellt wird, und der Pose, die von den Bewegungsposendaten R(t+k) dargestellt wird.
-
Es ist möglich, den Abstand R'(t+k) durch einen Ausdruck (2) darzustellen.
-
-
Genauer berechnet die Bewegungsspezifizierungseinheit 214 den Abstand R'(t+k) auf die folgende Weise.
-
Die Bewegungsposendaten geben jeweilige Positionen einer Mehrzahl von Gelenken an.
-
Die Bewegungsspezifizierungseinheit 214 berechnet für jedes Gelenk den Abstand zwischen einer Position eines Gelenks in den Bewegungsposendaten R(t) und einer Position eines Gelenks in den Bewegungsposendaten R(t+k). Es kann angezeigt sein, dass die Bewegungsspezifizierungseinheit 214 jedes Gelenk gewichtet und den Abstand für jedes Gelenk gemäß dem Gewicht jedes Gelenks berechnet. In diesem Fall wird der Abstand eines wichtigen Gelenks ein großer Wert.
-
Andernfalls berechnet die Bewegungsspezifizierungseinheit 214 die Differenz zwischen einem Abstand zwischen Gelenken in den Bewegungsposendaten R(m) und einem Abstand zwischen Gelenken in den Bewegungsposendaten I(m+k) als Abstand in Bezug auf einen Satz von Gelenken. Es kann angezeigt sein, dass die Bewegungsspezifizierungseinheit 214 jeden Satz von Gelenken gewichtet und einen Abstand in Bezug auf jeden Satz von Gelenken gemäß dem Gewicht jedes Satzes von Gelenken berechnet. In diesem Fall wird ein Abstand in Bezug auf einen wichtigen Satz von Gelenken ein großer Wert.
-
Die Bewegungsspezifizierungseinheit 214 berechnet die Summe der berechneten Abstände. Die berechnete Summe wird der Abstand R'(t+k).
-
In einem Schritt S1443 berechnet die Bewegungsspezifizierungseinheit 214 die Summe der Differenzen zwischen dem Abstand I'(m+k) und dem Abstand R'(t+k).
-
Die berechnete Summe wird ein Abstand von Bewegungstrajektoriedaten in Bezug auf Zieltrajektoriedaten.
-
Es ist möglich, den Abstand von Bewegungstrajektoriedaten in Bezug auf Zieltrajektoriedaten durch einen Ausdruck (3) auszudrücken.
[Formel 1]
-
Es kann angezeigt sein, den Abstand der Bewegungstrajektoriedaten in Bezug auf Zieltrajektoriedaten durch dynamische Programmierung oder ein Hidden-Markov-Modell usw. zu berechnen. Bei diesen Verfahren wird ein kleinster Abstand durch dynamisches Verlängern oder Verkürzen von Zeitreihendaten berechnet.
-
Bei diesen Verfahren wird zum Beispiel dann, wenn der durch I'(m+k)-R' (m+(k+a)) berechnete Abstand kleiner ist als der durch I'(m+k)-R' (t+k) berechnete Abstand, der Abstand zwischen „k“ und „k+a“ hinzugefügt.
-
Die Verwendung einer dynamischen Programmierung wird auf Basis von 10 beschrieben.
-
Die Zahlenwerte in der Tabelle geben Werte von |I'(m+a)-R'(t+b)| an; mit der Maßgabe, dass -2≤a und b≤2. Ein durchgezogener Pfeil gibt einen Weg (eine Entsprechung zwischen I' und R') an.
-
Bei der dynamischen Programmierung werden Abstände zwischen den einzelnen Rastern durch Ändern von „a“ und „b“ berechnet. Dann wird der Weg (siehe den durchgezogenen Pfeil) ausgewählt, durch den die Gesamtsumme der Abstände klein wird.
-
Es wird erneut auf 8 Bezug genommen, und die Beschreibung wird mit Schritt S145 fortgesetzt.
-
Im Schritt S145 entscheidet die Bewegungsspezifizierungseinheit 214, ob es eine noch nicht ausgewählte Vergleichszeit gibt.
-
Wenn es die noch nicht ausgewählte Vergleichszeit gibt, geht die Verarbeitung zu Schritt S141 weiter.
-
Wenn es die noch nicht ausgewählte Vergleichszeit nicht gibt, geht die Verarbeitung zu Schritt S146 weiter.
-
In einem Schritt S146 wählt die Bewegungsspezifizierungseinheit 214 auf Basis eines Ergebnisses eines Vergleichs zwischen den einzelnen Bewegungstrajektoriedaten und den Zieltrajektoriedaten Bewegungstrajektoriedaten aus, die mit Zieltrajektoriedaten übereinstimmen.
-
Genauer wählt die Bewegungsspezifizierungseinheit 214 auf Basis des Abstands der einzelnen Bewegungstrajektoriedaten in Bezug auf die Zieltrajektoriedaten Bewegungstrajektoriedaten aus, die mit Zieltrajektoriedaten übereinstimmen.
-
Die Bewegungstrajektoriedaten, die mit den Zieltrajektoriedaten übereinstimmen, werden auf die folgende Weise bestimmt.
-
Die Bewegungsspezifizierungseinheit 214 wählt einen kleinsten Abstand aus den in Schritt S144 berechneten Abständen aus. Dann wählt die Bewegungsspezifizierungseinheit 214 Bewegungstrajektoriedaten aus, die dem ausgewählten Abstand entsprechen. Die ausgewählten Bewegungstrajektoriedaten sind Bewegungstrajektoriedaten, die mit den Zieltrajektoriedaten übereinstimmen.
-
Wenn der ausgewählte Abstand (der kleinste Abstand) jedoch größer ist als ein Schwellenwert, hat die Bewegungsspezifizierungseinheit 214 die Möglichkeit, festzustellen, dass es die Bewegungstrajektoriedaten, die mit den Zieltrajektoriedaten übereinstimmen, nicht gibt.
-
In einem Schritt S147 extrahiert die Bewegungsspezifizierungseinheit 214 eine Bewegungskennung der Bewegungstrajektoriedaten, die mit den Zieltrajektoriedaten übereinstimmen, aus der Bewegungsdatenbank 291.
-
Genauer wählt die Bewegungsspezifizierungseinheit 214 eine Vergleichszeit, die den in Schritt S146 ausgewählten Bewegungstrajektoriedaten entspricht, aus und extrahiert die mit der ausgewählten Vergleichszeit verknüpfte Bewegungskennung. Die extrahierte Bewegungskennung ist eine Bewegungskennung der Bewegungstrajektoriedaten, die mit den Zieltrajektoriedaten übereinstimmen.
-
Zum Beispiel wird in Schritt S146 davon ausgegangen, dass die Bewegungstrajektoriedaten 133 von [t] (siehe 7) ausgewählt werden. In diesem Fall extrahiert die Bewegungsspezifizierungseinheit 214 die Bewegungskennung „Arbeit A“, die mit [t] verknüpft ist, aus der Bewegungsdatenbank 291.
-
Wenn jedoch festgestellt wird, dass es keine Bewegungstrajektoriedaten gibt, die mit den Zieltrajektoriedaten übereinstimmen (siehe Schritt S146), wird keine Bewegungskennung extrahiert. Wenn die Bewegungskennung nicht extrahiert wird, stellt die Bewegungsspezifizierungseinheit 214 eine Kennung bereit, die eine Arbeit (nicht-stationäre Arbeit) angibt, die nicht generell durchgeführt wird.
-
Es wird erneut auf 3 Bezug genommen, um die Verarbeitung nach dem Schritt S130 und dem Schritt S140 zu beschreiben.
-
Durch Durchführen von Schritt S130 und Schritt S140 für jede Fotografierzeit in einem Fotografierzeitschlitz wird eine Bewegungskennung in Bezug auf die einzelnen Fotografierzeiten erhalten.
-
Nachdem Schritt S130 und Schritt S140 für jede Fotografierzeit in dem Fotografierzeitschlitz durchgeführt wurden, geht die Verarbeitung zu Schritt S150 weiter.
-
In einem Schritt S150 gibt die Ergebnisausgabeeinheit 215 Ergebnisdaten aus.
-
Zum Beispiel zeigt die Ergebnisausgabeeinheit 215 Ergebnisdaten auf einem Display an.
-
Die Ergebnisdaten schließen eine Bewegungskennung für jede Fotografierzeit ein.
-
***Ergänzung zur Vorverarbeitung***
-
Es wird ein Verfahren zum Erzeugen der Bewegungsdatenbank 291 beschrieben.
-
11 stellt eine Konfiguration des Bewegungsanalysesystems 100 zur Zeit der Erzeugung der Bewegungsdatenbank 291 dar.
-
Das Bewegungsanalysesystem 100 weist eine Kamera 102 und eine Bewegungsanalysevorrichtung 200 auf.
-
Die Kamera 102 fotografiert eine handelnde Person 112. Die Kamera 102 kann die gleiche sein wie die Kamera 101 (siehe 1) oder kann eine andere, von der Kamera 101 verschiedene Kamera sein.
-
Die handelnde Person 112 ist eine Person, die Handlungen (eine Zielbewegung) durchführt, die ein Ziel der Registrierung in der Bewegungsdatenbank 291 sind. Die handelnde Person 112 kann die gleiche Person wie die Zielperson 111 (siehe 1) sein oder kann eine andere, von der Zielperson 111 verschiedene Person sein.
-
Wenn die handelnde Person 112 eine arbeitende Person ist, führt die handelnde Person 112 Arbeiten, die generell durchgeführt werden (stationäre Arbeiten) als Reihe von Bewegungen aus. Jedoch kann die handelnde Person 112 auch eine Reihe von Bewegungen ausführen, die Arbeiten einschließen, die nicht generell durchgeführt werden (nicht-stationäre Arbeiten).
-
Die Konfiguration der Registrierungseinheit 220, die in der Bewegungsanalysevorrichtung 200 bereitgestellt ist, ist in 12 beschrieben.
-
Die Registrierungseinheit 220 weist Elemente wie eine Bewegungskennungsannahmeeinheit 221, eine Bewegungsbildannahmeeinheit 222, eine Bewegungsposenerfassungseinheit 223 und eine Bewegungsregistrierungseinheit 224 auf.
-
Nun wird ein Registrierungsprozess durch die Registrierungseinheit 220 auf Basis von 13 beschrieben.
-
Durch den Registrierungsprozess wird die Bewegungsdatenbank 291 (siehe 7) erzeugt.
-
In einem Schritt S101 nimmt die Bewegungskennungsannahmeeinheit 221 eine Mehrzahl von Bewegungskennungen, zu denen eine Mehrzahl von Zeiten hinzugefügt wurden, entgegen.
-
Zum Beispiel nimmt die Bewegungskennungsannahmeeinheit 221 eine Bewegungskennungsliste entgegen. Die Bewegungskennungsliste gibt eine Mehrzahl von Sätzen aus einer Zeit und einer Bewegungskennung entgegen.
-
Zum Beispiel wird die Bewegungskennungsliste von einem Anwender in die Bewegungsanalysevorrichtung 200 eingegeben. Die Bewegungskennungsannahmeeinheit 221 nimmt die Bewegungskennungsliste entgegen.
-
Für Bewegungen, die nicht in stationären Arbeiten enthalten sind, werden Kennungen hinzugefügt, die eine Nicht-Stationarität angegeben.
-
In einem Schritt S102 nimmt die Bewegungsbildannahmeeinheit 222 eine Mehrzahl von Bewegungsbilddatenteilen, zu denen eine Mehrzahl von Zeiten hinzugefügt wurden, entgegen. Die Mehrzahl von Zeiten, die zu der Mehrzahl von Bewegungsbilddatenteilen hinzugefügt werden, fallen mit einer Mehrzahl von Zeiten zusammen, die zu der Mehrzahl von Bewegungskennungen hinzugefügt werden.
-
Die Mehrzahl von Zielbilddaten wird durch aufeinanderfolgendes Fotografieren der handelnden Person 112, die eine Reihe von Bewegungen durchführt, erhalten.
-
Jeder Bewegungsbilddatenteil stellt ein Bewegungsbild dar. Die handelnde Person 112 ist in dem Bewegungsbild gezeigt.
-
Zum Beispiel nimmt die Bewegungsbildannahmeeinheit 222 eine Bewegungsbilddatei ntgegen. Die Bewegungsbilddatei schließt eine Mehrzahl von Sätzen aus Zeit und Bewegungsbilddaten ein.
-
Zum Beispiel wird die Bewegungsbilddatei von Anwendern in die Bewegungsanalysevorrichtung 200 eingegeben. Die Bewegungsbildannahmeeinheit 222 nimmt die eingegebene Bewegungsbilddatei entgegen.
-
In einem Schritt S103 erfasst die Bewegungsposenerfassungseinheit 223 eine Pose der handelnden Person 112, die in den Bewegungsbildern aller Bewegungsbilddaten gezeigt ist, und erzeugt Bewegungsposendaten, welche die erfasste Pose ausdrücken.
-
Auf diese Weise wird die Mehrzahl von Bewegungsposendatenteilen erhalten, die der Mehrzahl von Bewegungsbilddatenteilen entsprechen.
-
Auf Basis von 14 wird ein Bewegungsposenerfassungsprozess (S103) erörtert. [t-1], [t] und [t+1] geben drei aufeinanderfolgende Zeiten an.
-
Die Bewegungsbilddaten 131 zu einer jeweiligen Zeit stellen ein Bewegungsbild zu der jeweiligen Zeit dar. Die handelnde Person 112 ist in dem Bewegungsbild zu der jeweiligen Zeit gezeigt.
-
Die Bewegungsposenerfassungseinheit 223 erfasst die Pose der handelnden Person 112 zu der jeweiligen Zeit durch Durchführen eines Bildprozesses an dem Bewegungsbild zu der jeweiligen Zeit.
-
Genauer erfasst die Bewegungsposenerfassungseinheit 223 einen Skelettrahmen der handelnden Person 112. Durch den Skelettrahmen der handelnden Person 112 wird die Pose der handelnden Person 112 spezifiziert.
-
Genauer erkennt die Bewegungsposenerfassungseinheit 223 eine Position jedes Gelenks der handelnden Person 112. Es ist möglich, die Positionen der einzelnen Gelenke durch Koordinatenwerte oder relative Positionen in Bezug auf andere Gelenke anzugeben. Es ist möglich, den Skelettrahmen durch eine Mehrzahl von Gelenken, wie etwa ein Halsgelenk und ein Schultergelenk usw., zu spezifizieren.
-
Die Bewegungsposenerfassungseinheit 223 erzeugt Bewegungsposendaten 132, welche die Pose der handelnden Person 112 zur jeweiligen Zeit darstellen.
-
In den Bewegungsposendaten 132 zu den jeweiligen Zeiten stellt jeder schwarze Punkt ein Gelenk der handelnden Person 112 dar.
-
Es wird erneut auf 13 Bezug genommen, um Schritt S104 zu beschreiben.
-
Im Schritt S104 registriert die Bewegungsregistrierungseinheit 224 eine Mehrzahl von Zeiten, eine Mehrzahl von Bewegungsposendatenteilen, eine Mehrzahl von Bewegungskennungen in der Bewegungsdatenbank 291 durch deren gegenseitige Verknüpfung.
-
***Erklärung eines Beispiels***
-
Die Bewegungsspezifizierungseinheit 214 kann einen Zeitschlitz, in dem eine stationäre Arbeit durchgeführt wird, und einen Zeitschlitz, in dem eine nicht-stationäre Arbeit durchgeführt wird, spezifizieren.
-
Genauer misst die Bewegungsspezifizierungseinheit 214 einen Zeitschlitz zwischen Zeiten, an die Kennungen angehängt sind, die eine Nicht-Stationarität angeben. Der gemessene Zeitschlitz ist ein Zeitschlitz, in dem die nicht-stationäre Arbeit durchgeführt wird. Dann erkennt die Bewegungsspezifizierungseinheit 214 einen Zeitschlitz, bei dem es sich nicht um den Zeitschlitz handelt, in dem die nicht-stationäre Arbeit durchgeführt wird. Der erkannte Zeitschlitz ist ein Zeitschlitz, in dem eine stationäre Arbeit durchgeführt wird.
-
***Wirkung der ersten Ausführungsform***
-
Gemäß der ersten Ausführungsform wird es möglich, Bewegungen einer handelnden Person zu spezifizieren, ohne Objekte wie etwa eine Kamera und einen dreidimensionalen Sensor usw., die für Arbeiten nicht nötig sind, am Körper der handelnden Person (einem Beispiel für eine Zielperson) anbringen zu müssen. Das heißt, es ist möglich, die Bewegung der handelnden Person zu analysieren, ohne Arbeiten zu behindern.
-
Ferner wird es möglich, Zeitschlitze zu spezifizieren, in denen die einzelnen Bewegungen von der Zielperson 111 durchgeführt werden. Das heißt, es ist möglich, einen Zeitschlitz, in dem eine stationäre Arbeit durchgeführt wird, und einen Zeitschlitz, in dem eine nicht-stationäre Arbeit durchgeführt wird, zu spezifizieren.
-
Ferner ist es durch einen Vergleich zwischen Trajektoriedaten (aufeinanderfolgenden Zeitdaten) von Zieltrajektoriedaten und Bewegungstrajektoriedaten möglich, folgende Wirkungen zu erzielen. Die Arbeit kann eine Mehrzahl von Bewegungen einschließen. Durch einen Vergleich nicht zwischen Bewegungen zu einer einzigen Zeit, sondern von Trajektoriedaten, die aufeinanderfolgende Bewegungen sind, ist es möglich, eine besser geeignete Arbeit festzustellen.
-
Zweite Ausführungsform
-
Auf Basis von 15 bis 18 werden hauptsächlich Punkte, die von denen der ersten Ausführungsform verschieden sind, in Bezug auf eine Ausführungsform zur Verbesserung der Genauigkeit einer Bewegungsanalyse beschrieben.
-
***Erläuterung der Konfiguration***
-
Die Konfiguration des Bewegungsanalysesystems 100 ist die gleiche wie die Konfiguration in der ersten Ausführungsform (siehe 1 und 11).
-
Jedoch führt in 11 die handelnde Person 112 eine Reihe von Bewegungen mehrfach durch, und die Kamera 102 fotografiert die Reihe von Bewegungen durch die handelnde Person 112 mehrfach.
-
Die Konfiguration der Bewegungsanalysevorrichtung 200 ist der Konfiguration in der ersten Ausführungsform (siehe 2) gleich.
-
Jedoch ist ein Teil der Konfiguration in der Registrierungseinheit 220 von der Konfiguration in der ersten Ausführungsform (siehe 12) verschieden.
-
Nun wird die Konfiguration der Registrierungseinheit 220 auf Basis von 15 beschrieben.
-
Die Registrierungseinheit 220 weist Elemente wie die Bewegungskennungsannahmeeinheit 221, die Bewegungsbildannahmeeinheit 222, eine Einheit 225 zur temporären Erfassung von Posen, eine Einheit 226 zur temporären Erzeugung von Tabellen, eine Bewegungsposenerzeugungseinheit 227 und die Bewegungsregistrierungseinheit 224 auf.
-
***Erläuterung des Betriebs***
-
Nun wird ein Registrierungsprozess durch die Registrierungseinheit 220 auf Basis von 16 beschrieben.
-
Die Bewegungsdatenbank 291 (siehe 7) wird durch den Registrierungsprozess erzeugt.
-
Schritt S210 und Schritt S240 werden für jede von der Reihe von Bewegungen für eine Mehrzahl von Zeiten durchgeführt. Das heißt, wenn die Reihe von Bewegungen dreimal durchgeführt wird, werden Schritt S210 bis Schritt S240 dreimal durchgeführt.
-
In einem Schritt S210 nimmt die Bewegungskennungsannahmeeinheit 221 eine Bewegungskennungsgruppe entgegen.
-
Die Bewegungskennungsgruppe ist eine Mehrzahl von Bewegungskennungen, denen eine Mehrzahl von Zeiten hinzugefügt wurden.
-
Schritt S210 entspricht Schritt S101 in der ersten Ausführungsform (siehe 13).
-
In einem Schritt S220 nimmt die Bewegungsbildannahmeeinheit 222 eine Bewegungsbilddatengruppe entgegen.
-
Die Bewegungsbilddatengruppe ist eine Mehrzahl von Bewegungsbilddatenteilen, denen eine Mehrzahl von Zeiten hinzugefügt wurden und die durch Fotografieren einer handelnden Person, die eine Reihe von Bewegungen durchzuführen hat, erhalten wurden.
-
Schritt S220 entspricht Schritt S202 in der ersten Ausführungsform (siehe 13).
-
In einem Schritt S230 erfasst die Einheit 225 zur temporären Erfassung von Posen Posen der handelnden Person 12, die in den Bewegungsbildern der einzelnen Bewegungsbilddaten in der Bewegungsbilddatengruppe gezeigt sind, und erzeugt temporäre Posendaten, welche die erfassten Posen ausdrücken.
-
Auf diese Weise wird eine temporäre Posendatengruppe, die der Bewegungsbilddatengruppe entspricht, erhalten. Die temporäre Posendatengruppe ist eine Mehrzahl von temporären Posendatenteilen, die einer Mehrzahl von Bewegungsbilddatenteilen entsprechen.
-
Ein Verfahren zur Erzeugung der temporären Posendaten ist das gleiche wie das Verfahren zur Erzeugung von Bewegungsposendaten in der ersten Ausführungsform (siehe Schritt S103 in 13).
-
In einem Schritt S240 erzeugt die Einheit 226 zur Erzeugung einer temporären Tabelle eine temporäre Tabelle.
-
Die temporäre Tabelle ist eine Tabelle, in der eine Zeitgruppe, eine temporäre Posendatengruppe und eine Bewegungskennungsgruppe miteinander verknüpft sind.
-
Die Zeitgruppe ist eine Mehrzahl von Zeiten, die an eine Mehrzahl von Bewegungskennungen und eine Mehrzahl von Bewegungsbildern angehängt sind.
-
Dadurch, dass Schritt S210 und Schritt S240 für jede von der Reihe von Bewegungen für eine Mehrzahl von Zeiten durchgeführt werden, wird eine Mehrzahl von temporären Tabellen erzeugt.
-
Nachdem Schritt S210 und Schritt S240 für jede von der Reihe von Bewegungen für eine Mehrzahl von Zeiten durchgeführt wurden, geht der Ablauf zu Schritt S250 weiter.
-
Im Schritt S250 erzeugt die Bewegungsposenerzeugungseinheit 227 zwei oder mehr Bewegungsposendatenteile, die zwei oder mehr Zeiten für jede in einer Reihe von Bewegungen enthaltene Bewegung entsprechen.
-
Zwei oder mehr Bewegungsposendatenteile, die zwei oder mehr Zeiten entsprechen, werden auf die folgende Weise erzeugt.
-
Die Bewegungsposenerzeugungseinheit 227 extrahiert aus allen von einer Mehrzahl von temporären Tabellen Trajektoriedaten, die zwei oder mehr temporäre Posendatenteile sind, die mit zwei oder mehr Bewegungskennungen, mit denen die gleiche Bewegung identifiziert wird, verknüpft sind.
-
Die Bewegungsposenerzeugungseinheit 227 erzeugt zwei oder mehr Bewegungsposendatenteile, die zwei oder mehr Zeiten entsprechen, auf Basis einer Mehrzahl von temporären Trajektoriedaten, die aus einer Mehrzahl von temporären Tabellen extrahiert wurden.
-
Ein Bewegungsposenerzeugungsprozess (S250) wird auf Basis von 17 beschrieben.
-
Schritt S251 und Schritt S253 werden für jede in der Reihe von Bewegungen enthaltene Bewegung durchgeführt.
-
Im Schritt S251 extrahiert die Bewegungsposenerzeugungseinheit 227 temporäre Trajektoriedaten aus jeder von einer Mehrzahl von temporären Tabellen. Auf diese Weise wird eine Mehrzahl von temporären Trajektoriedatenteilen extrahiert.
-
Im Schritt S252 bestimmt die Bewegungsposenerzeugungseinheit 227 die Zahl der Bewegungsposendatenteile, von denen die Bewegungstrajektoriedaten gebildet werden. Die bestimmte Zahl wird als „Zahl der Konfigurationsdaten“ bezeichnet.
-
Zum Beispiel ist die Zahl der Konfigurationsdaten ein Durchschnitt der Zahlen der temporären Posendatenteile in einer Mehrzahl von temporären Trajektoriedatenteilen. Es wird davon ausgegangen, dass die Zahl der temporären Posendaten, die temporäre Trajektoriedaten einer ersten Zeit bilden, „3“ ist, die Zahl der temporären Posendaten, die temporäre Trajektoriedaten einer zweiten Zeit bilden, „4“ ist und die Zahl der temporären Posendaten, die temporäre Trajektoriedaten einer dritten Zeit bilden, „5“ ist. In diesem Fall ist die Zahl der Konfigurationsdaten „4“.
-
In einem Schritt S253 führt die Bewegungsposenerzeugungseinheit 227 ein Sampling bzw. Abtasten an allen temporären Trajektoriedatenteilen durch.
-
Auf diese Weise wird die Zahl der temporären Posendatenteile, die jeweils die temporären Trajektoriedatenteile bilden, eine Zahl, die der Zahl der Konfigurationsdaten gleich ist.
-
18 stellt ein konkretes Beispiel für ein Sampling dar.
- „An“ stellt temporäre Posendaten dar, die in temporären Trajektoriedaten der n-ten Zeit vor dem Sampeln enthalten sind.
- „An“ stellt temporäre Posendaten dar, die in temporären Trajektoriedaten der n-ten Zeit nach dem Sampeln enthalten sind.
- „*“ bezeichnet eine Multiplikation und „+“ bezeichnet eine Addition.
-
Jeder temporäre Posendatenteil gibt eine jeweilige Positionen einer Mehrzahl von Gelenken an. Multiplikation und Addition werden für Koordinatenwerte, die eine Position eines Gelenks identifizieren, für jedes Gelenk durchgeführt.
-
Es wird davon ausgegangen, dass die Zahl der Konfigurationsdaten „4“ ist.
-
Vor dem Sampeln werden die temporären Trajektoriedaten der ersten Zeit von drei temporären Posendatenteilen A1(1-3) gebildet. Ferner werden die temporären Trajektoriedaten der zweiten Zeit von vier temporären Posendatenteilen A2(1-4) gebildet. Indessen werden die temporären Trajektoriedaten der dritten Zeit von fünf temporären Posendatenteilen A3(1-5) gebildet.
-
Durch Sampeln der temporären Trajektoriedaten der ersten Zeit werden vier temporäre Posendatenteile A1'(1-4) auf Basis von drei temporären Posendatenteilen A1(1-3) erzeugt.
-
Durch Sampeln der temporären Trajektoriedaten der zweiten Zeit werden vier temporäre Posendatenteile A2'(1-4) auf Basis von vier temporären Posendatenteilen A2(1-4) erzeugt.
-
Durch Sampeln der temporären Trajektoriedaten der dritten Zeit werden vier temporäre Posendatenteile A3'(1-4) auf Basis von fünf temporären Posendatenteilen A3(1-5) erzeugt.
-
Nach dem Sampeln werden die temporären Trajektoriedaten der ersten Zeit von vier temporären Posendatenteilen A1'(1-4) gebildet. Ferner werden die temporären Trajektoriedaten der zweiten Zeit von vier temporären Posendatenteilen A2'(1-4) gebildet. Indessen werden die temporären Trajektoriedaten der dritten Zeit von vier temporären Posendatenteilen A3'(1-4) gebildet.
-
Es wird erneut auf 17 Bezug genommen, um Schritt S254 zu beschreiben.
-
In einem Schritt S254 erzeugt die Bewegungsposenerzeugungseinheit 227 eine Zahl von Bewegungsposendatenteilen, die derjenigen der Konfigurationsdaten gleich ist.
-
Die Bewegungsposenerzeugungseinheit 227 erzeugt zu jeder Zeit Bewegungsposendaten wie folgt.
-
Die Bewegungsposenerzeugungseinheit 227 berechnet die Summe einer Mehrzahl von temporären Posendatenteilen, die mit der gleichen Zeit verknüpft sind. Die Summe der Mehrzahl von temporären Posendatenteilen wird mit Koordinatenwerten, die eine Position eines Gelenks identifizieren, für jedes Gelenk gebildet.
-
Die Bewegungsposenerzeugungseinheit 227 teilt die Summe der Mehrzahl von temporären Posendatenteilen durch die Zahl der temporären Posendatenteile. Auf diese Weise wird der Durchschnitt der Mehrzahl von temporären Posendatenteilen, die mit der gleichen Zeit verknüpft sind, berechnet. Der Durchschnitt der Mehrzahl von temporären Posendatenteilen wird zu Bewegungsposendaten.
-
Jedoch kann die Bewegungsposenerzeugungseinheit 227 eine Verteilung einer Mehrzahl von temporären Posendatenteilen zusammen mit dem Durchschnitt der Mehrzahl von temporären Posendatenteilen berechnen.
-
Es wird erneut auf 16 Bezug genommen, um Schritt S260 zu beschreiben.
-
Im Schritt S260 verknüpft und registriert die Bewegungsregistrierungseinheit 224 für jede Bewegung, die in einer Reihe von Bewegungen enthalten sind, zwei oder mehr Zeiten, zwei oder mehr Bewegungsposendatenteile, zwei oder mehr Bewegungskennungen zum Identifizieren der gleichen Bewegung in der Bewegungsdatenbank 291.
-
***Wirkung der zweiten Ausführungsform***
-
Durch die zweite Ausführungsform ist es möglich, die Bewegungsdatenbank 291 auf Basis einer Reihe von Bewegungen, die für eine Mehrzahl von Zeiten durchgeführt werden, zu erzeugen. Infolgedessen ist es möglich, die Genauigkeit der Bewegungsanalyse zu erhöhen.
-
Dritte Ausführungsform
-
Mit Bezug auf eine Ausführungsform, in der eine Bewegungsanalyse unter Verwendung eines Lernmodells durchgeführt wird, werden auf Basis von 19 bis 22 hauptsächlich Punkte beschrieben, die von der ersten Ausführungsform und der zweiten Ausführungsform verschieden sind.
-
***Erläuterung der Konfiguration***
-
Eine Konfiguration des Bewegungsanalysesystems 100 ist der Konfiguration in der ersten Ausführungsform (siehe 1 und 11) gleich.
-
Nun wird die Konfiguration der Bewegungsanalysevorrichtung 200 auf Basis von 19 beschrieben.
-
Die Bewegungsanalysevorrichtung 200 weist Elemente wie eine Spezifikationseinheit 210 und eine Lerneinheit 230 auf. Diese Elemente werden durch Software verwirklicht.
-
Das Bewegungsanalyseprogramm führt eine Rechnerfunktion als die Spezifikationseinheit 210 und die Lerneinheit 230 aus.
-
Die Lerneinheit 230 erzeugt ein Lernmodell 292.
-
Eine Speichereinheit 290 speichert das Lernmodell 292.
-
Das Lernmodell 292 gibt eine Bewegungskennung als Reaktion auf eine Eingabe von Bewegungstrajektoriedaten aus.
-
Nun wird die Konfiguration der Lerneinheit 230 auf Basis von 20 beschrieben.
-
Die Lerneinheit 230 weist Elemente wie eine Bewegungskennungsannahmeeinheit 231, eine Bewegungsbildannahmeeinheit 232, eine Bewegungsposenerfassungseinheit 233 und eine Bewegungslerneinheit 234 auf.
-
***Erläuterung einer Bewegung***
-
Ein Bewegungsanalyseverfahren wird auf Basis von 21 beschrieben.
-
In einem Schritt S310 nimmt eine Zielbildannahmeeinheit 211 eine Mehrzahl von Zielbilddatenteilen entgegen.
-
Schritt S310 ist dem Schritt S110 in der ersten Ausführungsform gleich (siehe 3).
-
In einem Schritt S320 erfasst eine Zielposenerfassungseinheit 212 eine Pose der Zielperson 111, die in einem Zielbild gezeigt wird, von allen Zielbilddaten und erzeugt Zielposendaten, welche die erfasste Pose darstellen.
-
Auf diese Weise wird eine Mehrzahl von Zielposendatenteilen erhalten, die einer Mehrzahl von Zielbilddatenteilen entsprechen.
-
Schritt S320 ist dem Schritt S120 in der ersten Ausführungsform gleich (siehe 3).
-
In einem Schritt S330 extrahiert eine Zieltrajektorieextraktionseinheit 213 Zieltrajektoriedaten aus einer Mehrzahl von Zielposendatenteilen, die einer Mehrzahl von Zielbilddatenteilen entsprechen.
-
Schritt S330 ist dem Schritt S130 in der ersten Ausführungsform gleich (siehe 3).
-
In einem Schritt S340 erhält eine Bewegungsspezifizierungseinheit 214 eine Bewegungskennung zum Identifizieren der Bewegung der Zielperson 111 auf Basis von Zieltrajektoriedaten.
-
Die Bewegungskennung wird auf die folgende Weise erhalten.
-
Die Bewegungsspezifizierungseinheit 214 gibt die Zieltrajektoriedaten in das Lernmodell ein.
-
Das Lernmodell gibt eine Bewegungskennung von Lerntrajektoriedaten aus, die mit den eingegebenen Zieltrajektoriedaten übereinstimmen.
-
Die Bewegungsspezifizierungseinheit 214 erhält die Bewegungskennung von dem Lernmodell.
-
Schritt S330 und Schritt S340 werden für jede Fotografierzeit in einem Fotografierzeitschlitz durchgeführt. Auf diese Weise wird eine Bewegungskennung für jede Fotografierzeit erhalten.
-
Nachdem Schritt S330 und Schritt S340 für jede Fotografierzeit in einem Fotografierzeitschlitz durchgeführt wurden, geht die Verarbeitung zu Schritt S350 weiter.
-
In einem Schritt S350 gibt die Ergebnisausgabeeinheit 215 Ergebnisdaten aus.
-
Schritt S350 ist dem Schritt S150 in der ersten Ausführungsform gleich (siehe 3).
-
***Erläuterung einer Vorverarbeitung***
-
Auf Basis von 22 wird ein Lernprozess durch die Lerneinheit 230 beschrieben.
-
Das Lernmodell 292 wird von dem Lernprozess erzeugt.
-
In einem Schritt S301 nimmt die Bewegungskennungsannahmeeinheit 231 eine Mehrzahl von Bewegungskennungen entgegen, zu denen eine Mehrzahl von Zeiten hinzugefügt wurden.
-
Schritt S301 ist dem Schritt S101 in der ersten Ausführungsform gleich (siehe 13).
-
In einem Schritt S302 nimmt die Bewegungsbildannahmeeinheit 232 eine Mehrzahl von Bewegungsbilddatenteilen entgegen, zu denen eine Mehrzahl von Zeiten hinzugefügt werden.
-
Schritt S302 ist dem Schritt S102 in der ersten Ausführungsform gleich (siehe 13).
-
In einem Schritt S303 erfasst die Bewegungsposenerfassungseinheit 233 eine Pose der handelnden Person 112, die in einem Bewegungsbild gezeigt ist, von allen Bewegungsbilddaten und erzeugt Bewegungsposendaten, welche die erfasste Pose darstellen.
-
Auf diese Weise wird eine Mehrzahl von Bewegungsposendatenteilen erhalten, die einer Mehrzahl von Bewegungsbilddatenteilen entsprechen.
-
Schritt S303 ist dem Schritt S103 in der ersten Ausführungsform gleich (siehe 13).
-
In einem Schritt S304 führt die Bewegungslerneinheit 234 ein Lernen durch, indem sie einen Satz von Bewegungsposendaten und einer Bewegungskennung in Bezug auf jeweilige Zeiten zu Lerndaten macht.
-
Zum Beispiel führt die Bewegungslerneinheit 234 ein maschinelles Lernen unter Verwendung eines existierenden Maschinenlernmodells durch. Genauer gibt die Bewegungslerneinheit 234 Lerndaten zu jeder Zeit in das Maschinenlernmodell ein. Dann führt das Maschinenlernmodell ein maschinelles Lernen an Lerndaten zu jeder Zeit durch. Jedoch kann die Bewegungslerneinheit 234 ein Lernen auch anhand eines anderen Verfahrens durchführen.
-
Auf diese Weise wird das Lernmodell 292 erzeugt. Wenn das Lernmodell 292 existiert, wird das Lernmodell 292 aktualisiert.
-
***Wirkung der dritten Ausführungsform***
-
Durch die dritte Ausführungsform ist es möglich, eine Bewegungsanalyse unter Verwendung des Lernmodells 292 durchzuführen. Infolgedessen ist es möglich, die Genauigkeit der Bewegungsanalyse zu erhöhen.
-
***Ergänzung zu den Ausführungsformen ***
-
Eine Hardware-Konfiguration der Bewegungsanalysevorrichtung 200 wird auf Basis von 23 beschrieben.
-
Die Bewegungsanalysevorrichtung 200 weist eine Verarbeitungsschaltung 209 auf.
-
Die Verarbeitungsschaltung 209 ist eine Hardware-Komponente zur Verwirklichung der Spezifikationseinheit 210, der Registrierungseinheit 220 und der Lerneinheit 230.
-
Die Verarbeitungsschaltung 209 kann eine zweckgebundene Hardware sein oder kann ein Prozessor 201 sein, der ein im Speicher 202 gespeichertes Programm ausführt.
-
Wenn die Verarbeitungsschaltung 209 eine dedizierte Hardware-Komponente ist, ist die Verarbeitungsschaltung 209 beispielsweise einen Einzelschaltkreis, ein Verbundschaltkreis, ein programmierter Prozessor, ein parallel programmierter Prozessor, eine ASIC oder ein FPGA, oder eine Kombination daraus.
-
ASIC ist die Abkürzung für „application specific integrated circuit“.
-
FPGA ist eine Abkürzung für „Field-Programmable Gate Array“.
-
Die Bewegungsanalysevorrichtung 200 kann eine Mehrzahl von Verarbeitungsschaltkreisen aufweisen, welche die Verarbeitungsschaltung 209 ersetzen. Die Mehrzahl von Verarbeitungsschaltkreisen teilen sich die Funktionen der Verarbeitungsschaltung 209.
-
In der Verarbeitungsschaltung 209 kann ein Teil der Funktionen durch eine zweckgebundene Hardware-Komponente implementiert werden, und die übrigen Funktionen können durch Software oder Firmware implementiert werden.
-
Wie oben beschrieben ist es möglich, jede Funktion der Bewegungsanalysevorrichtung 200 durch eine Hardware-Komponente, durch Software, Firmware oder eine Kombination davon zu verwirklichen.
-
Jede der vorliegenden Ausführungsformen ist ein Beispiel für eine bevorzugte Ausführungsform und zielt nicht darauf ab, den technischen Bereich der vorliegenden Erfindung zu begrenzen. Jede von den vorliegenden Ausführungsformen kann auch nur teilweise implementiert werden oder kann in Kombination mit einer anderen Ausführungsform implementiert werden. Durch Verwendung von Flussdiagrammen usw. beschriebene Verfahren können in geeigneter Weise geändert werden.
-
„Einheit“ als Element der Bewegungsanalysevorrichtung 200 kann durch „Prozess“ oder „Schritt“ ersetzt werden.
-
Die Bewegungsanalysevorrichtung 200 kann von einer Mehrzahl von Vorrichtungen verwirklicht werden.
-
Die Kamera 101 und die Kamera 102 können durch einen Tiefensensor oder einen anderen Sensor ersetzt werden. Von diesen Sensoren werden dreidimensionale Daten erhalten.
-
Das Lernmodell 292 kann durch eine Hardware-Komponente verwirklicht werden oder kann durch eine Kombination aus Software und einer Hardware-Komponente verwirklicht werden.
-
Bezugszeichenliste
-
- 100
- Bewegungsanalysesystem;
- 101
- Kamera;
- 102
- Kamera;
- 111
- Zielperson;
- 112
- handelnde Person;
- 121
- Zielbilddaten;
- 122
- Zielposendaten;
- 123
- Zieltrajektoriedaten;
- 131
- Bewegungsbilddaten;
- 132
- Bewegungsposendaten;
- 133
- Bewegungstrajektoriedaten;
- 134
- temporäre Posendatengruppe;
- 200
- Bewegungsanalysevorrichtung;
- 201
- Prozessor;
- 202
- Speicher;
- 203
- Hilfsspeichervorrichtung;
- 204
- Kommunikationsvorrichtung;
- 205
- Eingabe- und Ausgabeschnittstelle;
- 209
- Verarbeitungsschaltung;
- 210
- Spezifikationseinheit;
- 211
- Zielbildannahmeeinheit;
- 212
- Zielposenerfassungseinheit;
- 213
- Zieltrajektoriespezifikationseinheit;
- 214
- Bewegungsspezifizierungseinheit;
- 215
- Ergebnisausgabeeinheit;
- 220
- Registrierungseinheit;
- 221
- Bewegungskennungsannahmeeinheit;
- 222
- Bewegungsbildannahmeeinheit;
- 223
- Bewegungsposenerfassungseinheit;
- 224
- Bewegungsregistrierungseinheit;
- 225
- Einheit zur Erfassung einer temporären Pose;
- 226
- Einheit zur Erzeugung einer temporären Tabelle;
- 227
- Bewegungsposenerzeugungseinheit;
- 230
- Lerneinheit;
- 231
- Bewegungskennungannahmeeinheit;
- 232
- Bewegungsbildannahmeeinheit;
- 233
- Bewegungsposenerfassungseinheit;
- 234
- Bewegungslerneinheit;
- 290
- Speichereinheit;
- 291
- Bewegungsdatenbank;
- 292
- Lernmodell
-
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
-