説明

画像処理装置、画像処理方法及びプログラム

【課題】情報を表現する物体の面を簡易に読み手の方向に向けることを可能とすること。
【解決手段】実空間を映す入力画像を取得する画像取得部と、前記入力画像に映る物体の姿勢を認識する認識部と、前記認識部により認識された前記物体の基準面が前記入力画像の撮像面に対応するように加工された加工画像を、前記入力画像から生成する生成部と、前記生成部により生成された前記加工画像を表示装置に表示させる表示制御部と、を備える画像処理装置を提供する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【0002】
昨今、テキスト、図形、記号又はイメージなどの形式で表現される様々な情報が実世界に存在している。これら情報は、通常、その正面から視認されることを前提として表現される。
【0003】
例えば、下記特許文献1は、自動車の周辺に存在する道路標識の文字を認識して運転を支援するための技術を開示している。かかる技術においても、看板の文字は、正面から撮像されることを前提としている。情報を視覚的に読み取る際に当該情報を正面から視認することが望ましい点は、情報を読み取る主体が人間であってもコンピュータであっても同様である。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2010−202018号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、実世界において、多くの物体は、情報の読み手の位置とは無関係に配置される。従って、情報を表現する物体の面を簡易に読み手の方向に向けることができれば有益である。
【課題を解決するための手段】
【0006】
本開示によれば、実空間を映す入力画像を取得する画像取得部と、前記入力画像に映る物体の姿勢を認識する認識部と、前記認識部により認識された前記物体の基準面が前記入力画像の撮像面に対応するように加工された加工画像を、前記入力画像から生成する生成部と、前記生成部により生成された前記加工画像を表示装置に表示させる表示制御部と、を備える画像処理装置が提供される。
【0007】
また、本開示によれば、実空間を映す入力画像を取得するステップと、前記入力画像に映る物体の姿勢を認識するステップと、認識された前記物体の基準面が前記入力画像の撮像面に対応するように加工された加工画像を、前記入力画像から生成するステップと、生成された前記加工画像を表示装置に表示させるステップと、を含む画像処理方法が提供される。
【0008】
また、本開示によれば、画像処理装置を制御するコンピュータを、実空間を映す入力画像を取得する画像取得部と、前記入力画像に映る物体の姿勢を認識する認識部と、前記認識部により認識された前記物体の基準面が前記入力画像の撮像面に対応するように加工された加工画像を、前記入力画像から生成する生成部と、前記生成部により生成された前記加工画像を表示装置に表示させる表示制御部と、として機能させるためのプログラムが提供される。
【発明の効果】
【0009】
本明細書で開示される技術によって、情報を表現する物体の面を簡易に読み手の方向に向けることが可能となる。
【図面の簡単な説明】
【0010】
【図1】一実施形態に係る画像処理装置の概要について説明するための説明図である。
【図2】一実施形態に係る画像処理装置のハードウェア構成の一例を示すブロック図である。
【図3】一実施形態に係る画像処理装置の論理的機能の構成の一例を示すブロック図である。
【図4】画像認識部による認識の結果の一例について説明するための説明図である。
【図5A】生成部による正対画像の生成手法の第1の例について説明するための第1の説明図である。
【図5B】生成部による正対画像の生成手法の第1の例について説明するための第2の説明図である。
【図6】生成部による正対画像の生成手法の第2の例について説明するための説明図である。
【図7】一実施形態に係る画像処理装置により表示される入力画像の一例を示す説明図である。
【図8】図7に例示した入力画像の加工について説明するための第1の説明図である。
【図9】図7に例示した入力画像の加工について説明するための第2の説明図である。
【図10】図7に例示した入力画像から生成される正対画像の一例を示す説明図である。
【図11】図10に例示した正対画像に関連する仮想オブジェクトの操作の一例について説明するための説明図である。
【図12】一実施形態に係る画像処理装置による処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【0011】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【0012】
また、以下の順序で説明を行う。
1.概要
2.一実施形態に係る画像処理装置の構成例
2−1.ハードウェア構成
2−2.機能構成
3.表示される画像の例
4.処理の流れ
5.まとめ
【0013】
<1.概要>
図1は、本明細書で開示する技術の一実施形態の概要について説明するための説明図である。図1を参照すると、実空間1内でユーザにより携帯されている画像処理装置100が示されている。
【0014】
画像処理装置100は、実空間を撮像した画像を画面上に表示する装置である。画像処理装置100は、例えば、スマートフォン、PDA(Personal Digital Assistant)、ゲーム端末又は携帯用音楽プレーヤなどの端末装置であってもよく、PC(Personal Computer)又はワークステーションなどの情報処理装置であってよい。
【0015】
実空間1は、画像処理装置100が利用され得る空間の一例である。実空間1内には、物体12a及び12bが存在する。物体12aは、案内用の看板である。物体12aには、シンボルマーク13aが付されている。物体12bは、情報表示用の掲示板である。画像処理装置100は、このような実空間1を撮像した画像を取得し、取得した画像を画像処理装置100の画面上に表示する。ここで、物体12a及び12bの正面は、必ずしも画像を撮像する装置の光軸方向に一致していない。従って、撮像された画像をそのまま画面上に表示すると、当該画像に映る情報(例えば、物体12aに描かれている情報、又は物体12bにより掲示されている情報)をユーザが正しく読み取ることができない可能性がある。そこで、本実施形態に係る画像処理装置100は、次節より詳しく説明するように、画像に映る物体の基準面が撮像面に対応するように画像を加工して、画像に映る情報の視認性を向上させる。
【0016】
<2.一実施形態に係る画像処理装置の構成例>
[2−1.ハードウェア構成]
図2は、本実施形態に係る画像処理装置100のハードウェア構成の一例を示すブロック図である。図2を参照すると、画像処理装置100は、撮像部102、センサ部104、入力部106、記憶部108、表示部112、通信部114、バス118及び制御部120を備える。
【0017】
(撮像部)
撮像部102は、画像を撮像するカメラモジュールである。撮像部102は、CCD(Charge Coupled Device)又はCMOS(Complementary Metal Oxide Semiconductor)などの撮像素子を用いて実空間を撮像し、撮像画像を生成する。撮像部102は、映像入力のための撮像回路と静止画入力のための撮像回路の双方又はいずれか一方のみを有していてもよい。
【0018】
(センサ部)
センサ部104は、画像処理装置100の位置及び姿勢の認識を支援し、又は画像処理装置100への一部のユーザ入力を検出するセンサ群である。例えば、センサ部104は、GPS(Global Positioning System)信号を受信して画像処理装置100の緯度、経度及び高度を測定するGPSセンサを含んでもよい。また、センサ部104は、無線アクセスポイントから受信される無線信号の強度に基づいて画像処理装置100の位置を測定する測位センサを含んでもよい。また、センサ部104は、画像処理装置100の3軸加速度を測定する加速度センサ又は傾き角を測定するジャイロセンサなどのモーションセンサを含んでもよい。
【0019】
(入力部)
入力部106は、ユーザが画像処理装置100を操作し又は画像処理装置100へ情報を入力するために使用される入力デバイスである。入力部106は、典型的には、表示部112の画面上へのユーザによるタッチを検出するタッチセンサを含む。その代わりに(又はそれに加えて)、入力部106は、マウス若しくはタッチパッドなどのポインティングデバイス、画像に映るユーザのジェスチャを認識するジェスチャ認識モジュール、又はHMD(Head Mounted Display)を装着したユーザの視線方向を検出する視線検出モジュールを含んでもよい。さらに、入力部106は、キーボード、キーパッド、ボタン又はスイッチなどのその他の種類の入力デバイスを含んでもよい。
【0020】
(記憶部)
記憶部108は、半導体メモリ又はハードディスクなどの記憶媒体により構成され、画像処理装置100による処理のためのプログラム及びデータを記憶する。記憶部108により記憶されるデータには、例えば、撮像部102により生成される画像データ及びセンサ部104により生成されるセンサデータが含まれ得る。また、記憶部108により記憶されるデータには、例えば、画像に映る物体の認識の際に用いられるモデルデータも含まれ得る。
【0021】
(表示部)
表示部112は、LCD(Liquid Crystal Display)、OLED(Organic light-Emitting Diode)又はCRT(Cathode Ray Tube)などにより構成される表示モジュールである。表示部112は、例えば、撮像部102により撮像される画像、又は制御部120において加工される画像を画面上に表示する。
【0022】
(通信部)
通信部114は、画像処理装置100による他の装置との間の通信を仲介する通信インタフェースである。通信部114は、任意の無線通信プロトコル又は有線通信プロトコルをサポートし、他の装置との間の通信接続を確立する。
【0023】
(バス)
バス118は、撮像部102、センサ部104、入力部106、記憶部108、表示部112、通信部114及び制御部120を相互に接続する。
【0024】
(制御部)
制御部120は、CPU(Central Processing Unit)又はDSP(Digital Signal Processor)などのプロセッサに相当する。制御部120は、記憶部108又は他の記憶媒体に記憶されるプログラムを実行することにより、後に説明する画像処理装置100の様々な機能を動作させる。
【0025】
[2−2.機能構成]
図3は、図2に示した画像処理装置100の記憶部108及び制御部120により実現される論理的機能の構成の一例を示すブロック図である。図3を参照すると、画像処理装置100は、画像取得部130、フレームメモリ132、モデルデータベース(DB)138、画像認識部140、検出部150、生成部160、画像DB162及び表示制御部170を含む。
【0026】
(1)画像取得部
画像取得部130は、実空間を映した画像を入力画像として取得する。画像取得部130は、例えば、撮像部102からの映像入力の最新のフレームを入力画像として取得してもよい。また、画像取得部130は、記憶部108により記憶されている過去に撮像された映像入力の各フレーム又はスナップショットとして撮像された静止画を入力画像として取得してもよい。画像取得部130は、取得した入力画像を画像認識部140へ出力する。
【0027】
(2)モデルDB
モデルDB138は、画像処理装置100が認識の対象とする物体の形状又は外観に関するモデルデータを予め蓄積しているデータベースである。本実施形態において、画像処理装置100による認識の対象は、典型的には、看板、案内板、掲示板、ポスター、スクリーン又は交通標識などの、何らかの情報が表現される面を有する物体である。モデルデータは、これら物体の形状を定義するデータを含んでもよい。また、モデルデータは、これら物体に付される所定のシンボルマーク又はテキストラベルなどの画像データを含んでもよい。また、モデルデータは、これら物体についての既知の画像から抽出された特徴量セットのデータを含んでもよい。
【0028】
(3)画像認識部
画像認識部140は、画像取得部130から入力される入力画像にどの物体が映っているか、並びに入力画像に映っている物体の3次元的な位置及び姿勢を認識する。画像認識部140により認識される物体の位置及び姿勢は、典型的には、入力画像を撮像した装置の撮像面に対する相対的な位置及び姿勢である。画像認識部140は、例えば、入力画像から抽出される特徴点のセットをモデルデータにより定義され得る物体の形状と照合してもよい。また、画像認識部140は、モデルデータにより定義され得るシンボルマーク又はテキストラベルなどの画像データを入力画像と照合してもよい。また、画像認識部140は、モデルデータにより定義され得る既知の物体の画像の特徴量を入力画像から抽出される特徴量と照合してもよい。いずれの場合にも、画像認識部140は、所定の閾値よりも良好な照合スコアを示す物体が、当該照合スコアに対応する位置及び姿勢で入力画像に映っていると認識することができる。また、画像認識部140は、モデルデータを用いることなく、入力画像に現れる四角形のパターンを、何らかの矩形パターンを有する物体であると簡易に認識してもよい。
【0029】
図4は、画像認識部140による認識の結果の一例について説明するための説明図である。図4を参照すると、画像認識部140へ入力される一例としての入力画像Im0が示されている。そして、画像認識部140による画像認識の結果として、入力画像Im0に映る物体12aの位置X及び姿勢W、並びに物体12bの位置X及び姿勢Wが認識されている。各物体の位置Xは、3次元のグローバル座標系(x,y,z)によって、各物体の基準点(例えば、モデル座標系の原点)の位置として与えられ得る。グローバル座標系は、例えば、画像処理装置100の位置を原点とする相対的な位置座標を表す座標系であってもよい。その代わりに、グローバル座標系は、実空間内に固定的に定義される座標系であってもよい。各物体の姿勢Wは、グローバル座標系を基準とした各物体の回転を表す回転行列又はクォータニオン(四元数)として与えられ得る。なお、本明細書では、説明の簡明さのために各物体の位置X及び姿勢Wを別個の変量として説明する。しかしながら、各物体の位置X及び姿勢Wは、グローバル座標系と各物体のモデル座標系との間の変換を表す4行4列の1つの同次変換行列によって統合的に表現されてもよい。その場合には、各物体の位置X及び姿勢Wは、1つの同次変換行列から必要に応じて抽出され、用いられる。画像認識部140は、このように認識した入力画像に映る各物体の識別子、位置及び姿勢を、生成部160及び表示制御部170へ出力する。
【0030】
(4)検出部
検出部150は、ユーザ入力を検出し、ユーザ入力情報を生成部160へ出力する。検出部150により検出されるユーザ入力は、例えば、図2に示した入力部106のタッチセンサへの様々なタッチ入力(例えば、タッチ、タップ、ダブルタップ、ドラッグ、フリック、ピンチイン及びピンチアウトなど)を含み得る。また、検出部150により検出されるユーザ入力は、例えば、図2に示したセンサ部104のセンサ群により測定される画像処理装置100の動き(例えば、傾き又は揺れなど)をも含み得る。
【0031】
本実施形態において、検出部150により検出される第1のユーザ入力は、通常表示モードから正対表示モードへの移行のトリガを意味する。通常表示モードでは入力画像が表示装置により表示されるのに対し、正対表示モードでは、後に説明する生成部160により生成される画像が表示される。検出部150により検出される第2のユーザ入力は、正対表示モードの終了を意味する。正対表示モードが終了すると、画像処理装置100の状態は通常表示モードに復帰し、入力画像が再び表示される。第1のユーザ入力及び第2のユーザ入力は、上述した様々な種類のユーザ入力の任意の組合せであってよい。
【0032】
(5)生成部
生成部160は、正対表示モードにおいて、画像認識部140により認識される物体の基準面が入力画像を撮像した装置の撮像面に対応するように入力画像を加工することにより、加工画像を生成する。第1の面が第2の面に「対応する」とは、例えば第1の面が第2の面と略平行となることをいう。以下の説明では、物体の基準面は当該物体の正面であり、上記加工画像は物体の正面が撮像面に正対するように加工された正対画像である例に主に言及する。物体が何らかの情報を表現する面を有する場合には、その面の法線方向が当該物体の正面であってよい。図4の例から理解されるように、物体の姿勢が決定されれば、当該物体の正面の方向を姿勢に基づいて決定することができる。但し、かかる例に限定されず、物体の基準面は、物体の側面、上面、背面、底面又は斜めの方角から見た面などであってもよい。物体の基準面は、例えば、物体固有のモデル座標系を用いてモデルデータ内で予め定義されてもよい。
【0033】
(5−1)正対画像の生成手法
上述したように、本実施形態において、画像認識部140により認識される物体の多くは、その形状又は外観に矩形のパターンを有する略平面状の物体である。但し、物体の正面が撮像面に正対していない状態では、物体の矩形パターンは、画像内で長方形以外の四角形の形状を示す。生成部160は、そのような物体の矩形パターンが正対画像内で略長方形となるように正対画像を生成する。以下、図5及び図6を用いて、生成部160による正対画像の生成手法の2つの例を説明する。
【0034】
第1の手法は、画像処理装置100が3次元レンダリングを用いることを前提としている。3次元レンダリングにおいては、3次元的に定義される物体(モデル)の形状と仮想的な視点(カメラ位置)とに基づいて、物体の仮想的なグラフィックを表示することができる。そこで、第1の手法では、生成部160は、3次元レンダリングにおける視点が物体の正面方向に位置するように上記視点又は認識された物体を3次元回転させることにより、正対画像を生成する。
【0035】
図5A及び図5Bは、正対画像の生成手法の第1の例について説明するための説明図である。図5Aの左には、入力画像に映る物体12と画像処理装置100の撮像面103との位置関係が概念的に示されている。3次元レンダリングの視点は、撮像面103の背後に位置する。X及びWは、それぞれ、撮像面103に対する物体12の相対的な位置及び姿勢を表す。位置X及び姿勢Wは、画像認識部140による認識の結果として取得される。生成部160は、このような3次元レンダリングの仮想的な空間内で、姿勢Wに対応する回転量αだけ視点の位置を回転移動させる。それにより、物体12の正面に視点が位置することになり、レンダリングによって正対画像を生成することができる。
【0036】
図5Bの左には、図5Aと同様の物体12と画像処理装置100の撮像面103との位置関係が再び示されている。生成部160は、このような3次元レンダリングの仮想的な空間内で、姿勢Wに対応する回転量αだけ物体12を回転させてもよい。この場合にも、物体12の正面に視点が位置することになり、レンダリングによって正対画像を生成することができる。その結果、物体12の正面の矩形パターンが、正対画像において略長方形となるように表示され得る。
【0037】
第2の手法において、生成部160は、認識された物体に対応する入力画像内の部分領域に2次元的なアフィン変換を適用することにより、正対画像を生成する。図6を参照すると、物体12の正面の矩形のパターンが入力画像内で歪んで映っている様子が示されている。ここで、物体12の平面内の2つの基底ベクトルをx及びyとする。また、撮像面内で互いに直交する2つの基底ベクトルをx´及びy´とする。すると、物体12に対応する部分領域が長方形となるように当該部分領域を変形させるためのアフィン変換の変換行列Mtransを、次式によって導くことができる:
【0038】
【数1】

【0039】
生成部160は、かかる変換行列Mtransを用いて物体12に対応する入力画像内の部分領域の各画素の画素位置を正対画像内の加工後の画素位置にマッピングすることにより、正対画像を生成することができる。図6の例では、入力画像内の部分領域の画素位置Pが変換行列Mtransによって正対画像内の画素位置P´にマッピングされる様子が示されている。
【0040】
なお、上述した第1の手法及び第2の手法は、物体の基準面が物体の正面以外の面である場合にも適用可能である。また、第1の手法及び第2の手法のいずれにおいても、生成部160は、正対画像における物体12の大きさを、物体12により表現される情報が当該情報を読み取るために適した大きさとなるように拡大(又は縮小)してもよい。
【0041】
また、生成部160は、正対させる対象の物体の入力画像から正対画像への加工量に応じて、上記部分領域の周辺領域をも加工してよい。第1の手法においては、物体の入力画像から正対画像への加工量とは、3次元レンダリングにおける視点又は物体の3次元回転の回転量を意味する。第2の手法においては、物体の入力画像から正対画像への加工量とは、上記変換行列Mtranによる画素位置の平行移動及び回転の量を意味する。このような加工が行われると、周辺領域の画像に歪みは生じるものの、入力画像に映る物体とその周辺との見た目における連続性が正対画像においても維持される。それにより、ユーザは、入力画像に映るどの物体が加工されたのかを容易に理解することができる。
【0042】
また、生成部160は、正対画像においても物体により表現される情報の読み取りが困難であると予測される場合には、当該物体の部分領域の画像を他の画像に差し替えてもよい。例えば、画像DB162は、画像処理装置100による認識の対象となる各物体を正面から高解像度で撮像した画像を、各物体の識別子と関連付けて予め記憶する。それにより、生成部160は、画像認識部140から入力される物体の識別子を用いて当該物体に関連する画像を画像DB162から取得し、上記部分領域の画像を取得した画像に差し替えることができる。
【0043】
(5−2)対象物体の特定
図4に例示したように、入力画像内で複数の物体が認識される可能性がある。その場合、生成部160は、いずれの物体を正対させるかを、ユーザによる明示的な指定に従って決定してもよい。物体の指定は、例えば、物体と関連付けられる判定領域に対するタッチセンサ上のタッチ又はポインティングデバイスを用いたクリックなどによって行われ得る。また、生成部160は、物体の基準面の撮像面に対する角度が最も大きい物体又は入力画像内の部分領域の大きさが最も大きい物体を、正対させる対象の物体として特定してもよい。また、生成部160は、入力画像内の複数の物体の全てを正対画像において撮像面に正対させてもよい。
【0044】
(6)表示制御部
表示制御部170は、通常表示モードにおいては、表示部112の画面上に入力画像を表示させる。また、表示制御部170は、正対表示モードにおいては、生成部160により生成される正対画像を表示部112の画面上に表示させる。
【0045】
通常表示モードから正対表示モードへの移行のトリガは、上述した第1のユーザ入力の検出であってもよい。第1のユーザ入力は、例えば、タッチセンサへの所定のタッチ入力又はモーションセンサにより感知される画像処理装置100の所定の動きを含み得る。また、表示制御部170は、次のいずれかの条件が満たされた場合に、正対表示モードへ移行してもよい:
a)入力画像に映る物体の基準面の撮像面に対する角度が所定の閾値を上回る
b)認識された物体に対応する入力画像内の部分領域の大きさが所定の閾値を下回る
これら条件が満たされる場合には、各物体により表現される情報の読み取りが困難となっていることが示唆される。そのため、ユーザ入力がなくとも、各条件が満たされる場合に情報の読み取りに適した正対画像を自動的に表示することが有益である。
【0046】
また、表示制御部170は、正対表示モードにおいて第2のユーザ入力が検出された場合には、正対画像の表示を終了し、通常表示モードに復帰する。第2のユーザ入力は、第1のユーザ入力と同じ種類のユーザ入力であってもよく、第1のユーザ入力と異なる種類のユーザ入力であってもよい。また、表示制御部170は、正対表示モードへの移行から所定の時間が経過した場合に、通常表示モードに復帰してもよい。
【0047】
通常表示モードから正対表示モードへの移行の際、表示制御部170は、入力画像が加工画像に徐々に変化していくようなアニメーションを表示装置に表示させてもよい。当該アニメーションは、例えば、対象の物体の基準面が撮像面に徐々に正対していくようなアニメーションである。その場合には、入力画像と正対画像との間で物体の姿勢が徐々に変化していく複数の中間的な画像が生成部160により生成され、表示制御部170は、それら中間的な画像を順次表示装置に表示させる。それにより、入力画像と正対画像との間の、ユーザに感知される連続性が強化される。従って、ユーザは、入力画像に映るどの物体が加工されたのかを直感的かつ容易に理解することができる。
【0048】
また、表示制御部170は、正対表示モードにおいて、撮像面に正対するように表示された対象物体に関連する仮想オブジェクトをさらに画面上に表示させ、当該仮想オブジェクトをユーザにより操作可能としてもよい。ここでの仮想オブジェクトは、いわゆる拡張現実(AR:Augmented Reality)のアノテーションであってよく、各物体に関連する情報コンテンツ(例えば、ナビゲーション情報、広告情報、店舗情報又はニュースなど)を表現するオブジェクトを含み得る。例えば、表示制御部170は、検出部150により仮想オブジェクトに対する第3のユーザ入力が検出された場合に、仮想オブジェクトの状態を変化させる。仮想オブジェクトの状態とは、仮想オブジェクトの位置、姿勢、サイズ又はスクロール位置などを含み得る(例えば、仮想オブジェクトがドラッグされた場合には情報コンテンツをスクロールさせ、仮想オブジェクトがピンチアウトされた場合には情報コンテンツを拡大する、など)。本実施形態では、物体により表現される情報の視認性が正対画像の表示によって高められるため、当該物体と関連する仮想オブジェクトの操作もまた、ユーザにとってより容易となる。
【0049】
<3.表示される画像の例>
次に、図7〜図11を用いて、本実施形態において表示され得る画像の例を説明する。
【0050】
図7を参照すると、画像処理装置100の画面上に入力画像Im1aが表示されている。入力画像Im1aには、物体12d及び物体12eが映っている。画像処理装置100の画像認識部140は、入力画像Im1aに物体12d及び物体12eが映っていること、並びに各物体の位置及び姿勢を認識する。このような状況において、検出部150により、正対画像の表示のトリガとなる第1のユーザ入力(例えば、物体12dの判定領域のユーザによるタップ)が検出されたものとする。すると、生成部160は、物体12dの正面が撮像面に正対するように加工された正対画像を生成する。
【0051】
図8を参照すると、入力画像Im1a内で認識される物体12dの部分領域が、枠13dで囲まれている。物体12dの部分領域は、図中で斜線の網掛けにより示されている矩形パターン14dを含む。生成部160は、かかる物体12dの矩形パターン14dが正対画像内で略長方形となるように正対画像を生成する。図9を参照すると、入力画像Im1aから生成される正対画像Im1b内の物体12dの部分領域を囲む枠13d及び矩形パターン14dが示されている。矩形パターン14dは、正対画像Im1b内で略長方形となっている。また、本実施形態では、生成部160は、正対させる対象の物体の部分領域のみならず、当該部分領域の周辺領域をも加工する。図9の例では、枠13dに囲まれた物体12dの部分領域のみならず、物体12eが映る周辺領域も加工されていることが示されている。
【0052】
図10を参照すると、画像処理装置100の画面上に生成部160により生成された正対画像Im1bが表示されている。ユーザは、かかる正対画像Im1bを参照することで、物体12dにより表現されている情報を物体12dの正面から視認することができる。
【0053】
また、画像処理装置100の表示制御部170は、正対画像が表示されている状態において、撮像面に正対した物体に関連する仮想オブジェクトを正対画像に重畳して表示させ得る。さらに、当該仮想オブジェクトは、ユーザにより操作可能であってよい。図11を参照すると、図10に例示した正対画像Im1bに映る物体12dに、仮想オブジェクト15dが重畳されている。そして、図11には、例えばユーザが画面上で仮想オブジェクト15dをドラッグすることで、仮想オブジェクト15dが左方向へスクロールする様子が示されている。なお、正対画像に重畳される仮想オブジェクトは、より高解像度の物体画像、情報量が追加された物体画像、又は物体と関連する何らかの情報を表現するテキスト、アイコン若しくは画像などであってよい。
【0054】
<4.処理の流れ>
図12は、本実施形態に係る画像処理装置100による処理の流れの一例を示すフローチャートである。なお、図12に示した処理の開始時において、画像処理装置100は、通常表示モードの状態にあるものとする。
【0055】
図12を参照すると、まず、画像取得部130は、実空間を映した画像を入力画像として取得する(ステップS102)。次に、画像認識部140は、画像取得部130により取得された入力画像にどの物体が映っているか、並びに入力画像に映っている物体の3次元的な位置及び姿勢を認識する(ステップS104)。
【0056】
次に、表示制御部170は、正対表示モードへの移行のトリガが検出されたか否かを判定する(ステップS106)。正対表示モードへのトリガが検出されていない場合には、表示制御部170は、画像取得部130により取得された入力画像を画面上に表示させる(ステップS108)。このとき、表示制御部170は、何らかの仮想オブジェクトを入力画像に重畳してもよい。例えば、画像認識部140により認識された物体の位置及び姿勢を示す(例えば、図8の枠13dのような)補助的な仮想オブジェクト、又は各物体の上述した判定領域を示す補助的な仮想オブジェクトが入力画像に重畳され得る。そして、処理はステップS102へ戻る。
【0057】
ステップS106において正対表示モードへの移行のトリガが検出された場合には、処理はステップS110へ進む。ステップS110では、生成部160は、ユーザによる明示的な指定、又は入力画像内での各物体の大きさ若しくは姿勢に応じて、入力画像に映るいずれの物体を正対させるかを決定する(ステップS110)。そして、生成部160は、決定した物体の基準面(例えば正面)が撮像面に正対するように入力画像を加工することにより、正対画像を生成する(ステップS112)。そして、表示制御部170は、生成部160により生成された正対画像を画面上に表示させる(ステップS114)。
【0058】
その後、正対表示モードの終了のトリガ(例えば、上述した第2のユーザ入力又は所定の時間の経過など)が検出されると、画像処理装置100の状態は通常表示モードに復帰し、処理はステップS102へ戻る(ステップS116)。
【0059】
<5.まとめ>
ここまで、図1〜図12を用いて、本技術の一実施形態について詳細に説明した。上述した実施形態によれば、入力画像に映る物体の基準面が撮像面に対応するように入力画像が加工され、加工画像が表示される。従って、実世界において何らかの情報を表現する物体の基準面を簡易に読み手の方向に向けることが可能となる。加工画像の表示は、画面へのタッチ又は端末の動きなどをトリガとして行われ得る。また、物体により表現される情報の視認性が加工画像の表示によって高められるため、加工画像に映る物体と関連付けて表示される仮想オブジェクト(例えば、ARアプリケーションのアノテーション)の操作もまたユーザにとってより容易となる。
【0060】
また、本実施形態によれば、認識された物体の基準面の撮像面に対する角度が所定の閾値を上回る場合、又は当該物体に対応する入力画像内の部分領域の大きさが所定の閾値を下回る場合にも、上記加工画像が表示され得る。従って、各物体により表現される情報の読み取りが困難となっている状況において、ユーザ入力を待つことなく、情報の読み取りに適した画像を迅速にユーザに提供することも可能である。
【0061】
また、本実施形態によれば、上記加工画像が生成される際に、上記物体に対応する部分領域のみならず、当該部分領域の周辺領域もまた上記物体と同様に加工される。従って、入力画像に映る物体とその周辺との見た目における連続性が加工画像においても維持される。それにより、ユーザは、入力画像に映るどの物体が加工されたのかを容易に理解することができる。
【0062】
本明細書において説明した画像処理装置100による処理は、ソフトウェア、ハードウェア、及びソフトウェアとハードウェアとの組合せのいずれを用いて実現されてもよい。ソフトウェアを構成するプログラムは、例えば、各装置の内部又は外部に設けられる記憶媒体に予め格納される。そして、各プログラムは、例えば、実行時にRAM(Random Access Memory)に読み込まれ、CPUなどのプロセッサにより実行される。
【0063】
なお、本実施形態では、主に画像処理装置100の表示部112の画面上に加工画像が表示される例について説明した。しかしながら、他の実施形態として、ユーザにより携帯される端末装置から入力画像を受信する画像処理装置において、入力画像に映る物体の姿勢の認識結果に基づき、入力画像から加工画像が生成されてもよい。その場合には、生成された加工画像が当該画像処理装置から端末装置へ送信され、端末装置の画面上に加工画像が表示され得る。
【0064】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本技術はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【0065】
なお、本技術は以下のような構成も取ることができる。
(1)
実空間を映す入力画像を取得する画像取得部と、
前記入力画像に映る物体の姿勢を認識する認識部と、
前記認識部により認識された前記物体の基準面が前記入力画像の撮像面に対応するように加工された加工画像を、前記入力画像から生成する生成部と、
前記生成部により生成された前記加工画像を表示装置に表示させる表示制御部と、
を備える画像処理装置。
(2)
前記基準面は、前記物体の正面であり、
前記加工画像は、前記物体の正面が前記撮像面に正対するように加工された正対画像である、
前記(1)に記載の画像処理装置。
(3)
前記物体は、矩形パターンを有する略平面状の物体であり、
前記正対画像は、前記矩形パターンが略長方形となるように加工された画像である、
前記(2)に記載の画像処理装置
(4)
前記生成部は、3次元レンダリングにおける視点が前記物体の正面方向に位置するように前記視点又は前記物体を3次元回転させることにより、前記正対画像を生成する、前記(3)に記載の画像処理装置
(5)
前記生成部は、前記物体に対応する前記入力画像内の部分領域に2次元的なアフィン変換を適用することにより、前記正対画像を生成する、前記(3)に記載の画像処理装置
(6)
前記生成部は、前記物体の前記入力画像から前記正対画像への加工量に応じて、前記物体に対応する前記入力画像内の部分領域の周辺領域をも加工する、前記(4)又は前記(5)に記載の画像処理装置。
(7)
前記表示制御部は、前記物体が認識されている状態において第1のユーザ入力が検出された場合に、前記表示装置に前記加工画像を表示させる、前記(1)〜(6)のいずれか1項に記載の画像処理装置。
(8)
前記表示制御部は、前記加工画像が表示されている状態において第2のユーザ入力が検出された場合に、前記表示装置に前記入力画像を表示させる、前記(7)に記載の画像処理装置。
(9)
前記表示制御部は、前記物体の正面の前記撮像面に対する角度が所定の閾値を上回る場合に、前記表示装置に前記加工画像を表示させる、前記(1)〜(6)のいずれか1項に記載の画像処理装置。
(10)
前記表示制御部は、前記入力画像内の前記物体に対応する部分領域の大きさが所定の閾値を下回る場合に、前記表示装置に前記加工画像を表示させる、前記(1)〜(6)のいずれか1項に記載の画像処理装置。
(11)
前記表示制御部は、前記加工画像の表示に際して、前記入力画像が前記加工画像に徐々に変化していくようなアニメーションを前記表示装置に表示させる、前記(1)〜(10)のいずれか1項に記載の画像処理装置。
(12)
前記表示制御部は、前記加工画像が表示されている場合に、前記物体に関連する仮想オブジェクトを前記表示装置に表示させ、当該仮想オブジェクトをユーザにより操作可能とする、前記(1)〜(11)のいずれか1項に記載の画像処理装置。
(13)
実空間を映す入力画像を取得するステップと、
前記入力画像に映る物体の姿勢を認識するステップと、
認識された前記物体の基準面が前記入力画像の撮像面に対応するように加工された加工画像を、前記入力画像から生成するステップと、
生成された前記加工画像を表示装置に表示させるステップと、
を含む画像処理方法。
(14)
画像処理装置を制御するコンピュータを、
実空間を映す入力画像を取得する画像取得部と、
前記入力画像に映る物体の姿勢を認識する認識部と、
前記認識部により認識された前記物体の基準面が前記入力画像の撮像面に対応するように加工された加工画像を、前記入力画像から生成する生成部と、
前記生成部により生成された前記加工画像を表示装置に表示させる表示制御部と、
として機能させるためのプログラム。
【符号の説明】
【0066】
100 画像処理装置
130 画像取得部
140 画像認識部
150 検出部
160 生成部
170 表示制御部


【特許請求の範囲】
【請求項1】
実空間を映す入力画像を取得する画像取得部と、
前記入力画像に映る物体の姿勢を認識する認識部と、
前記認識部により認識された前記物体の基準面が前記入力画像の撮像面に対応するように加工された加工画像を、前記入力画像から生成する生成部と、
前記生成部により生成された前記加工画像を表示装置に表示させる表示制御部と、
を備える画像処理装置。
【請求項2】
前記基準面は、前記物体の正面であり、
前記加工画像は、前記物体の正面が前記撮像面に正対するように加工された正対画像である、
請求項1に記載の画像処理装置。
【請求項3】
前記物体は、矩形パターンを有する略平面状の物体であり、
前記正対画像は、前記矩形パターンが略長方形となるように加工された画像である、
請求項2に記載の画像処理装置
【請求項4】
前記生成部は、3次元レンダリングにおける視点が前記物体の正面方向に位置するように前記視点又は前記物体を3次元回転させることにより、前記正対画像を生成する、請求項3に記載の画像処理装置
【請求項5】
前記生成部は、前記物体に対応する前記入力画像内の部分領域に2次元的なアフィン変換を適用することにより、前記正対画像を生成する、請求項3に記載の画像処理装置
【請求項6】
前記生成部は、前記物体の前記入力画像から前記正対画像への加工量に応じて、前記物体に対応する前記入力画像内の部分領域の周辺領域をも加工する、請求項4に記載の画像処理装置。
【請求項7】
前記表示制御部は、前記物体が認識されている状態において第1のユーザ入力が検出された場合に、前記表示装置に前記加工画像を表示させる、請求項1に記載の画像処理装置。
【請求項8】
前記表示制御部は、前記加工画像が表示されている状態において第2のユーザ入力が検出された場合に、前記表示装置に前記入力画像を表示させる、請求項7に記載の画像処理装置。
【請求項9】
前記表示制御部は、前記物体の正面の前記撮像面に対する角度が所定の閾値を上回る場合に、前記表示装置に前記加工画像を表示させる、請求項1に記載の画像処理装置。
【請求項10】
前記表示制御部は、前記入力画像内の前記物体に対応する部分領域の大きさが所定の閾値を下回る場合に、前記表示装置に前記加工画像を表示させる、請求項1に記載の画像処理装置。
【請求項11】
前記表示制御部は、前記加工画像の表示に際して、前記入力画像が前記加工画像に徐々に変化していくようなアニメーションを前記表示装置に表示させる、請求項1に記載の画像処理装置。
【請求項12】
前記表示制御部は、前記加工画像が表示されている場合に、前記物体に関連する仮想オブジェクトを前記表示装置に表示させ、当該仮想オブジェクトをユーザにより操作可能とする、請求項1に記載の画像処理装置。
【請求項13】
実空間を映す入力画像を取得するステップと、
前記入力画像に映る物体の姿勢を認識するステップと、
認識された前記物体の基準面が前記入力画像の撮像面に対応するように加工された加工画像を、前記入力画像から生成するステップと、
生成された前記加工画像を表示装置に表示させるステップと、
を含む画像処理方法。
【請求項14】
画像処理装置を制御するコンピュータを、
実空間を映す入力画像を取得する画像取得部と、
前記入力画像に映る物体の姿勢を認識する認識部と、
前記認識部により認識された前記物体の基準面が前記入力画像の撮像面に対応するように加工された加工画像を、前記入力画像から生成する生成部と、
前記生成部により生成された前記加工画像を表示装置に表示させる表示制御部と、
として機能させるためのプログラム。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5A】
image rotate

【図5B】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate