JP5837404B2 - 画像処理装置、画像処理方法 - Google Patents

画像処理装置、画像処理方法 Download PDF

Info

Publication number
JP5837404B2
JP5837404B2 JP2011254927A JP2011254927A JP5837404B2 JP 5837404 B2 JP5837404 B2 JP 5837404B2 JP 2011254927 A JP2011254927 A JP 2011254927A JP 2011254927 A JP2011254927 A JP 2011254927A JP 5837404 B2 JP5837404 B2 JP 5837404B2
Authority
JP
Japan
Prior art keywords
image
camera
point cloud
message
cloud data
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
JP2011254927A
Other languages
English (en)
Other versions
JP2013109624A (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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2011254927A priority Critical patent/JP5837404B2/ja
Publication of JP2013109624A publication Critical patent/JP2013109624A/ja
Application granted granted Critical
Publication of JP5837404B2 publication Critical patent/JP5837404B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、カメラの位置と姿勢を、このカメラが撮像した画像を用いて求める技術に関するものである。
拡張現実感(Augmented Reality:AR)とは、現実環境を撮影した画像に、現実環境に対応する画像や文字などの情報を付加する技術である。ユーザは、現実環境の画像と付加画像が合成された画像を見ることにより、あたかも付加画像として表示されている物体または画像が実際に存在しているかのような感覚を得ることができる。
ARの応用は、教育、娯楽、広告、ナビゲーション、医療など多岐にわたるが、その応用の一つに設備プラントの保守や建築の支援があげられる。
近年、海外で設備プラントの保守や建設の計画が進む一方、熟練者不足のため、経験の浅いユーザの割合が増加すると予測されている。そこで、ARを応用して作業者を支援する技術が期待されている。ARをプラントの保守や建設現場で応用することにより、機器の状態や内部構造を可視化し、状態把握を補助することができる。これにより、効率的に作業を支援することができる。
ARにおいて最も重要な課題の1つは、現実空間と仮想空間との位置合わせである。すなわち、撮像に用いるカメラの位置や姿勢をいかに正確かつロバストに求めるかが重要である。この課題に対処するため、様々な方法が開発されている。
カメラの位置や姿勢を推定する第1の方法として、GPSおよび電子コンパスを用いた方法がある。下記特許文献1には、GPSと電子コンパスと焦点距離に基づき、カメラの地図情報空間上での位置を取得し、3D−CAD上での視野空間を求め、その視野空間中に存在する構造物の属性情報をカメラで得た画像に重畳表示することが記載されている。
カメラの位置や姿勢を推定する第2の方法として、下記非特許文献1、特許文献2、特許文献3に記載されているものがある。これらの文献では、情報提供したい箇所に2次元コードを記述した表示物をあらかじめ設置し、表示物上の2次元コードをカメラで読み取ってその位置を認識し、その位置に情報を提示する。
カメラの位置や姿勢を推定する第3の方法として、モデルベースの方法が提案されている。モデルベースの方法では、3次元CADによって設計した物体のように形状が既知である物体に対して仮想カメラを用いて画像を生成する。以下、既知の形状から生成される画像をCG画像と呼ぶ。生成されたCG画像がカメラで撮像されたカメラ画像と類似していれば、そのCG画像を生成するときに用いた仮想カメラの位置や姿勢が、実際のカメラの位置や姿勢に対応していると考えられる。
下記非特許文献2、特許文献4、特許文献5には、モデルベース手法の例として、撮像装置からの2次元的な画像情報に基づいて、物体の頂点やエッジなどの3次元的な幾何特徴を抽出し、これを物体の幾何モデルと照合することにより、物体の位置や姿勢を決定する方法が提案されている。さらに下記非特許文献3では、カメラ画像とCG画像との類似度として、照明変化に対してロバストな相互情報量を用いた方法が提案されている。
特開平10−267671号公報 特開2002−228442号公報 特開2000−041173号公報 特開平07−146121号公報 特開平08−005333号公報
X.Zhang, S.Fronz, N.Navab: Visual Marker Detection and Decoding in AR Systems: A Comparative Study, Proc. of International Symposium on Mixed and Augmented Reality (ISMAR’02), 2002. V. Lepetit, L. Vacchetti, D. Thalmann, and P. Fua: Fully Automated and Stable Registration for Augmented Reality Applications, proc. of International Symposium on Mixed and Augmented Reality (ISMAR’03), 2003. A. Dame, E. Marchand: Accurate real-time tracking using mutual information, proc. of International Symposium on Mixed and Augmented Reality (ISMAR’10), 2010, pp. 47-56 (2010).
特許文献1に記載されている技術では、プラント保守などのように屋内においてARを実現する場合に、作業場所が屋内であるためGPSによる位置把握ができないという課題がある。屋内GPSも実用化されているが、施設の条件によっては設置が困難な場合がある。また、磁場の変化に対して敏感な電子コンパスや磁界センサは、プラント内部で使用できない場合がある。さらに、GPSおよび電子コンパスを使用する方法では、位置合わせの精度が画像ベースの位置合わせを実施できるほど高くない。
非特許文献1、特許文献2、特許文献3のように、2次元コードを作業場所にあらかじめ配置する技術では、2次元コードを設置する手間がかかり、場所によっては設置自体が困難なこともある。例えば、プラント内は配管等が複雑に入り組んでいるため2次元コードが隠れて撮影されない場合や、2次元コードを設置した位置にしか情報が提示できないため情報定時が離散的になるという課題がある。また、稼働中の機器に関しては2次元コードを設置することが困難である。
非特許文献2、特許文献4、特許文献5に記載されているモデルベースの方法は、CG画像とカメラ画像との照合によってカメラ位置と姿勢を推定することができるので、2次元コードやGPSなどを利用する必要がない。しかし、現実物体の3次元CADデータなどの3次元形状データをあらかじめ準備しておくことが必要となる。実際には、現実物体の3次元CADデータが存在しない場合や、例えば現場作業の仮定で設備を操作した結果として3次元CADデータが実際の形状と適合していない場合がある。このような場合には、3次元形状データを新規に作成する必要があるが、これには膨大な手間がかかる。この理由について以下に説明する。
3次元形状データを作成するために、レーザレンジファインダなどによって実際の形状を3次元計測する方法がある。レーザレンジファインダによって現実物体の形状と色を精密に計測することができる。レーザレンジファインダによる計測データは、点群である場合が多い。すなわち、大量の点群の3次元座標と各点における色が計測される。モデルベースの方法において計測データを適用する場合には、点群データなどの3次元計測データからポリゴンなどの面データを生成する必要がある。しかし、点群データから面データへの変換には多大な工数が必要である。
本発明は、上記のような課題に鑑みてなされたものであり、カメラが撮像した画像に基づきカメラの位置や姿勢を推定する場合において、事前に必要な作業量を削減することを目的とする。
本発明に係る画像処理装置は、対象物上の点の位置と色を記述した点群データとカメラが撮像した画像を比較することにより、カメラの位置と姿勢を推定する。
本発明に係る画像処理装置によれば、対象物を3次元計測することによって得られる点群データを準備しておくのみでカメラの位置や姿勢を特定できるため、GPSや電子コンパスのようなセンサが不要となり、かつ2次元コードをあらかじめ作業場所に設置する必要がなく、さらには対象物の3次元形状データ(面データ)をあらかじめ作成しておく必要がない。これにより、カメラの位置や姿勢を推定するために必要な事前の作業量を削減することができる。
実施形態1に係る画像ネットワークシステム1000の構成を示す図である。 カメラ付端末10の機能ブロック図である。 画像処理サーバ30の機能ブロック図である。 カメラ画像11のデータフォーマットを示す図である。 カメラ情報データ13のデータフォーマットを示す図である。 点群DB31の構成を示す図である。 メッセージDB32の構成を示す図である。 画像処理サーバ30がカメラ14の位置と姿勢を推定する方法を示す模式図である。 カメラ付端末10がカメラ14の位置と姿勢を取得する手順を示すシーケンス図である。 画像処理サーバ30がカメラ14の位置と姿勢を推定する手法の詳細を示すフローチャートである。 カメラ付端末10がメッセージを表示部16に画面表示する方法を示した模式図である。 カメラ付端末10がカメラ14の撮像範囲に付随するメッセージを取得する手順を示すシーケンス図である。 点群DB31が格納している点群データをカメラ14から見た座標に変換した2次元点群データ1300のデータフォーマットを示す図である。 実施形態2において画像処理サーバ30がカメラ14の位置と姿勢を推定する手法の詳細を示すフローチャートである。 実施形態3において画像処理サーバ30がカメラ14の位置と姿勢を推定する手法の詳細を示すフローチャートである。 実施形態4に係るカメラ付端末10の機能ブロック図である。
<実施の形態1:システム構成>
図1は、本発明の実施形態1に係る画像ネットワークシステム1000の構成を示す図である。画像ネットワークシステム1000は、カメラが撮像した画像に基づき当該カメラの位置や姿勢を推定するためのシステムであり、カメラ付端末10、画像処理サーバ30を有する。
カメラ付端末10は、ユーザ50が保持する端末であり、例えばプラント内の設備などの対象物を撮像し、撮像した画像を基地局40経由で画像処理サーバ30に送信する。また、撮像した画像をユーザ50が確認するための表示部を備え、対象物と併せて対象物に関連するメッセージを重畳表示することもできる。カメラ付端末10の詳細構成については後述する。
画像処理サーバ30は、カメラ付端末10から受け取った画像に基づき、カメラ付端末10が備えているカメラの位置や姿勢を推定し、カメラ付端末10に通知する。画像処理サーバ30は、本実施形態1における「画像処理装置」に相当する。画像処理サーバ30の詳細構成については後述する。
図2は、カメラ付端末10の機能ブロック図である。カメラ付端末10は、カメラ14、通信部15、表示部16、制御部17を備える。
カメラ14は、周辺に存在する対象物の画像を撮像してカメラ画像11を生成する。通信部15は、カメラ14が撮像した画像を画像処理サーバ30に送信し、画像処理サーバ30からメッセージデータ12とカメラ情報データ13を受け取る。表示部16は、カメラ14が撮像した画像と必要に応じて後述するメッセージを画面表示する。制御部17は、各部の動作を制御する。
制御部17は、その機能を実現する回路デバイスのようなハードウェアを用いて構成することもできるし、CPU(Central Processing Unit)のような演算装置とその動作を規定するソフトウェアを用いて構成することもできる。
図3は、画像処理サーバ30の機能ブロック図である。画像処理サーバ30は、点群データベース(DB)31、メッセージデータベース(DB)32、データベース管理部33、通信部34、カメラ位置姿勢推定部35、制御部36を備える。
点群DB31は、ユーザ50が作業するプラントなどの設備をあらかじめレーザレンジファインダなどによって3次元計測することにより取得した、対象物の点群データを格納するデータベースである。点群DB31の構成については後述する。メッセージDB32は、カメラ付端末10の表示部16が撮像画像とともに表示するメッセージを格納するデータベースである。メッセージDB32の構成については後述する。
データベース管理部33は、点群DB31とメッセージDB32に対するデータ入出力を管理する。通信部34は、カメラ付端末10からカメラ画像11を受け取り、メッセージデータ12とカメラ情報データ13をカメラ付端末10に送信する。カメラ位置姿勢推定部35は、後述する手法を用いてカメラ14の位置と姿勢を推定する。制御部36は、各機能部の動作を制御する。本実施形態1における「推定部」「メッセージ位置推定部」は、カメラ位置姿勢推定部35が相当する。
点群DB31とメッセージDB32は、データベース内の各レコードを保持するデータファイルをHDD(ハードディスクドライブ)などの記憶装置に格納することによって構成することができる。
データベース管理部33、カメラ位置姿勢推定部35、制御部36は、その機能を実現する回路デバイスのようなハードウェアを用いて構成することもできるし、CPUのような演算装置とその動作を規定するソフトウェアを用いて構成することもできる。
図4は、カメラ画像11のデータフォーマットを示す図である。カメラ画像11は、カメラ14が対象物を撮像することによって取得する画像データであり、カメラIDフィールド111、取得時刻フィールド112、画像データフィールド113を有する。
カメラIDフィールド111は、カメラ付端末10またはカメラ14が複数存在する場合に、画像処理サーバ30が個々のカメラ14を識別するためのIDである。取得時刻フィールド112は、カメラ14が対象物を撮像した日時を保持する。画像データフィールド113は、対象物の撮像データ本体部分である。
カメラ14は、対象物を撮像して得た画像データに、自身のID(カメラ14内のレジスタ等に記録しておけばよい)と撮像年月日をそれぞれカメラIDフィールド111、取得時刻フィールド112として付与し、カメラ画像11を生成する。
図5は、カメラ情報データ13のデータフォーマットを示す図である。カメラ情報データ13は、カメラ14の位置と姿勢を推定した結果をカメラ付端末10へ通知するためのデータであり、カメラ位置フィールド131、カメラ方向フィールド132を有する。
カメラ位置フィールド131は、カメラ14の位置の3次元座標値を保持する。カメラ方向フィールド132は、カメラ14の姿勢を示す値を保持する。カメラ位置フィールド131は、例えばプラント設備内の所定位置を基準とする3次元座標値によって記述することができる。カメラ方向フィールド132は、X軸まわりの回転角度、Y軸まわりの回転角度、Z軸周りの回転角度によって記述することができる。その他の方法、例えば4元数などでカメラ14の姿勢を記述してもよい。
図6は、点群DB31の構成を示す図である。点群DB31は、IDフィールド311、位置フィールド312、色フィールド313を有する。IDフィールド311は、点群DB31が保持する個々の点についてのレコードを識別するための識別子である。位置フィールド312は、対象物上の点の3次元座標値を保持する。色フィールド313は、位置フィールド312が指定する座標点の色を示す値を保持する。
位置フィールド312は、カメラ位置フィールド131と同様に、例えばプラント設備内の所定位置を基準とする3次元座標値によって記述することができる。色フィールド313は、例えばRGB表色系によって表現することができる。
ユーザ50は、作業場所に設置されている設備などをあらかじめレーザレンジファインダなどによって3次元計測することにより、点群DB31が保持する各レコードを作成し、点群DB31にあらかじめ格納しておく。
図7は、メッセージDB32の構成を示す図である。メッセージDB32は、メッセージIDフィールド321、メッセージフィールド322、メッセージ位置フィールド323を有する。
メッセージIDフィールド321は、メッセージDB32が保持する個々のレコードを識別するための識別子である。メッセージフィールド322は、表示部16上に重畳表示するメッセージであり、例えばテキストデータ、画像、工程表や作業手順などのドキュメントなどをメッセージとすることができる。メッセージ位置フィールド323は、メッセージを重畳表示すべきプラント内の位置を示す3次元座標値を保持する。メッセージ位置フィールド323が指定する位置をカメラ14が撮像しているとき、表示部16がメッセージフィールド322のメッセージを撮像画像と併せて重畳表示することを想定する。
<実施の形態1:カメラの位置と姿勢の推定>
図8は、画像処理サーバ30がカメラ14の位置を推定する方法を示す模式図である。以下図8にしたがって、画像処理サーバ30の処理手順を説明する。
(図8:ステップS800)
カメラ付端末10のカメラ14は、対象物を撮像して得たカメラ画像11を画像処理サーバ30へ送信する。このときカメラ付端末10は、カメラ14の位置と姿勢を推定するように、画像処理サーバ30へ併せて依頼する。
(図8:ステップS801)
画像処理サーバ30は、点群DB31が格納している点群データと、位置および姿勢を仮に設定した仮想カメラとを用いて、仮想カメラから見た点群データのCG画像を生成する。このCG画像は、仮想カメラ情報を変更することで複数生成される。生成されたCG画像のなかには、カメラ画像11と類似する部分を有しているものが存在すると想定される。図8に示す例では、2つ目のCG画像がカメラ画像11と類似している。
(図8:ステップS802)
画像処理サーバ30は、ステップS801で生成した各CG画像とカメラ画像11との間の類似度が最大になるような仮想カメラの位置と姿勢を求める。類似度を最大化する方法の詳細については後述する。
(図8:ステップS803)
画像処理サーバ30は、カメラ画像11とCG画像との間の類似度を最大化する仮想カメラの位置と姿勢を、カメラ付端末10が備えるカメラ14の位置および姿勢であると推定する。画像処理サーバ30は、推定結果をカメラ付端末10へカメラ情報データ13として送信する。
図9は、カメラ付端末10がカメラ14の位置と姿勢を取得する手順を示すシーケンス図である。以下、図9の各ステップについて説明する。
(図9:ステップS901〜S902)
カメラ付端末10は、対象物を撮像してカメラ画像11を生成し(S901)、画像処理サーバ30へ送信する(S902)。このときカメラ付端末10は、カメラ14の位置と姿勢を推定して返信するように、画像処理サーバ30へ要求する。これらのステップは、図8のステップS800に相当する。
(図9:ステップS903〜S904)
画像処理サーバ30は、カメラ画像11を受信すると、後述する図10の手順にしたがって、カメラ14の位置と姿勢を推定する(S903)。画像処理サーバ30は、推定結果をカメラ情報データ13としてカメラ付端末10へ返信する(S904)。これらのステップは、図8のステップS801〜S803に相当する。
図10は、画像処理サーバ30がカメラ14の位置を推定する手法の詳細を示すフローチャートである。以下、図10の各ステップについて説明する。
(図10:ステップS1001)
画像処理サーバ30のカメラ位置姿勢推定部35は、仮想カメラの位置と姿勢を設定する。仮想カメラの位置と姿勢は、カメラ情報データ13と同様のデータフォーマットによって設定することができる。仮想カメラの位置と姿勢の初期値は、ユーザが指定することもできるし、ジャイロや電子コンパスを用いてカメラ14の現在位置および姿勢を大まかに推定してこれを初期値とすることもできる。
(図10:ステップS1002)
カメラ位置姿勢推定部35は、点群DB31が格納している各レコードに対して、現在の仮想カメラの位置と姿勢から見た座標となるように、座標変換および透視変換を実施する。これは、点群DB31が格納している各点群は、3次元計測を実施したときの計測装置の位置および姿勢に基づいているためである。点群DB31が格納している各点群データとカメラ14が現在撮像している画像とを対応付けるためには、点群データをカメラ14から見た座標に変換する必要がある。
(図10:ステップS1003)
カメラ位置姿勢推定部35は、仮想カメラの撮像範囲外の点をクリッピングによって除去する。透視変換された点群データの座標がカメラ14の撮像範囲外となる場合があるため、本ステップが必要になる。
(図10:ステップS1004)
カメラ位置姿勢推定部35は、座標変換および透視変換によって得られた点群データをポイントベースレンダリングすることにより、CG画像を生成する。点群データは対象物を撮像した画像そのものではなく、対象物上の複数点の座標と色を示すものであるため、カメラ14が撮像した画像と直接的に比較することはできない。点群データが表すドット集合と2次元画像は異なる種類のデータだからである。そこで本ステップにおいて点群データから公知のポイントベースレンダリングを用いて2次元画像を生成し、カメラ画像11と直接比較できるようにすることとした。
(図10:ステップS1005)
カメラ位置姿勢推定部35は、カメラ付端末10から受け取ったカメラ画像11と、ステップS1004で生成したCG画像とを比較し、両者の類似度を求める。類似度は、2つの画像間の誤差の2乗平均(SSD:Sum of Squared Differences)によって求められる他、後述する相互情報量を画像間の類似度とすることができる。また、これらの値に何らかの演算を施して導出した値を類似度としてもよい。
(図10:ステップS1006)
カメラ位置姿勢推定部35は、ステップS1005で算出した類似度が極大値に収束したか否かを判定する。類似度が収束していない場合はステップS1007に進み、収束している場合はステップS1008に進む。
(図10:ステップS1007)
カメラ位置姿勢推定部35は、より高い類似度を得るために、仮想カメラの位置と姿勢を更新する。具体的には、例えば現在の仮想カメラの位置と姿勢を適当に変化させて新たな位置と姿勢を設定する。本ステップの後はステップS1002に戻り、同様の処理を繰り返すことにより、カメラ画像11とCG画像との間の類似度を最大化する。
(図10:ステップS1008)
カメラ位置姿勢推定部35は、通信部34を介して、現在の仮想カメラの位置と姿勢をカメラ情報データ13としてカメラ付端末10に送信する。
<実施の形態1:メッセージの表示>
図11は、カメラ付端末10がメッセージを表示部16に画面表示する方法を示した模式図である。以下図11に示す各ステップについて説明する。
(図11:ステップS1101)
画像処理サーバ30は、カメラ付端末10が撮影したカメラ画像11を受け取ると、カメラ14の位置と姿勢を推定し、カメラ14の座標とおよび方向を取得する。これらのステップは、図8〜図10で説明したものと同様である。カメラ付端末10は、本ステップにおいてカメラ画像11を画像処理サーバ30に送信する際に、カメラ14の位置および姿勢と併せて、カメラ14の撮像範囲に付随するメッセージを送信するように要求することができる。
(図11:ステップS1102)
画像処理サーバ30は、ステップS1101で求めたカメラ14の位置および姿勢に基づき、カメラ14の撮影範囲を算出する。画像処理サーバ30は、カメラ14の撮影範囲内に含まれるメッセージを、メッセージ位置フィールド323にしたがってメッセージDB32から検索する。画像処理サーバ30は、検索によって得られたメッセージの座標をカメラ14から見た座標に変換した上で、カメラ付端末10へ送信する。カメラ情報データ13を併せて送信してもよい。
(図11:ステップS1103)
カメラ付端末10の表示部16は、カメラ14が撮像している画像に、画像処理サーバ30から受け取ったメッセージを重畳表示する(図11の画面162)。重畳表示するメッセージはカメラ14の位置座標をキーにして取得するため、物体の影に隠れた箇所に対応付けられているメッセージを重畳表示することもできる。また、カメラ14の位置をユーザ50の作業場所の地図上に画面表示することにより、ユーザ50は自身の位置を把握することができる(図11の画面161)。
図12は、カメラ付端末10がカメラ14の撮像範囲に付随するメッセージを取得する手順を示すシーケンス図である。以下、図12の各ステップについて説明する。
(図12:ステップS1201〜S1202)
カメラ付端末10は、対象物を撮像してカメラ画像11を生成し(S1201)、画像処理サーバ30へ送信する(S1202)。このときカメラ付端末10は、カメラ14の撮像範囲に付随するメッセージを返信するように、画像処理サーバ30へ要求する。これらのステップは、図11のステップS1101に相当する。図9のシーケンスと本シーケンスを敢えて区別せず、カメラ付端末10がカメラ画像11を画像処理サーバ30に送信するときは必ずカメラ位置とカメラ姿勢に加えて付随メッセージを返信するものとしてもよい。
(図12:ステップS1203〜S1204)
画像処理サーバ30は、カメラ画像11を受信すると、図10の手順にしたがってカメラ14の位置と姿勢を推定する(S1203)。画像処理サーバ30は、推定したカメラ14の位置と姿勢に基づきカメラ14の撮像範囲を取得し、その撮像範囲内に含まれるメッセージをメッセージDB32から取得する。これらのステップは、図11のステップS1101後段〜S1102前段に相当する。
(図12:ステップS1205)
画像処理サーバ30は、メッセージDB32から取得したメッセージを、ステップS1203で推定したカメラ14の位置および姿勢に基づきカメラ14から見た座標に変換した上で、カメラ付端末10に返信する。カメラ14の位置と姿勢をカメラ情報データ13として併せて送信してもよい。
(図12:ステップS1206)
カメラ付端末10は、画像処理サーバ30から取得したメッセージを、カメラ14が撮像している画像と併せて表示部16上に重畳表示する。
<実施の形態1:まとめ>
以上のように、本実施形態1に係る画像処理サーバ30は、カメラ14が撮像する対象物上の点の座標と色を記述する点群データを保持しており、カメラ画像11と点群データを比較することによりカメラ画像11と合致する点群データを特定し、これに基づきカメラ14の位置と姿勢を推定する。これにより、対象物を3次元測定することによって得られる点群データから3次元形状データをあらかじめ作成しておく必要がなくなるので、そのための作業負担を削減することができる。
また、本実施形態1に係る画像処理サーバ30は、カメラ14の位置および姿勢の推定結果に基づき、カメラ14の撮像範囲に対応付けられているメッセージを特定する。カメラ付端末10は、そのメッセージを表示部16上で撮像画像と併せて重畳表示する。これにより、ユーザ50は作業場所に関連する情報を画面上で容易に把握することができる。
<実施の形態2>
実施形態1では、点群データをポイントベースレンダリングによって2次元画像に変換した上で、カメラ画像11と比較する手法を説明した。本発明の実施形態2では、これに代えてカメラ画像11上の点と点群データを比較する手法を説明する。画像ネットワークシステム1000の構成は実施形態1と同様であるため、以下では差異点を中心に説明する。
図13は、点群DB31が格納している点群データをカメラ14から見た座標に変換した2次元点群データ1300のデータフォーマットを示す図である。2次元点群データ1300は、点群DB31と同様に、IDフィールド1301、位置フィールド1302、色フィールド1303を有する。
位置フィールド1302は、カメラ14から見た座標であるため、位置フィールド312とは異なり2次元座標である。座標変換によってカメラ14の撮像範囲外になったレコードをクリッピング処理によって除去するため、2次元点群データ1300のレコード数は、点群DB31のレコード数よりも少ない。
図14は、本実施形態2において画像処理サーバ30がカメラ14の位置を推定する手法の詳細を示すフローチャートである。本フローチャートは、図10のフローチャートのうちステップS1004〜S1005がステップS1401〜S1402に置き換わったものである。以下ではこれら置き換えられたステップについて説明する。
(図14:ステップS1401)
カメラ位置姿勢推定部35は、実施形態1のステップS1004で説明したCG画像に代えて、座標変換および透視変換によって得られた2次元点群データ1300を、カメラ画像11と比較する対象とする。
(図14:ステップS1402)
カメラ位置姿勢推定部35は、2次元点群データ1300とカメラ画像11を比較して両者の類似度を求める。実施形態1とは異なり、2次元画像同士を比較するのではなく点同士を比較するため、類似度を算出する手法は実施形態1とは異なる。例えば以下のような手法が考えられる。
(図14:ステップS1402:類似度の計算例その1)
カメラ位置姿勢推定部35は、2次元点群データ1300の全点を、カメラ画像11の対応する位置における輝度値と比較することにより、両者の類似度を計算する。具体的には、2次元点群データの各点の輝度と、カメラ画像11の対応する位置における輝度との間の誤差の2乗平均に基づき、両者の類似度を求めることができる。
(図14:ステップS1402:類似度の計算例その2)
上記計算例その1において、2次元点群データ1300の位置は、必ずしも画素中心に存在していない場合がある。この場合は、公知の双1次補間または双3次補間によってカメラ画像11の輝度値を求めるようにしてもよい。
(図14:ステップS1402:類似度の計算例その3)
カメラ位置姿勢推定部35は、2次元点群データ1300の輝度とカメラ画像11の輝度から相互情報量を求め、これを両者の類似度とすることができる。相互情報量を計算するためには、まず2次元点群データ1300の全点の輝度値と、カメラ画像11の対応する位置における画素の輝度値とから、2次元ヒストグラムを計算する。次に、その2次元ヒストグラムを用いて計算される確率密度関数を用いて、相互情報量を計算する。
相互情報量とは、2つの事象AとBについて、事象Aが有している事象Bに関する情報量を定量化した尺度である。本発明における類似度を計算するために用いる正規化相互情報量NMI(A,B)は、事象Aと事象Bの2次元結合ヒストグラムHist(A,B)に基づき、下記式1によって求められる。
Figure 0005837404
H(A)は事象Aのエントロピー、H(B)は事象Bのエントロピー、H(A,B)は事象A,Bの結合エントロピーである。p(a)はaの確率密度分布、p(b)はbの確率密度分布である。p(a,b)はa,bの同時確率分布であり、Hist(A,B)から求められる。事象Aと事象Bが完全に独立である場合には、H(A,B)=H(A)+H(B)となる。事象Aと事象Bが完全に従属である場合には、H(A,B)=H(A)=H(B)となる。以上から、NMI(A,B)のとりうる範囲は1以上2以下となる。
<実施の形態2:まとめ>
以上のように、本実施形態2に係る画像処理サーバ30は、座標変換および透視変換によって得られた2次元点群データ1300とカメラ画像11を比較する。この方法は点群データをレンダリングしてCG画像を生成する実施形態1と比較すると、点群データの密度が小さいためCG画像を適切にレンダリングできない場合でも適用できるという利点がある。
<実施の形態3>
本発明の実施形態3では、カメラ画像11の特徴点/特徴線と点群データの特徴点/特徴線を比較することにより、両者の類似度を求める手法を説明する。画像ネットワークシステム1000の構成は実施形態1〜2と同様であるため、以下では差異点を中心に説明する。
図15は、本実施形態3において画像処理サーバ30がカメラ14の位置を推定する手法の詳細を示すフローチャートである。本フローチャートは、図10のフローチャートの前段処理としてステップS1501〜S1502が追加され、ステップS1002、S1004、S1005がステップS1503、S1504、S1505に置き換わったものである。以下ではこれらステップについて説明する。
(図15:ステップS1501)
画像処理サーバ30のカメラ位置姿勢推定部35は、カメラ14の位置と姿勢を推定する処理を実施する前に、点群DB31に格納されている点群データから3次元特徴点および3次元特徴線を抽出し、3次元特徴線/特徴点データを作成しておく。この処理は点群データに対する自動的なフィルタ処理によって実施してもよいし、ユーザが対話的に特徴線/特徴点を与えてもよい。特徴点は3次元座標によって表現し、特徴線は3次元空間上の折れ線によって表現することができる。
(図15:ステップS1502)
カメラ位置姿勢推定部35は、カメラ画像11をカメラ付端末10から受け取ると、類似度計算を実施する前に、カメラ画像11の2次元特徴点および2次元特徴線を抽出し、カメラ画像特徴線/特徴点データを作成しておく。
(図15:ステップS1503)
カメラ位置姿勢推定部35は、3次元特徴線/特徴点データに対して、ステップS1002と同様の座標変換および透視変換を実施する。これにより、3次元特徴線/特徴点データはカメラ14から見た2次元の特徴線/特徴点データとなる。
(図15:ステップS1504〜S1505)
カメラ位置姿勢推定部35は、実施形態1のステップS1004で説明したCG画像に代えて、座標変換および透視変換によって得られた2次元特徴線/特徴点データを、カメラ画像11から生成したカメラ画像特徴線/特徴点データと比較する(S1504)。両者の類似度は、特徴点であれば特徴点間の距離、特徴線であれば特徴線間の距離を用いて求められる。カメラ位置姿勢推定部35は、特徴線/特徴点の類似度またはこれらから算出した数値を、カメラ画像11と点群データの類似度とする。
<実施の形態3:まとめ>
以上のように、本実施形態3に係る画像処理サーバ30は、カメラ画像11から抽出した特徴線/特徴点と、点群データから抽出した特徴線/特徴点とを比較することにより、カメラ画像11と点群データの類似度を算出する。この方法は、比較対象がすべての点群ではないため、計算時間を短縮できる利点がある。また、特徴線/特徴点を抽出することが容易な対象に対しては、類似度をロバストに計算できる。ただし、類似度を計算する前に対象物の3次元計測データから特徴線/特徴点を事前に求めておく必要がある。また、カメラ画像11から特徴線/特徴点を求める必要がある。
<実施の形態4>
図16は、本発明の実施形態4に係るカメラ付端末10の機能ブロック図である。本実施形態4に係るカメラ付端末10は、実施形態1の図2で説明した構成に加えて、画像処理サーバ30が備える点群DB31、メッセージDB32、データベース管理部33、カメラ位置姿勢推定部35を備える。制御部17は、これら各機能部を制御する。本実施形態4に係るカメラ付端末10は、本実施形態4における「画像処理装置」に相当する。
本実施形態4に係るカメラ付端末10は、画像処理サーバ30の機能を兼ねており、画像処理サーバ30と通信しなくともカメラ14の位置と姿勢を自身で推定することができる。また、カメラ14の撮像範囲に対応付けられているメッセージDB32内のメッセージを自ら検索することができる。したがって、通信部は必ずしも必要でない。
本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。上記実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えることもできる。また、ある実施形態の構成に他の実施形態の構成を加えることもできる。また、各実施形態の構成の一部について、他の構成を追加・削除・置換することもできる。
上記各構成、機能、処理部、処理手段等は、それらの一部や全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、SSD(Solid State Drive)等の記録装置、ICカード、SDカード、DVD等の記録媒体に格納することができる。
10:カメラ付端末、11:カメラ画像、12:メッセージデータ、13:カメラ情報データ、14:カメラ、15:通信部、16:表示部、17:制御部、30:画像処理サーバ、31:点群データベース、32:メッセージデータベース、33:データベース管理部、34:通信部、35:カメラ位置姿勢推定部、36:制御部、40:基地局、50:ユーザ、1000:画像ネットワークシステム。

Claims (13)

  1. カメラが撮像した対象物の画像を取得する画像取得部と、
    前記対象物を3次元計測することにより取得された、前記対象物上の点の位置と色を記述する点群データを格納する点群データベースと、
    前記点群データを用いて、ポイントベースレンダリングによって前記対象物の2次元画像を生成し、生成した前記2次元画像と前記画像と比較して前記画像に合致する前記点群データを特定することにより前記カメラの位置と姿勢を推定する推定部と、
    を備えたことを特徴とする画像処理装置。
  2. 前記2次元画像は、
    前記点群データが記述している前記対象物の2次元画像である
    ことを特徴とする請求項1記載の画像処理装置。
  3. 前記推定部は、
    前記点群データが記述している座標を前記カメラから見た座標に変換し、
    前記変換によって得られた変換後の前記点群データを用いて前記2次元画像を生成し、生成した前記2次元画像と、前記2次元画像に対応する前記画像上の点とを比較することにより、前記画像に合致する前記点群データを特定する
    ことを特徴とする請求項1記載の画像処理装置。
  4. 前記カメラが撮像している画像に重畳表示すべきメッセージとその表示位置を記述するメッセージデータを格納するメッセージデータベースと、
    前記推定部が推定した前記カメラの位置と姿勢に応じて、前記メッセージを前記カメラが撮像している画像に重畳表示すべき位置を特定し、その位置およびその位置に重畳表示すべきメッセージを前記カメラに通知するメッセージ位置推定部と、
    を備えたことを特徴とする請求項1記載の画像処理装置。
  5. 前記推定部は、
    前記画像と前記2次元画像との間の差異の2乗平均、または前記画像と前記2次元画像との間の相互情報量に基づき、前記画像と前記2次元画像との間の類似度を算出し、前記類似度にしたがって前記画像に合致する前記点群データを特定する
    ことを特徴とする請求項1記載の画像処理装置。
  6. 前記推定部は、
    前記点群データが記述している座標を、推定した前記カメラの位置と姿勢から見た座標に変換し、前記変換によって得られた変換後の前記点群データを用いて前記2次元画像を生成し、生成した前記2次元画像と前記画像との間の前記類似度を算出し、
    前記類似度が極大値に収束するまで前記変換と前記類似度を算出する処理を繰り返し、前記類似度が収束した時点における前記推定の結果を、前記カメラの位置と姿勢の最終的な推定結果とする
    ことを特徴とする請求項記載の画像処理装置。
  7. 対象物の画像を撮像するカメラと、
    前記対象物を3次元計測することにより取得された、前記対象物上の点の位置と色を記述する点群データを格納する点群データベースと、
    前記点群データを用いて、ポイントベースレンダリングによって前記対象物の2次元画像を生成し、生成した前記2次元画像と前記画像と比較して前記画像に合致する前記点群データを特定することにより前記カメラの位置と姿勢を推定する推定部と、
    を備えたことを特徴とする画像処理装置。
  8. 前記2次元画像は、
    前記点群データが記述している前記対象物の2次元画像である
    ことを特徴とする請求項記載の画像処理装置。
  9. 前記推定部は、
    前記点群データが記述している座標を前記カメラから見た座標に変換し、
    前記変換によって得られた変換後の前記点群データを用いて前記2次元画像を生成し、生成した前記2次元画像と、前記2次元画像に対応する前記画像上の点とを比較することにより、前記画像に合致する前記点群データを特定する
    ことを特徴とする請求項記載の画像処理装置。
  10. 前記カメラは、前記カメラが撮像している画像を画面表示する表示部を備え、
    前記表示部に重畳表示すべきメッセージとその表示位置を記述するメッセージデータを格納するメッセージデータベースと、
    前記推定部が推定した前記カメラの位置と姿勢に応じて、前記メッセージを前記カメラが撮像している画像に重畳表示すべき位置を特定し、その位置およびその位置に表示すべきメッセージを前記表示部に通知するメッセージ位置推定部と、
    を備え、
    前記表示部は、前記メッセージ位置推定部から受け取った前記メッセージの位置にそのメッセージを前記画像に重ねて表示する
    ことを特徴とする請求項記載の画像処理装置。
  11. 前記推定部は、
    前記画像と前記2次元画像との間の差異の2乗平均、または前記画像と前記2次元画像との間の相互情報量に基づき、前記画像と前記2次元画像との間の類似度を算出し、前記類似度にしたがって前記画像に合致する前記点群データを特定する
    ことを特徴とする請求項記載の画像処理装置。
  12. 前記推定部は、
    前記点群データが記述している座標を、推定した前記カメラの位置と姿勢から見た座標に変換し、前記変換によって得られた変換後の前記点群データを用いて前記2次元画像を生成し、生成した前記2次元画像と前記画像との間の前記類似度を算出し、
    前記類似度が極大値に収束するまで前記変換と前記類似度を算出する処理を繰り返し、前記類似度が収束した時点における前記推定の結果を、前記カメラの位置と姿勢の最終的な推定結果とする
    ことを特徴とする請求項11記載の画像処理装置。
  13. カメラが撮像した対象物の画像を取得するステップと、
    所定の機器が3次元計測した前記対象物上の点の位置と色を記述する点群データを取得するステップと、
    前記点群データを用いて、ポイントベースレンダリングによって前記対象物の2次元画像を生成するステップと、
    前記画像と前記2次元画像を比較して前記画像に合致する前記点群データを特定することにより前記カメラの位置と姿勢を推定するステップと、
    を有することを特徴とする画像処理方法。
JP2011254927A 2011-11-22 2011-11-22 画像処理装置、画像処理方法 Active JP5837404B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011254927A JP5837404B2 (ja) 2011-11-22 2011-11-22 画像処理装置、画像処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011254927A JP5837404B2 (ja) 2011-11-22 2011-11-22 画像処理装置、画像処理方法

Publications (2)

Publication Number Publication Date
JP2013109624A JP2013109624A (ja) 2013-06-06
JP5837404B2 true JP5837404B2 (ja) 2015-12-24

Family

ID=48706303

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011254927A Active JP5837404B2 (ja) 2011-11-22 2011-11-22 画像処理装置、画像処理方法

Country Status (1)

Country Link
JP (1) JP5837404B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR112015013028A2 (pt) * 2012-12-19 2017-07-11 Hitachi Ltd terminal, sistema e método de suporte de operação
JPWO2015145544A1 (ja) * 2014-03-24 2017-04-13 パイオニア株式会社 表示制御装置、制御方法、プログラム及び記憶媒体
JP6348750B2 (ja) * 2014-03-31 2018-06-27 日本放送協会 電子機器、表示方法、プログラム及び通信システム
WO2017168472A1 (ja) 2016-03-30 2017-10-05 パナソニックIpマネジメント株式会社 位置推定装置、位置推定方法及び制御プログラム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002296010A (ja) * 2001-03-29 2002-10-09 Fujitsu Ltd 画像を用いた自己位置同定方法
JP2005069757A (ja) * 2003-08-21 2005-03-17 National Institute Of Advanced Industrial & Technology 中心窩広視野画像を利用したカメラ位置姿勢推定方法及びシステム
JP2005215917A (ja) * 2004-01-29 2005-08-11 Hitachi Plant Eng & Constr Co Ltd 施工図作成支援方法およびリプレースモデル作成方法
JP2006004122A (ja) * 2004-06-17 2006-01-05 Hitachi Ltd 画像処理装置及びロボット装置ならびに車両誘導装置
JP4806435B2 (ja) * 2008-09-10 2011-11-02 日本輸送機株式会社 3次元モデルを用いた自己位置認識手法及び自己位置認識システム
JP5094663B2 (ja) * 2008-09-24 2012-12-12 キヤノン株式会社 位置姿勢推定用モデル生成装置、位置姿勢算出装置、画像処理装置及びそれらの方法
JP2010287174A (ja) * 2009-06-15 2010-12-24 Dainippon Printing Co Ltd 家具シミュレーション方法、装置、プログラム、記録媒体
JP5424405B2 (ja) * 2010-01-14 2014-02-26 学校法人立命館 複合現実感技術による画像生成方法及び画像生成システム
JP5728159B2 (ja) * 2010-02-02 2015-06-03 ソニー株式会社 画像処理装置、画像処理方法及びプログラム
JP5707238B2 (ja) * 2011-06-02 2015-04-22 株式会社日立製作所 画像検索装置及び画像検索システム

Also Published As

Publication number Publication date
JP2013109624A (ja) 2013-06-06

Similar Documents

Publication Publication Date Title
US11393173B2 (en) Mobile augmented reality system
JP6918885B2 (ja) 相対的位置姿勢の標定方法、相対的位置姿勢の標定装置、機器及び媒体
CN110568447B (zh) 视觉定位的方法、装置及计算机可读介质
JP5837848B2 (ja) 画像処理装置、画像処理システム、画像処理方法
JP7355821B2 (ja) 疎結合されたリローカライゼーションサービスおよびアセット管理サービスを介して人工環境内でデジタルアセットを提示するためのシステムおよび方法
JP6180647B2 (ja) クラウドポイントを利用した屋内地図構築装置および方法
KR102200299B1 (ko) 3d-vr 멀티센서 시스템 기반의 도로 시설물 관리 솔루션을 구현하는 시스템 및 그 방법
JP6950832B2 (ja) 位置座標推定装置、位置座標推定方法およびプログラム
CN113048980B (zh) 位姿优化方法、装置、电子设备及存储介质
JP5837404B2 (ja) 画像処理装置、画像処理方法
CN113610702B (zh) 一种建图方法、装置、电子设备及存储介质
CN109034214B (zh) 用于生成标记的方法和装置
KR20180133052A (ko) 360도 이미지 및 비디오 기반의 증강현실 콘텐츠 저작 방법
US9188444B2 (en) 3D object positioning in street view
JP2013092888A (ja) データ処理装置
JP2013214158A (ja) 表示画像検索装置、表示制御システム、表示制御方法、およびプログラム
KR100782152B1 (ko) 3차원 수치지도를 제작하기 위하여 항공사진 db로부터건물의 3차원 데이터를 획득하는 방법
JP2016115082A (ja) 画像検索システム及び画像検索方法
JP6727032B2 (ja) モバイル端末およびこれを用いた自己位置推定システム並びにサーバおよび自己位置推定方法
WO2023053485A1 (ja) 情報処理装置、情報処理方法および情報処理プログラム
Etzold et al. MIPos: towards mobile image positioning in mixed reality web applications based on mobile sensors
JP7286388B2 (ja) 位置推定システム、位置推定装置、位置推定方法、及びプログラム
CN117870716A (zh) 地图兴趣点的显示方法、装置、电子设备及存储介质
JP2020165778A (ja) 地物管理システム
KR20240053224A (ko) 건물 형상 정보를 이용하여 3d 지도를 생성하는 방법, 컴퓨터 장치, 및 컴퓨터 프로그램

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20130708

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140704

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150416

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150421

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150619

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151105

R151 Written notification of patent or utility model registration

Ref document number: 5837404

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151