例えば、工場などの製造現場では、稼働中の製造機器に何らかのアクシデントが発生すると、商品の製造が停止する。このとき、例えば、工場全体における設備稼働率の低下による製造コストの上昇、納期の遅れによる顧客満足度の低下およびサプライチェーンの崩壊など、企業活動に多大な悪影響を及ぼし得る。このため、製造機器のアクシデントからの復旧は急務となる。
このような場面では、例えば、製造機器を開発した担当者などの製造機器の担当者(機器担当者ともいう)は、アクシデントが発生している製造現場からの製造機器の早急な復旧の要請に応じて、本来の職場から製造現場へ急行せざるを得ない場合が想定される。この場合には、例えば、機器担当者は、本来の職場における現在進行中の本来の業務を一旦休止して、製造現場に急行することになる。このとき、例えば、製造機器のアクシデントが、仮に、些細な原因によるものであっても、製造現場の作業者(現場作業者ともいう)が容易に解決可能なものであっても、機器担当者は、本来の職場に戻るまでは、製造機器の復旧作業に拘束される。
通常、稼働中の製造機器の出荷台数は、開発後に年々増加する傾向を示す。このため、機器担当者が製造機器の復旧作業に拘束される時間も、年々増加する傾向を示す。その結果、例えば、機器担当者が新たな製造機器の開発などの本来の業務に充てるべき時間が、製造機器の復旧作業によってさらに削られていく。
これに対して、近年では、通信ネットワークにおける広帯域化と、パーソナルコンピュータ(パソコンともいう)の遠隔操作の技術(パソコン遠隔操作技術ともいう)と、が発達してきている。このため、例えば、通信ネットワークの広帯域化とパソコン遠隔操作技術とを利用して、機器担当者が製造現場に行くことなく、アクシデントが生じた製造機器の状況を確認し、その状況に対処することが考えられる。この場合には、例えば、機器担当者が製造現場との往復に要する時間が減少し、機器担当者は、本来の業務に充てる時間を確保することができる。
ただし、パソコン遠隔操作技術では、例えば、パソコンに搭載されているソフトウェアの確認および修正、パソコンの設定の確認および修正、ならびにパソコンの制御下のセンサで取得可能な情報の確認など、が実行可能な程度である。センサで取得可能な情報には、例えば、カメラで撮像可能な視野内の情報などが含まれ得る。このため、例えば、パソコン遠隔操作技術では、製造機器における、製品、半製品もしくは部品などの載置および除去、センサの物理的な位置の調整、ならびにセンサによる計測範囲外の状況の確認など、は実行することが難しい。センサによる計測範囲外の状況の確認には、例えば、カメラの視野外の状況の確認などが含まれ得る。
これに対して、機器担当者は、例えば、パソコン遠隔操作技術で実行することができない部分については、現場作業者からの報告書および現場作業者との電話による会話などを介して、製造機器の状況を把握することが想定される。また、機器担当者は、例えば、さらなる状況の把握、および製造機器に対する作業内容の説明を、現場作業者との電話で実施することが想定される。このとき、機器担当者は、例えば、現場の製造機器を観ていない状態、および通話の相手である現場作業者の視野および着目点が分からない状態で、製造機器の状況の聞き取りおよび作業内容の説明をおこなうことになる。また、このとき、現場作業者は、例えば、機器担当者が知りたい情報を正確には理解できていない状態で、自らの視点から見えている範囲で製造機器の状況を説明することになる。さらに、このとき、例えば、機器担当者と現場作業者との間で、同一の部品に異なる名称を用いるなど、前提とする知識および用語の共有化がなされていなければ、説明の内容が、相手に正しく伝わらず、相手に誤った内容で理解される危険性がある。その結果、例えば、機器担当者は、製造機器の状況の把握および製造機器に対する作業内容の伝達に非常に多くの時間を要してしまうことが想定される。具体的には、例えば、機器担当者が、製造機器についての誤った状況の把握に基づいて、不必要な作業内容を説明すれば、製造機器の復旧に対して、必要以上の多くの時間を要してしまうおそれがある。このような時間の浪費は、例えば、機器担当者と現場作業者とが言葉のみに頼って意思の疎通を図ることによって生じ得る。
このような問題に対して、例えば、言葉だけでなく、静止画または動画などの映像その他の情報を利用することで、機器担当者と現場作業者との間における円滑な意思の疎通を図るシステム(遠隔作業支援システムともいう)が考えられる。このシステムでは、例えば、現場作業者が、スマートグラス、スマートフォンなどのような携帯可能な機器のカメラで目前の状況を撮像して得られた映像を、ネットワークなどの通信回線を介して機器担当者の端末機器に送信する態様が考えられる。このような態様では、例えば、機器担当者は、端末機器で受信した映像を視認することで、製造現場に行くことなく、現場作業者がリアルタイムで見ているものを視認することができる。また、例えば、現場作業者への作業内容の説明が、音声だけでなく、現場作業者の端末機器のディスプレイに、現場作業者が撮像で得た映像上に書き込まれた絵および文字などで示される態様も考えられる。これにより、現場作業者は、例えば、比較的容易に作業内容の説明を理解することができる。このとき、例えば、機器担当者が見たい場所を現場作業者に正しく伝えることで、現場作業者は、機器担当者が見たい映像を取得することができる。具体的には、例えば、機器担当者は、現場作業者に、製造機器の見たい場所および撮影角度などを伝えることができる。そして、現場作業者は、例えば、携行しているカメラ付きの機器を用いて、機器担当者が見たい映像を取得することができる。その結果、例えば、機器担当者は、見たい場所を容易に視認することができ、製造機器の状況の把握が容易となる。換言すれば、例えば、機器担当者は、製造機器の状況を正しく把握することが可能となり、現場作業者に作業内容を正しく伝えることができる。これにより、パソコン遠隔操作技術と比較して、例えば、機器担当者は、製造機器の状況を迅速かつ的確に把握した上で、状況に適した対策を講ずることができる。
ただし、仮に遠隔作業支援システムを採用しても、機器担当者の意図に沿って、現場作業者が撮影をおこなうため、例えば、現場作業者が撮影者として長時間拘束されてしまう。このとき、例えば、機器担当者が、製造機器のアクシデントの原因を見つけるために、同じ場所を、何度も繰り返して見たり、製造機器を動作させながら見たり、といった態様になれば、現場作業者による撮影に要する時間が長くなる。その結果、例えば、現場作業者に対する作業負担が増大するおそれがある。また、例えば、機器担当者とっては、現場作業者に要請する作業が多くなる程、現場作業者に対する申し訳ない気持ちが増大する。その結果、例えば、機器担当者に対する精神的な負担が増大するおそれがある。このため、例えば、現場作業者に多大な作業を強いることなく、機器担当者が自分のペースで製造機器を周囲の様々な角度から確認可能な技術が存在すれば、機器担当者および現場作業者の作業効率が向上し得る。
このような要請に対して、例えば、製造機器を周囲の様々な角度から見た画像を得る画像処理技術を適用することが考えられる。このような画像処理技術としては、例えば、多くの視点からの撮像で得た画像(多視点画像)を用いて、撮像対象物を任意の角度から見た再構成画像を生成および表示する技術が考えられる。この技術では、例えば、観察者の視点位置および画像出力装置の種類から算出される、画像の再構成に必要なパラメータが用いられて、再構成画像の各画素について多視点画像の対応する画素が演算で求められ、再構成画像が生成される。
しかしながら、このような再構成画像を生成する画像処理では、画像の再構成に必要なパラメータの算出などに多大な演算が必要である。このため、製造機器を周囲の様々な角度から見た画像を得る画像処理については、演算量の低減を図る点で改善の余地がある。
このような課題は、アクシデントが発生した製造機器が撮像対象物である場合だけでなく、立体的な撮像対象物を周囲の様々な角度から見た画像を得たい場面一般に共通する。すなわち、撮像対象物を周囲の様々な角度から見た画像を得る画像処理については、演算量の低減を図る点で改善の余地がある。
そこで、本願発明者らは、撮像対象物を周囲の様々な角度から見た画像を得る画像処理について、演算量を低減することができる技術を創出した。
これについて、以下、各種実施形態を図面に基づいて説明する。図面においては同様な構成および機能を有する部分に同じ符号が付されており、下記説明では重複説明が省略される。図面は模式的に示されたものである。図4、図10、図11および図14には、右手系のXYZ座標系が付されている。このXYZ座標系では、図4で示す水平方向に沿った1つの方向が+X方向とされ、+X方向に直交し且つ水平方向に沿った1つの方向が+Y方向とされ、+X方向と+Y方向との両方に直交する方向が+Z方向とされている。
<1.第1実施形態>
<1−1.画像処理システム>
図1で示されるように、画像処理システム1は、第1装置2と、第2装置3と、通信回線4と、基地局5と、を備えている。ここでは、第1装置2は、例えば、無線方式または有線方式で基地局5に対して通信可能に接続されている。基地局5は、例えば、有線方式または無線方式で通信回線4に対して通信可能に接続されている。第2装置3は、例えば、有線方式または無線方式で通信回線4に対して通信可能に接続されている。通信回線4には、例えば、インターネットなどのネットワーク回線が適用される。このため、第2装置3は、例えば、通信回線4を介して第1装置2と通信可能に接続されている。
第1装置2は、例えば、第1ユーザU1が使用可能な装置である。第1実施形態では、第1装置2には、例えば、スマートフォンまたはタブレット端末などの撮像機能および通信機能を有する携帯機器が適用される。携帯機器は、例えば、撮像機能および通信機能を有するスマートグラスであってもよい。第1ユーザU1には、例えば、工場などの現場で撮像の対象物(撮像対象物ともいう)に対して作業をおこなう者(現場作業者ともいう)が含まれる。撮像対象物には、例えば、製造機器、検査機器および分析機器などの各種機器が含まれ得る。
第2装置3は、例えば、第2ユーザU2が使用可能な装置である。第1実施形態では、第2装置3には、例えば、パーソナルコンピュータまたはタブレット端末などの通信機能および画像表示機能を有する機器が適用される。第2ユーザU2には、例えば、撮像対象物としての各種機器を開発、生産または販売したメーカーの担当者(機器担当者ともいう)が含まれる。機器担当者には、例えば、機器の開発者などが含まれる。
このような画像処理システム1では、例えば、第2装置3は、通信回線4を介して、第1装置2に対して、各種の指示を送出することができる。また、例えば、第2装置3は、第1装置2で取得された各種の情報を、通信回線4を介して取得することができる。
<1−2.第1装置の構成>
<1−2−1.第1装置の電気的な構成>
図2で示されるように、第1装置2は、例えば、制御部200、撮像部21、方向センサ22、表示部23、スピーカ24、通信部25、タッチパネル26および操作ボタン群27を備えている。
制御部200は、例えば、一種の演算処理装置であって、例えば、電気回路であるCPU(Central Processing Unit)210、DSP(Digital Signal Processor)220および記憶媒体230などを備えている。制御部200は、例えば、第1装置2の他の構成要素を制御することで、第1装置2の動作を統括的に管理することが可能である。第1装置2は、例えば、SoC(System-on-a-Chip)、MCU(Micro Control Unit)およびFPGA(Field-Programmable Gate Array)などの副処理装置(co-processor)をさらに含んでいてもよい。また、第1装置2は、CPU(Central Processing Unit)および副処理装置の双方を協働させるか、あるいは双方のうちの一方を選択的に用いて、各種の制御をおこなってもよい。
制御部200は、以下にさらに詳細に述べられるように、種々の機能を実行するための制御および処理能力を提供するために、少なくとも1つのプロセッサを含む。種々の実施形態によれば、少なくとも1つのプロセッサは、単一の集積回路(IC)として、または複数の通信可能に接続された集積回路および/またはディスクリート回路(discrete circuits)として実行されてもよい。少なくとも1つのプロセッサは、種々の既知の技術に従って実行されることが可能である。
1つの実施形態において、プロセッサは、例えば、関連するメモリに記憶された指示を実行することによって1以上のデータ計算手続または処理を実行するように構成された1以上の回路またはユニットを含む。他の実施形態において、プロセッサは、1以上のデータ計算手続きまたは処理を実行するように構成されたファームウェア(例えば、ディスクリートロジックコンポーネント)であってもよい。
種々の実施形態によれば、プロセッサは、1以上のプロセッサ、コントローラ、マイクロプロセッサ、マイクロコントローラ、特定用途向け集積回路(ASIC)、デジタル信号処理装置、プログラマブルロジックデバイス、フィールドプログラマブルゲートアレイ、またはこれらのデバイス若しくは構成の任意の組み合わせ、または他の既知のデバイスおよび構成の組み合わせを含み、以下に説明される機能を実行してもよい。
記憶媒体230は、例えば、ROM(Read Only Memory)およびRAM(Random Access Memory)などの、CPU210およびDSP220が読み取り可能な非一時的な記録媒体を含む。記憶媒体230が有するROMは、例えば、不揮発性メモリ230bであるフラッシュROM(フラッシュメモリ)である。記憶媒体230が有するRAMは、例えば、揮発性メモリ230aである。記憶媒体230には、第1装置2を制御するためのメインプログラムおよび複数のアプリケーションプログラム(アプリケーションともいう)などが記憶されている。制御部200の各種機能は、CPU210およびDSP220が記憶媒体230内の各種プログラムを実行することによって実現される。記憶媒体230には、例えば、撮像部21を用いて静止画像あるいは動画像を撮像するための撮像アプリケーションならびに通信をおこなうためのアプリケーションが記憶されている。記憶媒体230に記憶されるアプリケーションには、例えば、第1装置2を制御するための制御プログラム2Prが含まれている。ここで、第1装置2では、制御プログラム2PrをCPU210などで実行することで、第1画像処理装置20としての機能を実現することができる。換言すれば、制御プログラム2Prによって、第1画像処理装置20が制御され得る。
記憶媒体230は、ROMおよびRAM以外の、コンピュータが読み取り可能な非一時的な記録媒体を備えていてもよい。記憶媒体230は、例えば、小型のハードディスクドライブおよびSSD(Solid State Drive)などを備えていてもよい。記憶媒体230とは別の記憶媒体が存在していてもよい。この記憶媒体は制御部200の外部に位置していてもよい。後述する情報の記憶先は、記憶媒体230であってもよく、他の記憶媒体であってもよい。制御部200の全ての機能あるいは制御部200の一部の機能は、その機能の実現にソフトウェアが不要なハードウェアによって実現されても構わない。制御部200は回路によって形成されていればよい。制御部200の構成は後述する他の制御部にも適用できる。
撮像部21は、例えば、レンズおよび撮像素子などを備えている。撮像部21は、制御部200によって制御され得る。撮像部21は、レンズを介して撮像素子で光を受光して、撮像画像を生成する。これにより、撮像部21は、撮像画像を取得することができる。撮像部21で取得される撮像画像は、静止画像の形態とされてもよいし、繰り返し(例えば、周期的に)撮像画像を生成して動画像の形態のものとされてもよい。ここで、例えば、第1ユーザU1が第1装置2を携帯しつつ移動と撮像対象物の撮像とを繰り返しておこなえば、撮像部21によって、視点の位置(視点位置ともいう)および視線の方向(視線方向ともいう)の組合せが相互に異なる条件で撮像対象物が複数回撮像される。これにより、撮像部21は、例えば、撮像対象物に係る複数の画像(撮像画像ともいう)を得ることができる。ここで、視点位置は、例えば、撮像部21の位置を示す。視線方向は、例えば、視点位置を基準として撮像部21の光軸上において被写体が位置している方向(撮像方向ともいう)を示す。また、撮像部21は、得られた撮像画像を制御部200へ出力することができる。このとき、制御部200では、撮像部21によって順次に取得される複数の撮像画像が記憶媒体230に蓄積される。これにより、例えば、複数の撮像画像が蓄積されたデータベース(画像DBともいう)2Idが不揮発性メモリ230bなどに構築される。
方向センサ22は、例えば、第1装置2の向きを計測するための情報を得ることができる。方向センサ22には、例えば、3軸地磁気センサなどの電子コンパスが適用される。方向センサ22は、得られた情報を制御部200へ出力することができる。このとき、制御部200では、例えば、方向センサ22で得られた情報が、画像DB2Idにおいて、対応する撮像画像と関連付けられた状態で記憶媒体230に記憶される。
表示部23は、例えば、表示パネルおよび表示画面を有している。表示パネルは、例えば、第1装置2の1つの面である前面側に位置している。この表示パネルには、例えば、液晶パネルあるいは有機EL(Electro Luminescence)パネルが採用され得る。表示パネルは、制御部200に制御されることで、画像、文字、記号および図形などの各種情報を表示することが可能である。表示パネルが可視的に出力する各種情報は、表示画面に表示される。これにより、表示部23は、例えば、各種の情報を第1ユーザU1が認識可能な態様で可視的に出力することができる。ここで各種の情報には、例えば、撮像部21で取得される撮像画像、および通信部25で受信した各種の情報などが含まれ得る。
スピーカ24は、例えば、音声を出力することができる。スピーカ24には、例えば、ダイナミックスピーカが適用され得る。例えば、スピーカ24では、制御部200からの電気的な音信号が音に変換されて出力され得る。これにより、スピーカ24は、例えば、音声情報を第1ユーザU1が可聴的に認識可能な態様で出力することができる。
通信部25は、例えば、通信用のインターフェースであって、アンテナを有している。通信部25は、例えば、第1装置2とは別の装置からの信号を受信することができる。第1実施形態では、例えば、通信部25は、通信回線4に接続された第2装置3などからの信号を、基地局5を介してアンテナで受信することができる。
上記のように、例えば、表示部23は、情報を可視的に出力することが可能であり、スピーカ24は、情報を可聴的に出力することが可能であり、通信部25は、情報をデータの形式で出力することが可能である。このため、例えば、表示部23、スピーカ24および通信部25は、情報を出力する出力部2ouを構成し得る。
また、通信部25は、例えば、アンテナでの受信信号に対して適宜所定の信号処理をおこなって制御部200に処理後の受信信号を出力することが可能である。通信部25は、例えば、制御部200で生成された信号に対して、適宜所定の信号処理をおこなって処理後の送信信号をアンテナから無線送信することが可能である。アンテナからの送信信号は、例えば、基地局5を通じて、第1装置2以外の機器で受信される。第1装置2以外の機器には、通信回線4に接続された第2装置3が含まれる。これにより、通信部25は、例えば、通信回線4を介して、第2装置3と通信することができる。
タッチパネル26は、例えば、表示画面に対する指などによる操作を検出することが可能である。タッチパネル26には、例えば、投影型静電容量方式のタッチパネルが適用され得る。タッチパネル26は、第1ユーザU1が指などによって表示画面に対して操作をおこなうと、その操作に応じた電気信号がタッチパネル26から制御部200に入力される。これにより、制御部200は、タッチパネル26からの電気信号に基づいて、表示画面に対しておこなわれた操作の内容を特定して、その内容に応じた処理をおこなうことが可能である。第1ユーザU1は、例えば、指以外のスタイラスペンなどの静電式タッチパネル用ペンで表示画面を操作することによっても、第1装置2に対して各種指示を与えることができる。このタッチパネル26は、例えば、表示画面に対するスワイプ操作に応じて、表示部23の表示画面上に表示されている画像の範囲をスクロールさせることができる。また、このタッチパネル26は、例えば、表示画面に対するピンチインの操作に応じて、表示部23の表示画面上に表示されている画像を拡大させることができる。また、このタッチパネル26は、例えば、表示画面に対するピンチアウトの操作に応じて、表示部23の表示画面上に表示されている画像を縮小させることができる。
操作ボタン群27は、操作ボタン群27に含まれる操作ボタンが第1ユーザU1によって操作されると、操作されたことを示す操作信号を制御部200に出力することができる。これにより、制御部200は、操作ボタンからの操作信号に基づいて、操作ボタンが操作されたか否かを判断することができる。制御部200は、操作された操作ボタンに応じた処理をおこなうことが可能である。操作ボタンは、押しボタンなどのハードウェアボタンではなく、表示画面に表示されるソフトウェアボタンであってもよい。この場合には、例えば、第1ユーザU1によるソフトウェアボタンへの操作がタッチパネル26によって検出され、制御部200では、操作されたソフトウェアボタンに応じた処理がおこなわれ得る。
このように、例えば、タッチパネル26および操作ボタン群27は、第1ユーザU1の動作に応答して操作信号を入力する入力部2inとなり得る。入力部2inには、例えば、タッチパネル26および操作ボタン群27以外のポインティングデバイスなどが含まれていてもよい。
<1−2−2.第1画像処理装置の機能的な構成>
図3は、第1装置2が第1画像処理装置20として機能する場合における、第1画像処理装置20の機能的な構成の一例を示す機能ブロック図である。図3で示されるように、第1画像処理装置20は、例えば、撮像部21、方向計測部221、記憶媒体230、通信部25、出力部2ouおよび入力部2inを備えている。
方向計測部221は、例えば、方向センサ22と制御部200との協働によって機能的な構成として実現され得る。具体的には、方向計測部221は、例えば、記憶媒体230に格納された制御プログラム2Prを制御部200で実行することで実現され得る機能的な構成と、方向センサ22と、の協働によって機能的な構成として実現され得る。方向計測部221では、例えば、撮像部21によって取得される複数の撮像画像のそれぞれについて、撮像時における撮像部21の向きが計測されることで、撮像時における視線方向を示す情報(視線方向情報ともいう)が得られる。この方向計測部221では、例えば、方向センサ22の検出値に基づいて、撮像部21が向いている視線方向が算出され得る。方向センサ22には、例えば、傾斜センサが加えられてもよい。制御部200では、例えば、方向計測部221で得られた視線方向情報が、画像DB2Idにおいて対応する撮像画像と関連付けられた状態で記憶媒体230に記憶される。
このように、例えば、撮像部21および方向計測部221は、複数の撮像画像と、これらの複数の撮像画像のそれぞれの撮像時に係る視線方向情報と、を取得することができる取得部2acとなり得る。
ここで、図4で示すように、例えば、第1ユーザU1が撮像対象物Ob0の周囲を回りながら、撮像対象物Ob0を時間順次に撮像する場合を想定する。ここでは、例えば、第1ユーザU1は、時刻T1から時刻T12において、順に撮像対象物Ob0を撮像する。具体的には、まず、時刻T1における位置Pt1で視線方向v1での撮像、時刻T2における位置Pt2で視線方向v2での撮像、時刻T3における位置Pt3で視線方向v3での撮像および時刻T4における位置Pt4で視線方向v4での撮像が順におこなわれる。次に、時刻T5における位置Pt5で視線方向v5での撮像、時刻T6における位置Pt6で視線方向v6での撮像、時刻T7における位置Pt7で視線方向v7での撮像および時刻T8における位置Pt8で視線方向v8での撮像が順におこなわれる。その次に、時刻T9における位置Pt9で視線方向v9での撮像、時刻T10における位置Pt10で視線方向v10での撮像、時刻T11における位置Pt11で視線方向v11での撮像および時刻T12における位置Pt12で視線方向v12での撮像が順におこなわれる。このとき、例えば、取得部2acによって、12回の撮像による12枚の撮像画像と、各撮像時に係る視線方向情報と、が取得され得る。
通信部25は、例えば、撮像部21で取得された複数の撮像画像と、これらの複数の撮像画像のそれぞれについての視線方向情報とを、通信回線4を介して第2装置3に向けて送信することができる。これらの情報は、例えば、撮像部21によって撮像画像が取得される毎のタイミング、あるいは予め設定されたタイミングにおいて、通信部25によって通信回線4を介して第2装置3に向けて送信され得る。予め設定されたタイミングは、例えば、一定の時間間隔のタイミングであってもよいし、所定数の撮像画像の取得ごとのタイミングであってもよいし、第1ユーザU1などの動作に応答して入力部2inで入力される信号に応答するタイミングでもよい。
出力部2ouは、例えば、撮像部21によって取得された撮像画像などを、可視的に出力することができる。
入力部2inは、例えば、第1ユーザU1の動作に応じて、第1画像処理装置20において各種信号を入力することができる。このとき、第1画像処理装置20では、例えば、入力された各種信号に応じた撮像などの動作がおこなわれ得る。
<1−3.第2装置の構成>
<1−3−1.第2装置の電気的な構成>
図5で示されるように、第2装置3は、例えば、制御部300、表示部33、スピーカ34、通信部35、タッチパネル36および操作部37を備えている。
制御部300は、例えば、一種の演算処理装置であって、例えば、電気回路であるCPU(Central Processing Unit)310および記憶媒体330などを備えている。制御部300は、例えば、第2装置3の他の構成要素を制御することで、第2装置3の動作を統括的に管理することが可能である。第2装置3は、例えば、上記第1装置2と同様に、SoC(System-on-a-Chip)、MCU(Micro Control Unit)およびFPGA(Field-Programmable Gate Array)などの副処理装置(co-processor)をさらに含んでいてもよい。また、第2装置3は、例えば、上記第1装置2と同様に、CPU(Central Processing Unit)および副処理装置の双方を協働させるか、あるいは双方のうちの一方を選択的に用いて、各種の制御をおこなってもよい。
制御部300は、例えば、上記第1装置2の制御部200と同様に、以下にさらに詳細に述べられるように、種々の機能を実行するための制御および処理能力を提供するために、少なくとも1つのプロセッサを含む。
記憶媒体330は、例えば、ROM(Read Only Memory)などの不揮発性メモリ330b、およびRAM(Random Access Memory)などの揮発性メモリ330aを有している。ROMには、例えば、フラッシュROM(フラッシュメモリ)などが含まれ得る。記憶媒体330には、第2装置3を制御するためのメインプログラムおよび複数のアプリケーションプログラム(アプリケーションともいう)などが記憶されている。制御部300の各種機能は、CPU310が記憶媒体330内の各種プログラムを実行することによって実現される。記憶媒体330には、例えば、第1装置2から送信されてきた複数の撮像画像を表示するための画像表示アプリケーションが記憶されている。記憶媒体330に記憶されるアプリケーションには、例えば、第2装置3を制御するための制御プログラム3Prが含まれている。ここで、第2装置3では、制御プログラム3PrをCPU310などで実行することで、第2画像処理装置30としての機能を実現することができる。換言すれば、制御プログラム3Prによって、第2画像処理装置30が制御され得る。
記憶媒体330は、ROMおよびRAM以外の、コンピュータが読み取り可能な非一時的な記録媒体を備えていてもよい。記憶媒体330は、例えば、ハードディスクドライブおよびSSD(Solid State Drive)などを備えていてもよい。記憶媒体330とは別の記憶媒体が存在していてもよい。この記憶媒体は制御部300の外部に位置していてもよい。後述する情報の記憶先は、記憶媒体330であってもよく、他の記憶媒体であってもよい。制御部300の全ての機能あるいは制御部300の一部の機能は、その機能の実現にソフトウェアが不要なハードウェアによって実現されても構わない。制御部300は回路によって形成されていればよい。
表示部33は、例えば、上記第1装置2の表示部23と同様に、表示パネルおよび表示画面を有している。この表示パネルは、制御部300に制御されることで、画像、文字、記号および図形などの各種情報を表示することが可能である。表示パネルが可視的に出力する各種情報は、表示画面に表示される。これにより、表示部33は、例えば、各種の情報を第2ユーザU2が認識可能な態様で可視的に出力することができる。ここで各種の情報には、例えば、通信部35で受信される撮像画像などが含まれ得る。
スピーカ34は、例えば、上記第1装置2のスピーカ24と同様に、音声を出力することができる。例えば、スピーカ34では、制御部300からの電気的な音信号が音に変換されて出力され得る。これにより、スピーカ34は、例えば、音声情報を第2ユーザU2が可聴的に認識可能な態様で出力することができる。
通信部35は、例えば、上記第1装置2の通信部25と同様に、通信用のインターフェースであって、通信回線4とデータの送受信が可能な態様で接続されている。このため、通信部35は、例えば、通信回線4を介して、第1装置2と通信可能に接続されている。この通信部35は、例えば、制御部300で生成された信号に対して適宜所定の信号処理をおこなったうえで、処理後の送信信号を通信回線4に向けて送信することが可能である。通信部35から通信回線4への送信信号は、例えば、通信回線4に接続された第1装置2などで受信される。
上記のように、例えば、表示部33は、情報を可視的に出力することが可能であり、スピーカ34は、情報を可聴的に出力することが可能であり、通信部35は、情報をデータの形式で出力することが可能である。このため、例えば、表示部33、スピーカ34および通信部35は、情報を出力する出力部3ouを構成し得る。
また、通信部35は、例えば、第2装置3とは別の装置からの信号を受信することが可能である。第2装置3とは別の装置には、例えば、通信回線4に接続された第1装置2が含まれる。ここで、通信部35は、例えば、通信回線4を介して、第1装置2から送信された、複数の撮像画像と、これらの複数の撮像画像のそれぞれの撮像時に係る視線方向情報と、を受信可能な受信部3reとしての機能を有する。換言すれば、ここで、通信部35は、例えば、通信回線4を介して、第1装置2から送信された、複数の撮像画像と、これらの複数の撮像画像のそれぞれの撮像時に係る視線方向情報と、を取得可能な取得部3acとしての機能を有する。
また、通信部35では、例えば、受信した信号に対して適宜所定の信号処理をおこなって制御部300に処理後の受信信号を出力することが可能である。例えば、通信部35では、受信した撮像画像を制御部300に出力することが可能である。このとき、制御部300では、通信部35によって順次に取得される複数の撮像画像が記憶媒体330に蓄積される。これにより、例えば、複数の撮像画像が蓄積されたデータベース(画像DBともいう)3Idが不揮発性メモリ330bなどに構築される。
タッチパネル36は、例えば、上記第1装置2のタッチパネル26と同様に、表示画面に対する指などによる操作を検出することが可能である。タッチパネル36は、第2ユーザU2が指などによって表示画面に対して操作をおこなうと、その操作に応じた電気信号がタッチパネル36から制御部300に入力される。これにより、制御部300は、タッチパネル36からの電気信号に基づいて、表示画面に対しておこなわれた操作の内容を特定して、その内容に応じた処理をおこなうことが可能である。第2ユーザU2は、例えば、指以外のスタイラスペンなどの静電式タッチパネル用ペンで表示画面を操作することによっても、第2装置3に対して各種指示を与えることができる。このタッチパネル36は、例えば、表示画面に対するスワイプ操作に応じて、表示部33の表示画面上に表示されている画像の範囲をスクロールさせることができる。また、このタッチパネル36は、例えば、表示画面に対するピンチインの操作に応じて、表示部33の表示画面上に表示されている画像を拡大させることができる。また、このタッチパネル36は、例えば、表示画面に対するピンチアウトの操作に応じて、表示部33の表示画面上に表示されている画像を縮小させることができる。
操作部37は、例えば、キーボードおよびマウスなどの構成を含み、第2ユーザU2による操作に応じた操作信号を制御部300に出力することができる。これにより、制御部300は、操作部37からの操作信号に基づいて、操作部37が操作されたか否かを判断することができる。制御部300は、例えば、操作部37に対する第2ユーザU2の操作に応じた処理をおこなうことが可能である。操作部37には、例えば、表示画面に表示されるソフトウェアボタンが含まれてもよい。この場合には、例えば、第2ユーザU2によるソフトウェアボタンへの操作がタッチパネル36によって検出され、制御部300では、第2ユーザU2によって操作されたソフトウェアボタンに応じた処理がおこなわれ得る。
このように、例えば、タッチパネル36および操作部37は、第2ユーザU2の動作に応答して操作信号を入力する入力部3inとなり得る。
<1−3−2.第2画像処理装置の機能的な構成>
図6は、第2装置3が第2画像処理装置30として機能する場合における、第2画像処理装置30の機能的な構成の一例を示す機能ブロック図である。図6で示されるように、第2画像処理装置30は、例えば、取得部3ac、出力部3ou、入力部3in、記憶媒体330、第1認識部311、第2認識部312、推定部313、情報設定部314、領域設定部315、検出部316および画像生成部317を備えている。ここで、第1認識部311、第2認識部312、推定部313、情報設定部314、領域設定部315、検出部316および画像生成部317は、例えば、記憶媒体330に格納された制御プログラム3Prを制御部300で実行することで実現され得る機能的な構成である。
<1−3−2−1.取得部>
取得部3acは、例えば、第1画像処理装置20から送信された、複数の撮像画像と、これらの複数の撮像画像のそれぞれの撮像時に係る視線方向情報と、を受信部3reとしての通信部35による受信によって取得することができる。
<1−3−2−2.出力部>
出力部3ouは、例えば、取得部3acによって取得された撮像画像の全部または一部、および後述する画像生成部317によって生成される合成画像などを出力することができる。合成画像は、例えば、撮像対象物Ob0の角部を挟む第1面と第2面とがそれぞれ捉えられた第1画像領域と第2画像領域とが合成されることで生成され得る。ここで、例えば、出力部3ouにおける画像の出力に、表示部33における可視的な出力が含まれていれば、第2画像処理装置30における合成画像の第2ユーザU2による視認などが可能となる。また、ここで、例えば、出力部3ouにおける画像の出力に、通信部35によるデータの出力が含まれていれば、第2画像処理装置30以外の他の装置における合成画像の視認もしくは蓄積、などが可能となる。
<1−3−2−3.入力部>
入力部3inは、例えば、第2ユーザU2の動作に応じて、第2画像処理装置30において各種信号を入力することができる。入力部3inでは、例えば、第2ユーザU2の動作に応じて、表示部33に表示されている各種画像の拡大または縮小を指示する信号が入力され得る。また、入力部3inでは、例えば、第2ユーザU2の動作に応じて、表示部33に表示されている各種画像のスクロールを指示する信号が入力され得る。
<1−3−2−4.記憶媒体>
記憶媒体330は、例えば、取得部3acによって取得された複数の撮像画像を記憶することができる。これにより、記憶媒体330において、例えば、複数の撮像画像が格納された画像DB3Idが構築され得る。画像DB3Idでは、例えば、各撮像画像が、対応する情報が関連付けられた状態で記憶され得る。ここで、対応する情報には、例えば、視線方向情報が含まれる。また、記憶媒体330は、例えば、後述する推定部313によって推定される撮像対象物Ob0の表面形状を示す情報(表面形状情報ともいう)を記憶することもできる。また、記憶媒体330は、例えば、後述する画像生成部317によって生成される合成画像などを記憶してもよい。これにより、例えば、第2画像処理装置30における合成画像の蓄積などが可能となる。また、記憶媒体330は、例えば、後述する情報設定部314によって設定される情報を記憶してもよい。
<1−3−2−5.第1認識部>
第1認識部311は、例えば、取得部3acで取得された複数の撮像画像のうちの1つの撮像画像(第1撮像画像ともいう)について、3つ以上の特徴部をそれぞれ捉えた3つ以上の画像部分(第1画像部分ともいう)を認識することができる。第1撮像画像として、例えば、撮像対象物Ob0をある1つの視線方向(第1視線方向ともいう)で捉えた撮像画像が採用される。特徴部には、例えば、凸部、凹部あるいは色彩もしくは濃淡のコントラストが大きな部分などにおける角部が含まれ得る。角部は、例えば、いわゆるコーナー検出法などによって撮像画像において認識され得る。ここで、3つ以上の第1画像部分が、例えば、仮想的な直線上に位置していない3つ以上の画像部分を含んでいれば、後述する推定部313における撮像対象物Ob0の表面形状の推定精度が向上し得る。さらに、例えば、3つ以上の第1画像部分に含まれる第1画像部分の数が多い程、後述する推定部313における撮像対象物Ob0の表面形状の推定精度が向上し得る。
<1−3−2−6.第2認識部>
第2認識部312は、例えば、取得部3acで取得された複数の撮像画像のうちの第1撮像画像とは異なる他の1つの撮像画像(第2撮像画像ともいう)について、3つ以上の特徴部をそれぞれ捉えた3つ以上の画像部分(第2画像部分ともいう)を認識することができる。ここで、3つ以上の特徴部としては、例えば、第1撮像画像における3つ以上の特徴部と同一のものが採用される。第2撮像画像としては、例えば、撮像対象物Ob0を第1視線方向とは異なる他の1つの視線方向(第2視線方向ともいう)で捉えた撮像画像が採用される。第2認識部312では、第1認識部311で認識された各第1画像部分または2以上の第1画像部分について、例えば、パターンマッチングまたは位相限定相関法などの対応点の探索方法が用いられて、第1画像部分と同一の特徴部を捉えた第2画像部分が認識される。これにより、例えば、捉えられた特徴点の形および構成が第1撮像画像と似ている第2撮像画像が、複数の撮像画像から検索され得る。
ここで、3つ以上の第2画像部分が、例えば、仮想的な直線上に位置していない3つ以上の画像部分を含んでいれば、後述する推定部313における撮像対象物Ob0の表面形状の推定精度が向上し得る。さらに、例えば、3つ以上の第2画像部分に含まれる第2画像部分の数が多い程、後述する推定部313における撮像対象物Ob0の表面形状の推定精度が向上し得る。ここで、例えば、第2視線方向に沿った視線(第2視線ともいう)と、第1視線方向に沿った視線(第1視線ともいう)との成す角度が、予め設定された閾値よりも大きければ、後述する推定部313における撮像対象物Ob0の表面形状の推定精度が向上し得る。
<1−3−2−7.推定部>
<1−3−2−7−1.撮像対象物の表面形状の推定>
推定部313は、例えば、3つ以上の第1画像部分の位置関係(第1位置関係ともいう)と、3つ以上の第2画像部分の位置関係(第2位置関係ともいう)と、を用いて、撮像対象物Ob0の表面に係る形状(表面形状ともいう)を推定することができる。3つ以上の第1画像部分は、例えば、第1認識部311によって第1撮像画像において認識され得る。3つ以上の第2画像部分は、例えば、第2認識部312によって第2撮像画像において認識され得る。上記第1位置関係には、例えば、第1撮像画像における1つの方向(第1方向ともいう)での3つ以上の第1画像部分の間の距離の関係が含まれ得る。上記第2位置関係には、例えば、第2撮像画像における第1方向に対応する方向(第2方向ともいう)での3つ以上の第2画像部分の間の距離の関係が含まれ得る。このとき、例えば、撮像対象物Ob0の表面形状が容易に推定され得る。推定部313では、例えば、平坦な領域(平坦領域ともいう)あるいは2つの平坦な面(平坦面ともいう)が角部を介して接続している領域(接続領域ともいう)が推定されることで、撮像対象物Ob0の表面に係る表面形状が推定され得る。
ここで、第1撮像画像における第1方向および第2撮像画像における第2方向としては、例えば、撮像対象物Ob0上の1つの仮想的な線(仮想線ともいう)に沿った方向が採用される。この1つの仮想線には、例えば、第1撮像画像の撮像時における第1装置2の第1視線および第2撮像画像の撮像時における第1装置2の第2視線の双方を含む仮想的な平面(仮想平面ともいう)と、撮像対象物Ob0の表面と、が交差する仮想的な線が適用される。また、仮想平面は、例えば、第1方向に沿った第1視線および第2方向に沿った第2視線が平面上に位置するか否かに拘わらず、水平面など予め設定された平面であってもよいし、水平面などを含む複数の平面からユーザによって選択された平面であってもよい。
ここで、推定部313における撮像対象物Ob0の表面形状の推定方法について、具体例を挙げて説明する。
図7(a)、図8(a)および図9(a)には、第1撮像画像の撮像時における第1視線および第2撮像画像の撮像時における第2視線の双方を含む仮想平面に沿った、撮像対象物Ob0の断面が示されている。
まず、図7(a)で示されるように、撮像対象物Ob0の平坦面Sft0上に3つの特徴部P1,P2,P3が存在している場合を想定する。平坦面Sft0は、例えば、第1面Sf1あるいは第2面Sf2とされる。ここで、例えば、第1装置2によって視線方向v1で平坦面Sft0の撮像がおこなわれることで、図7(b)で示される第1撮像画像Ga1が取得される。また、例えば、第1装置2によって視線方向v2で平坦面Sft0の撮像がおこなわれることで、図7(c)で示される第2撮像画像Gb1が取得される。
図7(b)で示されるように、第1撮像画像Ga1には、例えば、第1画像部分として、画像部分p1a、画像部分p2aおよび画像部分p3aが含まれている。画像部分p1aでは、撮像対象物Ob0の特徴部P1が捉えられている。画像部分p2aでは、撮像対象物Ob0の特徴部P2が捉えられている。画像部分p3aでは、撮像対象物Ob0の特徴部P3が捉えられている。
図7(b)には、仮想線Lva1が二点鎖線で描かれている。仮想線Lva1は、例えば、第1撮像画像Ga1の撮像時における第1装置2の第1視線および第2撮像画像Gb1の撮像時における第1装置2の第2視線の双方を含む仮想平面と、撮像対象物Ob0と、が交差する部分に対応する。図7(b)の例では、第1撮像画像Ga1において、仮想線Lva1が伸びる方向において、画像部分plaと画像部分p2aとの間の距離がda1とされ、画像部分p2aと画像部分p3aとの間の距離がda2とされている。
数値da1は、特徴部P1を通り且つ第1撮像画像Ga1の撮像時における撮像部21の光軸に沿った仮想的な直線と、特徴部P2を通り且つ第1撮像画像Ga1の撮像時における撮像部21の光軸に沿った仮想的な直線と、の距離Da1に対応する。数値da2は、特徴部P2を通り且つ第1撮像画像Ga1の撮像時における撮像部21の光軸に沿った仮想的な直線と、特徴部P3を通り且つ第1撮像画像Ga1の撮像時における撮像部21の光軸に沿った仮想的な直線と、の距離Da2に対応する。
図7(c)で示されるように、第2撮像画像Gb1には、例えば、3つの第2画像部分として、画像部分p1b、画像部分p2bおよび画像部分p3bが含まれている。画像部分p1bでは、撮像対象物Ob0の特徴部P1が捉えられている。画像部分p2bでは、撮像対象物Ob0の特徴部P2が捉えられている。画像部分p3bでは、撮像対象物Ob0の特徴部P3が捉えられている。
図7(c)には、仮想線Lvb1が二点鎖線で描かれている。仮想線Lvb1は、例えば、第1撮像画像Ga1の撮像時における第1装置2の第1視線および第2撮像画像Gb1の撮像時における第1装置2の第2視線の双方を含む仮想平面と、撮像対象物Ob0と、が交差する部分に対応する。図7(c)の例では、第2撮像画像Gb1において、仮想的線Lvb1が伸びる方向において、画像部分plbと画像部分p2bとの間の距離がdb1とされ、画像部分p2bと画像部分p3bとの間の距離がdb2とされている。
数値db1は、特徴部P1を通り且つ第2撮像画像Gb1の撮像時における撮像部21の光軸に沿った仮想的な直線と、特徴部P2を通り且つ第2撮像画像Gb1の撮像時における撮像部21の光軸に沿った仮想的な直線と、の距離Db1に対応する。数値db2は、特徴部P2を通り且つ第2撮像画像Gb1の撮像時における撮像部21の光軸に沿った仮想的な直線と、特徴部P3を通り且つ第2撮像画像Gb1の撮像時における撮像部21の光軸に沿った仮想的な直線と、の距離Db2に対応する。
このとき、推定部313では、例えば、次の式(1)が成立すれば、3つの特徴部P1,P2,P3を含む第1面Sf1または第2面Sf2の領域が平坦な領域(平坦領域)であるものと推定され得る。
da1:da2=db1:db2 ・・・(1)。
次に、図8(a)で示されるように、撮像対象物Ob0のうちの2つの平坦面が角部Cn1を介して接続している山型の領域の面(山型面ともいう)Sfm0上に5つの特徴部P4,P5,P6,P7,P8が存在している場合を想定する。2つの平坦面は、第1面Sf1および第2面Sf2とされる。ここで、例えば、第1装置2によって視線方向v3で山型面Sfm0の撮像がおこなわれることで、図8(b)で示される第1撮像画像Ga2が取得される。また、例えば、第1装置2によって視線方向v4で山型面Sfm0の撮像がおこなわれることで、図8(c)で示される第2撮像画像Gb2が取得される。
図8(b)で示されるように、第1撮像画像Ga2には、例えば、5つの第1画像部分として、画像部分p4a、画像部分p5a、画像部分p6a、画像部分p7aおよび画像部分p8aが含まれている。画像部分p4aには、撮像対象物Ob0の特徴部P4が捉えられている。画像部分p5aには、撮像対象物Ob0の特徴部P5が捉えられている。画像部分p6aには、撮像対象物Ob0の特徴部P6が捉えられている。画像部分p7aには、撮像対象物Ob0の特徴部P7が捉えられている。画像部分p8aには、撮像対象物Ob0の特徴部P8が捉えられている。
図8(b)には、仮想線Lva2が二点鎖線で描かれている。仮想線Lva2は、第1撮像画像Ga2の撮像時における第1装置2の第1視線および第2撮像画像Gb2の撮像時における第1装置2の第2視線の双方を含む仮想平面と、撮像対象物Ob0と、が交差する部分に対応する。図8(b)の例では、第1撮像画像Ga2において、仮想線Lva2が伸びる方向において、画像部分p4aと画像部分p5aとの間の距離がda3とされ、画像部分p5aと画像部分p6aとの間の距離がda4とされている。また、図8(b)の例では、第1撮像画像Ga2において、仮想線Lva2が伸びる方向において、画像部分p6aと画像部分p7aとの間の距離がda5とされ、画像部分p7aと画像部分p8aとの間の距離がda6とされている。
数値da3は、特徴部P4を通り且つ第1撮像画像Ga2の撮像時における撮像部21の光軸に沿った仮想的な直線と、特徴部P5を通り且つ第1撮像画像Ga2の撮像時における撮像部21の光軸に沿った仮想的な直線と、の距離Da3に対応する。数値da4は、特徴部P5を通り且つ第1撮像画像Ga2の撮像時における撮像部21の光軸に沿った仮想的な直線と、特徴部P6を通り且つ第1撮像画像Ga2の撮像時における撮像部21の光軸に沿った仮想的な直線と、の距離Da4に対応する。数値da5は、特徴部P6を通り且つ第1撮像画像Ga2の撮像時における撮像部21の光軸に沿った仮想的な直線と、特徴部P7を通り且つ第1撮像画像Ga2の撮像時における撮像部21の光軸に沿った仮想的な直線と、の距離Da5に対応する。数値da6は、特徴部P7を通り且つ第1撮像画像Ga2の撮像時における撮像部21の光軸に沿った仮想的な直線と、特徴部P8を通り且つ第1撮像画像Ga2の撮像時における撮像部21の光軸に沿った仮想的な直線と、の距離Da6に対応する。
図8(c)で示されるように、第2撮像画像Gb2には、例えば、5つの第2画像部分として、画像部分p4b、画像部分p5b、画像部分p6b、画像部分p7bおよび画像部分p8bが含まれている。画像部分p4bには、撮像対象物Ob0の特徴部P4が捉えられている。画像部分p5bには、撮像対象物Ob0の特徴部P5が捉えられている。画像部分p6bには、撮像対象物Ob0の特徴部P6が捉えられている。画像部分p7bには、撮像対象物Ob0の特徴部P7が捉えられている。画像部分p8bには、撮像対象物Ob0の特徴部P8が捉えられている。
図8(c)には、仮想線Lvb2が二点鎖線で描かれている。仮想線Lvb2は、第1撮像画像Ga2の撮像時における第1装置2の第1視線および第2撮像画像Gb2の撮像時における第1装置2の第2視線の双方を含む仮想平面と、撮像対象物Ob0と、が交差する部分に対応する。図8(c)の例では、第2撮像画像Gb2において、仮想線Lvb2が伸びる方向において、画像部分p4bと画像部分p5bとの間の距離がdb3とされ、画像部分p5bと画像部分p6bとの間の距離がdb4とされている。また、図8(c)の例では、第2撮像画像Gb2において、仮想線Lvb2が伸びる方向において、画像部分p6bと画像部分p7bとの間の距離がdb5とされ、画像部分p7bと画像部分p8bとの間の距離がdb6とされている。
数値db3は、特徴部P4を通り且つ第2撮像画像Gb2の撮像時における撮像部21の光軸に沿った仮想的な直線と、特徴部P5を通り且つ第2撮像画像Gb2の撮像時における撮像部21の光軸に沿った仮想的な直線と、の距離Db3に対応する。数値db4は、特徴部P5を通り且つ第2撮像画像Gb2の撮像時における撮像部21の光軸に沿った仮想的な直線と、特徴部P6を通り且つ第2撮像画像Gb2の撮像時における撮像部21の光軸に沿った仮想的な直線と、の距離Db4に対応する。数値db5は、特徴部P6を通り且つ第2撮像画像Gb2の撮像時における撮像部21の光軸に沿った仮想的な直線と、特徴部P7を通り且つ第2撮像画像Gb2の撮像時における撮像部21の光軸に沿った仮想的な直線と、の距離Db5に対応する。数値db6は、特徴部P7を通り且つ第2撮像画像Gb2の撮像時における撮像部21の光軸に沿った仮想的な直線と、特徴部P8を通り且つ第2撮像画像Gb2の撮像時における撮像部21の光軸に沿った仮想的な直線と、の距離Db6に対応する。
ここで、推定部313では、例えば、次の式(2)が成立すれば、山型面Sfm0のうちの3つの特徴部P4,P5,P6を含む第1面Sf1の領域が、平坦領域であるものと推定され得る。
da3:da4=db3:db4 ・・・(2)。
また、推定部313では、例えば、次の式(3)が成立すれば、山型面Sfm0のうちの3つの特徴部P6,P7,P8を含む第2面Sf2の領域が、平坦領域であるものと推定され得る。
da5:da6=db5:db6 ・・・(3)。
また、推定部313では、例えば、次の式(4)が成立しなければ、山型面Sfm0の3つの特徴部P5,P6,P7を含む面の領域が、2つの平坦面としての第1面Sf1と第2面Sf2とが角部Cn1を介して接続している接続領域であるものと推定される。
da4:da5=db4:db5 ・・・(4)。
このようにして、推定部313では、例えば、平坦領域あるいは接続領域が推定されることで、撮像対象物Ob0の表面に係る表面形状が推定され得る。ここで、推定部313で推定された撮像対象物Ob0の表面形状は、例えば、記憶媒体330に記憶される。このとき、例えば、推定部313で推定された撮像対象物Ob0の表面形状の各部分に対して、表面形状を推定する際に用いられた特徴部を捉えた画像部分が関連付けられ得る。
また、推定部313では、例えば、1つの面の法線方向が推定されてもよい。1つの面は、平坦な第1面Sf1であってもよいし、平坦な第2面Sf2であってもよい。ここで、図9(a)で示されるように、撮像対象物Ob0の平坦面Sft0上に3つの特徴部P9,P10,P11が存在している場合を想定する。平坦面Sft0は、例えば、第1面Sf1あるいは第2面Sf2とされる。例えば、第1装置2によって第1視線方向としての視線方向v5で平坦面Sft0の撮像がおこなわれることで、図9(b)で示される第1撮像画像Ga3が取得される。また、例えば、第1装置2によって第2視線方向としての視線方向v6で平坦面Sft0の撮像がおこなわれることで、図9(c)で示される第2撮像画像Gb3が取得される。
図9(b)で示されるように、第1撮像画像Ga3には、例えば、第1画像部分として、画像部分p9a、画像部分p10aおよび画像部分p11aが含まれている。画像部分p9aでは、撮像対象物Ob0の特徴部P9が捉えられている。画像部分p10aでは、撮像対象物Ob0の特徴部P10が捉えられている。画像部分p11aでは、撮像対象物Ob0の特徴部P11が捉えられている。図9(b)には、仮想線Lva3が二点鎖線で描かれている。仮想線Lva3は、第1撮像画像Ga3の撮像時における第1装置2の第1視線および第2撮像画像Gb3の撮像時における第1装置2の第2視線の双方を含む仮想平面と、撮像対象物Ob0と、が交差する部分に対応する。
図9(c)で示されるように、第2撮像画像Gb3には、例えば、第2画像部分として、画像部分p9b、画像部分p10bおよび画像部分p11bが含まれている。画像部分p9bでは、撮像対象物Ob0の特徴部P9が捉えられている。画像部分p10bでは、撮像対象物Ob0の特徴部P10が捉えられている。画像部分p11bでは、撮像対象物Ob0の特徴部P11が捉えられている。図9(c)には、仮想線Lvb3が二点鎖線で描かれている。仮想線Lvb3は、第1撮像画像Ga3の撮像時における第1装置2の第1視線および第2撮像画像Gb3の撮像時における第1装置2の第2視線の双方を含む仮想平面と、撮像対象物Ob0と、が交差する部分に対応する。
ここで、第1視線方向としての視線方向v5で平坦面Sft0の撮像がおこなわれることで得られた第1撮像画像Ga3において第1方向での3つの画像部分p9a,p10a,p11aの間の距離Da0が予め設定された画素数の距離以下となっているものとする。第1方向は、例えば、仮想線Lva3に沿った方向である。予め設定された画素数の距離としては、例えば、隣接する1画素の距離が採用される。また、第2視線方向としての視線方向v6で平坦面Sft0の撮像がおこなわれることで得られた第2撮像画像Gb3において第2方向での3つの画像部分p9b,p10b,p11bの間の距離Db0が予め設定された画素数の距離以下となっているものとする。第2方向は、例えば、仮想線Lvb3に沿った方向である。予め設定された画素数の距離としては、例えば、隣接する1画素の距離が採用される。
このとき、視線方向v5と視線方向v6とが約180度を成している。このため、例えば、推定部313では、視線方向v5と、視線方向v6と、に基づき、第1面Sf1の法線方向(第1法線方向ともいう)あるいは第2面Sf2の法線方向(第2法線方向ともいう)が推定され得る。これにより、例えば、撮像対象物Ob0の第1面Sf1あるいは第2面Sf2の向きを容易に推定することができる。
ここでは、例えば、視線方向v5および視線方向v6のそれぞれがベクトルで表現されている場合を想定する。この場合には、例えば、視線方向v5の単位ベクトルと、視線方向v6の単位ベクトルと、の和の逆向きのベクトルが、第1法線方向および第2法線方向となり得る。
<1−3−2−7−2.撮像対象物を捉えた部分とその他の部分との区別>
推定部313は、例えば、複数の撮像画像を対象として、第1位置関係と第2位置関係とに基づいて、撮像対象物Ob0を捉えた領域(対象物領域ともいう)と、撮像対象物Ob0以外の部分を捉えた領域(非対象物領域ともいう)と、を推定することができる。換言すれば、推定部313は、例えば、複数の撮像画像に含まれる第1撮像画像および第2撮像画像について、撮像対象物Ob0を捉えた対象物領域と、背景を捉えた背景領域と、を区別することができる。第1位置関係は、例えば、上述したように、第1撮像画像における3つ以上の特徴部を捉えた3つ以上の第1画像部分の位置関係である。第2位置関係は、例えば、上述したように、第2撮像画像における3つ以上の特徴部を捉えた3つ以上の第2画像部分の位置関係である。
ここで、例えば、図10で示されるように、第1装置2を用いて、撮像対象物Ob0の角部Cn1を含む領域A1を、3つの相互に異なる視線方向v31,v32,v33で時間順次に撮像する場合を想定する。この場合、上述したように、例えば、推定部313によって、撮像対象物Ob0における領域A1を捉えた3つの撮像画像の間で、3つ以上の特徴部を捉えた3つの以上の画像部分の比較によって、領域A1の表面形状が推定され得る。これにより、例えば、連続的に連なっている撮像対象物Ob0の表面形状が認識され得る。
ところで、例えば、視線方向v31で領域A1を撮像することで得られる撮像画像では、領域A1だけでなく背景である壁600wlも捉えられている。このため、例えば、視線方向v31に係る撮像画像については、壁600wlを捉えた部分についても、3つ以上の特徴部を捉えた3つ以上の画像部分が認識され得る。一方、例えば、視線方向v31とは異なる視線方向v32,v33で領域A1を撮像することで得られる撮像画像では、背景である壁600wlが捉えられていない。このため、壁600wlについての表面形状は推定されない。これにより、例えば、推定部313では、表面形状が推定される領域が、撮像対象物Ob0を構成しているものと推定され得る。したがって、撮像画像について、撮像対象物Ob0を捉えた対象物領域と、背景を捉えた背景領域と、が区別され得る。
<1−3−2−7−3.撮像対象物の表面形状の推定の対象>
例えば、図11で示されるように、撮像対象物Ob0の周囲を一周回りながら、撮像対象物Ob0の外観について、第1装置2を用いて側方から時間順次にN回(Nは4以上の整数)の撮像をおこなう場合を想定する。ここでは、例えば、位置Tp1から撮像対象物Ob0の領域A0を撮像した後に、撮像対象物Ob0の周囲を約1周回り、位置TpNから領域A0を再度撮像するものとする。このとき、位置Tp1からの撮像で得られる撮像画像、および位置TpNからの撮像で得られる撮像画像の双方に、同一の複数の特徴部Px1,Px2,Px3,Px4をそれぞれ捉えた複数の画像部分が含まれている。このため、例えば、推定部313では、第1装置2によるN回の撮像で得られたN枚の撮像画像で構成される一連の複数の撮像画像を対象として、撮像対象物Ob0の周囲の表面形状が推定され得る。
<1−3−2−8.情報設定部>
情報設定部314は、例えば、複数の撮像画像について、表示への利用の許否および後述する画像生成部317による合成画像の生成への利用の許否に係る情報(許否情報ともいう)を、画像領域ごとに設定することができる。許否情報は、例えば、利用の許可に係る情報(許可情報ともいう)であってもよいし、利用の禁止に係る情報(禁止情報ともいう)であってもよい。
具体的には、情報設定部314では、例えば、複数の撮像画像について、推定部313で推定された対象物領域に対して許可情報が設定されてもよいし、推定部313で推定された非対象物領域に対して禁止情報が設定されてもよい。この場合には、例えば、出力部3ouでは、取得部3acで取得された複数の撮像画像のうち、許可情報が設定された対象物領域に係る画像領域が可視的に出力されてもよいし、禁止情報が設定された非対象物領域を除く領域に係る画像領域が出力されてもよい。
これにより、例えば、ユーザに対して必要な部分についての画像が表示され得る。このとき、例えば、撮像が行われた第1装置2とは異なる他の第2装置3において、必要な部分の画像が出力され得る。換言すれば、対象物領域以外の必要以上の部分が第2ユーザU2によって視認されないようにすることができる。その結果、例えば、情報セキュリティーの向上が図られ得る。
<1−3−2−9.領域設定部>
領域設定部315は、例えば、推定部313で推定された撮像対象物Ob0の表面形状と、ユーザの動作に応答して入力される信号と、に基づいて、撮像対象物Ob0の表面に対して処理の対象となる領域(処理対象領域ともいう)を設定することができる。信号には、例えば、入力部3inにおいて第2ユーザU2の動作に応じて入力される信号が含まれる。処理対象領域には、例えば、表示部33において可視的な出力の処理対象となる領域(表示対象領域ともいう)、および画像生成部317において合成画像の生成処理の対象となる領域(合成対象領域ともいう)が含まれる。ここで、第2ユーザU2の動作としては、例えば、マウスホイールの回転あるいは表示画面に対するピンチインおよびピンチアウトの操作などが挙げられる。
ここで、例えば、図12(a)で示されるように、表示部33の表示画面Sc0に撮像対象物Ob0の領域Ar0が捉えられた画像部分Ip0が表示されている状態を想定する。この状態で、表示画面Sc0に対してピンチインの操作がおこなわれると、撮像対象物Ob0の領域Ar0に包含されている領域Ar1が捉えられた画像部分Ip1が、図12(b)で示されるように、表示画面Sc0全体に拡大表示され得る。このとき、表示対象領域は、画像部分Ip0から画像部分Ip1に変更される。換言すれば、表示に係る拡大率が変更され得る。
ここでは、表示対象領域を示す情報は、例えば、推定部313によって推定された撮像対象物Ob0の表面形状の上に沿った形態で設定される。表示対象領域は、例えば、表示画面Sc0の形状に対応する矩形状の領域として設定される。具体的には、例えば、撮像対象物Ob0の平坦領域に対して、矩形状の表示対象領域が設定され得る。また、例えば、撮像対象物Ob0の接続領域に対して、矩形状の表示対象領域が角部で折り曲げられるように設定され得る。
また、領域設定部315は、例えば、推定部313で推定された撮像対象物Ob0の表面形状と、ユーザの動作に応答して入力される信号と、に基づいて、表示対象領域あるいは合成対象領域を変更することができる。信号には、例えば、入力部3inにおいて第2ユーザU2の動作に応じて入力される信号が含まれる。ここで、第2ユーザU2の動作としては、例えば、指などによる表示画面Sc0に対するスワイプ操作などが挙げられる。
ここで、例えば、図13(a)で示されるように、表示画面Sc0に撮像対象物Ob0の表示対象領域(既表示領域ともいう)Ar2が捉えられた画像部分Ip2が表示されている状態を想定する。この状態で、例えば、指Fg0などによる表示画面Sc0に対するスワイプ操作がおこなわれると、図13(b)で示されるように、既表示領域Ar2が捉えられた画像部分Ip2が移動する。このとき、表示画面Sc0では、例えば、既表示領域Ar2を捉えた画像部分Ip2の一部が表示画面Sc0の外に消え、既表示領域Ar2の残部Ar21を捉えた画像部分Ip21が表示される。また、例えば、表示画面Sc0のうちの画像部分Ip2がずれて存在しなくなった部分には、撮像対象物の既表示領域Ar2と隣接する領域(未表示領域ともいう)Ar22が捉えられた画像部分Ip22が新たに表示され得る。このようにして、例えば、第2ユーザU2は、表示画面Sc0に対するスワイプ操作によって、表示部33の表示画面Sc0上に表示されている画像をスクロールさせることができる。
ここで、例えば、表示部33で既に後述する合成画像(第1合成画像ともいう)が表示されている場合には、領域設定部315によって、合成対象領域が変更され得る。このとき、変更後の合成対象領域は、例えば、撮像対象物Ob0のうち、第1合成画像で捉えられている既表示領域Ar2の残部Ar21と、第1合成画像で捉えられていない撮像対象物Ob0の未表示領域Ar22と、を含む。
<1−3−2−10.検出部>
検出部316は、例えば、記憶媒体330の画像DB3Idに蓄積された複数の撮像画像のうち、領域設定部315によって設定された処理対象領域に対応する画像部分を検出することができる。検出部316では、例えば、推定部313によって推定された撮像対象物Ob0の表面形状の上に設定された処理対象領域について、処理対象領域に含まれる表面形状に関連付けられた画像部分が検出され得る。ここでは、例えば、処理対象領域が撮像対象物Ob0の第1面Sf1あるいは第2面Sf2に含まれている場合と、処理対象領域が撮像対象物Ob0の角部Cn1を挟む第1面Sf1と第2面Sf2とを含む場合と、が想定される。
検出部316では、例えば、領域設定部315によって接続領域に処理対象領域が設定されたことに応答して、複数の撮像画像から接続領域を構成する2つの平坦面をそれぞれ捉えた画像領域が検出され得る。ここでは、例えば、接続領域が、撮像対象物Ob0の表面のうちの2つの平坦面としての第1面Sf1と第2面Sf2とが角部Cn1を介して接続している領域である場合が考えられる。この場合、検出部316では、例えば、複数の撮像画像に含まれる第1面Sf1を捉えた第1画像領域と、複数の撮像画像に含まれる第2面Sf2を第1画像領域とは異なる視線方向で捉えた第2画像領域と、が検出され得る。
具体的には、例えば、検出部316は、上記推定部313で推定された第1面Sf1の第1法線方向に基づいて、第1面Sf1の法線に沿った視線方向で該第1面Sf1を捉えた第1画像領域を複数の撮像画像から検出することができる。また、検出部316は、例えば、上記推定部313で推定された第2面Sf2の第2法線方向に基づいて、第2面Sf2の法線に沿った視線方向で該第2面Sf2を捉えた第2画像領域を複数の撮像画像から検出することができる。これにより、例えば、後述する画像生成部317によって、第1画像領域と第2画像領域とが合成されることで、接続領域についての合成画像が生成されれば、撮像対象物Ob0の角部Cn1を含む接続領域について、歪みの小さな合成画像が生成され得る。その結果、第2ユーザU2は、例えば、表示部33に表示される歪みの小さな合成画像を見ることで、撮像対象物Ob0の状況を正しく把握することができる。
ここで、例えば、複数の撮像画像において、第1面Sf1の法線に沿った視線方向で該第1面Sf1を捉えた第1画像領域が存在していない場合もあり得る。この場合には、検出部316では、例えば、複数の撮像画像のうち、第1面Sf1の法線に最も近い視線方向で該第1面Sf1を捉えた第1画像領域が検出されてもよい。また、例えば、複数の撮像画像において、第2面Sf2の法線に沿った視線方向で該第2面Sf2を捉えた第2画像領域が存在していない場合もあり得る。この場合には、検出部316では、例えば、複数の撮像画像のうち、第2面Sf2の法線に最も近い視線方向で該第2面Sf2を捉えた第2画像領域が検出されてもよい。
ところで、上述したように、例えば、図13(a)および図13(b)で示されるように、表示部33の表示画面Sc0上に表示されている画像の範囲をスクロールさせる際には、領域設定部315によって表示対象領域が変更される。また、例えば、表示部33に合成画像が表示されていれば、領域設定部315によって、撮像対象物のうちの表示部33で可視的に出力される合成画像で捉えられた表示対象領域が変更され得る。ここで、変更後の表示対象領域は、例えば、撮像対象物Ob0のうち、表示部33で既に可視的に出力されている合成画像(第1合成画像)で捉えられている既表示領域Ar2の残部Ar21と、第1合成画像で捉えられていない未表示領域Ar22と、を含む。
この場合、検出部316は、例えば、上記領域設定部315によって変更後の処理対象領域としての合成対象領域が設定されたことに応答して、複数の撮像画像から、未表示領域Ar22を捉えた画像部分(第3画像部分ともいう)Ip22を検出することができる。この第3画像部分は、例えば、変更後の合成対象領域に係る合成画像の生成に用いられ得る。検出部316では、例えば、未表示領域Ar22の設定に応答して、画像DB3Idの複数の撮像画像について、推定部313で推定された撮像対象物Ob0の表面形状と、領域設定部315で設定された処理対象領域と、に基づき、第3画像部分Ip22が検出される。このとき、検出部316では、例えば、推定部313によって推定された撮像対象物Ob0の表面形状の上に設定された処理対象領域について、記憶媒体330において処理対象領域に含まれる表面形状に関連付けられた画像部分が検出され得る。
<1−3−2−11.画像生成部>
画像生成部317は、例えば、検出部316で検出された画像部分に基づいて、処理対象領域に係る画像を生成することができる。
ここで、例えば、処理対象領域が撮像対象物Ob0の第1面Sf1あるいは第2面Sf2に含まれている場合が考えられる。この場合には、処理対象領域に対して、検出部316で検出された画像部分が、そのまま処理対象領域に係る画像とされ得る。
一方、例えば、処理対象領域が撮像対象物Ob0の角部Cn1を挟む第1面Sf1と第2面Sf2とを含む場合が考えられる。この場合には、画像生成部317は、例えば、検出部316で検出された第1面Sf1に係る第1画像部分と第2面Sf2に係る第2画像部分とを合成することで、接続領域についての合成画像を生成することができる。ここでは、例えば、撮像対象物Ob0を相互に異なる方向から撮像して得られた第1画像部分と第2画像部分とが並べられるように合成される。これにより、例えば、撮像対象物Ob0を周囲の複数の角度から捉えた擬似的な3次元画像である合成画像が比較的少ない演算量で容易に取得され得る。その結果、例えば、撮像対象物Ob0を周囲の様々な角度から見た画像を得る画像処理における演算量が低減され得る。
画像生成部317で生成される合成画像は、上述したように、例えば、出力部3ouで出力されてもよいし、記憶媒体330に記憶されてもよい。このとき、出力部3ouにおける合成画像の出力には、例えば、表示部33における合成画像の可視的な出力、および通信部35による合成画像のデータの送信などが含まれ得る。これにより、例えば、第2画像処理装置30における合成画像の視認もしくは蓄積、あるいは他の装置における合成画像の視認もしくは蓄積、などが可能となる。ここで、例えば、表示部33において合成画像が可視的に出力されれば、第2画像処理装置30において、第2ユーザU2が合成画像を視認することができる。
ここで、例えば、第1画像領域と第2画像領域とが撮像対象物Ob0において角部を介して隣接する部分を捉えた領域であれば、画像生成部317では、撮像対象物Ob0の異なる方向から見ることができる隣接している画像領域を合成した合成画像が生成され得る。これにより、例えば、第2ユーザU2にとって撮像対象物Ob0を周囲の様々な方向から見た一覧性の良い画像が生成され得る。第1画像領域と第2画像領域とが隣接する領域であることは、例えば、推定部313によって推定された撮像対象物Ob0の表面形状から認識され得る。
ところで、例えば、表示画面Sc0上に合成画像(第1合成画像)が表示されている際に、表示画面Sc0上で画像の範囲をスクロールさせる場合を想定する。この場合には、画像生成部317は、例えば、既表示領域Ar2の一部を除く残部Ar21を捉えた画像部分(第4画像部分ともいう)Ip21と、検出部316で検出された第3画像部分Ip22と、を合成することで、第2合成画像を生成することができる。このとき、例えば、表示部33において第2合成画像が可視的に出力されれば、第2画像処理装置30において、第2ユーザU2は合成画像をスクロールさせることができる。
ここで、例えば、図14で示されるように、第1ユーザU1が、壁600wlと窓600wdとを含む背景600の前に位置する撮像対象物Ob0の周囲を移動しながら、第1装置2を用いて順に撮像をおこなった場合を想定する。ここでは、例えば、矢印Aw1,Aw2,Aw3,Aw4で示される視点位置および視線方向で第1装置2を用いて順に撮像がおこなわれ得る。このとき、撮像間において、矢印Aw1,Aw2,Aw3,Aw4で示される視点位置および視線方向の組が相互に異なる。図14の例では、撮像対象物Ob0は、角部Cn1を挟むように位置している第1面Sf1と第2面Sf2とを有している。
図14で示された条件での撮像がおこなわれた場合に、例えば、図15(a)は、矢印Aw1で示される視点位置および視線方向の組合せでの撮像で取得された撮像画像Im11を示している。例えば、図15(b)は、矢印Aw2で示される視点位置および視線方向の組合せでの撮像で取得された撮像画像Im12を示している。例えば、図15(c)は、矢印Aw3で示される視点位置および視線方向の組合せでの撮像で取得された撮像画像Im13を示している。例えば、図15(d)は、矢印Aw4で示される視点位置および視線方向の組合せでの撮像で取得された撮像画像Im14を示している。
図15(a)の例では、撮像画像Im11は、第1面Sf1を捉えた画像部分Ipaによって構成されている。図15(b)の例では、撮像画像Im12は、第1面Sf1を捉えた画像部分Ipa、壁600wlを捉えた画像部分Ipwlおよび窓600wdを捉えた画像部分Ipwdで構成されている。具体的には、撮像画像Im12では、例えば、左部で第1面Sf1が捉えられ、中央部から右端にかけた部分で背景600に含まれる壁600wlおよび窓600wdが捉えられている。図15(c)の例では、撮像画像Im13は、第1面Sf1を捉えた画像部分Ipa、第2面Sf2を捉えた画像部分Ipb、壁600wlを捉えた画像部分Ipwlおよび窓600wdを捉えた画像部分Ipwdで構成されている。具体的には、撮像画像Im13では、例えば、左端部近傍の部分で第1面Sf1と第2面Sf2とが捉えられ、その残部で、背景600に含まれる壁600wlおよび窓600wdが捉えられている。図15(d)の例では、撮像画像Im14は、第1面Sf1を捉えた画像部分Ipa、第2面Sf2を捉えた画像部分Ipbおよび壁600wlを捉えた画像部分Ipwlで構成されている。具体的には、撮像画像Im14では、例えば、左端部近傍の部分で第1面Sf1が捉えられ、中央部を含む広い部分で第2面Sf2が捉えられ、残りの右側の部分で背景600に含まれる壁600wlが捉えられている。
この場合に、例えば、図16(a)から図16(c)で示されるように、第2ユーザU2は、表示部33に表示される画像をスクロールさせることができる。具体的には、まず、図16(a)で示されるように、表示部33の表示画面Sc0全体に、撮像対象物Ob0の第1面Sf1を捉えた画像部分Ipaが表示される。次に、図16(a)から図16(b)で示されるように、表示画面Sc0の右側の部分から中央の部分に向けて指Fg0などを滑らせるスワイプ操作に応じて、表示画面Sc0上の画像が右から左へスクロールされる。このとき、表示画面Sc0では、撮像対象物Ob0の第1面Sf1を捉えた画像部分Ipaが左方にずれ、その画像部分Ipaの右側に続くように、撮像対象物Ob0の第2面Sf2を捉えた画像部分Ipbが出現する。さらに、図16(b)から図16(c)で示されるように、表示画面Sc0の中央の部分から左側の部分に向けて指Fg0などを滑らせるスワイプ操作に応じて、表示画面Sc0上の画像が右から左へスクロールされる。このとき、表示画面Sc0では、撮像対象物Ob0の第1面Sf1を捉えた画像部分Ipaがさらに左方にずれ、画像部分Ipaの右側に続くように、撮像対象物Ob0の第2面Sf2を捉えた画像部分Ipbがさらに左側にずれて大きく表示される。
このように、例えば、第1ユーザU1が、第1画像処理装置20を用いて撮像対象物Ob0について複数回の一連の撮像をおこなって、複数の撮像画像を蓄積しておけば、第2ユーザU2は、表示部33に表示される画像を任意にスクロールさせることができる。このため、例えば、第1ユーザU1に多大な作業を強いることなく、第2ユーザU2は自分のペースで撮像対象物Ob0を周囲の様々な角度から確認することができる。このため、例えば、第1ユーザU1および第2ユーザU2にとって、作業効率が向上し得る。さらに、ここでは、擬似的な3次元画像である合成画像の生成によって、比較的少ない演算量で、撮像対象物Ob0を周囲の様々な角度から見た画像を容易に得ることができる。
<1−4.画像処理システムの動作フロー>
<1−4−1.複数回の撮像動作>
図17は、画像処理システム1において撮像対象物Ob0についての複数回の撮像の動作(撮像動作ともいう)をおこなう際における動作フローの一例を示す流れ図である。この動作フローは、例えば、第1ユーザU1による第1画像処理装置20の入力部2inを介した信号の入力に応じて開始される。図17の例では、複数回の撮像のうち、便宜的に2回の撮像動作をおこなう部分に着目した動作フローが示されている。図18は、第1画像処理装置20における1回の撮像動作における動作フローの一例を示す流れ図である。
まず、図17のステップS1では、例えば、第1画像処理装置20において、第1ユーザU1による入力部2inを介した信号の入力に応答して、第1画像処理装置20において撮像動作がおこなわれる。撮像動作では、図18のステップS101からステップS103の処理が順におこなわれる。ステップS101では、撮像部21による撮像画像の取得がおこなわれる。ステップS102では、方向計測部221によって、撮像時の視線方向が計測されて、視線方向情報が取得される。ステップS101の処理およびステップS102の処理は、任意の順で実行されてもよいし、並行して実行されてもよい。ステップS103では、通信部25によって、ステップS101で取得された撮像画像と、ステップS102で取得された視点位置情報などの付属の情報(撮像付属情報ともいう)とが、第2装置3に送信される。
次に、図17のステップS2では、第1画像処理装置20から通信回線4などを介して第2画像処理装置30に、撮像画像および撮像付属情報が送信される。
ステップS3では、第2画像処理装置30において、取得部3acの通信部35によって、第1画像処理装置20からの撮像画像および撮像付属情報が受信され、撮像画像と撮像付属情報とが関連付けられた状態で記憶媒体330に記憶される。
ステップS4では、第2画像処理装置30において、ステップS3で受信および記憶された撮像画像が、表示部33で可視的に出力される。
続いて、ステップS5からステップS8では、上記ステップS1からステップS4と同様な処理がおこなわれる。
これにより、例えば、第2画像処理装置30では、取得部3acにより、視点位置および視線方向の組合せが相互に異なる条件で撮像対象物Ob0を捉えた複数の撮像画像と、各撮像画像の撮像時における視線方向を示す視線方向情報と、が取得される。
<1−4−2.撮像対象物の形状の推定>
図19は、第2画像処理装置30の制御部300において、M枚(Mは2以上の自然数)の撮像画像で捉えられた撮像対象物Ob0の表面形状を推定する際における動作フローの一例を示す流れ図である。この動作フローは、例えば、図17および図18で示された複数回の撮像動作に係る動作フローが終了した後に開始されてもよいし、複数回の撮像動作に係る動作フローと並行して実行されてもよい。ここでは、例えば、ステップS11からステップS22の処理がおこなわれることで、複数の撮像画像と、該複数の撮像画像のそれぞれに係る視線方向情報と、に基づいて、撮像対象物Ob0の表面形状が推定される。
ステップS11では、撮像画像の順番を規定する数値iが1に設定される。この数値iは、i番目の撮像画像が処理の対象である第1撮像画像となっていることを意味する。ここでは、例えば、取得部3acで取得されて記憶媒体330に記憶されている複数の撮像画像のうち、i番目の1つの撮像画像が、撮像対象物Ob0を第1視線方向で捉えた第1撮像画像とされる。
ステップS12では、i番目の撮像画像について、記憶媒体330から視線方向viが読み出される。例えば、i=1である場合には、1番目の撮像画像について、記憶媒体330から視線方向v1が読み出される。
ステップS13では、第1認識部311によって、記憶媒体330に格納されている複数の撮像画像のうちの第1撮像画像について、3つ以上の特徴部をそれぞれ捉えた3つ以上の第1画像部分が認識される。
ステップS14では、第2認識部312によって、第1撮像画像と3つ以上の同一の特徴部を捉えた第2撮像画像が検索される。このとき、第2認識部312では、記憶媒体330に格納されている複数の撮像画像のうちの撮像対象物Ob0を第2視線方向で捉えた第2撮像画像について、3つ以上の特徴部をそれぞれ捉えた3つ以上の第2画像部分が認識され得る。
ステップS15では、ステップS14の検索結果に応答して、第1撮像画像と3つ以上の同一の特徴部を捉えた第2撮像画像があるか否かが判定される。ここで、例えば、第1撮像画像と3つ以上の同一の特徴部を捉えた第2撮像画像があれば、ステップS16に進み、第2撮像画像がなければ、ステップS22に進む。
ステップS16では、第1撮像画像の撮像時における第1視線方向に沿った第1視線と、第2撮像画像の撮像時における第2視線方向に沿った第2視線との成す角度が算出される。
ステップS17では、ステップS16で算出された角度が、予め設定された閾値以上であるか否かが判定される。ここで、例えば、角度が閾値以上であれば、ステップS18に進み、角度が閾値以上でなければ、ステップS22に進む。
ステップS18では、推定部313によって、撮像対象物Ob0のうちの3つ以上の特徴部に係る表面形状が推定される。ここでは、ステップS13で認識された3つ以上の第1画像部分の第1位置関係と、ステップS14で認識された3つ以上の第2画像部分の第2位置関係と、が用いられて、撮像対象物Ob0の表面に係る表面形状が推定され得る。このとき、例えば、撮像対象物Ob0のうちの平面領域または2つの平面としての第1面Sf1と第2面Sf2とが角部を介して接続している接続領域が推定される。
ステップS19では、ステップS18で推定された表面形状が記憶媒体330に保存される。
ステップS20では、情報設定部314によって、第1撮像画像のうち、ステップS13で認識された3つ以上の第1画像部分を含む領域に対して、利用を許可する許可情報が設定される。
ステップS21では、数値iが数値Mに到達したか否か判定される。換言すれば、処理の対象となっているi番目の撮像画像が、M番目の撮像画像まで達したか否かが判定される。ここで、数値iが数値Mに到達していなければ、ステップS22に進む。また、数値iが数値Mに到達していれば、本動作フローが終了する。ステップS22では、数値iが1つ増加されて、ステップS12に戻る。
<1−4−3.処理対象領域の変更に応じた画像の生成および出力>
図20は、第2画像処理装置30において、記憶媒体330に記憶されている複数の撮像画像に基づいて表示部33に表示されている画像の拡大および縮小あるいはスクロールをおこなう際における動作フローの一例を示す流れ図である。この動作フローは、例えば、マウスホイールの回転または表示画面Sc0に対するピンチインもしくはピンチアウトの操作、あるいは表示画面Sc0上でのスワイプ操作などの第2ユーザU2の動作に応答して開始される。ここでは、例えば、ステップS31からステップS36の処理がおこなわれることで、第2ユーザU2による動作に応じた表示画面Sc0上での画像の出力が実行され得る。
ステップS31では、領域設定部315によって、推定部313で推定された撮像対象物Ob0の表面形状と、ユーザの動作に応答して入力される信号と、に基づいて、撮像対象物Ob0の表面に対して処理対象領域が設定される。このとき、例えば、表示画面Sc0上に撮像対象物Ob0の一部分が表示されていた場合には、処理対象領域が変更される。
ステップS32では、制御部300において、接続領域に処理対象領域が設定されたか否か判定される。ここで、例えば、接続領域に処理対象領域が設定されていなければ、ステップS33に進み、接続領域に処理対象領域が設定されていれば、ステップS34に進む。換言すれば、例えば、撮像対象物Ob0の表面のうちの第1面Sf1と第2面Sf2とが角部Cn1を介して接続している接続領域に対して処理対象領域が設定されたことに応答して、ステップS34に進む。
ステップS33では、検出部316によって、記憶媒体330に記憶されている複数の撮像画像において、平坦面に設定された処理対象領域に対応する画像部分が検出される。
ステップS34では、検出部316によって、記憶媒体330に記憶されている複数の撮像画像に含まれる、第1面Sf1を捉えた第1画像領域と、第2面Sf2を第1画像領域とは異なる視線方向で捉えた第2画像領域と、が検出される。換言すれば、検出部316では、例えば、領域設定部315によって接続領域に処理対象領域が設定されたことに応答して、複数の撮像画像から接続領域を構成する2つの平坦面をそれぞれ捉えた画像領域が検出され得る。
ステップS35では、画像生成部317によって、ステップS34で検出された、第1画像領域と第2画像領域とが合成されることで、接続領域についての合成画像が生成される。
ステップS36では、例えば、ステップS33から進んで来た場合には、表示部33によって、ステップS33で検出された画像部分が可視的に出力される。例えば、ステップS35から進んで来た場合には、表示部33によって、ステップS35で生成された合成画像が可視的に出力される。
<1−5.第1実施形態のまとめ>
以上のように、第1実施形態に係る画像処理システム1および第2画像処理装置30では、例えば、視点位置および視線方向の組合せが相互に異なる条件で撮像対象物Ob0を捉えた複数の撮像画像と、各撮像画像についての撮像時の視線方向情報と、が取得される。撮像対象物Ob0を第1視線方向で捉えた第1撮像画像について、3つ以上の特徴部を第1視線方向で捉えた3つ以上の第1画像部分が認識される。撮像対象物Ob0を第2視線方向で捉えた第2撮像画像について、3つ以上の特徴部をそれぞれ捉えた3つ以上の第2画像部分が認識される。3つ以上の第1画像部分の第1位置関係と、3つ以上の第2画像部分の第2位置関係と、を用いて、撮像対象物Ob0の表面形状が推定される。この推定された表面形状と、ユーザの動作に応答して入力される信号と、に基づいて、撮像対象物Ob0に対して処理対象領域が設定される。ここで、撮像対象物Ob0の表面のうちの第1面Sf1と第2面Sf2とが角部Cn1を介して接続している接続領域に処理対象領域が設定されれば、複数の撮像画像から、第1面Sf1を第1視線方向で捉えた第1画像領域と、第2面Sf2を第2視線方向で捉えた第2画像領域と、が検出される。そして、第1画像領域と第2画像領域とが合成されることで、接続領域についての合成画像が生成され得る。
このような構成が採用されれば、例えば、撮像時における第1装置2の視線方向の情報を用いて撮像対象物Ob0の表面形状を推定して、擬似的な3次元画像である合成画像を生成することができる。ここでは、例えば、撮像対象物を相互に異なる方向から撮像して得られた第1画像部分と第2画像部分とが並べられるように合成される。これにより、例えば、撮像対象物を周囲の複数の角度から捉えた擬似的な3次元画像である合成画像が比較的少ない演算量で容易に取得され得る。その結果、例えば、撮像対象物を周囲の様々な角度から見た画像を得る画像処理における演算量が低減され得る。
そして、例えば、第1ユーザU1が、第1画像処理装置20を用いて撮像対象物Ob0について複数回の一連の撮像をおこなって、複数の撮像画像を蓄積しておけば、第2ユーザU2は、表示部33に表示される画像を任意にスクロールさせることができる。このため、例えば、第1ユーザU1に多大な作業を強いることなく、第2ユーザU2は自分のペースで撮像対象物Ob0を周囲の様々な角度から確認することができる。このため、例えば、第1ユーザU1および第2ユーザU2にとって、作業効率が向上し得る。
また、例えば、撮像時における第1装置2の位置情報を用いることなく、撮像時における第1装置2の視線方向の情報を用いて撮像対象物Ob0の表面形状を推定して、擬似的な3次元画像である合成画像を生成することができる。
撮像時における第1装置2の位置情報は、例えば、人工衛星との通信を用いた全球測位衛星システム(Global Navigation Satellite System:GNSS)における各種の測位システムなどを用いて取得され得る。GNSSには、例えば、GPS(Global Positioning System)、GLONASS(Global Navigation Satellite System)、ガリレオ(Galileo)または準天頂衛星(Quasi-Zenith Satellite System:QZSS)などの測位システムが含まれる。ただし、例えば、屋内に撮像対象物Ob0が存在していれば、屋根および壁などによって人工衛星との通信が妨げられる。このため、撮像時における第1装置2の位置情報を精度良く取得することは容易でない。また、例えば、屋内に事前に電波を中継するアンテナなどを設けても、製造コストの上昇を招き、撮像時における第1装置2の正確な位置情報を容易に取得することができない。
また、撮像時における第1装置2の位置情報は、例えば、加速度センサを用いることで取得され得る。ただし、加速度センサによる計測に誤差が発生しやすく、撮像時における第1装置2の位置情報を精度良く取得することは容易でない。
<2.他の実施形態>
本開示は上述の第1実施形態に限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更、改良等が可能である。
<2−1.第2実施形態>
上記第1実施形態では、第1画像処理装置20で撮像対象物Ob0の撮像がおこなわれ、第2画像処理装置30で複数の撮像画像を用いた合成画像の生成および画像の表示がおこなわれた。これに対し、例えば、第1画像処理装置20において、撮像対象物Ob0の撮像がおこなわれ、さらに、撮像対象物Ob0の表面形状の推定ならびに複数の撮像画像を用いた合成画像などの生成および表示がおこなわれてもよい。これにより、例えば、1台の装置において、複数の撮像画像を取得するための撮像から撮像対象物Ob0を周囲の様々な角度から見た画像を得る画像処理まで容易に実行することができる。また、上記第1実施形態と同様に、例えば、撮像対象物Ob0を周囲の様々な角度から見た画像を得る画像処理における演算量が低減され得る。
具体的には、例えば、図21で示されるように、第2実施形態に係る第1画像処理装置20Aは、例えば、上記第1実施形態に係る第1画像処理装置20の機能に加えて、上記第1実施形態に係る第2画像処理装置30と同様な機能を有していてもよい。ここでは、上記第1実施形態に係る第2画像処理装置30と同様な機能には、例えば、第1認識部311、第2認識部312、推定部313、情報設定部314、領域設定部315、検出部316および画像生成部317が含まれる。第1画像処理装置20Aでは、例えば、記憶媒体230が記憶媒体330と同様な役割を果たし、出力部2ouが出力部3ouと同様な役割を果たし、入力部2inが入力部3inと同様な役割を果たし、取得部2acが取得部3acと同様な役割を果たす。
このような構成が採用されれば、例えば、第1画像処理装置20Aにおいて、表示部23で合成画像が可視的に出力され、第1ユーザU1が合成画像を視認することができる。また、例えば、出力部2ouでは、複数の撮像画像のうちの許可情報が設定された対象物領域に係るデータが出力されてもよいし、複数の撮像画像のうちの禁止情報が設定された非対象物領域を除く領域に係るデータが出力されてもよい。これにより、例えば、ユーザに対して必要な部分についての画像が表示され得る。
<2−2.第3実施形態>
上記各実施形態に係る第1画像処理装置20,20Aにおいて、例えば、撮像対象物Ob0の撮像、撮像対象物Ob0の表面形状の推定ならびに複数の撮像画像における画像領域ごとの許否情報の設定がおこなわれてもよい。そして、上記各実施形態に係る第2画像処理装置30において、例えば、画像領域ごとに設定された許否情報に基づいて、複数の撮像画像を用いた合成画像の生成および画像の表示がおこなわれてもよい。これにより、例えば、第1装置2とは異なる他の第2装置3では、必要な部分の画像が出力されることで、情報セキュリティーの向上が図られ得る。
具体的には、例えば、図22で示されるように、第3実施形態に係る第1画像処理装置20Bは、例えば、上記第1実施形態に係る第1画像処理装置20の機能に加えて、上記第1実施形態に係る第2画像処理装置30の一部の機能を有していてもよい。ここでは、上記第1実施形態に係る第2画像処理装置30の一部の機能には、例えば、第1認識部311、第2認識部312、推定部313および情報設定部314が含まれる。第1画像処理装置20Bでは、例えば、入力部2inが入力部3inと同様な役割を果たし、取得部2acが取得部3acと同様な役割を果たし得る。ここでは、例えば、通信部25によって、取得部2acで取得された複数の撮像画像と、推定部313で推定された撮像対象物Ob0の表面形状を示す表面形状情報と、情報設定部314で設定された許否情報と、が通信回線4を介して第2装置3に送信され得る。
一方、例えば、図23で示されるように、第3実施形態に係る第2画像処理装置30Bは、例えば、上記第1実施形態に係る第2画像処理装置30から、第1画像処理装置20Bに加えられた一部の機能が除かれてもよい。上記第1実施形態に係る第2画像処理装置30から除かれる一部の機能には、例えば、第1認識部311、第2認識部312、推定部313および情報設定部314が含まれる。第2画像処理装置30Bでは、例えば、出力部3ouで、取得部3acで取得された複数の撮像画像の許可情報が設定された対象物領域に係るデータが利用されてもよいし、複数の撮像画像の禁止情報が設定された非対象物領域を除く領域に係るデータが利用されてもよい。
さらに、例えば、出力部2ouによって、複数の撮像画像のうちの許可情報が設定された対象物領域に係るデータが出力されてもよいし、複数の撮像画像のうちの禁止情報が設定された非対象領域を除く画像領域に係るデータが出力されてもよい。このとき、例えば、データの出力先が第2装置3であれば、第1装置2とは異なる他の第2装置3において、対象物領域以外の必要以上の部分が第2ユーザU2によって視認されないようにすることができる。その結果、例えば、情報セキュリティーの向上が図られ得る。
<3.その他>
上記各実施形態において、例えば、合成画像の生成に用いられる第1画像部分および第2画像部分は、撮像対象物Ob0の相互に隣接する領域が捉えられたものでなくてもよい。例えば、撮像対象物Ob0のうち、第1面Sf1と第2面Sf2との境界にある角部を挟んで位置している2つの領域が、合成画像の生成に用いられる第1画像部分および第2画像部分によって捉えられていてもよい。ここで、角部としては、例えば、曲率を有するR面または面取りがなされたC面の部分が採用され得る。このような構成が採用されれば、図16(a)から図16(c)で示された表示画像をスクロールさせる様子は、図24(a)から図24(c)で示された表示画像をスクロールさせる様子となり得る。図24(b)および図24(c)の合成画像では、第1面Sf1に係る第1画像部分Ipaと、第2面Sf2に係る第1画像部分Ipbと、の間に、角部に相当する空白の部分が存在している。さらに、例えば、この空白の部分を設けることなく、第1面Sf1に係る第1画像部分Ipaと、第2面Sf2に係る第1画像部分Ipbと、を隙間無く並べるように、合成画像が生成されてもよい。
上記各実施形態では、例えば、合成画像は、表示に必要であるタイミングで一時的に生成されてもよいし、一旦生成された合成画像は、記憶媒体230,330などに蓄積されてもよい。
上記各実施形態では、例えば、撮像対象物Ob0の各面を正面から捉えた第1画像部分と第2画像部分とを合成することで、合成画像を生成してもよいし、撮像対象物Ob0の各面を異なる方向から捉えた第1画像部分と第2画像部分とが合成されてもよい。
上記各実施形態では、例えば、撮像対象物Ob0の異なる面の2以上の画像部分が合成されることなく、表示画面Sc0の中心部分の画像部分で捉えられた面の画像が選択的に表示画面Sc0に表示されてもよい。このとき、例えば、表示画面Sc0における画像のスクロールにより、表示画面Sc0の中心部分を、第1面Sf1を捉えた画像部分の端部が通過したタイミングで、表示画面Sc0に第2面Sf2を捉えた画像部分が表示され始めるような態様が考えられる。
上記各実施形態では、例えば、第1ユーザU1は、現場作業者だけに限られず、例えば、立体的な撮像対象物を撮像する者(撮像者ともいう)一般であってもよい。
上記各実施形態では、例えば、第2ユーザU2は、機器担当者だけに限られず、例えば、立体的な撮像対象物を周囲の様々な角度から見た画像を観察する者(観察者ともいう)一般であってもよい。
上記各実施形態では、例えば、撮像対象物Ob0は、例えば、容易に近づくことができない古墳の石棺などであってもよいし、服飾、バッグ、頭髪などのその他の周囲からの観察が可能な立体的な形状を有するもの一般であってもよい。
上記各実施形態では、例えば、第2画像処理装置30,30Bは、本体部と表示部33とが分割された形態とされてもよい。この場合には、例えば、本体部と表示部33とが通信可能に接続される態様が採用され得る。また、例えば、第1画像処理装置20Aは、本体部と表示部23とが分割された形態とされてもよい。この場合には、例えば、本体部と表示部23とが通信可能に接続される態様が採用され得る。
上記各実施形態では、例えば、画像DB2Id,3Idは、第1装置2の記憶媒体230および第2装置3の記憶媒体330において構築される必要はなく、各種サーバ、あるいはクラウドコンピューティングの概念における各種記憶媒体で構築されてもよい。
上記各実施形態では、例えば、複数の撮像画像と、各撮像画像に係る視線方向情報と、に基づいて、第1装置2の移動経路が推定されてもよい。ここで、例えば、第1ユーザU1が第1装置2としてのスマートグラスを装着した状態で、連続した多数回の撮像をおこないながら、撮像対象物Ob0の周囲を移動する場合を想定する。この場合には、第1ユーザU1は、例えば、移動する際には、足下および進行方向などを確認する。このため、例えば、複数の撮像画像には、床面などの足下を捉えた撮像画像(足下撮像画像ともいう)が含まれる。この足下撮像画像は、撮像時の視線方向および足型の検出などによって認識され得る。そして、複数の足下撮像画像が認識されれば、パターンマッチングなどの手法によって、床面などにおける同一の部分を捉えた領域が重なるように、複数の足下撮像画像が連結され得る。これにより、第1装置2の移動経路を規定する床面などが推定され得る。そして、例えば、図4で示されるように、第1装置2の移動経路で囲まれている内側の領域を捉えた画像領域が合成画像の生成および画像の表示などに利用可能となるように、許否情報が設定されてもよい。
上記各実施形態では、例えば、複数の撮像画像のうち、許可情報が設定されていない画像領域あるいは禁止情報が設定されている画像領域については、フィルタ処理あるいは特定色への置換処理などが施されてもよい。フィルタ処理には、例えば、ぼかし処理あるいはモザイク処理などが含まれる。特定色への置換処理には、例えば、黒塗りあるいは白抜きなどをおこなう処理が含まれる。これにより、撮像対象物Ob0とは異なる必要以上の部分が第1ユーザU1あるいは第2ユーザU2によって視認されないようにすることができる。その結果、例えば、情報セキュリティーの向上が図られ得る。
上記各実施形態および各種変形例をそれぞれ構成する全部または一部を、適宜、矛盾しない範囲で組み合わせ可能であることは、言うまでもない。