JP6262813B2 - Program and image processing apparatus - Google Patents
Program and image processing apparatus Download PDFInfo
- Publication number
- JP6262813B2 JP6262813B2 JP2016151879A JP2016151879A JP6262813B2 JP 6262813 B2 JP6262813 B2 JP 6262813B2 JP 2016151879 A JP2016151879 A JP 2016151879A JP 2016151879 A JP2016151879 A JP 2016151879A JP 6262813 B2 JP6262813 B2 JP 6262813B2
- Authority
- JP
- Japan
- Prior art keywords
- marker
- structured
- reference marker
- information
- unit
- 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
Links
- 239000003550 marker Substances 0.000 claims description 270
- 238000010586 diagram Methods 0.000 description 16
- 210000003811 finger Anatomy 0.000 description 16
- 238000004364 calculation method Methods 0.000 description 13
- 238000010606 normalization Methods 0.000 description 12
- 238000000034 method Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 4
- 210000003813 thumb Anatomy 0.000 description 4
- 238000010845 search algorithm Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 239000003086 colorant Substances 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 210000004932 little finger Anatomy 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 210000000707 wrist Anatomy 0.000 description 1
Images
Landscapes
- User Interface Of Digital Computer (AREA)
Description
本発明は、プログラム及び画像処理装置に関する。 The present invention relates to a program and an image processing apparatus.
近年、カメラ等の撮像装置を用いて物体を撮像し、この撮像された物体の状態をユーザからの情報入力に用いるシステムが注目されている。このような技術の一例が特許文献1に開示されている。特許文献1に開示されているシステムでは、ユーザが着用しているグローブの画像に基づいて、ユーザの手の動きが検出される。具体的には、グローブには、手のひらと各指先にマーカが設けられており、これらのマーカの状態を認識することによってユーザの手の動きが検出される。
2. Description of the Related Art In recent years, attention has been focused on a system that captures an object using an imaging device such as a camera and uses the state of the captured object for information input from a user. An example of such a technique is disclosed in
特許文献1に開示される手法を用いることにより、グローブ等に付されたマーカの状態を認識し、ユーザの手の動きを検出することができる。しかしながら、複数のユーザが存在する場合に、どのユーザの手であるかを判断することができない。即ち、カメラで撮像された画像に含まれるグローブが、どのユーザのものであるかを判断することができない。そのため、例えば、撮像される空間で、グローブを着用した複数のユーザが参加してゲームを行う場合において、識別されたマーカの状態に応じて、どのオブジェクトに対して操作指示を行えばよいかを判断することができない。
By using the technique disclosed in
本発明はこのような事情に鑑みてなされたものであり、識別されたマーカがどのオブジェクトに対応するものであるかを判断し、当該オブジェクトに対してマーカの状態に応じた操作指示を出力可能とすることを目的とする。 The present invention has been made in view of such circumstances, and can determine which object the identified marker corresponds to and output an operation instruction corresponding to the state of the marker to the object. It aims to be.
本発明の一側面に係るプログラムは、コンピュータに、基準マーカとオブジェクト識別子との対応関係を示すマーカ情報に基づいて、カメラから連続的に出力される撮像画像から、基準マーカを識別する基準マーカ識別部と、識別された基準マーカと、基準マーカに対応して定められた位置情報とによって、撮像画像における1つ又は複数の構造化マーカの起点を特定する起点特定部と、起点から連続する1つ又は複数の構造化マーカの状態を判定する構造化マーカ判定部と、識別された基準マーカに対応するオブジェクト識別子によって識別されるオブジェクトに対して、1つ又は複数の構造化マーカの判定された状態に応じた操作指示を出力する操作指示部と、を実現させる。 A program according to an aspect of the present invention provides a computer with a reference marker identification for identifying a reference marker from captured images continuously output from a camera based on marker information indicating a correspondence relationship between a reference marker and an object identifier. A starting point specifying unit for specifying the starting point of one or a plurality of structured markers in the captured image by using the part, the identified reference marker, and the position information determined corresponding to the reference marker, and a continuous 1 from the starting point One or more structured markers determined for an object identified by an object identifier corresponding to the identified reference marker and a structured marker determining unit that determines the state of the one or more structured markers And an operation instruction unit that outputs an operation instruction according to the state.
なお、本発明において、「部」とは、単に物理的手段を意味するものではなく、その「部」が有する機能をソフトウェアによって実現する場合も含む。また、1つの「部」や装置が有する機能が2つ以上の物理的手段や装置により実現されても、2つ以上の「部」や装置の機能が1つの物理的手段や装置により実現されてもよい。 In the present invention, the “part” does not simply mean a physical means, but includes a case where the function of the “part” is realized by software. Also, even if the functions of one “unit” or device are realized by two or more physical means or devices, the functions of two or more “units” or devices are realized by one physical means or device. May be.
本発明によれば、識別されたマーカがどのオブジェクトに対応するものであるかを判断し、当該オブジェクトに対してマーカの状態に応じた操作指示を出力可能となる。 According to the present invention, it is possible to determine which object the identified marker corresponds to, and to output an operation instruction according to the state of the marker to the object.
以下、図面を参照して本発明の一実施形態について説明する。図1は、本発明の一実施形態である画像処理システム100の構成を示す図である。画像処理システム100は、画像処理装置110、カメラ120、及びディスプレイ130を備える。カメラ120及びディスプレイ130は、画像処理装置110に内蔵されていてもよい。また、画像処理装置110は、マーカ情報記憶部140、基準マーカ識別部141、起点特定部142、姿勢情報再演算部143、正規化部144、構造化マーカ判定部145、及び操作指示部146を備える。また、基準マーカ識別部141は、姿勢情報演算部150を含む。画像処理装置110は、例えば、スマートフォンやタブレット端末、パーソナルコンピュータ等の情報処理装置である。画像処理装置110は、プロセッサ及びメモリを備え、メモリに格納されたプログラムを実行することにより、図1に示す各部を含む様々な機能を実現することができる。
Hereinafter, an embodiment of the present invention will be described with reference to the drawings. FIG. 1 is a diagram showing a configuration of an
図2は、画像処理システム100の利用イメージを説明するための図である。図2に示す例では、ユーザは手袋200を着用している。この手袋200には、後述するマーカが付されている。手袋200に付されたマーカはカメラ120によって認識され、その認識結果に応じて、AR空間(視錐台)210におけるオブジェクト220に対する操作指示が行われる。例えば、ユーザの指の動きに連動するようにオブジェクト220が描画される。
FIG. 2 is a diagram for explaining a usage image of the
図3は、手袋200に付されたマーカの一例を示す図である。図3に示すように、手袋200には、基準マーカ(Fiducial Marker)300及び構造化マーカ(Structured Markers)310(310a〜310e)が設けられている。基準マーカ300及び構造化マーカ310は、手袋200の色に対してコントラストが比較的大きい色であることが好ましい。例えば、手袋200の色が黒である場合、基準マーカ300及び構造化マーカ310の色を白とすることができる。
FIG. 3 is a diagram illustrating an example of a marker attached to the
基準マーカ300は、オブジェクト220を識別するためのものであり、状態の変化が比較的小さい領域(もしくは状態の変化がないことが前提の領域)である手のひらの部分に設けられている。ここで、状態の変化の一例としてあげられるのは、変形である。構造化マーカ310(310a〜310e)は、その状態によってオブジェクト220に対する操作指示を行うためのものであり、状態の変化が比較的大きい領域(もしくは状態の変化があることが前提の領域)である指の部分に設けられている。
The
なお、本実施形態では、マーカが付される物体の一例として手袋200を示すが、マーカが付される物体は手袋200に限られず、状態の変化が比較的小さい領域と状態の変化が比較的大きい領域とを有する任意の物体を採用することができる。例えば、シャツの胸の部分に基準マーカ300を付し、シャツの袖の部分に構造化マーカ310を付してもよい。また例えば、可動腕を有する人型構造物の胴体部分に基準マーカを付し、腕部分に構造化マーカを付してもよい。また、図3において、基準マーカ300は、いくつかの図形の群によって示されているが、これは一例であり、一つの図形のみによって示されていてもよく、構造化マーカ310も一例である。すなわち、マーカの形状には任意の形状を採用することができる。また、本実施形態では、構造化マーカ310が基準マーカ300とは別個に設けられている例を説明するが、構造化マーカは、基準マーカを含んでもよい。具体的には、基準マーカ300及び構造化マーカ310の組を、構造化マーカとすることもできる。
In the present embodiment, the
図1に戻り、画像処理装置110の各部の説明を行う。マーカ情報記憶部140には、基準マーカと、オブジェクト220を識別するためのオブジェクトIDとの対応関係を示すマーカ情報が予め記憶されている。図4は、マーカ情報の一例を示す図である。図4に示すように、マーカ情報は、基準マーカの特徴を示す基準マーカ情報400、構造化マーカの特徴を示す構造化マーカ情報410、基準マーカの姿勢を再演算する際の基準点の特徴を示す基準点情報420、及びオブジェクト220を識別するためのオブジェクトID430を含む。
Returning to FIG. 1, each part of the
基準マーカ情報400は、例えば、基準マーカの画像の特徴を示す情報(例えば特徴量ベクトル)を含む。構造化マーカ情報410は、例えば、基準マーカに対する構造化マーカの起点の位置関係を示す起点位置情報や、構造化マーカの画像の特徴を示す情報(例えば特徴量ベクトル)を含む。基準点情報420は、基準マーカに対する基準点の位置関係を示す基準点位置情報を含む。マーカ情報において、基準マーカ情報400は、オブジェクトID430ごとに異なっている。なお、マーカ情報記憶部140は、画像処理装置110の外部に設けられてもよい。例えば、マーカ情報記憶部140は、クラウドのサーバに設けられていてもよい。
The
基準マーカ識別部141は、マーカ情報記憶部140に記憶されているマーカ情報に基づいて、カメラ120から連続的に出力される撮像画像から、基準マーカを識別する。図5は、基準マーカの識別を説明するための図である。図5に示すように、基準マーカ識別部141は、撮像画像内において基準マーカ500を識別する。この基準マーカ500とは、後述するように、基準マーカ情報400と所定の類似度を有する画像領域を撮像画像内から識別したものと言える。この識別は、撮像画像内での基準マーカ500の存在の有無の検出のみならず、姿勢情報演算部150による姿勢情報の演算をともなって行われる。姿勢情報とは、位置、角度、距離などを含めた概念である。撮像画像からの基準マーカ500の存在の有無の検出および姿勢情報の演算は、既知の画像処理技術(Computer Vision)を適宜用いることで実現可能であるので詳細な説明は割愛するが、例えば、マーカ情報記憶部140に記憶されている基準マーカ情報400に対して所定の類似性を満たす特徴点の群を撮像画像から検出し、これらの特徴点を用いてPnP(Perspective N−Point)問題を解く演算を行うことで実現される。また、基準マーカ識別部141は、基準マーカ500を識別した際に、基準マーカ情報400との類似度に基づいて、識別精度を示す精度情報を出力する。基準マーカ識別部141は、他の画像処理装置と精度情報を共有するために、クラウドのサーバや他の画像処理装置に精度情報を送信する。精度情報は、例えば、識別された基準マーカ500に対応するオブジェクトIDと、識別精度(例えば、0〜1の範囲の値)とを含む。また、基準マーカ情報400として複数種類の情報(例えば、F1、F2、・・・)がマーカ情報記憶部140に記憶されている場合、基準マーカ識別部141は、撮像画像内において、複数の基準マーカ500を識別する。複数の基準マーカ500が識別された場合、基準マーカ識別部141は、各基準マーカ300に関する精度情報を出力する。
The reference
起点特定部142は、識別された基準マーカ500と、マーカ情報記憶部140に記憶されている構造化マーカ情報410とに基づいて、撮像画像における1つ又は複数の構造化マーカの起点を特定する。また、起点特定部142は、識別された基準マーカ500と、この基準マーカ500を識別するための基準マーカ情報400と対応付けられてマーカ情報記憶部140に記憶されている基準点情報420とによって、撮像画像における1つ又は複数の基準点を特定する。図6は、起点及び基準点の特定を説明するための図である。基準マーカに対する構造化マーカの起点の位置関係は、マーカ情報記憶部140に記憶されている構造化マーカ情報410に含まれる起点位置情報によって示される。また、基準マーカに対する基準点の位置関係は、マーカ情報記憶部140に記憶されている基準点情報によって示される。基準マーカ500に対する起点600及び基準点610の位置関係は、基準マーカ500の姿勢によって変化する。そこで、起点特定部142は、起点位置情報及び基準点情報を、姿勢情報演算部150により演算された姿勢情報で変換することにより、基準マーカ500に対応する起点600及び基準点610を特定する。なお、図6では基準点が1つしか示されていないが、基準点は複数存在する。図6の例では、起点600a,600b,600eは基準点を兼ねている。
Based on the identified
ところで、手のひらは、実際は変形するものであるため、基準マーカ500と、起点600及び基準点610との位置関係は、カメラ120によって撮像される瞬間の手袋の状態によって変化する。そのため、特定された起点600及び基準点610の位置は、予め設計された理想の位置とは異なっている可能性がある。そこで、起点特定部142は、例えば、ミーンシフト(Mean Shift)により起点600及び基準点610を補正する。
By the way, since the palm is actually deformed, the positional relationship between the
図7は、起点600及び基準点610をミーンシフトにより補正する例を示す図である。図7において、点700(700a〜700c)は、起点又は基準点に対応する。また、図7において、領域710は、起点又は基準点を含む領域である。起点特定部142は、特定された点700aを中心とする所定の大きさの円720aを規定する。起点特定部142は、この円720a内において、構造化マーカの色(例えば、白色)を基準とした重心の点700bを求める。続いて、起点特定部142は、この重心の点700bを中心とする円720bを規定する。さらに、起点特定部142は、この円720b内における重心の点700cを求め、重心の点700cを中心とする円720cを規定する。図7に示す例では、領域710は、構造化マーカの他の箇所よりも幅が広くなっているため、ミーンシフトの処理を繰り返していくことにより、重心700が領域710の中心付近に収束し、点700が補正される。即ち、最初に特定された点700aが領域710内の点700cに補正される。この補正は、数値演算によって求められた起点600及び基準点に関する情報を、実際の手の状態を画像化した撮像画像の特徴を利用して、より正確な情報へ変換するものと言える。
FIG. 7 is a diagram illustrating an example in which the
姿勢情報再演算部143は、補正された基準点610(起点600の一部を含む)に基づいて、基準マーカ500の姿勢情報を再度求める。具体的には、姿勢情報再演算143は、姿勢情報演算部150により演算された姿勢情報を、補正された基準点610を用いて再演算する。姿勢情報の再演算は、例えば、マーカ情報記憶部140に記憶されている基準点位置情報と、補正された基準点610とに基づいて、PnP問題を解く演算を行うことにより実現される。この再演算により、より正しい姿勢情報が求められる。
The posture
正規化部144は、姿勢情報再演算部143によって再演算された姿勢情報に基づいて、識別された基準マーカ500が所定の姿勢となるように撮像画像を正規化する。なお、撮像画像の正規化においては、撮像画像内の構造化マーカの状態判定を容易にするために、撮像画像の座標情報の変換が行われる。
The
図8は、撮像画像の正規化の一例を説明するための図である。撮像画像800aには、手袋の画像が含まれている。前述したように、姿勢情報再演算部143により、撮像画像800aにおいては、補正された基準点600a,600b,600e,610に基づいて、姿勢情報が再演算されている。この再演算された姿勢情報に基づいて、正規化部144は、基準マーカ500が所定の姿勢によって示される情報となるように、撮像画像800aの座標値を変換し、撮像画像800bを生成する。図8に示す例では、所定の姿勢は、手のひらが正面を向き、手首が下側となる姿勢である。このような正規化は、例えば、ホモグラフィ変換により行うことができる。そして、このように正規化を行うことにより、撮像画像内の構造化マーカの状態判定が容易となる。例えば、正規化後の撮像画像800bにおいては、起点600からどの方向に構造化マーカが形成されているかは手袋のデザインから自明である。そのため、構造化マーカ判定部145が構造化マーカの状態を判定する際に用いるアルゴリズムを設計する際、これが容易になる。
FIG. 8 is a diagram for explaining an example of normalization of a captured image. The captured
構造化マーカ判定部145は、正規化後の撮像画像において、起点600から連続する構造化マーカの状態を判定する。図9は、構造化マーカの状態の判定を説明するための図である。図9に示すように、構造化マーカ判定部145は、起点600(600a〜600e)から連続する領域を探索することにより、構造化マーカ900(900a〜900e)の状態を判定することができる。具体的には、構造化マーカ判定部145は、マーカ情報記憶部140に記憶されている構造化マーカ情報410に基づいて、正規化後の撮像画像内の起点600を出発地点として、撮像画像内を探索することにより、構造化マーカ900の状態を判定する。構造化マーカ情報410は、構造化マーカ900の状態判定に用いるアルゴリズムを特定する情報を含む。
The structured
図10は、構造化マーカの状態を迷路探索アルゴリズム(Wall Follower)を利用して判定する例を示す図である。構造化マーカ判定部145は、正規化後の撮像画像において、起点600を出発地点として、ある方向(例えば、図10に示す矢印A1の方向)に探索を進める。そして、コントラストが大きく変化する点(例えば、図10に示すX点)に達すると、構造化マーカ判定部145は、基準マーカ500とは反対の方向(例えば、図10に示すA2の方向)に探索方向を変更する。このように、構造化マーカ判定部145は、構造化マーカ900の端部を迷路の壁と見なして、この壁にそって探索を進めることにより、構造化マーカ900の方向及び長さを演算する。もちろん、迷路探索アルゴリズムは一例であり、起点600を出発地点としてコントラストが大きく変化している境界を、撮像画像から検知することを利用した様々な手法を採用可能である。具体的には、構造化マーカ判定部145は、マーカ情報記憶部140に記憶されている構造化マーカ情報410に基づいて、構造化マーカ900の状態判定に用いるアルゴリズムを選択することができる。
FIG. 10 is a diagram illustrating an example of determining the state of a structured marker using a maze search algorithm (Wall Follower). In the normalized captured image, the structured
構造化マーカ判定部145は、各構造化マーカ900の方向及び長さを演算することにより、複数の構造化マーカ900により規定される、構造化マーカ900の状態を判定することができる。図11は、構造化マーカの状態を説明するための図である。図11に示すように、構造化マーカ900の状態には、各構造化マーカ900の方向及び長さ1100(1100a〜1100e)、隣接する構造化マーカ900間の角度1110(1110a〜1110d)、隣接する構造化マーカ900の先端間の距離1120(1120a〜1120d)が含まれる。
The structured
また、構造化マーカ判定部145は、複数の構造化マーカ900の状態をパターンとして認識することもできる。図12は、構造化マーカ900の状態のパターンの一例を示す図である。図12には、4つのパターンが示されている。いずれのパターンも、薬指と小指は折られており、構造化マーカ900d,900eは認識されていない。パターン01は、親指(構造化マーカ900a)と人差し指(構造化マーカ900b)が離れ、人差し指(構造化マーカ900b)と中指(構造化マーカ900c)が接触している状態である。パターン02は、親指(構造化マーカ900a)と人差し指(構造化マーカ900b)が離れ、人差し指(構造化マーカ900b)と中指(構造化マーカ900c)も離れている状態である。パターン03は、親指(構造化マーカ900a)と人差し指(構造化マーカ900b)が接触し、人差し指(構造化マーカ900b)と中指(構造化マーカ900c)が離れている状態である。パターン04は、親指(構造化マーカ900a)と人差し指(構造化マーカ900b)が接触し、人差し指(構造化マーカ900b)と中指(構造化マーカ900c)も接触している状態である。このように、構造化マーカ判定部145は、複数の構造化マーカ900の状態をパターンとして認識することもできる。
The structured
画像処理システム100では、複数の画像処理装置110を用いて、複数の手袋200に付されたマーカを同時に処理することができる。この点について説明する。図13は、3つの画像処理装置110a〜110cを用いて4つの手袋200a〜200dに付されたマーカを処理している状態を示す図である。このような状態において、各画像処理装置110が、全ての手袋200a〜200dについて構造化マーカの状態判定を行うことは効率が悪い。そこで、画像処理システム100では、各画像処理装置110の基準マーカ識別部141が、撮像画像内の基準マーカ500(手袋200a〜200dに付された基準マーカ300a〜300dに対応)から、所定の優先条件に基づいて、構造化マーカ900の状態判定を行う対象とする基準マーカ500を選択することができる。所定の優先条件としては、例えば、基準マーカ500の識別精度や、予め登録されたオブジェクトIDを用いることができる。
In the
図14は、識別精度に基づいて基準マーカ500を選択するための精度情報テーブルの一例を示す図である。精度情報テーブルは、画像処理装置110(D1,D2,・・・,Dm)とオブジェクトID(A1,A2,・・・,An)のマトリクスであり、各セルには、識別精度を示す0〜1の値が設定されている。ここでは、値が1に近いほど識別精度が高いものとする。なお、オブジェクトIDは、基準マーカ500に対応するものである。精度情報テーブルは、例えば、各画像処理装置110において保持される。このような精度情報テーブルは、例えば、各画像処理装置110の基準マーカ識別部141が、基準マーカ500の識別精度を他の画像処理装置に送信することにより生成することができる。
FIG. 14 is a diagram illustrating an example of an accuracy information table for selecting the
例えば、各画像処理装置110の基準マーカ識別部141は、オブジェクトA1〜Anの中から、識別精度が所定の基準値以上のものを選択することができる。なお、画像処理装置110において選択可能なオブジェクトの数には上限値を設定してもよい。この上限値は、画像処理装置110の処理能力等に応じて可変であってもよい。また例えば、複数のオブジェクトA1〜Anのそれぞれについて、オブジェクトの識別精度が最も高い画像処理装置110が当該オブジェクトを選択するように構成してもよい。
For example, the reference
操作指示部146は、基準マーカ識別部141により識別された基準マーカ500に対応するオブジェクトIDによって識別されるオブジェクトに対して、構造化マーカ判定部145により判定された構造化マーカ900の状態に応じた操作指示を出力する。なお、オブジェクトは、オブジェクトIDによって識別可能であり、操作指示を受け付けることが可能な任意のものを対象とすることができる。例えば、オブジェクトは、オブジェクトIDによって識別されるユーザの手のオブジェクトであってもよい。この場合、操作指示部146は、例えば、構造化マーカ900の状態に応じて、ディスプレイ130に表示される手のオブジェクトにおける指の動きを制御することができる。また例えば、オブジェクトは、オブジェクトIDによって識別されるゲームのキャラクタであってもよい。この場合、操作指示部146は、例えば、構造化マーカ900の状態に応じて、ディスプレイ130に表示されるキャラクタの動作を制御することができる。
The
図15A及び図15Bは、画像処理システム100における処理の一例を示すフローチャートである。なお、画像処理システム100に複数の画像処理装置110が存在する場合、図15A及び図15Bに示す処理は、各画像処理装置110において実行される。
15A and 15B are flowcharts illustrating an example of processing in the
図15Aに示すように、まず、基準マーカ識別部141は、マーカ情報記憶部140に記憶されたマーカ情報を読み出す(S1501)。このマーカ情報は、図4に示すように、基準マーカ情報400、構造化マーカ情報410、基準点情報420、及びオブジェクトID430を含む。そして、基準マーカ識別部141は、カメラ120から連続的に出力される撮像画像を取得する(S1502)。そして、基準マーカ識別部141は、基準マーカ情報記憶部140に記憶されている基準マーカ情報400に基づいて、撮像画像から、基準マーカ500を識別する(S1503)。このとき、基準マーカ識別部141の姿勢情報演算部150は、識別された基準マーカ500と、マーカ情報記憶部140に記憶されている基準マーカ情報400とに基づいて、PnP問題を解くことにより、基準マーカ500の姿勢情報の演算も行う(S1504)。
As shown in FIG. 15A, first, the reference
起点特定部142は、識別された基準マーカ500と、マーカ情報記憶部140に記憶されている構造化マーカ情報410とに基づいて、撮像画像における1つ又は複数の構造化マーカの起点600を特定する(S1505)。また、起点特定部142は、識別された基準マーカ500と、マーカ情報記憶部140に記憶されている基準点情報420とに基づいて、撮像画像における複数の基準点610を特定する(S1506)。その後、起点特定部142は、ミーンシフトにより起点600及び基準点610を補正する(S1507)。
The starting
続いて、姿勢情報再演算部143は、補正された基準点610(起点600の一部を含む)と、マーカ情報記憶部140に記憶されている基準点位置情報とに基づいて、PnP問題を解くことにより、基準マーカ500の姿勢情報を再演算する(S1508)。そして、正規化部144は、再演算された姿勢情報に基づいて、識別された基準マーカ500が所定の姿勢となるように、例えばホモグラフィ変換によって、撮像画像を正規化する(S1509)。
Subsequently, the posture
構造化マーカ判定部145は、正規化後の撮像画像において、構造化マーカの状態判定処理を実行する(S1510)。図15Bに示すように、構造化マーカ判定部145は、マーカ情報記憶部140に記憶されている構造化マーカ情報410に基づいて、構造化マーカ900の状態判定に用いるアルゴリズムを選択する(S1520)。そして、構造化マーカ判定部145は、選択されたアルゴリズムを用いて、正規化後の撮像画像内の起点600を出発地点として撮像画像内を探索することにより、構造化マーカ900の状態を判定する(S1521)。構造化マーカ判定部145は、全ての構造化マーカ900の状態判定が完了したかどうか判断し(S1522)、完了していない場合は(S1522:N)、アルゴリズム選択(S1520)及び状態判定(S1521)を繰り返し実行する。全ての構造化マーカ900の状態判定が完了すると(S1522:Y)、操作指示部146は、全ての構造化マーカ900に基づいて、オブジェクトに対する操作指示内容を演算する(S1523)。その後、図15Aに示す処理に戻り、操作指示部146は、演算された操作指示内容に基づいて、オブジェクトに対して操作指示を行う(S1530)。
The structured
上述の処理が、処理終了が指示されるまでの間(S1531:N)、カメラ120から出力され続ける撮像画像に対してリアルタイムに実行される。そして、例えば、ユーザ操作によって処理終了が指示されると(S1509:Y)、処理が終了する。
The above-described processing is executed in real time on the captured image that is continuously output from the
以上、本発明の一実施形態について説明した。上述したように、本実施形態によれば、基準マーカとオブジェクトIDとの対応関係を示すマーカ情報に基づいて、カメラ120から連続的に出力される撮像画像から、基準マーカ500が識別される。そして、識別された基準マーカ500と、基準マーカに対応して定められた起点位置情報とによって、撮像画像における1つ又は複数の構造化マーカの起点600が特定される。その後、起点600から連続する1つ又は複数の構造化マーカ900の状態が判定される。そして、識別された基準マーカ500に対応するオブジェクトIDによって識別されるオブジェクトに対して、1つ又は複数の構造化マーカ900の判定された状態に応じた操作指示が出力される。このように、本実施形態によれば、識別された基準マーカ500がどのオブジェクトに対応するものであるかを判断し、当該オブジェクトに対して構造化マーカ900の状態に応じた操作指示を出力することができる。
The embodiment of the present invention has been described above. As described above, according to the present embodiment, the
また、本実施形態によれば、姿勢情報演算部150及び姿勢情報再演算部143が、基準マーカ500に対応する複数の基準点に基づいて、識別された基準マーカ500の姿勢を演算(判定)する。その後、演算された姿勢に基づいて、識別された基準マーカ500が所定の姿勢となるように撮像画像が正規化される。そして、正規化された撮像画像において、1つ又は複数の構造化マーカ900の状態が判定される。このように、基準マーカ500が所定の姿勢となるように撮像画像を正規化した後に、構造化マーカ900の状態を判定することにより、構造化マーカ900の状態を判定する際の計算量を削減することができる。なお、本実施形態では、姿勢情報演算部150及び姿勢情報再演算部143によって、基準マーカ500の姿勢を判定する姿勢判定部を実現する例を示したが、姿勢情報再演算部143は必須ではない。すなわち、姿勢情報演算部150により演算された姿勢情報の再演算を行わずに撮像画像の正規化を行ってもよい。
Further, according to the present embodiment, the posture
また、本実施形態によれば、識別された複数の基準マーカ500から、所定の優先条件に基づいて、構造化マーカ900の状態判定の対象とする少なくとも1つの基準マーカ500を選択することができる。これにより、例えば、複数の画像処理装置110において処理負荷を分散させることが可能となる。
Further, according to the present embodiment, at least one
なお、本実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更/改良され得るととともに、本発明にはその等価物も含まれる。 Note that this embodiment is intended to facilitate understanding of the present invention and is not intended to limit the present invention. The present invention can be changed / improved without departing from the spirit thereof, and the present invention includes equivalents thereof.
100 画像処理システム
110 画像処理装置
120 カメラ
130 ディスプレイ
140 マーカ情報記憶部
141 基準マーカ識別部
142 起点特定部
143 姿勢情報再演算部
144 正規化部
145 構造化マーカ判定部
146 操作指示部
150 姿勢情報演算部
200 手袋
210 AR空間
220 オブジェクト
300,500 基準マーカ
310,900 構造化マーカ
600 起点
610 基準点
DESCRIPTION OF
Claims (6)
基準マーカとオブジェクト識別子との対応関係を示すマーカ情報に基づいて、1つ又は複数のカメラから連続的に出力される撮像画像から複数の基準マーカを識別し、当該複数の基準マーカから、所定の条件に基づいて少なくとも1つの基準マーカを判別する基準マーカ識別部と、
前記判別された少なくとも1つの基準マーカのそれぞれについて、当該基準マーカに対応して定められた位置情報によって、前記撮像画像における1つ又は複数の構造化マーカの起点を特定する特定部と、
を実現させるためのプログラム。 On the computer,
Based on the marker information indicating the correspondence between the reference marker and the object identifier, a plurality of reference markers are identified from captured images continuously output from one or a plurality of cameras. A reference marker identification unit for determining at least one reference marker based on a condition;
For each of the determined at least one reference marker, a specifying unit that specifies a starting point of one or a plurality of structured markers in the captured image based on position information determined corresponding to the reference marker;
A program to realize
前記基準マーカ識別部は、前記複数の基準マーカのそれぞれの識別精度に応じた前記所定の条件に基づいて、前記少なくとも1つの基準マーカを判別する、
プログラム。 The program according to claim 1,
The reference marker identifying unit determines the at least one reference marker based on the predetermined condition according to the identification accuracy of each of the plurality of reference markers;
program.
前記基準マーカ識別部は、前記複数の基準マーカのそれぞれに対応する前記オブジェクト識別子に応じた前記所定の条件に基づいて、前記少なくとも1つの基準マーカを判別する、
プログラム。 The program according to claim 1,
The reference marker identifying unit determines the at least one reference marker based on the predetermined condition corresponding to the object identifier corresponding to each of the plurality of reference markers.
program.
前記コンピュータに、
前記判別された少なくとも1つの基準マーカのそれぞれについて、前記起点から連続する前記1つ又は複数の構造化マーカの状態を判定する構造化マーカ判定部をさらに実現させるための、
プログラム。 The program according to any one of claims 1 to 3,
In the computer,
For further realizing a structured marker determination unit that determines the state of the one or more structured markers continuous from the starting point for each of the determined at least one reference marker,
program.
前記コンピュータに、
前記基準マーカに対応して定められる複数の点に基づいて、前記判別された少なくとも1つの基準マーカのそれぞれの姿勢を判定する姿勢判定部と、
前記判定された姿勢に基づいて、前記判別された少なくとも1つの基準マーカのそれぞれが所定の姿勢となるように前記撮像画像を補正する補正部と、
をさらに実現させ、
前記構造化マーカ判定部は、前記補正された撮像画像において、前記1つ又は複数の構造化マーカの状態を判定する、
プログラム。 The program according to claim 4 ,
In the computer,
A posture determination unit that determines each posture of the determined at least one reference marker based on a plurality of points determined corresponding to the reference marker;
A correction unit that corrects the captured image so that each of the determined at least one reference marker assumes a predetermined posture based on the determined posture;
Further realized,
The structured marker determination unit determines the state of the one or more structured markers in the corrected captured image;
program.
前記判別された少なくとも1つの基準マーカのそれぞれについて、当該基準マーカに対応して定められた位置情報によって、前記撮像画像における1つ又は複数の構造化マーカの起点を特定する特定部と、
を備える画像処理装置。
Based on the marker information indicating the correspondence between the reference marker and the object identifier, a plurality of reference markers are identified from captured images continuously output from one or a plurality of cameras. A reference marker identification unit for determining at least one reference marker based on a condition;
For each of the determined at least one reference marker, a specifying unit that specifies a starting point of one or a plurality of structured markers in the captured image based on position information determined corresponding to the reference marker;
An image processing apparatus comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016151879A JP6262813B2 (en) | 2016-08-02 | 2016-08-02 | Program and image processing apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016151879A JP6262813B2 (en) | 2016-08-02 | 2016-08-02 | Program and image processing apparatus |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016074565A Division JP5988286B1 (en) | 2016-04-01 | 2016-04-01 | Program and image processing apparatus |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2017188059A JP2017188059A (en) | 2017-10-12 |
JP2017188059A5 JP2017188059A5 (en) | 2017-11-24 |
JP6262813B2 true JP6262813B2 (en) | 2018-01-17 |
Family
ID=60045614
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016151879A Active JP6262813B2 (en) | 2016-08-02 | 2016-08-02 | Program and image processing apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6262813B2 (en) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4911340B2 (en) * | 2006-02-10 | 2012-04-04 | 富士ゼロックス株式会社 | Two-dimensional code detection system and two-dimensional code detection program |
JP2008070319A (en) * | 2006-09-15 | 2008-03-27 | Canon Inc | Object measurement device and method |
JP5756947B2 (en) * | 2011-05-10 | 2015-07-29 | 国立大学法人 鹿児島大学 | Two-dimensional code, image reading apparatus, image reading method, program, and storage medium |
JP5988286B1 (en) * | 2016-04-01 | 2016-09-07 | 株式会社Cygames | Program and image processing apparatus |
-
2016
- 2016-08-02 JP JP2016151879A patent/JP6262813B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2017188059A (en) | 2017-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5988286B1 (en) | Program and image processing apparatus | |
JP5403699B2 (en) | Finger shape estimation device, finger shape estimation method and program | |
JP6557943B2 (en) | Image collation device, image sensor, processing system, and image collation method | |
CN109069920B (en) | Handheld controller, tracking and positioning method and system | |
JP6066093B2 (en) | Finger shape estimation device, finger shape estimation method, and finger shape estimation program | |
JP6141108B2 (en) | Information processing apparatus and method | |
JP6095478B2 (en) | Input operation device | |
KR20150034257A (en) | Input device, apparatus, input method, and recording medium | |
JP4938748B2 (en) | Image recognition apparatus and program | |
JP2017033144A5 (en) | ||
KR101256046B1 (en) | Method and system for body tracking for spatial gesture recognition | |
US20160093055A1 (en) | Information processing apparatus, method for controlling same, and storage medium | |
KR101706864B1 (en) | Real-time finger and gesture recognition using motion sensing input devices | |
JP6262813B2 (en) | Program and image processing apparatus | |
JP2017174228A (en) | Image processing apparatus, image processing method and image processing program | |
JP5083715B2 (en) | 3D position and orientation measurement method and apparatus | |
JP2017191426A (en) | Input device, input control method, computer program, and storage medium | |
JP6387290B2 (en) | Image search device, image registration device, image feature selection device, method, and program | |
JP5558899B2 (en) | Information processing apparatus, processing method thereof, and program | |
JP4972013B2 (en) | Information presenting apparatus, information presenting method, information presenting program, and recording medium recording the program | |
KR20170116554A (en) | Apparatus for sharing data and providing reward in accordance with shared data | |
JP5951966B2 (en) | Image processing apparatus, image processing system, image processing method, and program | |
JP2017027115A (en) | Method for pointing by gesture | |
JP5821598B2 (en) | Image processing apparatus and program | |
JP2016115179A (en) | Information processing unit, information processing method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170928 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170928 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20170928 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20171023 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A132 Effective date: 20171026 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171109 |
|
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: 20171207 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20171214 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6262813 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |