JP2019146004A - 画像処理装置、画像処理方法およびプログラム - Google Patents
画像処理装置、画像処理方法およびプログラム Download PDFInfo
- Publication number
- JP2019146004A JP2019146004A JP2018028113A JP2018028113A JP2019146004A JP 2019146004 A JP2019146004 A JP 2019146004A JP 2018028113 A JP2018028113 A JP 2018028113A JP 2018028113 A JP2018028113 A JP 2018028113A JP 2019146004 A JP2019146004 A JP 2019146004A
- Authority
- JP
- Japan
- Prior art keywords
- display
- image
- projection plane
- angle
- unit
- 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.)
- Pending
Links
Images
Landscapes
- Devices For Indicating Variable Information By Combining Individual Elements (AREA)
- Controls And Circuits For Display Device (AREA)
- Transforming Electric Information Into Light Information (AREA)
Abstract
【課題】 広視野な表示部に画像を表示する表示システムに対して、違和感の少ない表示画像を生成する。【解決手段】 入力画像を撮影したときの撮影画角を取得する第1の取得手段と、表示部を含む表示システムにおいて、視点位置から前記表示部を鑑賞した時の見込み角である表示角を示す表示システム情報を取得する第2の取得手段と、仮想空間に投影面を設定する設定手段と、前記撮影画角と前記表示角とに基づいてパラメータを算出する算出手段と、前記仮想空間における前記投影面と前記表示部との対応関係を用いて、前記表示部に表示するための表示画像を生成する生成手段とを有し、前記生成手段は、前記パラメータを用いて前記表示部における位置が前記投影面において対応する位置を算出し、前記算出した位置の画素値を前記入力画像に基づいてレンダリングすることで、前記表示画像を生成する。【選択図】 図2
Description
本発明は、広視野な画像を表示する表示システムのための画像を生成する技術に関する。
従来、画像を表示する表示システムの一つとして、鑑賞者の視野を覆うように配置された表示画面に画像を表示することで、鑑賞者に高い臨場感を与えるシステムが知られている。
特許文献1は、鑑賞者に凹面を向けた球面状の広視野角のスクリーンに画像を表示する方法について記載している。特許文献1に記載された方法によれば、平面状の画像を球面形状に貼り付けるマッピング処理を行うことで、スクリーンに表示する画像を生成している。
広視野な画像を生成するためには、広い撮影画角で撮像された画像であることが望ましい。しかしながら、鑑賞者が表示部を見込む角度(以降、表示角と記述する)に対して撮影画角が足らないという場合もある。このような場合に、表示角を満たすように画像の画角を広げる画像処理を画像に対して実行すると、従来技術においては、鑑賞者の視点位置などを考慮していないため、表示された画像に不自然な歪みが発生し、鑑賞者に違和感を与えてしまう。
そこで本発明は、広視野な表示部に画像を表示する表示システムに対して、違和感の少ない表示画像を生成することを目的とする。
上記課題を解決するため本発明は、入力画像を撮影したときの撮影画角を取得する第1の取得手段と、表示部を含む表示システムにおいて、視点位置から前記表示部を鑑賞した時の見込み角である表示角を示す表示システム情報を取得する第2の取得手段と、仮想空間に投影面を設定する設定手段と、前記撮影画角と前記表示角とに基づいてパラメータを算出する算出手段と、前記仮想空間における前記投影面と前記表示部との対応関係を用いて、前記表示部に表示するための表示画像を生成する生成手段とを有し、前記生成手段は、前記パラメータを用いて前記表示部における位置が前記投影面において対応する位置を算出し、前記算出した位置の画素値を前記入力画像に基づいてレンダリングすることで、前記表示画像を生成することを特徴とする。
広視野な表示部に画像を表示する表示システムに対して、違和感の少ない表示画像を生成することが可能となる。
以下、本発明の実施形態について、図面を参照して説明する。なお、以下の実施形態は本発明を必ずしも限定するものではなく、また、本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
<第1実施形態>
本実施形態では、視聴者の視野を覆うように画像を表示可能な湾曲スクリーンを用いて、広視野な画像を表示する表示システムのための画像処理装置を例に説明する。図4は、本実施形態が想定する表示システムの例を示す。本実施形態における表示システムにおいては、湾曲スクリーン401により画像を表示する表示部が構成されている。湾曲スクリーン401は、平面スクリーンを、視点位置に対して水平方向に湾曲させた形状になっている。湾曲スクリーン401は、円筒の一部を切り出したような形状ともいえる。この表示システムにおいては、不図示のプロジェクタが、鑑賞者の上方に配置されている。プロジェクタが湾曲スクリーン401に対して画像を投影することで、湾曲スクリーン401に画像を表示できる。このように表示システムにおいては、湾曲スクリーン401が湾曲している凹面側に画像を表示することで、表示部が鑑賞者の視野を覆う。この表示システムに画像を表示すると、鑑賞者に対して、表示されている画像を撮像した場にいるかのような臨場感を与えることができる。本実施形態では、図4に示す表示システムに表示する表示画像を生成する画像処理装置について、説明する。なお、本実施形態において、鑑賞者が表示システムにおける表示部に表示された画像を見込む角度を、表示角と呼ぶ。本実施形態における画像処理装置は、1台の撮像装置(例えば、デジタルカメラ)を用いて撮影した入力画像に基づいて、湾曲スクリーン401に表示するための表示画像を生成する。
本実施形態では、視聴者の視野を覆うように画像を表示可能な湾曲スクリーンを用いて、広視野な画像を表示する表示システムのための画像処理装置を例に説明する。図4は、本実施形態が想定する表示システムの例を示す。本実施形態における表示システムにおいては、湾曲スクリーン401により画像を表示する表示部が構成されている。湾曲スクリーン401は、平面スクリーンを、視点位置に対して水平方向に湾曲させた形状になっている。湾曲スクリーン401は、円筒の一部を切り出したような形状ともいえる。この表示システムにおいては、不図示のプロジェクタが、鑑賞者の上方に配置されている。プロジェクタが湾曲スクリーン401に対して画像を投影することで、湾曲スクリーン401に画像を表示できる。このように表示システムにおいては、湾曲スクリーン401が湾曲している凹面側に画像を表示することで、表示部が鑑賞者の視野を覆う。この表示システムに画像を表示すると、鑑賞者に対して、表示されている画像を撮像した場にいるかのような臨場感を与えることができる。本実施形態では、図4に示す表示システムに表示する表示画像を生成する画像処理装置について、説明する。なお、本実施形態において、鑑賞者が表示システムにおける表示部に表示された画像を見込む角度を、表示角と呼ぶ。本実施形態における画像処理装置は、1台の撮像装置(例えば、デジタルカメラ)を用いて撮影した入力画像に基づいて、湾曲スクリーン401に表示するための表示画像を生成する。
図1は、本実施形態における画像処理装置のハードウェア構成を示す。CPU101は、RAM102をワークメモリとして、ROM103及びハードディスクドライブ(HDD)105に格納されたプログラムを実行し、システムバス100を介して後述する各構成を制御する。これにより、後述する様々な処理が実行される。HDDI/F104は、例えばシリアルATA(SATA)等のインタフェイスであり、HDD105や光ディスクドライブなどの二次記憶装置を接続する。CPU101は、HDDI/F104を介して、HDD105からのデータ読み出し、およびHDD105へのデータ書き込みが可能である。さらにCPU101は、HDD105に格納されたデータをRAM102に展開し、同様に、RAM102に展開されたデータをHDD105に保存することが可能である。そしてCPU101は、RAM102に展開したデータをプログラムとみなし、実行することができる。入力I/F106は、例えばUSBやIEEE1394等のシリアルバスインタフェイスであり、キーボードやマウスなどの入力デバイス107を接続する。CPU101は、入力I/F106を介して入力デバイス107からデータを読み込むことが可能である。出力I/F108は、例えばDVIやHDMI(登録商標)等の映像出力インタフェイスであり、液晶ディスプレイやプロジェクタなどの出力デバイス109を接続する。CPU101は、出力I/F108を介して出力デバイス109にデータを送り、表示を実行させることができる。本実施形態において出力デバイス109は、図4に示す表示部を有する表示システムである。
図2は、本実施形態における画像処理装置の機能構成を示すブロック図である。図2(a)において画像処理装置は、投影面設定部201、画像取得部202、表示装置情報取得部203、視点位置情報取得部204、撮像パラメータ取得部205、表示画像生成部206、画像出力部207を有する。投影面設定部201は、入力画像から表示システムにおける表示部に表示する表示画像を生成するための投影面を設定する。本実施形態では、入力画像に対応した平面状の仮想的な投影面(以降、平面投影面と呼ぶ)を用いて、入力画像から表示画像を生成する。平面投影面は、入力画像のアスペクト比と撮像によって得られた入力画像を撮像した際の撮像画角に応じて設定される。また投影面設定部201は仮想空間上に、表示部も配置する。
画像取得部202は、撮像することで得られた画像を取得し、入力画像として表示画像生成部206に出力する。表示システム情報取得部203は、表示システムにおける表示部(ここでは湾曲スクリーン)に関する情報を取得する。本実施形態では、スクリーン面の形状、大きさを示す情報などを取得するものとする。
視点情報取得部204は、鑑賞者の視点位置を示す視点情報を取得する。視点情報とは、表示システムにおける画像表示部を鑑賞する際の、鑑賞者の視点の3次元的な位置を示す情報である。本実施形態においては、鑑賞者が鑑賞する前に、事前に表示システムに表示する表示画像を生成するものとする。ただし図4に示す表示システムにおいては、表示角が変わると、表示部に表示する表示画像も変わる。表示角は、鑑賞者がどの程度表示部から離れた位置から表示部を鑑賞するかに応じて異なる。そこで本実施形態では、事前に表示画像を生成するために、どの位置から鑑賞者が鑑賞するかを想定しておく必要がある。本実施形態では、鑑賞者が表示部を鑑賞するのに望ましい視点位置を視点情報として取得することで、視点位置を特定しておくものとする。
撮像パラメータ取得部205は、撮像により入力画像を取得した際に設定されていた、撮像装置の撮像パラメータを取得する。撮像パラメータ取得部205は、入力画像に付帯されたメタデータに基づいて、撮像パラメータを取得することができる。あるいは、入力デバイス107からユーザが入力した情報に基づいて、撮像パラメータを取得する形態としてもよい。
表示画像生成部206は、視点位置と表示部との位置関係に基づいて、1つの入力画像から表示画像を生成する。ここでは表示画像生成部206は、表示画像をレンダリングする際のパラメータとして、表示角を調整するための表示角パラメータを算出する。表示画像生成部206は、表示角パラメータを用いて、平面投影面と表示部との対応関係を算出し、レンダリングする。表示画像生成部206の詳細については、後述する。画像出力部207は、生成された表示画像を表示システムに出力する。
以下、本実施形態の画像処理装置が実行する処理の流れについて説明する。図3は、本実施形態における画像処理の流れを示すフローチャートである。CPU101は、ROM103又はHDD104に格納された図3に示すフローチャートを実現するプログラムを読み出して、RAM102をワークエリアとして実行する。これによりCU101は、図2に示す各機能構成としての役割を果たす。なお、以降のフローチャートにおいては各工程(ステップ)を「S」と表記することとする。
S301において画像取得部202は、HDD105に記憶された撮像画像を表す撮像画像データを入力画像として取得し、RAM102に格納する。
S302において撮像パラメータ取得部205は、撮像画像データに付帯されたメタデータから、撮像パラメータを取得する。本実施形態において撮像パラメータ取得部205は、撮像時の撮像画角やレンズの射影方法を特定する情報を撮像パラメータとして取得する。本実施形態では、一般的なレンズで使用される中心射影方式のレンズを介して入力画像が撮像されたものとする。
S303において表示システム情報取得部203は、表示システムにおける画像表示部に関する表示システム情報を取得する。本実施形態において、表示システム情報取得部203は、画像を表示する表示部面の形状、大きさを示す情報を取得する。本実施形態においては、図4に示すように、表示部の数は1台である。表示部の形状は、湾曲した平面で、水平方向の弧の長さ2Rmax、高さHcurveとする。また、視点位置から表示部を鑑賞した時の見込み角(表示角)は2φとする。これらの表示システム情報は、ユーザの指示に基づいて入力デバイス107からRAM102へ取得する。あるいは、これらの情報をあらかじめ表示システム情報のパッケージとしてHDD105に保持しておき、HDD105から必要に応じて選択するようにしても良い。
S304において視点情報取得部204は、ユーザの指示に基づいて入力デバイス107から視点情報を取得する。本実施形態では視点情報取得部204は、湾曲スクリーン401の画面における中心位置からの距離Dviewを視点情報として取得する。
S305において投影面設定部201は、表示画像を生成する際に使用する平面投影面を設定する。投影面の設定処理の詳細は後述する。
S306において表示画像生成部206は、表示部(湾曲スクリーン401)に表示する表示画像を示す表示画像データを生成する。表示画像生成処理の詳細は後述する。
S307において画像出力部207が生成された表示部に対応する表示画像をRAM102から出力I/F108を介して出力デバイス109に出力する。あるいは、生成された表示画像をHDD105に記憶するようにしてもよい。
<投影面設定処理>
次に、投影面設定処理について詳細に説明する。投影面設定処理では、表示画像生成処理において使用する投影面を設定する。図5は、投影面設定部201が実行する投影面設定処理の詳細を示すフローチャートである。以下フローチャートの各ステップについて説明する。
次に、投影面設定処理について詳細に説明する。投影面設定処理では、表示画像生成処理において使用する投影面を設定する。図5は、投影面設定部201が実行する投影面設定処理の詳細を示すフローチャートである。以下フローチャートの各ステップについて説明する。
S501において投影面設定部201は、平面投影面を生成する。平面投影面は、入力画像と同じアスペクト比である矩形の平面により構成される。また投影面設定部201は、視点位置から平面投影面を見た際の見込み角が、撮影画角と一致するように、平面投影面のサイズと位置を算出し、仮想空間上に配置する。
図7は、視点位置と表示部と仮想的な投影面との関係を示す図である。仮想空間において、視点位置を原点とするXYZ3次元座標を定義する。このような仮想空間において、平面投影面はXY平面に平行で、かつZ軸が平面投影面の中心を通るような位置に配置される。入力画像における水平方向の撮影画角の半画角をθとすると、図7に示す通り視点位置からの平面投影面に対する見込み角の半画角はθとなる。
S502において投影面設定部201は、表示システム情報と視点情報を取得する。S503において投影面設定部201は、表示システム情報と視点情報に基づいて、表示部を仮想空間上に配置する。具体的には、原点(視点位置)と湾曲スクリーン401の中心位置との距離がDviewとなるように、表示部の形状を有するスクリーンを配置する。つまり湾曲スクリーン401の中心座標は(0,0,Dview)である。また湾曲スクリーン401は、Z軸を中心に左右対称になるように仮想空間に配置されている。本実施形態における湾曲スクリーン401は、上から見たときの断面が表示角と同じ中心角を有するおうぎ形であり、円の中心が視点位置に一致している。
以上の通り投影面設定部201は、仮想空間に入力画像に対応する平面投影面と表示部を配置する。
<表示画像生成処理>
ここで表示画像生成処理について詳細に説明する。表示画像生成部206は、仮想空間において視点位置に配置された仮想カメラによりレンダリングすることで、表示部に表示するための表示画像を生成する。
ここで表示画像生成処理について詳細に説明する。表示画像生成部206は、仮想空間において視点位置に配置された仮想カメラによりレンダリングすることで、表示部に表示するための表示画像を生成する。
図2(b)は、表示画像生成部206の詳細な構成を示すブロック図である。第1算出部2061は、入力画像と平面投影面との対応関係を算出する。仮想カメラ設定部2062は、複数のディスプレイそれぞれに対応する仮想カメラを仮想空間上に設定する。本実施形態が想定する表示システムにおいては、スクリーンは1台なので、仮想カメラも1つ設定する。レンダリング処理部2064は、仮想カメラについて、入力画像と平面投影面との対応関係を用いて、仮想カメラに結像する画像の各画素の画素値を算出することで、表示画像を生成する。レンダリング処理部2064は、表示角と撮影画角に応じた表示角調整用のパラメータ(以下、表示角パラメータとする)を用いて、仮想カメラに結像する画像における各画素のX座標と平面投影面におけるX座標とを対応関係を算出する。仮想カメラに結像する画像とはつまり、湾曲スクリーン401に投影される画像である。
ここで表示角パラメータについて説明する。図9は、表示部と平面投影面とを上部から見た図である。平面投影面の水平方向の長さの半分をLmax、表示部における弧の長さの半分をRmaxとする。表示部に対応する各位置は、平面投影面の何れかの値に対応し、平面投影面の右端を表示部における右端に対応させるとする。また、表示部上の点Pと原点Oとを結ぶ線分とZ軸とのなす角をφpとする。表示部上の点Pが対応する平面投影面上の点を点P’とする。平面投影面上の水平方向の長さと表示部上の弧の長さが線形に対応するものとすると、長さLmaxに対する平面投影面におけるZ軸からP’までの長さの比は、弧Rmaxに対する円筒投影面上におけるZ軸から点Pまでの弧の長さは、式(1)のように一致する。
なおxp’は、点P’のX座標であり、平面投影面におけるZ軸から点P’までの長さに相当する。また、表示部を上から見たときの形状における半径をrとする。式(1)をxp’について解くと、式(2)が得られる。
ここで、平面投影面の水平方向の長さの半分Lmaxは、式(3)の通りに表される。
ただしLzは、平面投影面のZ座標を示し、一定の値である。また、円筒投影面の弧の半分をRmaxとすると、弧Rmaxは式(4)の通りに表すことができる。
ここで、Rmax/Lmaxをkとおくと、式(5)となる。
本実施形態では、このように表示角と撮影画角とによって決められるkを表示角パラメータとして算出する。式(2)と式(5)とを用いると、レンダリング算出部2064は、平面座標系における点P’のX座標を、式(6)によって算出することができる。
図6は、本実施形態における表示画像生成処理の詳細を示すフローチャートである。
S601において第1算出部2061は、仮想空間における平面投影面の各頂点の3次元座標と入力画像の画素位置を示す2次元座標の間の対応付けを行う。これは、一般的なCGレンダリングにおけるUVマッピングと同様の処理である。中心射影のレンズを介して撮像された入力画像を用いる場合、図8に示すように、平面投影面の四隅の座標それぞれを、入力画像の四隅の画素位置を示す座標と対応付ける。ここでは、入力画像において、左上の画素を原点(0,0)とするUV座標系により各画素の画素位置を示すものとする。第1算出部2061は、入力画像における各頂点のUV座標を取得し、平面投影面の各頂点の3次元座標と対応づける。四隅以外の各画素のUV座標については、線形補間により算出する。なお、魚眼レンズのようにレンズの射影方式が等距離射影や等立体角射影の場合は、中心射影で再投影を行ってから同様の処理を行えばよい。
S602においてレンダリング処理部2064は、表示角パラメータを算出しておく。レンダリング処理部2064は、投影面設定部201が仮想空間に平面投影面と表示部を配置した位置と表示システム情報が示す表示角、撮影パラメータが示す撮影画角に基づいて、式(5)により表示角パラメータを算出する。
S603において仮想カメラ設定部2062は、表示画像のレンダリング処理に使用する仮想カメラを仮想空間上に配置する。仮想カメラの位置と画角を設定する。本実施形態では、表示部に対して1台の仮想カメラを設定する。仮想カメラ設定部2062はまず、仮想空間における原点、つまり視点位置に仮想カメラを設置する。また、仮想カメラの向きは、表示部の中心に対して仮想カメラの光軸が向くように設定される。仮想カメラの画角は、表示角2φとする。
S604においてレンダリング処理部2064は、仮想カメラから撮像した時に得られる画像における各画素の画素値をレンダリングするために、表示部における点Pに対応する平面投影面上の点P’のX座標を、式(6)を用いて算出する。
S605においてレンダリング処理部2064は、表示部における点Pに対応する平面投影面上の点P’のY座標を算出する。本実施形態では、平面投影面のアスペクト比と表示部のアスペクト比(弧の長さと高さの比)は必ずしも一致していない。そのため、平面投影面上の点P’のY座標を算出する際に、この差を考慮する必要がある。ここで、平面投影面の幅2Lmaxに対して、表示部のアスペクト比(Hcurve/2Rmax)を乗じて求めた高さをhとする。平面投影面において、−h/2から点P’までの高さに対する前述の高さhとの比と、表示部における下辺から点Pまでの高さに対する表示部の高さとの比は、式(7)の通り一致する。
従って点P’のY座標yp’は、式(8)により表される。
なお、Z座標については、平面投影面が平面であるため、平面投影面上のどの点においてもZ座標は変わらない。よって、常に投影面設定処理で設定された平面投影面のZ座標Lzと一致させればよい。
S606においてレンダリング処理部2064は、S601において算出された平面投影面上の点P’の3次元座標と入力画像を示す2次元座標との対応関係を用いて、表示部における点Pの3次元座標を入力画像における位置に変換する。算出した入力画像上の位置に基づいてサンプリングすることで、仮想カメラにより得られる画像における画素の画素値を算出する。具体的には、レンダリング処理部2064は、算出した入力画像における位置の周囲4画素の画素値を取得する。レンダリング処理部2064は、入力画像から取得した4画素の画素値に対して、算出した位置に応じた補間演算を実行することにより、仮想カメラにより得られる画像における画素の画素値を決定する。なお、平面投影面の高さをHflatとしたときに、yp’の値が−Hflat/2より小さい、あるいはHflat/2より大きい場合は、入力画像上に対応する点がないため、画素値は黒色を示す値を画素値として設定する。
S607においてレンダリング処理部2064は、仮想カメラの全ての画素に対して処理を完了したか否かを判定する。すべての画素に対して処理が完了していな場合は、S604に戻り、未処理の画素に対してサンプリングする。すべての画素に対して処理が完了していれば、表示画像の生成処理を完了する。
<効果>
図10は、本実施形態において生成される表示画像を示す図である。このような表示画像をプロジェクタにより湾曲スクリーン401に投影することで、違和感の少ない広視野な画像を表示することができる。撮影画角が表示角より小さい入力画像と表示画像とは、入力画像を水平方向に拡大したような関係にある。本実施形態では、撮影画角が表示角より小さい入力画像を、視点位置から表示部を見たとき角度に対して均等になるように、表示部に対応づけている。そのため視点位置から見た時に被写体の拡大率が一定となるため、鑑賞者にとって自然な表示画像が表示される。
図10は、本実施形態において生成される表示画像を示す図である。このような表示画像をプロジェクタにより湾曲スクリーン401に投影することで、違和感の少ない広視野な画像を表示することができる。撮影画角が表示角より小さい入力画像と表示画像とは、入力画像を水平方向に拡大したような関係にある。本実施形態では、撮影画角が表示角より小さい入力画像を、視点位置から表示部を見たとき角度に対して均等になるように、表示部に対応づけている。そのため視点位置から見た時に被写体の拡大率が一定となるため、鑑賞者にとって自然な表示画像が表示される。
本実施形態ではこの通り、表示角パラメータkを用いて表示画像を生成した。表示角パラメータkを用いない場合の、平面と上面と表示部上との対応関係の算出方法について考える。図9において表示部上の点SにおけるX座標をxs、Z座標をzsとすると、点Sにおける角度φsは式(9)〜(11)により表すことができる。なお角度φsは、点Sが表示部の左端上の点SLである時の角度が0度であるものとする。
点SがXZ平面における第3象限にある(xs<0)場合、点Sと原点を結ぶ線分とX軸と原点を結ぶ線分とのなす角から、円筒投影面の左端上の点SLと原点を結ぶ線分とX軸と原点を結ぶ線分とのなす角を減算することで、角度φsを算出できる。また、点SがXZ平面における第1象限にある(xs>0)場合は、表示角2φから式(1)により算出される角度を減算することで、角度φsを算出できる。点SがZ軸上(xs=0)にある場合は、角度φsは表示角の半分φとなる。上述の通り平面投影面上の各点は、表示部において対応する点が角度に対して均等になるように対応づけている。この時、平面投影面上における点SL’と点S’の長さに対する平面投影面の幅の比と、表示部において点Sから点SLまでの弧の長さに対する円筒投影面の弧の長さとの比は、式(12)の通りに一致する。
従って点S’のX座標xs’は、角度φsによって式(13)の通りに表される。
式(13)における角度φsにxsの位置に応じて式(9)、式(10)、式(11)を代入することにより、表示部上の点xsを平面投影面上の点xs’に対応付けることができる。ただしこのような場合分けは煩雑な演算になる。本実施形態のように式(6)を用いて平面投影面上のX座標を算出する方法は、式(9)、式(10)、式(11)、式(13)を用いた演算に比べてより演算負荷が少ない。
さらに、図4に示すような表示システムにおいて臨場感のある表示画像を生成するためには、表示部に対する視点位置を適切に設定する必要がある。図11は、仮想空間における表示部と平面投影面とを上から見た図である。図11(a)は、撮影画角と表示角とがほぼ一致している場合である。この場合は、平面投影面を視点位置から鑑賞した時に見える範囲が、表示部に表示されることになるので、鑑賞者はあまり違和感なく表示部を鑑賞することができる。ただし、視点位置を表示部から遠い位置に設定すると、鑑賞者の視野を広く表示部が覆うことができないため、臨場感が損なわれてしまう。
一方図11(b)は、撮影画角よりも表示角の方が大きい場合を示している。視点位置を表示部に近づけると、表示角は大きくなる。この場合、表示部は鑑賞者の視野を広く覆うことができる。また鑑賞者から見える画像は本来、平面投影面に投影される画像よりも広い範囲に相当する。平面投影面を拡張した点線を含む範囲が、鑑賞者の視点位置から見えるはずの範囲である。ただし、平面投影面の両端を、表示部それぞれの両端に対応づけることで、表示画像の表示角を満たす表示画像を生成する。つまり上述の通り、撮影画角が表示角よりも小さい場合、表示画像生成部206は、表示部に表示する表示画像を生成するために、平面投影面を水平方向に拡大して表示することに相当する。しかしながらこのような場合鑑賞者は、本来の被写体の形状やサイズとは異なって見えたり、表示部における各被写体との距離感が異なって見えたりしてしまう場合がある。このように、表示部に対する視点位置や入力画像の撮影画角に応じて、表示部に表示される表示画像は異なる。臨場感のある表示画像を生成するためには、視点位置は表示部に適度に近い方が望ましいが、視点位置からの表示角が入力画像の撮影画角よりも大きすぎると、不自然な表示画像になってしまう。
本実施形態では、表示角パラメータを用いることで、少ない演算負荷により表示部と入力画像との仮想空間における対応関係を算出することができる。これにより、視点位置または表示角を調整しながら繰り返し表示画像を生成する必要がある場合には特に、演算の負荷を低減することができる。
<第2実施形態>
第1実施形態では、湾曲スクリーン401に表示する表示画像を生成する方法いついて説明した。第2実施形態では、複数の平面状の表示画面を用いて、広視野な画像を表示システムに表示するための画像処理について説明する。なお、第1実施形態と同様の構成については同一の符号を付し、詳細な説明を省略する。
第1実施形態では、湾曲スクリーン401に表示する表示画像を生成する方法いついて説明した。第2実施形態では、複数の平面状の表示画面を用いて、広視野な画像を表示システムに表示するための画像処理について説明する。なお、第1実施形態と同様の構成については同一の符号を付し、詳細な説明を省略する。
図12は、本実施形態が想定する表示システムの例を示す。本実施形態における表示システムにおいては、センターディスプレイ1201、左ディスプレイ1202、右ディスプレイ1203の3つのディスプレイにより、画像を表示する表示部が構成される。センターディスプレイ1201、左ディスプレイ1202、右ディスプレイ1203は、上方から見たときに等脚台形を描くように配置されている。各ディスプレイは例えば、液晶ディスプレイなどの自発光デバイスを用いる。センターディスプレイ1201は、鑑賞者の正面に配置されている。左ディスプレイ1202は、センターディスプレイ1201の鑑賞者から見て左側の端と接し、かつセンターディスプレイ1201とのなす角が角度θscを有するように配置されている。同様に右ディスプレイ1203は、センターディスプレイ1201の鑑賞者から見て右側の端と接し、かつセンターディスプレイ1201とのなす角が角度θscを有するように配置されている。従って3つのディスプレイは、各ディスプレイ面からの法線が交点をもつように、配置される。そして各ディスプレイ面の交点側に、それぞれに対応する表示画像を表示する。
このように3つの平面状の表示画面(ディスプレイ)を配置することで、表示部が鑑賞者の視野を覆う。この表示システムに画像を表示すると、鑑賞者に対して、表示されている画像を撮像した場にいるかのような臨場感を与えることができる。なお、本実施形態においては、左ディスプレイ1202の左端の上下中央の点と視点位置を結んだ線分と、右ディスプレイ1203の右端の上下中央の点と視点位置とを結んだ線分とのなす角を、表示角とする。また、各ディスプレイに表示する表示画像は、いずれも共通の1入力画像から生成される。つまり本実施形態では、1台の撮像装置(例えば、デジタルカメラ)を用いて撮影した入力画像に基づいて、3つの表示画像が生成されることになる。
本実施形態においては、投影面設定部201における投影面設定処理が異なる。本実施形態において投影面設定部201は、仮想空間上に2つの異なる投影面を設定する。図13は、表示部と2つの投影面を示す図である。第1の投影面は、平面状の投影面であり、入力画像を仮想空間上に配置するための投影面(以降、平面投影面と呼ぶ)である。第2の投影面は、円筒状の投影面であり、入力画像を、表示部の構成に投影するための投影面(以降、円筒投影面と呼ぶ)である。第2の投影面は、入力画像を表示部の構成(形状)に近似する役割を有する。本実施形態における表示部は、3つのディスプレイが上から見たときに角度を有するように配置されている。各ディスプレイに対して平面投影面から直接対応づけて各ディスプレイの表示画像を生成すると、視点位置から画像を鑑賞した時に、2つのディスプレイが隣接する境界付近において被写体が折れ曲がったように見えてしまう。これは視点に対する被写体との距離が、表示部との距離に変換されてしまうためである。そこで本実施形態では、平面投影面(第1の投影面)を円筒投影面(第2の投影面)に投影して画像に基づいて、各ディスプレイの表示画像が生成される。すなわち第2の投影面は、平面よりは3つのディスプレイによって描かれる形状に類似しており、かつ、上方から見たときに角のない形状の投影面であることが望ましい。円筒投影面上の点と視点位置との距離は、水平方向において滑らかに変化する。このような第2の投影面上に平面投影面を対応付けると、視点位置から円筒投影面に投影された画像を鑑賞しているように、表示画像が表示部に表示される。その結果、2つのディスプレイが隣接する境界付近においても被写体が折れ曲がってみえる現象を抑制することができる。
図15は、本実施形態における投影面設定処理の詳細なフローチャートである。
S1501において投影面設定部201は、平面投影面を生成し仮想空間に配置する。平面投影面は、撮像画像と同じアスペクト比である矩形の平面により構成される。また投影面設定部201は、視点位置から平面投影面を見た際の見込み角が、撮影画角と一致するように、平面投影面のサイズと位置を算出し、仮想空間上に配置する。
S1502において投影面設定部201は、視点位置から表示部を見た際の見込み角である表示角を取得する。S1503において投影面設定部201は、円筒投影面の弧の中心角を、S502において取得した表示角2φにより設定する。
S1504において投影面設定部201は、仮想空間上に円筒投影面を生成する。円筒投影面は、円筒の側面をS1503において設定された中心角により切り出した形状となる。円筒投影面の高さは、円周の長さと高さの比が平面投影面の幅と高さとの比と一致するように設定しておく。投影面設定部201は、表示システム情報に応じて設定した円筒投影面を、円筒の中心と視点位置が一致するように、仮想空間上に配置する。従って、仮想空間におけるZ軸が円筒投影面の中心を通る位置に円筒投影面が配置される。以上の通りに、図13に示すように、投影面設定部201が仮想空間に2つの投影面を配置する。
本実施形態における表示画像生成処理の詳細について説明する。図14は、本実施形態における表示画像生成部206の詳細な構成を示すブロック図である。表示画像生成部206は、仮想空間において視点位置に配置された仮想カメラにより円筒投影面をレンダリングすることで、各ディスプレイに対応する表示画像を生成する。第1算出部2061は、入力画像と平面投影面との対応関係を算出する。第2算出部1401は、平面投影面と円筒投影面との対応関係を算出する。仮想カメラ設定部2062は、複数のディスプレイそれぞれに対応する仮想カメラを仮想空間上に設定する。本実施形態が想定する表示システムにおいては、ディスプレイは3台あるので、仮想カメラも3つ設定する。レンダリング処理部2064は、各仮想カメラについて、入力画像と平面投影面との対応関係、平面投影面と円筒投影面との対応関係を用いて、仮想カメラに結像する画像の各画素の画素値を算出することで、表示画像を生成する。
図17は、本実施形態における表示画像生成処理の詳細を示すフローチャートである。本実施形態では、S1703以降の処理が第1実施形態と異なる。なお以降の処理において、第1実施形態における表示部は、円筒投影面に置き換える。本実施形態において表示部は、図13に示すように円筒投影面とは異なる形状の表示部である。
S1703において第2算出部2063は、仮想空間において円筒投影面と平面投影面との対応関係を算出する。図16(a)は、仮想空間における表示部と円筒投影面と平面投影面を上方から見た図である。表示部における点Pは、視点位置と点Pを結んだ線分と円筒投影面との交点を点Qとする。このとき、第1実施形態における表示部(湾曲スクリーン)上の点Pと平面投影面上の点P’との対応関係を、本実施形態では円筒投影面上における点Qと平面投影面上の点P’との対応関係に置き換えて考えることができる。なお、Z軸と表示部上における点Pとのなす角φpと、Z軸と円筒投影面上における点Qとのなす角φqは一致する。従って、第1実施形態と同様に、平面座標系における点P’のX座標は、式(6)によって算出できる。
同様に第2算出部2063は、表示部における点Pに対応する平面投影面上の点P’のY座標も、式(8)によって算出できる。ただし本実施形態では、Hcurveは円筒投影面の高さである。また、平面投影面のアスペクト比(Hflat/2Lmax)と円筒投影面のアスペクト比(Hcurve/2Rmax)は一致するため、式(8)におけるhを平面投影面の高さHflatに置き換えて計算すればよい。Z座標については、平面投影面が平面であるため、平面投影面のZ座標Lzと一致させればよい。
S1704において仮想カメラ設定部2062は、表示画像のレンダリング処理に使用する仮想カメラの位置と向きを設定する。図16(b)は、本実施形態における仮想カメラの位置と向きを説明するための図である。仮想カメラ設定部2062は、各ディスプレイに対応した計3台の仮想カメラを用意する。具体的にはセンターディスプレイに対しては仮想カメラA、左ディスプレイに対しては仮想カメラB、右ディスプレイに対しては仮想カメラCを仮想空間上に設定する。それぞれの仮想カメラの位置は、視点位置、つまり円筒投影面の中心とする。仮想カメラの向きは、それぞれの仮想カメラに対応するディスプレイの中心に対して仮想カメラの光軸が向くように設定される。
S1705において仮想カメラ設定部2062は、仮想カメラの画角を設定する。仮想カメラ設定部2062は、各仮想カメラに対応するディスプレイを視点位置から見た際の見込み角を各仮想カメラの画角として設定する。
S1706においてレンダリング処理部2064は、3台の仮想カメラそれぞれについてレンダリング処理を実行し、表示画像を表す表示画像データを生成する。具体的にはまず、仮想カメラが仮想空間上で撮像した時に得られる画像の各画素に投影される円筒投影面上の3次元座標を算出する。次にS1703において算出した平面投影面と円筒投影面との対応関係に基づいて、円筒投影面上の3次元座標を平面投影面上の3次元座標に変換する。さらにS601において算出した平面投影面と入力画像との対応関係に基づいて、平面投影上の3次元座標を入力画像上の位置に変換する。これにより、仮想カメラにより得られる画像の画素が、入力画像上の位置に対応づく。
レンダリング処理部2064は、算出した入力画像上の位置に基づいてサンプリングすることで、仮想カメラにより得られる画像における画素の画素値を算出する。具体的には、レンダリング処理部2064は、算出した入力画像における位置の周囲4画素の画素値を取得する。レンダリング処理部2064は、入力画像から取得した4画素の画素値に対して、算出した位置に応じた補間演算を実行することにより、仮想カメラにより得られる画像における画素の画素値を決定する。各仮想カメラの全ての画素に対して行うことで、各ディスプレイに表示する表示画像が生成される。
以上の通り本実施形態では、3つの表示画面(ディスプレイ)に表示する表示画像を、1つの入力画像に基づいて生成した。表示角と撮影画角を用いて算出される表示角パラメータkを用いることで、平面投影面のX座標と円筒投影面のX座標との対応関係を簡単に算出することができる。
なお本実施形態では、表示画像を表示する表示システムにおいて、3つのディスプレイにより表示部を構成する場合を例に説明した。表示部は、自発光型ディスプレイ以外にも、第1実施形態と同様にプロジェクタにより画像を投影するスクリーンを用いてもよい。この場合表示システムとしては、複数のスクリーンそれぞれに対応する複数のプロジェクタを、各スクリーンに表示画像を投影できるように設置する。あるいは、複数のプロジェクタが白い壁に投影する表示システムにも上記の実施形態を適用することができる。画像を投影する壁を上方から見たときに、図12に示すディスプレイと同様の形状になっている場合、円筒投影面を用いて表示画像を生成することで同様の効果を得ることができる。なおこの場合白い壁に対して画像が投影される領域を、表示部とみなして表示システム情報を取得する。
またセンターディスプレイ401、左ディスプレイ402、右ディスプレイ403に対して1つの共通する円筒投影面を使用する例について説明した。これにより異なるディスプレイ間でも違和感のない表示を可能とする表示画像を生成できる。しかしながら、例えば、3面のディスプレイそれぞれに対して異なる曲面を持つ投影面を設定するようにしてもよい。この場合、3つの円筒投影面が滑らかに接続するように、構成されていることが望ましい。
<その他の実施形態>
上述の実施形態では、表示角パラメータkは、円筒投影面の弧の長さRmaxと平面投影面の水平方向の最大像高Lmaxの単純な比から算出した。そのため、式(6)に示すように平面投影面の水平方向の位置と円筒投影面の弧上の位置との関係は線形となっている。しかしながら、例えば、平面投影面の水平方向の位置に対応する円筒投影面の弧上の位置との対応関係が単調増加となるように決定するようにしても同様の効果を得ることができる。例えば、平面投影面の水平方向の位置が外側に行くほど角度の変化量が大きくなる(画像として引き延ばされる)ように、平面投影面の水平方向の位置と円筒投影面の弧上の位置との対応関係を算出する。その結果、視点位置から見た際の正面方向の映像の歪みを抑えることができる。これにより、中央に被写体が集中して配置されているようなシーンにおいては、正面を注視する鑑賞者に対して、映像の歪の小さい自然な表示を実現することが可能となる。
上述の実施形態では、表示角パラメータkは、円筒投影面の弧の長さRmaxと平面投影面の水平方向の最大像高Lmaxの単純な比から算出した。そのため、式(6)に示すように平面投影面の水平方向の位置と円筒投影面の弧上の位置との関係は線形となっている。しかしながら、例えば、平面投影面の水平方向の位置に対応する円筒投影面の弧上の位置との対応関係が単調増加となるように決定するようにしても同様の効果を得ることができる。例えば、平面投影面の水平方向の位置が外側に行くほど角度の変化量が大きくなる(画像として引き延ばされる)ように、平面投影面の水平方向の位置と円筒投影面の弧上の位置との対応関係を算出する。その結果、視点位置から見た際の正面方向の映像の歪みを抑えることができる。これにより、中央に被写体が集中して配置されているようなシーンにおいては、正面を注視する鑑賞者に対して、映像の歪の小さい自然な表示を実現することが可能となる。
また上述の実施形態では、図4に示すように鑑賞者に対して大型のスクリーンを用いた表示部を例に説明した。しかしながら、例えば頭部のみを覆う程度の大きさの表示部であっても、同様の表示システムを構成できる。例えば、ヘッドマウントディスプレイなどである。このような表示システムに対しても、上述の実施形態と同様、共通の入力画像1つから各表示画面の表示画像を生成する。さらに、仮想空間において、入力画像から表示角パラメータを用いてレンダリングすることで、違和感のない広視野な画像を簡易的に生成できる。
前述の実施形態において視点情報は、望ましい鑑賞者の位置を指定することにより、特定された。しかしながら例えば、実際に鑑賞者の位置を検出し、実際に表示システムを鑑賞している鑑賞者に応じて視点情報を設定してもよい。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
201 投影面設定部
202 画像取得部
203 表示システム情報取得部
204 視点情報取得部
205 撮像パラメータ取得部
206 表示画像生成部
207 画像出力部
202 画像取得部
203 表示システム情報取得部
204 視点情報取得部
205 撮像パラメータ取得部
206 表示画像生成部
207 画像出力部
Claims (10)
- 入力画像を撮影したときの撮影画角を取得する第1の取得手段と、
表示部を含む表示システムにおいて、視点位置から前記表示部を鑑賞した時の見込み角である表示角を示す表示システム情報を取得する第2の取得手段と、
仮想空間に投影面を設定する設定手段と、
前記撮影画角と前記表示角とに基づいてパラメータを算出する算出手段と、
前記仮想空間における前記投影面と前記表示部との対応関係を用いて、前記表示部に表示するための表示画像を生成する生成手段とを有し、
前記生成手段は、前記パラメータを用いて前記表示部における位置が前記投影面において対応する位置を算出し、前記算出した位置の画素値を前記入力画像に基づいてレンダリングすることで、前記表示画像を生成することを特徴とする画像処理装置。 - 前記撮影画角は、前記表示角よりも小さいことを特徴とする請求項1に記載の画像処理装置。
- 前記設定手段は、前記入力画像のアスペクト比と前記撮影画角とに応じて前記投影面を設定することを特徴とする請求項1または2に記載の画像処理装置。
- 前記算出手段は、前記撮影画角と前記表示角との比に基づいて前記パラメータを算出することを特徴とする請求項1乃至3の何れか一項に記載の画像処理装置。
- 前記生成手段は、前記表示部における位置を示すX座標を、前記パラメータを用いて前記投影面におけるX座標に変換することを特徴とする請求項1乃至4の何れか一項に記載の画像処理装置。
- 前記表示部は、画像を表示可能な平面状の表示画面が複数、前記視点位置を覆うように配置された構成であり、
前記設定手段は、前記投影面として、前記入力画像に応じた第1の投影面と、前記第1の投影面とは異なる第2の投影面とを設定し、
前記生成手段は、前記パラメータを用いて前記第1の投影面と前記第2の投影面との対応関係を算出することを特徴とする請求項1乃至5の何れか一項に記載の画像処理装置。 - 前記設定手段は、前記表示システム情報に基づいて、前記第2の投影面を設定することを特徴とする請求項6に記載の画像処理装置。
- 前記表示部は、3つの表示画面を、各表示画面における法線が交点を持つように配置された構成であり、
前記設定手段は、平面を水平方向に湾曲した形状の投影面を第2の投影面として設定することを特徴とする請求項6または7に記載の画像処理装置。 - コンピュータを請求項1乃至8の何れか一項に記載の画像処理装置として機能させるためのプログラム。
- 入力画像を撮影したときの撮影画角を取得し、
表示部を含む表示システムにおいて、視点位置から前記表示部を鑑賞した時の見込み角である表示角を示す表示システム情報を取得し、
仮想空間に投影面を設定する設定手段と、
前記撮影画角と前記表示角とに基づいてパラメータを算出し、
前記パラメータを用いて前記表示部における位置が前記投影面において対応する位置を算出し、前記算出した位置の画素値を前記入力画像に基づいてレンダリングすることで、前記表示部に表示するための表示画像を生成することを特徴とする画像処理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018028113A JP2019146004A (ja) | 2018-02-20 | 2018-02-20 | 画像処理装置、画像処理方法およびプログラム |
US16/275,106 US10863154B2 (en) | 2018-02-20 | 2019-02-13 | Image processing apparatus, image processing method, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018028113A JP2019146004A (ja) | 2018-02-20 | 2018-02-20 | 画像処理装置、画像処理方法およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019146004A true JP2019146004A (ja) | 2019-08-29 |
Family
ID=67772761
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018028113A Pending JP2019146004A (ja) | 2018-02-20 | 2018-02-20 | 画像処理装置、画像処理方法およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019146004A (ja) |
-
2018
- 2018-02-20 JP JP2018028113A patent/JP2019146004A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10863154B2 (en) | Image processing apparatus, image processing method, and storage medium | |
JP3450833B2 (ja) | 画像処理装置及びその方法並びにプログラムコード、記憶媒体 | |
US20140064607A1 (en) | Systems, methods, and computer program products for low-latency warping of a depth map | |
US11962946B2 (en) | Image processing apparatus, display system, image processing method, and medium | |
JP2010062790A (ja) | 画像変換装置 | |
KR102049456B1 (ko) | 광 필드 영상을 생성하는 방법 및 장치 | |
JP7296712B2 (ja) | 画像処理装置、画像処理方法、及びプログラム | |
JP2020004325A (ja) | 画像処理装置、画像処理方法およびプログラム | |
JP5809607B2 (ja) | 画像処理装置、画像処理方法及び画像処理プログラム | |
JP5245963B2 (ja) | 画像変換装置 | |
JP2006350852A (ja) | 画像生成システム | |
WO2018135052A1 (ja) | 画像生成装置、及び画像表示制御装置 | |
US10902554B2 (en) | Method and system for providing at least a portion of content having six degrees of freedom motion | |
US10935878B2 (en) | Image processing apparatus, image processing method, and program | |
WO2019163449A1 (ja) | 画像処理装置、画像処理方法およびプログラム | |
JP2019146010A (ja) | 画像処理装置、画像処理方法およびプログラム | |
JP2019146004A (ja) | 画像処理装置、画像処理方法およびプログラム | |
CN110264406B (zh) | 图像处理装置及图像处理的方法 | |
JP2018088654A (ja) | 投影システム、画像処理装置およびプログラム | |
JPWO2011027534A1 (ja) | 画像生成システム、画像生成方法、コンピュータプログラムおよびコンピュータプログラムを記録した記録媒体 | |
JP2017162313A (ja) | 画像処理装置、画像処理方法、及びプログラム | |
JP2019146157A (ja) | 画像処理装置、画像処理方法およびプログラム | |
CN111480335B (zh) | 图像处理装置、图像处理方法、程序以及投影系统 | |
US20230168510A1 (en) | Head-mounted display device, control method, and non-transitory computer readable storage medium | |
JP7391502B2 (ja) | 画像処理装置、画像処理方法及びプログラム |