JP6256475B2 - 画像処理装置、画像処理方法および画像処理プログラム - Google Patents

画像処理装置、画像処理方法および画像処理プログラム Download PDF

Info

Publication number
JP6256475B2
JP6256475B2 JP2015537434A JP2015537434A JP6256475B2 JP 6256475 B2 JP6256475 B2 JP 6256475B2 JP 2015537434 A JP2015537434 A JP 2015537434A JP 2015537434 A JP2015537434 A JP 2015537434A JP 6256475 B2 JP6256475 B2 JP 6256475B2
Authority
JP
Japan
Prior art keywords
boundary line
marker
vertex
pixel
area
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
JP2015537434A
Other languages
English (en)
Other versions
JPWO2015040657A1 (ja
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2015040657A1 publication Critical patent/JPWO2015040657A1/ja
Application granted granted Critical
Publication of JP6256475B2 publication Critical patent/JP6256475B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/12Edge-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/24Aligning, centring, orientation detection or correction of the image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20112Image segmentation details
    • G06T2207/20164Salient point detection; Corner detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30204Marker
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/24Aligning, centring, orientation detection or correction of the image
    • G06V10/245Aligning, centring, orientation detection or correction of the image by locating a pattern; Special marks for positioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes

Description

本発明は、例えば、画像上の任意の位置に表示情報を表示する画像処理装置、画像処理方法および画像処理プログラムに関する。
近年、情報通信技術の発展に伴い、現実空間(外界)を撮像した画像にコンピュータを用いて視覚的な表示情報を付加して表示する、拡張現実感(Augmented Reality:AR)による画像処理技術の開発が行われている。拡張現実に関する技術におけるインタフェースは、任意の場所に固定されたカメラ、または自由に移動が可能なカメラを用いて、ユーザの眼前の物体に付与されるマーカ(2次元コードと称しても良い)を撮影することにより、マーカを含む画像を取得した後、その物体に関連する付加的な情報であり、かつマーカに対応付けられる表示情報をディスプレイ上に表示する機能を具備している。
拡張現実感による画像処理方法は、具体的には、マーカに対応する表示情報を、撮像したマーカの4隅から決定される基準位置と当該基準位置に基づく物理座標系に基づいて、カメラのディスプレイ(プレビュー画面と称しても良い)や、カメラが搭載されるPC、または、携帯端末のディスプレイに重畳表示することを特徴としている。当該画像処理方法により、表示情報と物体の表示位置を関連付けることが可能となる。
拡張現実技術を利用し、電子機器等の障害発生時における障害箇所の特定、及び、ユーザの障害修復作業等の現場作業を支援する機能が実現されている。例えば、作業対象物となる物体または、当該物体付近に特定の形状特徴を有するマーカを付与し、マーカに含まれる各種情報に基づいて、カメラが撮影する画像上にリアルタイムで表示情報を重畳表示する。例えば、コピー機の紙詰まり障害の修復作業支援において、紙詰まり発生位置に対応付けられたコピー機の内部映像及び操作手順を、作業対象の物体となるコピー機に重畳表示する技術が提案されている。
ここで、従来の拡張現実感の画像処理技術を用いない従来の手法による現場作業においては、以下の様な問題が存在し得ることが想定されている。
(1−1)作業対象箇所や手順を記載した大量の紙媒体の作業手順書を作業現場に持って行き、作業者が必要な個所を自分で選択して参照すると共に、作業手順書の記載と現場の状況を見比べながら作業を実施する。この為、必要箇所の選択に時間がかかる、間違った箇所を選択する・見比べる時に見間違いが発生するなどの作業ミスが発生する。
(1−2)作業結果は、紙媒体のチェックシートへ記入して記録する。記録内容を電子化する作業負荷は大きいことから、紙媒体のチェックシートのまま作業結果が保存されることになる為、作業結果の整理や解析が難しくなる。
上述の問題点に関して、拡張現実感を用いた画像処理技術を上述の現場作業に対して適用することで、以下の改善効果が期待される。
(2−1)電子化したマニュアルを格納した画像処理装置のカメラを用いて作業対象の物体を撮影するだけで、その作業対象の物体に関する作業箇所や手順を、ディスプレイの画像(カメラプレビュー画像と称しても良い)への表示情報(オブジェクトアイコンと称しても良い)の重畳表示という形でリアルタイムに表示して提示する。これにより、ユーザの作業時間の短縮と作業ミスの低減を図ることが可能となる。
(2−2)作業結果の記録作業は、作業対象の物体に関連付けて表示されている表示情報を、例えば、手指で押下して選択することで、作業結果の入力用画面に切り替えて実施する。作業結果の記録完了時において、既に作業結果は電子化されている為、作業結果のデータの整理や編集が容易になる。この様に、拡張現実感を用いた画像処理技術においては、作業現場における様々な作業効率化が期待されている。
「拡張現実感を利用した原子力発電プラントの解体支援手法の提案と評価」、日本バーチャルリアリティ学会論文誌、Vol.13、No.2、pp.289−300、2008
現状のマーカの認識に基づく拡張現実感を用いる画像処理技術における表示情報の表示動作は、例えば、画像に含まれるマーカの認識に成功している間は、当該画像内のマーカの認識位置や姿勢を基準とし、マーカの基準位置に対する相対位置に基づいて表示情報を表示する。なお、マーカの基準位置は、上述の通り、例えば、マーカの4隅から決定される。マーカの基準位置に合わせて表示情報の表示位置が規定される為、マーカの基準位置の検出精度を向上させることが、表示情報のユーザに対する視認性を確保する上で重要となる。本発明は、表示情報のユーザに対する視認性が向上する画像処理装置を提供することを目的とする。
本発明が開示する画像処理装置は、第1画素領域と第2画素領域を含む画像パターンにより、表示情報と前記表示情報を表示する為の基準位置を規定するマーカを含む画像を取得する取得部と、前記第1画素領域と前記第2画素領域が縦方向に連接する第1連接領域における、前記第1画素領域と前記第2画素領域とを区分する第1境界線と、前記第1連接領域に対してそれぞれ点対称となる前記第1画素領域と前記第2画素領域の第2境界線とに基づいて規定される第1線分と、前記第1画素領域と前記第2画素領域が横方向に連接する第2連接領域における、前記第1画素領域と前記第2画素領域とを区分する第3境界線と、前記第2連接領域に対してそれぞれ点対称となる前記第1画素領域と前記第2画素領域とを区分する第4境界線とに基づいて規定される第2線分と、の交点、前記第1画素領域を含む前記マーカの外縁の4隅形状の頂点を示す第1頂点、または、複数の前記第1画素領域の頂点若しくは複数の前記第2画素領域の頂点を示す第2頂点、を抽出する抽出部と、前記第1頂点、前記第2頂点または前記交点を前記基準位置として前記表示情報の表示位置を算出する算出部と、を備え、前記第1線分は、前記第1境界線と前記第2境界線に平行かつ前記第1境界線と前記第2境界線の中点に基づいて規定され、前記第2線分は、前記第3境界線と前記第4境界線に平行かつ前記第3境界線と前記第4境界線の中点に基づいて規定される。
なお、本発明の目的及び利点は、例えば、請求項におけるエレメント及び組み合わせにより実現され、かつ達成されるものである。また、上記の一般的な記述及び下記の詳細な記述の何れも、例示的かつ説明的なものであり、請求項のように、本発明を制限するものではないことを理解されたい。
本明細書に開示される画像処理装置では、表示情報のユーザに対する視認性が向上させることが可能となる。
回転ベクトルと並進ベクトルの定義図である。 (a)は、マーカの一例である。(b)は、量子化誤差により4隅形状が不明瞭となるマーカの概念図である。(c)は、撮像ボケにより4隅形状が不明瞭となるマーカの概念図である 第1の実施形態による画像処理装置1の機能ブロック図である。 (a)は、4隅形状の概念図である。(b)は、市松形状の概念図である。(c)は、多角形状の概念図である。 (a)は、入力画像における多角形状の概念図である。(b)は、入力画像における市松形状の概念図である。 (a)は、市松形状における第1線分と第2線分の概念図である。(b)は、その他の形状における第1線分と第2線分の概念図である。 形状特徴と優先順位を含むテーブルの一例である。 市松形状における直線の長さを基準とする優先順位を含むテーブルの一例である。 多角形状における直線の長さを基準とする優先順位を含むテーブルの一例である。 形状特徴、優先順位、ならびに重み付け係数を含むテーブルの一例である。 画像処理装置1による画像処理のフローチャートである。 第2の実施形態による画像処理装置1の機能ブロック図である。 (a)は、第1頂点、第2頂点、交点を示した第1マーカの一例である。(b)は、第1頂点、第2頂点、交点を示した第2マーカの一例である。(c)は、信頼度を含むテーブルの一例である。 一つの実施形態による画像処理装置1として機能するコンピュータのハードウェア構成図である。
まず、従来技術における問題の所在について説明する。なお、当該問題の所在は、本発明者らが従来技術を仔細に検討した結果として新たに見出したものであり、従来は知られていなかったものである。本発明者らの鋭意検証によって、上述の表示情報の表示位置がリアルタイムで変動する拡張現実感による画像処理において以下の事項が明らかになった。表示情報を表示する際の位置姿勢情報は、例えば、マーカの4隅形状の角(頂点と称しても良い)の位置の座標を基準座標として算出することが出来る。具体的には、マーカを撮影するカメラの撮影方向を基準にした3次元座標系(x、y、z)におけるマーカの中心位置の座標を表す並進ベクトル(Tx、Ty、Tz)と、並進ベクトルそれぞれの軸に対するマーカの回転角度を表す回転ベクトル(Rx、Ry、Rz)に基づいて位置姿勢情報を算出することが出来る。なお、マーカの回転角度は、例えば、マーカの中心位置を原点とした場合において、当該原点が並進ベクトルTx、Ty、Tzの軸に対してどの程度回転しているのかを示している。図1は、回転ベクトルと並進ベクトルの定義図である。図1に示される通り、任意の位置の原点0から、マーカに対して垂直に並進ベクトルTzが規定され、当該並進ベクトルTzに対応する並進ベクトルTx、Tyがそれぞれ規定される。また、並進ベクトルTx、Ty、Tzの回転方向に対して、回転ベクトルRx、Ry、Rzがそれぞれ規定される。換言すると、マーカの形状を基準とした3次元座標系(X、Y、Z)(但し、マーカ中心を原点,各辺の方向をX軸,Y軸,マーカの法線方向をZ軸とする)の上の点PMn=(Xn、Yn、Zn)を、カメラの撮影方向を基準にした3次元座標系から見た時の点PCn=(xn、yn、zn)は、次式を用いて表現することが出来る。
(数1)
PCn = R(θ、θ、θz)・PMn+T
但し、上述の(数1)において、
T=(Tx、Ty、Tz)
R(θ、θ、θ)=Rx(θx,)・Ry(θy)・Rz(θz)であり、更に、
Figure 0006256475
であるものとする。また、回転ベクトル(Rx、Ry、Rz)は、上記の回転行列R(θ x、θy、θz)から算出することが出来る。ここで、R(θ、θ、θz)は、上述の(数1)において、連立方程式を用いて算出することが出来る。例えば、マーカの4隅を用いる場合、4隅の各点は同一平面上にあること(Zn=0)を前提とすることで、1枚の画像中の4点分の点の座標が分かれば連立方程式を解くことが可能となる。この時、PMn=(Xn、Yn、Zn)、PCn=(xn、yn、zn)は、マーカの基準位置に基づいて一意的に係数をして定められる。この様に、並進ベクトルならびに回転ベクトルはマーカの基準位置に基づいて算出される。
上述の並進ベクトルならびに回転ベクトルの算出精度は、マーカの4隅形状の頂点の座標(位置)の検出精度に依存する。本発明者らの鋭意検証により、マーカの4隅形状の頂点の位置は、量子化誤差やカメラの撮像ボケによる撮影画像の不鮮明性の影響により検出誤差が大きくなる為、マーカの4隅形状の頂点の座標の検出精度を向上させることは、容易では無いことが明らかになった。図2(a)は、マーカの一例である。図2(b)は、量子化誤差により4隅形状が不明瞭となるマーカの概念図である。図2(c)は、撮像ボケにより4隅形状が不明瞭となるマーカの概念図である。図2(a)に示すマーカは、例えば、縦横8モジュールの正方形の形状であり、外周1モジュール分は黒色領域で固定されている。また、マーカ内部の縦横6モジュールの白色領域と黒色領域のパターンによって、例えば、当該マーカに一意に対応付けられるマーカIDが表現される。なお、後述する実施例においては、例えば、図2(a)に示すマーカ以外にも、様々な形状のマーカを適用することが可能である。図2(b)ならびに図2(c)の何れにおいても、量子化誤差または撮像ボケにより、マーカを構成する白色領域と黒色領域の画素の境界線が不明瞭となり、図2(a)に示すマーカの4隅形状の頂点の位置と検出位置が一致しない課題が生じる。例えば、白色領域と黒色領域に境界線を規定する場合、例えば、所定の閾値の画素値(例えば、画素値=125)を用いて、閾値以下を満たす画素に基づいて境界線を規定する。量子化誤差や撮像ボケが発生しない場合は、本来のマーカの境界線の位置に、境界線が規定される。しかしながら、量子化誤差や撮像ボケが発生すると、例えば、黒色領域が見かけ上、膨張することなり、マーカの境界線は、外側に規定されることになる。この場合、並進ベクトルならびに回転ベクトルの算出精度が低下する為、表示情報の表示位置が不安定になるという課題が生じる。特に、回転ベクトルの算出精度の低下が顕著になる場合が多く、表示情報がマーカ中心付近を基点に上下左右に揺れたり、ガタついて表示される現象が発生し、表示情報の視認性を劣化させる課題が生じる。換言すると、表示情報のユーザに対する視認性が向上する画像処理装置を提供する為には、量子化誤差や撮像ボケの影響を低減させる必要がある。
上述の表示情報の視認性を劣化させる課題に対して、本発明者らは、比較例として以下の手法を検討した。例えば、量子化誤差または撮像ボケに対する4隅形状の頂点座標の検出誤差を低減させるため、4隅形状付近の画素間を補間した上で、マーカの検出処理を行い、マーカを構成する画素間隔以下の精度(サブピクセル精度)で4隅形状の頂点座標を求める方法が考えられる。しかしながら、当該方法を用いても量子化誤差または撮像ボケによる誤差の低減量には限界があり、効果は十分なものではない。また、他の比較例として、並進ベクトルまたは回転ベクトルを時系列に沿って一時的に保存した上で、平滑化フィルタ、または、パーティクルフィルタ等の予測フィルタ処理を用いることによって、揺れやガタつきを低減させる方法が考えられる。しかしながら、予測フィルタ処理は、単なる予測処理であり、本来の正しい値に対する精度の観点から課題が生じる。更に、撮影画面内でのマーカの移動速度に急激な変化が発生した場合には、予測フィルタ処理が当該移動速度に追従しない為に、却って大きな誤差を発生させるという課題も生じる。また、他の比較例として、マーカを撮像する撮像レンズならびに撮像素子の解像度を高解像度化させる方法が考えられる。但し、リアルタイムで変動する拡張現実感による画像処理おいて、高解像度の画像の画像処理を行うことは演算負荷の観点から現実的ではない。
上述の本発明者らの鋭意検証によって、新たに見出された事項を考慮しつつ、以下に、一つの実施形態による画像処理装置、画像処理方法及び画像処理プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例は、開示の技術を限定するものではない。
(実施例1)
図3は、第1の実施形態による画像処理装置1の機能ブロック図である。画像処理装置1は、取得部2、認識部3、記憶部4、生成部5、抽出部6、算出部7ならびに、表示部8を有する。なお、画像処理装置1は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの集積回路で構成しても良い。
取得部2は、例えば、ワイヤードロジックによるハードウェア回路である。また、取得部2は、画像処理装置1で実行されるコンピュータプログラムにより実現される機能モジュールであっても良い。更に、取得部2は、図示しない通信部を有しており、通信回線を介して様々な外部装置と双方向にデータの送受信を行うことが可能である。取得部2は、後述する表示部8が表示する表示情報(オブジェクト情報と称しても良い)と、当該表示情報を表示する基準位置を規定するマーカを含む画像(なお、当該画像を入力画像と称しても良い)を取得する。ここで、表示情報とは、例えば、作業対象となる物体に対応付けられる作業内容等を含む情報である。また、取得部2が取得するマーカの形状は、例えば、図2(a)に示す形状のマーカの形状であれば良い。取得部2は、当該画像を、例えば、外部装置の一例となる図示しない撮像素子(カメラと称しても良い)から取得する。撮像素子は、例えば、CCD(Charge Coupled Device)やCMOS(Complementary Metal Oxide Semiconductor)カメラなどの撮像デバイスである。また、画像処理装置1は、撮像素子を画像処理装置1の構成要素の一部とすることが出来る。取得部2は取得した画像を認識部3に出力する。また、取得部2は取得した画像を必要に応じて表示部8に出力する。
認識部3は、例えば、ワイヤードロジックによるハードウェア回路である。また、認識部3は、画像処理装置1で実行されるコンピュータプログラムにより実現される機能モジュールであっても良い。認識部3は入力画像を取得部2から受け取り、当該入力画像中のマーカの位置を検出する。認識部3は、例えば、入力画像の左上端を原点、横方向をx軸、縦方向をy軸の座標軸における2次元座標系における、マーカの4隅形状の位置の2次元座標を検出する。
認識部3は、例えば、マーカの4隅形状の頂点の2次元座標を基準として、マーカに対応するマーカIDを認識する。認識部3におけるマーカの認識処理においては、任意のアルゴリズムを用いてマーカIDを認識しても良いし、後述する記憶部4に必要に応じて予め記憶されている複数のマーカを参照し、テンプレートマッチングを用いてマーカIDを認識しても良い。なお、認識部3におけるマーカの4隅形状の座標の検出精度は、並進ベクトルまたは回転ベクトルの算出に用いる場合よりも原理上低くても良い為、量子化誤差や撮像ボケの影響を受けずにマーカID(例えば、マーカID=13)を認識することが出来る。認識部3は、認識したマーカIDを生成部5に出力する。なお、認識部3は、例えば、記憶部4を参照し、マーカIDに対応する表示情報を認識し、当該表示情報を表示部8へ出力する。
記憶部4は、例えば、フラッシュメモリ(flash memory)などの半導体メモリ素子、または、HDD(Hard Disk Drive)、光ディスクなどの記憶装置である。なお、記憶部は、上記の種類の記憶装置に限定されるものではなく、RAM(Random Access Memory)、ROM(Read Only Memory)であってもよい。記憶部4には、例えば、認識部3がテンプレートマッチングに用いるマーカや、マーカに対応付けられるマーカID、当該マーカIDに対応する表示情報等が記憶される。また、表示情報には、基準位置に基づいて表示される、表示部8の表示面に対する相対的な位置関係のデータが含まれる。なお、記憶部4は、必ずしも画像処理装置1に含まれる必要はない。例えば、画像処理装置1に設けられる図示しない通信部を用いて通信回線を介することによって、記憶部4を画像処理装置1以外の外部装置に設けることも可能である。また、画像処理装置1の各機能部が必要に応じて有する、図示しないキャッシュまたはメモリに記憶部4が記憶するデータを格納しても良い。
生成部5は、例えば、ワイヤードロジックによるハードウェア回路である。また、生成部5は、画像処理装置1で実行されるコンピュータプログラムにより実現される機能モジュールであっても良い。生成部5は、マーカIDを認識部3から受け取る。生成部5は、マーカID(例えば、マーカID=13)に対応するマーカのマーカパターンを生成する。なお、生成部5が生成するマーカパターンは、例えば、図2(a)に示すマーカの形状と同等であれば良い。また、生成部5は、例えば、記憶部4にマーカIDに対応するマーカが格納されている場合は、記憶部4からマーカを取得し、取得したマーカをマーカパターンとしても良い。更に、生成部5は、マーカパターンを生成する際、例えば、マーカの大きさ(例えば、1モジュール=1画素)、または、階調(例えば、黒色領域=0、白色領域=255)を正規化したマーカパターンを生成しても良い。生成部5は、生成したマーカパターンを抽出部6へ出力する。
抽出部6は、例えば、ワイヤードロジックによるハードウェア回路である。また、抽出部6は、画像処理装置1で実行されるコンピュータプログラムにより実現される機能モジュールであっても良い。抽出部6は、生成部5からマーカパターンを受け取る。抽出部6は、マーカパターンから、特定の形状特徴が有する点の位置を、マーカパターン上の基準位置として決定する。なお、特定の形状特徴は、例えば、4隅形状、市松形状、多角形状が該当する。図4(a)は、4隅形状の概念図である。図4(b)は、市松形状の概念図である。図4(c)は、多角形状の概念図である。図4(a)ないし図4(c)において、例えば、黒色領域を第1画素領域、白色領域を第2画素領域と称しても良い。なお、必要に応じて(例えば、マーカが付与される物体の背景色に応じて)、第1画素領域を白色領域に反転し、第2画素領域を黒色領域に反転しても良い。図4(a)においては、4隅形状は、第1画素領域から構成されるマーカの外縁の4隅の形状となる。更に、図4(a)に示す様に4隅形状のそれぞれに第1頂点が設定される。なお、第1頂点は基準位置の1つに相当する。図4(b)においては、市松形状は、複数の第1画素領域と、複数の第2画素領域が互いに対向する形状となる。また、当該市松形状の中心点が交点として設定される。なお、当該交点は基準位置の1つに相当する。図4(c)においては、多角形状においては、複数の第1画素領域が任意の数、ならびに、任意の形状で連接している。なお、図4(c)に示す多角形状は、一例であり、様々な連接形状で多角形状は構成される。また、図4(c)に示す通り、多角形状の各頂点には第2頂点が設定される。なお、第2頂点は基準位置の1つに相当する。ここで、第2頂点は、多角形状の2辺が交差する点であることが理解できる。第2頂点を形成する多角形状の2辺の線分において、短い方の線分を短辺、長い方の線分を長辺と称しても良い。上述の通り、図4(a)ないし図4(c)において、第1頂点、第2頂点、交点は、基準位置に対応する。この為、記憶部4に記憶される、表示情報に含まれる相対的な位置関係のデータは、第1頂点、第2頂点、交点を含ませても良い。
実施例1において、取得部2が取得する画像に含まれるマーカは、例えば、図2(a)に示す通り、単位サイズの正方形(モジュール)を縦横に積み重ねた形の矩形のマーカである。当該マーカでは、モジュールの白色領域と黒色領域の組み合わせパターンの違いを用いてマーカIDを表現している。この為、マーカに格納するマーカIDが異なる場合、マーカ内部のモジュールの白色領域と黒色領域の組み合わせパターンも異なる。ここで、当該マーカにおいては、外周の4隅形状の他に、マーカ内部には、上述の市松形状または多角形状の2種類の形状が形成される。4隅形状、多角形状、市松形状が構成する第1頂点、第2頂点、交点の座標位置は、認識部3がマーカIDを認識出来れば一意に決定することが可能である為、画像に含まれるマーカからも対応する基準位置を検出することが出来る。この為、実施例1においては、第1頂点、第2頂点、交点を並進ベクトルまたは回転ベクトルを算出する際の基準位置として使用することが出来る。これにより、基準座標が増加する為、後述する算出部7による並進ベクトルならびに回転ベクトルの算出誤差を低減させることが可能となる。この理由について以下に説明する。
並進ベクトルや回転ベクトルの算出においては、例えば、最小二乗法を用いることが出来る。最小二乗法を用いることにより、各基準位置での誤差を数式で表し、この誤差の総和が最小となるように並進ベクトルや回転ベクトルを算出することが出来る。例えば、算出部7は、N個の基準位置を用いて並進ベクトルまたは回転ベクトルを算出する場合には、マーカ基準の座標系での各基準位置の理想的な点PM0nに対して、画像上のカメラ基準の座標系での各基準位置の測定された点PCnに対して、次式で表現される誤差Eが最小となるとなる様に並進ベクトルまたは回転ベクトルを算出することが出来る。
(数2)

Figure 0006256475

上述の(数2)を用いることで、並進ベクトルならびに回転ベクトルの算出誤差を低減させることが可能となる。
抽出部6は、マーカパターン上の基準位置に対応する、入力画像に含まれるマーカの座標位置を決定する。例えば、抽出部6は、マーカパターンの中心を原点とし、原点を基点するx軸とy軸の座標軸の平面座標系から、入力画像の座標系への写像変換(透視変換と称しても良い)を、マーカの4隅形状の座標(第1頂点)を基準にして求めて、この写像変換を用いて他の基準位置を入力画像の座標系へ投影することで決定することが出来る。これにより、入力画像のマーカの回転や傾きを補正することが出来る。なお、入力画像に含まれるマーカは、必要に応じてマーカ部位のみに対して切り抜き処理が実施されても良い。
抽出部6は、マーカパターンにおける第1頂点、第2頂点、ならびに交点に対応する、入力画像のマーカにおける第1頂点、第2頂点、交点を抽出する。抽出部6は、入力画像のマーカの第1頂点、第2頂点、交点を抽出する為に、マーカパターンと入力画像のマーカそれぞれの4隅形状、市松形状、多角形状の位置と形状を比較し、対応する入力画像のマーカの4隅形状、市松形状、多角形状を特定する。抽出部6は、入力画像に含まれるマーカから特定した4隅形状、市松形状、多角形状から、入力画像における基準位置となる第1頂点、第2頂点、交点を抽出する。以下に、抽出部6による、入力画像における基準位置となる第1頂点、第2頂点、交点の抽出方法の詳細について説明する。
第1頂点、第2頂点、交点の位置は、例えば、4隅形状、多角形状、市松形状を構成する外縁の輪郭直線の交点として求めることが出来る。当該輪郭直線は、画素の階調値が白色領域と黒色領域の間の特定値(一般的には、2値化閾値と称される)に近い輪郭点を通過する近似直線として求めることが出来る。この特定値は、予め定めておくか画像の状態に応じて適宜決定することが出来るが、撮像ボケや量子化誤差によって適正値が変化してしまう場合がある。また、同様に撮像ボケや量子化誤差によって輪郭直線の正しい位置が不明瞭になってしまう場合が有る。図5(a)は、入力画像における多角形状の概念図である。図5(b)は、入力画像における市松形状の概念図である。図5(a)ならびに図5(b)は、量子化誤差または撮像ボケの影響を受けており、多角形状または市松形状の外縁の輪郭が不明瞭な状態を示している。図5(a)ならびに図5(b)においては、上述の特定値が適正値に対して一致しなくなる場合について説明する。先ず、特定値が適正値に対して高く(明るく)設定された場合の輪郭点を点線で示す。図5(a)に示す、多角形状の場合、輪郭点は、本来の外縁の輪郭直線の位置より外側に検出されてしまうため、輪郭点に基づいて規定される輪郭直線も本来の輪郭位置より外側に検出される。その結果、入力画像における多角形状に基づいて規定される本来の第2頂点の位置も外側にずれて検出される。この現象は、4隅形状に基づいて規定される第1頂点においても同様に発生する。一方、図5(b)に示す、市松形状の場合、輪郭点は市松形状の中心点を境に点対称の方向にずれて検出される。マーカ内部の近傍領域の撮像ボケ量や量子化誤差量は、ほぼ同等であるため、このずれ幅もほぼ同等となる為、輪郭点に基づいて規定される輪郭直線は、ずれ量が相殺される様に規定される。この為、市松形状に基づいて規定される交点は本来の位置に検出されることになる。この技術的特徴の詳細について以下に説明する。
市松形状に基づいて規定される交点は、換言すると以下の通りに表現される。先ず、例えば、市松模様の黒色領域を第1画素領域として規定し、白色領域を第2画素領域として規定する。更に、当該市松形状において、第1画素領域と第2画素領域が縦方向に連接する領域を第1連接領域とする(例えば、図4(b)の右側半分の領域)。また、当該第1連接領域における第1画素領域と第2画素領域の間の境界線を第1境界線する。次に、第1連接領域に対してそれぞれ点対称となる第1画素領域と第2画素領域(例えば、図4(b)の左側半分の領域)の間の境界線を第2境界線する。更に、第1境界線と第2境界線に基づいて規定される線分を第1線分とする。ここで、第1線分は、例えば、第1境界線と第2境界線に平行かつ、第1境界線と第2境界線の中点に基づいて規定されれば良い。
更に、市松形状において、第1画素領域と第2画素領域が横方向に連接する領域を第2連接領域とする(例えば、図4(b)の上側半分の領域)。また、当該第2連接領域における第1画素領域と第2画素領域の間の境界線を第3境界線とする。次に、第2連接領域に対してそれぞれ点対称となる第1画素領域と第2画素領域(例えば、図4(b)の下側半分の領域)の間の境界線を第4境界線とする。更に、第3境界線と第4境界線に基づいて規定される線分を第2線分とする。ここで、第2線分は、例えば、第3境界線と第4境界線に平行かつ、第3境界線と第4境界線の中点に基づいて規定されれば良い。この場合において、市松形状に基づいて規定される交点は、第1線分と第2線分の交点と同様となる。
図6(a)は、市松形状における第1線分と第2線分の概念図である。図6(a)に示す市松形状においては、第1境界線と第2境界線は、それぞれ量子化誤差や撮像ボケの影響により、本来の境界線よりも、例えば、外側に規定されることになる。しかしながら、第1線分は、第1境界線と第2境界線に平行かつ、第1境界線と第2境界線の中点に基づいて規定される為、第1境界線と第2境界線の量子化誤差や撮像ボケの影響は互いに相殺されることなる。この技術的特徴は、第2線分も同様に発生する。市松形状の交点は、量子化誤差や撮像ボケの影響が相殺された第1線分と第2線分の交点により規定される為、基準位置を正確に規定することが出来る。この為、表示情報が本来の表示されるべき位置に表示される為、表示情報の視認性が向上する。
実施例1において、上述の第1連接領域における第1境界線、当該第1連接領域に対してそれぞれ点対称となる第1画素領域と第2画素領域の第2境界線、第1境界線と第2境界線に基づいて規定される線分を第1線分ならびに、第2線分に基づいて規定される交点であれば、市松形状である必要はない。図6(b)は、その他の形状における第1線分と第2線分の概念図である。図6(b)には、第1連接領域と第2連接領域が離散している状態が示されている。しかしながら、図6(b)から理解出来る通り、第1線分は、第1境界線と第2境界線に平行かつ、第1境界線と第2境界線の中点に基づいて規定される為、第1境界線と第2境界線の量子化誤差や撮像ボケの影響は互いに相殺されることなる。この技術的特徴は、第2線分も同様に発生する。当該形状の交点は、量子化誤差や撮像ボケの影響が相殺された第1線分と第2線分の交点により規定される為、基準位置を正確に規定することが出来る。この為、表示情報が本来の表示されるべき位置に表示される為、表示情報の視認性が向上するまた、図6(a)においては、第1境界線と第2境界線は交点を基準に近接している為、撮像ボケや量子化誤差の影響を大幅に削減させることが可能になる。
更に、抽出部6は、入力画像の基準位置を基点にして、入力画像においてサブピクセル精度の補間処理を行うことで、基準位置の検出精度を向上させることが出来る。また、抽出部6は、基準位置に対して補間処理後の位置のずれが大きい座標は、その座標位置近傍の画像画質が悪く、誤差が大きいと判断してこの時点で当該座標排除しても良い。なお、排除する誤差範囲は、予め任意の範囲で定めておけば良い。抽出部6は、市松形状または多角形状がマーカ内部に複数存在する場合において、後述する予め定めた形状特徴毎および形状特徴間の基準から判定した優先順位に基づいて、並進ベクトルまたは回転ベクトルの算出に使用する基準位置を選択しても良い。抽出部6は、選択した基準位置を算出部7へ出力する。
上述の通り、抽出部6は、市松形状または多角形状がマーカ内部に複数存在する場合に、複数の基準位置に対して優先順位を付与することが出来る。市松形状または多角形状の外縁の輪郭直線を求める場合において、直線が長い方が輪郭直線算出に用いることが出来る画素情報(輪郭点)が増加する為、その検出精度が高くなる特徴を有する。これは、市松形状、多角形状の何れの場合にも共通した事項となる。この為、抽出部6は、それぞれの形状特徴の中での優先順位の決定において、当該特徴を利用することが出来る。具体的には、抽出部6は、市松形状または多角形状を形成する輪郭直線(縁辺と称しても良い)のうち、最も短い輪郭直線の長さを比較し、当該直線(基準辺と称しても良い)が長いものから順に優先順位を高くして使用することで、並進ベクトルまたは回転ベクトルの算出誤差を低減させることが可能となる。なお、4隅形状は、基本的には、多角形状の中で最も短い直線(短辺と称しても良い)の長さが最大になったものと解釈することが可能である。図7は、形状特徴と優先順位を含むテーブルの一例である。図7のテーブル70に示される通り、優先順位は、市松形状、4隅形状、多角形状の順に付与される。なお、4隅形状は、マーカ周辺に存在する他の物体や模様の影響を受け易い場合がある為、マーカ内部の形状(多角形状)よりも誤差が大きくなる場合も発生し得る。この様な場合が想定される場合には、必要に応じて4隅形状の優先順位を多角形状よりも下げても良い。
市松形状または多角形状を形成する直線において、最も短い直線の長さは原理上1モジュール分の長さとなり、この長さの直線は、マーカの特徴上、比較的多く存在する。この為、1つの市松形状または多角形状を基準にしたのみでは、優先順位を十分に付与することが難しい場合も想定される。この場合には、更に、市松形状または多角形状の各形状を形成する直線の長さの和を用い、この和が大きいものから順に優先順位を高くして使用することで、並進ベクトルまたは、回転ベクトルの算出誤差を低減させることが可能となる。図8は、市松形状における直線の長さを基準とする優先順位を含むテーブルの一例である。図9は、多角形状における直線の長さを基準とする優先順位を含むテーブルの一例である。図8のテーブル80、図9のテーブル90にそれぞれ示される通り、実施例1に例示するマーカにおいては、直線の長さは市松形状の場合で1〜5モジュール分の5通りとなり、多角形状の場合で1〜6モジュール分の6通りとなり、これらの組み合わせによって優先順位が付与される。なお、多角形状の場合は、直線が少なくとも4本有る為、組み合わせ数が非常に多くなる。この為、テーブル80においては、直線の長さを1モジュール分の長さ、または2モジュール以上の長さの2通りに簡単化した場合について例示をしている。また、テーブル80ならびにテーブル90においては、最短の直線の長さが長い順に優先順位を付与している。更に、最短の直線の長さが等しい場合には、直線の長さの和が長い順に優先順位を付与している。
ここで、図9のテーブル90において、例えば、No6(直線1=1、直線2=6)よりも、No14(直線1=3、直線2=2)の方が、優先順位が高い技術的な理由について説明する。輪郭直線を形成する輪郭点の検出位置は、撮像ボケや量子化誤差の他に、輪郭直線上(当該輪郭直線は、マーカの両端まで延伸しているものとする)に位置する他の多角形状や市松形状の影響も受けることになる。この為、他の多角形状や市松形状が近くに存在する場合には、輪郭直線自体の検出精度も劣化する可能性が有る。例えば、図9のテーブル90のNo6のモジュール長(1モジュール×6モジュール)の輪郭直線で構成される多角形状の輪郭直線上に、他の多角形状が存在する場合について説明する。この場合、輪郭直線が、1モジュール長しかない場合、他の多角形状の輪郭点に影響を受けて、輪郭点が全体として凸形状に検出されてしまい直線状に並ぶ部分が殆ど無くなってしまう場合がある。この場合、輪郭直線の精度が低下してしまう。一方,6モジュール長の輪郭直線の場合、両端の影響は、1モジュール長の輪郭直線と同等ではあるが、その間に2モジュール長以上の直線状の区間が有る為、この区間の効果によって輪郭直線を1モジュール長の場合よりも高精度に決定することが可能となる。また、6モジュール長の輪郭直線の場合、輪郭点の数が多く、輪郭直線を求める際に余裕が有るため,他の多角形状の影響を受けている輪郭点を排除して輪郭直線を求めるなど処理を行うことも可能である。この様な理由により、最短となる輪郭直線が長い方が、優先順位が高く付与される。
図3の算出部7は、例えば、ワイヤードロジックによるハードウェア回路である。また、算出部7は、画像処理装置1で実行されるコンピュータプログラムにより実現される機能モジュールであっても良い。算出部7は、抽出部6から基準位置を受け取る。算出部7は、例えば、上述の(数1)または(数2)を用いて並進ベクトルならびに回転ベクトルを算出する。算出部7は、算出した並進ベクトルならびに回転ベクトルを表示部8へ出力する。また、算出部7における変形例としてマーカの4隅から規定されるマーカの中心位置を基準位置としても良い。この場合、当該中心位置と、交点、第1頂点または、第2頂点との相対位置を算出し、当該相対位置に基づいて並進ベクトルならびに回転ベクトルを算出しても良い。また、この場合において、交点、第1頂点または、第2頂点が実質的な基準位置と称しても良い。算出部7は、更に、検出誤差に基づいた上述の優先順位を利用し、各基準位置に異なる重み付け係数を付与した上で最小二乗法を用いることが可能である。これにより、誤差の小さい形状特徴の基準座標が優先的に使用されることになり、並進ベクトルまたは回転ベクトルの算出誤差の低減を図ることが可能となる。具体的には、算出部7は、各基準座標に対する重み付けをWnとした場合、次式で表現される誤差Eが最小となる様に並進ベクトルまたは回転ベクトルを算出することが出来る。
(数3)

Figure 0006256475

上述の(数3)を用いることで、優先順位に応じた並進ベクトルならびに回転ベクトルの算出誤差を低減させることが可能となる。
図10は、形状特徴、優先順位、ならびに重み付け係数を含むテーブルの一例である。図10のテーブル91においては、図8のテーブル80ならびに図9のテーブル90で付与されている優先順位が高い順に、重み付け係数を高く付与している。また、各形状特徴間においては、基準座標の誤差を最も抑制することが可能となる市松形状を優先して重み付け係数を高く付与し、次に4隅形状の重み付け係数を高く付与している。また、算出部7は、演算処理を軽減させる為に、全ての基準座標を用いるのではなく、優先順位が高い順に選択的に基準座標を用いても良い。算出部7は、例えば、14個の基準座標を用いてに並進ベクトルまたは回転ベクトルを算出することが出来る。
図3の表示部8は、例えば、液晶ディスプレイまたは有機エレクトロルミネッセンスディスプレイなどの表示デバイスである。表示部8は、表示情報を認識部3から受け取り、並進ベクトルならびに回転ベクトルを算出部7から受け取る。表示部8は、並進ベクトルならびに回転ベクトルに基づいて表示情報を表示する。なお、表示部8は必要に応じて取得部2から画像を受け取り、当該画像に表示情報を重畳させて表示しても良い。
図11は、画像処理装置1による画像処理のフローチャートである。取得部2は、取得部2は、表示部8が表示する表示情報と、当該表示情報を表示する基準位置を規定するマーカを含む画像(なお、当該画像を入力画像と称しても良い)を取得する(ステップS1101)。取得部2が取得するマーカの形状は、例えば、図2(a)に示す形状のマーカの形状であれば良い。取得部2は、当該画像を、例えば、外部装置の一例となる図示しない撮像素子(カメラと称しても良い)から取得する。取得部2は取得した画像を認識部3に出力する。また、取得部2は取得した画像を必要に応じて表示部8に出力する。
認識部3は入力画像を取得部2から受け取り、当該入力画像中のマーカの位置を検出する。認識部3は、例えば、入力画像の左上端を原点、横方向をx軸、縦方向をy軸の座標軸における2次元座標系における、マーカの4隅形状の位置の2次元座標を検出する。認識部3は、例えば、マーカの4隅形状の頂点の2次元座標を基準として、マーカに対応するマーカIDを認識する(ステップS1102)。認識部3は、マーカIDを認識出来なかった場合(ステップS1102−No)は、画像処理装置1は画像処理を終了する。認識部3がマーカIDを認識出来た場合(ステップS1102−Yes)は、認識したマーカIDを生成部5に出力する。なお、認識部3は、例えば、記憶部4を参照し、マーカIDに対応する表示情報を認識し、当該表示情報を表示部8へ出力する。
生成部5は、マーカIDを認識部3から受け取る。生成部5は、マーカID(例えば、マーカID=13)に対応するマーカのマーカパターンを生成する(ステップS1103)。なお、生成部5が生成するマーカパターンは、例えば、図2(a)に示すマーカの形状と同等であれば良い。更に、生成部5は、マーカパターンを生成する際、例えば、マーカの大きさ(例えば、1モジュール=1画素)、または、階調(例えば、黒色領域=0、白色領域=255)を正規化したマーカパターンを生成しても良い。生成部5は、生成したマーカパターンを抽出部6へ出力する。
抽出部6は基準位置を抽出する(ステップS1104)。具体的には、抽出部6は、生成部5からマーカパターンを受け取る。抽出部6は、マーカパターンから、特定の形状特徴が有する点の位置を、マーカパターン上の基準位置として決定する。なお、特定の形状特徴は、例えば、4隅形状、市松形状、多角形状が該当する。抽出部6は、マーカパターン上の基準位置に対応する、入力画像に含まれるマーカの座標位置を決定する。例えば、抽出部6は、マーカパターンの中心を原点とし、原点を基点するx軸とy軸の座標軸の平面座標系から、入力画像の座標系への写像変換(透視変換と称しても良い)を、マーカの4隅形状の座標(第1頂点)を基準にして求めて、この写像変換を用いて他の基準位置を入力画像の座標系へ投影することで決定することが出来る。これにより、入力画像のマーカの回転や傾きを補正することが出来る。なお、入力画像に含まれるマーカは、必要に応じてマーカ部位のみに対して切り抜き処理が実施されても良い。
抽出部6は、マーカパターンにおける第1頂点、第2頂点、ならびに交点に対応する、入力画像のマーカにおける第1頂点、第2頂点、交点を抽出する。抽出部6は、入力画像のマーカの第1頂点、第2頂点、交点を抽出する為に、マーカパターンと入力画像のマーカそれぞれの4隅形状、市松形状、多角形状の位置と形状を比較し、対応する入力画像のマーカの4隅形状、市松形状、多角形状を特定する。抽出部6は、入力画像に含まれるマーカから特定した4隅形状、市松形状、多角形状から、入力画像における基準位置となる第1頂点、第2頂点、交点を抽出する。抽出部6は、抽出した基準位置を算出部7へ出力する。
抽出部6は、ステップS1104において、入力画像の基準位置を基点にして、入力画像においてサブピクセル精度の補間処理を行うことで、基準位置の検出精度を向上させることが出来る。また、抽出部6は、基準位置に対して補間処理後の位置のずれが大きい座標は、その座標位置近傍の画像画質が悪く、誤差が大きいと判断してこの時点で当該座標排除しても良い。なお、排除する誤差範囲は、予め任意の範囲で定めておけば良い
更に、抽出部6は、ステップS1104において、抽出部6は、市松形状または多角形状がマーカ内部に複数存在する場合において、後述する予め定めた形状特徴毎および形状特徴間の基準から判定した優先順位に基づいて、並進ベクトルまたは回転ベクトルの算出に使用する基準位置を選択しても良い。この場合、抽出部6は、選択した基準位置を算出部7へ出力する。
算出部7は、抽出部6から基準位置を受け取る。算出部7は、例えば、上述の(数1)、(数2)または(数3)を用いて並進ベクトルまたは回転ベクトルを算出する(ステップS1105)。算出部7は、算出した並進ベクトルならびに回転ベクトルを表示部8へ出力する。
表示部8は、表示情報を認識部3から受け取り、並進ベクトルならびに回転ベクトルを算出部7から受け取る。表示部8は、並進ベクトルならびに回転ベクトルに基づいて表示情報を表示する(S1106)。なお、表示部8は必要に応じて取得部2から画像を受け取り、当該画像に表示情報を重畳させて表示しても良い。
画像処理装置1は、例えば、ステップS1101において、取得部2が継続的に画像を取得している場合は、ステップS1101〜S1106の処理を繰り返し実行する。ステップS1101において、取得部2が画像を取得しない場合は、図11のフローチャートに示す画像処理を終了する。
実施例1による画像処理装置1においては、表示情報のユーザに対する視認性が向上させることが可能となる。例えば、マーカからマーカID取り出しに成功した場合には、マーカの幾何形状が既知となることを利用し、マーカの4隅形状以外にも、マーカ内部の座標位置が既知でかつ検出が可能な位置のうちの複数個を選択し、基準座標として並進ベクトルならびに回転ベクトルの算出に利用することで、並進ベクトルならびに回転ベクトルの算出誤差が低減させることが可能になる。これによって、表示情報が本来の表示されるべき位置に表示される為、表示情報の視認性が向上する。更に、サブピクセル精度の補間や、幾何学的特徴から誤差が小さくなる形状特徴に対して優先順位や重み付け係数を付与することで、並進ベクトルならびに回転ベクトルの算出誤差を低減させることが可能となる。
(実施例2)
図12は、第2の実施形態による画像処理装置1の機能ブロック図である。画像処理装置1は、取得部2、認識部3、記憶部4、生成部5、抽出部6、算出部7、ならびに規定部9を有する。なお、画像処理装置1は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの集積回路で構成しても良い。実施例2における規定部9以外の画像処理装置1の各機能部の機能は実施例1と同様である為、詳細な説明は省略する。
規定部9は、例えば、ワイヤードロジックによるハードウェア回路である。また、規定部9は、画像処理装置1で実行されるコンピュータプログラムにより実現される機能モジュールであっても良い。規定部9は、算出部7から表示位置の算出に用いられた交点、第1頂点、または、第2頂点の数を受け取る。規定部は、当該表示位置の算出に用いられた交点、第1頂点、または、第2頂点の数に基づいて表示情報を表示する並進ベクトルまたは回転ベクトルの信頼度を規定する。
図13(a)は、第1頂点、第2頂点、交点を示した第1マーカの一例である。図13(b)は、第1頂点、第2頂点、交点を示した第2マーカの一例である。図13(a)、図13(b)に示す通り、マーカのパターンによって第1頂点、第2頂点、交点の数が異なる為、並進ベクトルならびに回転ベクトルの算出精度はマーカIDに依存する。この為、並進ベクトルならびに回転ベクトルの算出精度を示す信頼度を算出することで、重要な表示情報には、並進ベクトルならびに回転ベクトルの算出精度が高いマーカを割り当てるなどの運用が可能となる。図13(c)は、信頼度を含むテーブルの一例である。図13(c)のテーブル93に示す信頼度は、任意の方法で計算することが可能であるが、例えば、並進ベクトル、回転ベクトルの算出に使用する形状特徴の数、優先順位が高い形状特徴の数に基づいて規定することが出来る。図13のテーブル93においては、各形状特徴の個数に対して予め定めた信頼度係数を掛けた値を合計した数値を信頼度として例示いる。図13(a)、図13(b)に示す、2つのマーカでは、4隅形状と多角形状の個数が同一である為、市松形状の個数の差が信頼度の差として表現されている。
実施例2における画像処理装置1においては、例えば、マーカIDに応じた並進ベクトル・回転ベクトルの信頼度(換言するとマーカの信頼度)を規定することが可能となる。これにより、ユーザに対して重要な表示情報には、並進ベクトルならびに回転ベクトルの算出精度が高いマーカを割り当てることが可能となる。
(実施例3)
図14は、一つの実施形態による画像処理装置1として機能するコンピュータのハードウェア構成図である。図14に示す通り、画像処理装置1は、コンピュータ100、およびコンピュータ100に接続する入出力装置(周辺機器)を含んで構成される。
コンピュータ100は、プロセッサ101によって装置全体が制御されている。プロセッサ101には、バス109を介してRAM(Random Access Memory)102と複数の周辺機器が接続されている。なお、プロセッサ101は、マルチプロセッサであってもよい。また、プロセッサ101は、例えば、CPU、MPU(Micro Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、またはPLD(Programmable Logic
Device)である。更に、プロセッサ101は、CPU、MPU、DSP、ASIC、PLDのうちの2以上の要素の組み合わせであってもよい。
RAM102は、コンピュータ100の主記憶装置として使用される。RAM102には、プロセッサ101に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM102には、プロセッサ101による処理に必要な各種データが格納される。
バス109に接続されている周辺機器としては、HDD(Hard Disk Drive)103、グラフィック処理装置104、入力インタフェース105、光学ドライブ装置106、機器接続インタフェース107およびネットワークインタフェース108がある。
HDD103は、内蔵したディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。HDD103は、例えば、コンピュータ100の補助記憶装置として使用される。HDD103には、OSのプログラム、アプリケーションプログラム、および各種データが格納される。なお、補助記憶装置としては、フラッシュメモリなどの半導体記憶装置を使用することも出来る。
グラフィック処理装置104には、モニタ110が接続されている。グラフィック処理装置104は、プロセッサ101からの命令にしたがって、各種画像をモニタ110の画面に表示させる。モニタ110としては、CRT(Cathode Ray Tube)を用いた表示装置や液晶表示装置などがある。
入力インタフェース105には、キーボード111とマウス112とが接続されている。入力インタフェース105は、キーボード111やマウス112から送られてくる信号をプロセッサ101に送信する。なお、マウス112は、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
光学ドライブ装置106は、レーザ光などを利用して、光ディスク113に記録されたデータの読み取りを行う。光ディスク113は、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク113には、DVD(Digital Versatile Disc)、DVD−RAM、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)などがある。可搬型の記録媒体となる光ディスク113に格納されたプログラムは光学ドライブ装置106を介して画像処理装置1にインストールされる。インストールされた所定のプログラムは、画像処理装置1より実行可能となる。
機器接続インタフェース107は、コンピュータ100に周辺機器を接続するための通信インタフェースである。例えば、機器接続インタフェース107には、メモリ装置114やメモリリーダライタ115を接続することが出来る。メモリ装置114は、機器接続インタフェース107との通信機能を搭載した記録媒体である。メモリリーダライタ115は、メモリカード116へのデータの書き込み、またはメモリカード116からのデータの読み出しを行う装置である。メモリカード116は、カード型の記録媒体である。
ネットワークインタフェース108は、ネットワーク117に接続されている。ネットワークインタフェース108は、ネットワーク117を介して、他のコンピュータまたは通信機器との間でデータの送受信を行う。
コンピュータ100は、たとえば、コンピュータ読み取り可能な記録媒体に記録されたプログラムを実行することにより、上述した画像処理機能を実現する。コンピュータ100に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことが出来る。上記プログラムは、1つのまたは複数の機能モジュールから構成することが出来る。例えば、図3に記載の取得部2、認識部3、生成部5、抽出部6、算出部7等の処理を実現させた機能モジュールからプログラムを構成することが出来る。なお、コンピュータ100に実行させるプログラムをHDD103に格納しておくことができる。プロセッサ101は、HDD103内のプログラムの少なくとも一部をRAM102にロードし、プログラムを実行する。また、コンピュータ100に実行させるプログラムを、光ディスク113、メモリ装置114、メモリカード116などの可搬型記録媒体に記録しておくことも出来る。可搬型記録媒体に格納されたプログラムは、例えば、プロセッサ101からの制御により、HDD103にインストールされた後、実行可能となる。またプロセッサ101が、可搬型記録媒体から直接プログラムを読み出して実行することも出来る。
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。また、上記の実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することが出来る。
1 画像処理装置
2 取得部
3 認識部
4 記憶部
5 生成部
6 抽出部
7 算出部
8 表示部
9 規定部

Claims (10)

  1. 第1画素領域と第2画素領域を含む画像パターンにより、表示情報と前記表示情報を表示する為の基準位置を規定するマーカを含む画像を取得する取得部と、
    前記第1画素領域と前記第2画素領域が縦方向に連接する第1連接領域における、前記第1画素領域と前記第2画素領域とを区分する第1境界線と、前記第1連接領域に対してそれぞれ点対称となる前記第1画素領域と前記第2画素領域の第2境界線とに基づいて規定される第1線分と、前記第1画素領域と前記第2画素領域が横方向に連接する第2連接領域における、前記第1画素領域と前記第2画素領域とを区分する第3境界線と、前記第2連接領域に対してそれぞれ点対称となる前記第1画素領域と前記第2画素領域とを区分する第4境界線とに基づいて規定される第2線分と、の交点、前記第1画素領域を含む前記マーカの外縁の4隅形状の頂点を示す第1頂点、または、複数の前記第1画素領域の頂点若しくは複数の前記第2画素領域の頂点を示す第2頂点、を抽出する抽出部と、
    前記第1頂点、前記第2頂点または前記交点を前記基準位置として前記表示情報の表示位置を算出する算出部と、
    を備え
    前記第1線分は、前記第1境界線と前記第2境界線に平行かつ前記第1境界線と前記第2境界線の中点に基づいて規定され、
    前記第2線分は、前記第3境界線と前記第4境界線に平行かつ前記第3境界線と前記第4境界線の中点に基づいて規定されることを特徴とする画像処理装置。
  2. 前記第2頂点は、複数の前記第1画素領域が連接、または複数の前記第2画素領域が連接した多角形状の頂点を含むことを特徴とする請求項1記載の画像処理装置。
  3. 前記抽出部は、前記交点、前記第1頂点、前記第2頂点の順に優先度を付与し、
    前記算出部は、前記優先度に基づいて前記表示位置を算出することを特徴とする請求項1または請求項2記載の画像処理装置。
  4. 前記抽出部は、前記第2頂点を形成する長辺と短辺を抽出し、前記短辺が長い順に複数の前記第2頂点に対して優先度を付与することを特徴とする請求項2記載の画像処理装置。
  5. 前記抽出部は、複数の前記第1画素領域と、複数の前記第2画素領域同士が互いに対向する市松形状の中心点を前記交点として抽出することを特徴とする請求項1乃至請求項4の何れか一項に記載の画像処理装置。
  6. 前記抽出部は、複数の市松形状の縁辺を抽出し、前記縁辺が長い順に複数の前記交点に対して優先度を付与することを特徴とする請求項2または請求項3記載の画像処理装置。
  7. 前記取得部が取得するマーカからマーカIDを認識する認識部と、
    前記マーカIDから、マーカパターンを生成する生成部と、を更に含み、
    前記抽出部は、前記マーカパターンに含まれる前記4隅形状、前記市松形状、または前記多角形状と、前記マーカに含まれる前記4隅形状、前記市松形状、または前記多角形状とを対応付けて、前記第1頂点、前記第2頂点、または前記交点を抽出することを特徴とする請求項6記載の画像処理装置。
  8. 前記表示位置の算出に用いられた前記交点、前記第1頂点、または、前記第2頂点の数に基づいて、前記表示情報を表示する並進ベクトルまたは回転ベクトルの信頼度を規定する規定部、
    を更に備えることを特徴とする請求項1乃至請求項7の何れか一項に記載の画像処理装置。
  9. 第1画素領域と第2画素領域を含む画像パターンにより、表示情報と前記表示情報を表示する為の基準位置を規定するマーカを含む画像を取得し、
    前記第1画素領域と前記第2画素領域が縦方向に連接する第1連接領域における、前記第1画素領域と前記第2画素領域とを区分する第1境界線と、前記第1連接領域に対してそれぞれ点対称となる前記第1画素領域と前記第2画素領域の第2境界線とに基づいて規定される第1線分と、前記第1画素領域と前記第2画素領域が横方向に連接する第2連接領域における、前記第1画素領域と前記第2画素領域とを区分する第3境界線と、前記第2連接領域に対してそれぞれ点対称となる前記第1画素領域と前記第2画素領域とを区分する第4境界線とに基づいて規定される第2線分と、の交点、前記第1画素領域を含む前記マーカの外縁の4隅形状の頂点を示す第1頂点、または、複数の前記第1画素領域の頂点若しくは複数の前記第2画素領域の頂点を示す第2頂点、を抽出し、
    前記第1頂点、前記第2頂点または前記交点を前記基準位置として前記表示情報の表示位置を算出し、
    前記第1線分は、前記第1境界線と前記第2境界線に平行かつ前記第1境界線と前記第2境界線の中点に基づいて規定され、
    前記第2線分は、前記第3境界線と前記第4境界線に平行かつ前記第3境界線と前記第4境界線の中点に基づいて規定されることを特徴とする画像処理方法。
  10. コンピュータに、
    第1画素領域と第2画素領域を含む画像パターンにより、表示情報と前記表示情報を表示する為の基準位置を規定するマーカを含む画像を取得する処理と、
    前記第1画素領域と前記第2画素領域が縦方向に連接する第1連接領域における、前記第1画素領域と前記第2画素領域とを区分する第1境界線と、前記第1連接領域に対してそれぞれ点対称となる前記第1画素領域と前記第2画素領域の第2境界線とに基づいて規定される第1線分と、前記第1画素領域と前記第2画素領域が横方向に連接する第2連接領域における、前記第1画素領域と前記第2画素領域とを区分する第3境界線と、前記第2連接領域に対してそれぞれ点対称となる前記第1画素領域と前記第2画素領域とを区分する第4境界線とに基づいて規定される第2線分と、の交点、前記第1画素領域を含む前記マーカの外縁の4隅形状の頂点を示す第1頂点、または、複数の前記第1画素領域の頂点若しくは複数の前記第2画素領域の頂点を示す第2頂点、を抽出する処理と、
    前記第1頂点、前記第2頂点または前記交点を前記基準位置として前記表示情報の表示位置を算出する処理と、
    を実行させ、
    前記第1線分は、前記第1境界線と前記第2境界線に平行かつ前記第1境界線と前記第2境界線の中点に基づいて規定され、
    前記第2線分は、前記第3境界線と前記第4境界線に平行かつ前記第3境界線と前記第4境界線の中点に基づいて規定されることを特徴とする画像処理プログラム。
JP2015537434A 2013-09-20 2013-09-20 画像処理装置、画像処理方法および画像処理プログラム Active JP6256475B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/005597 WO2015040657A1 (ja) 2013-09-20 2013-09-20 画像処理装置、画像処理方法および画像処理プログラム

Publications (2)

Publication Number Publication Date
JPWO2015040657A1 JPWO2015040657A1 (ja) 2017-03-02
JP6256475B2 true JP6256475B2 (ja) 2018-01-10

Family

ID=52688346

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015537434A Active JP6256475B2 (ja) 2013-09-20 2013-09-20 画像処理装置、画像処理方法および画像処理プログラム

Country Status (4)

Country Link
US (1) US9704246B2 (ja)
EP (1) EP3048555B1 (ja)
JP (1) JP6256475B2 (ja)
WO (1) WO2015040657A1 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6759951B2 (ja) * 2015-11-09 2020-09-23 ぺんてる株式会社 学習支援プログラム、学習支援装置、学習ツール生成用帳面および学習ツール生成方法
US20190054644A1 (en) * 2016-02-24 2019-02-21 Zünd Skandinavien Aps CNC Flatbed Cutting Machine, Its Method of Operation, and a Graphics Sheet with a Fiducial that Indicates the Orientation of the Graphics Sheet
JP2018005091A (ja) * 2016-07-06 2018-01-11 富士通株式会社 表示制御プログラム、表示制御方法および表示制御装置
CN107909567B (zh) * 2017-10-31 2022-02-15 华南理工大学 数字图像的细长型连通区域提取方法
CN109344832B (zh) * 2018-09-03 2021-02-02 北京市商汤科技开发有限公司 图像处理方法及装置、电子设备和存储介质
JP7248490B2 (ja) * 2019-04-24 2023-03-29 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置、デバイスの位置および姿勢の推定方法
US11151792B2 (en) 2019-04-26 2021-10-19 Google Llc System and method for creating persistent mappings in augmented reality
US11163997B2 (en) * 2019-05-05 2021-11-02 Google Llc Methods and apparatus for venue based augmented reality
CN110910409B (zh) * 2019-10-15 2023-10-27 平安科技(深圳)有限公司 一种灰度图像处理方法、装置和计算机可读存储介质
CN111508031B (zh) * 2020-04-10 2023-11-21 中国科学院自动化研究所 特征自识别标定板
CN116957524B (zh) * 2023-09-21 2024-01-05 青岛阿斯顿工程技术转移有限公司 一种技术转移过程中人才信息智能管理方法及系统

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4119900A (en) * 1973-12-21 1978-10-10 Ito Patent-Ag Method and system for the automatic orientation and control of a robot
JP2940736B2 (ja) * 1992-03-26 1999-08-25 三洋電機株式会社 画像処理装置及びこの画像処理装置における歪み補正方法
JP4147719B2 (ja) 2000-04-07 2008-09-10 マックス株式会社 釘打ち機のコンタクトアーム
JP3423676B2 (ja) * 2000-07-19 2003-07-07 キヤノン株式会社 仮想対象物操作装置および仮想対象物操作方法
JP2001195597A (ja) 2000-12-11 2001-07-19 Mitsubishi Electric Corp 画像処理装置
JP4532982B2 (ja) 2004-05-14 2010-08-25 キヤノン株式会社 配置情報推定方法および情報処理装置
US20070077987A1 (en) * 2005-05-03 2007-04-05 Tangam Gaming Technology Inc. Gaming object recognition
US9526587B2 (en) * 2008-12-31 2016-12-27 Intuitive Surgical Operations, Inc. Fiducial marker design and detection for locating surgical instrument in images
CA2566260C (en) * 2005-10-31 2013-10-01 National Research Council Of Canada Marker and method for detecting said marker
JP5432714B2 (ja) * 2007-08-03 2014-03-05 学校法人慶應義塾 構図解析方法、構図解析機能を備えた画像装置、構図解析プログラム及びコンピュータ読み取り可能な記録媒体
JP2010160056A (ja) 2009-01-08 2010-07-22 Fuji Xerox Co Ltd 位置計測装置およびプログラム
JP2010287174A (ja) * 2009-06-15 2010-12-24 Dainippon Printing Co Ltd 家具シミュレーション方法、装置、プログラム、記録媒体
JP5062497B2 (ja) * 2010-03-31 2012-10-31 アイシン・エィ・ダブリュ株式会社 風景画像認識を用いた自車位置検出システム
JP5472463B2 (ja) * 2010-06-30 2014-04-16 富士通株式会社 画像処理プログラムおよび画像処理装置
JP5573618B2 (ja) * 2010-11-12 2014-08-20 富士通株式会社 画像処理プログラムおよび画像処理装置
JP2011134343A (ja) * 2011-02-24 2011-07-07 Nintendo Co Ltd 画像処理プログラム、画像処理装置、画像処理システム、および画像処理方法

Also Published As

Publication number Publication date
EP3048555A1 (en) 2016-07-27
US20160180536A1 (en) 2016-06-23
WO2015040657A1 (ja) 2015-03-26
EP3048555B1 (en) 2020-07-15
US9704246B2 (en) 2017-07-11
EP3048555A4 (en) 2017-03-08
JPWO2015040657A1 (ja) 2017-03-02

Similar Documents

Publication Publication Date Title
JP6256475B2 (ja) 画像処理装置、画像処理方法および画像処理プログラム
JP6417702B2 (ja) 画像処理装置、画像処理方法および画像処理プログラム
TWI419081B (zh) 提供擴增實境的標籤追蹤方法、系統與電腦程式產品
JP6716996B2 (ja) 画像処理プログラム、画像処理装置、及び画像処理方法
JP6842039B2 (ja) カメラ位置姿勢推定装置、方法およびプログラム
JP6089722B2 (ja) 画像処理装置、画像処理方法および画像処理プログラム
US20150243016A1 (en) Orientation estimation apparatus, orientation estimation method, and computer-readable recording medium storing orientation estimation computer program
US9141873B2 (en) Apparatus for measuring three-dimensional position, method thereof, and program
US20050151759A1 (en) Systems and methods for directly generating a view using a layered approach
US20150310617A1 (en) Display control device and display control method
JP2017106959A (ja) 投影装置、投影方法及び投影用コンピュータプログラム
EP3633606B1 (en) Information processing device, information processing method, and program
JP2017191576A (ja) 情報処理装置、情報処理装置の制御方法およびプログラム
JP7188201B2 (ja) 画像処理装置、画像処理方法、及び画像処理プログラム
CN105631927A (zh) 点云套索选取系统及方法
JP6031819B2 (ja) 画像処理装置、画像処理方法
JP6880618B2 (ja) 画像処理プログラム、画像処理装置、及び画像処理方法
JP5935435B2 (ja) 画像処理装置、画像処理方法
JP4649559B2 (ja) 3次元物体認識装置、並びに3次元物体認識プログラム及びこれが記録されたコンピュータ読み取り可能な記録媒体
US10146331B2 (en) Information processing system for transforming coordinates of a position designated by a pointer in a virtual image to world coordinates, information processing apparatus, and method of transforming coordinates
JP6762570B2 (ja) 画像処理装置、画像処理方法、及び画像処理プログラム
JP7020240B2 (ja) 認識装置、認識システム、プログラムおよび位置座標検出方法
JP7003617B2 (ja) 推定装置、推定方法、及び推定プログラム
EP3352136B1 (en) Crossing point detector, camera calibration system, crossing point detection method, camera calibration method, and recording medium
JP6579659B2 (ja) 光源推定装置及びプログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170829

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171023

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: 20171107

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171120

R150 Certificate of patent or registration of utility model

Ref document number: 6256475

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150