以下、第1の実施形態について説明する。本実施形態は、駅の連絡通路に設置する映像表示システムなど、線状に分布する観客に対して映像を提示するような映像表示システムに適用する場合に好適な例である。
図1は、本実施形態における映像表示システムを説明する図である。図において、スクリーン110は、背面投射型のスクリーンである。スクリーン110上には、図示しないプロジェクタ220(220−1乃至220−4)により、背面側、すなわちスクリーン110を挟んで通路と反対側から映像が投映されている。プロジェクタ220−1乃至220−4は、水平投映範囲130(130−1乃至130−4)で示されるように隣り合う映像が互いに重複するように配置される。
図示しない映像生成装置200が出力した映像に、図示しない映像補正装置210を用いて幾何補正処理および画素値変換処理を施してプロジェクタ220から投映することにより、スクリーン110上に複数の映像が全体として滑らかに繋がった1つの映像として表示される。
本実施形態では、スクリーン110として、背面投射型の平面形状のスクリーンを使用したが、これに限られるものではない。例えば、正面投射型のスクリーンを使用してもよいし、曲面形状のスクリーンを使用してもよい。なお、曲面形状のスクリーンを使用する場合は、後述の調整位置の数を増やしておくことが望ましい。
観客140(140−1乃至140−3)は、例えば、駅の連絡通路を歩きながら壁面のスクリーン110に表示される映像を眺める歩行者である。本実施形態では、観客140の空間的な分布を観客分布検出部120で検出し、検出した分布は前記画素値変換処理で使用する画素値変換パラメタに反映させる。
観客分布検出部120(120−1乃至120−3)は、監視カメラを使用し、背景差分などの既存の技術を用いて移動体の検出を行うものである。ただし、観客分布検出部120は、観客の空間分布が検出できるものであればよく、本実施形態に限定されるものではない。例えば、ステレオビジョンセンサ、赤外線センサ、圧力センサ等、用途に応じて適宜、既存の技術を用いたセンサを使用することができる。
なお、本実施形態では、観客の空間分布を、通路に沿った1次元の分布として図示したが、通路の幅が広い場合には2次元の分布で考えてもよい。また、高い建物の吹き抜け等に設置したスクリーンに映像を表示するような場合には3次元の分布で考えるようにしてもよい。
映像補正装置210を用いてスクリーン110上で滑らかに繋がった1つの映像を得るためには、あらかじめ前記幾何補正処理および前記画素値変換処理で使用する幾何補正パラメタおよび画素値変換パラメタを生成しておくことが必要である。調整位置において綺麗に見えるようなパラメタを得る場合には、これらは既存の技術で生成することができる。なお、前記画素値変換パラメタは調整した位置に依存して異なるパラメタとなる。特に本実施形態のように背面投射型のスクリーンを使用した場合、該スクリーンの光学特性は指向性が高く、調整位置への依存度が高くなる。
本実施形態においては、調整位置100−1乃至100−3のそれぞれの位置(3箇所)毎にそれぞれ綺麗に見えるような画素値変換パラメタを生成しておき(このとき、例えば調整位置100−1で調整した画素値変換パラメタを使用して調整位置100−3から映像を鑑賞すると、複数の映像の繋ぎ目が暗く沈んで見える等の品質劣化が見られる)、これら3つの画素値変換パラメタを、観客の分布に応じて混合して使用する。なお、この詳細は図2乃至図5を用いて説明する。
前記調整位置100(100−1乃至100−3)の配置は、観客が分布可能な範囲の両端および中央付近とするとよい。これにより、複数の画素値変換パラメタを混合する際に本質的に内挿処理だけで済むようにすることができ、誤差による悪影響を低減することができる。なお、調整位置の数は2箇所以上であればよく、3箇所に限るものではない。調整位置は、観客が分布可能な範囲の両端に加え、観客が分布可能な範囲の内部に必要なだけ設定すればよい。また、観客が分布可能な範囲の両端での映像品質を重視しない場合には、調整位置100を観客が分布可能な範囲の両端に配置する必要はない。この場合、複数の画素値変換パラメタを混合する際に、内挿処理によって混合することができる部分については内挿処理によって混合し、それ以外の部分に関しては外挿処理によって混合すればよい。
図2は、映像表示システムの詳細を説明する図である。なお、図2において図1に示される部分と同一部分については同一符号を付してその説明を省略する。
本実施形態の映像表示システムは、映像生成装置200、映像補正装置210、プロジェクタ220、およびスクリーン110を備える。このシステムでは、映像生成装置200により生成した映像を映像補正装置210で補正し、補正後の映像データをプロジェクタ220からスクリーン110上に投映することにより、観客に対して映像を提供する。
映像生成装置200は、プロジェクタ220の台数に等しい4チャンネル分の映像を画像補正部215に供給する。具体的な構成としては、マトリクススイッチャを用いて1つの映像を必要なチャンネル数だけ複製して出力するような構成であってもよいし、スキャンコンバータを用いて1つの映像から各チャンネルの担当部分の領域を切り出して出力するような構成としてもよいし、それらを併用するような構成としてもよい。また、あらかじめ各チャンネルの担当領域毎に分割して磁気ディスク装置や光ディスク等の記憶媒体に格納しておいた映像を、複数の機器で同期を取りながら再生するような構成としてもよい。その他、用途に応じて適宜、既存の技術を用いた映像生成装置を単体或いは組み合わせて使用することができる。
プロジェクタ220としては、液晶プロジェクタ等、用途に応じて適宜既存の技術を用いた装置を使用することができる。なお、入力された映像に応じてコントラスト等を自動で調整する機能が付いている装置を使用する場合には、前記自動調整機能をOFFにしておくことが必要である。
映像補正装置210は、観客分布検出部120、演算処理装置211、主記憶装置213、外部記憶装置214、および画像補正部215を備える。
演算処理装置211は、外部記憶装置214から必要に応じてプログラムやデータを主記憶装置213に読み込みつつ、画像補正部215に格納する画素値変換パラメタの更新を始めとする各種処理を行う。
主記憶装置213には、演算処理装置211によって外部記憶装置214から読み込まれるプログラムやデータの他、観客分布データ231を一時的に格納する。観客分布データ231は、観客の人数と各々の観客の位置情報で構成され、図1で説明した観客分布検出部120によって逐次更新される。なお、本実施形態では観客分布データ231を主記憶装置213に格納するようにしたが、外部記憶装置214に格納するようにし、必要に応じて主記憶装置213に読み込むようにしてもよい。
外部記憶装置214には、パラメタ初期化プログラム241、パラメタ更新プログラム242、設計データ243、調整済み幾何補正パラメタデータ244、調整済み画素値変換パラメタデータ245を格納する。外部記憶装置214としては、磁気ディスク装置や光ディスク等を使用することができる。また、外部記憶装置214の代わりにデータ通信装置を備えるような構成として、外部記憶装置214に格納していたプログラムやデータを、ネットワーク等を介してシステムの外部から取得するようにしてもよい。
画像補正部215は、映像生成装置200から供給される映像に対して、幾何補正および色や明るさに関する補正を施してプロジェクタ220に供給する。本実施形態においては入力チャンネルと出力チャンネルを1対1に対応させ、後述(図3)の画像補正装置300を4つ使用する構成とする。なお、本明細書では、一貫して入力チャンネル数と出力チャンネル数が同数となるような構成で説明を行うが、これは本質には関係なく、例えば、複数の入力映像を繋ぎ合わせて格納することが可能であるような大きさを持ったフレームバッファを備えるような構成とすることにより、入出力のチャンネル数が異なる場合にも適用することができる。
パラメタ初期化プログラム241は、演算処理装置211によってシステム起動を契機にして開始され、1度だけ実行される。具体的には、画像補正部215に対し入出力の映像信号形式の設定等の初期化処理を行い、さらに、調整済み幾何補正パラメタデータ244(後述)を画像補正部215に設定し、さらに、調整済み画素値変換パラメタデータ245(後述)のうち調整位置100−2に関連して記憶されている、各々のプロジェクタ220−1乃至220−4に対応する画素値変換パラメタを画像補正部215に設定する処理を行う。
なお、画素値変換パラメタに関しては、調整位置100−2ではなく調整位置100−1や調整位置100−3に関連して記憶されているものを設定してもよいし、後述(図5)の処理で生成された画素値変換パラメタを外部記憶装置214に記憶しておき、それを設定するようにしてもよい。また、画像補正装置300(図3)のパラメタ記憶部316を不揮発性のメモリ等で構成し、幾何補正パラメタ322および画素値変換パラメタ323をシステム終了後も保持しておけるようにした場合には、システムの2回目以降の起動時においては、パラメタ初期化プログラム241で幾何補正パラメタおよび画素値変換パラメタを画像補正装置300に設定する処理を省略してもよい。
パラメタ更新プログラム242は、パラメタ初期化プログラム241の終了を契機として開始され、システムが動作している間は繰り返し実行される。パラメタ更新プログラム242の詳細は後述(図5)する。
パラメタ更新プログラム242を実行する際、演算処理装置211は、映像表示システム全体に固有の基準座標系に基づいて処理を行う。設計データ243は、該基準座標系における各々の調整位置100−1〜100−3の座標値、スクリーン110に固有の座標系を基準座標系に変換するためのパラメタ、観客分布検出部120に固有の座標系を基準座標系に変換するためのパラメタ、各々のプロジェクタ220−1乃至220−4に固有の座標系をスクリーン110に固有の座標系に変換するためのパラメタ、および映像生成装置200から供給される各チャンネルの映像に固有の座標系を各々対応するプロジェクタ220−1乃至220−4に固有の座標系に変換するためのパラメタを含む座標変換のためのデータである。設計データ243は、映像表示システムの設計時にあらかじめ決定された設計値を用いる。演算処理装置211は、必要に応じて設計データ243に基づき、既知の方法を用いて各々の装置に固有の座標系で表現されたデータを基準座標系での表現に変換して使用する。
調整済み幾何補正パラメタデータ244は、各々のプロジェクタ220−1乃至220−4に対応する調整済みの幾何補正パラメタの集合、すなわち、スクリーン110上で映像が幾何学的に滑らかに繋がるような幾何補正パラメタの集合である。このような幾何補正パラメタは、既存の技術を用いてあらかじめ生成しておく。具体的には、単純に設計値に基づいて生成してもよいし、調整用の撮像装置を備える構成として、例えば特開2002−72359号公報に記載の方法によって生成してもよい。また、同じく調整用の撮像装置を備える構成として、映像生成装置200が供給する各チャンネルの映像に固有の座標系と、所定の位置(設計値としてあらかじめ与えられた位置)から所定の条件(設計値としてあらかじめ与えられた姿勢や画角)において調整用の撮像装置でスクリーン110上の映像全体を撮影した撮影画像データ上の座標系との対応を、映像生成装置200が供給する各チャンネルごとに空間コード化法(井口征士,佐藤宏介,3次元画像計測,昭晃堂,東京,1990,pp.80−91)等の既存の方法によって生成した上で、該生成した座標系対応データと、設計値から算出した「撮影画像データ上の座標系において映像生成装置200が供給する各チャンネルの映像がどのように撮影されているべきか」というデータに基づいて、生成するようにしてもよい。なお、幾何補正パラメタの具体的な実施形態については後述(図3)する。
また、調整済み画素値変換パラメタデータ245は、調整位置100−1乃至100−3のそれぞれの位置で調整された、各々のプロジェクタ220−1乃至220−4に対応する画素値変換パラメタの集合であり、各々の調整位置100−1乃至100−3に関連付けて記憶される。このような画素値変換パラメタ、即ち、所定の調整位置で映像を鑑賞するのに好適な画素値変換パラメタは、既存の技術、例えば、特願2006−24627号、あるいは特開2002−72359号公報に記載の技術などを用いてあらかじめ生成しておく。なお、画素値変換パラメタの具体的な実施形態については後述(図4)する。
図3は、画像補正装置300の詳細を説明する図である。画像補正装置300は、映像入力部310、フレームメモリ311、幾何補正部312、画素値変換部313、映像出力部314、パラメタ設定部315、およびパラメタ記憶部316を備える。パラメタ記憶部316には、幾何補正パラメタ322および画素値変換パラメタ323を格納する。
映像入力部310は、映像生成装置200から供給された1チャンネル分の映像を読み込み、デジタル画像データとしてフレームメモリ311に書き込む。該映像がアナログ信号で供給される場合には、A/D変換器を備えた構成とすればよい。
フレームメモリ311は、1チャンネル分の入力映像が格納可能な大きさのメモリを2フレーム分だけ備える構成とし、1フレーム分を映像入力部からの書き込み用に、残りの1フレーム分を幾何補正部からの読み出し用に、奇数フレームと偶数フレームとで役割を交互に交代しながら使用される。
幾何補正部312は、パラメタ記憶部316に格納されている幾何補正パラメタ322に基づいてフレームメモリ311上の画像データに幾何補正を行った結果の画像データを画素値変換部313に対して出力する。ここで、幾何補正パラメタ322は、幾何補正部312の出力する画像データの各々の画素に対して該画素の画素値をフレームメモリ311上のどの画素を参照してどのように決定するかを定義したパラメタである。例えば、各画素について実数値Xと実数値Yの組を格納しておき、それをフレームメモリ上の(X,Y)という座標値に対応させて、基準色(例えばR,G,B)毎に、四近傍画素の双線形補間によって画素値を定めるように実装すればよい。なお、フレームメモリ上に対応する座標値がない場合には、幾何補正パラメタ322の当該位置にあらかじめ定めた例外値を入れておき、幾何補正部312はこのような画素に対して常に「黒」すなわち(R,G,B)=(0,0,0)を出力するように構成する。
画素値変換部313は、パラメタ記憶部316に格納されている画素値変換パラメタ323に基づいて、幾何補正部312から入力された画像中の各画素に対して画素値を変換して映像出力部314に対して出力するものであり、映像の色や明るさの補正に相当する処理を行う部分である。画素値変換部313の入力および出力となる画像の解像度は、いずれも画像補正装置300の出力となる映像の解像度に等しい。画素値変換パラメタ323の詳細は後述する(図4)。
映像出力部314は、画素値変換部313から出力された画像データを映像信号に変換してプロジェクタ220に出力する。プロジェクタ220がアナログ映像信号を投映するように構成されている場合には、D/A変換器を備えた構成とすればよい。
パラメタ設定部315は、演算処理装置211の指示により画像補正装置300に入力された幾何補正パラメタをパラメタ記憶部316に幾何補正パラメタ322として記憶させ、かつ、演算処理装置211の指示により画像補正装置300に入力された画素値変換パラメタをパラメタ記憶部316に画素値変換パラメタ323として記憶させる。
フレームメモリ311およびパラメタ記憶部316としてはRAMを、幾何補正部312および画素値変換部313としてはFPGAやASICを使用し、パラメタ設定部315としてはUSBやPCIバス等の入力インタフェースとこの制御および入力されたデータを処理するためのFPGAやASIC等の組を使用することができる。しかし、これらを使用することに限定されるものではない。
なお、画像補正装置300の構成は図3の構成に限るものではない。例えば、映像生成装置200からあらかじめ必要な幾何補正を施した映像が供給される場合や、スクリーン110とプロジェクタ220とを厳密に正しく設置した場合など、画像補正装置300で幾何補正を施す必要がない場合には幾何補正部312を省略してもよい。この場合には、パラメタ記憶部316に幾何補正パラメタ322を記憶する必要もない。
また、例えば、想定される幾何補正量の最大値(この場合、垂直方向の変化量の最大値)があらかじめ与えられている場合には、読み書きのタイミングを1ライン毎に制御することで、フレームメモリ311を、前記幾何補正量の最大値に依存して決まるライン数だけのラインバッファに代えて実施することもできる。
図4は、画素値変換パラメタ323の表現方法を説明する図である。画素値変換パラメタ323は、画素毎および基準色(例えばR,G,B)毎に独立して、入力画素値に対して出力画素値が一意に定まるような特性関数400を備える。図の例では、特性関数400は区分線形関数であり、入力画素値0、64、128、192、255のそれぞれに対して出力画素値L0、L1、L2、L3、L4を対応させることで定義される。なお、特性関数400の表現方法はこれに限るものではなく、区分線形関数の区分数の変更やルックアップテーブルによる表現、モデル表現(例えば、「出力画素値を正規化したものは入力画素値を正規化したもののγ乗に等しい」とモデル化し、各画素および各色毎にオフセットの値など正規化に必要となるパラメタとγの値とを保持するようにする)等、種々の表現を用いることができる。
図5は、本実施形態のパラメタ更新プログラム242の処理を説明する図である。この処理は、パラメタ初期化プログラム241の終了を契機として開始され、システムが動作している間は繰り返し実行される。
演算処理装置211は、パラメタ更新プログラム242を外部記憶装置214から主記憶装置213に読み込んで実行する。実行が開始されると、まず、観客分布検出部120が非同期で更新している最新の観客分布データ231を読み込む(S501)。
次に、パラメタ合成処理を行う(S502)。パラメタ合成処理は、観客分布データ231、設計データ243、および調整済み画素値変換パラメタデータ245に基づいて、現在の観客分布に対して最適であると期待される画素値変換パラメタを生成し、生成した画素値変換パラメタで画像補正装置300内の画素値変換パラメタを更新する処理である。本処理は、各々のプロジェクタ220−1乃至220−4に対応する画素値変換パラメタ毎に独立に実施することができる。
本実施形態では、まず、個々の観客毎に独立に、該観客にとって最適であると期待される画素値変換パラメタ(以下、「暫定画素値変換パラメタ」と呼ぶ)を算出し、算出された複数(観客分布データ231に検出されている観客数に等しい)の暫定画素値変換パラメタをもとに実際に画像補正装置300内の画素値変換パラメタを更新するための画素値変換パラメタ(以下、「更新画素値変換パラメタ」と呼ぶ)を算出する。
観客aに対応する暫定画素値変換パラメタは、(1)式にしたがって算出する。
ここで、Ta(X)は暫定画素値変換パラメタの画素位置Xにおけるパラメタの値(本実施形態では図4の(L0,L1,L2,L3,L4)で表されるベクトル値)である。We(Yp,Ya)は調整位置pの基準座標系上の座標Ypと観客aの基準座標系上の座標Yaとで決定される重み値であり、調整位置pに関する総和が1になるように正規化されている。Tp(X)は調整位置pに対応する調整済み画素値変換パラメタの画素位置Xにおける値であり、Ta(X)と同様のベクトル値である。
We(Yp,Ya)は、例えば、(2)式を用いて算出した値を正規化することで算出できる。
ここで、εは所与の定数であり、観客aの位置Yaが、ある調整位置Ypに一致する場合に、暫定画素値変換パラメタが該調整位置pに対応する調整済み画素値変換パラメタと略一致するような値を設定しておく。例えば、最も近い2つの調整位置の間のユークリッド距離がdである場合、d/10000という値を設定すればよい。また、D(Yp,Ya)はYpとYaの間のユークリッド距離である。
更新画素値変換パラメタは、前記のように算出された複数の暫定画素値変換パラメタを用いて、(3)式にしたがって算出する。
ここで、T(X)は更新画素値変換パラメタの画素位置Xにおけるパラメタの値(ベクトル値)であり、Wx(Yx,Ya)は画素位置Xの基準座標系上の座標Yxと観客aの基準座標系上の座標Yaとで決定される重み値であり、観客aに関する総和が1になるように正規化されている。Ta(X)は暫定画素値変換パラメタの画素位置Xにおけるパラメタの値(ベクトル値)である。
Wx(Yx,Ya)は、例えば、(4)式を用いて算出した値を正規化することで算出することができる。
ここで、D(Yx,Ya)はYxとYaの間のユークリッド距離である。
前記パラメタ合成処理(S502)の終了後、演算処理装置211は、パラメタ登録処理を行う(S503)。パラメタ登録処理は、パラメタ合成処理(S502)で生成した更新画素値変換パラメタを、各々対応する画像補正装置300の画素値変換パラメタ323として登録する処理である。この処理は、各々のプロジェクタ220−1乃至220−4に対応する更新を同時に実施するように構成することが望ましい。
パラメタ登録処理(S503)の終了後、演算処理装置211は、パラメタ更新プログラム242の実行を終了する。
なお、本実施形態では、パラメタ合成処理(S502)を、(a)暫定画素値変換パラメタの生成、および(b)更新画素値変換パラメタの生成の2段階に分けて実施したが、これらを合成して一回の計算で実施するようにしてもよい。この場合には、あらかじめ(1)式を(3)式に代入して整理した式を用いることにより実施すればよい。
また、本実施形態では、パラメタ合成処理(S502)を複数の調整済み画素値変換パラメタの重み付き平均をとる処理としたが、これに限るものではない。例えば、暫定画素値変換パラメタの生成においては、観客aの存在する区間を判別し、該区間の両端の調整位置における調整済み画素値変換パラメタから内挿処理によって暫定画素値変換パラメタを生成してもよい。あるいは、より単純に、一番近い調整位置における調整済み画素値変換パラメタをそのまま暫定画素値変換パラメタとして使用するようにしてもよい。
また、本実施形態では、重み値の計算をユークリッド距離で実施したが、これに限るものではない。例えば、図1に示されているように、調整位置100−1乃至100−3を結ぶ想定経路を設定し、基準座標系の座標値を該想定経路上の1次元の座標値に変換する変換関数を用いて変換した上で、その1次元の座標値を用いて計算してもよい。前記変換関数は、例えば基準座標系の座標値をそれに最も近い想定経路上の座標値に変換するような関数であってもよいし、また、基準座標系で表されている空間をあらかじめ複数の小領域に分割し、該小領域の各々について想定経路上の座標値を規定した変換テーブルをあらかじめ作成しておき、該変換テーブルを用いて変換するようなものでもよい。なお、前記想定経路を、想定される観客の平均的な身長を考慮して設定してもよいことは、言うまでもない。
このように、重み値の計算を1次元の座標値に基づいて実施するような実施形態とすることにより、想定経路が曲線となる場合に、「距離」を道のりとして扱うことができるため、より好適であると期待できる画素値変換パラメタを得ることができる。
また、観客分布検出部が観客aの視点位置を厳密に検出することが困難である場合にも、検出の際の分散が大きく誤差も大きいと予想される高さ方向の成分の悪影響を抑え、好適であると期待できる画素値変換パラメタを得ることができる。なお、高さ方向の視点の存在範囲は観客の個体差に依存して決まるものであり、観客の移動量に依存して決まる視点の存在範囲に比べ一般に狭いため、完全に無視した場合でもこの影響は軽微である。
以上説明したように、本実施形態によれば、現在の観客分布を検出し、観客の視点位置に依存しない数箇所の計測位置においてあらかじめ調整しておいた調整済み画素値変換パラメタを、観客分布に基づいて混合することによって、検出された観客分布において最適であると期待される画素値変換パラメタを生成することができる。このため、大域的な最適化を必要とせず、個別に単純な方法で画素値変換パラメタを生成することができ、従来技術に比べより低いコストで観客が感じる映像の品質を向上させることができる。
なお、本実施形態においては、基準座標系における各々の調整位置100−1乃至100−3の座標値を設計値として与えたが、調整済み画素値変換パラメタを生成する際に、各々のプロジェクタ220−1乃至220−4に固有の座標系と調整に使用する撮影装置に固有の座標系との間の対応関係を定義した座標間対応データを生成する場合には、該座標間対応データと設計データ243とから既存の方法を用いて推定した値を使用してもよい。
また、本実施形態においては、調整済み画素値変換パラメタデータ245は画素値変換パラメタの集合であるとしたが、この「画素値変換パラメタ」とは、画像補正装置300に格納する画素値変換パラメタ323と同等以上の情報を備えるものであればよく、具体的な表現方法は異なっていてもよい。
また、本実施形態においては、観客分布検出部120を用いてすべての観客の空間分布を検出したが、これに限るものではない。例えば、デパートの吹抜けに階を跨るように縦長に設置されたスクリーンに、前記吹抜けの中央部に設置されたガラス張りのエレベーターの乗客に向けた映像を表示するような場合には、デパートの各階に存在する観客は無視し、エレベーターの位置に1人だけ観客がいるものとして、すなわちエレベーターの高さの関数として、画素値変換パラメタを生成すればよい。
また、本実施形態においては、パラメタ更新プログラム242を繰り返し実行することで、画像補正部215に設定する画素値変換パラメタを逐次更新し、観客分布検出部120がその都度検出した観客分布に適した映像を提示できるようにしたが、これに限るものではない。例えば、遊園地のジェットコースターを囲むように設置したスクリーンに観客とのインタラクションのない映像を表示するような場合には、あらかじめ出発時刻を起点とした各時刻における観客の位置を計算することによって、各時刻に対して適切な画素値変換パラメタをあらかじめ生成し、該画素値変換パラメタに基づいて画像補正部215で為される補正と等価な補正を施した映像をあらかじめ生成した上で、その補正済みの映像を映像生成装置200からプロジェクタ220に対して映像補正装置210を介さずに直接出力するようにしてもよい。
また、本実施形態は、例えば、調整位置100−2で調整した画素値変換パラメタを画像補正部に格納して画像補正を行いたいが調整位置100−2に直接撮影装置を設置して調整を行うことができないような場合に、調整位置100−1で調整した画素値変換パラメタと調整位置100−3で調整した画素値変換パラメタとを合成して調整位置100−2における画素値変換パラメタを生成するような用途にも適用することが可能である。
次に、第2の実施形態を説明する。本実施形態は、動く歩道やエスカレータの脇に設置する映像表示システムなど、定点観測によって観客分布の時間的な変化が予測しやすい映像表示システムに適用する場合に好適な例である。
図6は、本実施形態の映像表示システムを説明する図である。なお、図において図1に示される部分と同一部分については同一符号を付してその説明を省略する。
スクリーン110には、図1の例と同様に映像が投映されている。ただし、本実施形態においては、映像補正装置として、図1における映像補正装置に代え、映像補正装置710(図7)が使用される。
観客640(640−1乃至640−3)は、例えば、動く歩道630に乗って壁面のスクリーン110に表示されている映像を眺める歩行者である。本実施形態では、観客640−1乃至640−3がそれぞれ動く歩道630に乗った時刻を入場者検出部620で検出し、検出時刻と現在時刻、および動く歩道630の動く速度631を基に観客640の空間的な分布を推定した上で、前記画素値変換処理で使用する画素値変換パラメタに反映させる。
入場者検出部620は、レーザを用いた距離センサであり、動く歩道630の入口に設置され、センサで検出される距離の変化を利用して観客が動く歩道630に乗ったことを検出する。入場者検出部620は、検出した情報に基づいて、逐次、入場者データ732(図7)を更新する。なお、入場者検出部620は、定点において人流を検出できるようなものであればよく、実施の形態は本実施形態に限定されるものではない。例えば、ステレオビジョンセンサ、赤外線センサ、圧力センサ等、用途に応じて適宜既存の技術を用いたセンサを使用することができる。
図7は、映像表示システムの詳細を説明する図である。なお、図において図2に示される部分と同一部分については同一符号を付してその説明を省略する。
本実施形態の映像表示システムは、映像生成装置200、映像補正装置710、プロジェクタ220、およびスクリーン110を備え、映像生成装置200で生成した映像を映像補正装置710で補正し、補正後の映像データをプロジェクタ220からスクリーン110上に投映することにより、観客に対して映像を提供する。
映像補正装置710は、入場者検出部620、演算処理装置211、主記憶装置213、外部記憶装置214、および画像補正部215を備える。
主記憶装置213には、演算処理装置211によって外部記憶装置214から読み込まれるプログラムやデータの他に、入場者データ732を一時的に格納する。入場者データ732は図6で説明した入場者検出部620によって逐次更新されるデータであり、この詳細は後述(図8)する。
外部記憶装置214には、パラメタ初期化プログラム241、パラメタ更新プログラム742、設計データ743、調整済み幾何補正パラメタデータ244、調整済み画素値変換パラメタデータ245を格納する。
パラメタ更新プログラム742は、パラメタ初期化プログラム241の終了を契機として開始され、システムが動作している間は、単位時間Δt毎に繰り返し実行される。パラメタ更新プログラム742の詳細は後述(図9)する。
設計データ743は、パラメタ更新プログラム742で使用される重み値を含むデータである。本実施形態は、動く歩道が単位時間Δtの間に全体長の1/8だけ進む場合の例であり、動く歩道630を8つの区間に等しく分割し、各区間に存在すると推測される観客の位置をあらかじめ定めた当該区間を代表する位置で近似することで処理を単純化する。 重み値We(Yp,Ys)および重み値Wx(Yx,Ys)に関しては、各区間の中央の位置の座標値Ysを用いて、第1の実施形態と同様に計算すればよい。Ysは設計値として求めることが可能であるため、これらの重み値はあらかじめ計算しておくことができる。なお、We(Yp,Ys)に関しては正規化した値を使用するが、Wx(Yx,Ys)に関しては正規化の必要はない。
なお、本実施形態のような用途では、一般に、観客の斜め前に位置する部分の映像が綺麗に見えることが重要であると推測される。また、観客がすでに通り過ぎてしまった部分の映像の重要度は低いと予想される。このため、Wx(Yx,Ys)の値を計算する際には、それらの要素を考慮して計算するようにしてもよい。例えば、動く歩道630の動く速度631を所定の大きさに正規化した上でYsに加え、Wx(Yx,Ys)の値をその位置を基準として計算するようにしてもよいし、動く歩道630の動く速度631とYsからYxに向かうベクトルを大きさ1に正規化したものとの内積をWx(Yx,Ys)の値に反映させるようにしてもよい。
図8は、入場者データ732のデータ構造を説明する図である。本実施形態では、動く歩道630を8つの区間に分割して扱うため、各々の区間に存在すると見做される人数を格納するための領域を8つ用意する。本実施形態の場合、一定時間が経過した後には観客が動く歩道の出口を出てしまっていると考えられるため、計数データは一定時間の経過後には不要になる。従って本実施形態では、入場者データ732をリングバッファとして保持する。
入場者検出部620は、入場者を検出すると、現在時刻ポインタ800が指し示す領域810のデータを「1」増やす。演算処理装置211は、単位時間Δt毎に現在時刻ポインタ800を右に1つ移動させ、移動後の領域のデータを「0」に初期化する。なお、現在時刻ポインタ800が最も右の領域812を指している場合には、最も左の領域813に移動させる。
図8の状態においては、領域810に記憶されている人数が動く歩道の入口に最も近い区間(s=1)に存在すると推測される観客の人数を表し、領域813に向かって徐々に出口に近い区間に移動し、領域811に記憶されている人数が動く歩道の出口に最も近い区間(s=8)に存在すると推測される観客の人数を表している。
リングバッファの具体的な例としては、人数を格納する領域を配列として確保し、現在時刻ポインタ800を当該配列のインデックスとして保持すればよい。
図9は、パラメタ更新プログラム742の処理を説明する図である。この処理は、パラメタ初期化プログラム241の終了を契機として開始され、システムが動作している間は繰り返し実行される。
演算処理装置211は、パラメタ更新プログラム742を外部記憶装置214から主記憶装置213に読み込んで実行することにより、まず、入場者検出部620が非同期に更新している最新の入場者データ732を読み込む(S901)。
次に、観客分布推定処理を行う(S902)。観客分布推定処理は、入場者データから観客の人数と各々の観客の位置情報を推定する処理である。本実施形態では、入場者データ732が本質的に等価な情報を備えているため具体的な処理は必要ないが、動く歩道の長さや速度等のデータに基づいてより厳密な計算を行うことが必要な場合には、観客分布推定処理(S902)において観客分布を推定し、推定した観客分布を観客分布データ731として主記憶装置213に格納した上で、パラメタ合成処理(S903)において該観客分布データ731を用いて第1の実施形態と同様の処理を行うようにすればよい。
観客分布推定処理(S902)の終了後、演算処理装置211は、パラメタ合成処理を行う(S903)。パラメタ合成処理(S903)は(5)式および(6)式を用いて、第1の実施形態におけるパラメタ合成処理(S502)と同様に実行する。
なお、本実施形態においては、重み値We(Yp,Ys)およびWx(Yx,Ys)は設計データ743に記憶されている値を使用する。ここで、ρ(s)は区間sに存在すると推測される人数であり、入場者データ732から得ることができる。
パラメタ合成処理(S903)の終了後、演算処理装置211はパラメタ登録処理(S904)を実施して、パラメタ更新プログラム742の実行を終了する。パラメタ登録処理(S904)は、第1の実施形態におけるパラメタ登録処理(S503)(図5)と同様に実施すればよい。
以上、本実施形態によれば、定点観測と適切なモデル化により現在の観客分布を推定することにより、第1の実施形態に比べて観客の分布を簡易な方法で得ることができ、また、推定した観客分布を複数の区間に離散化して扱い、各区間に関係する重み値をあらかじめ設計値として保持しておくことで、第1の実施形態に比べてパラメタ合成処理を簡易な方法で実施することができる。すなわち、本実施形態によれば、第1の実施形態に比べてさらに低いコストで観客が感じる映像の品質を向上させることができる。
なお、本実施形態では動く歩道の入口だけで入場者の計数を実施したが、さらに動く歩道上の数点において該位置を通過する観客数を計数することで、より実際に近い観客の分布を推定し、画素値変換パラメタに反映させるようにしてもよい。
また、本実施形態の本質は、定点計測によるデータから観客の分布を推定して最適と期待される画素値変換パラメタを生成することにあるため、例えば、双方向の動く歩道である場合や、動く歩道上を歩く観客がいる場合にも、それぞれに対応するモデルを作成し、該モデルに従って観客の分布を推定することにより、例示した形態と同様に、観客の分布に対して最適と期待される画素値変換パラメタを生成することができる。
また、本実施形態においては、ρ(s)に関する重み付き平均としてパラメタ合成処理を実施したが、これに限るものではない。例えば、ρ(s)が最大となる区間sだけに基づいて、すなわち他の区間に関してはρ(s)を0であるとみなして、パラメタ合成処理を実施するようにしてもよい。
次に、第3の実施形態を説明する。本実施形態は、第2の実施形態で使用していた画像補正装置300に代え、図10で説明する画像補正装置1000を使用することにより、システム運用時のデータ転送コストを考慮して処理コストの低減を図ったものである。なお、本実施形態においては、説明を簡便にするため、Wx(Yx,Ys)=1であるとして説明を行うが、これに限るものではない。Wx(Yx,Ys)はあらかじめ計算しておくことのできる固定値であるから、この値が画素毎に異なる値を有する場合には、後述のパラメタ記憶部316(図10)に各区間に対応するWx(Yx,Ys)のデータを格納する領域を設けた上で、画素値合成部1011の処理を、Wx(Yx,Ys)を加味した重み付き平均を取るように変更すればよい。
図10は、本実施形態の画像補正装置を説明する図である。なお、図において図3に示される部分と同一部分については同一符号を付してその説明を省略する。
画像補正装置1000は、映像入力部310、フレームメモリ311、幾何補正部312、画素値変換部1010、画素値合成部1011、映像出力部314、パラメタ設定部315、およびパラメタ記憶部316を備える。パラメタ記憶部316には、幾何補正パラメタ322、画素値変換パラメタ1020、混合比率パラメタ1021、および混合重みパラメタ1022を格納する。
画素値変換パラメタ1020は、調整済みの画素値変換パラメタであり、調整位置の数(本実施形態では100−1乃至100−3の「3」)に等しい数のパラメタを含む。画素値変換パラメタ1020は、システムの起動時に演算処理装置211によってあらかじめ画像補正装置1000に設定されるパラメタである。
混合比率パラメタ1021は、各区間における各々の画素値変換パラメタの混合比率(全画素に共通のベクトル値)であり、We(Yp,Ys)に相当し、区間数(本実施形態では「8」)に等しい数のパラメタを含む。混合比率パラメタ1021は、システムの起動時に演算処理装置211によってあらかじめ画像補正装置1000に設定されるパラメタである。
混合重みパラメタ1022は、各区間に存在すると推定される人数であり、入場者データ732に相当するパラメタである。このため、入場者データ732と同様に、リングバッファで保持してもよく、この場合には、単位時間Δt毎に演算処理装置211が確定した最新の通過人数を画像補正装置1000に送信し、送信された情報を受信したパラメタ設定部315が現在時刻ポインタの更新を行った上で、更新後の位置に受信した情報を書き込むようにする。なお、単純に、演算処理装置が各区間に存在すると推定される人数を毎回すべて送信するようにしてもよい。
画素値変換部1010は、パラメタ記憶部316に記憶されている画素値変換パラメタ1020と混合比率パラメタ1021とに基づいて、幾何補正部312から入力された画像中の各画素に対して画素値を変換して画素値合成部に対して出力するものである。ここで、画素値の変換は区間毎に独立に実施され、区間数に等しい数の画像(以下、「暫定画像」と呼ぶ)が画素値合成部に対して出力される。暫定画像とは、該画像を画像補正装置1000の補正結果としてそのまま出力した場合に、該画像に対応する区間において最適な見え方が得られると期待される画像である。
画素値合成部1011は、画素値変換部1010から入力された区間数に等しいだけの数の暫定画像を、パラメタ記憶部316に記憶されている混合重みパラメタ1022に基づいて合成し、映像出力部314に対して出力するものである。具体的には、画素毎に、各区間に対応する暫定画像の画素値に各区間の人数を乗算した上ですべての区間の乗算結果を加算し、加算結果を全区間の人数の総和で除算する。
以上、本実施形態によれば、混合重みパラメタ1022(あるいはこの一部)のみを画像補正部に送信するだけで第2の実施形態と類似の処理を実現することができる。このため、データ転送コストも考慮した場合、すなわち、パラメタ設定部315を介したデータ転送が画像補正装置内のデータ転送に比べて遅い場合に、第2の実施形態に比べてさらに低いコストで観客が感じる映像の品質を向上させることができる。
次に、第4の実施形態について説明する。本実施形態は、映画館や会議室等、観客の分布が2次元的な広がりを持つような映像表示システムに適用する場合に好適である。また、観客の重要度に座席の価格などに応じた優劣があり、各々の観客に前記重要度の優劣に見合った品質の映像を提供するような映像表示システムを構築する場合に特に好適である。
図11は、本実施形態の映像表示システムを説明する図である。本実施形態では、あらかじめ調整位置1100−1乃至1100−4のそれぞれにおいて綺麗に見えるような画素値変換パラメタを生成しておき、それら4つの画素値変換パラメタを、観客の分布に応じて混合して使用する。観客の分布が2次元的な広がりを持つことが想定される場合には、図示されているように、調整位置1100の分布も、想定される観客の分布を概ね覆うように2次元に分布させることが望ましい。
斜線を付した座席1120は特別席であり、他の座席1121は一般席である。特別席の鑑賞券は、通常、一般席の鑑賞券に比べて高い価格で販売されるため、それに見合った映像品質が要求される。本実施形態では、特別席の観客に、一般席の観客に比べて高品質な映像を提供する。
図12は、映像表示システムの詳細を説明する図である。なお、図において図2に示される部分と同一部分については同一符号を付してその説明を省略する。
本実施形態の映像表示システムは、映像生成装置200、映像補正装置1210、プロジェクタ220、およびスクリーン110を備え、映像生成装置200で生成した映像を映像補正装置1210で補正し、補正後の映像データをプロジェクタ220からスクリーン110上に投映することにより、観客に対して映像を提供する。
映像補正装置1210は、演算処理装置211、主記憶装置213、外部記憶装置214、画像補正部215、およびデータ通信装置1260を備える。
主記憶装置213には、演算処理装置211によって外部記憶装置214から読み込まれるプログラムやデータの他、観客分布データ1231を一時的に格納する。観客分布データ1231は、観客の人数と各々の観客の座席情報とで構成され、パラメタ更新プログラム1242の実行時に、各座席の発券情報を図示しない(外部の)鑑賞券発券システム等の管理するデータベースからデータ通信装置1260を介して読み込むことにより更新する。
外部記憶装置214には、パラメタ初期化プログラム241、パラメタ更新プログラム1242、設計データ1243、調整済み幾何補正パラメタデータ244、調整済み画素値変換パラメタデータ245を格納する。
設計データ1243は、各調整位置の座標、各座席の座標、および各座席の重要度を含むデータである。各座席の重要度は、システム管理者がシステム運営方針(鑑賞券の価格差を重要度にどの程度反映させるか)に従ってあらかじめ定めたものを格納する。
パラメタ更新プログラム1242は、各回の上映毎に繰り返し実行されるものであり、第1の実施形態におけるパラメタ更新プログラム242(図5)と同様の処理フローである。
たとえば、観客分布データ読み込み処理(S501)は、各座席の販売状況データを、外部の鑑賞券発券システム等の管理するデータベースからデータ通信装置1260を使用してネットワーク経由で読み込むことにより実施する。
パラメタ合成処理(S502)は、前記(5)式および(6)式に基づいて実施する。このとき、区間sを座席sに読み替え、ρ(s)を座席sの重要度と読み替え、さらに「Wx(Yx,Ys)=1」として実施する。ただし、座席sの鑑賞券が発券されていない場合には、座席sの重要度を0として扱う。なお、「Wx(Yx,Ys)=1」とするのは、本実施形態のような用途においては各座席の観客は映像全体を視野に入れているため、画素位置に依存して重み値を変化させるのは適切でないと考えられるためであり、必要に応じてWx(Yx,Ys)の値を他の実施形態と同様に画素毎・座席毎に個別の値とすることは可能である。
以上、本実施形態によれば、観客の分布が2次元的な広がりを持っており、観客毎に重要度に差がある場合にも、前記重要度を反映させつつ、低いコストで観客が感じる映像の品質を向上させることができる。
なお、パラメタ更新プログラム1242は、発券状況の変化に依存して実行するようにしてもよい。また、We(Yp,Ys)の計算方法に関しては、例えば、調整位置1100−1乃至1100−4を母点として2次元空間をドロネー三角形分割し、各座席に対して該座席を含む三角形の頂点にあたる調整位置のみを使って線形補間によって算出する等、他の方法によって実施してもよい。
また、本実施例においては、あらかじめ位置と重要度とが固定されている座席に対して各座席の販売状況データに基づいてパラメタ合成処理を実施したが、これに限るものではない。例えば、イベント会場に設置された映像表示システムであれば、各々の観客に渡された名札等に付属させた無線タグを読み込むことによって個人を識別し、各々の観客の位置と重要度とを検出した上で、検出された位置と重要度とに基づいてパラメタ合成処理を実施するようにしてもよい。
次に、第5の実施形態について説明する。本実施形態は、光線再生方式の映像表示システムの調整に適用する場合に好適である。ここで、光線再生方式の映像表示システムは、裸眼立体視等の用途で広く利用されている公知の技術である。
本実施形態では、映像表示装置として、光線再生方式の一方式であるインテグラルフォトグラフィ技術を用いた装置を使用する。インテグラルフォトグラフィ技術においては、光線制御子として、レンズアレイを使用する。まず、前記装置の概要を図13および図14を用いて説明した後に、図15〜図17で本実施形態について説明する。
図13および図14は、それぞれ、本実施形態の映像表示装置の映像表示方法を説明するための側面図および平面図である。
図13において、観客は、映像表示面1310に表示された映像を、レンズアレイ1320を通して鑑賞する。このときの映像の見え方は、次のようになる。
図14において、各々の矩形は映像表示面1310上の画素を示し、各々の円はレンズアレイ1320上のレンズを示している。各々のレンズには、映像表示面1310上の担当する領域が決められており、観客には、各レンズの位置に、該レンズが担当する領域のうちの1点が見える。各々のレンズに関して、担当領域中のどの位置が見えるかは、観客の鑑賞位置に依存して光学的に決定される。例えば、レンズ1421の担当領域は縦4画素×横4画素から成る矩形領域1411であり、ある鑑賞位置からは、レンズ1421の位置に、斜線を付した画素1412があるように見える。なお、各鑑賞位置に対して各々のレンズの位置に前記レンズの担当領域中のどの位置が見えるかは設計値から計算によって求めることができる。その際、図14の斜線で示すように、各々の担当領域中で相対的に同一位置が見えるとは限らないため、各々のレンズに対して計算を行うことが必要である。
図15は、本実施形態の映像表示システムおよびその調整システムを説明する図である。なお、図において図2に示される部分と同一部分については同一符号を付してこの説明を省略する。
本実施形態の映像表示システムは、映像生成装置1500、画像補正装置1510、映像表示装置1520を備え、映像生成装置1500で生成した映像を、画像補正装置1510で画素値変換パラメタ1511に基づいて補正し、補正後の映像データを映像表示装置1520で表示することにより、観客に対して映像を提供するものである。
また、本実施形態の調整システムは、パラメタ生成装置1550、撮影装置1560、撮影条件制御装置1570を備え、画像補正装置1510内の画素値変換パラメタ1511を変更しながら、映像表示装置1520で表示された映像を撮影した撮影画像データに基づき、映像表示システムで良好な映像を表示するのに適した画素値変換パラメタ1511を生成するものである。
映像生成装置1500は、映像表示装置1520を用いて表示するのに好適な1チャンネル分の映像を生成して、画像補正装置1510に供給する。例えば、DVDプレイヤーを用いてDVDメディアに記録された所定の映像を供給するようにしてもよいし、PCを用いてインタラクティブなコンテンツ映像を供給するようにしてもよいが、これらの例に限るものではない。
画像補正装置1510は、画像補正装置300(図3)からフレームメモリ311と幾何補正部312を取り除いたものである。すなわち、幾何補正機能を備えないため、パラメタ記憶部316に幾何補正パラメタ322を格納する必要もない。なお、本実施形態の映像表示システムにおいて、画像補正装置1510の代わりに画像補正装置300を用いてもよいことは言うまでもない。
映像表示装置1520は光線再生方式の映像表示装置であり、本実施形態では、画像補正装置1510から送信された画像データを表示する映像表示面1310と、レンズアレイ1320を備える。なお、レンズアレイを備えたシステムへの適用に限定されるものではなく、例えば、レンチキュラーレンズを備えた映像表示システムなど、他の光線再生方式の映像表示システムに対しても適用可能である。
パラメタ生成装置1550は、演算処理装置211、主記憶装置213、外部記憶装置214、画像補正制御部1551、撮影制御部1552、および撮影条件制御部1553を備える。主記憶装置213には演算処理装置211によって外部記憶装置214から読み込まれるプログラムやデータを一時的に格納する。
外部記憶装置214には、パラメタ生成プログラム1541、パラメタ調整プログラム1542、パターン表示プログラム1543、撮影条件制御プログラム1544、設計データ1545、調整用パターンデータ1546、座標対応データ1547、および調整済み画素値変換パラメタデータ1548を格納する。
パラメタ生成プログラム1541は、調整システムの起動を契機に開始され、映像表示システムで使用するに適した画素値変換パラメタを生成して画像補正装置1510に設定するプログラムである。該プログラムの詳細は後述(図16)する。
パラメタ調整プログラム1542は、パラメタ生成プログラム1541の実行中に呼び出されるプログラムであり、調整済み画素値変換パラメタデータ1548を生成するものである。該プログラムの詳細は後述(図17)する。
パターン表示プログラム1543は、該プログラムの入力として、あるパターン画像データが与えられた時に、入力された映像に依存せずに画像補正装置1510が前記パターン画像データに現在処理対象としている調整済み画素値変換パラメタを施した結果を出力するような画素値変換パラメタを生成して、画像補正装置1510に設定するプログラムである。具体的には、画素毎に独立に、現在処理対象としている調整済み画素値変換パラメタに基づく変換結果を算出し、すべての入力画素値に対して該変換結果が出力画素値となるような画素値変換パラメタを生成し設定する。
撮影条件制御プログラム1544は、演算処理装置211が撮影条件制御部1553を介して撮影条件制御装置1570の制御を行うために使用するプログラムであり、位置と姿勢を規定するための6つのパラメタから、撮影条件制御装置1570を制御するための制御コマンドを生成するものである。
設計データ1545には、あらかじめ設計値として決めたデータが格納される。本実施形態では、調整ポイント(=撮影を行う位置)の数、映像表示面1310上の各々の画素に対応する該画素の担当する光線方向を表す方向ベクトル(大きさが1になるように正規化されている)、同じく各々の画素に対応する該画素の担当であるレンズの識別子と、各々のレンズに対応する各調整ポイントの方向を表す方向ベクトル(大きさが1になるように正規化されている)、ならびに各々の調整ポイントに対応する撮影装置1560の位置および姿勢を制御するための情報とを含むように構成する。
調整用パターンデータ1546には、パラメタ調整プログラムにおいて使用される、複数枚の調整用パターン画像データが格納されている。具体的には、グレイコードパターン等、図17のパラメタ調整処理における座標対応データ生成処理(S1703)およびフィードバック調整処理(S1704)で使用する画像データを含むように構成する。
座標対応データ1547は、映像表示面1310上の座標値と撮影装置1560で撮影した撮影画像データ上の座標値との対応関係を表現したデータであり、パラメタ調整プログラム1542の実行時に生成されて格納される。
調整済み画素値変換パラメタデータ1548は、複数の調整済み画素値変換パラメタの集合体であり、個々の調整済み画素値変換パラメタは、複数の調整ポイントのいずれかに対応し、当該調整ポイントで鑑賞した場合に良好な映像が見られる画素値変換パラメタである。調整済み画素値変換パラメタデータ1548は、パラメタ調整プログラム1542の実行時に生成されて、格納される。本実施形態では、各々の調整済み画素値変換パラメタの初期値は恒等変換パラメタとするが、2回目以降の調整では、前回の調整結果をそのまま使用するようにしてもよい。
画像補正制御部1551は、演算処理装置211の指示に従い、画像補正装置1510に画素値変換パラメタ1511を格納する処理を行う。画像補正装置1510との間のデータ送受信のインタフェースとしては、画像補正装置1510側に合わせたものを使用する。また、映像表示システムが調整システムを常時備えるような構成とする場合には、画像補正制御部1551を備えた構成とせずに、画像補正装置1510をパラメタ生成装置1550のデータバスに直接接続するような構成としてもよい。
撮影制御部1552は、演算処理装置211の指示に従い、撮影装置1560に制御コマンドを送信することで、撮影装置1560の制御を行う。また、撮影装置1560から送信された撮影画像データを受信し、演算処理装置211の指示に従って、主記憶装置213または外部記憶装置214に格納する処理を行う。撮影装置1560との間の制御コマンドや撮影画像データの送受信のためのインタフェースとしては、USBインタフェースやIEEE1394インタフェース等、撮影装置1560側のインタフェースに合わせたものを使用する。
撮影条件制御部1553は、演算処理装置211の指示に従い、撮影条件制御装置1570に制御コマンドを送信することで撮影条件制御装置1570の制御を行う。撮影条件制御装置1570との間の制御コマンドの送受信のためのインタフェースとしては、RS−232Cインタフェース等、撮影条件制御装置1570側のインタフェースに合わせたものを使用する。
撮影装置1560は、例えばデジタルカメラであり、撮影制御部1552から送信された制御コマンドによって、露出の設定、被写体の撮影、および撮影した画像データの送信を行う機能を備えたものである。撮影制御部1552との間の制御コマンドや撮影画像データの授受のためのインタフェースとしては、USBインタフェースや、IEEE1394インタフェース等、既存のインタフェースを使用することができる。
撮影条件制御装置1570は、例えばロボットハンドであり、撮影装置1560を保持し、撮影条件制御部1553から送信された制御コマンドによって、撮影装置1560の位置と姿勢を制御する。撮影条件制御部1553との間の制御コマンドの送受信のためのインタフェースとしては、RS−232Cインタフェース等、既存のインタフェースを使用することができる。
図16は、本実施形態のパラメタ生成プログラム1541の処理を説明する図である。
パラメタ生成処理は、まず最初にパラメタ調整処理を行って調整済み画素値変換パラメタデータ1548を生成し(S1601)、次に、パラメタ合成処理(S1602)において、各々の画素毎に、パラメタ調整処理(S1601)で生成した調整済み画素値変換パラメタデータ1548に基づいて画素値変換パラメタを生成し、生成された画素値変換パラメタを画像補正装置1510に画素値変換パラメタ1511として設定する処理である。なお、パラメタ調整処理(S1601)の処理の詳細は後述(図17)する。
パラメタ合成処理(S1602)では、各々の画素に対して、該画素の担当する方向と、該画素の担当となっているレンズに対して各調整ポイントがどの方向にあるかの情報から、各調整ポイントに対応する重み値を決定し、該重み値に基づいて各々の調整済み画素値変換パラメタの当該画素に対応するパラメタ値(ベクトル値)の重み付き平均をとって当該画素の画素値変換パラメタとする。重み値の決定方法は、例えば、前記担当方向と調整ポイントの方向とのそれぞれを表現する方向ベクトル同士の内積の値を使用すればよい。生成した前記画素値変換パラメタは、画像補正装置1510に画素値変換パラメタ1511として格納する。なお、実際の撮影装置1560の位置が各々の調整ポイントの位置と厳密に一致しない場合にも、各レンズに対する各調整ポイントの方向については設計値をこのまま使用して近似計算すればよいが、座標対応データ1547と設計値から正しい位置を推定して使用するようにしてもよい。
図17は、本実施形態のパラメタ調整プログラム1542の処理を説明する図である。
パラメタ調整処理が開始されると、まず、調整ポイントのシリアル番号であるNを0に初期化し(S1701)、次に、第N番目の調整ポイントに対して、撮影条件制御処理を行う(S1702)。撮影条件制御処理(S1702)は、設計データ1545で規定されている設計値に基づいて、撮影装置1560の位置と姿勢とを第N番目の調整ポイントに対応する位置と姿勢に合致するように制御する処理である。前記処理(S1702)は、演算処理装置211が撮影条件制御プログラム1544を使用して撮影条件制御部1533を介して撮影条件制御装置1570を制御することによって実施する。なお、前記制御は設計値に基づいて為されればよく、各装置の設置誤差等がある場合にも、制御後の映像表示装置1520と撮影装置1560の相対的な位置関係を厳密に理想的な条件に合わせる必要はない。
次に、座標対応データ生成処理(S1703)を行う。この処理は、撮影位置から見えている映像表示面1310上の座標値と、撮影装置1560で撮影した撮影画像データ上の座標値との対応関係を求めるものである。これは例えば、グレイコード(交番2進コード)と呼ばれる複数枚のパターン画像データ(縞の幅が異なる複数枚の縦縞および横縞の画像データを1セットにしたもの)の組を、パターン表示プログラム1543を繰り返し使用することによって映像表示装置1520で順次表示し、それらを撮影装置1560で順次撮影した撮影画像データに基づいて求めることができる。この方法は「空間コード化法」と呼ばれる方法であり、「井口征士,佐藤宏介,3次元画像計測,昭晃堂,東京,1990,pp.80−91」等に記載のある公知の技術である。なお、座標対応データ生成処理(S1703)おいて使用されるパターン画像データは、調整用パターンデータ1546の中に格納しておく。
次に、フィードバック調整処理を行う(S1704)。フィードバック調整処理(S1704)においては、同一のレンズが担当する複数の画素を同一視して、フィードバック調整を実施する。すなわち、同一のレンズが担当する複数の画素のうち実際に撮影されている画素は1画素だけであるが、誤差の影響を低減するため、同一のレンズが担当する複数の画素に対応する画素値変換パラメタに関しては、フィードバック調整処理(S1704)の実行中は常に互いに同じ変化をするように構成する。なお、具体的なフィードバック調整の方法に関しては、例えば、特願2006−24627号記載の方法を用いることができる。
次に、パラメタ補完処理を行う(S1705)。パラメタ補完処理(S1705)は、フィードバック調整処理(S1704)の結果生成された画素値変換パラメタに対して、座標対応データ生成処理(S1703)により撮影画像データとの座標値の対応関係が求まっている画素に対応する画素値変換パラメタに基づいて、その他の画素の画素値変換パラメタを再構成し、再構成後の画素値変換パラメタを、調整済み画素値変換パラメタデータ1548の第N番目の調整ポイントに対応する調整済み画素値変換パラメタとして格納する処理である。なお、前記再構成処理は、既存の内挿処理および外挿処理によって実施すればよい。
パラメタ補完処理(S1705)の終了後、調整が必要なすべての調整ポイントについて調整が完了したか否かを判定する(S1706)。まだ調整が完了していない調整ポイントがある場合には、調整ポイントのシリアル番号であるNを「1」だけ増やし(S1707)、撮影条件制御処理(S1702)に戻って処理を続ける。すべての調整ポイントについて調整が完了している場合には、パラメタ調整処理を終了する。
以上説明したように、本実施形態によれば、光線再生方式の映像表示システムを使用する場合に、数多の視点位置において良好に鑑賞できる映像を、数箇所の調整ポイントにおける調整によって提供することができる。
なお、本実施形態では、撮影装置1560の位置や姿勢を撮影条件制御装置1570で制御しながら撮影したデータに基づいて調整を行ったが、この制御部分を、複数の撮影装置を備えることで代えることも可能である。すなわち、調整が必要な調整ポイントの数に等しい数の撮影装置を備え、設計値に基づいて位置と姿勢を固定した上で、映像表示システムの調整を開始すればよい。その際、複数の撮影装置の特性をできるだけ揃えておくことが望ましいが、本実施形態では複数の調整済み画素値変換パラメタの重み付き平均として画素値変換パラメタを生成しているため、個々の撮影装置の特性に多少のばらつきがある場合でも、破綻することなく調整が可能である。
また、本実施形態では、図17におけるフィードバック調整処理(S1704)において、調整ポイントから見えている画素に対してフィードバック調整による調整を行ったが、個々の調整ポイントにおいては、各レンズを1画素と見立てた映像として扱うことができるため、他の調整方法、例えば特開2002−72359号公報に示される方法などを使用して調整するようにしてもよい。
次に、第6の実施形態について説明する。本実施形態は、小型の光線再生方式の映像表示システムの製造工程における調整フェーズにおいて、ロボットアームによって映像表示システムを運搬し、固定カメラを用いて次々に簡易調整していくような場合など、映像表示システムの簡易調整に適用する場合に好適である。
図18は、本実施形態の映像表示システムおよびこの調整システムを説明する図である。なお、図において図15に示される部分と同一部分については同一符号を付してこの説明を省略する。
本実施形態の調整システムは、パラメタ生成装置1850、撮影装置1560、姿勢制御装置1870を備える。また、パラメタ生成装置1850は、演算処理装置211、主記憶装置213、外部記憶装置214、画像補正制御部1551、撮影制御部1552、姿勢制御部1853を備える。また、外部記憶装置214には、パラメタ生成プログラム1841、パラメタ調整プログラム1842、パターン表示プログラム1543、姿勢制御プログラム1844、設計データ1845、調整用パターンデータ1846、および調整済み画素値変換パラメタデータ1847が格納される。
パラメタ生成プログラム1841は、パラメタ生成プログラム1541(図15)においてパラメタ調整プログラム1542を使用して行っていたパラメタ調整処理の代わりに、パラメタ調整プログラム1842を使用してパラメタ調整処理を行うようにしたものである。なお、パラメタ調整プログラム1842の処理の詳細は後述(図19)する。
姿勢制御プログラム1844は、演算処理装置211が姿勢制御部1853を介して姿勢制御装置1870の制御を行うために使用するプログラムであり、姿勢を規定するための3つの角度パラメタから、姿勢制御装置1870を制御するための制御コマンドを生成する。
設計データ1845には、あらかじめ設計値として決めたデータが格納される。本実施形態では、調整が必要な調整ポイント(調整に用いる複数の撮影位置)の数、各々の調整ポイントに対応する位置ずれの許容度、各々の調整ポイントに対応する映像表示装置の姿勢を制御するための情報、姿勢の微調整で使用する姿勢制御パラメタの変動範囲および変動間隔、ならびに図19に示す調整要否の判定(S1904)において使用する閾値および撮影画像データ上の部分領域の情報とを含むように構成する。
調整用パターンデータ1846は、パターン表示プログラム1543の入力とするための複数枚の画像データの集合であり、各々の調整ポイント毎に独立に設計値に基づいてあらかじめ生成されたものである。具体的なパターンの特徴は後述(図19)する。
調整済み画素値変換パラメタデータ1847は、複数の調整済み画素値変換パラメタの集合体であり、個々の調整済み画素値変換パラメタは、複数の調整ポイントのいずれかに対応し、対応する調整ポイントで鑑賞した場合に良好な映像が見られる画素値変換パラメタである。調整済み画素値変換パラメタデータ1847は、パラメタ調整プログラム1842の実行時に生成されて、格納される。本実施形態では、各々の調整済み画素値変換パラメタの初期値は恒等変換パラメタであるとするが、2回目以降の調整では、前回の調整結果をそのまま使用するようにしてもよい。なお、本実施形態は映像表示システムの簡易調整に主眼を置いた例であるため、各々の処理は各画素の特性を線形であると近似して実施する。すなわち、各々の調整済みパラメタは1次元ベクトル(R,G,Bの3色で扱う場合には3次元ベクトル)として扱い、入力画素値の最大値に対してのみ、撮影に基づいた調整を行う。
姿勢制御部1853は、演算処理装置211の指示に基づき、姿勢制御装置1870の動作を制御する。姿勢制御装置1870との間で制御コマンドの送受信に使用するインタフェースとしては、例えば、RS−232Cインタフェース等、姿勢制御装置1870側に合わせたものを使用する。
姿勢制御装置1870は、例えばロボットアームであり、映像表示装置1520を保持し、姿勢制御部1853から送られた制御コマンドに従って映像表示装置1520の姿勢を制御するものである。姿勢制御部1853との間の制御コマンドの送受信に使用するインタフェースとしては、RS−232Cインタフェース等、既存のインタフェースを使用することができる。
図19は、本実施形態のパラメタ調整プログラム1842の処理を説明する図である。パラメタ調整処理が開始されると、まず、調整ポイントのシリアル番号であるNを0に初期化する(S1901)。
次に、第N番目の調整用パターン表示処理を行う(S1902)。この処理は、第N番目の調整ポイントに対応する現在の調整済み画素値変換パラメタで、第N番目の調整ポイント用の調整用パターンを表示する処理である。ここで、第N番目の調整ポイント用の調整用パターンとは、第N番目の調整ポイントから見た場合には「白」が、それ以外のポイントから見た場合には「黒」が見えるように、黒地に白点を描画したパターンである(このときに「白」が描画されている画素を、以下「第N番目の調整ポイントに対応する制御点」と呼ぶ)。
調整用パターン表示処理(S1902)は、具体的には、第N番目の調整ポイントに対応する現在の調整済み画素値変換パラメタを格納した画像補正装置1510に第N番目の調整ポイント用の調整パターンが入力された時の画像補正装置1510の出力結果をパターン表示プログラム1543を用いて計算し、任意の入力に対して該計算結果を出力するような画素値変換パラメタを画像補正装置1510に格納する処理である。例えば、画素値変換パラメタとして図4で説明した表現方法のものを用いた場合には、各画素に対して、L0乃至L4がすべて出力したい画素値に等しくなるように設定することで、そのような画素値変換パラメタを生成することができる。なお、白点の大きさに関しては、設計データ1845に格納されている第N番目の調整ポイントに対応する位置ずれの許容度に合わせて決定される値を用いればよい。
次に、姿勢制御処理を行う(S1903)。姿勢制御処理(S1903)は、撮影装置1560が映像表示装置1520に対して相対的に第N番目の調整ポイントに位置するように、姿勢制御装置1870を制御して映像表示装置1520の姿勢を制御する処理である。具体的には、撮影装置1560がレンズアレイ1320を通して映像表示面1310を撮影したデータに基づいて、全体がもっとも明るく見えるように、映像表示装置1520の姿勢を制御する。
本実施形態は撮影装置1560と姿勢制御装置1870の位置を固定して実施する場合の例であり、設計データ1845に基づいて姿勢を制御した後、設置誤差を始めとする様々な誤差の影響を吸収するため、設計値周辺の姿勢制御パラメタに関してしらみつぶしに探索を行って最善のものを選択する。この探索における姿勢制御パラメタの変動範囲と姿勢制御パラメタの変動間隔に関しては、姿勢制御装置1870の仕様や想定される誤差の範囲に応じて決定され、あらかじめ設計データ1845内に格納されている値を使用する。
次に、第N番目の調整ポイントに対して調整が必要か否かを判定する(S1904)。調整要否の判定処理(S1904)は、撮影装置1560がレンズアレイ1320を通して映像表示面1310を撮影したデータ内において、映像表示領域内の複数の部分領域の各々に対して明るさの平均値を求め、この平均値の分散があらかじめ決めた閾値(設計データ1845内に格納されている)以下であれば調整不要と判断し、それ以外の場合には調整が必要であると判断する。なお、ここでは各部分領域の代表値を求めることができればよいため、平均値の代わりに中央値を使用するようにしてもよい。また、撮影画像データの画素値を明るさに変換するための特性関数が設計データとして与えられていない場合には、直接撮影画像データの画素値を使って計算してもよい。また、前記部分領域に関しては、各々の調整ポイント毎に設計値に基づいてあらかじめ計算し、設計データ1845内に格納しておくが、映像表示領域を検出するためのパターンを映像表示装置で表示し、それを撮影したデータに基づいて動的に作成するようにしてもよい。
なお、該部分領域の和集合が撮影画像データ上の映像表示領域の全体を覆っていることは必要でなく、撮影時の誤差の影響が緩和できる程度の大きさで、要求する精度に応じた個数の部分領域を抽出すればよい。例えば、撮影画像データ上の映像表示領域を3×3のほぼ同じ大きさの部分領域に分割し、該各々の部分領域の中央付近から、映像表示領域全体の5%程度の大きさの部分領域を抽出して判定に使用すればよい。
調整要否の判定処理(S1904)において調整が必要であると判定された場合には、パラメタ更新処理(S1905)を行い、調整用パターン表示処理(S1902)に戻って処理を続ける。
パラメタ更新処理(S1905)は、撮影装置1560がレンズアレイ1320を通して映像表示面1310を撮影したデータと、第N番目の調整ポイントに対応する現在の調整済み画素値変換パラメタとに基づき、第N番目の調整ポイントに対応する調整済み画素値変換パラメタを更新する処理である。この処理は、まず、第N番目の調整ポイントに対応する制御点の集合に対して、明るく撮影されている制御点を暗く撮影されている制御点に合わせるように各々の制御点に対するパラメタを修正し、次に、各々の画素に対応するパラメタの値を、前記制御点の各々に対する修正後のパラメタの値から双線形補間など既存の内挿法や外挿法によって決定することで実施する。調整が不十分である場合には、S1902乃至S1905の処理が繰り返して実施されるため、パラメタ更新処理(S1905)における制御点に対するパラメタの修正は、厳密に実施する必要はない。
調整要否の判定処理(S1904)において調整が不要であると判定された場合には、調整が必要なすべての調整ポイントについて調整が完了したか否かを判定する(S1906)。まだ調整が完了していない調整ポイントがある場合には、S1907で調整ポイントのシリアル番号であるNを「1」だけ増やし、S1902に戻って処理を続ける。すべての調整ポイントについて調整が完了している場合には、パラメタ調整処理を終了する。
以上、本実施形態によれば、光線再生方式の映像表示システムの調整時に、撮影装置との位置関係が設計データと略一致するように映像表示装置の姿勢を制御した上で映像調整を行うようにしたことにより、複数の位置における撮影処理を含む調整処理全体における機器の総移動量を抑えながら光線再生方式の映像表示システムを調整することのできる調整システムを提供することができる。
次に、第7の実施形態について説明する。本実施形態は、携帯電話用のディスプレイとして光線再生方式の映像表示システムを適用する場合など、ユーザが目視で簡単に映像品質を調整できることが望ましい場合に好適な例である。
図20は、本実施形態の映像表示システムおよびこの調整システムを説明する図である。なお、図において図18に示される部分と同一部分については同一符号を付してこの説明を省略する。
本実施形態においては、パラメタ生成装置1850(図18)から撮影制御部1552と姿勢制御部1853を取り除き、新たにコマンド入力部2052を備えたパラメタ生成装置2050を使用して画素値変換パラメタを生成する。
また、第6の実施形態(図18)で使用していた撮影装置1560および姿勢制御装置1870は本実施形態では不要であり、このため、外部記憶装置214に格納していた姿勢制御プログラム1844も不要である。また、本実施形態では、パラメタ生成プログラム1841の代わりにパラメタ生成プログラム2041を、パラメタ調整プログラム1842の代わりにパラメタ調整プログラム2042を、設計データ1845の代わりに設計データ2045を、それぞれ外部記憶装置214に格納し、使用する。
コマンド入力部2052は、「パラメタ調整開始」コマンドと、画面の四隅のそれぞれに対する「明るくする」および「暗くする」というコマンドと、「現在の視点位置での調整を完了する」というコマンドを入力する機能を備えるものである。具体的には、キー入力インタフェースで構成すればよい。本実施形態では、パラメタ生成プログラム2041は、コマンド入力部2052からの「パラメタ調整開始」コマンドを契機にして演算処理装置211によって実行される。
パラメタ生成プログラム2041が実行されると、まず、パラメタ調整プログラム2042を用いてパラメタ調整処理が実施され、その後、第6の実施形態と同様にパラメタ合成処理が行われる。なお、パラメタ調整プログラム2042の処理の詳細は後述(図21)する。
設計データ2045には、あらかじめ設計値として決めたデータが格納される。本実施形態では、各調整コマンドが各制御点に対してどのような修正を施すものかを定義したデータ、調整が必要な調整ポイント(=調整に用いる複数の視点位置)の数、各調整ポイントにおける位置ずれの許容度、および各調整ポイントに対応する制御点の位置を含むように構成する。
図21は、本実施形態のパラメタ調整プログラム2042の処理を説明する図である。
パラメタ調整処理が開始されると、まず、調整ポイントのシリアル番号であるNを0に初期化し(S2101)、続いて、図19のS1902と同様の方法によって第N番目の調整用パターン表示処理を行う(S2102)。
次に、ユーザコマンド入力処理を行う(S2103)。ユーザコマンド入力処理(S2103)処理では、演算処理装置211は、ユーザから何らかのコマンド入力が為されるまで、次の処理へ移らずにコマンド入力を待ち続ける。ユーザから何らかのコマンドが入力された場合、まずS2104において、入力されたコマンドが調整コマンドか否かを判定する。判定の結果が調整コマンドであった場合にはパラメタ更新処理(S2105)に移り、入力された調整コマンドの定義と第N番目の調整ポイントに対応する現在の調整済み画素値変換パラメタとに基づいて、第N番目の調整ポイントに対応する調整済み画素値変換パラメタの更新を行った上で、調整用パターン表示処理(S2102)に戻って処理を繰り返す。ここで、パラメタ更新処理(S2105)の処理は、実際に映像表示面1310上のどの位置が見えているかに依存せず、第N番目の調整ポイントに対応する制御点の集合に対して、調整コマンドに基づく修正を行った上で、各々の画素に対応するパラメタの値について該制御点の各々に対する修正後のパラメタの値から双線形補間など既存の内挿法や外挿法によって決定することによって実施する。
判定の結果が調整コマンドでない場合には、S2106において、入力されたコマンドが調整完了コマンドか否かを判定し、判定の結果が調整完了コマンドでない場合には、ユーザコマンド入力処理(S2103)に戻って処理を繰り返す。
判定の結果が調整完了コマンドである場合には、調整が必要なすべての調整ポイントについて調整が完了したか否かを判定し(S2107)、まだ調整が完了していない調整ポイントがある場合には調整ポイントのシリアル番号であるNを「1」だけ増やして(S2108)、調整用パターン表示処理(S2102)に戻って処理を繰り返す。また、すべての調整ポイントについて調整が完了している場合には、パラメタ調整処理を終了する。
以上説明したように、本実施形態によれば、光線再生方式の映像表示システムの調整時に、ユーザが調整ポイントを視認できる画像を表示するようにしたことにより、ユーザが目視で簡単に映像品質を調整できる調整システムを提供することができる。
なお、本稿における本質は、実際に使用する画素値変換パラメタを、複数の調整位置の各々において映像が良好に鑑賞されるような画素値変換パラメタの集合から合成して生成する点にあり、前記各々の実施形態に記載の特徴を、用途に合わせて適宜組み合わせて使用してもよいことは言うまでもない。
以上説明したように、本実施形態によれば、入力画像の画素値を所与の変換パラメタに基づいて変換して表示する映像表示システムにおいて、システムの調整時に、複数の代表視点位置のそれぞれで良好な映像を鑑賞するための変換パラメタをそれぞれ独立に生成しておき、システムの運用時には観客の分布や表示位置などに応じて、それら複数の変換パラメタの混合比率を変えながら合成した変換パラメタを使用して、入力画像の画素値を変換し表示する。即ち、従来のように、指向性に関する特性を独立して扱うことで特定の視点位置における理論的に正しい変換パラメタを求めようとするのではなく、各々の代表視点位置に対応する変換パラメタには指向性に関する特性が既に織り込まれているとして、映像を鑑賞する視点位置の分布に合わせ、より簡易な方法で、尤もらしい変換パラメタを生成して使用する。
このため、複数の視点位置において映像を鑑賞することのできる映像表示システムにおいて、映像を鑑賞する位置によって映像の見え方が大きく異なる場合に、より低いコストで鑑賞者が感じる映像の品質を改善することができる。