Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP6529039B2 - Link string mapping device, link string mapping method, and program - Google Patents
[go: Go Back, main page]

JP6529039B2 - Link string mapping device, link string mapping method, and program - Google Patents

Link string mapping device, link string mapping method, and program Download PDF

Info

Publication number
JP6529039B2
JP6529039B2 JP2016056051A JP2016056051A JP6529039B2 JP 6529039 B2 JP6529039 B2 JP 6529039B2 JP 2016056051 A JP2016056051 A JP 2016056051A JP 2016056051 A JP2016056051 A JP 2016056051A JP 6529039 B2 JP6529039 B2 JP 6529039B2
Authority
JP
Japan
Prior art keywords
link
robot
information
model
link string
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.)
Active
Application number
JP2016056051A
Other languages
Japanese (ja)
Other versions
JP2017170535A (en
Inventor
直広 早石
直広 早石
一真 高原
一真 高原
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.)
KEISUUGIKEN CORPORATION
Original Assignee
KEISUUGIKEN CORPORATION
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 KEISUUGIKEN CORPORATION filed Critical KEISUUGIKEN CORPORATION
Priority to JP2016056051A priority Critical patent/JP6529039B2/en
Publication of JP2017170535A publication Critical patent/JP2017170535A/en
Application granted granted Critical
Publication of JP6529039B2 publication Critical patent/JP6529039B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Description

本発明は、モデルのリンク列をロボットのリンク列にマッピングするために用いられるリンク列マッピング装置等に関する。   The present invention relates to a link string mapping apparatus and the like used to map a link string of a model to a link string of a robot.

従来、ヒューマノイドロボットが作られており、そのヒューマノイドロボットに人間の動作をまねさせることも行われている。人間と同様の動きを行うことができるヒューマノイドロボットについては、キャプチャーした人間の動きをそのまま動作させることができる。一方、そうでない場合、例えば、ヒューマノイドロボットの方が人間よりも関節数が少なかったり、関節の可動域が狭かったりする場合には、キャプチャーした人間の動きをロボットに合うように変換する必要があった。そのような変換の設定は、人間が手動で行っていた。
なお、関連する技術として、人間の動きをキャプチャーする技術が知られている(例えば、特許文献1参照)。
Conventionally, a humanoid robot has been created, and the humanoid robot is also made to imitate human motion. For humanoid robots that can perform movements similar to humans, they can move the captured human movements as they are. On the other hand, if this is not the case, for example, if the humanoid robot has fewer joints than humans, or if the range of motion of the joints is narrow, then it is necessary to convert the captured human motion to suit the robot. The The setting of such transformations has been done manually by humans.
As a related technology, a technology for capturing human motion is known (see, for example, Patent Document 1).

特表2012−525643号公報JP 2012-525643 gazette

上述のように、キャプチャーした人間の動きをロボットに合うように変換する場合には、ヒューマノイドロボットの種類ごとにその変換の設定を行わなくてはならないという問題があった。また、そのような変換の設定を行っていても、例えば、人間が想定外の動きを行った場合には、その人間の動きを適切に変換することができず、ヒューマノイドロボットの動きが停止してしまうという問題もあった。   As described above, when converting captured human motions to suit the robot, there has been a problem that it is necessary to set the conversion for each type of humanoid robot. In addition, even if such a conversion setting is performed, for example, when a human makes an unexpected movement, the movement of the human can not be properly converted, and the movement of the humanoid robot stops. There was also the problem of

一般的に言えば、モデルの動きをロボットにマッピングする際に、人手によってその変換式等を作成しなくてもよいようにしたいという要望があった。   Generally speaking, when mapping the movement of a model to a robot, there has been a demand that it is not necessary to manually create a conversion equation and the like.

本発明は、上記事情に応じてなされたものであり、モデルのリンク列を自動的に任意のロボットのリンク列にマッピングすることができるリンク列マッピング装置等を提供することを目的とする。   The present invention has been made in accordance with the above-mentioned circumstances, and an object thereof is to provide a link string mapping device etc. capable of automatically mapping a link string of a model to a link string of any robot.

上記目的を達成するため、本発明によるリンク列マッピング装置は、モデルのリンク列に含まれる各リンクの位置に関する情報であるモデルリンク列情報を受け付ける受付部と、モデルリンク列情報を用いて、モデルのリンク列におけるあらかじめ決められた複数箇所の座標値を特定する特定部と、特定部によって特定された複数箇所と、複数箇所にそれぞれ対応するロボットのリンク列における複数箇所との距離に応じた目的関数が小さくなるように、ロボットのリンク列に含まれる各リンクの位置に関する情報であるロボットリンク列情報を算出する算出部と、ロボットリンク列情報に応じたロボットのリンク列の各関節の角度に関する情報を出力する出力部と、を備え、目的関数は、重み付けられた各距離に応じたものである。
このような構成により、モデルのリンク列とロボットのリンク列とに、例えばリンク数などの相異があったとしても、ロボットのリンク列がモデルのリンク列に似るように、ロボットのリンク列の各関節の角度に関する情報を出力することができる。その結果、モデルのリンク列を自動的に任意のロボットのリンク列にマッピングするための変換式等を人手で作成しなくてもよいことになる。また、変換式等を用いるのではないため、モデルのリンク列の位置が想定外のものになったとしても、ロボットリンク列情報を算出することができる。そのため、例えば、ロボットのリンク列の動きが停止するような事態を回避することができる。また、重みに応じて、ロボットのリンク列のうち、どの位置がモデルのリンク列の位置により近くなるのかを設定することができるようになる。
In order to achieve the above object, the link string mapping apparatus according to the present invention uses a receiving unit that receives model link string information, which is information on the position of each link included in the link string of the model, and model link string information. The purpose according to the distance between the identification part which specifies the coordinate value of a plurality of places determined in advance in the link row of the present invention, the plurality of places identified by the identification part, and the plurality of places in the link row of the robot corresponding to the plurality of places. With respect to the angle of each joint of the link row of the robot according to the robot link row information, the calculation unit that calculates the robot link row information that is information related to the position of each link included in the link row of the robot so that the function becomes smaller. And an output unit for outputting information, wherein the objective function corresponds to each of the weighted distances.
With such a configuration, even if there is a difference, for example, in the number of links, between the link row of the model and the link row of the robot, the link row of the robot is similar to the link row of the model. Information on the angle of each joint can be output. As a result, it is not necessary to manually create a conversion equation or the like for automatically mapping a model link sequence to an arbitrary robot link sequence. In addition, since a conversion formula or the like is not used, robot link string information can be calculated even if the position of the link string of the model becomes unexpected. Therefore, for example, it is possible to avoid a situation in which the movement of the link row of the robot is stopped. In addition, it becomes possible to set which position in the link string of the robot is closer to the position of the link string of the model according to the weight.

また、本発明によるリンク列マッピング装置では、特定部が特定する複数箇所には、モデルのリンク列の先端が含まれ、モデルのリンク列の先端である特定された箇所に対応するロボットのリンク列における箇所は、ロボットのリンク列の先端であり、モデル及びロボットの各リンク列の先端の距離の重みは、他の距離の重みよりも大きくてもよい。
このような構成により、モデルのリンク列の先端と、ロボットのリンク列の先端とを近似した位置関係にすることができる。
Further, in the link string mapping device according to the present invention, the plurality of locations specified by the identifying unit includes the tip of the link string of the model, and the link string of the robot corresponding to the identified location that is the tip of the link string of the model. The location at is the tip of the link row of the robot, and the distance weight of the tip of the link row of each of the model and robot may be larger than the weight of other distances.
Such a configuration makes it possible to approximate positional relationship between the tip of the link row of the model and the tip of the link row of the robot.

また、本発明によるリンク列マッピング装置では、複数箇所の個数は、ロボットのリンク列における連結箇所の数よりも多くてもよい。
このような構成により、モデルのリンク列をロボットのリンク列に適切にマッピングすることができるようになる。
Further, in the link string mapping device according to the present invention, the number of the plurality of points may be larger than the number of connection points in the link string of the robot.
Such a configuration makes it possible to properly map the link string of the model to the link string of the robot.

また、本発明によるリンク列マッピング装置では、ロボットのリンク列における関節の可動域を示す情報である関節可動域情報が記憶される記憶部をさらに備え、算出部は、関節可動域情報の示す可動域内において、目的関数が小さくなるようにロボットリンク列情報を算出してもよい。
このような構成により、例えば、モデルのリンク列とロボットのリンク列とについて、関節の可動域が異なっていたとしても、ロボットのリンク列がモデルのリンク列に似るように、ロボットリンク列情報を算出することができるようになる。
Further, in the link string mapping device according to the present invention, the link string mapping apparatus further includes a storage unit in which joint motion segment information, which is information indicating a motion segment of joints in the link string of the robot, is stored. The robot link string information may be calculated so that the objective function becomes smaller in the region.
With such a configuration, for example, even if the movable range of the joints is different between the link row of the model and the link row of the robot, the robot link row information is made similar to the link row of the model. It can be calculated.

また、本発明によるリンク列マッピング装置では、モデルのリンク列の長さと、ロボットのリンク列の長さとを正規化する正規化部をさらに備え、距離は、正規化後の距離であってもよい。
このような構成により、モデルのリンク列をロボットのリンク列により適切にマッピングすることができるようになる。
The link string mapping apparatus according to the present invention may further include a normalization unit that normalizes the length of the link string of the model and the length of the link string of the robot, and the distance may be a normalized distance. .
Such a configuration makes it possible to map the link series of the model more appropriately by the link series of the robot.

また、本発明によるリンク列マッピング装置では、距離は、モデルのリンク列の基端及びロボットのリンク列の基端を原点にした座標系における座標値に応じた距離であってもよい。
このような構成により、ロボットリンク列情報を算出する際の計算量を低減することができる。
Further, in the link string mapping device according to the present invention, the distance may be a distance corresponding to a coordinate value in a coordinate system in which the base end of the link string of the model and the base end of the link string of the robot are the origin.
With such a configuration, it is possible to reduce the amount of calculation when calculating robot link string information.

また、本発明によるリンク列マッピング装置では、ロボットリンク列情報に含まれる高周波のノイズ成分を除去するノイズ除去部をさらに備え、出力部は、ノイズ除去部によって高周波のノイズ成分が除去されたロボットリンク列情報に応じたロボットのリンク列の各関節の角度に関する情報を出力してもよい。
このような構成により、例えば、モデルリンク列情報に高周波のノイズが入っている場合であっても、そのノイズを除去した出力を行うことができるようになる。
The link string mapping apparatus according to the present invention further includes a noise removing unit that removes high frequency noise components included in the robot link string information, and the output unit is a robot link from which high frequency noise components have been removed by the noise removing unit. Information on the angle of each joint of the link row of the robot according to the row information may be output.
With such a configuration, for example, even when high-frequency noise is included in the model link string information, an output from which the noise is removed can be performed.

また、本発明によるリンク列マッピング装置では、モデルリンク列情報またはロボットリンク列情報に関する予測を行う予測部をさらに備え、出力部は、予測部による予測結果に応じて、予測されたロボットのリンク列の各関節の角度に関する情報を出力してもよい。
このような構成により、予測結果に応じてロボットを動作させることができるため、例えば、リアルタイムでリンク列のマッピングが行われている場合に、ロボットの動きがモデルの動きに対して遅延しないようにすることができる。
The link string mapping apparatus according to the present invention further comprises a prediction unit for performing prediction on model link string information or robot link string information, and the output unit is a link string of a robot predicted according to the prediction result by the prediction unit. The information on the angle of each joint may be output.
With such a configuration, the robot can be operated according to the prediction result, so that, for example, when mapping of link strings is performed in real time, the movement of the robot is not delayed with respect to the movement of the model. can do.

また、本発明によるリンク列マッピング装置では、受付部によって受け付けられたモデルリンク列情報を用いて、モデルリンク列情報の予測を行う予測部をさらに備え、特定部は、予測部によって予測されたモデルリンク列情報を用いて複数箇所の座標値を特定してもよい。
また、本発明によるリンク列マッピング装置では、算出部によって算出されたロボットリンク列情報を用いて、ロボットリンク列情報の予測を行う予測部をさらに備え、出力部は、予測部によって予測されたロボットリンク列情報に応じたロボットのリンク列の各関節の角度に関する情報を出力してもよい。
また、本発明によるリンク列マッピング装置では、算出部によって算出されたロボットリンク列情報に応じたロボットのリンク列の各関節の角度に関する情報を用いて、各関節の角度に関する情報の予測を行う予測部をさらに備え、出力部は、予測部によって予測されたロボットのリンク列の各関節の角度に関する情報を出力してもよい。
The link string mapping apparatus according to the present invention further includes a prediction unit that predicts model link string information using the model link string information accepted by the accepting unit, and the identifying unit is a model predicted by the predictor. The link string information may be used to specify coordinate values at a plurality of locations.
The link string mapping apparatus according to the present invention further includes a prediction unit that predicts robot link string information using the robot link string information calculated by the calculation unit, and the output unit is a robot predicted by the prediction unit. Information on the angle of each joint of the link row of the robot according to the link row information may be output.
Further, in the link string mapping apparatus according to the present invention, a prediction is performed that predicts information on the angle of each joint using information on the angle of each joint of the link string of the robot according to the robot link string information calculated by the calculation unit. The apparatus may further include a unit, and the output unit may output information on the angle of each joint of the link row of the robot predicted by the prediction unit.

また、本発明によるリンク列マッピング装置は、モデルのリンク列に含まれる各リンクの位置に関する情報であるモデルリンク列情報を受け付ける受付部と、モデルリンク列情報を用いて、モデルのリンク列におけるあらかじめ決められた複数箇所の座標値を特定する特定部と、特定部によって特定された複数箇所と、複数箇所にそれぞれ対応するロボットのリンク列における複数箇所との各距離に応じた目的関数が小さくなるように、ロボットのリンク列に含まれる各リンクの位置に関する情報であるロボットリンク列情報を算出する算出部と、ロボットリンク列情報に応じたロボットのリンク列の各関節の角度に関する情報を出力する出力部と、モデルリンク列情報またはロボットリンク列情報に関する予測を行う予測部と、を備え、出力部は、予測部による予測結果に応じて、予測されたロボットのリンク列の各関節の角度に関する情報を出力する、ものである。
このような構成により、予測結果に応じてロボットを動作させることができるため、例えば、リアルタイムでリンク列のマッピングが行われている場合に、ロボットの動きがモデルの動きに対して遅延しないようにすることができる。
Further, the link string mapping apparatus according to the present invention uses the reception unit for receiving model link string information, which is information on the position of each link included in the link string of the model, and the model link string information, using the model link string information. The objective function according to each distance of the identification part which specifies the coordinate value of the determined plural places, the plural places specified by the identifying part, and the plural places in the link row of the robot corresponding to the plural places becomes small Thus, a calculation unit that calculates robot link string information that is information on the position of each link included in the link string of the robot and information on the angle of each joint of the link string of the robot according to the robot link string information is output An output unit, and a prediction unit that performs prediction on model link string information or robot link string information; Parts are in accordance with the prediction result by the prediction unit, and outputs the information about the angles of the joints of the link row of predicted robot is intended.
With such a configuration, the robot can be operated according to the prediction result, so that, for example, when mapping of link strings is performed in real time, the movement of the robot is not delayed with respect to the movement of the model. can do.

本発明によるリンク列マッピング装置等によれば、モデルのリンク列を自動的に任意のロボットのリンク列にマッピングすることができるようになる。その結果、マッピングのための変換式等を人手で作成しなくてもよいことになる。また、モデルが想定外の動作をしたとしても、ロボットリンク列情報を算出できるようになる。また、目的関数が重みに応じたものである場合には、その重みに応じて、ロボットのリンク列のうち、どの位置がモデルのリンク列の位置により近くなるのかを設定することができるようになる。また、予測を行う場合には、例えば、リアルタイムでリンク列のマッピングが行われていても、ロボットの動きがモデルの動きに対して遅延しないようにすることができる。   According to the link string mapping device and the like according to the present invention, it is possible to automatically map the link string of the model to the link string of any robot. As a result, it is not necessary to manually create a conversion equation or the like for mapping. Also, even if the model performs an unexpected operation, robot link string information can be calculated. In addition, when the objective function corresponds to the weight, it is possible to set which position in the link string of the robot is closer to the position of the link string of the model according to the weight. Become. In addition, in the case of performing prediction, for example, even if mapping of a link string is performed in real time, it is possible to prevent the movement of the robot from being delayed with respect to the movement of the model.

本発明の実施の形態によるリンク列マッピング装置の構成を示すブロック図Block diagram showing the configuration of a link string mapping apparatus according to an embodiment of the present invention 同実施の形態によるリンク列マッピング装置の動作を示すフローチャートFlow chart showing operation of link string mapping apparatus according to the same embodiment 同実施の形態におけるモデルのリンク列の一例を示す図The figure which shows an example of the link sequence of the model in the embodiment 同実施の形態におけるロボットのリンク列の一例を示す図The figure which shows an example of the link row of the robot in the embodiment 同実施の形態におけるロボットの関節の角度の一例を示す図The figure which shows an example of the angle of the joint of the robot in the embodiment 同実施の形態における正規化されたモデル及びロボットのリンク列の一例を示す図A diagram showing an example of a normalized model and a link string of a robot in the same embodiment 同実施の形態におけるモデル及びロボットのリンク列の動作の一例を示す図A diagram showing an example of the operation of a link row of a model and a robot in the same embodiment 同実施の形態によるリンク列マッピング装置の他の構成を示すブロック図Block diagram showing another configuration of link string mapping apparatus according to the same embodiment 同実施の形態によるリンク列マッピング装置の他の構成を示すブロック図Block diagram showing another configuration of link string mapping apparatus according to the same embodiment 同実施の形態によるリンク列マッピング装置の他の構成を示すブロック図Block diagram showing another configuration of link string mapping apparatus according to the same embodiment 同実施の形態におけるコンピュータシステムの外観一例を示す模式図A schematic view showing an example of the appearance of a computer system according to the embodiment 同実施の形態におけるコンピュータシステムの構成の一例を示す図The figure which shows an example of a structure of the computer system in the embodiment.

以下、本発明によるリンク列マッピング装置について、実施の形態を用いて説明する。なお、以下の実施の形態において、同じ符号を付した構成要素及びステップは同一または相当するものであり、再度の説明を省略することがある。本実施の形態によるリンク列マッピング装置は、モデルのリンク列をロボットのリンク列にマッピングするため、モデルのリンク列上の複数の点と、ロボットのリンク列上の複数の点との各距離に応じた目的関数が小さくなるように、ロボットのリンク列の各関節の角度を求めるものである。   Hereinafter, a link string mapping apparatus according to the present invention will be described using an embodiment. In the following embodiments, components and steps denoted by the same reference numerals are the same or correspond to each other, and the description thereof may not be repeated. Since the link string mapping device according to the present embodiment maps the link string of the model to the link string of the robot, the distance between a plurality of points on the link string of the model and a plurality of points on the link string of the robot The angle of each joint of the link row of the robot is obtained so that the corresponding objective function becomes smaller.

図1は、本実施の形態によるリンク列マッピング装置1の構成を示すブロック図である。本実施の形態によるリンク列マッピング装置1は、受付部11と、記憶部12と、正規化部13と、特定部14と、算出部15と、ノイズ除去部16と、出力部17とを備える。   FIG. 1 is a block diagram showing the configuration of a link string mapping apparatus 1 according to the present embodiment. The link string mapping apparatus 1 according to the present embodiment includes a reception unit 11, a storage unit 12, a normalization unit 13, a specification unit 14, a calculation unit 15, a noise removal unit 16, and an output unit 17. .

受付部11は、モデル5のリンク列に含まれる各リンクの位置に関する情報であるモデルリンク列情報を受け付ける。モデル5は、例えば、人間であってもよく、人間以外の動物やロボットなどであってもよい。なお、リンク列マッピング装置1は、例えば、モデル5の動きをロボット6にまねさせるためのマッピングを行うものであるため、モデル5は、動きのあるものであることが好適である。このモデル5は、リンク列のマッピングの写像元となる対象である。モデル5は、マッピング対象となる1以上のリンク列を有していることが好適である。例えば、モデル5が人間である場合には、四肢のそれぞれがリンク列となる。また、人間の頭から腰までを一つのリンク列と考えてもよい。モデルリンク列情報は、連結された複数のリンクの全体(例えば、両肩の中心から手先までのリンク列など)の情報であってもよく、その連結された複数のリンクの一部(例えば、肘から手先までのリンク列など)の情報であってもよい。また、モデルリンク列情報は、手先や足先などの端部、すなわち関節ではない端部を有するリンク列の情報であってもよく、または、肩から手首までのリンク列のように関節から関節までのリンク列の情報であってもよい。また、本実施の形態では、モデルリンク列情報が、分岐を含まないリンク列の情報である場合について主に説明するが、モデルリンク列情報は、分岐を含むリンク列の情報であってもよい。モデルリンク列情報は、結果としてモデル5のリンク列に含まれる各リンクの位置が分かる情報であれば、どのような情報であってもよい。モデルリンク列情報は、例えば、各リンクの両端の位置を示す情報であってもよく、各リンクの長さと関節におけるリンク間の角度とを示す情報であってもよい。各リンクの両端の位置を示す情報は、各関節の位置を示す情報を含んでいてもよく、さらにリンク列の端部の位置を示す情報を含んでいてもよい。本実施の形態では、モデルリンク列情報が、リンク列の関節の位置を示す情報と、端部の位置を示す情報とを含んでいる場合について主に説明する。その位置は、モデル5のリンク列について設定されている座標系における位置である。その座標系は、モデル5が存在する実空間の座標系であってもよく、モデル5のリンク列に関する位置の取得された仮想空間の座標系であってもよく、その他の座標系であってもよい。   The receiving unit 11 receives model link string information which is information on the position of each link included in the link string of the model 5. The model 5 may be, for example, a human or an animal or robot other than human. In addition, since the link string mapping device 1 performs, for example, mapping for imitating the motion of the model 5 to the robot 6, it is preferable that the model 5 has motion. The model 5 is an object to be a mapping source of the mapping of the link string. The model 5 preferably includes one or more link strings to be mapped. For example, when the model 5 is a human, each of the four limbs becomes a link string. Also, it is possible to think of the human head to the waist as one link row. The model link string information may be information of the whole of a plurality of linked links (for example, a link string from the center of both shoulders to the hand, etc.), and a part of the linked plurality of links (for example, It may be information of a link string from the elbow to the hand). Also, the model link string information may be information of a link string having an end such as a hand tip or a toe, that is, an end that is not a joint, or a joint to joint such as a link string from shoulder to wrist. It may be information on the link string up to Further, although in the present embodiment, the case where model link string information is information of a link string not including a branch is mainly described, the model link string information may be information of a link string including a branch. . The model link string information may be any information as long as the information on the position of each link included in the link string of the model 5 can be obtained as a result. The model link string information may be, for example, information indicating the positions of both ends of each link, and may be information indicating the length of each link and the angle between the links in the joint. The information indicating the position of each end of each link may include information indicating the position of each joint, and may further include information indicating the position of the end of the link row. In the present embodiment, a case will be mainly described where model link string information includes information indicating the position of a joint of a link string and information indicating the position of an end. The position is a position in the coordinate system set for the link string of the model 5. The coordinate system may be the coordinate system of the real space in which the model 5 exists, or may be the coordinate system of the virtual space in which the position of the link row of the model 5 is acquired, and other coordinate systems. It is also good.

モデルリンク列情報は、例えば、モーションキャプチャの技術によって取得されてもよい。モーションキャプチャは、例えば、モデル5に装着されたマーカの位置を検出することによって行われてもよく、または、モデル5の撮影画像を用いて行われてもよい。マーカを用いて行われるモーションキャプチャは、例えば、光学式のモーションキャプチャであってもよく、機械式のモーションキャプチャであってもよく、磁気式のモーションキャプチャであってもよい。また、撮影画像を用いてモーションキャプチャを行う場合に、例えば、モデル5との距離を測定することなどによって、撮影画像を用いたモーションキャプチャの精度を向上させるようにしてもよい。撮影画像を用いたモーションキャプチャを行う装置として、例えば、KINECT(登録商標)や、RealSenseなどを用いてもよい。   The model link string information may be obtained, for example, by the motion capture technology. Motion capture may be performed, for example, by detecting the position of a marker attached to the model 5, or may be performed using a captured image of the model 5. The motion capture performed using a marker may be, for example, an optical motion capture, a mechanical motion capture, or a magnetic motion capture. In addition, when performing motion capture using a captured image, the accuracy of motion capture using the captured image may be improved, for example, by measuring the distance to the model 5 or the like. For example, KINECT (registered trademark) or RealSense may be used as a device for performing motion capture using a captured image.

リンク列のマッピングがリアルタイムで行われる場合には、受付部11は、例えば、モデルリンク列情報を時系列に沿って繰り返して、一定または不定の時間間隔で受け付けることが好適である。すなわち、受付部11が受け付けたモデルリンク列情報によって、モデル5のリンク列の動きが分かることが好適である。なお、モデルリンク列情報自体が、モデル5のリンク列に関する時系列に沿った情報であってもよい。一方、リンク列のマッピングがリアルタイムで行われない場合には、受付部11は、例えば、モデル5のリンク列に関する複数のモデルリンク列情報を一括して受け付けてもよく、または、モデルリンク列情報を一つずつ受け付けてもよい。また、モデル5が2以上のリンク列を有する場合に、受付部11は、モデル5のリンク列ごとにモデルリンク列情報を受け付けてもよい。本実施の形態では、モデル5が人間であり、その人間の腕に関するリンク列のモデルリンク列情報が定期的にリアルタイムでモーションキャプチャ装置2からリンク列マッピング装置1に入力され、受付部11で受け付けられる場合について主に説明する。また、受付部11が複数のリンク列にそれぞれ対応する複数のモデルリンク列情報を受け付ける場合には、そのモデルリンク列情報には、対応するリンク列を識別する情報(例えば、右腕のリンク列である旨等)が含まれていてもよい。また、受付部11は、モデルリンク列情報と共に、モデル5の向きを示す情報(例えば、モデル5の顔の向きを示す情報など)をも受け付けてもよい。そのモデル5の向きを示す情報を用いることによって、モデルリンク列情報がモデル5のどのリンク列に対応するのかを知ることができるようになる。   When the mapping of the link string is performed in real time, it is preferable that, for example, the receiving unit 11 repeatedly receives the model link string information in time series and receives the same at a fixed or indefinite time interval. That is, it is preferable that the movement of the link string of the model 5 can be known from the model link string information accepted by the accepting unit 11. The model link string information itself may be information along the time series regarding the link string of the model 5. On the other hand, when the mapping of the link string is not performed in real time, the receiving unit 11 may, for example, collectively receive a plurality of model link string information related to the link string of the model 5, or model link string information May be accepted one by one. Further, when the model 5 has two or more link strings, the receiving unit 11 may receive model link string information for each of the link strings of the model 5. In the present embodiment, model 5 is a human being, and model link string information of a link string relating to the human arm is periodically inputted in real time from motion capture device 2 to link string mapping device 1 and accepted by accepting portion 11 Will be mainly described. Further, when the receiving unit 11 receives a plurality of model link string information corresponding to a plurality of link strings, the model link string information includes information identifying the corresponding link string (for example, the link string of the right arm) And the like may be included. The receiving unit 11 may also receive information indicating the orientation of the model 5 (for example, information indicating the orientation of the face of the model 5) as well as the model link string information. By using the information indicating the orientation of the model 5, it is possible to know to which link string of the model 5 the model link string information corresponds.

なお、受付部11は、例えば、有線または無線の通信回線を介して送信されたモデルリンク列情報を受信してもよく、所定の記録媒体(例えば、光ディスクや磁気ディスク、半導体メモリなど)から読み出されたモデルリンク列情報を受け付けてもよい。なお、受付部11は、受け付けを行うためのデバイス(例えば、モデムやネットワークカードなど)を含んでもよく、または含まなくてもよい。また、受付部11は、ハードウェアによって実現されてもよく、または所定のデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。   The receiving unit 11 may receive, for example, model link string information transmitted via a wired or wireless communication line, and may read it from a predetermined recording medium (for example, an optical disc, a magnetic disc, a semiconductor memory, etc.) The issued model link string information may be accepted. Note that the receiving unit 11 may or may not include a device for receiving (for example, a modem, a network card, etc.). Also, the reception unit 11 may be realized by hardware or may be realized by software such as a driver for driving a predetermined device.

記憶部12では、ロボット6のリンク列における関節の可動域を示す情報である関節可動域情報が記憶される。その関節可動域情報には、可動域に制限のあるすべての関節に関する情報が含まれていることが好適である。例えば、ロボット6のリンク列におけるリンク101,102の間の関節Piの角度が、図5のようにθ1 i、θ2 i、θ3 iで示される場合に、関節可動域情報は、θ1 i、θ2 i、θ3 iのうち、可動域に制限のある1以上の角度に関する範囲を示す情報であってもよい。例えば、角度θ1 iの範囲が、
α1 i≦θ1 i≦β1 i
である場合には、関節可動域情報に含まれる角度θ1 iに関する情報は、その角度θ1 iに関する下限値α1 iと、上限値β1 iとであってもよい。なお、可動域に制限のない関節や軸については、関節可動域情報によって可動域が示されなくてもよい。また、図5では、リンク101,102の間の関節Piが3個の軸を有している場合について示しているが、関節の軸数は問わない。関節の軸数は、例えば、1個、2個、3個のいずれかであってもよく、4個以上であってもよい。また、その関節の軸の方向についても任意である。また、2以上の軸を有する関節においては、各軸の順序、例えば、リンク101側からリンク102側について、どのような順序で各軸が設けられているのかを示す情報が記憶部12で記憶されていてもよい。
The storage unit 12 stores joint movement range information which is information indicating the movement range of joints in the link row of the robot 6. It is preferable that the joint movement range information includes information on all joints whose movement range is limited. For example, when the angle of the joint Pi between the links 101 and 102 in the link row of the robot 6 is represented by θ 1 i , θ 2 i and θ 3 i as shown in FIG. 5, the joint movement range information is θ It may be information indicating a range of one or more angles having a limited range of motion among 1 i , θ 2 i and θ 3 i . For example, the range of the angle θ 1 i is
α 1 i ≦ θ 1 i ≦ β 1 i
In this case, the information on the angle θ 1 i included in the joint movement range information may be the lower limit value α 1 i and the upper limit value β 1 i for the angle θ 1 i . In addition, about the joint and axis | shaft which do not have a restriction | limiting in a movable area, a movable area does not need to be shown by joint movable area information. Although FIG. 5 shows the case where the joint Pi between the links 101 and 102 has three axes, the number of axes of the joints does not matter. The number of axes of the joints may be, for example, one, two, or three, or four or more. Also, the direction of the axis of the joint is optional. In a joint having two or more axes, the storage unit 12 stores information indicating the order in which the axes are provided, for example, from the link 101 side to the link 102 side. It may be done.

本実施の形態では、ロボット6がヒューマノイドロボットである場合について主に説明するが、そうでなくてもよい。ロボット6は、例えば、犬や猫、鳥、魚、蛇、昆虫などの動物型ロボットであってもよく、その他の形状のロボットであってもよい。なお、そのロボット6は、1以上の動作可能なリンク列を有しているものとする。その動作可能なリンク列は、例えば、複数のモータによってそれぞれ駆動される複数の関節によって連結されたリンク列であってもよい。また、そのロボット6は、通常、玩具用のロボット、すなわちエンタテイメントロボットであるが、そうでなくてもよい。また、写像元であるモデル5のリンク列におけるリンク数LN1と、写像先であるロボット6のリンク列におけるリンク数LN2との多少は問わない。例えば、モデル5のリンク数LN1は、ロボット6のリンク数LN2より多くてもよく、少なくてもよく、両リンク数LN1,LN2は等しくてもよい。なお、ロボット6のリンク列についても、モデル5のリンク列と同様に座標系が設定されているものとする。その座標系は、ロボット6が存在する実空間の座標系であってもよく、ロボット6のリンク列に関する位置関係を示すための仮想空間の座標系であってもよく、その他の座標系であってもよい。   Although the case where the robot 6 is a humanoid robot is mainly described in the present embodiment, it may not be. The robot 6 may be, for example, an animal robot such as a dog, a cat, a bird, a fish, a snake, or an insect, or may be a robot of another shape. The robot 6 has one or more operable link rows. The operable link row may be, for example, a link row connected by a plurality of joints respectively driven by a plurality of motors. Also, the robot 6 is usually a toy robot, ie, an entertainment robot, but may not be. Further, the number LN1 of links in the link string of the model 5 which is the mapping source and the number LN2 of links in the link string of the robot 6 which is the mapping destination do not matter. For example, the number of links LN1 of the model 5 may be larger or smaller than the number of links LN2 of the robot 6, and both the numbers of links LN1 and LN2 may be equal. In addition, it is assumed that the coordinate system of the link row of the robot 6 is set in the same manner as the link row of the model 5. The coordinate system may be a coordinate system of a real space in which the robot 6 exists, or may be a coordinate system of a virtual space for indicating a positional relationship with respect to a link row of the robot 6, and other coordinate systems. May be

記憶部12では、関節可動域情報以外の情報が記憶されていてもよい。例えば、ロボット6のリンク列における各リンクの長さを示すリンク長さ情報が記憶部12で記憶されてもよい。そのリンク長さ情報と、ロボット6のリンク列における各関節の角度とを用いることによって、ロボット6のリンク列の位置を特定できることは、ロボットの順運動学として知られている。また、例えば、ロボット6のリンク列における各関節の軸の方向に関する情報が記憶部12で記憶されてもよい。また、モデル5のリンク列においてあらかじめ決められた複数箇所を示す情報や、その複数箇所に対応する、ロボット6のリンク列における複数箇所を示す情報が記憶部12で記憶されていてもよい。また、ロボット6のリンク列に、直線以外の形状のリンクが含まれる場合には、そのリンクの形状を示す情報が記憶部12で記憶されていてもよい。また、後述するノイズ除去部16におけるローパスフィルタの時定数等が記憶部12で記憶されていてもよい。   The storage unit 12 may store information other than the joint movement range information. For example, link length information indicating the length of each link in the link string of the robot 6 may be stored in the storage unit 12. It is known as forward kinematics of a robot that the position of the link row of the robot 6 can be specified by using the link length information and the angle of each joint in the link row of the robot 6. Further, for example, information on the direction of the axis of each joint in the link row of the robot 6 may be stored in the storage unit 12. Further, the storage unit 12 may store information indicating a plurality of predetermined locations in the link string of the model 5 or information indicating a plurality of locations in the link string of the robot 6 corresponding to the plurality of locations. Further, when the link row of the robot 6 includes a link having a shape other than a straight line, information indicating the shape of the link may be stored in the storage unit 12. In addition, a time constant or the like of a low pass filter in the noise removing unit 16 described later may be stored in the storage unit 12.

記憶部12に情報が記憶される過程は問わない。例えば、記録媒体を介して情報が記憶部12で記憶されるようになってもよく、通信回線等を介して送信された情報が記憶部12で記憶されるようになってもよく、または、入力デバイスを介して入力された情報が記憶部12で記憶されるようになってもよい。記憶部12での記憶は、RAM等における一時的な記憶でもよく、または、長期的な記憶でもよい。記憶部12は、所定の記録媒体(例えば、半導体メモリや磁気ディスク、光ディスクなど)によって実現されうる。   There is no limitation on the process of storing information in the storage unit 12. For example, the information may be stored in the storage unit 12 via a recording medium, the information transmitted via a communication line may be stored in the storage unit 12, or The information input via the input device may be stored in the storage unit 12. The storage in the storage unit 12 may be temporary storage in a RAM or the like, or may be long-term storage. The storage unit 12 can be realized by a predetermined recording medium (for example, a semiconductor memory, a magnetic disk, an optical disk, etc.).

正規化部13は、モデル5のリンク列の長さと、ロボット6のリンク列の長さとを正規化する。通常、モーションキャプチャ装置2から受け取るモデルリンク列情報によって示されるモデル5のリンク列の長さと、ロボット6のリンク列の長さとは異なっている。したがって、正規化部13は、両者の長さを一致させる処理である正規化を行う。その正規化において、モデル5のリンク列の長さ、及びロボット6のリンク列の長さは、「1」にされてもよく、または、他の値にされてもよい。本実施の形態では、前者の場合について主に説明する。なお、リンク列の長さとは、リンク列の一端から他端までの各リンクの長さの合計である。モデル5及びロボット6のリンク列の長さを1に正規化する場合には、正規化部13は、例えば、モデル5のリンク列の長さを算出し、モデル5のリンク列における各座標値をその算出したリンク列の長さで割ることによって正規化を行ってもよく、ロボット6のリンク列の長さを算出し、ロボット6のリンク列における各リンクの長さをその算出したリンク列の長さで割ることによって正規化を行ってもよい。なお、例えば、モデルリンク列情報によって、モデル5のリンク列における各リンクの両端の位置が示される場合には、正規化部13は、その情報を用いて各リンクの長さを算出して合計することによって、モデル5のリンク列の長さを算出することができる。また、例えば、モデルリンク列情報によって、モデル5のリンク列における各リンクの長さと角度とが示される場合には、正規化部13は、各リンクの長さを合計することによって、モデル5のリンク列の長さを算出することができる。また、例えば、記憶部12においてロボット6のリンク列における各リンクの長さが記憶されている場合には、正規化部13は、その各リンクの長さを合計することによって、ロボット6のリンク列の長さを算出することができる。また、正規化部13は、モデル5のリンク列の座標系と、ロボット6のリンク列の座標系との少なくとも一方の座標系の単位を変更することによって、正規化を行ってもよい。例えば、正規化部13は、両座標系において、モデル5のリンク列の長さと、ロボット6のリンク列の長さが1になるように座標系の単位を変更することによって、正規化を行ってもよい。   The normalization unit 13 normalizes the length of the link row of the model 5 and the length of the link row of the robot 6. Generally, the length of the link string of the model 5 indicated by the model link string information received from the motion capture device 2 is different from the length of the link string of the robot 6. Therefore, the normalization unit 13 performs normalization, which is processing to match the lengths of the two. In the normalization, the length of the link string of the model 5 and the length of the link string of the robot 6 may be “1” or other values. In the present embodiment, the former case will be mainly described. The length of the link row is the sum of the lengths of links from one end to the other end of the link row. In the case of normalizing the length of the link string of the model 5 and the robot 6 to 1, for example, the normalization unit 13 calculates the length of the link string of the model 5 and calculates each coordinate value in the link string of the model 5 May be normalized by dividing the calculated length of the link string, or the length of each link in the link string of the robot 6 may be calculated, and the length of each link in the link string of the robot 6 may be calculated. Normalization may be performed by dividing by the length of. Note that, for example, when the positions of both ends of each link in the link string of the model 5 are indicated by the model link string information, the normalization unit 13 calculates the length of each link using the information and sums By doing this, the length of the link string of the model 5 can be calculated. Also, for example, when the length and angle of each link in the link string of the model 5 are indicated by the model link string information, the normalization unit 13 sums the lengths of the links, and The length of the link string can be calculated. Further, for example, when the length of each link in the link row of the robot 6 is stored in the storage unit 12, the normalization unit 13 adds the length of each link to calculate the link of the robot 6. The length of the column can be calculated. The normalization unit 13 may perform normalization by changing the unit of at least one of the coordinate system of the link string of the model 5 and the coordinate system of the link string of the robot 6. For example, the normalization unit 13 performs normalization by changing the unit of the coordinate system so that the length of the link string of the model 5 and the length of the link string of the robot 6 become 1 in both coordinate systems. May be

正規化部13は、この正規化の処理の際に、モデル5のリンク列の基端と、ロボット6のリンク列の基端との両方が原点となる座標系を設定してもよい。そして、その座標系において、後段の特定部14や算出部15の処理が行われてもよい。具体的には、正規化部13は、モデル5のリンク列の座標系と、ロボット6のリンク列の座標系とのそれぞれについて、リンク列の基端が原点となるように平行移動などの座標変換を行い、両座標系を同一のものにするため、少なくとも一方の座標系について回転等の座標変換を行ってもよい。なお、両座標系の向きが一致している場合には、回転等の座標変換は行わなくてもよい。本実施の形態では、モデル5及びロボット6のリンク列の位置を示す最終的な座標系として、xyz直交座標系が設定される場合について主に説明する。なお、リンク列の基端とは、例えば、人間の腕や足に対応するリンク列における胴体側、すなわち手先や足先の反対側(すなわち、本体側)の端点のことである。例えば、蛇に対応するリンク列のように本体が存在しない場合には、いずれかの端部、例えば尾側または頭側の端部を基端とみなしてもよい。なお、基端と反対側の端点を先端と呼ぶこともある。また、ロボット6のリンク列における各リンクの長さが変わることはないため、ロボット6のリンク列に関する正規化は、1回行われるだけであってもよい。一方、モデル5のリンク列における各リンクの長さは、モデルリンク列情報の取得方法によっては、時間的に変化することもあり得る。そのように、モデル5のリンク列における各リンクの長さが変わりうる場合には、受付部11がモデル5のリンク列に関する情報を受け付けるごとに、モデル5のリンク列に関する正規化が行われることが好適である。一方、モデル5のリンク列における各リンクの長さが変わらない場合には、例えば、正規化部13が、モデル5のリンク列に関する正規化を1回行い、その正規化後の座標系等をモーションキャプチャ装置2に渡すことによって、それ以降は、正規化されたモデルリンク列情報が受け付けられるようになってもよい。なお、特定部14や算出部15が用いるモデル5やロボット6の座標値は、正規化部13によって正規化された後の座標値である。また、正規化が行われ、両リンク列の基端が原点とされた後には、モデル5のリンク列の位置と、ロボットリンク列の位置とは、一の座標系において示されることが好適である。本実施の形態では、正規化が行われ、両リンク列の基端が原点とされた後に、モデル5及びロボット6の位置が上述のxyz直交座標系によって示される場合について主に説明する。   In the normalization process, the normalization unit 13 may set a coordinate system in which both the base end of the link row of the model 5 and the base end of the link row of the robot 6 are the origin. Then, in the coordinate system, the processing of the identification unit 14 or the calculation unit 15 in the subsequent stage may be performed. Specifically, with respect to each of the coordinate system of the link string of the model 5 and the coordinate system of the link string of the robot 6, the normalization unit 13 coordinates such as parallel movement so that the base end of the link string becomes the origin. In order to convert and make both coordinate systems identical, coordinate conversion such as rotation may be performed on at least one of the coordinate systems. When the directions of both coordinate systems coincide with each other, coordinate conversion such as rotation may not be performed. In the present embodiment, a case where an xyz Cartesian coordinate system is set as a final coordinate system indicating the position of the link row of the model 5 and the robot 6 will be mainly described. The proximal end of the link row is, for example, an end point on the trunk side of the link row corresponding to a human arm or foot, that is, the opposite side (i.e., main body side) of the hand or foot. For example, if there is no body, such as a link row corresponding to a snake, either end, eg, the caudal or cranial end, may be considered as the proximal end. In addition, the end point on the opposite side to the proximal end may be called the distal end. Further, since the length of each link in the link row of the robot 6 does not change, the normalization of the link row of the robot 6 may be performed only once. On the other hand, the length of each link in the link string of the model 5 may change temporally depending on the method of obtaining model link string information. As described above, when the length of each link in the link string of the model 5 can be changed, normalization with respect to the link string of the model 5 is performed each time the receiving unit 11 receives information on the link string of the model 5 Is preferred. On the other hand, when the length of each link in the link string of the model 5 does not change, for example, the normalization unit 13 performs normalization on the link string of the model 5 once, and the coordinate system etc. after normalization is performed. After passing to the motion capture device 2, normalized model link string information may be accepted thereafter. The coordinate values of the model 5 and the robot 6 used by the specifying unit 14 and the calculating unit 15 are coordinate values normalized by the normalizing unit 13. In addition, after normalization is performed and the proximal ends of both link rows are made the origin, it is preferable that the position of the link row of the model 5 and the position of the robot link row are indicated in one coordinate system. is there. In the present embodiment, a case will be mainly described in which the positions of the model 5 and the robot 6 are indicated by the above-described xyz orthogonal coordinate system after normalization is performed and the proximal ends of both link rows are set as the origin.

特定部14は、受付部11によって受け付けられたモデルリンク列情報を用いて、モデル5のリンク列におけるあらかじめ決められた複数箇所の座標値を特定する。なお、その座標値の特定は、正規化部13による正規化の行われた後の座標値の特定である。また、本実施の形態では、その座標値が上述のxyz直交座標系における座標値である場合について主に説明する。モデル5のリンク列におけるあらかじめ決められた複数箇所とは、モデル5のリンク列の両端点の間をあらかじめ決められた比で内分する複数箇所である。すなわち、その複数箇所は、リンク列の両端間をあらかじめ決められた割合で分割する複数の点に応じた箇所である。したがって、この複数箇所は、リンク列の関節の位置とは関係なく決められる。また、この複数箇所の個数は、ロボット6のリンク列における連結箇所の数よりも多いことが好適である。リンク列における連結箇所とは、リンク列においてリンクとリンクとを接続する箇所のことである。また、通常、リンク列における連結箇所の数に1を足した値が、そのリンク列におけるリンク数となるため、複数箇所の個数は、ロボット6のリンク列におけるリンク数以上であることが好適であると言い換えることもできる。また、その複数箇所の位置は、均等に設けられてもよく、またはそうでなくてもよい。また、その複数箇所には、モデル5のリンク列における一端または両端が含まれていてもよく、そうでなくてもよい。また、リンク列の両端点の間をあらかじめ決められた比で内分する複数箇所とは、リンク列を直線状に伸ばした場合に、両端点の間をあらかじめ決められた比で内分する複数箇所であると考えてもよい。その複数箇所の各々を基準点と呼ぶこともある。また、座標値を特定するとは、その特定した座標値を記録媒体に蓄積することであってもよい。   The identifying unit 14 uses the model link string information accepted by the accepting unit 11 to identify coordinate values of a plurality of predetermined points in the link string of the model 5. The specification of the coordinate values is specification of the coordinate values after normalization by the normalization unit 13. Further, in the present embodiment, a case where the coordinate value is a coordinate value in the above-mentioned xyz orthogonal coordinate system will be mainly described. A plurality of predetermined locations in the link string of the model 5 are a plurality of locations internally dividing between the end points of the link string of the model 5 at a predetermined ratio. That is, the plurality of locations are locations corresponding to the plurality of points at which both ends of the link string are divided at a predetermined ratio. Therefore, the plurality of locations are determined irrespective of the positions of the joints in the link row. Further, it is preferable that the number of the plurality of places is larger than the number of connection places in the link row of the robot 6. The connection point in the link string is the point at which the link and the link are connected in the link string. Also, since the value obtained by adding 1 to the number of connection points in the link string usually becomes the number of links in the link string, it is preferable that the number of multiple points is equal to or greater than the number of links in the link string of the robot 6 It can be paraphrased that there is. Also, the plurality of positions may or may not be uniformly provided. Further, one or both ends of the link row of the model 5 may or may not be included in the plurality of locations. Further, a plurality of locations internally dividing between the end points of the link row at a predetermined ratio are a plurality of locations internally dividing between the end points at a predetermined ratio when the link row is linearly extended. You may think that it is a place. Each of the plurality of locations may be referred to as a reference point. Further, specifying the coordinate value may be storing the specified coordinate value on the recording medium.

算出部15は、特定部14によって座標値の特定された複数箇所と、その複数箇所にそれぞれ対応するロボット6のリンク列における複数箇所との各距離に応じた目的関数が小さくなるように、ロボット6のリンク列に含まれる各リンクの位置に関する情報であるロボットリンク列情報を算出する。ここで、モデル5のリンク列における複数の基準点に対応するロボット6のリンク列における複数箇所の各々も基準点と呼ぶことがある。特定部14によって特定された、モデル5のリンク列における複数箇所にそれぞれ対応するロボット6のリンク列における複数箇所とは、例えば、ロボット6のリンク列の両端点の間をあらかじめ決められた比で内分する複数箇所であってもよい。そのあらかじめ決められた比は、モデル5のリンク列における複数箇所に関するあらかじめ決められた比と同じであってもよく、または、異なっていてもよい。後者の場合には、例えば、人間であるモデル5の動きが、ロボット6における大げさな動きとなるようにモデル5のリンク列における複数の基準点と、ロボット6のリンク列における複数の基準点とが決定されてもよい。いずれの場合であっても、複数箇所の個数が、ロボット6のリンク列におけるリンク数以上であるときには、ロボット6のリンク列における各リンクに少なくとも1箇所が存在するように、その比が設定されてもよい。モデル5のリンク列に関するあらかじめ決められた比と、ロボット6のリンク列におけるあらかじめ決められた比とが同じである場合には、モデル5のリンク列及びロボット6のリンク列において、同じ比の基準点が対応する基準点となる。一方、両者の比が異なる場合には、モデル5のリンク列における複数の基準点と、ロボット6のリンク列における複数の基準点とは、基端側から順番にそれぞれ対応するものとする。   The calculation unit 15 is configured so that the objective function corresponding to each distance between the plurality of locations whose coordinate values are specified by the identification unit 14 and the plurality of locations in the link row of the robot 6 respectively corresponding to the plurality Robot link string information, which is information on the position of each link included in the link string of 6, is calculated. Here, each of a plurality of points in the link row of the robot 6 corresponding to a plurality of reference points in the link row of the model 5 may also be referred to as a reference point. For example, a plurality of locations in the link array of the robot 6 corresponding to a plurality of locations in the link array of the model 5 identified by the identification unit 14 have, for example, a predetermined ratio between end points of the link array of the robot 6 It may be a plurality of places to internally divide. The predetermined ratio may be the same as or different from the predetermined ratio for a plurality of locations in the link train of model 5. In the latter case, for example, a plurality of reference points in the link string of the model 5 and a plurality of reference points in the link string of the robot 6 so that the motion of the model 5 which is a human becomes an exaggerated motion in the robot 6 May be determined. In any case, when the number of plural places is equal to or more than the number of links in the link row of the robot 6, the ratio is set such that at least one place exists in each link in the link row of the robot 6. May be If the predetermined ratio of the link train of the model 5 and the predetermined ratio of the link train of the robot 6 are the same, the reference of the same ratio in the link train of the model 5 and the link train of the robot 6 The points are the corresponding reference points. On the other hand, when the ratio of the two is different, the plurality of reference points in the link row of the model 5 and the plurality of reference points in the link row of the robot 6 correspond in order from the base end.

特定部14によって特定された複数箇所と、その複数箇所にそれぞれ対応するロボット6のリンク列における複数箇所との各距離は、特定されたある基準点と、その基準点に対応するロボット6のリンク列における基準点との距離である。その各距離に応じた目的関数は、各距離が大きくなるほど値が大きくなる関数であってもよい。具体的には、その目的関数は、各距離の二乗を加算したものであってもよい。その場合には、最小二乗法を用いたマッピングが行われることになる。また、その目的関数は、各距離の絶対値を加算したものであってもよい。その場合には、最小絶対値法を用いたマッピングが行われることになる。なお、各距離が大きくなるほど値が大きくなるその他の目的関数が用いられてもよいことは言うまでもない。各距離は、正規化後の距離、すなわち、正規化された座標値を用いて計算された距離である。また、各距離は、モデル5及びロボット6のリンク列の基端を原点にした座標系における座標値に応じた距離、すなわち、その座標値を用いて計算された距離である。また、目的関数が小さくなるようにロボットリンク列情報を算出することは、目的関数が小さくなるようにロボット6のリンク列の位置を算出することである。通常、ロボット6のリンク列における各リンクの長さは一定であるため、ロボット6のリンク列における各関節の角度によって、ロボット6のリンク列の位置を特定できる。したがって、ロボット6のリンク列の位置を算出することは、そのリンク列における各関節の角度を算出することであってもよい。その場合には、ロボットリンク列情報は、ロボット6のリンク列における各関節の角度を示す情報であってもよい。リンク列の基端も関節である場合には、そのロボットリンク列情報には、その基端である関節の角度も含まれてもよい。一方、ロボットリンク列情報は、関節の角度以外の情報であってもよい。例えば、ロボットリンク列情報は、ロボット6のリンク列における各リンクの両端の位置を示す情報であってもよく、ロボット6のリンク列における複数の基準点の各座標値であってもよい。ロボットリンク列情報が、ロボット6のリンク列における複数の基準点の各座標値である場合に、その複数の基準点の各座標値によってリンク列の位置を一意に特定できることが好適である。本実施の形態では、ロボットリンク列情報が、ロボット6のリンク列における各関節の角度を示す情報である場合について主に説明する。その場合に、ロボットリンク列情報では、例えば、関節を識別する情報と、その関節における角度を示す情報とが対応付けられていてもよく、関節の軸を識別する情報と、その軸における角度を示す情報とが対応付けられていてもよい。また、ロボットリンク列情報を算出する際に、ロボット6のリンク列の基端の位置を固定してもよく、または、そうでなくてもよい。本実施の形態では、前者の場合について説明する。なお、後者の場合には、ロボット6のリンク列の基端の位置を示す情報もロボットリンク列情報に含まれてもよい。   Distances between a plurality of locations specified by the identifying unit 14 and a plurality of locations in the link row of the robot 6 respectively corresponding to the plurality of locations are a specified reference point and a link of the robot 6 corresponding to the reference point It is the distance to the reference point in the column. The objective function according to each distance may be a function whose value increases as each distance increases. Specifically, the objective function may be the sum of squares of each distance. In that case, mapping using the least squares method will be performed. Also, the objective function may be the sum of the absolute value of each distance. In that case, mapping using the least absolute value method will be performed. Needless to say, other objective functions may be used in which the value increases as each distance increases. Each distance is a normalized distance, that is, a distance calculated using normalized coordinate values. Further, each distance is a distance corresponding to a coordinate value in a coordinate system in which a base end of a link row of the model 5 and the robot 6 is an origin, that is, a distance calculated using the coordinate value. Further, calculating the robot link string information so that the objective function becomes smaller means calculating the position of the link string of the robot 6 so as to make the objective function smaller. Usually, since the length of each link in the link row of the robot 6 is constant, the position of the link row of the robot 6 can be specified by the angle of each joint in the link row of the robot 6. Therefore, calculating the position of the link row of the robot 6 may be calculating the angle of each joint in the link row. In that case, the robot link string information may be information indicating the angle of each joint in the link string of the robot 6. If the proximal end of the link row is also a joint, the robot link row information may also include the angle of the joint that is the proximal end. On the other hand, the robot link string information may be information other than the angle of the joint. For example, the robot link string information may be information indicating the positions of both ends of each link in the link string of the robot 6, or may be coordinate values of a plurality of reference points in the link string of the robot 6. When the robot link string information is coordinate values of a plurality of reference points in the link string of the robot 6, it is preferable that the position of the link string can be uniquely identified by the coordinate values of the plurality of reference points. In the present embodiment, a case will be mainly described where the robot link string information is information indicating the angle of each joint in the link string of the robot 6. In that case, in the robot link string information, for example, information for identifying a joint may be associated with information indicating an angle at the joint, and information for identifying an axis of the joint and an angle at the axis The information to show may be matched. Further, when calculating the robot link string information, the position of the base end of the link string of the robot 6 may be fixed or not. In the present embodiment, the former case will be described. In the latter case, information indicating the position of the base end of the link row of the robot 6 may also be included in the robot link row information.

目的関数が小さくなるようにロボットリンク列情報を算出する場合に、算出部15は、最適化問題を解く任意のアルゴリズムを用いることができる。なお、その最適化問題を解く際には、局所最適となるように解いてもよく、大域最適となるように解いてもよい。本実施の形態では、最適化問題を局所最適となるように解く場合について主に説明する。例えば、算出部15は、目的関数の導関数を用いるアルゴリズムである勾配法によって目的関数が小さくなるようにロボットリンク列情報を算出してもよく、目的関数の導関数を用いないアルゴリズムによって目的関数が小さくなるようにロボットリンク列情報を算出してもよい。また、算出部15は、記憶部12で記憶されている関節可動域情報の示す可動域内において、目的関数が小さくなるようにロボットリンク列情報を算出する。すなわち、算出部15は、関節可動域情報を制約条件として、最適化問題を解いてもよい。また、目的関数が小さくなるようにロボットリンク列情報を算出するとは、目的関数が最小となるようにロボットリンク列情報を算出することであってもよく、目的関数が最小に近くなるようにロボットリンク列情報を算出することであってもよい。ここで、目的関数が最小となるとは、目的関数が厳密な意味で最小値になることであってもよく、または、目的関数が最小値に十分近くなることであってもよい。目的関数が小さくなるようにロボットリンク列情報を算出する際に、例えば、ニュートン法などの反復処理を繰り返し、完全に収束する前に処理を終了することによってロボットリンク列情報を算出した場合には、目的関数を厳密な意味で最小にするロボットリンク列情報を算出したことにはならないが、目的関数が最小値に十分近くなるようにロボットリンク列情報を算出したことになると言える。また、目的関数が小さくなるようにロボットリンク列情報を算出している際に、次のモデルリンク列情報が受付部11で受け付けられた場合には、算出部15は、その時点のロボットリンク列情報を後段のノイズ除去部16に渡し、新たに受け付けられたモデルリンク列情報に応じたロボットリンク列情報の算出を行ってもよい。その場合であっても、算出部15は、目的関数が最小に近くなるようにロボットリンク列情報を算出していることになる。そのように、算出部15が、目的関数が最小になるように逐次的に処理を行っている途中にその処理を終了した場合に、その終了時点のロボットリンク列情報が、目的関数が小さくなるように算出されたロボットリンク列情報であると考えてもよい。   When calculating robot link sequence information so that an objective function becomes small, the calculation unit 15 can use an arbitrary algorithm for solving an optimization problem. When solving the optimization problem, it may be solved so as to be local optimum or may be solved so as to be global optimum. In the present embodiment, the case of solving the optimization problem so as to be locally optimal will be mainly described. For example, the calculation unit 15 may calculate the robot link string information so that the objective function becomes smaller by the gradient method which is an algorithm using the derivative of the objective function, and the objective function by the algorithm not using the derivative of the objective function The robot link string information may be calculated so that is smaller. Further, the calculation unit 15 calculates the robot link string information so that the objective function becomes smaller in the movable range indicated by the joint movable range information stored in the storage unit 12. That is, the calculation unit 15 may solve the optimization problem with the joint movement range information as a constraint condition. Further, to calculate robot link string information so that the objective function becomes smaller may be to calculate robot link string information so as to minimize the objective function, so that the objective function is close to the minimum The link string information may be calculated. Here, that the objective function is minimized may be that the objective function is strictly the minimum value, or may be that the objective function is sufficiently close to the minimum value. When calculating robot link string information so that the objective function becomes smaller, for example, if it is calculated robot link string information by repeating the iterative process such as the Newton method and ending the processing before completely converging. Although the robot link string information that minimizes the objective function in a strict sense can not be calculated, it can be said that the robot link string information is calculated so that the objective function is sufficiently close to the minimum value. In addition, when the robot link string information is calculated so that the objective function becomes smaller, if the next model link string information is received by the receiving unit 11, the calculating unit 15 determines the robot link string at that time. The information may be passed to the noise removal unit 16 in the subsequent stage, and robot link string information may be calculated according to the newly accepted model link string information. Even in such a case, the calculating unit 15 calculates the robot link string information so that the objective function is close to the minimum. As described above, when the calculation unit 15 ends the process while performing the process sequentially so as to minimize the objective function, the robot link string information at the time of the end becomes smaller in the objective function. It may be considered that it is robot link sequence information calculated as described above.

なお、算出部15が目的関数を小さくする処理を行うモデル5のリンク列とロボット6のリンク列とは、あらかじめ決められていてもよく、または、そうでなくてもよい。後者の場合には、例えば、あらかじめ決められたルールに従って、モデル5のリンク列に対応するロボット6のリンク列を特定するようにしてもよい。具体的には、モデル5が人間であり、ロボット6がヒューマノイドロボットである場合には、頭部に近いリンク列同士を対応するリンク列とする、というルールが存在してもよく、頭部に近く、頭部の向き(例えば、頭部の顔の向き)に対して右側(あるいは左側)のリンク列同士を対応するリンク列とする、というルールが存在してもよい。このルールにより、腕のリンク列を対応付けることができる。また、頭部から遠いリンク列同士を対応するリンク列とする、というルールが存在してもよく、頭部から遠く、頭部の向きに対して右側(あるいは左側)のリンク列同士を対応するリンク列とする、というルールが存在してもよい。このルールにより、足のリンク列を対応付けることができる。   The link string of the model 5 and the link string of the robot 6 on which the calculation unit 15 performs the process of reducing the objective function may be determined in advance or may not be predetermined. In the latter case, for example, the link string of the robot 6 corresponding to the link string of the model 5 may be specified according to a predetermined rule. Specifically, in the case where the model 5 is a human and the robot 6 is a humanoid robot, there may be a rule that link strings close to the head correspond to corresponding link strings. There may be a rule in which link strings on the right (or left) relative to head orientation (for example, head orientation) are set as corresponding link strings. This rule makes it possible to associate arm link sequences. In addition, there may be a rule that link rows that are far from the head correspond to corresponding link rows, and link rows that are far from the head and correspond to the right (or left) link direction with respect to the head direction There may be a rule to make it a link string. According to this rule, it is possible to associate foot link strings.

ノイズ除去部16は、ロボットリンク列情報に含まれる高周波のノイズ成分を除去する。例えば、モーションキャプチャ装置2によってモデルリンク列情報を取得する際に、そのモデルリンク列情報に高周波のノイズ成分が含まれることがある。その場合には、結果としてロボットリンク列情報にも高周波のノイズ成分が含まれることになるため、ノイズ除去部16によってそのノイズ成分を除去することが好適である。ノイズ除去部16は、例えば、ローパスフィルタであってもよい。ノイズ除去部16は、例えば、算出部15によって算出されたロボットリンク列情報に移動平均処理を行うことによって、ローパスフィルタとして機能してもよい。そのローパスフィルタの時定数として、ノイズ除去部16は、記憶部12で記憶されているものを読み出して用いてもよい。   The noise removing unit 16 removes high frequency noise components included in the robot link string information. For example, when acquiring the model link string information by the motion capture device 2, the model link string information may include high frequency noise components. In that case, as a result, high-frequency noise components are also included in the robot link string information, so it is preferable to remove the noise components by the noise removing unit 16. The noise removing unit 16 may be, for example, a low pass filter. The noise removing unit 16 may function as a low pass filter, for example, by performing moving average processing on the robot link string information calculated by the calculating unit 15. The noise removing unit 16 may read out and use the one stored in the storage unit 12 as the time constant of the low pass filter.

出力部17は、ロボットリンク列情報に応じたロボット6のリンク列の各関節の角度に関する情報を出力する。そのロボットリンク列情報は、ノイズ除去部16によって高周波のノイズ成分が除去されたロボットリンク列情報である。リアルタイムでマッピングの処理が行われる場合には、出力部17は、その情報を時系列に沿って繰り返して、一定または不定の時間間隔で出力してもよい。この場合には、例えば、モデル5の動きにあわせて、ロボット6が動作するようになる。一方、リアルタイムでマッピングの処理が行われない場合には、出力部17は、情報を順次、出力してもよく、または、一括してまとめて出力してもよい。この場合には、例えば、モデル5の過去の動きと同様の動きを、ロボット6が再生するようになってもよい。また、ロボット6が2以上のリンク列を有する場合には、出力部17は、ロボット6のリンク列ごとに情報を出力してもよい。ロボットリンク列情報が、ロボット6のリンク列の各関節の角度に関する情報である場合には、出力部17は、ロボットリンク列情報をそのまま出力してもよい。ロボットリンク列情報がロボット6のリンク列の位置を示す情報である場合には、出力部17は、そのロボットリンク列情報を、ロボット6のリンク列の各関節の角度に関する情報に変換して出力する。例えば、図5において、リンク101,102の位置が分かっている場合に、関節Piの各軸に関する角度を特定する方法はすでに公知であるため、その方法を用いて、ロボットリンク列情報を、ロボット6のリンク列の各関節の角度に関する情報に変換することができる。ロボット6のリンク列の各関節の角度に関する情報とは、各関節の角度を示す情報であってもよく、結果として、各関節の角度を知ることができる情報であってもよい。   The output unit 17 outputs information on the angle of each joint of the link row of the robot 6 according to the robot link row information. The robot link string information is robot link string information from which high-frequency noise components have been removed by the noise removing unit 16. When the mapping process is performed in real time, the output unit 17 may repeat the information in time series and may output the information at fixed or indefinite time intervals. In this case, for example, the robot 6 operates in accordance with the movement of the model 5. On the other hand, when the mapping process is not performed in real time, the output unit 17 may sequentially output the information or may collectively output the information. In this case, for example, the robot 6 may reproduce motion similar to the past motion of the model 5. When the robot 6 has two or more link rows, the output unit 17 may output information for each of the link rows of the robot 6. When the robot link string information is information on the angle of each joint of the link string of the robot 6, the output unit 17 may output the robot link string information as it is. When the robot link string information is information indicating the position of the link string of the robot 6, the output unit 17 converts the robot link string information into information on the angle of each joint of the link string of the robot 6 and outputs Do. For example, in FIG. 5, when the positions of the links 101 and 102 are known, a method of specifying the angle with respect to each axis of the joint Pi is already known. It can be converted into information on the angle of each joint of the six link rows. The information on the angle of each joint of the link row of the robot 6 may be information indicating the angle of each joint, and as a result, it may be information on which the angle of each joint can be known.

ここで、この出力は、出力対象の情報がロボット6で結果として受け付けられるのであれば、どのような出力であってもよく、例えば、ロボット6への有線または無線の通信回線を介した送信でもよく、記録媒体への蓄積でもよく、他の構成要素への引き渡しでもよい。なお、出力部17によって、記録媒体への情報の蓄積や、他の構成要素への情報の引き渡しが行われた場合であっても、その情報が最終的にロボット6に到達するようになることが好適であることは言うまでもない。また、出力対象の情報が、ロボット6で受け付けられるまでに、適宜、フォーマットの変換等の処理が行われてもよいことは言うまでもない。なお、出力部17は、出力を行うデバイス(例えば、送信デバイスなど)を含んでもよく、または含まなくてもよい。また、出力部17は、ハードウェアによって実現されてもよく、または、それらのデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。   Here, this output may be any output as long as the information to be output can be received as a result by the robot 6, for example, even when it is transmitted to the robot 6 via a wired or wireless communication line. It may be stored on a recording medium, or may be delivered to another component. Even when the output unit 17 accumulates information on the recording medium or delivers information to other components, the information finally reaches the robot 6. It is needless to say that is preferable. Moreover, it goes without saying that processing such as format conversion may be appropriately performed until the information to be output is received by the robot 6. Note that the output unit 17 may or may not include a device (eg, a transmitting device) that performs output. Also, the output unit 17 may be realized by hardware, or may be realized by software such as a driver for driving those devices.

次に、リンク列マッピング装置1の動作について図2のフローチャートを用いて説明する。
(ステップS101)正規化部13は、ロボット6のリンク列に関する正規化を行う。
Next, the operation of the link string mapping apparatus 1 will be described using the flowchart of FIG.
(Step S101) The normalization unit 13 normalizes the link string of the robot 6.

(ステップS102)受付部11は、モデルリンク列情報を受け付けたかどうか判断する。そして、モデルリンク列情報を受け付けた場合には、ステップS103に進み、そうでない場合には、モデルリンク列情報を受け付けるまで、ステップS102の処理を繰り返す。   (Step S102) The receiving unit 11 determines whether model link string information has been received. If the model link string information is received, the process proceeds to step S103. If not, the process of step S102 is repeated until the model link string information is received.

(ステップS103)正規化部13は、ステップS102で受け付けられたモデルリンク列情報に対応するモデル5のリンク列に関する正規化を行う。   (Step S103) The normalization unit 13 normalizes the link string of the model 5 corresponding to the model link string information received in step S102.

(ステップS104)特定部14は、ステップS103で正規化されたモデル5のリンク列におけるあらかじめ決められた複数箇所の座標値をそれぞれ特定する。   (Step S104) The specifying unit 14 specifies coordinate values at a plurality of predetermined points in the link string of the model 5 normalized in step S103.

(ステップS105)算出部15は、ステップS104で座標値が特定された複数箇所と、その複数箇所にそれぞれ対応するロボット6のリンク列における複数箇所との各距離に応じた目的関数が小さくなるように、ロボットリンク列情報を算出する。   (Step S105) The calculation unit 15 reduces the objective function according to the distances between the plurality of locations whose coordinate values are specified in step S104 and the plurality of locations in the link string of the robot 6 respectively corresponding to the plurality of locations. Then, robot link string information is calculated.

(ステップS106)ノイズ除去部16は、ステップS105で算出されたロボットリンク列情報に含まれる高周波のノイズ成分を除去する。   (Step S106) The noise removal unit 16 removes high frequency noise components included in the robot link string information calculated in step S105.

(ステップS107)出力部17は、高周波のノイズ成分の除去されたロボットリンク列情報に応じたロボット6のリンク列の各関節の角度に関する情報を出力する。そして、ステップS102に戻る。   (Step S107) The output unit 17 outputs information on the angle of each joint of the link array of the robot 6 according to the robot link array information from which the high frequency noise component has been removed. Then, the process returns to step S102.

なお、図2のフローチャートにおいてリアルタイムの処理を行う場合には、ステップS105において、ロボットリンク列情報を算出している際に、モデルリンク列情報を受け付ける処理を並列して実行し、モデルリンク列情報を受け付けるとステップS105の処理を中断し、その時点のロボットリンク列情報に応じた出力(ステップS106,S107)を行うと共に、新たに受け付けられたモデルリンク列情報に応じた処理を実行するようにしてもよい。また、モデル5やロボット6が、マッピング関係にあるリンク列を複数有している場合には、リンク列マッピング装置1は、各リンク列について、ステップS102〜S107の処理を繰り返して実行してもよく、並列して実行してもよい。具体的には、モデル5の両手、両足のリンク列をロボット6の両手、両足にマッピングする場合には、ステップS102〜S107の処理が、4個のリンク列について繰り返して、または並列して処理されるようにしてもよい。また、図2のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。   In addition, when performing the process of real time in the flowchart of FIG. 2, when calculating robot link string information in step S105, the process which receives model link string information is performed in parallel and model link string information When the process of step S105 is received, the output corresponding to the robot link string information at that time (steps S106 and S107) is performed, and the process corresponding to the newly accepted model link string information is executed. May be When the model 5 or the robot 6 has a plurality of link strings in a mapping relationship, the link string mapping device 1 repeatedly executes the processing of steps S102 to S107 for each link string. You may run well in parallel. Specifically, when mapping the link rows of both hands and both feet of the model 5 to both hands and feet of the robot 6, the processing of steps S102 to S107 is repeated for four link rows or processed in parallel. It may be done. Further, in the flowchart of FIG. 2, the processing is ended by an interruption of power off or processing end.

次に、本実施の形態によるリンク列マッピング装置1の動作について、具体例を用いて説明する。この具体例では、モデル5のリンク列が人間の腕であり、ロボット6のリンク列がヒューマノイドロボットの腕である場合について説明する。すなわち、人間の腕が、ヒューマノイドロボットの腕にマッピングされる場合について説明する。この具体例では、モデル5のリンク列におけるリンク数をnとし、ロボット6のリンク列におけるリンク数をNとする。n,Nはそれぞれ1以上の整数である。   Next, the operation of the link string mapping apparatus 1 according to the present embodiment will be described using a specific example. In this specific example, the case where the link row of the model 5 is a human arm and the link row of the robot 6 is a humanoid robot arm will be described. That is, the case where a human arm is mapped to a humanoid robot arm will be described. In this specific example, the number of links in the link string of the model 5 is n, and the number of links in the link string of the robot 6 is N. n and N each represent an integer of 1 or more.

図3は、人間であるモデル5のリンク列5aの一例を示す図である。マッピング対象のリンク列5aは、リンク51〜53で構成されており、関節である端点p0は両肩の中心であり、関節p1は肩であり、関節p2は肘であり、端点p3は手先である。なお、図3では、説明を簡単にするため、手首の関節を省略している。図3において、p0〜p3の座標をそれぞれxyz直交座標系における(x0,y0,z0)、(x1,y1,z1)、(x2,y2,z2)、(x3,y3,z3)とする。また、リンク51〜53の長さをそれぞれd1,d2,d3とする。図3では、リンク数n=3である。 FIG. 3 is a diagram showing an example of the link string 5a of the model 5 which is a human. Link row 5a to be mapped is composed of links 51 to 53, and the end point p0 which is a joint is the center of both shoulders, the joint p1 is a shoulder, the joint p2 is an elbow, and the end point p3 is a hand is there. In FIG. 3, wrist joints are omitted to simplify the description. 3, in the xyz orthogonal coordinate system respectively the coordinates of p0~p3 (x 0, y 0, z 0), (x 1, y 1, z 1), (x 2, y 2, z 2), ( It is assumed that x 3 , y 3 and z 3 ). The lengths of the links 51 to 53 are d 1 , d 2 and d 3 respectively. In FIG. 3, the number of links n = 3.

図4は、ヒューマノイドロボットであるロボット6のリンク列6aの一例を示す図である。マッピング先のリンク列6aは、リンク61,62で構成されており、関節である端点P0は肩であり、関節P1は肘であり、端点P2は手先である。図4において、P0〜P1の座標をそれぞれXYZ直交座標系における(X0,Y0,Z0)、(X1,Y1,Z1)、(X2,Y2,Z2)とする。また、リンク61,62の長さをそれぞれD1,D2とする。このD1,D2は、記憶部12で記憶されているものとする。また、関節Piにおける関節の角度をθ1 i,θ2 i,…,θki iとする。なお、kiは、関節Piにおける軸数を示す1以上の整数である。i=0,1である。図4では、リンク数N=2である。 FIG. 4 is a view showing an example of the link row 6a of the robot 6 which is a humanoid robot. The link row 6a at the mapping destination is composed of links 61 and 62. The end point P0 which is a joint is a shoulder, the joint P1 is an elbow, and the end point P2 is a hand. In FIG. 4, let coordinates of P0 to P1 be (X 0 , Y 0 , Z 0 ), (X 1 , Y 1 , Z 1 ), and (X 2 , Y 2 , Z 2 ) in the XYZ orthogonal coordinate system, respectively. . The lengths of the links 61 and 62 are D 1 and D 2 respectively. It is assumed that D 1 and D 2 are stored in the storage unit 12. Further, the angles of the joints at the joints Pi are assumed to be θ 1 i , θ 2 i ,..., Θ ki i . Here, ki is an integer of 1 or more indicating the number of axes in the joint Pi. i = 0,1. In FIG. 4, the number of links N = 2.

xyz直交座標系、及びXYZ直交座標系は共に、モデル5やロボット6に設定されるローカル座標系であり、xyz軸がそれぞれXYZ軸に対応するようになっているものとする。例えば、z軸及びZ軸が体軸方向に設定されており、x軸及びX軸が前後方向に設定されており、y軸及びY軸が左右方向に設定されていてもよい。なお、体軸方向とは、人間やヒューマノイドロボットの立位での上下方向のことである。   Both the xyz orthogonal coordinate system and the XYZ orthogonal coordinate system are local coordinate systems set for the model 5 and the robot 6, and the xyz axes correspond to the XYZ axes, respectively. For example, the z-axis and the z-axis may be set in the body axis direction, the x-axis and the x-axis may be set in the front-rear direction, and the y-axis and the y-axis may be set in the left-right direction. The body axis direction is the vertical direction in the standing position of a human or a humanoid robot.

正規化部13は、まず、ロボット6のリンク列の正規化を行う(ステップS101)。具体的には、正規化部13は、記憶部12で記憶されているリンクの長さD1等を用いて、次式のように、リンク列の長さDを算出する。

Figure 0006529039
The normalization unit 13 first normalizes the link string of the robot 6 (step S101). Specifically, the normalization unit 13 uses the length D 1 or the like of the links stored in the storage unit 12, as shown in the following equation to calculate the length D of the link row.
Figure 0006529039

次に、正規化部13は、P0が原点になるようにXYZ直交座標系を平行移動させる。具体的には、(Xi,Yi,Zi)を(Xi−X0,Yi−Y0,Zi−Z0)にしてもよい。ただし、i=0〜Nである。また、その平行移動後のXYZ直交座標系において、各座標値に1/Dを掛けることによって、ロボット6のリンク列の長さが1になるようにする。具体的には、(Xi,Yi,Zi)を(Xi/D,Yi/D,Zi/D)としてもよい。なお、その平行移動の処理と、1/Dを掛ける処理との順序は問わない。また、正規化部13は、記憶部12で記憶されているリンクの長さD1等についても、1/Dを掛けることによって正規化する。以下の説明では、(Xi,Yi,Zi)、Diは、平行移動と正規化との行われた後の座標、リンクの長さであるとする。 Next, the normalization unit 13 translates the XYZ orthogonal coordinate system so that P0 becomes the origin. Specifically, (X i , Y i , Z i ) may be set to (X i -X 0 , Y i -Y 0 , Z i -Z 0 ). However, i is 0 to N. Further, in the XYZ orthogonal coordinate system after the parallel movement, the length of the link row of the robot 6 is made to be 1 by multiplying each coordinate value by 1 / D. Specifically, (X i , Y i , Z i ) may be set as (X i / D, Y i / D, Z i / D). The order of the parallel movement process and the process of multiplying 1 / D does not matter. Further, the normalization unit 13, for the length D 1 or the like of the links stored in the storage unit 12, is normalized by multiplying 1 / D. In the following description, a (X i, Y i, Z i), D i is the coordinate of after performing the translation and normalization, the length of the link.

その後、受付部11がモデルリンク列情報を受け付けたとする(ステップS102)。そのモデルリンク列情報は、モデル5のリンク列における各リンクの両端の位置を示す情報、すなわち、(x0,y0,z0)、(x1,y1,z1)、…、(xn,yn,zn)であるとする。すると、正規化部13は、モデル5のリンク列の正規化を行う(ステップS103)。具体的には、正規化部13は、モデルリンク列情報を用いて、各リンクの長さd1〜dnを、次式のように算出する。

Figure 0006529039
Thereafter, it is assumed that the receiving unit 11 receives model link string information (step S102). The model link string information is information indicating the positions of both ends of each link in the link string of the model 5, that is, (x 0 , y 0 , z 0 ), (x 1 , y 1 , z 1 ),. It is assumed that x n , y n , z n ). Then, the normalization unit 13 normalizes the link string of the model 5 (step S103). Specifically, the normalization unit 13 calculates the lengths d 1 to d n of each link according to the following equation using model link string information.
Figure 0006529039

その後、正規化部13は、算出したリンクの長さd1等を用いて、次式のように、リンク列の長さdを算出する。

Figure 0006529039
After that, the normalization unit 13 calculates the length d of the link string using the calculated link length d 1 and the like as in the following equation.
Figure 0006529039

次に、正規化部13は、p0が原点になるようにxyz直交座標系を平行移動させる。具体的には、(xi,yi,zi)を(xi−x0,yi−y0,zi−z0)にしてもよい。ただし、i=0〜nである。また、その平行移動後のxyz直交座標系において、各座標値に1/dを掛けることによって、モデル5のリンク列の長さが1になるようにする。具体的には、(xi,yi,zi)を(xi/d,yi/d,zi/d)としてもよい。なお、その平行移動の処理と、1/dを掛ける処理との順序は問わない。また、正規化部13は、算出したリンクの長さd1等についても、1/dを掛けることによって正規化する。以下の説明では、(xi,yi,zi)、diは、平行移動と正規化との行われた後の座標、リンクの長さであるとする。この具体例では、xyz直交座標系におけるモデル5の向きと、XYZ直交座標系におけるロボット6の向きとが一致しているため、それぞれの座標系について平行移動と正規化とを行った後には、モデル5及びロボット6の座標値をxyz直交座標系で示すことにする。すなわち、平行移動及び正規化後の(Xi,Yi,Zi)等は、xyz直交座標系における座標値であるとする。 Next, the normalization unit 13 translates the xyz Cartesian coordinate system so that p0 becomes the origin. Specifically, (x i , y i , z i ) may be set to (x i −x 0 , y i −y 0 , z i −z 0 ). However, i is 0 to n. Further, in the xyz orthogonal coordinate system after the parallel movement, the length of the link row of the model 5 is made to be 1 by multiplying each coordinate value by 1 / d. Specifically, (x i , y i , z i ) may be (x i / d, y i / d, z i / d). The order of the parallel movement process and the process of multiplying 1 / d does not matter. Also, the normalization unit 13 normalizes the calculated link length d 1 and the like by multiplying it by 1 / d. In the following description, it is assumed that (x i , y i , z i ) and d i are coordinates after translation and normalization and link lengths. In this specific example, since the orientation of the model 5 in the xyz orthogonal coordinate system matches the orientation of the robot 6 in the XYZ orthogonal coordinate system, after performing parallel movement and normalization for each coordinate system, Coordinate values of the model 5 and the robot 6 are shown in the xyz orthogonal coordinate system. That is, parallel movement and the normalized (X i, Y i, Z i) or the like is assumed to be coordinate values in the xyz orthogonal coordinate system.

この具体例では、モデル5及びロボット6のリンク列をm個に分割する箇所の距離に応じた目的関数を用いるものとする。すなわち、モデル5のリンク列においてあらかじめ決められた複数箇所が、m−1個であるとする。また、モデル5のリンク列において、そのm−1個の箇所は、リンク列の長さを1とした場合に、基端側からの長さがg1,g2,…,gm-1となる位置であるとする。例えば、モデル5のリンク列が均等にm個に分割される場合には、gi=i/mとなる。なお、g0=0,gm=1とする。また、giに対応する基準点の座標を、(ai,bi,ci)とする。また、mは2以上の整数である。 In this specific example, it is assumed that an objective function according to the distance of the location where the link string of the model 5 and the robot 6 is divided into m is used. That is, it is assumed that a plurality of predetermined locations in the link string of the model 5 are m−1. Further, in the link row of the model 5, the m-1 pieces of position is when the length of the link row and 1, g 1 is the length from the base end side, g 2, ..., g m-1 It is assumed that the position is For example, when the link string of the model 5 is equally divided into m, g i = i / m. Note that g 0 = 0 and g m = 1. Further, the coordinates of the reference point corresponding to g i are (a i , b i , c i ). Also, m is an integer of 2 or more.

また、モデル5のリンク列におけるm−1個の箇所に応じたロボット6のリンク列におけるm−1個の箇所も、リンク列の長さを1とした場合に、基端側からの長さがG1,G2,…,Gm-1となる位置であるとする。例えば、ロボット6のリンク列が均等にm個に分割される場合には、Gi=i/mとなる。なお、G0=0,Gm=1とする。また、Giに対応する基準点の座標を、(Ai,Bi,Ci)とする。また、前述のように、gi=Giであってもよく、または、そうでなくてもよい。また、g1〜gm-1やG1〜Gm-1は、記憶部12で記憶されていてもよい。 In addition, m-1 places in the link line of the robot 6 corresponding to m-1 places in the link line of the model 5 also have a length from the base end side when the length of the link line is 1. Is a position where G 1 , G 2 ,..., G m−1 . For example, when the link string of the robot 6 is equally divided into m, G i = i / m. Note that G 0 = 0 and G m = 1. Further, the coordinates of the reference point corresponding to G i, and (A i, B i, C i). Also, as noted above, g i = G i may or may not be. In addition, g 1 to g m-1 and G 1 to G m-1 may be stored in the storage unit 12.

特定部14は、記憶部12からg1〜gm-1を読み出し、それらを用いてモデル5のリンク列における複数箇所の座標値を特定する(ステップS104)。具体的には、

Figure 0006529039
となるgiが存在する場合に、特定部14は、そのiについて、(xj-1,yj-1,zj-1)と、(xj,yj,zj)とを両端とするリンクの長さを1としたときの(xj-1,yj-1,zj-1)からの長さが、
Figure 0006529039
である点を、i番目の基準点(ai,bi,ci)とする。そのように、上記式を満たすgiに応じた箇所(ai,bi,ci)を特定する処理を、j=1〜nについて行うことによって、モデル5のリンク列におけるあらかじめ決められた複数箇所のそれぞれの座標値を特定することができる。その特定した座標値(ai,bi,ci)は、図示しない記録媒体に蓄積されてもよい。なお、d0=0としている。 The specifying unit 14 reads g 1 to g m-1 from the storage unit 12 and uses them to specify coordinate values at a plurality of locations in the link string of the model 5 (step S104). In particular,
Figure 0006529039
When there exists g i which is, the identifying unit 14 sets both ends of (x j -1 , y j -1 , z j -1 ) and (x j , y j , z j ) for i. The length from (x j -1 , y j -1 , z j -1 ) when the link length is 1 is
Figure 0006529039
Let the point that is the i-th reference point (a i , b i , c i ). As described above, the process of specifying the portion (a i , b i , c i ) according to g i satisfying the above equation is performed for j = 1 to n, thereby determining in advance the link string of the model 5 Each coordinate value of multiple places can be specified. The specified coordinate values (a i , b i , c i ) may be stored in a recording medium (not shown). Note that d 0 = 0.

ここで、基準点(ai,bi,ci)に対応するロボット6のリンク列における基準点(Ai,Bi,Ci)を特定する方法について説明する。モデル5のリンク列の場合と同様に、

Figure 0006529039
となるGiが存在する場合に、そのiについて、(Xj-1,Yj-1,Zj-1)と、(Xj,Yj,Zj)とを両端とするリンクの長さを1としたときの(Xj-1,Yj-1,Zj-1)からの長さが、
Figure 0006529039
である点が、i番目の基準点(Ai,Bi,Ci)となる。そのように、上記式を満たすGiに応じた箇所(Ai,Bi,Ci)を特定する処理を、j=1〜Nについて行うことによって、ロボット6のリンク列におけるあらかじめ決められた複数箇所のそれぞれの座標値を特定することができる。その特定した座標値(Ai,Bi,Ci)は、図示しない記録媒体に蓄積されてもよい。なお、D0=0としている。 Here, a method of specifying the reference points (A i , B i , C i ) in the link row of the robot 6 corresponding to the reference points (a i , b i , c i ) will be described. As with the model 5 link string,
Figure 0006529039
If there exists G i , then for that i, the length of the link with (X j -1 , Y j -1 , Z j -1 ) and (X j , Y j , Z j ) at both ends The length from (X j -1 , Y j -1 , Z j -1 ) when
Figure 0006529039
Is the i-th reference point (A i , B i , C i ). As such, portions corresponding to the G i that satisfies the above formula (A i, B i, C i) a process of identifying, by performing the j = 1 to N, are predetermined in the link string of the robot 6 Each coordinate value of multiple places can be specified. The identified coordinate values (A i, B i, C i) can be stored in a recording medium (not shown). Note that D 0 = 0.

なお、ロボット6のリンク列においては、リンクの先端側の端点の位置を、そのリンクの基端側の端点の位置と、その基端側の端点における関節の角度とを用いて表すことができる。例えば、次式のようになる。なお、i=1〜Nであり、関数Fiは、関節Piの角度θ1 i,θ2 i,…,θki iを引数とし、Piに対するP(i+1)の相対的な位置を示す関数である。
(Xi,Yi,Zi)=(Xi-1,Yi-1,Zi-1)+Fi-1(θ1 i-1,θ2 i-1,…,θk(i-1) i-1
In the link array of the robot 6, the position of the end point on the distal end side of the link can be represented using the position of the end point on the proximal end side of the link and the angle of the joint at the end point on the proximal end side. . For example, it becomes like following Formula. It is to be i = 1 to N, the function F i, the angle theta 1 i of the joint Pi, theta 2 i, ..., a theta ki i as an argument, the function indicating the relative position of P (i + 1) with respect to Pi It is.
(X i , Y i , Z i ) = (X i-1 , Y i-1 , Z i-1 ) + F i-11 i-1 , θ 2 i-1 ,..., Θ k (i -1) i-1 )

したがって、各座標値(Aj,Bj,Cj)は、各関節Piの角度を用いて表すことができるため、例えば、次式のように表すことができる。なお、j=1〜m−1である。また、(Aj,Bj,Cj)の位置に応じて、関数Gjの引数は変わりうるが、次式では、引数が最も多い場合について記載している。この関係はロボット6のリンク列における複数の箇所が変更されない限り変わらないため、特定部14は、モデル5のリンク列における複数の箇所の座標値を特定する際に、ロボット6のリンク列における複数の箇所を示す次式を算出し、その算出した結果を記憶部12または図示しない記録媒体に蓄積してもよい。
(Aj,Bj,Cj)=Gj(θ1 0,θ2 0,…,θk0 0,θ1 1,θ2 1,…,θk1 1,…,θ1 N-1,θ2 N-1,…,θk(N-1) N-1
Therefore, each coordinate value (A j , B j , C j ) can be represented using the angle of each joint Pi, and thus can be represented, for example, by the following equation. Note that j = 1 to m-1. Further, although the arguments of the function G j may change according to the position of (A j , B j , C j ), the following formula describes the case where the number of arguments is the largest. Since this relationship does not change unless a plurality of points in the link string of the robot 6 is changed, when the identifying unit 14 identifies coordinate values of a plurality of points in the link string of the model 5, a plurality of symbols in the link string of the robot 6 The following equation indicating the location of the point may be calculated, and the calculated result may be stored in the storage unit 12 or a recording medium (not shown).
(A j, B j, C j) = G j (θ 1 0, θ 2 0, ..., θ k0 0, θ 1 1, θ 2 1, ..., θ k1 1, ..., θ 1 N-1, θ 2 N-1 , ..., θ k (N-1) N-1 )

その後、算出部15は、目的関数Eを最小にするロボットリンク列情報を算出する(ステップS105)。具体的には、次式の目的関数Eは、各関節の角度θ1 0,θ2 0,…,θk0 0,θ1 1,θ2 1,…,θk1 1,…,θ1 N-1,θ2 N-1,…,θk(N-1) N-1を引数とする関数となる。そのため、算出部15は、次式の目的関数Eが最小となる各関節の角度θ1 0,θ2 0,…,θk0 0,θ1 1,θ2 1,…,θk1 1,…,θ1 N-1,θ2 N-1,…,θk(N-1) N-1を算出し、その算出結果であるロボットリンク列情報をノイズ除去部16に渡す。

Figure 0006529039
Thereafter, the calculation unit 15 calculates robot link string information that minimizes the objective function E (step S105). Specifically, the objective function E of equation, the angle theta 1 0 of each joint, θ 2 0, ..., θ k0 0, θ 1 1, θ 2 1, ..., θ k1 1, ..., θ 1 N -1 , θ 2 N-1 ,..., Θ k (N-1) N-1 is a function having N-1 as arguments. Therefore, calculation unit 15, the objective function E angle theta 1 0 of each joint as a minimum the following equation, θ 2 0, ..., θ k0 0, θ 1 1, θ 2 1, ..., θ k1 1, ... , Θ 1 N−1 , θ 2 N−1 ,..., Θ k (N−1) N−1 is calculated, and the robot link string information that is the calculation result is passed to the noise removing unit 16.
Figure 0006529039

上記目的関数Eは、例えば図6において、基準点ps1と基準点PS1との距離の二乗、基準点ps2と基準点PS2との距離の二乗、基準点ps3と基準点PS3との距離の二乗、基準点ps4と基準点PS4との距離の二乗を足しあわせたものとなる。なお、リンク列の両端点も基準点である場合には、その距離も目的関数に含めるようにしてもよい。その場合には、上記目的関数Eの式において、総和をj=0からj=mまでにすればよいことになる。なお、(a0,b0,c0)=(x0,y0,z0)であり、(am,bm,cm)=(xn,yn,zn)であり、(A0,B0,C0)=(X0,Y0,Z0)であり、(Am,Bm,Cm)=(XN,YN,ZN)であるとする。図6においては、正規化後のリンク列5a,6aを示しているため、両リンク列5a,6aの長さは等しくなっており、また、基端側の端点p0,P0が一致している。そのように、リンク列の基端を一致させる場合には、j=0における基準点間の距離は0であるため、上記目的関数において、総和をj=1からj=mまでにしてもよい。 The objective function E is, for example, the square of the distance between the reference point ps1 and the reference point PS1, the square of the distance between the reference point ps2 and the reference point PS2, the square of the distance between the reference point ps3 and the reference point PS3 in FIG. The square of the distance between the reference point ps4 and the reference point PS4 is added. If both end points of the link string are also reference points, their distances may be included in the objective function. In that case, in the equation of the objective function E, the sum should be j = 0 to j = m. (A 0 , b 0 , c 0 ) = (x 0 , y 0 , z 0 ), and (a m , b m , c m ) = (x n , y n , z n ), It is assumed that (A 0 , B 0 , C 0 ) = (X 0 , Y 0 , Z 0 ) and (A m , B m , C m ) = (X N , Y N , Z N ). In FIG. 6, since the link trains 5a and 6a after normalization are shown, the lengths of both link trains 5a and 6a are equal, and the end points p0 and P0 on the proximal side coincide with each other. . As described above, when the base ends of the link strings are made to coincide, the distance between the reference points at j = 0 is 0, so in the above objective function, the sum may be j = 1 to j = m. .

なお、上記目的関数Eにおいて、(ai,bi,ci)は、特定部14によって特定された座標値であり、(Ai,Bi,Ci)は、各関節の角度θ1 0,θ2 0,…,θk0 0,θ1 1,θ2 1,…,θk1 1,…,θ1 N-1,θ2 N-1,…,θk(N-1) N-1で表される。したがって、その目的関数Eを最小にする角度θ1 0,θ2 0,…,θk0 0,θ1 1,θ2 1,…,θk1 1,…,θ1 N-1,θ2 N-1,…,θk(N-1) N-1を勾配法によって求める場合には、例えば、目的関数Eを角度θ1 0等で偏微分し、角度θ1 0等について目的関数Eが極小値となる位置をそれぞれ求めてもよい。 In the objective function E, (a i , b i , c i ) are coordinate values specified by the specifying unit 14, and (A i , B i , C i ) is an angle θ 1 of each joint. 0, θ 2 0, ..., θ k0 0, θ 1 1, θ 2 1, ..., θ k1 1, ..., θ 1 N-1, θ 2 N-1, ..., θ k (N-1) N It is represented by -1 . Therefore, the angle theta 1 0 for the objective function E to a minimum, θ 2 0, ..., θ k0 0, θ 1 1, θ 2 1, ..., θ k1 1, ..., θ 1 N-1, θ 2 N -1, ..., when determined by theta k (N-1) gradient (N-1), for example, by partially differentiating the objective function E by an angle theta 1 0 etc., for the angle theta 1 0 like the objective function E The position at which the local minimum value is obtained may be determined.

ノイズ除去部16は、算出部15から受け取ったロボットリンク列情報から高周波のノイズ成分を除去し、その除去した結果のロボットリンク列情報を出力部17に渡す(ステップS106)。なお、そのノイズの除去を移動平均処理によって行う場合には、ノイズ除去部16は、あらかじめ決められた個数の最新のロボットリンク列情報を一時的に記憶していてもよい。   The noise removing unit 16 removes high frequency noise components from the robot link string information received from the calculating unit 15, and passes the robot link string information as a result of the removal to the output unit 17 (step S106). When the noise removal is performed by the moving average process, the noise removing unit 16 may temporarily store a predetermined number of latest robot link string information.

出力部17は、ノイズ除去部16から受け取ったロボットリンク列情報をロボット6に出力する(ステップS107)。その結果、ロボット6は、リンク列の各関節が、ロボットリンク列情報に含まれる角度となるように各関節のモータ等を制御する。そのようにすることで、モデル5のリンク列の形状と、ロボット6のリンク列の形状とが似たものになる。また、そのような動作が繰り返されることによって、ロボット6がモデル5の動作をまねるように制御できるようになり、ロボット6をミラーロボットとして動作させることができるようになる。   The output unit 17 outputs the robot link string information received from the noise removing unit 16 to the robot 6 (step S107). As a result, the robot 6 controls the motor or the like of each joint so that each joint of the link array has an angle included in the robot link array information. By doing so, the shape of the link row of the model 5 and the shape of the link row of the robot 6 become similar. Also, by repeating such an operation, the robot 6 can be controlled to imitate the operation of the model 5, and the robot 6 can be operated as a mirror robot.

そのミラーロボットとしてのロボット6の動作の一例について具体的に説明する。図7で示されるように、モデル5が、腕に対応するリンク列5aを、下向きの位置5a−1から、側方の位置5a−2を経由して、上向きの位置5a−3にまで、矢印AR1のように動かしたとする。その一連の動作において、腕はねじられていないものとする。すなわち、関節p0,p1においては、図6の紙面に垂直な方向の軸を中心とする回転のみが行われたとする。一方、ロボット6の腕に対応するリンク列6aは、下向きの位置6a−1から腕をねじることなく上げることができるのは、側方の位置6a−2までであったとする。すると、ロボット6の腕をねじることなく側方の位置6a−2から上向きの位置6a−3までのマッピングを行うことができなくなる。そこで、モデル5のリンク列が側方の位置5a−2から上向きの位置5a−3にまで移動する際には、目的関数Eを最小にするため、算出部15は、関節P0において腕を180°ねじるようにロボットリンク列情報を算出することになる。したがって、目的関数Eを最小にするようにロボット6のリンク列6aを動作させる場合には、そのリンク列6aは、下向きの位置6a−1から側方の位置6a−2まで腕をねじることなく矢印AR2のように動き、その後、矢印AR3の方向に180°回転された後に、側方の位置6a−2から上向きの位置6a−3まで、矢印AR4のように動くことになる。その結果、上向きの位置5a−3,6a−3において、モデル5の手の平は外向きとなり、ロボット6の手の平は内向きとなる違いはあるが、両者の腕の形状を似たものとすることができる。   An example of the operation of the robot 6 as the mirror robot will be specifically described. As shown in FIG. 7, the model 5 moves the link row 5a corresponding to the arm from the downward position 5a-1 to the upward position 5a-3 via the lateral position 5a-2. Suppose that it moved like arrow AR1. In the series of movements, the arm is untwisted. That is, in the joints p0 and p1, it is assumed that only rotation about an axis perpendicular to the paper surface of FIG. 6 is performed. On the other hand, it is assumed that the link row 6a corresponding to the arm of the robot 6 can be lifted from the downward position 6a-1 without twisting the arm up to the lateral position 6a-2. Then, mapping from the lateral position 6a-2 to the upward position 6a-3 can not be performed without twisting the arm of the robot 6. Therefore, when the link row of the model 5 moves from the side position 5a-2 to the upward position 5a-3, the calculating unit 15 sets the arm 180 in the joint P0 to minimize the objective function E. The robot link string information is calculated to twist. Therefore, when operating the link row 6a of the robot 6 so as to minimize the objective function E, the link row 6a does not twist the arm from the downward position 6a-1 to the side position 6a-2 After moving as indicated by arrow AR2 and then rotating 180 ° in the direction of arrow AR3, it moves from side position 6a-2 to upward position 6a-3 as indicated by arrow AR4. As a result, at the upward positions 5a-3 and 6a-3, the palm of the hand of the model 5 is directed outward, and the palm of the hand of the robot 6 is directed inwardly, but both arms have similar shapes. Can.

なお、上述の説明において、写像元のモデル5のリンク列におけるリンク数が、ロボット6のリンク列におけるリンク数以上である場合には、リンク列における複数の箇所の個数や位置を適切に設定することによって、ロボット6のリンク列の形状が一意に決定されうる。一方、写像元のモデル5のリンク列におけるリンク数が、ロボット6のリンク列におけるリンク数未満である場合には、ロボット6のリンク列の形状が一意に決定されないこともある。ロボット6のリンク列の形状が一意に決定されないとは、目的関数Eを最小にする複数の異なるロボットリンク列情報を算出できることである。そのような場合には、算出部15は、例えば、ランダムにロボットリンク列情報を算出してもよく、または、ロボットリンク列情報を一意に決定するための制約条件を用いて、ロボットリンク列情報を算出してもよい。その制約条件は、例えば、直前のロボット6のリンク列からの変化が最も少なくなるようにすることであってもよい。その変化は、関節の角度の変化であってもよく、または、リンク列における特定の位置の変化であってもよい。その特定の位置は、関節であってもよく、先端であってもよく、その他の点であってもよい。また、それ以外の制約条件を用いて目的関数Eを小さくするためのロボットリンク列情報を算出するようにしてもよい。写像元のモデル5のリンク列におけるリンク数が、ロボット6のリンク列におけるリンク数以上である場合であっても、ロボット6のリンク列の形状が一意に決定されないときには、上述の説明と同様にしてロボットリンク列情報を算出してもよい。   In the above description, when the number of links in the link string of the model 5 of the mapping source is equal to or more than the number of links in the link string of the robot 6, the number and position of plural points in the link string are appropriately set. Thus, the shape of the link row of the robot 6 can be uniquely determined. On the other hand, when the number of links in the link string of the model 5 of the mapping source is less than the number of links in the link string of the robot 6, the shape of the link string of the robot 6 may not be determined uniquely. If the shape of the link string of the robot 6 is not uniquely determined, it is possible to calculate a plurality of different robot link string information that minimize the objective function E. In such a case, the calculation unit 15 may calculate robot link string information at random, for example, or may use robot constraint data to uniquely determine robot link string information. May be calculated. The constraint may be, for example, to minimize the change from the link row of the robot 6 immediately before. The change may be a change in the angle of the joint, or a change in a particular position in the link series. The particular position may be a joint, a tip, or some other point. Further, robot link string information for reducing the objective function E may be calculated using other constraint conditions. Even if the number of links in the link string of the model 5 of the mapping source is equal to or greater than the number of links in the link string of the robot 6, if the shape of the link string of the robot 6 is not uniquely determined, Robot link string information may be calculated.

以上のように、本実施の形態によるリンク列マッピング装置1によれば、モデル5のリンク列をロボット6のリンク列にマッピングするための変換式等を人手で作成しなくても、ロボット6のリンク列が、モデル5のリンク列と似た動作を行うように、モデル5のリンク列の形状をロボット6のリンク列にマッピングすることができる。そのため、その変換式を作成する労力が不要になるというメリットがある。また、そのような変換式を用いた場合には、モデル5が想定外の動きを行うことなどによって、ロボット6のリンク列への変換に失敗し、ロボット6の動きが途中で停止することもあるが、本実施の形態のようにマッピングを行うことによって、そのような事態を回避することができる。また、ロボット6のリンク数がモデル5のリンク数よりも少ない場合や、ロボット6の関節の可動域がモデル5の関節の可動域よりも狭い場合、すなわち、完全なミラーリングのためのマッピングを行うことができない場合であっても、ロボット6の動きをモデル5の動きに似せることができるようになる。また、ノイズ除去部16を備えることにより、ロボットリンク列情報における高周波ノイズを除去することができ、例えば、モデルリンク列情報に混入した高周波ノイズの影響を低減することができるようになる。   As described above, according to the link string mapping apparatus 1 according to the present embodiment, even if a conversion formula or the like for mapping the link string of the model 5 to the link string of the robot 6 is not manually created, The shape of the link string of the model 5 can be mapped to the link string of the robot 6 so that the link string performs an operation similar to that of the model 5 link string. Therefore, there is an advantage that the labor for creating the conversion formula becomes unnecessary. In addition, when such a conversion formula is used, conversion of the robot 6 to a link string may fail due to the model 5 performing an unexpected movement or the like, and the movement of the robot 6 may be stopped halfway. Such a situation can be avoided by performing the mapping as in the present embodiment. Also, if the number of links of the robot 6 is smaller than the number of links of the model 5 or if the range of motion of the joints of the robot 6 is narrower than the range of motion of the joints of the model 5, that is, mapping for complete mirroring is performed. Even if this can not be done, the motion of the robot 6 can be made to resemble the motion of the model 5. Further, by providing the noise removing unit 16, high frequency noise in the robot link string information can be removed, and for example, the influence of high frequency noise mixed in the model link string information can be reduced.

また従来、ヒューマノイドロボットのリンク数や関節の可動域に合うように、人間の動きがキャプチャーされることもあった。具体的には、ロボットの腕のリンク数が1個である場合には、人間の腕においても、1個のリンクに関する動きのみがキャプチャーされることがあった。その場合には、ヒューマノイドロボットの種類ごとに専用のモーションキャプチャを行うようにセッティングする必要があった。一方、本実施の形態によるリンク列マッピング装置1では、モデルリンク列情報からロボットリンク列情報へのマッピングを自動的に行うため、モーションキャプチャ装置2は、汎用のモーションキャプチャを行う装置であってもよい。したがって、専用のモーションキャプチャを行わなくてもよいというメリットもある。   Also, in the past, human movement was sometimes captured to match the number of links of the humanoid robot and the movement range of the joints. Specifically, when the number of links of the robot arm is one, only the motion related to one link may be captured even in the human arm. In that case, it was necessary to set so as to perform dedicated motion capture for each type of humanoid robot. On the other hand, in the link string mapping device 1 according to the present embodiment, since the mapping from model link string information to robot link string information is automatically performed, the motion capture device 2 is a device that performs general-purpose motion capture. Good. Therefore, there is an advantage that it is not necessary to perform dedicated motion capture.

なお、本実施の形態では、リンク列マッピング装置1がノイズ除去部16を備えている場合について説明したが、高周波のノイズ成分を除去しない場合には、リンク列マッピング装置1は、ノイズ除去部16を備えていなくてもよい。例えば、モデルリンク列情報に高周波のノイズ成分が含まれていないことが明らかな場合などには、リンク列マッピング装置1はノイズ除去部16を備えなくてもよい。   In the present embodiment, the link string mapping apparatus 1 includes the noise removing unit 16. However, when the high frequency noise component is not removed, the link string mapping apparatus 1 may use the noise removing unit 16. It does not have to be provided. For example, in the case where it is clear that the model link string information does not include high frequency noise components, the link string mapping device 1 may not include the noise removing unit 16.

また、本実施の形態では、正規化部13がモデル5のリンク列の基端と、ロボット6のリンク列の基端を座標系の原点にする場合について説明したが、そうでなくてもよい。両基端が原点になっていない状況で目的関数を用いたロボットリンク列情報の算出を行ってもよく、はじめから両基端が原点となるように各リンク列の座標系が設定されていてもよい。   In the present embodiment, the normalizing unit 13 sets the base end of the link row of the model 5 and the base end of the link row of the robot 6 as the origin of the coordinate system. . The robot link string information may be calculated using an objective function in a situation where both base ends are not at the origin, and the coordinate system of each link row is set so that both base ends are at the origin from the beginning. It is also good.

また、本実施の形態では、モデル5のリンク列の長さと、ロボット6のリンク列の長さとを正規化する場合について説明したが、そうでなくてもよい。例えば、両長さが一緒になるように設定されている場合、例えば、モデルリンク列情報におけるリンク列の長さと、ロボット6のリンク列の長さとが同じになるように決まっている場合などには、正規化の処理を行わなくてもよい。その場合には、リンク列マッピング装置1は、正規化部13を備えていなくてもよい。   Moreover, although the case where the length of the link row | line of the model 5 and the length of the link row | line of the robot 6 were normalized was demonstrated in this Embodiment, it may not be so. For example, when both lengths are set to be the same, for example, when the length of the link string in the model link string information and the length of the link string of the robot 6 are determined to be the same. Does not have to process normalization. In that case, the link string mapping device 1 may not have the normalization unit 13.

また、本実施の形態では、記憶部12に関節可動域情報が記憶されている場合について説明したが、そうでなくてもよい。例えば、関節の可動域に制限のない場合には、関節可動域情報が記憶部12で記憶されていなくてもよい。また、関節可動域情報が記憶部12において記憶されていない場合には、算出部15は、関節可動域情報に関する制約条件のない状況において、目的関数が小さくなるようにロボットリンク列情報を算出することになる。   Further, in the present embodiment, although the case where the joint movement range information is stored in the storage unit 12 has been described, it may not be. For example, in the case where the range of motion of the joint is not limited, the range of motion information of the joint may not be stored in the storage unit 12. In addition, when the joint movement range information is not stored in the storage unit 12, the calculation unit 15 calculates the robot link string information so that the objective function becomes smaller in the situation without the constraint condition on the joint movement range information. It will be.

また、本実施の形態において、上述のように、モデルリンク列情報を用いてロボットリンク列情報を算出し、そのロボットリンク列情報に応じた出力を行う一連の処理は、リアルタイムで行われてもよく、または、そうでなくてもよい。   Also, in the present embodiment, as described above, even if the series of processes for calculating robot link string information using model link string information and outputting according to the robot link string information is performed in real time It may or may not be good.

また、本実施の形態では、モデル5やロボット6のリンク列に分岐のない場合について説明したが、リンク列に分岐が含まれていてもよい。モデル5やロボット6のリンク列に分岐が含まれる場合には、例えば、分岐点において、複数のリンク列に分割し、分岐のない各リンク列について上述の処理を行ってもよく、または、分岐を有するリンク列に対して、上述の処理を行ってもよい。   Moreover, although the case where there is no branch in the link string of the model 5 or the robot 6 has been described in the present embodiment, the link string may include a branch. When the link train of the model 5 or the robot 6 includes a branch, for example, the branch point may be divided into a plurality of link trains, and the above-described processing may be performed for each link train without the branch, or The above-described process may be performed on a link string having

また、本実施の形態では、ロボット6をミラーロボットとして動作させるためのマッピングを行う場合について主に説明したが、そうでなくてもよい。例えば、モデル5の腕のリンク列を、ロボット6の足のリンク列にマッピングし、モデル5の足のリンク列を、ロボット6の腕のリンク列にマッピングするようにしてもよい。また、人間であるモデル5の腕のリンク列を、蛇型のロボット6の頭から尾までのリンク列にマッピングしてもよい。   Moreover, although the case where the mapping for operating the robot 6 as a mirror robot was mainly performed was demonstrated in this Embodiment, it may not be so. For example, the link train of arms of model 5 may be mapped to the link train of legs of robot 6, and the link train of legs of model 5 may be mapped to the link train of arms of robot 6. Also, the link row of the arm of the model 5 that is a human may be mapped to the link row from the head to the tail of the snake-like robot 6.

なお、本実施の形態では、モデルリンク列情報がモーションキャプチャによって取得されたものである場合について主に説明したが、そうでなくてもよい。モデルリンク列情報は、例えば、手作業やコンピュータなどによって作成された情報であってもよい。その場合には、例えば、3DCG(3次元コンピュータグラフィックス)によってモデルリンク列情報が作成されてもよい。そのように、3DCG等によって作成されたモデルリンク列情報が受付部11で受け付けられる場合には、あるリンク列についてモデルリンク列情報を作成すると、任意のリンク数のロボットを動作させることができるようになるというメリットがある。   In the present embodiment, the case where model link string information is obtained by motion capture has been mainly described, but this may not be the case. The model link string information may be, for example, information created by a manual operation or a computer. In that case, model link string information may be created by 3DCG (three-dimensional computer graphics), for example. As described above, when model link string information created by 3DCG or the like is accepted by the reception unit 11, if model link string information is created for a certain link string, a robot with an arbitrary number of links can be operated It has the merit of becoming

また、本実施の形態において、算出部15が最適化において用いる目的関数は、重み付けられた各距離に応じたものであってもよい。すなわち、目的関数に含まれる、モデル5のリンク列における複数の基準点と、その複数の基準点にそれぞれ対応するロボット6のリンク列における複数の基準点との各距離に重みが係数として掛けられていてもよい。具体的には、上述の具体例で用いた目的関数Eを次式のように変更してもよい。

Figure 0006529039
ここで、Wjは重みであり、例えば、記憶部12で記憶されていてもよい。その重みWjは、少なくとも1個の値が異なっているものとする。そうでなければ、重みを設定する必要がないからである。また、その重みWjは、ユーザ等が適宜、変更できるようになっていてもよい。そのような場合には、例えば、ユーザが、距離が近くなって欲しい箇所の重みを、他の重みと比較して大きい値に設定することによって、その距離が近くなるようにロボットリンク列情報が算出されるように設定することができる。例えば、特定部14が特定する複数箇所に、モデル5のリンク列の先端が含まれており、モデル5のリンク列の先端である特定された箇所に対応するロボット6のリンク列における箇所が、そのロボット6のリンク列の先端である場合に、そのモデル5及びロボット6の各リンク列の先端の距離の重みを、他の距離の重みよりも大きく設定することにより、モデル5のリンク列の先端と、ロボット6のリンク列の先端とが近くなるようにロボットリンク列情報が算出されるようにすることができる。具体的には、モデル5及びロボット6の各リンク列の先端の距離の重みを「3」に設定し、他の重みを「1」に設定してもよい。モデル5のリンク列の先端やロボット6のリンク列の先端は、通常、注目される位置であるため、両者が近似した位置関係になることによって、ロボット6の動きがモデル5の動きにより近似したものとなる。また、重みを用いることによってモデル5及びロボット6の各リンク列の所望の位置(例えば、各リンク列の先端の位置)を近づけることができるが、厳密に一致させるのではないため、例えば、関節の可動域等の原因により、所望の位置を一致させると両リンク列の類似性が損なわれる場合には、所望の位置を一致させるよりも、両リンク列の類似性が保たれることが優先されるようになる。その程度については、重みの調整によって設定することができる。 Further, in the present embodiment, the objective function used by the calculation unit 15 in optimization may be one corresponding to each weighted distance. That is, weights are multiplied as coefficients by the distances between the plurality of reference points in the link string of the model 5 and the plurality of reference points in the link string of the robot 6 respectively corresponding to the plurality of reference points included in the objective function It may be Specifically, the objective function E used in the above-mentioned specific example may be changed to the following equation.
Figure 0006529039
Here, W j is a weight, and may be stored in, for example, the storage unit 12. The weights W j are different in at least one value. Otherwise, there is no need to set weights. In addition, the weight W j may be changed appropriately by the user or the like. In such a case, for example, by setting the weight of the portion where the user wants the distance to be close to a large value as compared with other weights, the robot link string information is set so that the distance becomes close. It can be set to be calculated. For example, the tip of the link row of the model 5 is included in a plurality of locations specified by the identifying unit 14, and the location in the link row of the robot 6 corresponding to the identified location that is the tip of the link row of the model 5 is In the case of the tip of the link row of the robot 6, by setting the weight of the distance of the tip of each link row of the model 5 and the robot 6 larger than the weight of the other distances, The robot link string information can be calculated so that the tip and the tip of the link string of the robot 6 are close to each other. Specifically, the weight of the distance of the tip of each link row of the model 5 and the robot 6 may be set to “3”, and the other weight may be set to “1”. Since the tip of the link row of the model 5 and the tip of the link row of the robot 6 are usually at a position of interest, the motion of the robot 6 is approximated by the motion of the model 5 by becoming a positional relationship approximating both It becomes a thing. In addition, although it is possible to bring the desired position of each link row of the model 5 and the robot 6 (for example, the position of the tip of each link row) closer to each other by using the weights, they are not strictly matched. If matching the desired position results in loss of similarity between the two link strings due to reasons such as range of motion, priority is given to maintaining the similarity of both link strings rather than matching the desired positions. Will be The degree can be set by adjusting the weight.

また、本実施の形態において、リアルタイムでリンク列のマッピングが行われる場合に、受け付けられた情報や出力される情報に関する予測を行い、その予測に応じた情報が出力されるようにしてもよい。予測とは、少し先の時間(例えば、0.2秒や0.5秒、1秒程度など)の先の情報を予測することである。受付部11によって受け付けられたモデルリンク列情報に応じてロボット6を動作させた場合には、例えば、モーションキャプチャ装置2における処理時間、モーションキャプチャ装置2からリンク列マッピング装置1への送信の時間、リンク列マッピング装置1における処理時間、リンク列マッピング装置1からロボット6への送信の時間、ロボット6における処理時間だけ、ロボット6の動作がモデル5の動作に対して遅れることになる。一方、モデルリンク列情報やロボットリンク列情報に関する予測を行い、その予測に応じた出力がなされるようにすることで、モデル5の動作とロボット6の動作とを一致させることができるようになりうる。そのため、リンク列マッピング装置1は、図8A〜図8Cで示されるように、予測部21a〜21cを備えていてもよい。なお、予測部21a〜21cを特に区別しない場合には、予測部21と記載することにする。予測部21は、モデルリンク列情報またはロボットリンク列情報に関する予測を行う。モデルリンク列情報に関する予測は、モデルリンク列情報を予測することであってもよい。また、ロボットリンク列情報に関する予測は、ロボットリンク列情報を予測することであってもよく、または、ロボットリンク列情報に応じたロボット6のリンク列の各関節の角度に関する情報を予測することであってもよい。出力部17は、予測部21による予測結果に応じて、予測されたロボット6のリンク列の各関節の角度に関する情報を出力する。例えば、モデルリンク列情報について予測が行われた場合には、その予測結果に応じて算出されたロボットリンク列情報等も予測されたものとなるため、結果として、出力部17が出力する情報も、予測されたものとなる。   Further, in the present embodiment, when mapping of a link string is performed in real time, prediction regarding received information and information to be output may be performed, and information according to the prediction may be output. The prediction is to predict information ahead of time (for example, 0.2 seconds, 0.5 seconds, 1 second, etc.). When the robot 6 is operated according to the model link sequence information accepted by the acceptance unit 11, for example, the processing time in the motion capture device 2, the time of transmission from the motion capture device 2 to the link sequence mapping device 1, The operation of the robot 6 is delayed with respect to the operation of the model 5 by the processing time in the link string mapping device 1, the transmission time from the link string mapping device 1 to the robot 6, and the processing time in the robot 6. On the other hand, by predicting model link string information and robot link string information and outputting according to the prediction, the operation of model 5 and the operation of robot 6 can be matched. sell. Therefore, the link string mapping device 1 may include prediction units 21a to 21c as illustrated in FIGS. 8A to 8C. When the prediction units 21 a to 21 c are not particularly distinguished, they are referred to as the prediction unit 21. The prediction unit 21 predicts model link string information or robot link string information. The prediction related to model link string information may be prediction of model link string information. Further, the prediction regarding the robot link string information may be prediction of the robot link string information, or by predicting information about the angle of each joint of the link string of the robot 6 according to the robot link string information It may be. The output unit 17 outputs information on the predicted angle of each joint of the link row of the robot 6 according to the prediction result by the prediction unit 21. For example, when prediction is performed for model link string information, robot link string information and the like calculated according to the prediction result are also predicted, and as a result, the information output by the output unit 17 is also , As expected.

ここで、予測部21による予測の方法について、簡単に説明する。予測部21は、外挿によって予測を行ってもよい。すなわち、予測部21は、最新の所定期間の予測対象情報を用いて、その所定期間の直後の情報を外挿によって予測してもよい。その場合には、外挿の結果が予測結果となる。具体的には、予測部21は、最新の連続した所定個数の角度や位置など(例えば、最新の200msごとの7個の角度や位置など)を用いて、200ms後や400ms後の角度や位置を外挿してもよい。また、予測部21は、パターンマッチングによって予測を行ってもよい。すなわち、予測部21は、予測対象情報の過去の履歴を図示しない記録媒体で保持しておき、その保持している履歴において、最新の所定期間の予測対象情報にマッチングする箇所を特定し、そのマッチングする箇所の直後の情報を読み出すことによって予測してもよい。その場合には、読み出した結果が予測結果となる。また、その保持される履歴は、時系列に沿ったものであることが好適である。具体的には、予測部21は、最新の連続した所定個数の角度や位置などの時間変化と類似度が高い履歴の箇所を特定し、その特定した箇所の直後の角度や位置などを読み出してもよい。なお、類似度が高いとは、類似度があらかじめ決められた閾値より高いことであってもよい。また、予測部21は、機械学習によって予測を行ってもよい。すなわち、予測部21は、所定期間の予測対象情報を入力とし、その所定期間の直後の情報を出力とする機械学習を、予測対象情報の過去の履歴を用いてあらかじめ実行しておく。そして、その機械学習結果を用いて、予測部21は、最新の所定期間の予測対象情報の入力に対して、その所定期間の直後の情報を出力することによって予測してもよい。その場合には、出力された情報が予測結果となる。なお、予測対象情報は、例えば、モデルリンク列情報であってもよく、ロボットリンク列情報であってもよく、または、ロボットリンク列情報に応じたロボット6のリンク列の各関節の角度に関する情報であってもよい。また、所定期間の直後とは、例えば、0.5秒後であってもよく、1秒後であってもよく、その他の時間の後であってもよい。この時間は、例えば、モデル5の動作に対するロボット6の動作の遅延時間に設定されてもよく、その他の時間に設定されてもよい。また、パターンマッチングや機械学習等によって予測を行う場合には、あるリンク列の複数の情報の集合、例えば、あるリンク列の複数の関節の各角度の集合について、パターンマッチングや機械学習等を行ってもよい。また、予測部21は、複数の予測方法を組み合わせて用いてもよい。例えば、予測部21は、パターンマッチングによる予測を行うことができる場合には、パターンマッチングによる予測を行い、パターンマッチングによる予測を行うことができない場合には、外挿による予測を行ってもよい。パターンマッチングによる予測を行うことができない場合とは、例えば、最新の連続した所定個数の角度や位置などの時間変化と類似度が高い履歴の箇所が存在しない場合であってもよい。また、予測部21は、上述した以外の方法によって予測を行ってもよい。   Here, the method of prediction by the prediction unit 21 will be briefly described. The prediction unit 21 may perform prediction by extrapolation. That is, the prediction unit 21 may predict the information immediately after the predetermined period by extrapolation using the latest prediction target information of the predetermined period. In that case, the extrapolation result is the prediction result. Specifically, the prediction unit 21 uses angles and positions after 200 ms or 400 ms using the latest consecutive predetermined number of angles, positions, etc. (eg, seven angles, positions, etc. every 200 ms latest). May be extrapolated. In addition, the prediction unit 21 may perform prediction by pattern matching. That is, the prediction unit 21 holds the past history of the prediction target information in a recording medium (not shown), and identifies, in the held history, a portion matching the prediction target information of the latest predetermined period, and It may be predicted by reading out the information immediately after the matching point. In that case, the read result is the prediction result. Further, it is preferable that the history held is in time series. Specifically, the prediction unit 21 identifies the location of the history having a high degree of similarity with the latest continuous predetermined number of angles and positions, and reads the angle and position immediately after the identified location, etc. It is also good. Note that having a high degree of similarity may mean that the degree of similarity is higher than a predetermined threshold. In addition, the prediction unit 21 may perform prediction by machine learning. That is, the prediction unit 21 performs machine learning, in which prediction target information of a predetermined period is input and information immediately after the predetermined period is output, using a past history of the prediction target information. Then, using the machine learning result, the prediction unit 21 may perform prediction by outputting information immediately after the predetermined period with respect to the input of prediction target information of the latest predetermined period. In that case, the output information is the prediction result. The prediction target information may be, for example, model link string information, robot link string information, or information on the angle of each joint of the link string of the robot 6 according to the robot link string information It may be Further, immediately after the predetermined period may be, for example, after 0.5 seconds, may be after 1 second, or may be after another time. This time may be set to, for example, the delay time of the motion of the robot 6 with respect to the motion of the model 5 or may be set to another time. When prediction is performed by pattern matching, machine learning, etc., pattern matching, machine learning, etc. is performed for a set of information of a certain link sequence, for example, a set of angles of a plurality of joints of a certain link sequence. May be In addition, the prediction unit 21 may use a plurality of prediction methods in combination. For example, when the prediction by pattern matching can be performed, the prediction unit 21 may perform prediction by pattern matching, and when prediction by pattern matching can not be performed, prediction by extrapolation may be performed. The case where prediction by pattern matching can not be performed may be, for example, a case where there is no history location having high similarity with time changes such as the latest consecutive predetermined number of angles and positions. In addition, the prediction unit 21 may perform prediction by a method other than that described above.

次に、図8Aを用いて、リンク列マッピング装置1が予測部21aを備えている場合について説明する。この場合には、予測部21aは、受付部11によって受け付けられたモデルリンク列情報を用いて、モデルリンク列情報の予測を行う。そして、受付部11によって受け付けられたモデルリンク列情報に代えて、予測部21aによって予測されたモデルリンク列情報が用いられることになる。例えば、特定部14は、予測部21aによって予測されたモデルリンク列情報を用いて、複数箇所の座標値を特定してもよい。この場合には、そのようにして予測されたモデルリンク列情報が用いられるため、出力対象の情報も、間接的に予測されたものとなる。したがって、出力部17は、その予測結果に応じて、予測されたロボット6のリンク列の各関節の角度に関する情報を出力することになる。   Next, a case where the link string mapping device 1 includes the prediction unit 21a will be described using FIG. 8A. In this case, the prediction unit 21a predicts model link sequence information using the model link sequence information accepted by the acceptance unit 11. Then, instead of the model link string information received by the receiving unit 11, the model link string information predicted by the prediction unit 21a is used. For example, the specification unit 14 may specify coordinate values at a plurality of locations using the model link string information predicted by the prediction unit 21a. In this case, since the model link string information thus predicted is used, the output target information is also indirectly predicted. Therefore, the output unit 17 outputs information related to the predicted angle of each joint of the link row of the robot 6 according to the prediction result.

次に、図8Bを用いて、リンク列マッピング装置1が予測部21bを備えている場合について説明する。この場合には、予測部21bは、算出部15によって算出されたロボットリンク列情報を用いて、ロボットリンク列情報の予測を行う。そして、算出部15によって算出されたロボットリンク列情報に代えて、予測部21bによって予測されたロボットリンク列情報が用いられることになる。なお、図8Bでは、予測部21bが、ノイズの除去が行われる前のロボットリンク列情報について予測を行う場合について示しているが、予測部21bは、ノイズの除去の行われた後のロボットリンク列情報について予測を行ってもよい。そのようにして予測されたロボットリンク列情報が用いられるため、出力対象の情報が、そのロボットリンク列情報そのものである場合には、予測された情報が出力されることになり、出力対象の情報が、そのロボットリンク列情報から生成されたものである場合には、間接的に予測された情報が出力されることになる。したがって、出力部17は、その予測結果に応じて、予測されたロボット6のリンク列の各関節の角度に関する情報を出力することになる。   Next, the case where the link string mapping device 1 includes the prediction unit 21b will be described using FIG. 8B. In this case, the prediction unit 21 b predicts robot link sequence information using the robot link sequence information calculated by the calculation unit 15. Then, instead of the robot link string information calculated by the calculating unit 15, the robot link string information predicted by the predicting unit 21b is used. Although FIG. 8B shows the case where the prediction unit 21b predicts robot link string information before noise removal is performed, the robot link after the noise reduction is performed is illustrated. The prediction may be performed on column information. Since the robot link string information predicted in such a manner is used, if the information to be output is the robot link string information itself, the predicted information is to be output, and the information to be output is output If is generated from the robot link string information, indirectly predicted information will be output. Therefore, the output unit 17 outputs information related to the predicted angle of each joint of the link row of the robot 6 according to the prediction result.

次に、図8Cを用いて、リンク列マッピング装置1が予測部21cを備えている場合について説明する。この場合には、予測部21cは、算出部15によって算出されたロボットリンク列情報に応じたロボット6のリンク列の各関節の角度に関する情報を用いて、その各関節の角度に関する情報の予測を行う。そして、出力部17は、予測部21cによって予測されたロボット6のリンク列の各関節の角度に関する情報を出力する。この場合には、出力部17は、その予測結果に応じて、予測結果そのものである、予測されたロボット6のリンク列の各関節の角度に関する情報を出力することになる。   Next, a case where the link string mapping device 1 includes the prediction unit 21c will be described using FIG. 8C. In this case, using the information on the angles of the joints of the link string of the robot 6 according to the robot link string information calculated by the calculating unit 15, the prediction unit 21c predicts the information on the angles of the joints. Do. Then, the output unit 17 outputs information on the angle of each joint of the link row of the robot 6 predicted by the prediction unit 21c. In this case, the output unit 17 outputs information on the angle of each joint of the link row of the predicted robot 6, which is the prediction result itself, according to the prediction result.

また、モデルリンク列情報やロボットリンク列情報に関する予測を行う場合に、予測部21は、例えば、受付部11によって受け付けられたモデルリンク列情報と異なるモデルリンク列情報について予測を行ってもよく、算出部15によって算出されたロボットリンク列情報と異なるロボットリンク列情報について予測を行ってもよい。具体的には、受付部11によって受け付けられたモデルリンク列情報が各リンクの両端の位置を示す情報である場合に、予測部21は、そのモデルリンク列情報に応じて算出された、リンク列の関節の角度を示すモデルリンク列情報について予測を行ってもよい。そのモデルリンク列情報の変換は、例えば、予測部21によって行われてもよく、その他の構成要素によって行われてもよい。   In addition, when prediction is performed on model link string information or robot link string information, the prediction unit 21 may perform prediction on model link string information different from the model link string information received by the receiving unit 11, for example. The prediction may be performed on robot link string information different from the robot link string information calculated by the calculation unit 15. Specifically, when the model link string information accepted by the accepting unit 11 is information indicating the positions of both ends of each link, the prediction unit 21 calculates a link string calculated according to the model link string information. The prediction may be performed on model link string information indicating the angle of the joint of The conversion of the model link string information may be performed by, for example, the prediction unit 21 or may be performed by another component.

また、上記実施の形態において、各処理または各機能は、単一の装置または単一のシステムによって集中処理されることによって実現されてもよく、または、複数の装置または複数のシステムによって分散処理されることによって実現されてもよい。   Also, in the above embodiment, each processing or each function may be realized by centralized processing by a single device or a single system, or distributed processing by a plurality of devices or a plurality of systems. It may be realized by

また、上記実施の形態において、各構成要素間で行われる情報の受け渡しは、例えば、その情報の受け渡しを行う2個の構成要素が物理的に異なるものである場合には、一方の構成要素による情報の出力と、他方の構成要素による情報の受け付けとによって行われてもよく、または、その情報の受け渡しを行う2個の構成要素が物理的に同じものである場合には、一方の構成要素に対応する処理のフェーズから、他方の構成要素に対応する処理のフェーズに移ることによって行われてもよい。   Further, in the above embodiment, the transfer of information performed between the components is performed by, for example, one of the components if the two components performing the transfer of information are physically different. It may be performed by the output of the information and the reception of the information by the other component, or if the two components that exchange the information are physically the same, one of the components It may be performed by moving from the phase of processing corresponding to to the phase of processing corresponding to the other component.

また、上記実施の形態において、各構成要素が実行する処理に関係する情報、例えば、各構成要素が受け付けたり、取得したり、選択したり、生成したり、算出したり、送信したり、受信したりした情報や、各構成要素が処理で用いる閾値や数式、アドレス等の情報等は、上記説明で明記していなくても、図示しない記録媒体において、一時的に、または長期にわたって保持されていてもよい。また、その図示しない記録媒体への情報の蓄積を、各構成要素、または、図示しない蓄積部が行ってもよい。また、その図示しない記録媒体からの情報の読み出しを、各構成要素、または、図示しない読み出し部が行ってもよい。   Further, in the above embodiment, information related to processing executed by each component, for example, each component receives, acquires, selects, generates, calculates, transmits, receives Even if information such as threshold values, formulas, addresses, etc. used in processing by each component is not specified in the above description, it is held temporarily or for a long time in a recording medium (not shown). May be Further, each component or a storage unit (not shown) may store information in the recording medium (not shown). Each component or a reading unit (not shown) may read information from the recording medium (not shown).

また、上記実施の形態において、各構成要素等で用いられる情報、例えば、各構成要素が処理で用いる閾値やアドレス、各種の設定値等の情報がユーザによって変更されてもよい場合には、上記説明で明記していなくても、ユーザが適宜、それらの情報を変更できるようにしてもよく、または、そうでなくてもよい。それらの情報をユーザが変更可能な場合には、その変更は、例えば、ユーザからの変更指示を受け付ける図示しない受付部と、その変更指示に応じて情報を変更する図示しない変更部とによって実現されてもよい。その図示しない受付部による変更指示の受け付けは、例えば、入力デバイスからの受け付けでもよく、通信回線を介して送信された情報の受信でもよく、所定の記録媒体から読み出された情報の受け付けでもよい。   Further, in the above embodiment, when the information used in each component or the like, for example, information such as a threshold or an address used in processing by each component or various setting values may be changed by the user, Although not explicitly stated in the description, the user may or may not be able to change the information as appropriate. When the user can change such information, the change is realized, for example, by a receiving unit (not shown) that receives a change instruction from the user and a change unit (not shown) that changes the information according to the change instruction. May be The acceptance of the change instruction by the acceptance unit (not shown) may be, for example, acceptance from an input device, reception of information transmitted via a communication line, or acceptance of information read from a predetermined recording medium .

また、上記実施の形態において、リンク列マッピング装置1に含まれる2以上の構成要素が通信デバイスや入力デバイス等を有する場合に、2以上の構成要素が物理的に単一のデバイスを有してもよく、または、別々のデバイスを有してもよい。   In the above embodiment, when two or more components included in the link string mapping apparatus 1 have a communication device, an input device, etc., the two or more components have a physically single device. It may also have separate devices.

また、上記実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、または、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。その実行時に、プログラム実行部は、記憶部や記録媒体にアクセスしながらプログラムを実行してもよい。なお、上記実施の形態におけるリンク列マッピング装置1を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、モデルのリンク列に含まれる各リンクの位置に関する情報であるモデルリンク列情報を受け付ける受付部、受付部によって受け付けられたモデルリンク列情報を用いて、モデルのリンク列におけるあらかじめ決められた複数箇所の座標値を特定する特定部、特定部によって特定された複数箇所の座標値と、複数箇所にそれぞれ対応するロボットのリンク列における複数箇所の座標値との距離に応じた目的関数が小さくなるように、ロボットのリンク列に含まれる各リンクの位置に関する情報であるロボットリンク列情報を算出する算出部、算出部によって算出されたロボットリンク列情報に応じたロボットのリンク列の各関節の角度に関する情報を出力する出力部として機能させるためのプログラムである。   Further, in the above embodiment, each component may be configured by dedicated hardware, or a component that can be realized by software may be realized by executing a program. For example, each component can be realized by a program execution unit such as a CPU reading and executing a software program recorded on a recording medium such as a hard disk or a semiconductor memory. At the time of the execution, the program execution unit may execute the program while accessing the storage unit or the recording medium. The software for realizing the link string mapping apparatus 1 in the above embodiment is the following program. That is, this program uses the computer to receive model link string information, which is information on the position of each link included in the model link string, and the model link string using the model link string information received by the reception unit. The distance between the coordinate value of a plurality of points specified by a specifying unit that specifies the coordinate values of a plurality of points determined in advance in the column, and the coordinate values of a plurality of points in the link row of the robot corresponding to the plurality of places A calculation unit that calculates robot link string information that is information related to the position of each link included in the link string of the robot so that the corresponding objective function becomes smaller, and a robot that corresponds to the robot link string information calculated by the calculation unit Program to function as an output unit that outputs information about the angle of each joint in a link row It is a non.

なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を取得する取得部や、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には少なくとも含まれない。   In the above program, the function realized by the program does not include the function that can be realized only by hardware. For example, functions that can be realized only by hardware such as an acquisition unit that acquires information, an output unit that outputs information, etc., such as a modem or an interface card are not at least included in the functions that the program realizes.

また、このプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体(例えば、CD−ROMなどの光ディスクや磁気ディスク、半導体メモリなど)に記録されたプログラムが読み出されることによって実行されてもよい。また、このプログラムは、プログラムプロダクトを構成するプログラムとして用いられてもよい。   In addition, this program may be executed by being downloaded from a server or the like, and the program recorded on a predetermined recording medium (for example, an optical disk such as a CD-ROM, a magnetic disk, a semiconductor memory, etc.) is read. May be performed by Also, this program may be used as a program that constitutes a program product.

また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、または分散処理を行ってもよい。   Moreover, the computer that executes this program may be singular or plural. That is, centralized processing may be performed, or distributed processing may be performed.

図8は、上記プログラムを実行して、上記実施の形態によるリンク列マッピング装置1を実現するコンピュータの外観の一例を示す模式図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。   FIG. 8 is a schematic view showing an example of the external appearance of a computer that executes the program and implements the link string mapping device 1 according to the above embodiment. The above embodiments can be realized by computer hardware and a computer program executed thereon.

図8において、コンピュータシステム900は、CD−ROMドライブ905を含むコンピュータ901と、キーボード902と、マウス903と、モニタ904とを備える。   In FIG. 8, a computer system 900 includes a computer 901 including a CD-ROM drive 905, a keyboard 902, a mouse 903 and a monitor 904.

図9は、コンピュータシステム900の内部構成を示す図である。図9において、コンピュータ901は、CD−ROMドライブ905に加えて、MPU(Micro Processing Unit)911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM913と、アプリケーションプログラム、システムプログラム、及びデータを記憶するハードディスク914と、MPU911、ROM912等を相互に接続するバス915とを備える。なお、コンピュータ901は、LANやWAN等への接続を提供する図示しないネットワークカードを含んでいてもよい。   FIG. 9 is a diagram showing an internal configuration of computer system 900. Referring to FIG. In FIG. 9, a computer 901 is connected to an MPU (Micro Processing Unit) 911, a ROM 912 for storing a program such as a bootup program, and the MPU 911 in addition to a CD-ROM drive 905, and instructions of application programs A RAM 913 for temporarily storing and providing a temporary storage space, a hard disk 914 for storing an application program, a system program, and data, and a bus 915 interconnecting the MPU 911, the ROM 912, and the like are provided. The computer 901 may include a network card (not shown) that provides connection to a LAN, a WAN, or the like.

コンピュータシステム900に、上記実施の形態によるリンク列マッピング装置1の機能を実行させるプログラムは、CD−ROM921に記憶されて、CD−ROMドライブ905に挿入され、ハードディスク914に転送されてもよい。これに代えて、そのプログラムは、図示しないネットワークを介してコンピュータ901に送信され、ハードディスク914に記憶されてもよい。プログラムは実行の際にRAM913にロードされる。なお、プログラムは、CD−ROM921、またはネットワークから直接、ロードされてもよい。また、CD−ROM921に代えて他の記録媒体(例えば、DVD等)を介して、プログラムがコンピュータシステム900に読み込まれてもよい。   The program that causes the computer system 900 to execute the function of the link string mapping device 1 according to the above embodiment may be stored in the CD-ROM 921, inserted into the CD-ROM drive 905, and transferred to the hard disk 914. Alternatively, the program may be transmitted to the computer 901 via a network (not shown) and stored in the hard disk 914. The program is loaded into the RAM 913 upon execution. The program may be loaded directly from the CD-ROM 921 or from the network. Also, the program may be read into the computer system 900 via another recording medium (for example, a DVD) instead of the CD-ROM 921.

プログラムは、コンピュータ901に、上記実施の形態によるリンク列マッピング装置1の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能やモジュールを呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。   The program may not necessarily include the operating system (OS) that causes the computer 901 to execute the function of the link string mapping apparatus 1 according to the above embodiment, a third party program, or the like. The program may include only portions of instructions that invoke appropriate functions or modules in a controlled manner to achieve a desired result. It is well known how computer system 900 operates, and detailed description is omitted.

また、本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。   Further, it is needless to say that the present invention is not limited to the above embodiments, and various modifications are possible, which are also included in the scope of the present invention.

以上より、本発明によるリンク列マッピング装置等によれば、モデルのリンク列を自動的に任意のロボットのリンク列にマッピングできるという効果が得られ、例えば、ヒューマノイドロボットなどをミラーロボットとして動作させるための装置等として有用である。   As described above, according to the link string mapping apparatus and the like according to the present invention, an effect of automatically mapping the link string of the model to the link string of any robot is obtained. For example, to operate a humanoid robot or the like as a mirror robot It is useful as an apparatus etc.

1 リンク列マッピング装置
2 モーションキャプチャ装置
11 受付部
12 記憶部
13 正規化部
14 特定部
15 算出部
16 ノイズ除去部
17 出力部
21、21a、21b、21c 予測部
DESCRIPTION OF SYMBOLS 1 link row | line | column mapping apparatus 2 motion capture apparatus 11 reception part 12 memory | storage part 13 normalization part 14 identification part 15 calculation part 16 noise removal part 17 output part 21, 21a, 21b, 21c estimation part

Claims (11)

モデルのリンク列に含まれる各リンクの位置に関する情報であるモデルリンク列情報を受け付ける受付部と、
モデルリンク列情報を用いて、前記モデルのリンク列におけるあらかじめ決められた複数箇所の座標値を特定する特定部と、
前記特定部によって特定された複数箇所と、当該複数箇所にそれぞれ対応するロボットのリンク列における複数箇所との各距離に応じた目的関数が小さくなるように、前記ロボットのリンク列に含まれる各リンクの位置に関する情報であるロボットリンク列情報を算出する算出部と、
ロボットリンク列情報に応じた前記ロボットのリンク列の各関節の角度に関する情報を出力する出力部と、を備え、
前記目的関数は、重み付けられた各距離に応じたものである、リンク列マッピング装置。
A receiving unit that receives model link string information that is information related to the position of each link included in the model link string;
An identifying unit that identifies coordinate values of a plurality of predetermined points in the link string of the model using model link string information;
Each link included in the link row of the robot such that an objective function corresponding to each distance between the plurality of locations specified by the identifying unit and the plurality of locations in the link sequence of the robot corresponding to the plurality of locations is reduced. A calculation unit that calculates robot link string information that is information related to the position of
An output unit for outputting information on the angle of each joint of the link row of the robot according to the robot link row information;
The link string mapping device, wherein the objective function corresponds to each weighted distance.
前記特定部が特定する複数箇所には、前記モデルのリンク列の先端が含まれ、
当該モデルのリンク列の先端である特定された箇所に対応する前記ロボットのリンク列における箇所は、当該ロボットのリンク列の先端であり、
前記モデル及び前記ロボットの各リンク列の先端の距離の重みは、他の距離の重みよりも大きい、請求項1記載のリンク列マッピング装置。
The tip of the link row of the model is included at a plurality of places specified by the specifying unit,
The location in the link row of the robot corresponding to the identified location that is the tip of the link row of the model is the tip of the link row of the robot,
The link string mapping apparatus according to claim 1, wherein the distance weight of the tip of each link string of the model and the robot is larger than the weight of other distances.
前記ロボットのリンク列における関節の可動域を示す情報である関節可動域情報が記憶される記憶部をさらに備え、
前記算出部は、前記関節可動域情報の示す可動域内において、前記目的関数が小さくなるように前記ロボットリンク列情報を算出する、請求項1または請求項2記載のリンク列マッピング装置。
The robot further includes a storage unit storing joint movement range information, which is information indicating a movement range of a joint in the link row of the robot.
The link string mapping device according to claim 1 or 2, wherein the calculation unit calculates the robot link string information so that the objective function becomes smaller in a movable range indicated by the joint movement range information.
前記モデルのリンク列の長さと、前記ロボットのリンク列の長さとを正規化する正規化部をさらに備え、
前記距離は、正規化後の距離である、請求項1から請求項3のいずれか記載のリンク列マッピング装置。
And a normalization unit that normalizes the length of the link string of the model and the length of the link string of the robot,
The link string mapping apparatus according to any one of claims 1 to 3, wherein the distance is a normalized distance.
前記距離は、前記モデルのリンク列の基端及び前記ロボットのリンク列の基端を原点にした座標系における座標値に応じた距離である、請求項1から請求項4のいずれか記載のリンク列マッピング装置。 The link according to any one of claims 1 to 4, wherein the distance is a distance according to a coordinate value in a coordinate system in which a base end of the link line of the model and a base end of the link line of the robot are an origin. Column mapping device. モデルリンク列情報またはロボットリンク列情報に関する予測を行う予測部をさらに備え、
前記出力部は、前記予測部による予測結果に応じて、予測された前記ロボットのリンク列の各関節の角度に関する情報を出力する、請求項1から請求項5のいずれか記載のリンク列マッピング装置。
A prediction unit that performs prediction on model link string information or robot link string information;
The link string mapping apparatus according to any one of claims 1 to 5, wherein the output unit outputs information on the predicted angle of each joint of the link string of the robot according to the prediction result by the prediction unit. .
モデルのリンク列に含まれる各リンクの位置に関する情報であるモデルリンク列情報を受け付ける受付部と、
モデルリンク列情報を用いて、前記モデルのリンク列におけるあらかじめ決められた複数箇所の座標値を特定する特定部と、
前記特定部によって特定された複数箇所と、当該複数箇所にそれぞれ対応するロボットのリンク列における複数箇所との各距離に応じた目的関数が小さくなるように、前記ロボットのリンク列に含まれる各リンクの位置に関する情報であるロボットリンク列情報を算出する算出部と、
ロボットリンク列情報に応じた前記ロボットのリンク列の各関節の角度に関する情報を出力する出力部と、
モデルリンク列情報またはロボットリンク列情報に関する予測を行う予測部と、を備え、
前記出力部は、前記予測部による予測結果に応じて、予測された前記ロボットのリンク列の各関節の角度に関する情報を出力する、リンク列マッピング装置。
A receiving unit that receives model link string information that is information related to the position of each link included in the model link string;
An identifying unit that identifies coordinate values of a plurality of predetermined points in the link string of the model using model link string information;
Each link included in the link row of the robot such that an objective function corresponding to each distance between the plurality of locations specified by the identifying unit and the plurality of locations in the link sequence of the robot corresponding to the plurality of locations is reduced. A calculation unit that calculates robot link string information that is information related to the position of
An output unit that outputs information on the angle of each joint of the link row of the robot according to the robot link row information;
A prediction unit that performs prediction on model link string information or robot link string information;
The link string mapping device, wherein the output unit outputs information on the predicted angle of each joint of the link string of the robot according to a prediction result by the prediction unit.
モデルのリンク列に含まれる各リンクの位置に関する情報であるモデルリンク列情報を受け付ける受付ステップと、
前記受付ステップで受け付けられたモデルリンク列情報を用いて、前記モデルのリンク列におけるあらかじめ決められた複数箇所の座標値を特定する特定ステップと、
前記特定ステップで特定された複数箇所と、当該複数箇所にそれぞれ対応するロボットのリンク列における複数箇所との各距離に応じた目的関数が小さくなるように、前記ロボットのリンク列に含まれる各リンクの位置に関する情報であるロボットリンク列情報を算出する算出ステップと、
前記算出ステップで算出されたロボットリンク列情報に応じた前記ロボットのリンク列の各関節の角度に関する情報を出力する出力ステップと、を備え、
前記目的関数は、重み付けられた各距離に応じたものである、リンク列マッピング方法。
An accepting step of accepting model link string information which is information on the position of each link included in the model link string;
An identifying step of identifying coordinate values of a plurality of predetermined points in the link string of the model using the model link string information accepted in the accepting step;
Each link included in the link row of the robot so that an objective function corresponding to each distance between the plurality of locations specified in the identifying step and the plurality of locations in the link row of the robot corresponding to the plurality of locations is reduced. Calculation step of calculating robot link string information which is information related to the position of
Providing an output step of outputting information on the angle of each joint of the link row of the robot according to the robot link row information calculated in the calculation step;
The link string mapping method, wherein the objective function corresponds to each weighted distance.
モデルのリンク列に含まれる各リンクの位置に関する情報であるモデルリンク列情報を受け付ける受付ステップと、
前記受付ステップで受け付けられたモデルリンク列情報を用いて、前記モデルのリンク列におけるあらかじめ決められた複数箇所の座標値を特定する特定ステップと、
前記特定ステップで特定された複数箇所と、当該複数箇所にそれぞれ対応するロボットのリンク列における複数箇所との各距離に応じた目的関数が小さくなるように、前記ロボットのリンク列に含まれる各リンクの位置に関する情報であるロボットリンク列情報を算出する算出ステップと、
前記算出ステップで算出されたロボットリンク列情報に応じた前記ロボットのリンク列の各関節の角度に関する情報を出力する出力ステップと、
モデルリンク列情報またはロボットリンク列情報に関する予測を行う予測ステップと、を備え、
前記出力ステップでは、前記予測ステップでの予測結果に応じて、予測された前記ロボットのリンク列の各関節の角度に関する情報を出力する、リンク列マッピング方法。
An accepting step of accepting model link string information which is information on the position of each link included in the model link string;
An identifying step of identifying coordinate values of a plurality of predetermined points in the link string of the model using the model link string information accepted in the accepting step;
Each link included in the link row of the robot so that an objective function corresponding to each distance between the plurality of locations specified in the identifying step and the plurality of locations in the link row of the robot corresponding to the plurality of locations is reduced. Calculation step of calculating robot link string information which is information related to the position of
An output step of outputting information on angles of joints of the link row of the robot according to the robot link row information calculated in the calculating step;
Providing a prediction step of predicting model link string information or robot link string information;
The link string mapping method, wherein, in the output step, information related to the predicted angle of each joint of the link string of the robot is output according to the prediction result in the prediction step.
コンピュータを、
モデルのリンク列に含まれる各リンクの位置に関する情報であるモデルリンク列情報を受け付ける受付部、
前記受付部によって受け付けられたモデルリンク列情報を用いて、前記モデルのリンク列におけるあらかじめ決められた複数箇所の座標値を特定する特定部、
前記特定部によって特定された複数箇所と、当該複数箇所にそれぞれ対応するロボットのリンク列における複数箇所との各距離に応じた目的関数が小さくなるように、前記ロボットのリンク列に含まれる各リンクの位置に関する情報であるロボットリンク列情報を算出する算出部、
前記算出部によって算出されたロボットリンク列情報に応じた前記ロボットのリンク列の各関節の角度に関する情報を出力する出力部として機能させ、
前記目的関数は、重み付けられた各距離に応じたものである、プログラム。
Computer,
A reception unit that receives model link string information that is information on the position of each link included in the model link string,
An identification unit that identifies coordinate values of a plurality of predetermined points in the link sequence of the model using the model link sequence information accepted by the acceptance unit;
Each link included in the link row of the robot such that an objective function corresponding to each distance between the plurality of locations specified by the identifying unit and the plurality of locations in the link sequence of the robot corresponding to the plurality of locations is reduced. A calculation unit that calculates robot link string information that is information related to the position of
It functions as an output unit that outputs information related to the angle of each joint of the link row of the robot according to the robot link sequence information calculated by the calculation unit,
The program according to the present invention, wherein the objective function corresponds to each weighted distance.
コンピュータを、
モデルのリンク列に含まれる各リンクの位置に関する情報であるモデルリンク列情報を受け付ける受付部、
前記受付部によって受け付けられたモデルリンク列情報を用いて、前記モデルのリンク列におけるあらかじめ決められた複数箇所の座標値を特定する特定部、
前記特定部によって特定された複数箇所と、当該複数箇所にそれぞれ対応するロボットのリンク列における複数箇所との各距離に応じた目的関数が小さくなるように、前記ロボットのリンク列に含まれる各リンクの位置に関する情報であるロボットリンク列情報を算出する算出部、
前記算出部によって算出されたロボットリンク列情報に応じた前記ロボットのリンク列の各関節の角度に関する情報を出力する出力部、
モデルリンク列情報またはロボットリンク列情報に関する予測を行う予測部として機能させ、
前記出力部は、前記予測部による予測結果に応じて、予測された前記ロボットのリンク列の各関節の角度に関する情報を出力する、プログラム。
Computer,
A reception unit that receives model link string information that is information on the position of each link included in the model link string,
An identification unit that identifies coordinate values of a plurality of predetermined points in the link sequence of the model using the model link sequence information accepted by the acceptance unit;
Each link included in the link row of the robot such that an objective function corresponding to each distance between the plurality of locations specified by the identifying unit and the plurality of locations in the link sequence of the robot corresponding to the plurality of locations is reduced. A calculation unit that calculates robot link string information that is information related to the position of
An output unit that outputs information on the angle of each joint of the link row of the robot according to the robot link sequence information calculated by the calculation unit;
Function as a prediction unit that performs prediction on model link string information or robot link string information;
The program, wherein the output unit outputs information on the predicted angle of each joint of the link row of the robot according to a prediction result by the prediction unit.
JP2016056051A 2016-03-18 2016-03-18 Link string mapping device, link string mapping method, and program Active JP6529039B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016056051A JP6529039B2 (en) 2016-03-18 2016-03-18 Link string mapping device, link string mapping method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016056051A JP6529039B2 (en) 2016-03-18 2016-03-18 Link string mapping device, link string mapping method, and program

Publications (2)

Publication Number Publication Date
JP2017170535A JP2017170535A (en) 2017-09-28
JP6529039B2 true JP6529039B2 (en) 2019-06-12

Family

ID=59972573

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016056051A Active JP6529039B2 (en) 2016-03-18 2016-03-18 Link string mapping device, link string mapping method, and program

Country Status (1)

Country Link
JP (1) JP6529039B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20240248491A1 (en) * 2023-01-24 2024-07-25 Disney Enterprises, Inc. Robotics device control signals based on movement data

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7382743B2 (en) * 2019-06-17 2023-11-17 株式会社ソニー・インタラクティブエンタテインメント robot system
CN120095815B (en) * 2025-03-13 2025-11-18 燕山大学 Double-arm robot anthropomorphic joint posture mapping method based on particle swarm optimization algorithm

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3960536B2 (en) * 2002-08-12 2007-08-15 株式会社国際電気通信基礎技術研究所 Computer-implemented method and computer-executable program for automatically adapting a parametric dynamic model to human actor size for motion capture
JP4617428B2 (en) * 2004-09-24 2011-01-26 株式会社国際電気通信基礎技術研究所 Motion generation system
JP4487782B2 (en) * 2005-01-19 2010-06-23 トヨタ自動車株式会社 Motion data creation device and method for teaching an articulated robot
JP4934806B2 (en) * 2006-05-26 2012-05-23 国立大学法人 東京大学 Method and apparatus for estimating link length parameter of link mechanism model using motion capture

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20240248491A1 (en) * 2023-01-24 2024-07-25 Disney Enterprises, Inc. Robotics device control signals based on movement data

Also Published As

Publication number Publication date
JP2017170535A (en) 2017-09-28

Similar Documents

Publication Publication Date Title
JP5892531B1 (en) Link string mapping device, link string mapping method, and program
JP5724919B2 (en) Orbit generation device, moving body, orbit generation method and program
CN111152218B (en) A motion mapping method and system for a heterogeneous humanoid robotic arm
JP6282140B2 (en) Orbit generation method, robot apparatus, program, and recording medium
JP6529039B2 (en) Link string mapping device, link string mapping method, and program
JP5580850B2 (en) Fast grip contact calculation for serial robots
CN113840696B (en) Machine learning-based systems and methods for controlling robotic object picking and placement in training and runtime environments
JP6941934B2 (en) Constraint-based optimization methods and systems for digital human upper limb models
JP2019532824A (en) Continuous robot, method for correcting kinematic model of continuous robot, and control method for continuous robot
JP2009211571A (en) Course planning device, course planning method, and computer program
CN111716352B (en) A method and system for navigation and obstacle avoidance of a manipulator for live work in a distribution network
KR20100072745A (en) Method for constructing motion-capture database and method for motion synthesis by using the motion-capture database
CN115840455B (en) Motion control method and device for legged robots and legged robots
CN109108970B (en) An Interactive Manipulator Control Method Based on Skeletal Node Information
JPH0887609A (en) Image processing device
Park et al. Hysteresis compensation of flexible continuum manipulator using rgbd sensing and temporal convolutional network
Zeng et al. PE-DLS: A novel method for performing real-time full-body motion reconstruction in VR based on Vive trackers
JP5732985B2 (en) Torque calculation device, torque calculation method, and program
JP6550605B2 (en) Movement transfer device, movement transfer method and program
Petrenko et al. Calculating rotation angles of the operator's arms based on generalized coordinates of the master device with following anthropomorphic manipulator in real time
Baek et al. Human motion retargeting to a full-scale humanoid robot using a monocular camera and human pose estimation
JP5602043B2 (en) Control device, method, and program for difficulty in bending joint angle of skeleton model
Raufelder Modeling analysis of attitude perception of engineering manipulator supporting wireless communication and Internet of Things
CN113012268A (en) Method, system, device and medium for dynamic motion of static pedestrian image
Santiago et al. Autonomous robot dancing synchronized to musical rhythmic stimuli

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20180320

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180331

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20180331

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20180320

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20190111

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190409

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190508

R150 Certificate of patent or registration of utility model

Ref document number: 6529039

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150