(57)【要約】  表示情報のユーザに対する視認性が向上する画像処理装置を提供するために、画像処理装置は、第１画素領域と第２画素領域を含む画像パターンにより、表示情報と表示情報を表示する為の基準位置を規定するマーカを含む画像を取得する取得部と、第１画素領域と第２画素領域が縦方向に連接する第１連接領域における第１画素領域と第２画素領域の第１境界線と、第１連接領域に対してそれぞれ点対称となる第１画素領域と第２画素領域の第２境界線とに基づいて規定される第１線分と、第１画素領域と第２画素領域が横方向に連接する第２連接領域における第１画素領域と第２画素領域の第３境界線と、第２連接領域に対してそれぞれ点対称となる第１画素領域と第２画素領域の第４境界線とに基づいて規定される第２線分と、の交点、を抽出する抽出部と、交点を基準位置として表示情報の表示位置を算出する算出部とを備える。
2015040657.tif 000002
【特許請求の範囲】
【請求項１】
第１画素領域と第２画素領域を含む画像パターンにより、表示情報と前記表示情報を表示する為の基準位置を規定するマーカを含む画像を取得する取得部と、      前記第１画素領域と前記第２画素領域が縦方向に連接する第１連接領域における前記第１画素領域と前記第２画素領域の第１境界線と、      前記第１連接領域に対してそれぞれ点対称となる前記第１画素領域と前記第２画素領域の第２境界線と    に基づいて規定される第１線分と、      前記第１画素領域と前記第２画素領域が横方向に連接する第２連接領域における前記第１画素領域と前記第２画素領域の第３境界線と、      前記第２連接領域に対してそれぞれ点対称となる前記第１画素領域と前記第２画素領域の第４境界線と    に基づいて規定される第２線分と、  の交点、  前記第１画素領域を含む前記マーカの外縁の４隅形状の頂点を示す第１頂点、または、  複数の前記第１画素領域の頂点、または、複数の前記第２画素領域の頂点を示す第２頂点、  を抽出する抽出部と、  前記第１頂点、前記第２頂点または前記交点を前記基準位置として前記表示情報の表示位置を算出する算出部と、  を備えることを特徴とする画像処理装置。
【請求項２】
前記第１線分は、前記第１境界線と前記第２境界線に平行かつ前記第１境界線と前記第２境界線の中点に基づいて規定され、  前記第２線分は、前記第３境界線と前記第４境界線に平行かつ前記第３境界線と前記第４境界線の中点に基づいて規定されることを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記第２頂点は、複数の前記第１画素領域が連接、または複数の前記第２画素領域が連接した多角形状の頂点を含むことを特徴とする請求項１または請求項２記載の画像処理装置。
【請求項４】
前記抽出部は、前記交点、前記第１頂点、前記第２頂点の順に優先度を付与し、  前記算出部は、前記優先度に基づいて前記表示位置を算出することを特徴とする請求項１ないし請求項３記載の何れか一項に記載の画像処理装置。
【請求項５】
前記抽出部は、前記第２頂点を形成する長辺と短辺を抽出し、前記短辺が長い順に複数の前記第２頂点に対して前記優先度を付与することを特徴とする請求項３記載の画像処理装置。
【請求項６】
前記抽出部は、前記短辺が同じ長さの場合、前記長辺が長い順に複数の前記第２頂点に対して前記優先度を付与することを特徴とする請求項５記載の画像処理装置。
【請求項７】
前記抽出部は、複数の前記第１画素領域と、複数の前記第２画素領域同士が互いに対向する市松形状の中心点を前記交点として抽出することを特徴とする請求項１ないし請求項５記載の何れか一項に記載の画像処理装置。
【請求項８】
前記抽出部は、複数の前記市松形状の縁辺を抽出し、前記縁辺が長い順に複数の前記交点に対して前記優先度を付与することを特徴とする請求項３または請求項４記載の画像処理装置。
【請求項９】
前記優先度は重み付け係数を含み、  前記算出部は、前記重み付け係数を前記交点、前記第１頂点、前記第２頂点に対して適用して、前記基準位置を算出することを特徴とする請求項１記載の画像処理装置。
【請求項１０】
前記取得部が取得するマーカからマーカＩＤを認識する認識部と、  前記マーカＩＤから、マーカパターンを生成する生成部と、を更に含み、  前記抽出部は、    前記マーカパターンに含まれる前記４隅形状、前記市松形状、または前記多角形状と、  前記マーカに含まれる前記４隅形状、前記市松形状、または前記多角形状と  を対応付けて前記前記第１頂点、前記第２頂点、または前記交点を抽出することを特徴とする請求項７記載の画像処理装置。
【請求項１１】
前記表示位置の算出に用いられた前記交点、前記第１頂点、または、前記第２頂点の数に基づいて、前記表示情報を表示する並進ベクトルまたは回転ベクトルの信頼度を規定する規定部、  を更に備えることを特徴とする請求項２ないし請求項１０の何れか一項に記載の画像処理装置。
【請求項１２】
前記抽出部は、前記基準位置に対して補完処理を実施することを特徴とする請求項１ないし請求項１１何れか一項に記載の画像処理装置。
【請求項１３】
第１画素領域と第２画素領域を含む画像パターンにより、表示情報と前記表示情報を表示する為の基準位置を規定するマーカを含む画像を取得すること、      前記第１画素領域と前記第２画素領域が縦方向に連接する第１連接領域における前記第１画素領域と前記第２画素領域の第１境界線と、      前記第１連接領域に対してそれぞれ点対称となる前記第１画素領域と前記第２画素領域の第２境界線と    に基づいて規定される第１線分と、      前記第１画素領域と前記第２画素領域が横方向に連接する第２連接領域における前記第１画素領域と前記第２画素領域の第３境界線と、      前記第２連接領域に対してそれぞれ点対称となる前記第１画素領域と前記第２画素領域の第４境界線と    に基づいて規定される第２線分と、  の交点、  前記第１画素領域を含む前記マーカの外縁の４隅形状の頂点を示す第１頂点、または、  複数の前記第１画素領域の頂点、または、複数の前記第２画素領域の頂点を示す第２頂点、を抽出すること、  前記第１頂点、前記第２頂点または前記交点を前記基準位置として前記表示情報の表示位置を算出すること、  を含むことを特徴とする画像処理方法。
【請求項１４】
コンピュータに、    第１画素領域と第２画素領域を含む画像パターンにより、表示情報と前記表示情報を表示する為の基準位置を規定するマーカを含む画像を取得すること、      前記第１画素領域と前記第２画素領域が縦方向に連接する第１連接領域における前記第１画素領域と前記第２画素領域の第１境界線と、      前記第１連接領域に対してそれぞれ点対称となる前記第１画素領域と前記第２画素領域の第２境界線と    に基づいて規定される第１線分と、      前記第１画素領域と前記第２画素領域が横方向に連接する第２連接領域における前記第１画素領域と前記第２画素領域の第３境界線と、      前記第２連接領域に対してそれぞれ点対称となる前記第１画素領域と前記第２画素領域の第４境界線と    に基づいて規定される第２線分と、  の交点、  前記第１画素領域を含む前記マーカの外縁の４隅形状の頂点を示す第１頂点、または、  複数の前記第１画素領域の頂点、または、複数の前記第２画素領域の頂点を示す第２頂点、を抽出すること、  前記第１頂点、前記第２頂点または前記交点を前記基準位置として前記表示情報の表示位置を算出すること、  を実行させることを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、例えば、画像上の任意の位置に表示情報を表示する画像処理装置、画像処理方法および画像処理プログラムに関する。
【背景技術】
【０００２】  近年、情報通信技術の発展に伴い、現実空間（外界）を撮像した画像にコンピュータを用いて視覚的な表示情報を付加して表示する、拡張現実感（Ａｕｇｍｅｎｔｅｄ  Ｒｅａｌｉｔｙ：ＡＲ）による画像処理技術の開発が行われている。拡張現実に関する技術におけるインタフェースは、任意の場所に固定されたカメラ、または自由に移動が可能なカメラを用いて、ユーザの眼前の物体に付与されるマーカ（２次元コードと称しても良い）を撮影することにより、マーカを含む画像を取得した後、その物体に関連する付加的な情報であり、かつマーカに対応付けられる表示情報をディスプレイ上に表示する機能を具備している。【０００３】  拡張現実感による画像処理方法は、具体的には、マーカに対応する表示情報を、撮像したマーカの４隅から決定される基準位置と当該基準位置に基づく物理座標系に基づいて、カメラのディスプレイ（プレビュー画面と称しても良い）や、カメラが搭載されるＰＣ、または、携帯端末のディスプレイに重畳表示することを特徴としている。当該画像処理方法により、表示情報と物体の表示位置を関連付けることが可能となる。【０００４】  拡張現実技術を利用し、電子機器等の障害発生時における障害箇所の特定、及び、ユーザの障害修復作業等の現場作業を支援する機能が実現されている。例えば、作業対象物となる物体または、当該物体付近に特定の形状特徴を有するマーカを付与し、マーカに含まれる各種情報に基づいて、カメラが撮影する画像上にリアルタイムで表示情報を重畳表示する。例えば、コピー機の紙詰まり障害の修復作業支援において、紙詰まり発生位置に対応付けられたコピー機の内部映像及び操作手順を、作業対象の物体となるコピー機に重畳表示する技術が提案されている。【０００５】  ここで、従来の拡張現実感の画像処理技術を用いない従来の手法による現場作業においては、以下の様な問題が存在し得ることが想定されている。  （１−１）作業対象箇所や手順を記載した大量の紙媒体の作業手順書を作業現場に持って行き、作業者が必要な個所を自分で選択して参照すると共に、作業手順書の記載と現場の状況を見比べながら作業を実施する。この為、必要箇所の選択に時間がかかる、間違った箇所を選択する・見比べる時に見間違いが発生するなどの作業ミスが発生する。  （１−２）作業結果は、紙媒体のチェックシートへ記入して記録する。記録内容を電子化する作業負荷は大きいことから、紙媒体のチェックシートのまま作業結果が保存されることになる為、作業結果の整理や解析が難しくなる。【０００６】  上述の問題点に関して、拡張現実感を用いた画像処理技術を上述の現場作業に対して適用することで、以下の改善効果が期待される。  （２−１）電子化したマニュアルを格納した画像処理装置のカメラを用いて作業対象の物体を撮影するだけで、その作業対象の物体に関する作業箇所や手順を、ディスプレイの画像（カメラプレビュー画像と称しても良い）への表示情報（オブジェクトアイコンと称しても良い）の重畳表示という形でリアルタイムに表示して提示する。これにより、ユーザの作業時間の短縮と作業ミスの低減を図ることが可能となる。  （２−２）作業結果の記録作業は、作業対象の物体に関連付け���表示されている表示情報を、例えば、手指で押下して選択することで、作業結果の入力用画面に切り替えて実施する。作業結果の記録完了時において、既に作業結果は電子化されている為、作業結果のデータの整理や編集が容易になる。この様に、拡張現実感を用いた画像処理技術においては、作業現場における様々な作業効率化が期待されている。
【先行技術文献】
【非特許文献】
【０００７】  「拡張現実感を利用した原子力発電プラントの解体支援手法の提案と評価」、日本バーチャルリアリティ学会論文誌、Ｖｏｌ.１３、Ｎｏ．２、ｐｐ.２８９−３００、２００８
【発明の概要】
【発明が解決しようとする課題】
【０００８】  現状のマーカの認識に基づく拡張現実感を用いる画像処理技術における表示情報の表示動作は、例えば、画像に含まれるマーカの認識に成功している間は、当該画像内のマーカの認識位置や姿勢を基準とし、マーカの基準位置に対する相対位置に基づいて表示情報を表示する。なお、マーカの基準位置は、上述の通り、例えば、マーカの４隅から決定される。マーカの基準位置に合わせて表示情報の表示位置が規定される為、マーカの基準位置の検出精度を向上させることが、表示情報のユーザに対する視認性を確保する上で重要となる。本発明は、表示情報のユーザに対する視認性が向上する画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】  本発明が開示する画像処理装置は、第１画素領域と第２画素領域を含む画像パターンにより、表示情報と表示情報を表示する為の基準位置を規定するマーカを含む画像を取得する取得部を備える。更に、当該画像処理装置は、第１画素領域と第２画素領域が縦方向に連接する第１連接領域における第１画素領域と第２画素領域の第１境界線と、第１連接領域に対してそれぞれ点対称となる第１画素領域と第２画素領域の第２境界線とに基づいて規定される第１線分と、第１画素領域と第２画素領域が横方向に連接する第２連接領域における第１画素領域と第２画素領域の第３境界線と、第２連接領域に対してそれぞれ点対称となる第１画素領域と第２画素領域の第４境界線とに基づいて規定される第２線分と、の交点、第１画素領域を含むマーカの外縁の４隅形状の頂点を示す第１頂点、または、複数の第１画素領域の頂点、または、複数の第２画素領域の頂点を示す第２頂点、を抽出する抽出部を備える。更に、当該画像処理装置は、第１頂点、第２頂点または交点を基準位置として表示情報の表示位置を算出する算出部を備える。【００１０】  なお、本発明の目的及び利点は、例えば、請求項におけるエレメント及び組み合わせにより実現され、かつ達成されるものである。また、上記の一般的な記述及び下記の詳細な記述の何れも、例示的かつ説明的なものであり、請求項のように、本発明を制限するものではないことを理解されたい。
【発明の効果】
【００１１】  本明細書に開示される画像処理装置では、表示情報のユーザに対する視認性が向上させることが可能となる。
【図面の簡単な説明】
【００１２】
【図１】回転ベクトルと並進ベクトルの定義図である。
【図２】（ａ）は、マーカの一例である。（ｂ）は、量子化誤差により４隅形状が不明瞭となるマーカの概念図である。（ｃ）は、撮像ボケにより４隅形状が不明瞭となるマーカの概念図である
【図３】第１の実施形態による画像処理装置１の機能ブロック図である。
【図４】（ａ）は、４隅形状の概念図である。（ｂ）は、市松形状の概念図である。（ｃ）は、多角形状の概念図である。
【図５】（ａ）は、入力画像における多角形状の概念図である。（ｂ）は、入力画像における市松形状の概念図である。
【図６】（ａ）は、市松形状における第１線分と第２線分の概念図である。（ｂ）は、その他の形状における第１線分と第２線分の概念図である。
【図７】形状特徴と優先順位を含むテーブルの一例である。
【図８】市松形状における直線の長さを基準とする優先順位を含むテーブルの一例である。
【図９】多角形状における直線の長さを基準とする優先順位を含むテーブルの一例である。
【図１０】形状特徴、優先順位、ならびに重み付け係数を含むテーブルの一例である。
【図１１】画像処理装置１による画像処理のフローチャートである。
【図１２】第２の実施形態による画像処理装置１の機能ブロック図である。
【図１３】（ａ）は、第１頂点、第２頂点、交点を示した第１マーカの一例である。（ｂ）は、第１頂点、第２頂点、交点を示した第２マーカの一例である。（ｃ）は、信頼度を含むテーブルの一例である。
【図１４】一つの実施形態による画像処理装置１として機能するコンピュータのハードウェア構成図である。
【発明を実施するための形態】
【００１３】  まず、従来技術における問題の所在について説明する。なお、当該問題の所在は、本発明者らが従来技術を仔細に検討した結果として新たに見出したものであり、従来は知られていなかったものである。本発明者らの鋭意検証によって、上述の表示情報の表示位置がリアルタイムで変動する拡張現実感による画像処理において以下の事項が明らかになった。表示情報を表示する際の位置姿勢情報は、例えば、マーカの４隅形状の角（頂点と称しても良い）の位置の座標を基準座標として算出することが出来る。具体的には、マーカを撮影するカメラの撮影方向を基準にした３次元座標系（ｘ、ｙ、ｚ）におけるマーカの中心位置の座標を表す並進ベクトル（Ｔｘ、Ｔｙ、Ｔｚ）と、並進ベクトルそれぞれの軸に対するマーカの回転角度を表す回転ベクトル（Ｒｘ、Ｒｙ、Ｒｚ）に基づいて位置姿勢情報を算出することが出来る。なお、マーカの回転角度は、例えば、マーカの中心位置を原点とした場合において、当該原点が並進ベクトルＴｘ、Ｔｙ、Ｔｚの軸に対してどの程度回転しているのかを示している。図１は、回転ベクトルと並進ベクトルの定義図である。図１に示される通り、任意の位置の原点０から、マーカに対して垂直に並進ベクトルＴｚが規定され、当該並進ベクトルＴｚに対応する並進ベクトルＴｘ、Ｔｙがそれぞれ規定される。また、並進ベクトルＴｘ、Ｔｙ、Ｔｚの回転方向に対して、回転ベクトルＲｘ、Ｒｙ、Ｒｚがそれぞれ規定される。換言すると、マーカの形状を基準とした３次元座標系（Ｘ、Ｙ、Ｚ）（但し、マーカ中心を原点，各辺の方向をＸ軸，Ｙ軸，マーカの法線方向をＺ軸とする）の上の点ＰＭｎ＝（Ｘｎ、Ｙｎ、Ｚｎ）を、カメラの撮影方向を基準にした３次元座標系から見た時の点ＰＣｎ＝（ｘｎ、ｙｎ、ｚｎ）は、次式を用いて表現することが出来る。    （数１）      ＰＣｎ ＝ Ｒ（θｘ、θｙ、θz）・ＰＭｎ＋Ｔ  但し、上述の（数１）において、      Ｔ＝（Ｔｘ、Ｔｙ、Ｔｚ）      Ｒ（θｘ、θｙ、θｚ）＝Ｒｘ(θx,)・Ｒｙ(θy)・Ｒｚ(θz)であり、更に、2015040657.tif 000003
であるものとする。また、回転ベクトル（Ｒｘ、Ｒｙ、Ｒｚ）は、上記の回転行列Ｒ（θx、θy、θz）から算出することが出来る。ここで、Ｒ（θｘ、θｙ、θz）は、上述の（数１）において、連立方程式を用いて算出することが出来る。例えば、マーカの４隅を用いる場合、４隅の各点は同一平面上にあること（Ｚｎ＝０）を前提とすることで、１枚の画像中の４点分の点の座標が分かれば連立方程式を解くことが可能となる。この時、ＰＭｎ＝（Ｘｎ、Ｙｎ、Ｚｎ）、ＰＣｎ＝（ｘｎ、ｙｎ、ｚｎ）は、マーカの基準位置に基づいて一意的に係数をして定められる。この様に、並進ベクトルならびに回転ベクトルはマーカの基準位置に基づいて算出される。
【００１４】  上述の並進ベクトルならびに回転ベクトルの算出精度は、マーカの４隅形状の頂点の座標（位置）の検出精度に依存する。本発明者らの鋭意検証により、マーカの４隅形状の頂点の位置は、量子化誤差やカメラの撮像ボケによる撮影画像の不鮮明性の影響により検出誤差が大きくなる為、マーカの４隅形状の頂点の座標の検出精度を向上させることは、容易では無いことが明らかになった。図２（ａ）は、マーカの一例である。図２（ｂ）は、量子化誤差により４隅形状が不明瞭となるマーカの概念図である。図２（ｃ）は、撮像ボケにより４隅形状が不明瞭となるマーカの概念図である。図２（ａ）に示すマーカは、例えば、縦横８モジュールの正方形の形状であり、外周１モジュール分は黒色領域で固定されている。また、マーカ内部の縦横６モジュールの白色領域と黒色領域のパターンによって、例えば、当該マーカに一意に対応付けられるマーカＩＤが表現される。なお、後述する実施例においては、例えば、図２（ａ）に示すマーカ以外にも、様々な形状のマーカを適用することが可能である。図２（ｂ）ならびに図２（ｃ）の何れにおいても、量子化誤差または撮像ボケにより、マーカを構成する白色領域と黒色領域の画素の境界線が不明瞭となり、図２（ａ）に示すマーカの４隅形状の頂点の位置と検出位置が一致しない課題が生じる。例えば、白色領域と黒色領域に境界線を規定する場合、例えば、所定の閾値の画素値（例えば、画素値＝１２５）を用いて、閾値以下を満たす画素に基づいて境界線を規定する。量子化誤差や撮像ボケが発生しない場合は、本来のマーカの境界線の位置に、境界線が規定される。しかしながら、量子化誤差や撮像ボケが発生すると、例えば、黒色領域が見かけ上、膨張することなり、マーカの境界線は、外側に規定されることになる。この場合、並進ベクトルならびに回転ベクトルの算出精度が低下する為、表示情報の表示位置が不安定になるという課題が生じる。特に、回転ベクトルの算出精度の低下が顕著になる場合が多く、表示情報がマーカ中心付近を基点に上下左右に揺れたり、ガタついて表示される現象が発生し、表示情報の視認性を劣化させる課題が生じる。換言すると、表示情報のユーザに対する視認性が向上する画像処理装置を提供する為には、量子化誤差や撮像ボケの影響を低減させる必要がある。
【００１５】  上述の表示情報の視認性を劣化させる課題に対して、本発明者らは、比較例として以下の手法を検討した。例えば、量子化誤差または撮像ボケに対する４隅形状の頂点座標の検出誤差を低減させるため、４隅形状付近の画素間を補間した上で、マーカの検出処理を行い、マーカを構成する画素間隔以下の精度（サブピクセル精度）で４隅形状の頂点座標を求める方法が考えられる。しかしながら、当該方法を用いても量子化誤差または撮像ボケによる誤差の低減量には限界があり、効果は十分なものではない。また、他の比較例として、並進ベクトルまたは回転ベクトルを時系列に沿って一時的に保存した上で、平滑化フィルタ、または、パーティクルフィルタ等の予測フィルタ処理を用いることによって、揺れやガタつきを低減させる方法が考えられる。しかしながら、予測フィルタ処理は、単なる予測処理であり、本来の正しい値に対する精度の観点から課題が生じる。更に、撮影画面内でのマーカの移動速度に急激な変化が発生した場合には、予測フィルタ処理が当該移動速度に追従しない為に、却って大きな誤差を発生させるという課題も生じる。また、他の比較例として、マーカを撮像する撮像レンズならびに撮像素子の解像度を高解像度化させる方法が考えられる。但し、リアルタイムで変動する拡張現実感による画像処理おいて、高解像度の画像の画像処理を行うことは演算負荷の観点から現実的ではない。
【００１６】  上述の本発明者らの鋭意検証によって、新たに見出された事項を考慮しつつ、以下に、一つの実施形態による画像処理装置、画像処理方法及び画像処理プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例は、開示の技術を限定するものではない。
【００１７】  （実施例１）  図３は、第１の実施形態による画像処理装置１の機能ブロック図である。画像処理装置１は、取得部２、認識部３、記憶部４、生成部５、抽出部６、算出部７ならびに、表示部８を有する。なお、画像処理装置１は、例えば、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）やＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）などの集積回路で構成しても良い。
【００１８】  取得部２は、例えば、ワイヤードロジックによるハードウェア回路である。また、取得部２は、画像処理装置１で実行されるコンピュータプログラムにより実現される機能モジュールであっても良い。更に、取得部２は、図示しない通信部を有しており、通信回線を介して様々な外部装置と双方向にデータの送受信を行うことが可能である。取得部２は、後述する表示部８が表示する表示情報（オブジェクト情報と称しても良い）と、当該表示情報を表示する基準位置を規定するマーカを含む画像（なお、当該画像を入力画像と称しても良い）を取得する。ここで、表示情報とは、例えば、作業対象となる物体に対応付けられる作業内容等を含む情報である。また、取得部２が取得するマーカの形状は、例えば、図２（ａ）に示す形状のマーカの形状であれば良い。取得部２は、当該画像を、例えば、外部装置の一例となる図示しない撮像素子（カメラと称しても良い）から取得する。撮像素子は、例えば、ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）やＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）カメラなどの撮像デバイスである。また、画像処理装置１は、撮像素子を画像処理装置１の構成要素の一部とすることが出来る。取得部２は取得した画像を認識部３に出力する。また、取得部２は取得した画像を必要に応じて表示部８に出力する。
【００１９】  認識部３は、例えば、ワイヤードロジックによるハードウェア回路である。また、認識部３は、画像処理装置１で実行されるコンピュータプログラムにより実現される機能モジュールであっても良い。認識部３は入力画像を取得部２から受け取り、当該入力画像中のマーカの位置を検出する。認識部３は、例えば、入力画像の左上端を原点、横方向をｘ軸、縦方向をｙ軸の座標軸における２次元座標系における、マーカの４隅形状の位置の２次元座標を検出する。
【００２０】  認識部３は、例えば、マーカの４隅形状の頂点の２次元座標を基準として、マーカに対応するマーカＩＤを認識する。認識部３におけるマーカの認識処理においては、任意のアルゴリズムを用いてマーカＩＤを認識しても良いし、後述する記憶部４に必要に応じて予め記憶されている複数のマーカを参照し、テンプレートマッチングを用いてマーカＩＤを認識しても良い。なお、認識部３におけるマーカの４隅形状の座標の検出精度は、並進ベクトルまたは回転ベクトルの算出に用いる場合よりも原理上低くても良い為、量子化誤差や撮像ボケの影響を受けずにマーカＩＤ（例えば、マーカＩＤ＝１３）を認識することが出来る。認識部３は、認識したマーカＩＤを生成部５に出力する。なお、認識部３は、例えば、記憶部４を参照し、マーカＩＤに対応する表示情報を認識し、当該表示情報を表示部８へ出力する。
【００２１】  記憶部４は、例えば、フラッシュメモリ（ｆｌａｓｈ  ｍｅｍｏｒｙ）などの半導体メモリ素子、または、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、光ディスクなどの記憶装置である。なお、記憶部は、上記の種類の記憶装置に限定されるものではなく、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）であってもよい。記憶部４には、例えば、認識部３がテンプレートマッチングに用いるマーカや、マーカに対応付けられるマーカＩＤ、当該マーカＩＤに対応する表示情報等が記憶される。また、表示情報には、基準位置に基づいて表示される、表示部８の表示面に対する相対的な位置関係のデータが含まれる。なお、記憶部４は、必ずしも画像処理装置１に含まれる必要はない。例えば、画像処理装置１に設けられる図示しない通信部を用いて通信回線を介することによって、記憶部４を画像処理装置１以外の外部装置に設けることも可能である。また、画像処理装置１の各機能部が必要に応じて有する、図示しないキャッシュまたはメモリに記憶部４が記憶するデータを格納しても良い。
【００２２】  生成部５は、例えば、ワイヤードロジックによるハードウェア回路である。また、生成部５は、画像処理装置１で実行されるコンピュータプログラムにより実現される機能モジュールであっても良い。生成部５は、マーカＩＤを認識部３から受け取る。生成部５は、マーカＩＤ（例えば、マーカＩＤ＝１３）に対応するマーカのマーカパターンを生成する。なお、生成部５が生成するマーカパターンは、例えば、図２（ａ）に示すマーカの形状と同等であれば良い。また、生成部５は、例えば、記憶部４にマーカＩＤに対応するマーカが格納されている場合は、記憶部４からマーカを取得し、取得したマーカをマーカパターンとしても良い。更に、生成部５は、マーカパターンを生成する際、例えば、マーカの大きさ（例えば、１モジュール＝１画素）、または、階調（例えば、黒色領域＝０、白色領域＝２５５）を正規化したマーカパターンを生成しても良い。生成部５は、生成したマーカパターンを抽出部６へ出力する。
【００２３】  抽出部６は、例えば、ワイヤードロジックによるハードウェア回路である。また、抽出部６は、画像処理装置１で実行されるコンピュータプログラムにより実現される機能モジュールであっても良い。抽出部６は、生成部５からマーカパターンを受け取る。抽出部６は、マーカパターンから、特定の形状特徴が有する点の位置を、マーカパターン上の基準位置として決定する。なお、特定の形状特徴は、例えば、４隅形状、市松形状、多角形状が該当する。図４（ａ）は、４隅形状の概念図である。図４（ｂ）は、市松形状の概念図である。図４（ｃ）は、多角形状の概念図である。図４（ａ）ないし図４（ｃ）において、例えば、黒色領域を第１画素領域、白色領域を第２画素領域と称しても良い。なお、必要に応じて（例えば、マーカが付与される物体の背景色に応じて）、第１画素領域を白色領域に反転し、第２画素領域を黒色領域に反転しても良い。図４（ａ）においては、４隅形状は、第１画素領域から構成されるマーカの外縁の４隅の形状となる。更に、図４（ａ）に示す様に４隅形状のそれぞれに第１頂点が設定される。なお、第１頂点は基準位置の１つに相当する。図４（ｂ）においては、市松形状は、複数の第１画素領域と、複数の第２画素領域が互いに対向する形状となる。また、当該市松形状の中心点が交点として設定される。なお、当該交点は基準位置の１つに相当する。図４（ｃ）においては、多角形状においては、複数の第１画素領域が任意の数、ならびに、任意の形状で連接している。なお、図４（ｃ）に示す多角形状は、一例であり、様々な連接形状で多角形状は構成される。また、図４（ｃ）に示す通り、多角形状の各頂点には第２頂点が設定される。なお、第２頂点は基準位置の１つに相当する。ここで、第２頂点は、多角形状の２辺が交差する点であることが理解できる。第２頂点を形成する多角形状の２辺の線分において、短い方の線分を短辺、長い方の線分を長辺と称しても良い。上述の通り、図４（ａ）ないし図４（ｃ）において、第１頂点、第２頂点、交点は、基準位置に対応する。この為、記憶部４に記憶される、表示情報に含まれる相対的な位置関係のデータは、第１頂点、第２頂点、交点を含ませても良い。
【００２４】  実施例１において、取得部２が取得する画像に含まれるマーカは、例えば、図２（ａ）に示す通り、単位サイズの正方形（モジュール）を縦横に積み重ねた形の矩形のマーカである。当該マーカでは、モジュールの白色領域と黒色領域の組み合わせパターンの違いを用いてマーカＩＤを表現している。この為、マーカに格納するマーカＩＤが異なる場合、マーカ内部のモジュールの白色領域と黒色領域の組み合わせパターンも異なる。ここで、当該マーカにおいては、外周の４隅形状の他に、マーカ内部には、上述の市松形状または多角形状の２種類の形状が形成される。４隅形状、多角形状、市松形状が構成する第１頂点、第２頂点、交点の座標位置は、認識部３がマーカＩＤを認識出来れば一意に決定することが可能である為、画像に含まれるマーカからも対応する基準位置を検出することが出来る。この為、実施例１においては、第１頂点、第２頂点、交点を並進ベクトルまたは回転ベクトルを算出する際の基準位置として使用することが出来る。これにより、基準座標が増加する為、後述する算出部７による並進ベクトルならびに回転ベクトルの算出誤差を低減させることが可能となる。この理由について以下に説明する。
【００２５】  並進ベクトルや回転ベクトルの算出においては、例えば、最小二乗法を用いることが出来る。最小二乗法を用いることにより、各基準位置での誤差を数式で表し、この誤差の総和が最小となるように並進ベクトルや回転ベクトルを算出することが出来る。例えば、算出部７は、Ｎ個の基準位置を用いて並進ベクトルまたは回転ベクトルを算出する場合には、マーカ基準の座標系での各基準位置の理想的な点ＰＭ０ｎに対して、画像上のカメラ基準の座標系での各基準位置の測定された点ＰＣｎに対して、次式で表現される誤差Ｅが最小となるとなる様に並進ベクトルまたは回転ベクトルを算出することが出来る。    （数２） 2015040657.tif 000004
上述の（数２）を用いることで、並進ベクトルならびに回転ベクトルの算出誤差を低減させることが可能となる。
【００２６】  抽出部６は、マーカパターン上の基準位置に対応する、入力画像に含まれるマーカの座標位置を決定する。例えば、抽出部６は、マーカパターンの中心を原点とし、原点を基点するｘ軸とｙ軸の座標軸の平面座標系から、入力画像の座標系への写像変換（透視変換と称しても良い）を、マーカの４隅形状の座標（第１頂点）を基準にして求めて、この写像変換を用いて他の基準位置を入力画像の座標系へ投影することで決定することが出来る。これにより、入力画像のマーカの回転や傾きを補正することが出来る。なお、入力画像に含まれるマーカは、必要に応じてマーカ部位のみに対して切り抜き処理が実施されても良い。
【００２７】  抽出部６は、マーカパターンにおける第１頂点、第２頂点、ならびに交点に対応する、入力画像のマーカにおける第１頂点、第２頂点、交点を抽出する。抽出部６は、入力画像のマーカの第１頂点、第２頂点、交点を抽出する為に、マーカパターンと入力画像のマーカそれぞれの４隅形状、市松形状、多角形状の位置と形状を比較し、対応する入力画像のマーカの４隅形状、市松形状、多角形状を特定する。抽出部６は、入力画像に含まれるマーカから特定した４隅形状、市松形状、多角形状から、入力画像における基準位置となる第１頂点、第２頂点、交点を抽出する。以下に、抽出部６による、入力画像における基準位置となる第１頂点、第２頂点、交点の抽出方法の詳細について説明する。
【００２８】  第１頂点、第２頂点、交点の位置は、例えば、４隅形状、多角形状、市松形状を構成する外縁の輪郭直線の交点として求めることが出来る。当該輪郭直線は、画素の階調値が白色領域と黒色領域の間の特定値（一般的には、２値化閾値と称される）に近い輪郭点を通過する近似直線として求めることが出来る。この特定値は、予め定めておくか画像の状態に応じて適宜決定することが出来るが、撮像ボケや量子化誤差によって適正値が変化してしまう場合がある。また、同様に撮像ボケや量子化誤差によって輪郭直線の正しい位置が不明瞭になってしまう場合が有る。図５（ａ）は、入力画像における多角形状の概念図である。図５（ｂ）は、入力画像における市松形状の概念図である。図５（ａ）ならびに図５（ｂ）は、量子化誤差または撮像ボケの影響を受けており、多角形状または市松形状の外縁の輪郭が不明瞭な状態を示している。図５（ａ）ならびに図５（ｂ）においては、上述の特定値が適正値に対して一致しなくなる場合について説明する。先ず、特定値が適正値に対して高く（明るく）設定された場合の輪郭点を点線で示す。図５（ａ）に示す、多角形状の場合、輪郭点は、本来の外縁の輪郭直線の位置より外側に検出されてしまうため、輪郭点に基づいて規定される輪郭直線も本来の輪郭位置より外側に検出される。その結果、入力画像における多角形状に基づいて規定される本来の第２頂点の位置も外側にずれて検出される。この現象は、４隅形状に基づいて規定される第１頂点においても同様に発生する。一方、図５（ｂ）に示す、市松形状の場合、輪郭点は市松形状の中心点を境に点対称の方向にずれて検出される。マーカ内部の近傍領域の撮像ボケ量や量子化誤差量は、ほぼ同等であるため、このずれ幅もほぼ同等となる為、輪郭点に基づいて規定される輪郭直線は、ずれ量が相殺される様に規定される。この為、市松形状に基づいて規定される交点は本来の位置に検出されることになる。この技術的特徴の詳細について以下に説明する。
【００２９】  市松形状に基づいて規定される交点は、換言すると以下の通りに表現される。先ず、例えば、市松模様の黒色領域を第１画素領域として規定し、白色領域を第２画素領域として規定する。更に、当該市松形状において、第１画素領域と第２画素領域が縦方向に連接する領域を第１連接領域とする（例えば、図４（ｂ）の右側半分の領域）。また、当該第１連接領域における第１画素領域と第２画素領域の間の境界線を第１境界線する。次に、第１連接領域に対してそれぞれ点対称となる第１画素領域と第２画素領域（例えば、図４（ｂ）の左側半分の領域）の間の境界線を第２境界線する。更に、第１境界線と第２境界線に基づいて規定される線分を第１線分とする。ここで、第１線分は、例えば、第１境界線と第２境界線に平行かつ、第１境界線と第２境界線の中点に基づいて規定されれば良い。
【００３０】  更に、市松形状において、第１画素領域と第２画素領域が横方向に連接する領域を第２連接領域とする（例えば、図４（ｂ）の上側半分の領域）。また、当該第２連接領域における第１画素領域と第２画素領域の間の境界線を第３境界線とする。次に、第２連接領域に対してそれぞれ点対称となる第１画素領域と第２画素領域（例えば、図４（ｂ）の下側半分の領域）の間の境界線を第４境界線とする。更に、第３境界線と第４境界線に基づいて規定される線分を第２線分とする。ここで、第２線分は、例えば、第３境界線と第４境界線に平行かつ、第３境界線と第４境界線の中点に基づいて規定されれば良い。この場合において、市松形状に基づいて規定される交点は、第１線分と第２線分の交点と同様となる。
【００３１】  図６（ａ）は、市松形状における第１線分と第２線分の概念図である。図６（ａ）に示す市松形状においては、第１境界線と第２境界線は、それぞれ量子化誤差や撮像ボケの影響により、本来の境界線よりも、例えば、外側に規定されることになる。しかしながら、第１線分は、第１境界線と第２境界線に平行かつ、第１境界線と第２境界線の中点に基づいて規定される為、第１境界線と第２境界線の量子化誤差や撮像ボケの影響は互いに相殺されることなる。この技術的特徴は、第２線分も同様に発生する。市松形状の交点は、量子化誤差や撮像ボケの影響が相殺された第１線分と第２線分の交点により規定される為、基準位置を正確に規定することが出来る。この為、表示情報が本来の表示されるべき位置に表示される為、表示情報の視認性が向上する。
【００３２】  実施例１において、上述の第１連接領域における第１境界線、当該第１連接領域に対してそれぞれ点対称となる第１画素領域と第２画素領域の第２境界線、第１境界線と第２境界線に基づいて規定される線分を第１線分ならびに、第２線分に基づいて規定される交点であれば、市松形状である必要はない。図６（ｂ）は、その他の形状における第１線分と第２線分の概念図である。図６（ｂ）には、第１連接領域と第２連接領域が離散している状態が示されている。しかしながら、図６（ｂ）から理解出来る通り、第１線分は、第１境界線と第２境界線に平行かつ、第１境界線と第２境界線の中点に基づいて規定される為、第１境界線と第２境界線の量子化誤差や撮像ボケの影響は互いに相殺されることなる。この技術的特徴は、第２線分も同様に発生する。当該形状の交点は、量子化誤差や撮像ボケの影響が相殺された第１線分と第２線分の交点により規定される為、基準位置を正確に規定することが出来る。この為、表示情報が本来の表示されるべき位置に表示される為、表示情報の視認性が向上するまた、図６（ａ）においては、第１境界線と第２境界線は交点を基準に近接している為、撮像ボケや量子化誤差の影響を大幅に削減させることが可能になる。
【００３３】  更に、抽出部６は、入力画像の基準位置を基点にして、入力画像においてサブピクセル精度の補間処理を行うことで、基準位置の検出精度を向上させることが出来る。また、抽出部６は、基準位置に対して補間処理後の位置のずれが大きい座標は、その座標位置近傍の画像画質が悪く、誤差が大きいと判断してこの時点で当該座標排除しても良い。なお、排除する誤差範囲は、予め任意の範囲で定めておけば良い。抽出部６は、市松形状または多角形状がマーカ内部に複数存在する場合において、後述する予め定めた形状特徴毎および形状特徴間の基準から判定した優先順位に基づいて、並進ベクトルまたは回転ベクトルの算出に使用する基準位置を選択しても良い。抽出部６は、選択した基準位置を算出部７へ出力する。
【００３４】  上述の通り、抽出部６は、市松形状または多角形状がマーカ内部に複数存在する場合に、複数の基準位置に対して優先順位を付与することが出来る。市松形状または多角形状の外縁の輪郭直線を求める場合において、直線が長い方が輪郭直線算出に用いることが出来る画素情報（輪郭点）が増加する為、その検出精度が高くなる特徴を有する。これは、市松形状、多角形状の何れの場合にも共通した事項となる。この為、抽出部６は、それぞれの形状特徴の中での優先順位の決定において、当該特徴を利用することが出来る。具体的には、抽出部６は、市松形状または多角形状を形成する輪郭直線（縁辺と称しても良い）のうち、最も短い輪郭直線の長さを比較し、当該直線（基準辺と称しても良い）が長いものから順に優先順位を高くして使用することで、並進ベクトルまたは回転ベクトルの算出誤差を低減させることが可能となる。なお、４隅形状は、基本的には、多角形状の中で最も短い直線（短辺と称しても良い）の長さが最大になったものと解釈することが可能である。図７は、形状特徴と優先順位を含むテーブルの一例である。図７のテーブル７０に示される通り、優先順位は、市松形状、４隅形状、多角形状の順に付与される。なお、４隅形状は、マーカ周辺に存在する他の物体や模様の影響を受け易い場合がある為、マーカ内部の形状（多角形状）よりも誤差が大きくなる場合も発生し得る。この様な場合が想定される場合には、必要に応じて４隅形状の優先順位を多角形状よりも下げても良い。
【００３５】  市松形状または多角形状を形成する直線において、最も短い直線の長さは原理上１モジュール分の長さとなり、この長さの直線は、マーカの特徴上、比較的多く存在する。この為、１つの市松形状または多角形状を基準にしたのみでは、優先順位を十分に付与することが難しい場合も想定される。この場合には、更に、市松形状または多角形状の各形状を形成する直線の長さの和を用い、この和が大きいものから順に優先順位を高くして使用することで、並進ベクトルまたは、回転ベクトルの算出誤差を低減させることが可能となる。図８は、市松形状における直線の長さを基準とする優先順位を含むテーブルの一例である。図９は、多角形状における直線の長さを基準とする優先順位を含むテーブルの一例である。図８のテーブル８０、図９のテーブル９０にそれぞれ示される通り、実施例１に例示するマーカにおいては、直線の長さは市松形状の場合で１〜５モジュール分の５通りとなり、多角形状の場合で１〜６モジュール分の６通りとなり、これらの組み合わせによって優先順位が付与される。なお、多角形状の場合は、直線が少なくとも４本有る為、組み合わせ数が非常に多くなる。この為、テーブル８０においては、直線の長さを１モジュール分の長さ、または２モジュール以上の長さの２通りに簡単化した場合について例示をしている。また、テーブル８０ならびにテーブル９０においては、最短の直線の長さが長い順に優先順位を付与している。更に、最短の直線の長さが等しい場合には、直線の長さの和が長い順に優先順位を付与している。
【００３６】  ここで、図９のテーブル９０において、例えば、Ｎｏ６（直線１＝１、直線２＝６）よりも、Ｎｏ１４（直線１＝３、直線２＝２）の方が、優先順位が高い技術的な理由について説明する。輪郭直線を形成する輪郭点の検出位置は、撮像ボケや量子化誤差の他に、輪郭直線上（当該輪郭直線は、マーカの両端まで延伸しているものとする）に位置する他の多角形状や市松形状の影響も受けることになる。この為、他の多角形状や市松形状が近くに存在する場合には、輪郭直線自体の検出精度も劣化する可能性が有る。例えば、図９のテーブル９０のＮｏ６のモジュール長（１モジュール×６モジュール）の輪郭直線で構成される多角形状の輪郭直線上に、他の多角形状が存在する場合について説明する。この場合、輪郭直線が、１モジュール長しかない場合、他の多角形状の輪郭点に影響を受けて、輪郭点が全体として凸形状に検出されてしまい直線状に並ぶ部分が殆ど無くなってしまう場合がある。この場合、輪郭直線の精度が低下してしまう。一方，６モジュール長の輪郭直線の場合、両端の影響は、１モジュール長の輪郭直線と同等ではあるが、その間に２モジュール長以上の直線状の区間が有る為、この区間の効果によって輪郭直線を１モジュール長の場合よりも高精度に決定することが可能となる。また、６モジュール長の輪郭直線の場合、輪郭点の数が多く、輪郭直線を求める際に余裕が有るため，他の多角形状の影響を受けている輪郭点を排除して輪郭直線を求めるなど処理を行うことも可能である。この様な理由により、最短となる輪郭直線が長い方が、優先順位が高く付与される。
【００３７】  図３の算出部７は、例えば、ワイヤードロジックによるハードウェア回路である。また、算出部７は、画像処理装置１で実行されるコンピュータプログラムにより実現される機能モジュールであっても良い。算出部７は、抽出部６から基準位置を受け取る。算出部７は、例えば、上述の（数１）または（数２）を用いて並進ベクトルならびに回転ベクトルを算出する。算出部７は、算出した並進ベクトルならびに回転ベクトルを表示部８へ出力する。また、算出部７における変形例としてマーカの４隅から規定されるマーカの中心位置を基準位置としても良い。この場合、当該中心位置と、交点、第１頂点または、第２頂点との相対位置を算出し、当該相対位置に基づいて並進ベクトルならびに回転ベクトルを算出しても良い。また、この場合において、交点、第１頂点または、第２頂点が実質的な基準位置と称しても良い。算出部７は、更に、検出誤差に基づいた上述の優先順位を利用し、各基準位置に異なる重み付け係数を付与した上で最小二乗法を用いることが可能である。これにより、誤差の小さい形状特徴の基準座標が優先的に使用されることになり、並進ベクトルまたは回転ベクトルの算出誤差の低減を図ることが可能となる。具体的には、算出部７は、各基準座標に対する重み付けをＷｎとした場合、次式で表現される誤差Ｅが最小となる様に並進ベクトルまたは回転ベクトルを算出することが出来る。    （数３） 2015040657.tif 000005
上述の（数３）を用いることで、優先順位に応じた並進ベクトルならびに回転ベクトルの算出誤差を低減させることが可能となる。
【００３８】  図１０は、形状特徴、優先順位、ならびに重み付け係数を含むテーブルの一例である。図１０のテーブル９１においては、図８のテーブル８０ならびに図９のテーブル９０で付与されている優先順位が高い順に、重み付け係数を高く付与している。また、各形状特徴間においては、基準座標の誤差を最も抑制することが可能となる市松形状を優先して重み付け係数を高く付与し、次に４隅形状の重み付け係数を高く付与している。また、算出部７は、演算処理を軽減させる為に、全ての基準座標を用いるのではなく、優先順位が高い順に選択的に基準座標を用いても良い。算出部７は、例えば、１４個の基準座標を用いてに並進ベクトルまたは回転ベクトルを算出することが出来る。
【００３９】  図３の表示部８は、例えば、液晶ディスプレイまたは有機エレクトロルミネッセンスディスプレイなどの表示デバイスである。表示部８は、表示情報を認識部３から受け取り、並進ベクトルならびに回転ベクトルを算出部７から受け取る。表示部８は、並進ベクトルならびに回転ベクトルに基づいて表示情報を表示する。なお、表示部８は必要に応じて取得部２から画像を受け取り、当該画像に表示情報を重畳させて表示しても良い。
【００４０】  図１１は、画像処理装置１による画像処理のフローチャートである。取得部２は、取得部２は、表示部８が表示する表示情報と、当該表示情報を表示する基準位置を規定するマーカを含む画像（なお、当該画像を入力画像と称しても良い）を取得する（ステップＳ１１０１）。取得部２が取得するマーカの形状は、例えば、図２（ａ）に示す形状のマーカの形状であれば良い。取得部２は、当該画像を、例えば、外部装置の一例となる図示しない撮像素子（カメラと称しても良い）から取得する。取得部２は取得した画像を認識部３に出力する。また、取得部２は取得した画像を必要に応じて表示部８に出力する。
【００４１】  認識部３は入力画像を取得部２から受け取り、当該入力画像中のマーカの位置を検出する。認識部３は、例えば、入力画像の左上端を原点、横方向をｘ軸、縦方向をｙ軸の座標軸における２次元座標系における、マーカの４隅形状の位置の２次元座標を検出する。認識部３は、例えば、マーカの４隅形状の頂点の２次元座標を基準として、マーカに対応するマーカＩＤを認識する（ステップＳ１１０２）。認識部３は、マーカＩＤを認識出来なかった場合（ステップＳ１１０２−Ｎｏ）は、画像処理装置１は画像処理を終了する。認識部３がマーカＩＤを認識出来た場合（ステップＳ１１０２−Ｙｅｓ）は、認識したマーカＩＤを生成部５に出力する。なお、認識部３は、例えば、記憶部４を参照し、マーカＩＤに対応する表示情報を認識し、当該表示情報を表示部８へ出力する。
【００４２】  生成部５は、マーカＩＤを認識部３から受け取る。生成部５は、マーカＩＤ（例えば、マーカＩＤ＝１３）に対応するマーカのマーカパターンを生成する（ステップＳ１１０３）。なお、生成部５が生成するマーカパターンは、例えば、図２（ａ）に示すマーカの形状と同等であれば良い。更に、生成部５は、マーカパターンを生成する際、例えば、マーカの大きさ（例えば、１モジュール＝１画素）、または、階調（例えば、黒色領域＝０、白色領域＝２５５）を正規化したマーカパターンを生成しても良い。生成部５は、生成したマーカパターンを抽出部６へ出力する。
【００４３】  抽出部６は基準位置を抽出する（ステップＳ１１０４）。具体的には、抽出部６は、生成部５からマーカパターンを受け取る。抽出部６は、マーカパターンから、特定の形状特徴が有する点の位置を、マーカパターン上の基準位置として決定する。なお、特定の形状特徴は、例えば、４隅形状、市松形状、多角形状が該当する。抽出部６は、マーカパターン上の基準位置に対応する、入力画像に含まれるマーカの座標位置を決定する。例えば、抽出部６は、マーカパターンの中心を原点とし、原点を基点するｘ軸とｙ軸の座標軸の平面座標系から、入力画像の座標系への写像変換（透視変換と称しても良い）を、マーカの４隅形状の座標（第１頂点）を基準にして求めて、この写像変換を用いて他の基準位置を入力画像の座標系へ投影することで決定することが出来る。これにより、入力画像のマーカの回転や傾きを補正することが出来る。なお、入力画像に含まれるマーカは、必要に応じてマーカ部位のみに対して切り抜き処理が実施されても良い。
【００４４】  抽出部６は、マーカパターンにおける第１頂点、第２頂点、ならびに交点に対応する、入力画像のマーカにおける第１頂点、第２頂点、交点を抽出する。抽出部６は、入力画像のマーカの第１頂点、第２頂点、交点を抽出する為に、マーカパターンと入力画像のマーカそれぞれの４隅形状、市松形状、多角形状の位置と形状を比較し、対応する入力画像のマーカの４隅形状、市松形状、多角形状を特定する。抽出部６は、入力画像に含まれるマーカから特定した４隅形状、市松形状、多角形状から、入力画像における基準位置となる第１頂点、第２頂点、交点を抽出する。抽出部６は、抽出した基準位置を算出部７へ出力する。
【００４５】  抽出部６は、ステップＳ１１０４において、入力画像の基準位置を基点にして、入力画像においてサブピクセル精度の補間処理を行うことで、基準位置の検出精度を向上させることが出来る。また、抽出部６は、基準位置に対して補間処理後の位置のずれが大きい座標は、その座標位置近傍の画像画質が悪く、誤差が大きいと判断してこの時点で当該座標排除しても良い。なお、排除する誤差範囲は、予め任意の範囲で定めておけば良い
【００４６】  更に、抽出部６は、ステップＳ１１０４において、抽出部６は、市松形状または多角形状がマーカ内部に複数存在する場合において、後述する予め定めた形状特徴毎および形状特徴間の基準から判定した優先順位に基づいて、並進ベクトルまたは回転ベクトルの算出に使用する基準位置を選択しても良い。この場合、抽出部６は、選択した基準位置を算出部７へ出力する。
【００４７】  算出部７は、抽出部６から基準位置を受け取る。算出部７は、例えば、上述の（数１）、（数２）または（数３）を用いて並進ベクトルまたは回転ベクトルを算出する（ステップＳ１１０５）。算出部７は、算出した並進ベクトルならびに回転ベクトルを表示部８へ出力する。
【００４８】  表示部８は、表示情報を認識部３から受け取り、並進ベクトルならびに回転ベクトルを算出部７から受け取る。表示部８は、並進ベクトルならびに回転ベクトルに基づいて表示情報を表示する（Ｓ１１０６）。なお、表示部８は必要に応じて取得部２から画像を受け取り、当該画像に表示情報を重畳させて表示しても良い。
【００４９】  画像処理装置１は、例えば、ステップＳ１１０１において、取得部２が継続的に画像を取得している場合は、ステップＳ１１０１〜Ｓ１１０６の処理を繰り返し実行する。ステップＳ１１０１において、取得部２が画像を取得しない場合は、図１１のフローチャートに示す画像処理を終了する。
【００５０】  実施例１による画像処理装置１においては、表示情報のユーザに対する視認性が向上させることが可能となる。例えば、マーカからマーカＩＤ取り出しに成功した場合には、マーカの幾何形状が既知となることを利用し、マーカの４隅形状以外にも、マーカ内部の座標位置が既知でかつ検出が可能な位置のうちの複数個を選択し、基準座標として並進ベクトルならびに回転ベクトルの算出に利用することで、並進ベクトルならびに回転ベクトルの算出誤差が低減させることが可能になる。これによって、表示情報が本来の表示されるべき位置に表示される為、表示情報の視認性が向上する。更に、サブピクセル精度の補間や、幾何学的特徴から誤差が小さくなる形状特徴に対して優先順位や重み付け係数を付与することで、並進ベクトルならびに回転ベクトルの算出誤差を低減させることが可能となる。
【００５１】  （実施例２）  図１２は、第２の実施形態による画像処理装置１の機能ブロック図である。画像処理装置１は、取得部２、認識部３、記憶部４、生成部５、抽出部６、算出部７、ならびに規定部９を有する。なお、画像処理装置１は、例えば、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）やＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）などの集積回路で構成しても良い。実施例２における規定部９以外の画像処理装置１の各機能部の機能は実施例１と同様である為、詳細な説明は省略する。
【００５２】  規定部９は、例えば、ワイヤードロジックによるハードウェア回路である。また、規定部９は、画像処理装置１で実行されるコンピュータプログラムにより実現される機能モジュールであっても良い。規定部９は、算出部７から表示位置の算出に用いられた交点、第１頂点、または、第２頂点の数を受け取る。規定部は、当該表示位置の算出に用いられた交点、第１頂点、または、第２頂点の数に基づいて表示情報を表示する並進ベクトルまたは回転ベクトルの信頼度を規定する。
【００５３】  図１３（ａ）は、第１頂点、第２頂点、交点を示した第１マーカの一例である。図１３（ｂ）は、第１頂点、第２頂点、交点を示した第２マーカの一例である。図１３（ａ）、図１３（ｂ）に示す通り、マーカのパターンによって第１頂点、第２頂点、交点の数が異なる為、並進ベクトルならびに回転ベクトルの算出精度はマーカＩＤに依存する。この為、並進ベクトルならびに回転ベクトルの算出精度を示す信頼度を算出することで、重要な表示情報には、並進ベクトルならびに回転ベクトルの算出精度が高いマーカを割り当てるなどの運用が可能となる。図１３（ｃ）は、信頼度を含むテーブルの一例である。図１３（ｃ）のテーブル９３に示す信頼度は、任意の方法で計算することが可能であるが、例えば、並進ベクトル、回転ベクトルの算出に使用する形状特徴の数、優先順位が高い形状特徴の数に基づいて規定することが出来る。図１３のテーブル９３においては、各形状特徴の個数に対して予め定めた信頼度係数を掛けた値を合計した数値を信頼度として例示いる。図１３（ａ）、図１３（ｂ）に示す、２つのマーカでは、４隅形状と多角形状の個数が同一である為、市松形状の個数の差が信頼度の差として表現されている。
【００５４】  実施例２における画像処理装置１においては、例えば、マーカＩＤに応じた並進ベクトル・回転ベクトルの信頼度（換言するとマーカの信頼度）を規定することが可能となる。これにより、ユーザに対して重要な表示情報には、並進ベクトルならびに回転ベクトルの算出精度が高いマーカを割り当てることが可能となる。
【００５５】  （実施例３）  図１４は、一つの実施形態による画像処理装置１として機能するコンピュータのハードウェア構成図である。図１４に示す通り、画像処理装置１は、コンピュータ１００、およびコンピュータ１００に接続する入出力装置（周辺機器）を含んで構成される。
【００５６】  コンピュータ１００は、プロセッサ１０１によって装置全体が制御されている。プロセッサ１０１には、バス１０９を介してＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１０２と複数の周辺機器が接続されている。なお、プロセッサ１０１は、マルチプロセッサであってもよい。また、プロセッサ１０１は、例えば、ＣＰＵ、ＭＰＵ（Ｍｉｃｒｏ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ Ｃｉｒｃｕｉｔ）、またはＰＬＤ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）である。更に、プロセッサ１０１は、ＣＰＵ、ＭＰＵ、ＤＳＰ、ＡＳＩＣ、ＰＬＤのうちの２以上の要素の組み合わせであってもよい。
【００５７】  ＲＡＭ１０２は、コンピュータ１００の主記憶装置として使用される。ＲＡＭ１０２には、プロセッサ１０１に実行させるＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１０２には、プロセッサ１０１による処理に必要な各種データが格納される。
【００５８】  バス１０９に接続されている周辺機器としては、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）１０３、グラフィック処理装置１０４、入力インタフェース１０５、光学ドライブ装置１０６、機器接続インタフェース１０７およびネットワークインタフェース１０８がある。
【００５９】  ＨＤＤ１０３は、内蔵したディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。ＨＤＤ１０３は、例えば、コンピュータ１００の補助記憶装置として使用される。ＨＤＤ１０３には、ＯＳのプログラム、アプリケーションプログラム、および各種データが格納される。なお、補助記憶装置としては、フラッシュメモリなどの半導体記憶装置を使用することも出来る。
【００６０】  グラフィック処理装置１０４には、モニタ１１０が接続されている。グラフィック処理装置１０４は、プロセッサ１０１からの命令にしたがって、各種画像をモニタ１１０の画面に表示させる。モニタ１１０としては、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）を用いた表示装置や液晶表示装置などがある。
【００６１】  入力インタフェース１０５には、キーボード１１１とマウス１１２とが接続されている。入力インタフェース１０５は、キーボード１１１やマウス１１２から送られてくる信号をプロセッサ１０１に送信する。なお、マウス１１２は、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
【００６２】  光学ドライブ装置１０６は、レーザ光などを利用して、光ディスク１１３に記録されたデータの読み取りを行う。光ディスク１１３は、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク１１３には、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＣＤ−Ｒ（Ｒｅｃｏｒｄａｂｌｅ）／ＲＷ（ＲｅＷｒｉｔａｂｌｅ）などがある。可搬型の記録媒体となる光ディスク１１３に格納されたプログラムは光学ドライブ装置１０６を介して画像処理装置１にインストールされる。インストールされた所定のプログラムは、画像処理装置１より実行可能となる。
【００６３】  機器接続インタフェース１０７は、コンピュータ１００に周辺機器を接続するための通信インタフェースである。例えば、機器接続インタフェース１０７には、メモリ装置１１４やメモリリーダライタ１１５を接続することが出来る。メモリ装置１１４は、機器接続インタフェース１０７との通信機能を搭載した記録媒体である。メモリリーダライタ１１５は、メモリカード１１６へのデータの書き込み、またはメモリカード１１６からのデータの読み出しを行う装置である。メモリカード１１６は、カード型の記録媒体である。
【００６４】  ネットワークインタフェース１０８は、ネットワーク１１７に接続されている。ネットワークインタフェース１０８は、ネットワーク１１７を介して、他のコンピュータまたは通信機器との間でデータの送受信を行う。
【００６５】  コンピュータ１００は、たとえば、コンピュータ読み取り可能な記録媒体に記録されたプログラムを実行することにより、上述した画像処理機能を実現する。コンピュータ１００に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことが出来る。上記プログラムは、１つのまたは複数の機能モジュールから構成することが出来る。例えば、図３に記載の取得部２、認識部３、生成部５、抽出部６、算出部７等の処理を実現させた機能モジュールからプログラムを構成することが出来る。なお、コンピュータ１００に実行させるプログラムをＨＤＤ１０３に格納しておくことができる。プロセッサ１０１は、ＨＤＤ１０３内のプログラムの少なくとも一部をＲＡＭ１０２にロードし、プログラムを実行する。また、コンピュータ１００に実行させるプログラムを、光ディスク１１３、メモリ装置１１４、メモリカード１１６などの可搬型記録媒体に記録しておくことも出来る。可搬型記録媒体に格納されたプログラムは、例えば、プロセッサ１０１からの制御により、ＨＤＤ１０３にインストールされた後、実行可能となる。またプロセッサ１０１が、可搬型記録媒体から直接プログラムを読み出して実行することも出来る。
【００６６】  また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。また、上記の実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することが出来る。
【符号の説明】
【００６７】  １    画像処理装置  ２    取得部  ３    認識部  ４    記憶部  ５    生成部  ６    抽出部  ７    算出部  ８    表示部  ９    規定部
【図１】
2015040657.tif 000006
【図２】
2015040657.tif 000007
【図３】
2015040657.tif 000008
【図４】
2015040657.tif 000009
【図５】
2015040657.tif 000010
【図６】
2015040657.tif 000011
【図７】
2015040657.tif 000012
【図８】
2015040657.tif 000013
【図９】
2015040657.tif 000014
【図１０】
2015040657.tif 000015
【図１１】
2015040657.tif 000016
【図１２】
2015040657.tif 000017
【図１３】
2015040657.tif 000018
【図１４】
2015040657.tif 000019
【手続補正書】
【提出日】平成28年6月16日(2016.6.16)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第１画素領域と第２画素領域を含む画像パターンにより、表示情報と前記表示情報を表示する為の基準位置を規定するマーカを含む画像を取得する取得部と、
前記第１画素領域と前記第２画素領域が縦方向に連接する第１連接領域における、前記第１画素領域と前記第２画素領域とを区分する第１境界線と、前記第１連接領域に対してそれぞれ点対称となる前記第１画素領域と前記第２画素領域の第２境界線とに基づいて規定される第１線分と、前記第１画素領域と前記第２画素領域が横方向に連接する第２連接領域における、前記第１画素領域と前記第２画素領域とを区分する第３境界線と、前記第２連接領域に対してそれぞれ点対称となる前記第１画素領域と前記第２画素領域とを区分する第４境界線とに基づいて規定される第２線分と、の交点、前記第１画素領域を含む前記マーカの外縁の４隅形状の頂点を示す第１頂点、または、複数の前記第１画素領域の頂点若しくは複数の前記第２画素領域の頂点を示す第２頂点、を抽出する抽出部と、
前記第１頂点、前記第２頂点または前記交点を前記基準位置として前記表示情報の表示位置を算出する算出部と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記第１線分は、前記第１境界線と前記第２境界線に平行かつ前記第１境界線と前記第２境界線の中点に基づいて規定され、
前記第２線分は、前記第３境界線と前記第４境界線に平行かつ前記第３境界線と前記第４境界線の中点に基づいて規定されることを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記第２頂点は、複数の前記第１画素領域が連接、または複数の前記第２画素領域が連接した多角形状の頂点を含むことを特徴とする請求項１または請求項２記載の画像処理装置。
【請求項４】
前記抽出部は、前記交点、前記第１頂点、前記第２頂点の順に優先度を付与し、
前記算出部は、前記優先度に基づいて前記表示位置を算出することを特徴とする請求項１ないし請求項３の何れか一項に記載の画像処理装置。
【請求項５】
前記抽出部は、前記第２頂点を形成する長辺と短辺を抽出し、前記短辺が長い順に複数の前記第２頂点に対して前記優先度を付与することを特徴とする請求項３記載の画像処理装置。
【請求項６】
前記抽出部は、複数の前記第１画素領域と、複数の前記第２画素領域同士が互いに対向する市松形状の中心点を前記交点として抽出することを特徴とする請求項１ないし請求項５の何れか一項に記載の画像処理装置。
【請求項７】
前記抽出部は、複数の前記市松形状の縁辺を抽出し、前記縁辺が長い順に複数の前記交点に対して前記優先度を付与することを特徴とする請求項３または請求項４記載の画像処理装置。
【請求項８】
前記取得部が取得するマーカからマーカＩＤを認識する認識部と、
前記マーカＩＤから、マーカパターンを生成する生成部と、を更に含み、
前記抽出部は、前記マーカパターンに含まれる前記４隅形状、前記市松形状、または前記多角形状と、前記マーカに含まれる前記４隅形状、前記市松形状、または前記多角形状とを対応付けて、前記第１頂点、前記第２頂点、または前記交点を抽出することを特徴とする請求項７記載の画像処理装置。
【請求項９】
前記表示位置の算出に用いられた前記交点、前記第１頂点、または、前記第２頂点の数に基づいて、前記表示情報を表示する並進ベクトルまたは回転ベクトルの信頼度を規定する規定部、
を更に備えることを特徴とする請求項２乃至請求項８の何れか一項に記載の画像処理装置。
【請求項１０】
第１画素領域と第２画素領域を含む画像パターンにより、表示情報と前記表示情報を表示する為の基準位置を規定するマーカを含む画像を取得し、
前記第１画素領域と前記第２画素領域が縦方向に連接する第１連接領域における、前記第１画素領域と前記第２画素領域とを区分する第１境界線と、前記第１連接領域に対してそれぞれ点対称となる前記第１画素領域と前記第２画素領域の第２境界線とに基づいて規定される第１線分と、前記第１画素領域と前記第２画素領域が横方向に連接する第２連接領域における、前記第１画素領域と前記第２画素領域とを区分する第３境界線と、前記第２連接領域に対してそれぞれ点対称となる前記第１画素領域と前記第２画素領域とを区分する第４境界線とに基づいて規定される第２線分と、の交点、前記第１画素領域を含む前記マーカの外縁の４隅形状の頂点を示す第１頂点、または、複数の前記第１画素領域の頂点若しくは複数の前記第２画素領域の頂点を示す第２頂点、を抽出し、
前記第１頂点、前記第２頂点または前記交点を前記基準位置として前記表示情報の表示位置を算出する、
ことを特徴とする画像処理方法。
【請求項１１】
コンピュータに、
第１画素領域と第２画素領域を含む画像パターンにより、表示情報と前記表示情報を表示する為の基準位置を規定するマーカを含む画像を取得する処理と、
前記第１画素領域と前記第２画素領域が縦方向に連接する第１連接領域における、前記第１画素領域と前記第２画素領域とを区分する第１境界線と、前記第１連接領域に対してそれぞれ点対称となる前記第１画素領域と前記第２画素領域の第２境界線とに基づいて規定される第１線分と、前記第１画素領域と前記第２画素領域が横方向に連接する第２連接領域における、前記第１画素領域と前記第２画素領域とを区分する第３境界線と、前記第２連接領域に対してそれぞれ点対称となる前記第１画素領域と前記第２画素領域とを区分する第４境界線とに基づいて規定される第２線分と、の交点、前記第１画素領域を含む前記マーカの外縁の４隅形状の頂点を示す第１頂点、または、複数の前記第１画素領域の頂点若しくは複数の前記第２画素領域の頂点を示す第２頂点、を抽出する処理と、
前記第１頂点、前記第２頂点または前記交点を前記基準位置として前記表示情報の表示位置を算出する処理と、
を実行させることを特徴とする画像処理プログラム。
【国際調査報告】
2015040657.tif 000020
2015040657.tif 000021