JP2012039331A - 視差画像作成装置、視差画像作成方法、プログラム及び記憶媒体 - Google Patents
視差画像作成装置、視差画像作成方法、プログラム及び記憶媒体 Download PDFInfo
- Publication number
- JP2012039331A JP2012039331A JP2010176864A JP2010176864A JP2012039331A JP 2012039331 A JP2012039331 A JP 2012039331A JP 2010176864 A JP2010176864 A JP 2010176864A JP 2010176864 A JP2010176864 A JP 2010176864A JP 2012039331 A JP2012039331 A JP 2012039331A
- Authority
- JP
- Japan
- Prior art keywords
- depth
- camera
- image
- pixel
- distance
- 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
Landscapes
- Stereoscopic And Panoramic Photography (AREA)
- Processing Or Creating Images (AREA)
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
Abstract
【課題】意匠面において優れた立体視を実現するための視差画像を作成する。
【解決手段】制御部11は、最初に、サンプリング点xsと、処理対象のカメラ位置(Cxi、Czi)と、を通る視線直線26aを算出する。次に、制御部11は、奥行き値D2同士の区間の中で視線直線26aが通る区間である通過区間31aを特定する。そして、制御部11は、通過区間31aのいずれか1つを採用区間とし、採用区間の両端を示す第1奥行き値32a及び第2奥行き値33aのうち小さい方の画素を採用画素とする。次に、制御部11は、2次元画像2における採用画素の画素値を取得し、視差画像5における画素(xs,ys)の画素値として設定する。
【選択図】図11
【解決手段】制御部11は、最初に、サンプリング点xsと、処理対象のカメラ位置(Cxi、Czi)と、を通る視線直線26aを算出する。次に、制御部11は、奥行き値D2同士の区間の中で視線直線26aが通る区間である通過区間31aを特定する。そして、制御部11は、通過区間31aのいずれか1つを採用区間とし、採用区間の両端を示す第1奥行き値32a及び第2奥行き値33aのうち小さい方の画素を採用画素とする。次に、制御部11は、2次元画像2における採用画素の画素値を取得し、視差画像5における画素(xs,ys)の画素値として設定する。
【選択図】図11
Description
本発明は、立体視を実現するための視差画像を作成する視差画像作成装置等に関するものである。
従来、視差画像を作成する手法としては、(1)3次元CG(Computer Graphic)画像を作成し、複数のカメラ位置を設定してレンダリングする手法、(2)2次元画像、及び奥行き情報を持つ画像(以下、「デプス画像」という。)を入力とし、2次元/3次元変換ソフトを用いる手法が存在する。
(1)の手法において利用されるソフトウエアは、一般に3次元CGソフトと呼ばれる。3次元CGソフトは、3次元オブジェクトのデータから光源や形状を考慮してカメラ位置から見える画像を計算し、合成する機能を有する。
(1)の手法の場合、3次元CG画像に奥行き情報が含まれている為、3次元CG画像から容易に視差画像を作成することが可能である。但し、カメラ位置の数が多い場合、レンダリング回数も多くなる為、多大な時間がかかる。
(1)の手法の場合、3次元CG画像に奥行き情報が含まれている為、3次元CG画像から容易に視差画像を作成することが可能である。但し、カメラ位置の数が多い場合、レンダリング回数も多くなる為、多大な時間がかかる。
(2)の手法では、例えば、フォトレタッチソフトを用いてデプス画像を作成することができる。フォトレタッチソフトは、ビットマップ画像(ラスターイメージ)を編集する機能を有する。
また、2次元/3次元変換ソフトは、2次元画像から3次元画像に変換する機能を有する。特許文献1には、2次元画像から3次元画像に変換するための具体的な処理の一例が開示されている。
また、2次元/3次元変換ソフトは、2次元画像から3次元画像に変換する機能を有する。特許文献1には、2次元画像から3次元画像に変換するための具体的な処理の一例が開示されている。
しかしながら、特許文献1も含めて、(2)の手法における従来技術では、被写体の輪郭部分が忠実に再現できない、飛び出し感や奥行き感が乏しいなど、意匠面での課題が十分に解決されていない。
本発明は、前述した問題点に鑑みてなされたもので、その目的とすることは、意匠面において優れた立体視を実現するための視差画像を作成することができる視差画像作成装置等を提供することである。
前述した目的を達成するために第1の発明は、立体視を実現するための視差画像を作成する視差画像作成装置であって、所望の2次元画像、及び、前記2次元画像に係るカメラから被写体までの距離である第1距離を画素値に置き換えた画像であるデプス画像を入力する画像入力手段と、奥行き倍率、カメラ数、カメラ間隔、及び、カメラからスクリーン面までの距離である第2距離に係るパラメータを入力するパラメータ入力手段と、前記奥行き倍率に基づいて前記デプス画像の画素値を所定の変換式によって変換し、前記2次元画像の各画素の奥行き値を算出する奥行き値算出手段と、スクリーン面のサンプリング点と、前記カメラ数、前記カメラ間隔及び前記第2距離に基づいて設定されるカメラ位置と、を通る視線直線を算出し、前記奥行き値同士の区間の中で前記視線直線が通る区間である通過区間のいずれか1つを採用区間とし、前記採用区間の両端を示す第1奥行き値及び第2奥行き値のうち小さい方の画素を採用画素とし、前記2次元画像における前記採用画素の画素値を前記サンプリング点の画素値とする画素値算出手段と、を具備することを特徴とする視差画像作成装置である。
第1の発明によって、意匠面において優れた立体視を実現するための視差画像を作成することができる。特に、被写体の輪郭部分において、背景のつぶれがなく、ギザギザ感もなくなるので、被写体の輪郭部分が忠実に再現された視差画像を生成することができる。
第1の発明によって、意匠面において優れた立体視を実現するための視差画像を作成することができる。特に、被写体の輪郭部分において、背景のつぶれがなく、ギザギザ感もなくなるので、被写体の輪郭部分が忠実に再現された視差画像を生成することができる。
第1の発明における前記画素値算出手段は、前記通過区間が複数存在する場合には、最もカメラに近いものを前記採用区間とすることが望ましい。
これによって、複数の被写体の配置関係が忠実に再現された視差画像を生成することができる。
これによって、複数の被写体の配置関係が忠実に再現された視差画像を生成することができる。
第1の発明は、前記サンプリング点の左端点、及び、最も右側に位置するカメラのカメラ位置を通る左端点決定直線を算出し、前記奥行き値算出手段によって算出された奥行き値の中でカメラから最も遠い位置であり、かつ、スクリーン面と平行な面である最遠面と、前記左端点決定直線との交点をはみ出し左端点とし、前記はみ出し左端点と前記サンプリング点の左端点との差分を左側はみ出し距離とし、前記サンプリング点の右端点、及び、最も左側に位置するカメラのカメラ位置を通る右端点決定直線を算出し、前記最遠面と、前記右端点決定直線との交点をはみ出し右端点とし、前記はみ出し右端点と前記サンプリング点の右端点との差分を右側はみ出し距離とし、前記左側はみ出し距離及び前記右側はみ出し距離のうち大きい方をはみ出し補正値とし、前記はみ出し補正値に基づいて、前記奥行き値の画素位置をスケール変換するはみ出し範囲補正手段、を更に具備することが望ましい。
これによって、最遠面がスクリーン面よりもカメラから遠い場合も、視差画像の意匠に影響を与えることなく奥行き値を取得することができ、飛び出し感や奥行き感に富んだ視差画像を生成することができる。
これによって、最遠面がスクリーン面よりもカメラから遠い場合も、視差画像の意匠に影響を与えることなく奥行き値を取得することができ、飛び出し感や奥行き感に富んだ視差画像を生成することができる。
第2の発明は、立体視を実現するための視差画像を作成する視差画像作成方法であって、所望の2次元画像、及び、前記2次元画像に係るカメラから被写体までの距離である第1距離を画素値に置き換えた画像であるデプス画像を入力する画像入力ステップと、奥行き倍率、カメラ数、カメラ間隔、及び、カメラからスクリーン面までの距離である第2距離に係るパラメータを入力するパラメータ入力ステップと、前記奥行き倍率に基づいて前記デプス画像の画素値を所定の変換式によって変換し、前記2次元画像の各画素の奥行き値を算出する奥行き値算出ステップと、スクリーン面のサンプリング点と、前記カメラ数、前記カメラ間隔及び前記第2距離に基づいて設定されるカメラ位置と、を通る視線直線を算出し、前記奥行き値同士の区間の中で前記視線直線が通る区間である通過区間のいずれか1つを採用区間とし、前記採用区間の両端を示す第1奥行き値及び第2奥行き値のうち小さい方の画素を採用画素とし、前記2次元画像における前記採用画素の画素値を前記サンプリング点の画素値とする画素値算出ステップと、を含むことを特徴とする視差画像作成方法である。
第2の発明によって、意匠面において優れた立体視を実現するための視差画像を作成することができる。特に、被写体の輪郭部分において、背景のつぶれがなく、ギザギザ感もなくなるので、被写体の輪郭部分が忠実に再現された視差画像を生成することができる。
第2の発明によって、意匠面において優れた立体視を実現するための視差画像を作成することができる。特に、被写体の輪郭部分において、背景のつぶれがなく、ギザギザ感もなくなるので、被写体の輪郭部分が忠実に再現された視差画像を生成することができる。
第3の発明は、コンピュータを、所望の2次元画像、及び、前記2次元画像に係るカメラから被写体までの距離である第1距離を画素値に置き換えた画像であるデプス画像を入力する画像入力手段と、奥行き倍率、カメラ数、カメラ間隔、及び、カメラからスクリーン面までの距離である第2距離に係るパラメータを入力するパラメータ入力手段と、前記奥行き倍率に基づいて前記デプス画像の画素値を所定の変換式によって変換し、前記2次元画像の各画素の奥行き値を算出する奥行き値算出手段と、スクリーン面のサンプリング点と、前記カメラ数、前記カメラ間隔及び前記第2距離に基づいて設定されるカメラ位置と、を通る視線直線を算出し、前記奥行き値同士の区間の中で前記視線直線が通る区間である通過区間のいずれか1つを採用区間とし、前記採用区間の両端を示す第1奥行き値及び第2奥行き値のうち小さい方の画素を採用画素とし、前記2次元画像における前記採用画素の画素値を前記サンプリング点の画素値とする画素値算出手段と、して機能させるためのプログラムである。
第3の発明に係るプログラムをコンピュータにインストールすることで、第1の発明に係る視差画像作成装置を得ることができる。
第3の発明に係るプログラムをコンピュータにインストールすることで、第1の発明に係る視差画像作成装置を得ることができる。
第4の発明は、第3の発明に係るプログラムを記憶したコンピュータ読み取り可能な記憶媒体である。
本発明により、意匠面において優れた立体視を実現するための視差画像を作成することができる視差画像作成装置等を提供することができる。
以下図面に基づいて、本発明の実施形態を詳細に説明する。
図1は、視差画像生成装置1のハードウエア構成図である。尚、図1のハードウエア構成は一例であり、用途、目的に応じて様々な構成を採ることが可能である。
視差画像生成装置1は、制御部11、記憶部12、メディア入出力部13、通信制御部14、入力部15、表示部16、周辺機器I/F部17等が、バス18を介して接続される。
図1は、視差画像生成装置1のハードウエア構成図である。尚、図1のハードウエア構成は一例であり、用途、目的に応じて様々な構成を採ることが可能である。
視差画像生成装置1は、制御部11、記憶部12、メディア入出力部13、通信制御部14、入力部15、表示部16、周辺機器I/F部17等が、バス18を介して接続される。
制御部11は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)等で構成される。
CPUは、記憶部12、ROM、記録媒体等に格納されるプログラムをRAM上のワークメモリ領域に呼び出して実行し、バス18を介して接続された各装置を駆動制御し、視差画像生成装置1が行う後述する処理を実現する。
ROMは、不揮発性メモリであり、コンピュータ1のブートプログラムやBIOS等のプログラム、データ等を恒久的に保持している。
RAMは、揮発性メモリであり、記憶部12、ROM、記録媒体等からロードしたプログラム、データ等を一時的に保持するとともに、制御部11が各種処理を行う為に使用するワークエリアを備える。
CPUは、記憶部12、ROM、記録媒体等に格納されるプログラムをRAM上のワークメモリ領域に呼び出して実行し、バス18を介して接続された各装置を駆動制御し、視差画像生成装置1が行う後述する処理を実現する。
ROMは、不揮発性メモリであり、コンピュータ1のブートプログラムやBIOS等のプログラム、データ等を恒久的に保持している。
RAMは、揮発性メモリであり、記憶部12、ROM、記録媒体等からロードしたプログラム、データ等を一時的に保持するとともに、制御部11が各種処理を行う為に使用するワークエリアを備える。
記憶部12は、HDD(ハードディスクドライブ)であり、制御部11が実行するプログラム、プログラム実行に必要なデータ、OS(オペレーティングシステム)等が格納される。プログラムに関しては、OS(オペレーティングシステム)に相当する制御プログラムや、後述する処理をコンピュータに実行させるためのアプリケーションプログラムが格納されている。
これらの各プログラムコードは、制御部11により必要に応じて読み出されてRAMに移され、CPUに読み出されて各種の手段として実行される。
これらの各プログラムコードは、制御部11により必要に応じて読み出されてRAMに移され、CPUに読み出されて各種の手段として実行される。
メディア入出力部13(ドライブ装置)は、データの入出力を行い、例えば、CDドライブ(−ROM、−R、−RW等)、DVDドライブ(−ROM、−R、−RW等)等のメディア入出力装置を有する。
通信制御部14は、通信制御装置、通信ポート等を有し、コンピュータ1とネットワーク間の通信を媒介する通信インタフェースであり、ネットワークを介して、他の装置間との通信制御を行う。ネットワークは、有線、無線を問わない。
通信制御部14は、通信制御装置、通信ポート等を有し、コンピュータ1とネットワーク間の通信を媒介する通信インタフェースであり、ネットワークを介して、他の装置間との通信制御を行う。ネットワークは、有線、無線を問わない。
入力部15は、データの入力を行い、例えば、キーボード、マウス等のポインティングデバイス、テンキー等の入力装置を有する。
入力部15を介して、視差画像生成装置1に対して、操作指示、動作指示、データ入力等を行うことができる。
表示部16は、CRTモニタ、液晶パネル等のディスプレイ装置、ディスプレイ装置と連携してコンピュータ1のビデオ機能を実現するための論理回路等(ビデオアダプタ等)を有する。
入力部15を介して、視差画像生成装置1に対して、操作指示、動作指示、データ入力等を行うことができる。
表示部16は、CRTモニタ、液晶パネル等のディスプレイ装置、ディスプレイ装置と連携してコンピュータ1のビデオ機能を実現するための論理回路等(ビデオアダプタ等)を有する。
周辺機器I/F(インタフェース)部17は、視差画像生成装置1に周辺機器を接続させるためのポートであり、周辺機器I/F部17を介してコンピュータ1は周辺機器とのデータの送受信を行う。周辺機器I/F部17は、USBやIEEE1394やRS−232C等で構成されており、通常複数の周辺機器I/Fを有する。周辺機器との接続形態は有線、無線を問わない。
バス18は、各装置間の制御信号、データ信号等の授受を媒介する経路である。
バス18は、各装置間の制御信号、データ信号等の授受を媒介する経路である。
図2は、視差画像生成装置1の入出力データを示す図である。図2に示すように、視差画像生成装置1は、2次元画像2およびデプス画像3、並びにパラメータ4を入力する。また、視差画像生成装置1は、視差画像5を出力する。
2次元画像2およびデプス画像3は、視差画像生成装置1の制御部11が生成しても良いし、メディア入出力部13、通信制御部14等を介して外部から取得しても良い。また、パラメータ4は、視差画像生成装置1の入力部15を介して入力しても良いし、予めパラメータ4が定義されたパラメータファイルを外部から取得しても良い。
視差画像5は、視差画像生成装置1の記憶部12に記憶されても良いし、表示部16に表示されても良いし、メディア入出力部13、通信制御部14等を介して外部に出力しても良い。
2次元画像2およびデプス画像3は、視差画像生成装置1の制御部11が生成しても良いし、メディア入出力部13、通信制御部14等を介して外部から取得しても良い。また、パラメータ4は、視差画像生成装置1の入力部15を介して入力しても良いし、予めパラメータ4が定義されたパラメータファイルを外部から取得しても良い。
視差画像5は、視差画像生成装置1の記憶部12に記憶されても良いし、表示部16に表示されても良いし、メディア入出力部13、通信制御部14等を介して外部に出力しても良い。
2次元画像2は、静止画像、または動画像の1枚分のフレーム画像である。2次元画像2は、デジタルカメラなどによって撮影されたものでも良いし、フォトレタッチソフトなどの機能を用いて編集されたものでも良いし、ペイントソフトやドローソフトなどの機能を用いて作成されたものであっても良い。
デプス画像3は、2次元画像2に係るカメラから被写体までの距離(第1距離)を画素値に置き換えた画像である。ここで、カメラとは、視差画像生成装置1の内部処理において定義される仮想的なカメラを意味する。また、被写体とは、2次元画像2に表現された人物、物体、風景などを意味する。
デプス画像3は、例えば、画素値の範囲が0〜255であり、0が最も奥、255が最も手前を意味する場合が多いが、逆であっても良い。以下では、説明を分かり易くするために、デプス画像3は、画素値の範囲が0〜255であり、0が最も奥、255が最も手前を意味するものとする。
デプス画像3は、例えば、画素値の範囲が0〜255であり、0が最も奥、255が最も手前を意味する場合が多いが、逆であっても良い。以下では、説明を分かり易くするために、デプス画像3は、画素値の範囲が0〜255であり、0が最も奥、255が最も手前を意味するものとする。
パラメータ4は、後述する視差画像生成処理に用いる値である。パラメータ4には、奥行き倍率α、カメラ数n、カメラ間隔、スクリーン面からカメラまでの距離(第2距離)などが含まれる。
更に、パラメータ4には、2次元画像2の横幅、縦幅、画素ピッチなどが含まれる。2次元画像2は、パラメータ4の横幅、縦幅、画素ピッチによって、横方向(X軸方向)のピクセル数、及び、縦方向(Y軸方向)のピクセル数が決まる。
パラメータ4の詳細は後述する。
更に、パラメータ4には、2次元画像2の横幅、縦幅、画素ピッチなどが含まれる。2次元画像2は、パラメータ4の横幅、縦幅、画素ピッチによって、横方向(X軸方向)のピクセル数、及び、縦方向(Y軸方向)のピクセル数が決まる。
パラメータ4の詳細は後述する。
視差画像5は、立体視を実現するための画像である。本発明の実施の形態では、視差画像5は、特に、両目視差(約60mm〜70mm程度)を利用し、裸眼観察によって立体視を実現するための画像である。
尚、本発明の実施の形態では詳細に述べないが、複数の視差画像5をディスプレイの仕様に合わせて合成し、ディスプレイに表示することによって、裸眼観察による立体視を実現することが可能となる。複数の視差画像5の合成処理については、公知の技術を利用すれば良い。
尚、本発明の実施の形態では詳細に述べないが、複数の視差画像5をディスプレイの仕様に合わせて合成し、ディスプレイに表示することによって、裸眼観察による立体視を実現することが可能となる。複数の視差画像5の合成処理については、公知の技術を利用すれば良い。
以下では、図3〜図7を参照しながら、パラメータ4について説明する。図3は、パラメータ4を説明する図である。
視差画像生成処理では、図4に示すように、仮想的な3次元空間(XYZ空間)に、スクリーン面S、カメラC1〜C8を配置する。
視差画像生成処理では、図4に示すように、仮想的な3次元空間(XYZ空間)に、スクリーン面S、カメラC1〜C8を配置する。
スクリーン面Sは、2次元画像2を投影する領域であり、視差画像5の各画素が含まれる。図3に示す例では、スクリーン面SはXY平面と一致する。
カメラC1〜C8は、パラメータ4のカメラ数n、カメラ間隔、スクリーン面Sからカメラまでの距離(第2距離)に基づいて配置する。図3に示す例では、カメラ数nが「8」、カメラ間隔が「等間隔のCcamera_x」、第2距離が「Ccamera_Z」である。Ccamera_xは、両目視差(約60mm〜70mm程度)とする。
また、図3に示す例では、カメラ設置線22は、スクリーン面Sと平行、かつ、スクリーン面Sとの距離が「Ccamera_Z」の直線である。CiをカメラID(Ci=1、・・・、8)とすると、カメラC1〜C8のカメラ位置(Cxi、Czi)(i=1、・・・、8)は、以下の式に基づいて算出する。
また、図3に示す例では、カメラ設置線22は、スクリーン面Sと平行、かつ、スクリーン面Sとの距離が「Ccamera_Z」の直線である。CiをカメラID(Ci=1、・・・、8)とすると、カメラC1〜C8のカメラ位置(Cxi、Czi)(i=1、・・・、8)は、以下の式に基づいて算出する。
図3に示す例では、カメラ間隔を等間隔としたが、これはディスプレイにおける画像の見せ方に依存する。カメラ間隔を等間隔とした場合、観察者がどの位置から見ても隣り合う視差画像5が見えるようになる。但し、他の見せ方を所望する場合には、カメラ間隔は等間隔でなくても良い。
また、図3に示す例では、カメラ設置線22を直線としたが、これもディスプレイにおける画像の見せ方に依存する。例えば、ディスプレイが曲面の場合、カメラ設置線22を曲線とすることが考えられる。
また、図3に示す例では、カメラ設置線22を直線としたが、これもディスプレイにおける画像の見せ方に依存する。例えば、ディスプレイが曲面の場合、カメラ設置線22を曲線とすることが考えられる。
パラメータ4の奥行き倍率αは、視差画像5に表現される被写体の飛び出し感、奥行き感を調整するための値である。奥行き倍率αについては、図4、図5を参照しながら後述する。
図3に示す最遠面Pは、視差画像5に表現される被写体の中でカメラCから最も遠い位置であり、かつ、スクリーン面Sと平行な面であり、パラメータ4の奥行き倍率αによって位置が定まる。
図3に示す最遠面Pは、視差画像5に表現される被写体の中でカメラCから最も遠い位置であり、かつ、スクリーン面Sと平行な面であり、パラメータ4の奥行き倍率αによって位置が定まる。
図4、図5は、奥行き倍率αを説明する図である。
以下では、奥行き倍率αは、値が大きい程、ディスプレイに表示されたときの飛び出し感、奥行き感が大きくなるものとする。デプス画像3の画素値をD1、奥行き値をD2とすると、視差画像生成装置1の制御部11は、例として、次式によって奥行き値D2を算出する。尚、次式ではD1から127を減算しているが、この値はD1で取り得る値の範囲内であれば、どのような値でも良い。
以下では、奥行き倍率αは、値が大きい程、ディスプレイに表示されたときの飛び出し感、奥行き感が大きくなるものとする。デプス画像3の画素値をD1、奥行き値をD2とすると、視差画像生成装置1の制御部11は、例として、次式によって奥行き値D2を算出する。尚、次式ではD1から127を減算しているが、この値はD1で取り得る値の範囲内であれば、どのような値でも良い。
図4に示す例は、任意のY座標におけるデプス画像3の画素値D1の分布を示している。前述の通り、デプス画像3は、画素値の範囲が0〜255であり、0が最も奥、すなわちカメラCから最も遠く、255が最も手前、すなわちカメラCから最も近い。
図4に示す例では、中心部がカメラCから最も近く、両端部に近づくにつれてカメラCから遠くなり、両端部がカメラCからも最も遠い。
図4に示す例では、中心部がカメラCから最も近く、両端部に近づくにつれてカメラCから遠くなり、両端部がカメラCからも最も遠い。
図5に示す例は、図4に示す例に対して、式(3)により変換された奥行き値D2の分布を示している。図5に示す例は、奥行き倍率αが「2.0」の場合を示している。この場合、D1の画素値「0」がD2の画素値「−254」に変換され、D1の画素値「255」がD2の画素値「256」に変換される。これによって、カメラから最も遠い位置と最も近い位置との差が2倍程度大きくなることから、視差画像生成装置1の制御部11が、図5に示す奥行き値D2の分布に基づいて後述する視差画像生成処理を実行することで、飛び出し感、奥行き感の大きい立体視を表現するための視差画像5を生成することができる。
尚、奥行き倍率αの取り得る範囲は、0<α<αmaxである。αmaxは、カメラCの位置に依存する。図5に示す例であれば、αmaxは、奥行き値D2の最大値が、カメラCからスクリーン面Sまでの距離(第2距離)に等しくなる値である。
前述した最遠面Pは、パラメータ4の奥行き倍率αに基づいて、デプス画像3の画素値が所定の変換式によって変換された値(奥行き値)の中でカメラから最も遠い位置であり、かつ、スクリーン面Sと平行な面ということになる。
図6、図7は、はみ出し範囲を説明する図である。図6が図4に対応し、図7が図5に対応している。
図6に示すように、2次元画像2に対する仮想的なカメラCの視野角θは、スクリーン面Sにおいて、カメラCの視野範囲の両端が2次元画像2の横幅wの両端に一致するように定まる。
図5の例のように、奥行き倍率αが1よりも大きい場合、最遠面Pがスクリーン面SよりもカメラCから遠い位置になる。そうすると、図7に示すように、視野角θに基づくカメラCの視野範囲は、最遠面Pにおいて、2次元画像2の横幅wをはみ出すことになる。すなわち、図7に示すように、はみ出し範囲6a、6bが存在することになる。ここで、はみ出し範囲6a、6bでは、奥行き値D2が取得できず、視差画像5を生成することができないという問題が生じる。そこで、本発明の実施の形態では、後述するはみ出し範囲補正処理を実行する。
図6に示すように、2次元画像2に対する仮想的なカメラCの視野角θは、スクリーン面Sにおいて、カメラCの視野範囲の両端が2次元画像2の横幅wの両端に一致するように定まる。
図5の例のように、奥行き倍率αが1よりも大きい場合、最遠面Pがスクリーン面SよりもカメラCから遠い位置になる。そうすると、図7に示すように、視野角θに基づくカメラCの視野範囲は、最遠面Pにおいて、2次元画像2の横幅wをはみ出すことになる。すなわち、図7に示すように、はみ出し範囲6a、6bが存在することになる。ここで、はみ出し範囲6a、6bでは、奥行き値D2が取得できず、視差画像5を生成することができないという問題が生じる。そこで、本発明の実施の形態では、後述するはみ出し範囲補正処理を実行する。
以下では、図8〜図12を参照しながら、視差画像生成装置1の処理の詳細について説明する。
図8は、視差画像生成処理の詳細を示すフローチャートである。
視差画像生成装置1の制御部11は、処理対象とするXZ平面を特定するために、スクリーン面Sにおけるy座標を決定する(S101)。以下、S101にて決定されたy座標をysとする。視差画像生成装置1は、ysごとにS102〜S107の処理を繰り返す。
図8は、視差画像生成処理の詳細を示すフローチャートである。
視差画像生成装置1の制御部11は、処理対象とするXZ平面を特定するために、スクリーン面Sにおけるy座標を決定する(S101)。以下、S101にて決定されたy座標をysとする。視差画像生成装置1は、ysごとにS102〜S107の処理を繰り返す。
次に、制御部11は、パラメータ4の奥行き倍率αに基づいて、奥行き値D2を算出する(S102)。制御部11は、デプス画像3に対して、S101において決定したysの画素をX軸方向に走査し、式(3)によってデプス画像3の画素値D1を奥行き値D2に変換する。S102の処理の結果、2次元画像2の横ピクセル数分の奥行き値D2が算出されることになる。
次に、制御部11は、はみ出し範囲補正処理を実行する(S103)。はみ出し範囲補正処理は、前述の図7に示すはみ出し範囲6a、6bにおいて、奥行き値D2が取得できないという問題を解決するための処理である。
図9、図10は、はみ出し範囲補正処理を説明する図である。
図9は、補正値βの算出方法を説明するための図である。以下、スクリーン面Sにおける処理対象の画素をサンプリング点と記載する。サンプリング点のx座標は、パラメータ4の横幅、画素ピッチに基づいて定まる。
図9は、補正値βの算出方法を説明するための図である。以下、スクリーン面Sにおける処理対象の画素をサンプリング点と記載する。サンプリング点のx座標は、パラメータ4の横幅、画素ピッチに基づいて定まる。
制御部11は、スクリーン面S上のサンプリング点の左端点X0(原点O)、及び、最も右側に位置するカメラC8のカメラ位置(Cx8、Cz8)を通る左端点決定直線L1を算出する。次に、制御部11は、最遠面Pと左端点決定直線L1との交点をはみ出し左端点Xleftとする。次に、制御部11は、はみ出し左端点Xleftのx座標とサンプリング点の左端点X0のx座標との差分Aを左側はみ出し距離とする。
また、制御部11は、サンプリング点の右端点Xwidth−1、及び、最も左側に位置するカメラC1のカメラ位置(Cx1、Cz1)を通る右端点決定直線L2を算出する。次に、制御部11は、最遠面Pと右端点決定直線L2との交点をはみ出し右端点Xrightとする。次に、制御部11は、はみ出し右端点Xrightのx座標とサンプリング点の右端点Xwidth−1のx座標との差分Bを右側はみ出し距離とする。
そして、制御部11は、左側はみ出し距離(=差分A)及び右側はみ出し距離(=差分B)のうち大きい方をはみ出し補正値βとする。
また、制御部11は、サンプリング点の右端点Xwidth−1、及び、最も左側に位置するカメラC1のカメラ位置(Cx1、Cz1)を通る右端点決定直線L2を算出する。次に、制御部11は、最遠面Pと右端点決定直線L2との交点をはみ出し右端点Xrightとする。次に、制御部11は、はみ出し右端点Xrightのx座標とサンプリング点の右端点Xwidth−1のx座標との差分Bを右側はみ出し距離とする。
そして、制御部11は、左側はみ出し距離(=差分A)及び右側はみ出し距離(=差分B)のうち大きい方をはみ出し補正値βとする。
図10は、奥行き値D2の画素位置(x座標)のスケール変換方法を説明するための図である。図10では、各奥行き値D2のスクリーン面Sにおける画素位置をx座標、奥行き値自体をz座標とし、各奥行き値D2を黒丸によって図示している。
制御部11は、はみ出し補正値βに基づいて、奥行き値D2の画素位置(x座標)をスケール変換する。具体的には、制御部11は、スケール変換前のxx座標をx1、スケール変換後のx座標をx2とすると、次式に従って、スケール変換する。
制御部11は、はみ出し補正値βに基づいて、奥行き値D2の画素位置(x座標)をスケール変換する。具体的には、制御部11は、スケール変換前のxx座標をx1、スケール変換後のx座標をx2とすると、次式に従って、スケール変換する。
図10の例では、変換前奥行き分布曲線24が、スケール変換前の奥行き値D2の分布を示している。また、奥行き分布曲線25が、スケール変換後の奥行き値D2の分布を示している。黒丸の点は、それぞれ奥行き値D2を示している。尚、奥行き値D2は、ピクセルごとに定義される離散的な値であり、変換前奥行き分布曲線24及び奥行き分布曲線25は、説明の便宜のために図示した仮想的な曲線である。
図10に示すように、スケール変換前の奥行き値D2の両端は、2次元画像2の横幅wの両端と一致する。
一方、スケール変換後の奥行き値D2の両端は、2次元画像2の横幅wよりも差分Aだけ外側に位置している。尚、図10の例では、図9において差分Bよりも差分Aの方が大きく、差分Aがはみ出し補正値βとして採用されたものとしている。
一方、スケール変換後の奥行き値D2の両端は、2次元画像2の横幅wよりも差分Aだけ外側に位置している。尚、図10の例では、図9において差分Bよりも差分Aの方が大きく、差分Aがはみ出し補正値βとして採用されたものとしている。
このようにスケール変換することで、視差画像5の意匠に影響を与えることなく、図7のはみ出し範囲6a、6bにおいても、奥行き値D2が取得できることになる。そして、ひいては、飛び出し感や奥行き感に富んだ視差画像5を生成することができる。
図8の説明に戻る。
制御部11は、スクリーン面Sにおける処理対象の画素、すなわちサンプリング点を決定する(S104)。但し、サンプリング点のy座標は、S101において決定されたysである。
次に、制御部11は、S104において決定されたサンプリング点に対して、視差画像5の画素値算出処理を行う(S105)。
制御部11は、スクリーン面Sにおける処理対象の画素、すなわちサンプリング点を決定する(S104)。但し、サンプリング点のy座標は、S101において決定されたysである。
次に、制御部11は、S104において決定されたサンプリング点に対して、視差画像5の画素値算出処理を行う(S105)。
図11、図12は、画素値算出処理を説明する図である。図11、図12では、各奥行き値D2のスクリーン面Sにおける画素位置をx座標、奥行き値自体をz座標とし、各奥行き値D2を黒丸によって図示している。
制御部11は、最初に、サンプリング点のx座標xsと、処理対象のカメラ位置(Cxi、Czi)(i=1、・・・、n)と、を通る視線直線26aを算出する。カメラ位置(Cxi、Czi)は、前述した通り、パラメータ4のカメラ数n、カメラ間隔Ccamera_x及びカメラCiからスクリーン面Sまでの距離(第2距離)Ccamera_zに基づいて設定されている。図11に示す例では、カメラC3を処理対象としている。
制御部11は、最初に、サンプリング点のx座標xsと、処理対象のカメラ位置(Cxi、Czi)(i=1、・・・、n)と、を通る視線直線26aを算出する。カメラ位置(Cxi、Czi)は、前述した通り、パラメータ4のカメラ数n、カメラ間隔Ccamera_x及びカメラCiからスクリーン面Sまでの距離(第2距離)Ccamera_zに基づいて設定されている。図11に示す例では、カメラC3を処理対象としている。
次に、制御部11は、奥行き値D2同士の区間の中で視線直線26aが通る区間である通過区間31aを特定する。そして、制御部11は、通過区間31aのいずれか1つを採用区間とし、採用区間の両端を示す第1奥行き値32a及び第2奥行き値33aのうち小さい方(z座標の値が小さい方)の画素を採用画素とする。図11に示す例では、第1奥行き値32aが採用画素となる。
採用区間が、被写体の輪郭部分に相当する場合、第1奥行き値32a及び第2奥行き値33aのうち大きい方(z座標の値が大きい方)の画素は、手前の被写体(一般には、人物や物体など)を表現する画素であり、小さい方の画素は奥の被写体(一般には、風景など)を表現する画素である。小さい方の画素、すなわち風景を表現する画素を常に採用画素とすることで、背景のつぶれがなく、被写体の輪郭部分のギザギザもなくなるので、被写体の輪郭部分が忠実に再現された視差画像5を生成することができる。
次に、制御部11は、2次元画像2における採用画素(=第1奥行き値32a)の画素値(カラー画像であればRGB値)を取得し、視差画像5における画素(xs,ys)の画素値として設定する。
制御部11は、以上の処理を全てのカメラC1〜C8に対して実行し、各視差画像5における画素(xs,ys)の画素値として設定する。
制御部11は、以上の処理を全てのカメラC1〜C8に対して実行し、各視差画像5における画素(xs,ys)の画素値として設定する。
図12では、複数の通過区間31b、31c、31dが存在する例を示している。この場合、制御部11は、最もカメラC1〜C8に近いものを採用区間とする。図12に示す例では、通過区間31bを採用区間とする。
そして、制御部11は、採用区間の両端を示す第1奥行き値32b及び第2奥行き値33bのうち小さい方(z座標の値が小さい方)の画素を採用画素とする。図12に示す例では、第2奥行き値33bが採用画素となる。
そして、制御部11は、採用区間の両端を示す第1奥行き値32b及び第2奥行き値33bのうち小さい方(z座標の値が小さい方)の画素を採用画素とする。図12に示す例では、第2奥行き値33bが採用画素となる。
複数の通過区間31が存在する場合、最もカメラC1〜C8に近いものが、最も手前の被写体である。従って、最もカメラC1〜C8に近いものを採用区間とすることで、複数の被写体の配置関係が忠実に再現された視差画像5を生成することができる。
図8の説明に戻る。
制御部11は、全サンプリング点(但し、y座標はysのみ)について処理が終了したかどうか確認する(S106)。処理が終了していない場合(S106のNo)、S104から処理を繰り返す。処理が終了している場合(S106のYes)、S107に進む。
制御部11は、全サンプリング点(但し、y座標はysのみ)について処理が終了したかどうか確認する(S106)。処理が終了していない場合(S106のNo)、S104から処理を繰り返す。処理が終了している場合(S106のYes)、S107に進む。
次に、制御部11は、全てのy座標について処理が終了したかどうか確認する(S107)。処理が終了していない場合(S107のNo)、S101から処理を繰り返す。処理が終了している場合(S107のYes)、S108に進む。
次に、制御部11は、S105において算出された画素値をカメラCごとに纏めて、視差画像5として記憶部12に保存する(S108)。カメラ数nが「8」の場合、制御部11は、S105において算出された画素値をカメラC1〜C8ごとに纏めて、8枚の視差画像5として記憶部12に記憶する。
以上、本発明の実施の形態に係る視差画像生成装置1は、意匠面において優れた立体視を実現するための視差画像5を作成することができる。
図13は、2次元画像2の一例を示す図である。図13に示す例では、2次元画像2は、静止画像であり、24ビットRGBのカラー画像である。但し、図13は、特許図面の制約により、カラー画像をグレースケール画像に変換したものである。
図14は、デプス画像3の一例を示す図である。図14に示す例では、デプス画像3は、0〜255の階調を有するグレースケール画像である。デプス画像3は、図13に示す2次元画像2をフォトレタッチソフトの機能によって口紅部分にマスクをかけて、口紅部分の画素値を、カメラから被写体までの距離(第1距離)に置き換えた画像である。
図14は、デプス画像3の一例を示す図である。図14に示す例では、デプス画像3は、0〜255の階調を有するグレースケール画像である。デプス画像3は、図13に示す2次元画像2をフォトレタッチソフトの機能によって口紅部分にマスクをかけて、口紅部分の画素値を、カメラから被写体までの距離(第1距離)に置き換えた画像である。
本実施例では、図13に示す2次元画像2、図14に示すデプス画像3を入力画像とし、カメラ数nを「8」、カメラ間隔を「等間隔」として、視差画像生成装置1によって8枚の視差画像5を生成した。
図15は、カメラC1に係る視差画像5の一例を示す図である。図16は、カメラC8に係る視差画像5の一例を示す図である。但し、図15、図16は、特許図面の制約により、カラー画像をグレースケール画像に変換したものである。
図15と図16に示す通り、視差画像生成装置1によって生成された視差画像5は、口紅の輪郭部分における背景のつぶれがなく、ギザギザ感もない。また、複数の口紅の配置関係が忠実に再現されている。すなわち、視差画像生成装置1によって生成された視差画像5を利用することによって、意匠面において優れた立体視を実現することが可能となる。
尚、一番手前の口紅の先端の位置を比較することで、カメラC1のカメラ位置とカメラC8のカメラ位置の違いが認識できる。
図15と図16に示す通り、視差画像生成装置1によって生成された視差画像5は、口紅の輪郭部分における背景のつぶれがなく、ギザギザ感もない。また、複数の口紅の配置関係が忠実に再現されている。すなわち、視差画像生成装置1によって生成された視差画像5を利用することによって、意匠面において優れた立体視を実現することが可能となる。
尚、一番手前の口紅の先端の位置を比較することで、カメラC1のカメラ位置とカメラC8のカメラ位置の違いが認識できる。
以上、添付図面を参照しながら、本発明に係る視差画像作成装置等の好適な実施形態について説明したが、本発明はかかる例に限定されない。当業者であれば、本願で開示した技術的思想の範疇内において、各種の変更例又は修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
1………視差画像生成装置
2………2次元画像
3………デプス画像
4………パラメータ
5………視差画像
2………2次元画像
3………デプス画像
4………パラメータ
5………視差画像
Claims (6)
- 立体視を実現するための視差画像を作成する視差画像作成装置であって、
所望の2次元画像、及び、前記2次元画像に係るカメラから被写体までの距離である第1距離を画素値に置き換えた画像であるデプス画像を入力する画像入力手段と、
奥行き倍率、カメラ数、カメラ間隔、及び、カメラからスクリーン面までの距離である第2距離に係るパラメータを入力するパラメータ入力手段と、
前記奥行き倍率に基づいて前記デプス画像の画素値を所定の変換式によって変換し、前記2次元画像の各画素の奥行き値を算出する奥行き値算出手段と、
スクリーン面のサンプリング点と、前記カメラ数、前記カメラ間隔及び前記第2距離に基づいて設定されるカメラ位置と、を通る視線直線を算出し、前記奥行き値同士の区間の中で前記視線直線が通る区間である通過区間のいずれか1つを採用区間とし、前記採用区間の両端を示す第1奥行き値及び第2奥行き値のうち小さい方の画素を採用画素とし、前記2次元画像における前記採用画素の画素値を前記サンプリング点の画素値とする画素値算出手段と、
を具備することを特徴とする視差画像作成装置。 - 前記画素値算出手段は、前記通過区間が複数存在する場合には、最もカメラに近いものを前記採用区間とすることを特徴とする請求項1に記載の視差画像作成装置。
- 前記サンプリング点の左端点、及び、最も右側に位置するカメラのカメラ位置を通る左端点決定直線を算出し、前記奥行き値算出手段によって算出された奥行き値の中でカメラから最も遠い位置であり、かつ、スクリーン面と平行な面である最遠面と、前記左端点決定直線との交点をはみ出し左端点とし、前記はみ出し左端点と前記サンプリング点の左端点との差分を左側はみ出し距離とし、
前記サンプリング点の右端点、及び、最も左側に位置するカメラのカメラ位置を通る右端点決定直線を算出し、前記最遠面と、前記右端点決定直線との交点をはみ出し右端点とし、前記はみ出し右端点と前記サンプリング点の右端点との差分を右側はみ出し距離とし、
前記左側はみ出し距離及び前記右側はみ出し距離のうち大きい方をはみ出し補正値とし、
前記はみ出し補正値に基づいて、前記奥行き値の画素位置をスケール変換するはみ出し範囲補正手段、
を更に具備することを特徴とする請求項1または請求項2に記載の視差画像作成装置。 - 立体視を実現するための視差画像を作成する視差画像作成方法であって、
所望の2次元画像、及び、前記2次元画像に係るカメラから被写体までの距離である第1距離を画素値に置き換えた画像であるデプス画像を入力する画像入力ステップと、
奥行き倍率、カメラ数、カメラ間隔、及び、カメラからスクリーン面までの距離である第2距離に係るパラメータを入力するパラメータ入力ステップと、
前記奥行き倍率に基づいて前記デプス画像の画素値を所定の変換式によって変換し、前記2次元画像の各画素の奥行き値を算出する奥行き値算出ステップと、
スクリーン面のサンプリング点と、前記カメラ数、前記カメラ間隔及び前記第2距離に基づいて設定されるカメラ位置と、を通る視線直線を算出し、前記奥行き値同士の区間の中で前記視線直線が通る区間である通過区間のいずれか1つを採用区間とし、前記採用区間の両端を示す第1奥行き値及び第2奥行き値のうち小さい方の画素を採用画素とし、前記2次元画像における前記採用画素の画素値を前記サンプリング点の画素値とする画素値算出ステップと、
を含むことを特徴とする視差画像作成方法。 - コンピュータを、
所望の2次元画像、及び、前記2次元画像に係るカメラから被写体までの距離である第1距離を画素値に置き換えた画像であるデプス画像を入力する画像入力手段と、
奥行き倍率、カメラ数、カメラ間隔、及び、カメラからスクリーン面までの距離である第2距離に係るパラメータを入力するパラメータ入力手段と、
前記奥行き倍率に基づいて前記デプス画像の画素値を所定の変換式によって変換し、前記2次元画像の各画素の奥行き値を算出する奥行き値算出手段と、
スクリーン面のサンプリング点と、前記カメラ数、前記カメラ間隔及び前記第2距離に基づいて設定されるカメラ位置と、を通る視線直線を算出し、前記奥行き値同士の区間の中で前記視線直線が通る区間である通過区間のいずれか1つを採用区間とし、前記採用区間の両端を示す第1奥行き値及び第2奥行き値のうち小さい方の画素を採用画素とし、前記2次元画像における前記採用画素の画素値を前記サンプリング点の画素値とする画素値算出手段と、
して機能させるためのプログラム。 - 請求項5に記載のプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010176864A JP2012039331A (ja) | 2010-08-06 | 2010-08-06 | 視差画像作成装置、視差画像作成方法、プログラム及び記憶媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010176864A JP2012039331A (ja) | 2010-08-06 | 2010-08-06 | 視差画像作成装置、視差画像作成方法、プログラム及び記憶媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012039331A true JP2012039331A (ja) | 2012-02-23 |
Family
ID=45850839
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010176864A Pending JP2012039331A (ja) | 2010-08-06 | 2010-08-06 | 視差画像作成装置、視差画像作成方法、プログラム及び記憶媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2012039331A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012195626A (ja) * | 2011-03-14 | 2012-10-11 | Dainippon Printing Co Ltd | 視差画像生成装置、視差画像生成方法、プログラム及び記憶媒体 |
JP2015535400A (ja) * | 2012-09-10 | 2015-12-10 | アエマス,インコーポレイテッド | 複数デバイスを使用した周辺環境の多次元データキャプチャ |
-
2010
- 2010-08-06 JP JP2010176864A patent/JP2012039331A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012195626A (ja) * | 2011-03-14 | 2012-10-11 | Dainippon Printing Co Ltd | 視差画像生成装置、視差画像生成方法、プログラム及び記憶媒体 |
JP2015535400A (ja) * | 2012-09-10 | 2015-12-10 | アエマス,インコーポレイテッド | 複数デバイスを使用した周辺環境の多次元データキャプチャ |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6903183B2 (ja) | 曲面ビューポート上に頂点の投影を近似することによる、グラフィックス処理における画面位置に基づく有効解像度の変化 | |
EP3129973B1 (en) | Gradient adjustment for texture mapping for multiple render targets with resolution that varies by screen location | |
JP6011624B2 (ja) | 画像処理装置、画像処理方法、及びプログラム | |
KR20160051154A (ko) | 렌더링 방법, 렌더링 장치 및 전자 장치 | |
JP2010282611A (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP2023552538A (ja) | 画像処理方法及び装置、電子機器、記憶媒体ならびにコンピュータプログラム | |
JP2012039331A (ja) | 視差画像作成装置、視差画像作成方法、プログラム及び記憶媒体 | |
US20180315239A1 (en) | Image processing apparatus and image processing method | |
JP5087665B2 (ja) | 画像処理装置、方法、及びプログラム | |
KR101227155B1 (ko) | 저해상도 그래픽 영상을 고해상도 그래픽 영상으로 실시간 변환하는 그래픽 영상 처리 장치 및 방법 | |
JP2012108825A (ja) | 情報処理装置、情報処理方法およびプログラム | |
KR20220128406A (ko) | 멀티뷰 스타일 전이 시스템 및 방법 | |
JP5782761B2 (ja) | 視差画像生成装置、視差画像生成方法、プログラム及び記憶媒体 | |
KR100914915B1 (ko) | 저비용의 뷰-체적 클리핑 방법 및 장치 | |
JP6035057B2 (ja) | 三次元画像表示装置及び三次元画像表示方法 | |
JP5966837B2 (ja) | 奥行き制作支援装置、奥行き制作支援方法、およびプログラム | |
US20220262053A1 (en) | Image processing apparatus, image processing method, and program | |
US9129447B2 (en) | Method and device for generating graphic images | |
JP2004078994A (ja) | 描画方法 | |
JP2019146004A (ja) | 画像処理装置、画像処理方法およびプログラム | |
JP2011170541A (ja) | 画像変形方法、画像処理装置、及びコンピュータプログラム | |
JP2018060521A (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP2015041224A (ja) | テクスチャ生成装置、テクスチャ生成方法、およびプログラム | |
JP2009146111A (ja) | 画像処理装置、画像処理プログラム、及び画像処理方法 | |
JPH06301786A (ja) | 画像表示方法および画像表示装置 |