JP3702243B2 - Stereoscopic image processing method and apparatus - Google Patents

Stereoscopic image processing method and apparatus Download PDF

Info

Publication number
JP3702243B2
JP3702243B2 JP2002087496A JP2002087496A JP3702243B2 JP 3702243 B2 JP3702243 B2 JP 3702243B2 JP 2002087496 A JP2002087496 A JP 2002087496A JP 2002087496 A JP2002087496 A JP 2002087496A JP 3702243 B2 JP3702243 B2 JP 3702243B2
Authority
JP
Japan
Prior art keywords
parallax
image
stereoscopic
viewpoint images
image processing
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.)
Expired - Fee Related
Application number
JP2002087496A
Other languages
Japanese (ja)
Other versions
JP2003284094A (en
Inventor
健 増谷
五郎 濱岸
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority to JP2002087496A priority Critical patent/JP3702243B2/en
Application filed by Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to KR1020047015105A priority patent/KR100812905B1/en
Priority to EP11161329.5A priority patent/EP2357841B1/en
Priority to EP20110161281 priority patent/EP2357836B1/en
Priority to CN038071592A priority patent/CN1643939B/en
Priority to EP03715473A priority patent/EP1489857B1/en
Priority to EP11161320A priority patent/EP2357840A3/en
Priority to EP11161295.8A priority patent/EP2357838B1/en
Priority to EP11161315A priority patent/EP2357839A3/en
Priority to EP11161340A priority patent/EP2387248A3/en
Priority to EP11161284A priority patent/EP2357837A3/en
Priority to EP11161269A priority patent/EP2362670B1/en
Priority to EP20110161303 priority patent/EP2381691B1/en
Priority to EP11161274A priority patent/EP2357835A3/en
Priority to PCT/JP2003/003791 priority patent/WO2003081921A1/en
Publication of JP2003284094A publication Critical patent/JP2003284094A/en
Priority to US10/949,528 priority patent/US8369607B2/en
Application granted granted Critical
Publication of JP3702243B2 publication Critical patent/JP3702243B2/en
Priority to US12/976,262 priority patent/US8131064B2/en
Priority to US12/986,471 priority patent/US8577127B2/en
Priority to US12/986,551 priority patent/US8724886B2/en
Priority to US12/986,530 priority patent/US8577128B2/en
Priority to US12/986,509 priority patent/US8417024B2/en
Priority to US12/986,453 priority patent/US8254668B2/en
Priority to US12/986,491 priority patent/US8879824B2/en
Priority to US13/088,752 priority patent/US8472702B2/en
Priority to US13/283,361 priority patent/US8559703B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は立体画像処理技術、とくに、視差画像をもとに立体画像を生成または表示する方法および装置に関する。
【0002】
【従来の技術】
近年、ネットワークインフラの未整備が問題視されてきたが、ブロードバンドへの移行期を迎え、むしろ、広い帯域を有効活用するコンテンツの種類や数の少なさが目立ち始めている。映像はいつの時代でも、もっとも重要な表現手段であったが、いままでの取り組みの多くは表示品質やデータ圧縮率の改善に関するものであり、それらに比べると、表現の可能性自体を広げる技術的な取り組みは、後手にまわっている感がある。
【0003】
そうした中で、立体映像表示(以下、単に立体表示という)は、以前からいろいろ研究され、劇場用途や特殊な表示装置を利用する、ある程度限られた市場で実用化されてきた。今後は、より臨場感の溢れるコンテンツの提供を目指してこの方面の研究開発が加速し、個人ユーザが家庭でも立体表示を楽しむ時代が来るものと思われる。
【0004】
【発明が解決しようとする課題】
そうした流れの中にあって、立体表示には以前よりいくつかの課題が指摘されている。たとえば、立体感を創生する原因となる視差の適正化が難しい。もともと、本当に三次元のオブジェクトを映し出しているのではなく、その映像を左右両目に対して画素単位でずらして投じているのであり、その人工的な立体感に自然な感じをもたせるのは容易ではない。
【0005】
また、視差の付けすぎも問題になることがあり、立体映像の観察者(以下、単にユーザともいう)によっては、軽い不快感を訴える場合がある。もちろんこれには、立体表示だけではなく、表示されているシーンと自己の周囲の状況ないし感覚が一致しないなど、種々の要因がある。しかし、経験則からいえば、そうした問題は視差が大きすぎる、換言すれば、立体感が強すぎる場合に観察されやすい。
【0006】
以上は人間の生理上のはなしであるが、それとは別に、立体映像のコンテンツやアプリケーションの普及を阻む技術要因がある。立体視は視差によって実現するが、仮に視差を左右画像の画素のずれ量で表現しても、表示装置のハードウエアの差違により、同じ立体映像が適切に立体視できる場合とそうでない場合がある。遠方を表現する視差が眼間距離を超えてしまうと、理論的に立体視ができない。今日のように、表示装置の解像度やスクリーンサイズがPC(パーソナルコンピュータ)、テレビジョン受像機、携帯機器など多様化する中、いろいろなハードウエアを考えて立体表示のために最適なコンテンツを作るのは難題であり、あるいは、そのための方法論が与えられていないというほうがより正確である。
【0007】
また仮に、その方法論が与えられたとしても、それを一般のプログラマが理解し、コンテンツおよびアプリケーションの作成に利用することを期待するのは難しいであろう。
【0008】
本発明はこうした背景に鑑みてなされたものであり、その目的は、人の生理に適合しやすい立体画像を生成または表示することにある。別の目的は、表示対象画像や表示装置が変わってもユーザに適切な立体画像を生成または表示することにある。さらに別の目的は、立体表示がなされているときに、簡単な操作でその立体感を調整することにある。さらに別の目的は、適切な立体表示が可能なコンテンツまたはアプリケーションづくりに際し、プログラマの負担を軽減することにある。さらに別の目的は、適切な立体表示を実現する技術をビジネスのモデルとして提供することにある。
【0009】
【課題を解決するための手段】
本発明の基礎をなす発明者の知見は、適正視差をいったん表示装置のハードウエアやユーザと表示装置の距離などの要素(以下、これらを統括的に「ハードウエア」と表現する)から切り離すことにある。すなわち、適正視差の表現を後述のカメラ間隔と光軸交差位置で一般化することにより、いったんハードウエアに依存しない汎用的な形で記述する。「ハードウエアに依存しない」とは、表示装置に固有のハードウエア情報の読み出しが原則的に不要という意味であり、この汎用的な記述がなされれば、あとはその適正視差に基づいて視差画像を生成または調整すれば、所望の立体表示が実現する。
【0010】
適正視差の取得、および画像の立体表示の際にその適正視差を実現する制御をライブラリで提供することにより、一般のプログラマはこのライブラリを呼び出せば複雑な立体視の原理やプログラミングを意識せず適正な立体表示が実現する。
【0011】
本発明のいろいろな態様のうち、第1グループは、ユーザの応答をもとに適正視差を取得する技術を基本とする。この技術は、ユーザによる視差の「初期設定」に利用でき、いちど適正視差が装置内に取得されれば、以降、別の画像の表示の際にもその適正視差が実現される。ただし、この技術は初期設定にとどまらず、ユーザが適宜表示中の画像の視差を調整する「手動調整」にも利用される。以下、第1グループに関する。
【0012】
本発明は、立体画像処理装置に関し、異なる視差に対応する複数の視点画像をもとに表示された立体画像に対するユーザの応答を取得する指示取得部と、取得された応答をもとに、そのユーザに関する適正視差を特定する視差特定部とを含む。
【0013】
指示取得部は、たとえばGUI(グラフィカルユーザインタフェイス、以下同様)として提供され、まず視点画像間の視差を変えながら表示する。ユーザは自分が好む立体感になったとき、ボタン操作などによってその旨を入力する。
【0014】
「立体画像」とは立体感をもって表示された画像であり、そのデータの実体は、複数の画像に視差をもたせた「視差画像」である。視差画像は一般に複数の二次元画像の集合である。視差画像を構成する各画像は、それぞれが対応する視点を有する「視点画像」である。つまり、複数の視点画像によって視差画像が構成され、それを表示すると立体画像として表示される。立体画像の表示を単に「立体表示」ともいう。
【0015】
「視差」とは、立体感を生むためのパラメータであり、いろいろな定義が可能だが、一例として視点画像間の同じ点を表す画素のシフト量で表現できる。以下、本明細書では、とくに断らない限り、その定義にしたがう。
【0016】
適正視差は範囲指定してもよい。その場合、その範囲の両端を「限界視差」と呼ぶことにする。「適正視差の特定」は、後述の近置オブジェクトの視差として許容できる最大値で行ってもよい。
【0017】
本発明の立体画像処理装置はさらに、特定された適正視差が別の画像の表示の際にも実現されるよう処理を施す視差制御部を含んでもよい。別の画像が三次元データを起点として生成される立体画像であるとき、視差制御部は前記の適正視差にしたがってその立体画像を生成する複数の視点を決定してもよい。より具体的には、複数の視点間の距離とそれらの視点からオブジェクトを見込む光軸の交差位置を決定してもよい。これらの処理の一例は、後述のカメラ配置決定部によってなされる。これらの処理をリアルタイムにすれば、常に最適な立体表示が実現する。
【0018】
視差制御部は、表示の対象となる所定の基本三次元空間について適正視差が実現するよう制御してもよい。この処理の一例は、後述の投影処理部によってなされる。
【0019】
視差制御部は、三次元空間において最も近置されるオブジェクトの座標と最も遠置されるオブジェクトの座標について前記適正視差が実現するよう制御してもよい。この処理の一例は、後述の投影処理部によってなされる。オブジェクトは静的でもよい。
【0020】
「近置」は複数の視点にそれぞれ置かれたカメラの視線、すなわち光軸の交差位置(以下、「光軸交差位置」という)にある面(以下、「光軸交差面」という)より前に立体視されるような視差がつけられている状態を指す。「遠置」は逆に光軸交差面よりうしろに立体視されるような視差がつけられている状態を指す。近置オブジェクトの視差が大きくなるほどユーザに近づいて感知され、遠置オブジェクトの視差が大きくなるほどユーザから遠ざかって見える。すなわち、特に断らないかぎり、視差は近置、遠置で正負が反転せず、ともに非負の値として定義し、光軸交差面において近置視差、遠置視差ともにゼロとする。
【0021】
表示されるオブジェクトや空間のうち、視差のない部分について、光軸交差面は表示装置のスクリーン面に一致する。なぜなら、視差がつけられていない画素は、左右両眼から見込む視線がちょうどスクリーン面内の同じ位置に到達し、すなわち、そこで交差するためである。
【0022】
前記の別の画像がすでに視差が与えられている複数の二次元画像である場合、視差制御部は適正視差にしたがってそれら複数の二次元画像の水平方向のシフト量を定めてもよい。この態様では、立体表示のための入力が三次元データを起点として高い自由度をもって生成されるのではなく、すでに生成されている視差画像であり、視差は固定されている。この場合、もとの三次元空間、あるいは実際に撮影された実空間に戻ってカメラ位置を変更して再描画、あるいは再撮影する処理ができない。そのため、視差画像を構成する視点画像、またはそれらに含まれる画素を水平へシフトして視差を調整する。
【0023】
前記の別の画像はデプス情報が与えられている平面画像(以下これを「デプス情報付画像」ともいう)の場合、視差制御部は適正視差にしたがってそのデプスを調整してもよい。この処理の一例は、後述の第3の立体画像処理装置の二次元画像生成部によってなされる。
【0024】
この立体画像処理装置は、適正視差を記録する視差保持部をさらに含み、視差制御部は、所定のタイミング、例えばこの装置の起動時や、この装置が有する立体画像処理機能またはその一部が起動されたときなどにおいて適正視差を読み込み、その値を初期値として処理を施してもよい。すなわち、「起動」はハードウエア的な意味でもソフトウエア的な意味でもよい。この態様によれば、ユーザがいちど適正視差を決めれば、以降、立体感調整のための自動処理が実現する。これは「適正視差の初期設定」とでもよぶ機能である。
【0025】
本発明の別の態様は、立体画像処理方法に関し、異なる視差による複数の立体画像をユーザに表示するステップと、表示された立体画像に対するユーザの応答をもとにそのユーザに関する適正視差を特定するステップとを含む。
【0026】
本発明のさらに別の態様も立体画像処理方法に関し、ユーザに依存する適正視差を取得するステップと、取得した適正視差が実現されるよう、表示前に画像に処理を加えるステップとを含む。ここで「取得」は積極的に特定する処理であってもよいし、前記の視差保持部等から読み込む処理であってもよい。
【0027】
これら各ステップを立体表示用ライブラリの機能として実装し、複数のプログラムからこのライブラリの機能を関数として呼出可能に構成すれば、プログラマがいちいち立体表示装置のハードウエアを考慮してプログラムを記述する必要がなくなり、効果的である。
【0028】
本発明の第2グループは、ユーザの指示をもとに視差を調整する技術を基本とする。この技術は、ユーザによる視差の「手動調整」に利用でき、ユーザは適宜表示中の画像の立体感を変更できる。ただし、この技術は手動調整にとどまらず、ある画像を立体表示する際、前述の適正視差を読み込み、その画像の視差を自動調整する際にも利用できる。第1グループの自動調整との違いは、第2グループの自動調整が二次元の視差画像またはデプス情報付画像に対して作用する点であり、三次元データまで遡って視差を変更する場合は第1グループの技術を利用する。以下、第2グループに関する。
【0029】
本発明のある態様は立体画像処理装置に関し、複数の視点画像から表示された立体画像に対するユーザの指示を取得する指示取得部と、取得された指示にしたがい、前記複数の視点画像間の視差量を変化させる視差制御部とを含む。この処理の一例は後述の図45に示され、「手動調整」の典型例である。ユーザの指示は、たとえばボタン操作など、簡単なGUIで提供すれば利便性が高い。
【0030】
本発明の別の態様も立体画像処理装置に関し、複数の視点画像から立体画像を表示するときに生じる第1の視差量を検出する視差量検出部と、第1の視差量が、ユーザの許容視差量である第2の視差量の範囲に入るよう前記複数の視点画像間の視差量を変化させる視差制御部とを含む。これは「自動調整」の典型例であり、第2の視差量として前述の適正視差が利用できる。この処理の一例は、後述の図46に示される。
【0031】
視差量検出部は第1の視差量の最大値を検出し、視差制御部は、その最大値が第2の視差量の最大値を超えないよう複数の視点画像間の視差量を変化させてもよい。視差の付きすぎによる過度な立体感を避けるため、視差量の最大値、すなわち限界視差を守る意図である。ここでいう最大値は、近置側の最大値と考えてもよい。
【0032】
視差量検出部は、複数の視点画像間で対応点マッチングを計算して第1の視差量を検出したり、または複数の視点画像のいずれかのヘッダに予め記録された第1の視差量を検出してもよい。これらの処理の一例は後述の図47に示される。
【0033】
視差制御部は、複数の視点画像の合成位置をシフトすることにより複数の視点画像間の視差量を変化させてもよい。これは図45〜47に共通である。合成位置のシフトは、画素または画像全体を単位とする水平または垂直方向のシフトである。入力がデプス情報付画像の場合、視差制御部は、デプス情報を調整して視差量を変化させてもよい。
【0034】
本発明の別の態様は立体画像処理方法に関し、複数の視点画像をもとに表示された立体画像に対するユーザの指示を取得するステップと、その指示にしたがい、前記複数の視点画像間の視差量を変化させるステップとを含む。
【0035】
本発明のさらに別の態様も立体画像処理方法に関し、複数の視点画像から立体画像を表示するときに生じる第1の視差量を検出するステップと、第1の視差量が、ユーザの許容視差量である第2の視差量の範囲に入るよう複数の視点画像間の視差量を変化させるステップとを含む。
【0036】
これら各ステップを立体表示用ライブラリの機能として実装し、複数のプログラムからこのライブラリの機能を関数として呼出可能に構成してもよい。
【0037】
本発明の第3グループは、画像内位置に基づいて視差を補正する技術を基本とする。この「自動補正」は立体表示に対するユーザの違和感または拒絶感を軽減するよう作用し、第1、第2グループの技術と併用できる。一般に、立体表示の際、画像端部に近いほど複数の視点画像がずれて観察されたり、違和感を産みやすいなど、技術上または生理上の問題点が指摘される。第3グループでは、画像端に近い部分で視差を減らし、またはオブジェクトが近置側から遠置側へ移動するよう視差を調整するなどの処理により、この問題の軽減を図る。以下、第3グループに関する。
【0038】
本発明のある態様は立体画像処理装置に関し、立体画像を表示するための複数の視点画像間の視差を補正する視差制御部と、視差制御部がその処理の際に参照すべき補正マップを保持するマップ保持部とを含み、この補正マップは、視差が視点画像内の位置に基づいて補正されるよう記述されている。補正マップには、視差補正マップ、距離感補正マップなどがある。
【0039】
視差制御部は、例えば複数の視点画像の周辺部において視差を小さくするか、またはオブジェクトがユーザからより遠くに感知されるよう視差を変化させる。視差制御部は、複数の視点画像のいずれかに選択的に処理を施すことによって視差を変化させてもよい。
【0040】
複数の視点画像は三次元データから生成されるもの、すなわち、三次元空間まで戻って視点画像を生成できる場合には、視差制御部は複数の視点画像の生成にあたって、カメラパラメータを制御して視差を変化させてもよい。カメラパラメータとして、左右カメラの間隔、カメラからオブジェクトを見込む角度、または光軸交差位置などがある。
【0041】
同様に、複数の視点画像が三次元データから生成される場合、視差制御部は複数の視点画像の生成にあたって、三次元空間自体を例えばワールド座標系において歪ませることにより視差を変化させてもよい。一方、複数の視点画像がデプス情報付画像から生成される場合、視差制御部はそのデプス情報を操作することによって視差を変化させてもよい。
【0042】
本発明の別の態様は立体画像処理方法に関し、立体画像を表示するための複数の視点画像を取得するステップと、取得された前記複数の視点画像間の視差をそれら視点画像内の位置に基づいて変化させるステップとを含む。これらのステップを立体表示用ライブラリの機能として実装し、複数のプログラムからこのライブラリの機能を関数として呼出可能に構成してもよい。
【0043】
本発明の第4グループは、第1〜第3グループおよびその関連機能をソフトウエアライブラリとして提供し、プログラマおよびユーザの負担を軽減し、立体画像表示アプリケーションの普及を促進する技術に関する。以下、第4グループに関する。
【0044】
本発明のある態様は立体画像処理方法に関し、立体画像表示に関連する情報をメモリ上に保持し、その保持された情報を複数の異なるプログラム間で共有し、それらのプログラムのいずれかが立体画像を表示する際、保持された情報を参照して出力すべき画像の状態を決定する。画像の状態の例は、視差画像にどの程度の視差が与えられているか、その程度である。
【0045】
「保持された情報」は、立体画像表示装置に入力される画像のフォーマット、視点画像の表示順序、視点画像間の視差量のいずれかの情報を含んでもよい。また、保持された情報の共有に加え、立体画像表示固有の処理を複数のプログラムで共有してもよい。「立体画像表示固有の処理」の一例は、保持された情報を決定するための処理である。別の例は、適正視差を決定するためのグラフィカルユーザインタフェイスに関する処理、適正視差状態の実現を支援する視差調整用画面の表示処理、ユーザの頭位置を検出して追跡する処理、立体表示装置を調整するための画像を表示する処理などである。
【0046】
本発明の別の態様は、立体画像処理装置に関し、立体表示画像の立体感を調整するためのグラフィカルユーザインタフェイスをユーザに提供する立体感調整部と、ユーザによる立体感の調整の結果判明する限界視差を守る形で視差画像を生成する視差制御部とを含む。
【0047】
この装置はさらに、立体画像表示を適正化するために参照すべき情報を取得する情報検出部と、取得された情報にしたがって前記視差制御部で生成された視差画像のフォーマットを変換する変換部とを含んでもよい。
【0048】
視差制御部は、三次元データに基づき、カメラパラメータを制御して、限界視差を守りつつ視差画像を生成してもよいし、デプス情報付画像のデプスを制御して視差画像を生成してもよいし、視差のある複数の二次元画像の水平方向のシフト量を定めた後、視差画像を生成してもよい。
【0049】
本発明の第5グループは、以上の立体画像処理技術またはその関連技術を用いたひとつのアプリケーション、またはビジネスモデルに関する。第4グループのソフトウエアライブラリが利用可能である。以下、第5グループに関する。
【0050】
本発明のある態様は立体画像処理方法に関し、視差画像を立体表示するための適正視差をいったん表示装置のハードウエアに依存しない表現形式へ変換し、この表現形式による適正視差を異なる表示装置間で流通する。
【0051】
本発明の別の態様も立体画像処理方法に関し、第1の表示装置にて取得されたユーザの適正視差を第2の表示装置に読み込むステップと、第2の表示装置にて前記適正視差にしたがって視差画像間の視差を調整するステップと、第2の表示装置から調整後の視差画像を出力するステップとを含む。例えば、第1の表示装置がユーザの通常利用する装置、第2の表示装置が別の個所に設けられた装置である。
【0052】
本発明の別の態様は、立体画像処理装置に関し、ネットワークを介して接続された第1の表示装置、第2の表示装置およびサーバを含み、第1の表示装置は、当該装置にて取得されたユーザの適正視差情報をサーバに送信し、サーバは適正視差情報を受信してこれをユーザと関連づけて記録し、ユーザが第2の表示装置にて画像データの出力を要求したとき、当該装置はサーバからそのユーザの適正視差情報を読み出して視差を調整したのち視差画像を出力する。
【0053】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【0054】
【発明の実施の形態】
図1はユーザ10、スクリーン12、立体表示される再生オブジェクト14の位置関係を示す。ユーザ10の眼間距離がE、ユーザ10とスクリーン12の距離がD、表示されたときの再生オブジェクト14の幅がWである。再生オブジェクト14は立体表示されているため、スクリーン12よりも近くに感知される画素、すなわち近置される画素と、スクリーン12よりも遠くに感知される画素、すなわち遠置される画素を有する。視差が付けられていない画素はスクリーン12上でちょうど両目から同じ位置に見えるため、スクリーン12上に感知される

【0055】
図2は、図1の理想的な表示を生成するための撮影系を示す。二台のカメラ22、24の間隔をEとし、それらから現実のオブジェクト20を見たときの光軸交差位置までの距離(これを光軸交差距離という)をDとし、スクリーン12と同じ幅を見込む画角で、幅が現実にWであるオブジェクト20を撮影すれば、ふたつのカメラから視差画像が得られる。これを図1のスクリーン12へ表示すれば、図1の理想状態が実現する。
【0056】
図3、図4は、それぞれ図2の位置関係をA倍(A<1)、B倍(B>1)した状態を示す。これらの位置関係で得られた視差画像でも、図1の理想状態が実現する。すなわち、理想的な立体表示の基本は、W:D:Eを一定にすることからはじまる。この関係が視差の付け方の基礎にもなる。
【0057】
図5から図10は、実施の形態においてオブジェクト20の三次元データをもとに立体表示がなされるまでの処理の大筋を示す。
図5はモデル座標系、すなわち、個々の三次元オブジェクト20がもっている座標空間である。この空間で、オブジェクト20をモデリングしたときの座標を与える。通常はオブジェクト20の中心に原点をもってくる。
【0058】
図6はワールド座標系を示す。ワールド空間は、オブジェクト20や床、壁を配置してシーンが形成される広い空間である。図5のモデリングと図6のワールド座標系の確定までを「三次元データの構築」と認識できる。
【0059】
図7はカメラ座標系を示す。ワールド座標系の任意の位置から任意の方向に任意の画角でカメラ22を据えることにより、カメラ座標系への変換が行われる。カメラの位置、方向、画角がカメラパラメータである。立体表示の場合は、ふたつのカメラについてパラメータを定めるため、カメラ間隔と光軸交差位置も決める。また、ふたつのカメラの中点を原点にするために、原点移動も行われる。
【0060】
図8、図9は透視座標系を示す。まず図8のように、表示すべき空間を前方投影面30と後方投影面32でクリッピングする。後述するように、実施の形態のひとつの特徴は、近置最大視差点のある面を前方投影面30とし、遠置最大視差点のある面を後方投影面32にすることにある。クリッピングの後、このビューボリュームを図9のように直方体へ変換する。図8と図9の処理を投影処理ともよぶ。
【0061】
図10はスクリーン座標系を示す。立体表示の場合、複数のカメラそれぞれからの画像をそれぞれスクリーンのもっている座標系へ変換し、複数の二次元画像、すなわち視差画像を生成する。
【0062】
図11、図12、図13は、それぞれ一部が異なる立体画像処理装置100の構成を示す。以下、便宜上、それらの立体画像処理装置100をそれぞれ第1、第2、第3の立体画像処理装置100ともよぶ。これらの立体画像処理装置100は、装置内に一体に組み込むことも可能であるが、ここでは図の複雑を避けて3つに分けている。第1の立体画像処理装置100は描画すべきオブジェクトと空間が三次元データの段階から入手できる場合に効果的であり、したがって、主な入力を三次元データとする。第2の立体画像処理装置100はすでに視差が与えられている複数の二次元画像、すなわち既存の視差画像の視差調整に効果的であり、したがって、二次元の視差画像を入力する。第3の立体画像処理装置100はデプス情報付画像のデプス情報を操作して適正視差を実現するものであり、したがって、主に入力をデプス情報付画像とする。これら3通りの入力を総称して「オリジナルデータ」と表記している。
【0063】
第1〜第3の立体画像処理装置100を一体化して実装する場合、それらの前処理部として「画像形式判定部」を設け、三次元データ、視差画像、デプス情報付画像を判定した後、第1〜第3の立体画像処理装置100のうち最適なものを起動する構成としてもよい。
【0064】
第1の立体画像処理装置100は、立体表示に対する立体感を設定するうえで、「初期設定」および「自動調整」の機能をもつ。ユーザは立体表示された画像に対し、自分の適正視差を範囲指定すると、これがシステムで取得され、以降、別の立体画像の表示の際、予めこの適正視差が実現するよう変換処理が施されて表示される。したがって、第1の立体画像処理装置100により、ユーザは原則として一回だけ設定手続を経れば、以降、自分に合った立体表示を楽しむことができる。
【0065】
第1の立体画像処理装置100はさらに、画像の周辺部の視差を人工的に緩和する「視差補正」という副機能をもつ。既述のごとく、画像端部に近づくにしたがって複数の視点画像のずれが「二重像」として認識されやすくなる。これはパララックスバリアや表示装置のスクリーンの反りなど機構誤差が主因である。そこで、画像の周辺部で、1)近置視差と遠置視差をともに減らす、2)近置視差を減らし遠置視差はそのままにする、3)近置視差、遠置視差を問わず、全体に遠置視差のほうへシフトする、など、いろいろな方法を実施する。なお、この「視差補正」機能は第3の立体画像処理装置100にも存在するが、入力データの違いにより、処理は異なる。
【0066】
第1の立体画像処理装置100は、立体表示した画像に対するユーザからの応答をもとに立体感を調整する立体感調整部112と、立体感調整部112で特定された適正視差を保存する視差情報保持部120と、視差情報保持部120から適正視差を読みだし、オリジナルデータから適正視差を有する視差画像を生成する視差制御部114と、表示装置のハードウエア情報を取得し、また立体表示の方式を取得する機能を有する情報取得部118と、情報取得部118で取得した情報をもとに、視差制御部114で生成された視差画像の形式を変更するフォーマット変換部116を含む。オリジナルデータを単に三次元データとよぶが、厳密にはワールド座標系で記述されたオブジェクトおよび空間のデータがこれに当たる。
【0067】
情報取得部118で取得する情報の例として、立体表示の視点数、空間分割または時間分割等の立体表示装置の方式、シャッタめがねの利用があるか否か、多眼式の場合における視点画像の並び方、視差画像の中に視差が反転する視点画像の並びがあるか否か、ヘッドトラッキングの結果などがある。なお、ヘッドトラッキングの結果だけは例外的に図示しない経路を経て直接カメラ配置決定部132へ入力され、そこで処理される。
【0068】
以上の構成は、ハードウエア的には、任意のコンピュータのCPU、メモリ、その他のLSIで実現でき、ソフトウエア的にはGUI機能、視差制御機能その他の機能をもつプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところであり、以降の構成についてもその事情は同様である。
【0069】
立体感調整部112は指示取得部122と視差特定部124を有する。指示取得部122は、立体表示された画像に対してユーザが適正視差の範囲を指定したとき、これを取得する。視差特定部124は、その範囲をもとに、ユーザがこの表示装置を用いたときの適正視差を特定する。適正視差は、表示装置のハードウエアに依存しない表現形式で表される。適正視差を実現することにより、ユーザの生理に適合した立体視が可能になる。
【0070】
視差制御部114は、まずカメラパラメータを仮設定するカメラ仮配置部130と、適正視差にしたがって仮設定されたカメラパラメータを修正するカメラ配置決定部132と、カメラパラメータが決まったとき、複数のカメラの中点を原点とすべく原点移動処理を行う原点移動部134と、前述の投影処理を行う投影処理部138と、投影処理後、スクリーン座標系への変換処理を行って視差画像を生成する二次元画像生成部142とを含む。また、必要な応じて画像周辺部の視差を緩和するために空間歪み変換(以下単に歪変換ともいう)を行う歪処理部136がカメラ仮配置部130とカメラ配置決定部132の間に設けられている。歪処理部136は補正マップ保持部140から後述の補正マップを読み出して利用する。
【0071】
なお、立体表示のために表示装置を調整する必要があれば、そのための図示しないGUIを追加してもよい。このGUIで、表示されている視差画像全体を上下左右へ微小シフトして最適表示位置を確定するなどの処理をなしてもよい。
【0072】
図12の第2の立体画像処理装置100は、複数の視差画像を入力とする。これを単に入力画像ともよぶ。第2の立体画像処理装置100は、さきに第1の立体画像処理装置100で取得された適正視差を読み込み、入力画像の視差を調整して適正視差の範囲へ収め、出力する。その意味で、第2の立体画像処理装置100は視差の「自動調整」機能を有する。ただし、それだけでなく、実際に立体表示が行われている際にユーザが立体感を変更したいとき、GUI機能を提供し、ユーザの指示にしたがって視差を変更する「手動調整」機能もあわせもつ。
【0073】
すでに生成済みの視差画像の視差は通常変更できるものではないが、第2の立体画像処理装置100によれば、視差画像を構成する視点画像の合成位置をシフトすることで十分に実用に耐えるレベルで立体感が変更できる。第2の立体画像処理装置100は、入力データが三次元データまで遡れない状況においても良好な立体感調整機能を発揮する。以下、第1の立体画像処理装置100との相違点を中心に述べる。
【0074】
立体感調整部112は手動調整に利用される。指示取得部122は例えばスクリーンで「+n」「−n」などの数値入力を実現し、その値が視差の変更量として視差特定部124で特定される。数値と指示される立体感の関係にはいくとおりか考えられる。たとえば、「+n」は立体感を強める指示、「−n」は弱める指示で、nが大きくなるほど立体感に対する変更量が大きいとしてもよい。また、「+n」は全体に近置方向へオブジェクトを移動する指示、「−n」は全体に遠置方向へオブジェクトを移動する指示としてもよい。別の方法として、nの値は指定せず、単に「+」と「−」のボタンのみ表示し、これをクリックするたびに視差が変更される構成としてもよい。
【0075】
第2の立体画像処理装置100は、視差量検出部150と視差制御部152を有する。入力画像が複数の視差画像の場合、視差量検出部150はそれらの視差画像のヘッダ領域を検査し、画素数の形で記述された視差量、とくに近置最大視差画素数と遠置最大視差画素数があればこれを取得する。視差量が記述されていなければ、マッチング部158がブロックマッチングなど既知の手法を利用して視差画像間で対応点を検出することにより視差量を特定する。マッチング部158は画像の中央部など重要領域だけに処理を施してもよいし、最も重要な近置最大視差画素数に絞って検出してもよい。検出された視差量は画素数の形で視差制御部152へ送られる。
【0076】
視差制御部152の位置シフト部160は、視点画像間の視差量が適正視差になるよう視差画像を構成する視点画像の合成位置を水平方向へシフトする。シフトは、視点画像のいずれかについて行えばよい。位置シフト部160は別の動作モードも有し、ユーザが立体感調整部112を介して視差の増加または減少を指示したとき、単純にこの指示にしたがって画像合成位置を変更する。すなわち、位置シフト部160は適正視差への自動調整機能と、ユーザによる手動調整機能のふたつを有する。
【0077】
視差書込部164は、前述の視差量検出部150のため、または別の用途のために、視差画像を構成する複数の視点画像のいずれかのヘッダ領域に視差量を画素数で書き込む。画像端調整部168は、位置シフト部160によるシフトによって画像端に生じた画素の欠落を埋める。
【0078】
図13の第3の立体画像処理装置100は、デプス情報付画像を入力とする。第3の立体画像処理装置100は、適正視差が実現するようデプスを調整する。また、前述の「視差補正」機能をもつ。視差制御部170の歪処理部174は、補正マップ保持部176に保存された補正マップにしたがい、後述の要領で歪変換を実施する。歪変換後のデプス情報と画像は二次元画像生成部178へ入力され、ここで視差画像が生成される。この二次元画像生成部178は、第1の立体画像処理装置100の二次元画像生成部142とは異なり、ここで適正視差が考慮される。デプス情報付画像も画像としては二次元であるため、二次元画像生成部178は、図示しないが内部に第2の立体画像処理装置100の位置シフト部160に似た機能をもち、デプス情報にしたがって画像内の画素を水平方向にずらし、立体感を生成する。このとき、後述の処理により、適正視差が実現される。
【0079】
以上の構成における各立体画像処理装置100の各部の処理動作とその原理は以下のとおりである。
図14(a)、図14(b)は、第1の立体画像処理装置100の立体感調整部112による適正視差の特定のプロセスにおいてそれぞれ表示された左眼画像200、右眼画像202を示す。それぞれの画像には5個の黒丸が表示されており、上にいくほど近置かつ大きな視差、下へいくほど遠置かつ大きな視差が付けられている。
【0080】
図15はこれら5個の黒丸を表示したとき、ユーザ10に感知される距離感を模式的に示す。ユーザ10はこれら5個の距離感の範囲を「適正」と応答しており、この応答を指示取得部122が取得する。同図では、視差が異なる5個の黒丸が同時に、または順に表示され、許容できる視差であるか否かをユーザ10が入力していく。一方、図16では表示自体は1個の黒丸で行うが、その視差を連続的に変更し、ユーザ10が遠置と近置それぞれの方向において許容する限界にきたとき、応答する。応答は通常のキー操作、マウス操作、音声による入力等、それ自体は既知の技術を利用すればよい。
【0081】
図15、図16のいずれの場合でも、指示取得部122は適正視差を範囲として取得でき、その近置側および遠置側の限界視差が決まる。近置最大視差は、自分に最も近い位置に見える点に許す近さに対応する視差、遠置最大視差は、自分から最も遠い位置に見える点に許す遠さに対応する視差である。ただし、一般にはユーザの生理上の問題から近置最大視差をケアすべきことが多く、以下、近置最大視差のみを限界視差とよぶ場合もある。
【0082】
図17は、立体表示される画像が三次元データから取り出される場合において、実際に2視点の視差を調整する原理を示す。まず、ユーザが決めた限界視差を仮配置されたカメラの見込み角に変換する。角度表現をとることにより、表示装置のハードウエアから独立した汎用表現になる。同図のごとく、近置と遠置の限界視差は画素数でM、Nとあらわすことができ、カメラの画角θが表示画面の水平画素数Lに相当するので、限界視差画素数の見込み角である、近置最大見込み角φと遠置最大見込み角ψがθ、M、N、Lであらわされる。
【0083】
tan(φ/2)=Mtan(θ/2)/L
tan(ψ/2)=Ntan(θ/2)/L
次にこの情報を3次元空間内での2視点画像の取り出しに適用する。図18のように、まず基本表現空間T(その奥行きもTと表記)を決める。ここでは、基本表現空間Tはオブジェクトの配置に対する制限から決めるとする。基本表現空間Tの前面である前方投影面30からカメラ配置面、すなわち視点面208までの距離をSとする。TやSはユーザが指定できる。視点は2つあり、これらの光軸交差面210の視点面208からの距離をDとする。光軸交差面210と前方投影面30までの距離をAとする。
【0084】
つぎに、基本表現空間T内での近置および遠置の限界視差をそれぞれP、Qとすると、
E:S=P:A
E:S+T=Q:T−A
が成立する。Eは視点間距離である。いま、視差の付けられていない画素である点Gは両カメラからの光軸K2が光軸交差面210上で交差する位置にあり、光軸交差面210がスクリーン面の位置となる。近置最大視差Pを生む光線K1は前方投影面30上で交差し、遠置最大視差Qを生む光線K3は後方投影面32上で交差する。
【0085】
PとQは、図19のようにφ、ψを用いて、
P=2(S+A)tan(φ/2)
Q=2(S+A)tan(ψ/2)
で表され、結果として、
E=2(S+A)tan(θ/2)・(SM+SN+TN)/(LT)
A=STM/(SM+SN+TN)
が得られる。いま、SとTは既知であるから、こうしてA及びEが自動的に決まり、したがって光軸交差距離Dとカメラ間距離Eが自動的に決まり、カメラパラメータが確定する。カメラ配置決定部132はこれらのパラメータにしたがってカメラの配置を決定すれば、以降投影処理部138、二次元画像生成部142の処理を各カメラからの画像に対して独立してなすことにより、適正視差をもった視差画像が生成および出力できる。以上のごとく、EとAはハードウエアの情報を含んでおらず、ハードウエアに依存しない表現形式が実現される。
【0086】
以降、別の画像を立体表示する際にもこのAまたはDとEを守るようカメラを配置すれば、自動的に適正視差が実現できる。適正視差の特定から理想的な立体表示までのプロセスはすべて自動化できるため、この機能をソフトウエアライブラリとして提供すれば、コンテンツやアプリケーションを作成するプログラマは立体表示のためのプログラミングを意識する必要がない。また、L、M、Nを画素数で表すと、Lは表示範囲を示すので、全画面による表示であるか、画面の一部による表示であるかをLで指示することができる。Lもハードウエアに依存しないパラメータである。
【0087】
図20は4台のカメラ22、24、26、28による4眼式のカメラ配置を示す。正確には、第1のカメラ22と第2のカメラ24の間など、隣接するカメラ間で適正視差になるよう前述のAとEを決めていくべきだが、簡易的な処理としては、より中央に近い第2のカメラ24と第3のカメラ26の間で決めたAおよびEを他のカメラ間に流用してもほぼ同様の効果が得られる。
【0088】
なお、Tはオブジェクトの配置に対する制限としたが、基本的な三次元空間の大きさとしてプログラムにより決められていてもよい。この場合、プログラム全体を通して必ずこの基本表現空間T内にのみオブジェクトを配置することもできるし、効果的な表示のために、ときどき故意にこの空間を飛び出すようにオブジェクトに視差を与えてもよい。
【0089】
別の例として、三次元空間におけるオブジェクトのうち最も近置されるものと最も遠置されるものの座標に対してTを決定してもよく、これを実時間で行えば、必ず基本表現空間Tにオブジェクトが配置できる。オブジェクトをつねに基本表現空間Tに入れることの例外として、「一定時間の位置の平均が基本表現空間T内にあればよい」という緩和条件で運用すれば、短時間の例外を作ることもできる。さらに、基本表現空間Tを定めるオブジェクトを静的なものに限ってもよく、この場合、動的なオブジェクトが基本表現空間Tからはみ出す例外的な動作を与えることができる。さらに別の例として、すでにオブジェクトを配置した空間を基本表現空間の幅Tのサイズに縮める変換を行ってもよいし、既述の操作と組み合わせてもよい。
【0090】
なお、第1の立体画像処理装置100の立体感調整部112がユーザに表示する画像として、二重像がでやすいものにすれば、限界視差は小さめに定まり、他の画像を表示したときの二重像の出現頻度を低下させることができる。二重像が出やすい画像として、オブジェクトと背景との色や明るさが対照的なものが知られており、限界視差を特定する段階、すなわち初期設定の際にはそうした画像を利用すればよい。
【0091】
図21から図36までは、第1の立体画像処理装置100の歪処理部136による処理とその原理を示す。
図21は第1の立体画像処理装置100の補正マップ保持部140に格納された補正マップの一例を概念的に示す。このマップは直接視差を補正するもので、その全体がそのまま視差画像に対応しており、周辺部にいくにしたがって小視差になる。図22はこの補正マップにしたがって歪処理部136がカメラ配置を決め、それを受けたカメラ配置決定部132によるカメラパラメータの操作の結果生じる視差の変化を示す。ふたつのカメラの左右視点位置から正面方向を見るときは「通常視差」が付けられ、一方、正面から大きく外れた方向を見るときは「小視差」が付けられる。実際には、周辺にいくにしたがって、カメラ配置決定部132はカメラ間隔を近づけていく。
【0092】
図23はカメラ配置決定部132が歪処理部136の指示にしたがってカメラの配置を変えて視差を変える別の例を示す。ここでは、ふたつのカメラのうち、左側のカメラのみを移動させながら、画像周辺に向かうにしたがって「通常視差」→「中視差」→「小視差」と視差が変化している。この方法のほうが図22に比べて計算コストが低い。
【0093】
図24は補正マップの別の例を示す。このマップも視差を変更するもので、画像の中央付近は通常視差のまま触れず、それ以外の視差補正領域において視差を徐々に小さくする。図25はカメラ配置決定部132がこのマップにしたがって変化させるカメラ位置を示す。カメラの方向が正面から大きく外れたとき、はじめて左カメラの位置が右カメラへ寄り、「小視差」が付けられている。
【0094】
図26は補正マップの別の例を概念的に示す。このマップは視点からオブジェクトまでの距離感を補正するもので、それを実現するために、カメラ配置決定部132がふたつのカメラの光軸交差距離を調整する。画像周辺に行くにしたがって光軸交差距離を小さくすれば、オブジェクトは相対的に遠置方向へ奥まって見えるため、とくに近置視差を小さくする意味で目的を達する。光軸交差距離を小さくするために、カメラ配置決定部132はカメラの光軸方向を変えればよく、いずれか一方のカメラの向きを変えればよい。図27は、図26のマップによって二次元画像を生成するときの光軸交差位置、または光軸交差面210の変化を示す。画像周辺ほど光軸交差面210がカメラに寄る。
【0095】
図28は距離感に関する別の補正マップ、図29は図28のマップにしたがってカメラ配置決定部132が歪処理部136の指示にしたがって光軸交差面210を変化させる様子を示す。この例では、画像中央領域では補正をせずにオブジェクトを通常位置に配置し、画像周辺領域でオブジェクトの位置を補正する。その目的のために、図29において画像中央付近では光軸交差面210に変化はなく、ある点を超えてから光軸交差面210がカメラへ寄ってくる。図29では、左カメラだけ向きをかえて対応している。
【0096】
図30(a)〜(f)は歪処理部136による別の歪変換を示す。いままでの例と違い、カメラ位置を変えるのではなく、カメラ座標系で三次元空間自体を直接歪ませる。図30(a)〜(f)において、長方形領域はもとの空間の上面図、斜線領域は変換後の空間の上面図を示す。例えば、図30(a)のもとの空間の点Uは、変換後点Vに移る。これはこの点が遠置方向へ移動されたことを意味する。図30(a)では、空間は周辺部へ向かうほど奥行き方向について矢印の方向に押しつぶされ、近置の場合も遠置の場合も、同図の点Wのごとく、一定の距離感に近い距離感をもたされる。その結果、画像周辺部では距離感が揃い、特別に近置されるオブジェクトもなくなり、二重像の問題を解決するとともに、ユーザの生理に適合しやすい表現となる。
【0097】
図30(b)、図30(c)、図30(d)、図30(e)はいずれも画像周辺部で距離感を一定値に近づける変換の変形例を示し、図30(f)はすべての点を遠置方向へ変換する例を示している。
【0098】
図31は、図30(a)の変換を実現するための原理を示す。直方体空間228は、第1のカメラ22と第2のカメラ24の投影処理が行われる空間を含む。第1のカメラ22のビューボリュームは、そのカメラの画角と前方投影面230および後方投影面232で定まり、第2のカメラ24のそれは、そのカメラの画角と前方投影面234および後方投影面236で定まる。歪処理部136はこの直方体空間228に歪変換を施す。原点は直方体空間228の中心とする。多眼式の場合はカメラが増えるだけで変換原理は同じである。
【0099】
図32は歪変換の一例で、Z方向の縮小変換を採用している。実際には空間内の個々のオブジェクトに対して処理を行う。図33はこの変換を視差補正マップになぞらえて表現したもので、Y軸上が通常視差であり、Xの絶対値が増えるほど視差が小さくなり、X=±Aが視差なしとなる。ここではZ方向のみの縮小変換なので、変換式は以下のとおりである。
【0100】
【数1】

Figure 0003702243
変換を図34で説明する。まず、X≧0かつZ≧0の範囲を考える。点(X0,Y0,Z0)が縮小処理により点(X0,Y0,Z1)に移動したとき、縮小率Szは、
Figure 0003702243
である。Cの座標は(X0,Y0,0)でDの座標は(X0,Y0,B)である。
【0101】
Eは直線と平面の交点であり、座標を(X0,Y0,Z2)とすると、Z2は下のように求めることができる。
【0102】
Z=B−X×B/A (平面)
X=X0,Y=Y0 (直線)
Z2=B−X0×B/A
したがって、
Figure 0003702243
Xに対して一般に、
Sz=1−X/A
となる。XとZの他の範囲についても同様の計算を行うと、以下の結果が得られ、変換が検証できる。
【0103】
X≧0のとき、Sz=1−X/A
X<0のとき、Sz=1+X/A
図35は歪変換の別の例を示す。より厳密にはカメラから放射状に撮影が行われることを考慮し、X軸、Y軸方向の縮小処理も組み合わせている。ここでは、ふたつのカメラの中心をカメラ位置の代表として変換を行う。変換式は以下の通りである。
【0104】
【数2】
Figure 0003702243
図36はこの変換を検証する。ここでも、X≧0かつZ≧0の範囲を考える。点(X0,Y0,Z0)が縮小処理により点(X1,Y1,Z1)に移動したとき、縮小率Sx、Sy、Szは、
Figure 0003702243
となる。Eは平面と直線の交点なので、前述と同様Sx、Sy、Szを求めることができる。
【0105】
なお、以上のように変換後の空間を平面の集合で表すと、面同士の接線を境に処理が変化し、場合により違和感が生じうる。その場合は曲面で接続するか、曲面だけで空間を構成してもよい。計算は曲面と直線の交点Eを求めるものに変わるだけである。
【0106】
また、以上の例では、縮小率は同一直線CD上では同じとなるが、重み付けを行ってもよい。例えばSx、Sy、Szに、カメラからの距離Lに対する重み付け関数G(L)をかければよい。
【0107】
図37から図40までは、第3の立体画像処理装置100の歪処理部174による処理とその原理を示す。
図37は第3の立体画像処理装置100に入力されたデプス情報付画像のデプスマップを示し、ここではデプスの範囲がK1〜K2の値をもつとする。ここでは近置のデプスを正、遠置のデプスを負で表す。
【0108】
図38は元のデプス範囲240と変換後のデプス範囲242の関係を示す。デプスは画像周辺部に行くにしたがって一定値に近づく。歪処理部174はこの補正にしたがうようデプスマップを変換する。垂直方向に視差をもたせる場合も同様である。この変換もZ方向の縮小のみなので、以下の式で表現できる。
【0109】
【数3】
Figure 0003702243
なお、SzはXの値により場合分けされ、
X≧0のとき、Sz=1−2X/L
X<0のとき、Sz=1+2X/L
となる。以上の変換により、図39に示す新たな要素をもつ新たなデプスマップが生成される。
【0110】
図40はデプスマップに対する別の歪変換の原理を示す。空間は、より厳密にはユーザ10から放射状に観察されるので、X軸、Y軸方向の縮小処理も組み合わせている。ここでは、眼間中心を観察位置としている。具体的な処理は図36の場合と同じ式になる。なお、もともとのデプスマップはZ値しか持たないが、この計算を行う場合はX値とY値も保持することになる。Z値はX方向あるいはY方向の画素シフト量に変換されるが、X値とY値はそれらに対するオフセット値として保持すればよい。
【0111】
いずれにしても、歪処理部174で変換されたデプスマップともとの画像は二次元画像生成部178へ入力され、ここで適正視差になるよう水平方向にシフトした合成処理が行われる。その詳細は後述する。
【0112】
図41〜図51は、第2の立体画像処理装置100の位置シフト部160、およびその延長と把握できる第3の立体画像処理装置100の二次元画像生成部178の処理を示す。
図41は位置シフト部160によるふたつの視差画像の合成位置のシフト原理を示す。同図のごとく、初期状態では右眼画像Rと左眼画像Lの位置は一致している。しかし、同図上部のごとく左眼画像Lを相対的に右へシフトすると、近置点の視差は増加し、遠置点の視差は減少する。逆に、同図下部のごとく左眼画像Lを相対的に左へシフトすると、近置点の視差は減少し、遠置点の視差は増加する。
【0113】
以上が視差画像のシフトによる視差調整の本質である。画像のシフトは一方であってもよいし、両方を互いに逆方向にシフトしてもよい。またこの原理から、立体表示方式は、メガネ方式やメガネなし方式を問わず、視差を利用している全ての方式に適用できることがわかる。多視点映像や垂直方向の視差に対しても同様の処理が可能である。
【0114】
図42はシフト処理を画素レベルで示す。左眼画像200と右眼画像202には、ともに第1四角形250と第2四角形252が写っている。第1四角形250には近置視差がついており、その視差量を正数であらわすと、「6画素」となる。これに対し第2四角形252は遠置視差がついており、その視差量を負数であらわすと、「−6画素」となる。ここで、この視差量をそれぞれF2、F1とする。
【0115】
一方、ユーザが保有する表示装置の適正視差がJ1〜J2であることが分かったとする。位置シフト部160は両画像の合成開始位置を互いに(J2−F2)画素シフトさせる。図43はそのシフトの終了後の状態で、いま、F1=−6、F2=6であり、また、J1=−5、J2=4であったとすると、合成開始位置は互いに−2画素、つまり遠置方向に全体がシフトする方向にずらされることになる。最終的な視差量は図43のごとく、E1=−8、E2=4となり、少なくとも近置方向に関して限界視差内に収まる。一般に遠置方向と比較して、近置方向の二重像の方が違和感が強いとされ、かつ被写体は近置方向に配置された状態で撮影されることが多いので、基本的に近置方向の視差を限界内に収めることが望ましい。以下に処理例を示す。
【0116】
1.近置点が限界視差外で、遠置点が限界視差内の場合は、近置点を限界視差点にシフトする。ただし、遠置点の視差が眼間距離に到達すれば処理をやめる。 2.近置点が限界視差外で、遠置点が限界視差外の場合は、近置点を限界視差点にシフトする。ただし、遠置点の視差が眼間距離に到達すれば処理をやめる。 3.近置点も遠置点も限界視差内の場合は処理しない。
4.近置点が限界視差内で、遠置点が限界視差外の場合は、遠置点を限界視差点にシフトするが、処理の途中で近置点が限界視差点に到達すれば処理をやめる。
【0117】
図44は合成位置のシフトによる画像端の欠落を示す。ここでは左眼画像200と右眼画像202のシフト量が1画素であり、左眼画像200の右端と右眼画像202の左端にそれぞれ1画素幅の欠落部分260が生じる。画像端調整部168はこのとき、図44のように画像端の画素列を複製して水平画素数を補償する。
【0118】
これ以外の方法として、欠落部分260は黒または白など特定の色で表示してもよいし、非表示にしてもよい。さらに初期画像のサイズと同じになるように切り出しや付け加え処理を施してもよい。また、予め初期画像のサイズを実際の表示サイズより大きくしておき、欠落部分260が表示に影響しないよう配慮してもよい。
【0119】
図45は第2の立体画像処理装置100による視差の手動調整の流れである。同図のごとく、まず視差画像として左右画像が人手で作成され(S10)、これがネットワークその他のルートで配布される(S12)。これを第2の立体画像処理装置100が受け取り(S14)、この図の例では、まずはそのままシフトなしの通常の状態で画像を合成して表示する(S16)。すなわち、ここでは適正視差がまだ取得されていない場合や位置シフト部160を動作させていない場合を考えている。つづいて、立体表示された視差画像に対してユーザが立体感調整部112を介して視差の調整を指示し、これを位置シフト部160が「手動調整モード」で受け、画像合成位置を調整して表示する(S18)。なお、S10とS12は画像クリエータの手続270、S14以降は第2の立体画像処理装置100の手続272である。また、図示しないが、このシフト量をヘッダに記録し、次回から参照して合成すれば、再調整の手間が省ける。
【0120】
図46は第2の立体画像処理装置100による自動調整の流れを示す。画像クリエータの手続270である、左右画像の生成(S30)、画像配布(S32)は図45と同じである。また、第2の立体画像処理装置100の手続272のうち、画像受取(S34)も同様である。つぎに、視差量検出部150のマッチング部158によって視差画像間に予め付けられている視差、とくに最大視差を検出し(S36)、一方、視差情報保持部120から適正視差、とくに限界視差を取得する(S38)。この後、位置シフト部160が前述の処理によって限界視差を満たすよう画像の合成位置をシフトし(S40)、視差書込部164、画像端調整部168、フォーマット変換部116による処理を経て立体表示される(S42)。
【0121】
図47は、第2の立体画像処理装置100によるさらに別の自動調整の流れを示す。画像クリエータの手続270で左右画像の生成(S50)した後、この時点で最大視差を検出して(S52)視差画像のいずれかの視点画像のヘッダへ記録しておく(S54)。この検出は対応点マッチングで実施してもよいが、クリエータが手作業で視差画像を生成したときは、その編集過程で当然に既知であるため、これを記録すればよい。この後、画像を配布する(S56)。
【0122】
一方、第2の立体画像処理装置100の手続272のうち、画像受取(S58)は図46と同様である。つぎに、視差量検出部150のヘッダ検査部156によって前述の最大視差をヘッダから読み出す(S60)。一方、視差情報保持部120から限界視差を取得し(S62)、以下の処理S64、S66は図46の処理S40、S42とそれぞれ同じである。この方法によれば、最大視差を計算する必要がない。また、画像全体に適切な立体感を実現できる。さらに、シフト量はヘッダに記録できるため、原画像自体を損なうおそれがない。なお、図示しないが、図46でも検出された最大視差をヘッダに記録すれば、つぎからは図47の手続にしたがって処理することができる。
【0123】
なお、多眼式でも同様の処理が可能で、それぞれ隣り合う視点画像間の視差量に対して同様の処理を行えばよい。ただし、実際にはそれら複数の視点画像間の視差のうちの最大の視差によって全視点画像間の「最大視差」とみなし、合成位置のシフト量を決めてもよい。
【0124】
ヘッダ情報は多視点画像の少なくともひとつにあればよいとしたが、多視点画像が1枚の画像に合成されている場合はその画像のヘッダを利用すればよい。
【0125】
さらに、すでに合成済みの画像が配布される場合もあるが、その場合はいちど逆変換処理で画像を分離し、合成位置シフト量を計算して再合成するか、それと結果が同じになるよう画素の並べ替え処理を行えばよい。
【0126】
図48〜図51は、合成位置のシフトをデプス情報付画像について行う処理を示す。これは第3の立体画像処理装置100の二次元画像生成部178にて行われる。
図48、図49はそれぞれデプス情報付画像を構成する平面画像204とデプスマップである。ここでは近置デプスを正、遠置デプスを負で表している。オブジェクトとして第1四角形250、第2四角形252、第3四角形254が存在し、第1四角形250はデプス「4」、第2四角形252は「2」、第3四角形254は「−4」である。第1四角形250は最近置点、第2四角形252は中間近置点、第3四角形254が最遠置点にある。
【0127】
二次元画像生成部178は、もとの平面画像204を基礎として、まず、各画素をデプスマップの値分だけシフトさせる処理を行い、他方の視点画像を生成する。基準を左眼画像とすると、もとの平面画像204はそのまま左眼画像となる。第1四角形250を左に4画素、第2四角形252を左に2画素、第3四角形254を右に4画素シフトし、図50のごとく、右眼画像202が作成される。画像端調整部168は、オブジェクトの移動による画素情報の欠落部分260を視差が「0」である、背景と判断される近接画素によって埋める。
【0128】
つづいて二次元画像生成部178は、適正視差を満たすデプスを計算する。デプスの範囲をK1〜K2とし、各画素のデプス値をGxyとすると、デプスマップは図37においてHxyをGxyへ変更した形になる。また、ユーザが保有する表示装置の適正視差がJ1〜J2であることが分かったとする。この場合、そのデプスマップにおいて、各画素のデプス値Gは以下のように変換され、新しいデプス値Fxyが得られる。
【0129】
Fxy=J1+(Gxy−K1)×(J2−J1)/(K2−K1)
前述の例では、K1=−4、K2=4であり、また、J1=−3、J2=2であったとすると、この変換式により、図49のデプスマップは図51のデプスマップへ変換される。すなわち、「4」は「2」へ、「2」は「1」へ、「−4」は「−3」へそれぞれ変換される。K1とK2の間の中間値は、J1とJ2の間に変換される。例えば第2四角形252はGxy=2で、Fxy=0.75となる。Fxyが整数にならない場合は、四捨五入や近置視差が小さくなるような処理を施せばよい。
【0130】
なお、上述の変換式は線形変換の例であるが、さらにGxyに対する重み付け関数F(Gxy)をかけたり、その他いろいろな非線形変換も考えられる。また、もとの平面画像204から、オブジェクトを互いに逆方向にシフトして新たに左右画像を生成することもできる。多眼式の場合は同様の処理を複数回行い、多視点画像を生成すればよい。
【0131】
以上が実施の形態に係る立体画像処理装置100の構成および動作である。 立体画像処理装置100は装置として説明したが、これはハードウエアとソフトウエアの組合せでもよく、ソフトウエアのみでも構成できる。その場合、立体画像処理装置100の任意の部分をライブラリ化して各種プログラムから呼びだし可能にすると利便性が高い。プログラマは立体表示の知識が必要となる部分のプログラミングをスキップできる。ユーザにとっては、ソフトウエアやコンテンツによらず、立体表示に関する操作、すなわちGUIが共通になり、設定した情報は他のソフトウエアでも共有できるため再設定の手間が省ける。
【0132】
なお、立体表示に関する処理ではなく、情報を複数のプログラム間で共有するだけでも有用である。各種プログラムはその情報を参照して画像の状態を決定できる。共有される情報の例は、前述の立体画像処理装置100の情報取得部118で取得される情報である。この情報を図示しない記録部または補正マップ保持部140などに保持しておけばよい。
【0133】
図52〜図54は、以上の立体画像処理装置100をライブラリとして利用する一例を示す。図52は立体表示ライブラリ300の用途を示す。立体表示ライブラリ300は複数のプログラムA302、プログラムB304、プログラムC306などから関数を呼び出す形で参照される。パラメータファイル318には前述の情報のほか、ユーザの適正視差などが格納されている。立体表示ライブラリ300はAPI(アプリケーションプログラムインタフェイス)310を介して複数の装置A312、装置B314、装置C316などで利用される。
【0134】
プログラムA302等の例として、ゲーム、いわゆるWeb3Dと呼ばれる三次元アプリケーション、三次元デスクトップ画面、三次元地図、二次元画像である視差画像のビュア、デプス情報付画像などのビュアが考えられる。ゲームの中でも、当然ながら座標の使い方が違うものがあるが、立体表示ライブラリ300はそれにも対応できる。
【0135】
一方、装置A312等の例として、2眼や多眼のパララックスバリア式、シャッタめがね方式、偏光めがね方式など、視差を利用する任意の立体表示装置である。
【0136】
図53は三次元データソフト402に立体表示ライブラリ300が組み込まれた例を示す。三次元データソフト402はプログラム本体404と、そのために適正視差を実現する立体表示ライブラリ300と、撮影指示処理部406を備える。プログラム本体404はユーザインタフェイス410を介してユーザと連絡する。撮影指示処理部406は、ユーザの指示にしたがって、プログラム本体404の動作中の所定の場面を仮想的にカメラ撮影する。撮影された画像は画像記録装置412に記録される。また、立体表示装置408へ出力される。
【0137】
たとえば三次元データソフト402がゲームソフトであるとする。その場合、ユーザはゲーム中は立体表示ライブラリ300によって適切な立体感を体験しながらゲームを実行できる。ゲーム中、ユーザが記録に残したい場合、たとえば、対戦型戦闘ゲームで完全勝利をおさめたとき、ユーザインタフェイス410を介して撮影指示処理部406へ指示を出し、その場面を記録する。その際、立体表示ライブラリ300を利用し、後に立体表示装置408で再生したときに適正視差となるよう視差画像が生成され、これが画像記録装置412の電子アルバム等へ記録される。なお、記録を視差画像という二次元画像で行うことにより、プログラム本体404の有する三次元データ自体は流出せず、著作権保護の面にも配慮することができる。
【0138】
図54は、図53の三次元データソフト402をネットワーク利用型のシステム430へ組み込んだ例を示す。
ゲーム機432は図示しないネットワークを介し、サーバ436と、ユーザ端末434に接続される。ゲーム機432は、いわゆるアーケードゲーム用で、通信部442、三次元データソフト402およびゲームをローカルに表示する立体表示装置440を備える。三次元データソフト402は図53のものである。三次元データソフト402から立体表示装置440へ表示される視差画像は立体表示装置440について予め最適設定されている。三次元データソフト402による視差の調整は、後述のように通信部442を介してユーザへ画像を送信する際に利用される。ここで利用する表示装置は、視差を調整して立体画像を生成する機能を備えていればよく、必ずしも立体表示ができる装置でなくてもよい。
【0139】
ユーザ端末434は、通信部454、立体画像を見るためのビュアプログラム452および立体画像をローカルに表示する任意のサイズおよびタイプの立体表示装置450を備える。ビュアプログラム452には立体画像処理装置100が実装されている。
【0140】
サーバ436は、通信部460、ゲームに関連してユーザが仮想的に撮影した画像を記録する画像保持部462、およびユーザの適正視差情報、ユーザのメールアドレスその他の個人情報などをユーザと対応づけて記録するユーザ情報保持部464を備える。サーバ436は例えばゲームの公式サイトとして機能し、ゲーム実行中にユーザが気に入った場面や名勝負の動画または静止画を記録する。立体表示は動画、静止画のいずれでも可能である。
【0141】
以上の構成における画像撮影の一例は以下の要領で行われる。ユーザは予めユーザ端末434の立体表示装置450で立体表示を行い、立体画像処理装置100の機能をもとに適正視差を取得し、これを通信部454を介してサーバ436へ通知し、ユーザ情報保持部464へ格納してもらう。この適正視差は、ユーザの保有する立体表示装置450のハードウエアに関係のない汎用的な記述になっている。
【0142】
ユーザは任意のタイミングでゲーム機432によってゲームをする。その間、立体表示装置440には最初に設定されていた視差、またはユーザが手動調整した視差による立体表示がなされる。ゲームのプレイ中、またはリプレイ中、ユーザが画像の記録を希望すると、ゲーム機432の三次元データソフト402に内蔵された立体表示ライブラリ300が、ふたつの通信部442、460を介してサーバ436のユーザ情報保持部464からこのユーザの適正視差を取得し、それに合わせて視差画像を生成し、再びふたつの通信部442、460を介して画像保持部462へ仮想的に撮影された画像に関する視差画像を格納する。ユーザは自宅へ帰ったのち、この視差画像をユーザ端末434へダウンロードすれば、所望の立体感で立体表示ができる。その際も、ビュアプログラム452のもつ立体画像処理装置100により、視差の手動調整は可能である。
【0143】
以上、この応用例によれば、本来、表示装置のハードウエアごと、ユーザごとに設定しなければならない立体感に関するプログラミングが立体画像処理装置100および立体表示ライブラリ300に集約されており、ゲームソフトのプログラマは立体表示に関する複雑な要件を一切気にする必要がない。これはゲームソフトに限らず、立体表示を利用する任意のソフトウエアについても同様であり、立体表示を利用するコンテンツやアプリケーションの開発の制約を解消する。したがって、これらの普及を飛躍的に促進することができる。
【0144】
とくに、もともと三次元のCGデータが存在するゲームその他のアプリケーションの場合、従来は的確な立体表示をコーディングすることが困難であることも大きな原因となって、せっかく三次元データをもちながら、それを立体表示に利用しなかったことも多い。実施の形態に係る立体画像処理装置100または立体表示ライブラリ300によれば、そうした弊害を除去でき、立体表示アプリケーションの充実化に寄与することができる。
【0145】
なお、図54ではユーザの適正視差をサーバ436に登録したが、ユーザはその情報を記録したICカードなどを持参してゲーム機432を利用してもよい。このカードに、このゲームに関する得点や気に入った画像を記録してもよい。
【0146】
以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。以下、そうした例を挙げる。
【0147】
第1の立体画像処理装置100は、三次元データを入力することにより、高い精度で処理が可能である。しかし、三次元データをいったんデプス情報付画像へ落とし、これに対して第3の立体画像処理装置100を利用して視差画像を生成してもよい。場合により、そのほうが計算コストが低いことがある。同じように複数の視点画像を入力する際も、高精度の対応点マッチングを用いてデプスマップを作ることも可能で、このようにしてデプス情報付画像へ落とし、これに対して第3の立体画像処理装置100を利用して視差画像を生成してもよい。
【0148】
第1の立体画像処理装置100において、カメラ仮配置部130を立体画像処理装置100の構成としたが、これは立体画像処理装置100の前処理であってもよい。カメラの仮配置までは、適正視差に関係なく処理できるためである。同様に、第1、第2、第3の立体画像処理装置100を構成する任意の処理ユニットを立体画像処理装置100の外部へ出すことも可能であり、立体画像処理装置100の構成の自由度の高さは当業者に理解されるところである。
【0149】
実施の形態では、視差の制御を水平方向に行う場合を説明したが、同様の処理は垂直方向についても実施できる。
【0150】
立体表示ライブラリ300や立体画像処理装置100の動作中は、文字データを拡大処理するユニットを設けてもよい。たとえば水平2視点による視差画像の場合、ユーザの目に見える画像の水平解像度は1/2になる。その結果、文字の可読性が低下しうるので、水平方向へ2倍に文字を引き延ばす処理が有効である。垂直方向にも視差がある場合、同様に垂直方向へ文字を引き延ばすことも有用である。
【0151】
立体表示ライブラリ300や立体画像処理装置100の動作中は、表示している画像に「3D」などの文字やマークを入れる「動作中表示部」を設けてもよい。その場合、ユーザは視差の調整が可能な画像であるか否かを知ることができる。
【0152】
立体表示/通常表示の切替ユニットを設けてもよい。このユニットはGUIを含み、ユーザが所定のボタンをクリックすると、表示が立体表示から通常の二次元表示に切り替わり、その反対も可能な構成とすれば便利である。
【0153】
情報取得部118は必ずしもユーザ入力により情報を取得するのではなく、プラグアンドプレイなどの機能により自動的に取得できる情報があってもよい。
【0154】
実施の形態では、EとAを導出する方法をとったが、これらを固定し、他のパラメータを導出する方法であってもよく、変数の指定は自由である。
【0155】
【発明の効果】
本発明によれば、以下のような効果がある。
1.人の生理に適合しやすい立体画像を生成または表示できる。
2.表示対象画像が変わってもユーザに適切な立体画像を生成または表示できる。
3.簡単な操作で立体表示の立体感を調整できる。
4.適切な立体表示が可能なコンテンツまたはアプリケーションづくりに際し、プログラマの負担を軽減できる。
5.立体表示を最適化しようとするユーザの手間が軽減される。
6.通常、プラグアンドプレイ機能の対象にならない立体感調整やヘッドトラッキング情報を容易に実現でき、後付のパララックスバリアのように、原理上プラグアンドプレイができない装置についても同様である。
【図面の簡単な説明】
【図1】 理想的な立体視ができているユーザ、スクリーン、再生オブジェクト14の位置関係を示す図である。
【図2】 図1の状態を実現する撮影系の例を示す図である。
【図3】 図1の状態を実現する撮影系の別の例を示す図である。
【図4】 図1の状態を実現する撮影系の別の例を示す図である。
【図5】 第1の立体画像処理装置に利用するモデル座標系を示す図である。
【図6】 第1の立体画像処理装置に利用するワールド座標系を示す図である。
【図7】 第1の立体画像処理装置に利用するカメラ座標系を示す図である。
【図8】 第1の立体画像処理装置に利用するビューボリュームを示す図である。
【図9】 図8のボリュームの透視変換後の座標系を示す図である。
【図10】 第1の立体画像処理装置に利用するスクリーン座標系を示す図である。
【図11】 第1の立体画像処理装置の構成図である。
【図12】 第2の立体画像処理装置の構成図である。
【図13】 第3の立体画像処理装置の構成図である。
【図14】 図14(a)、図14(b)は、それぞれ、第1の立体画像処理装置の立体感調整部によって表示される左眼画像と右眼画像を示す図である。
【図15】 第1の立体画像処理装置の立体感調整部によって表示される、異なる視差をもつ複数のオブジェクトを示す図である。
【図16】 第1の立体画像処理装置の立体感調整部によって表示される、視差が変化するオブジェクトを示す図である。
【図17】 適正視差が実現される際のカメラ画角、画像サイズ、視差の関係を示す図である。
【図18】 図17の状態を実現する撮影系の位置関係を示す図である。
【図19】 図17の状態を実現する撮影系の位置関係を示す図である。
【図20】 多視点画像を適正視差で生成する際のカメラ配置を示す図である。
【図21】 第1の立体画像処理装置の歪処理部が利用する視差補正マップを示す図である。
【図22】 図21の視差補正マップにしたがって視差画像を生成する際のカメラ視点を示す図である。
【図23】 図21の視差補正マップにしたがって視差画像を生成する際の別のカメラ視点を示す図である。
【図24】 第1の立体画像処理装置の歪処理部が利用する視差補正マップを示す図である。
【図25】 図24の視差補正マップにしたがって視差画像を生成する際のカメラ視点を示す図である。
【図26】 第1の立体画像処理装置の歪処理部が利用する距離感補正マップを示す図である。
【図27】 図26の距離感補正マップにしたがって視差画像を生成する際のカメラ視点を示す図である。
【図28】 第1の立体画像処理装置の歪処理部が利用する別の距離感補正マップを示す図である。
【図29】 図28の距離感補正マップにしたがって視差画像を生成する際のカメラ視点を示す図である。
【図30】 図30(a)、図30(b)、図30(c)、図30(d)、図30(e)、図30(f)は、いずれも第1の立体画像処理装置の歪処理部が三次元空間に処理を施した結果得られる視差分布の上面図である。
【図31】 第1の立体画像処理装置の歪処理部による処理の原理を示す図である。
【図32】 図31の処理を具体的に示す図である。
【図33】 図31の処理を具体的に示す図である。
【図34】 図31の処理を具体的に示す図である。
【図35】 第1の立体画像処理装置の歪処理部による処理の別の例を示す図である。
【図36】 図35の処理を具体的に示す図である。
【図37】 デプスマップを示す図である。
【図38】 第3の立体画像処理装置の歪処理部による処理の例を示す図である。
【図39】 第3の立体画像処理装置の歪処理部による処理によって生成されたデプスマップを示す図である。
【図40】 第3の立体画像処理装置の歪処理部による処理の別の例を示す図である。
【図41】 第2の立体画像処理装置の二次元画像生成部による処理の例を示す図である。
【図42】 視差画像の例を示す図である。
【図43】 第2の立体画像処理装置の二次元画像生成部によって合成位置がシフトされた視差画像を示す図である。
【図44】 第2の立体画像処理装置の画像端調整部の処理を示す図である。
【図45】 第2の立体画像処理装置の処理を示す図である。
【図46】 第2の立体画像処理装置の別の処理を示す図である。
【図47】 第2の立体画像処理装置の別の処理を示す図である。
【図48】 デプスマップが付加された平面画像を示す図である。
【図49】 デプスマップを示す図である。
【図50】 第2の立体画像処理装置の二次元画像生成部でデプスマップをもとに視差画像を生成する様子を示す図である。
【図51】 第2の立体画像処理装置の二次元画像生成部で補正されたデプスマップを示す図である。
【図52】 実施の形態に係る立体画像処理装置をライブラリ化して利用する様子を示す図である。
【図53】 立体表示ライブラリを三次元データソフトに組み込んだ構成図である。
【図54】 立体表示ライブラリをネットワーク利用型のシステムで利用する様子を示す図である。
【符号の説明】
10 ユーザ、 12 スクリーン、 14 再生オブジェクト、 20 現実のオブジェクト、 22,24,26,28 カメラ、 30 前方投影面、32 後方投影面、 100 立体画像処理装置、 112 立体感調整部、114,152,170 視差制御部、 116 フォーマット変換部、 118 情報取得部、 122 指示取得部、 124 視差特定部、 132 カメラ配置決定部、 136,174 歪処理部、 140,176 補正マップ保持部、 142 二次元画像生成部、 150 視差量検出部、 156 ヘッダ検査部、 158 マッチング部、 160 位置シフト部、 164 視差書込部、 168 画像端調整部、 178 二次元画像生成部、 210光軸交差面、 300 立体表示ライブラリ、 402 三次元データソフト、 406 撮影指示処理部、 430 ネットワーク利用型のシステム、 432 ゲーム機、 434 ユーザ端末、 436 サーバ、 452 ビュアプログラム。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a stereoscopic image processing technique, and more particularly to a method and apparatus for generating or displaying a stereoscopic image based on a parallax image.
[0002]
[Prior art]
In recent years, the lack of network infrastructure has been regarded as a problem. However, the transition to broadband has started, and rather, the number of types and the number of contents that effectively use a wide band are becoming conspicuous. Video has always been the most important means of expression, but most of the efforts so far have been related to improvements in display quality and data compression ratio, and compared to these, technical possibilities to expand the possibilities of expression itself. There is a feeling that such efforts are in the back.
[0003]
Under such circumstances, stereoscopic video display (hereinafter simply referred to as “stereoscopic display”) has been studied in various ways, and has been put into practical use in a limited market where theater applications and special display devices are used. In the future, R & D in this direction will accelerate with the aim of providing more realistic content, and the time will come when individual users can enjoy stereoscopic display at home.
[0004]
[Problems to be solved by the invention]
Under such circumstances, some problems have been pointed out for stereoscopic display. For example, it is difficult to optimize the parallax that causes a three-dimensional effect. Originally, it does not actually project a three-dimensional object, but rather casts the image by shifting it in pixel units with respect to the left and right eyes, and it is not easy to give the artificial three-dimensional effect a natural feeling. Absent.
[0005]
In addition, too much parallax may be a problem, and a viewer of a stereoscopic image (hereinafter also simply referred to as a user) may complain of mild discomfort. Of course, there are various factors such as not only the three-dimensional display but also the situation or sense of surroundings of the scene being displayed is not consistent with the situation. However, empirically, such a problem is easily observed when the parallax is too large, in other words, when the stereoscopic effect is too strong.
[0006]
The above is a human physiological story, but apart from that, there are technical factors that hinder the spread of stereoscopic video content and applications. Although stereoscopic vision is realized by parallax, even if the parallax is expressed by the shift amount of the pixels of the left and right images, the same stereoscopic video may or may not be properly stereoscopically viewed depending on the hardware of the display device. . If the parallax that expresses far away exceeds the interocular distance, stereoscopic viewing is theoretically impossible. Today, as the resolution and screen size of display devices diversify, such as PCs (personal computers), television receivers, and portable devices, the most suitable content for stereoscopic display is created by considering various hardware. Is more difficult, or it is more accurate that no methodology is provided for it.
[0007]
Also, given that methodology, it would be difficult to expect a general programmer to understand it and use it to create content and applications.
[0008]
The present invention has been made in view of such a background, and an object thereof is to generate or display a stereoscopic image that is easily adapted to human physiology. Another object is to generate or display a stereoscopic image suitable for the user even if the display target image or the display device changes. Yet another object is to adjust the stereoscopic effect with a simple operation when a stereoscopic display is being made. Yet another object is to reduce the burden on the programmer when creating contents or applications capable of appropriate stereoscopic display. Still another object is to provide a technology for realizing appropriate stereoscopic display as a business model.
[0009]
[Means for Solving the Problems]
The inventor's knowledge that forms the basis of the present invention is that the appropriate parallax is once separated from the hardware of the display device and the elements such as the distance between the user and the display device (hereinafter collectively referred to as “hardware”). It is in. That is, the general parallax expression is once described in a general form that does not depend on hardware by generalizing the expression of the appropriate parallax with the camera interval and the optical axis crossing position described later. “Hardware-independent” means that reading of hardware information specific to the display device is not necessary in principle, and if this general description is made, the parallax image is based on the appropriate parallax. If desired, the desired three-dimensional display is realized.
[0010]
Providing appropriate parallax for the acquisition of appropriate parallax and providing control for realizing the appropriate parallax in the library, so that general programmers can call this library and be aware of the principles and programming of complex stereoscopic vision. 3D display is realized.
[0011]
Of the various aspects of the present invention, the first group is based on a technique for obtaining an appropriate parallax based on a user response. This technique can be used for “initial setting” of parallax by the user, and once the appropriate parallax is acquired in the apparatus, the appropriate parallax is realized even when another image is displayed. However, this technique is not limited to the initial setting, but is also used for “manual adjustment” in which the user appropriately adjusts the parallax of the image being displayed. The following relates to the first group.
[0012]
The present invention relates to a stereoscopic image processing apparatus, an instruction acquisition unit that acquires a user's response to a stereoscopic image displayed based on a plurality of viewpoint images corresponding to different parallaxes, and based on the acquired response, A parallax identifying unit that identifies appropriate parallax for the user.
[0013]
The instruction acquisition unit is provided as, for example, a GUI (graphical user interface, the same applies hereinafter), and first displays while changing the parallax between viewpoint images. When the user feels the stereoscopic effect he likes, the user inputs that effect by operating a button or the like.
[0014]
A “stereoscopic image” is an image displayed with a stereoscopic effect, and the substance of the data is a “parallax image” in which a plurality of images are given parallax. A parallax image is generally a set of a plurality of two-dimensional images. Each image constituting the parallax image is a “viewpoint image” having a corresponding viewpoint. That is, a parallax image is composed of a plurality of viewpoint images, and when it is displayed, it is displayed as a stereoscopic image. The display of a stereoscopic image is also simply referred to as “stereoscopic display”.
[0015]
“Parallax” is a parameter for producing a three-dimensional effect, and various definitions are possible, but as an example, it can be expressed by a shift amount of a pixel representing the same point between viewpoint images. Hereinafter, in this specification, unless otherwise specified, the definition is followed.
[0016]
The range of the appropriate parallax may be specified. In this case, both ends of the range are referred to as “limit parallax”. The “specific parallax specification” may be performed with a maximum value allowable as a parallax of a nearby object described later.
[0017]
The stereoscopic image processing apparatus of the present invention may further include a parallax control unit that performs processing so that the specified appropriate parallax is realized even when another image is displayed. When another image is a stereoscopic image generated from three-dimensional data as a starting point, the parallax control unit may determine a plurality of viewpoints for generating the stereoscopic image according to the appropriate parallax. More specifically, the distance between a plurality of viewpoints and the intersection position of the optical axes for viewing the object from these viewpoints may be determined. An example of these processes is performed by a camera arrangement determination unit described later. If these processes are performed in real time, the optimum stereoscopic display is always realized.
[0018]
The parallax control unit may perform control so that proper parallax is achieved for a predetermined basic three-dimensional space to be displayed. An example of this processing is performed by a projection processing unit described later.
[0019]
The parallax control unit may perform control so that the appropriate parallax is realized with respect to the coordinates of the closest object and the coordinates of the farthest object in the three-dimensional space. An example of this processing is performed by a projection processing unit described later. The object may be static.
[0020]
“Neighboring” is the line of sight of a camera placed at each of a plurality of viewpoints, that is, before a plane (hereinafter referred to as “optical axis crossing position”) at an optical axis crossing position (hereinafter referred to as “optical axis crossing position”). Indicates a state in which a parallax is stereoscopically viewed. On the contrary, “distant” refers to a state in which a parallax is given so as to be stereoscopically viewed behind the optical axis crossing plane. The closer the parallax of the near object, the closer to the user is sensed, and the larger the parallax of the far object, the farther away from the user. In other words, unless otherwise specified, the parallax is defined as a non-negative value in which the positive and negative are not reversed in the near and far positions, and both the near and far parallaxes are zero at the optical axis crossing plane.
[0021]
Of the object or space to be displayed, the optical axis crossing plane coincides with the screen surface of the display device for a portion having no parallax. This is because the line of sight seen from both the left and right eyes reaches the same position in the screen plane, that is, intersects the pixels where no parallax is applied.
[0022]
When the another image is a plurality of two-dimensional images to which parallax has already been given, the parallax control unit may determine the horizontal shift amount of the plurality of two-dimensional images according to the appropriate parallax. In this aspect, the input for stereoscopic display is not generated with a high degree of freedom starting from three-dimensional data, but is already generated parallax images, and the parallax is fixed. In this case, it is not possible to return to the original three-dimensional space or the real space where the image was actually taken and change the camera position to redraw or re-shoot. For this reason, the parallax is adjusted by shifting the viewpoint images constituting the parallax image or the pixels included in the viewpoint images horizontally.
[0023]
When the another image is a planar image to which depth information is given (hereinafter also referred to as “image with depth information”), the parallax control unit may adjust the depth according to the appropriate parallax. An example of this processing is performed by a two-dimensional image generation unit of a third stereoscopic image processing apparatus described later.
[0024]
The stereoscopic image processing apparatus further includes a parallax holding unit that records appropriate parallax, and the parallax control unit is activated at a predetermined timing, for example, when the apparatus is started, or when the apparatus has a stereoscopic image processing function or a part thereof. For example, the appropriate parallax may be read and processing may be performed using the value as an initial value. That is, “startup” may have a hardware meaning or a software meaning. According to this aspect, once the user determines an appropriate parallax, automatic processing for adjusting the stereoscopic effect is realized thereafter. This is a function called “initial setting of appropriate parallax”.
[0025]
Another aspect of the present invention relates to a method for processing a stereoscopic image, the step of displaying a plurality of stereoscopic images with different parallax to a user, and specifying an appropriate parallax for the user based on a user response to the displayed stereoscopic image Steps.
[0026]
Still another aspect of the present invention also relates to a stereoscopic image processing method, which includes a step of acquiring appropriate parallax that depends on a user, and a step of processing an image before display so that the acquired appropriate parallax is realized. Here, “acquisition” may be a process of positively specifying or a process of reading from the parallax holding unit or the like.
[0027]
If each of these steps is implemented as a function of a library for stereoscopic display and the function of this library can be called as a function from multiple programs, the programmer must write the program in consideration of the hardware of the stereoscopic display device. Is effective.
[0028]
The second group of the present invention is based on a technique for adjusting parallax based on a user instruction. This technique can be used for “manual adjustment” of parallax by the user, and the user can change the stereoscopic effect of the displayed image as appropriate. However, this technique is not limited to manual adjustment, and can also be used to automatically adjust the parallax of the image by reading the above-described appropriate parallax when stereoscopically displaying a certain image. The difference from the automatic adjustment of the first group is that the automatic adjustment of the second group acts on a two-dimensional parallax image or an image with depth information. Use a group of technologies. The following relates to the second group.
[0029]
An aspect of the present invention relates to a stereoscopic image processing apparatus, an instruction acquisition unit that acquires a user instruction for a stereoscopic image displayed from a plurality of viewpoint images, and a parallax amount between the plurality of viewpoint images according to the acquired instruction And a parallax control unit that changes. An example of this processing is shown in FIG. 45 described later, and is a typical example of “manual adjustment”. If the user's instruction is provided by a simple GUI such as button operation, it is highly convenient.
[0030]
Another aspect of the present invention also relates to a stereoscopic image processing device, and relates to a parallax amount detection unit that detects a first parallax amount that occurs when a stereoscopic image is displayed from a plurality of viewpoint images, and the first parallax amount is allowed by a user. A parallax controller that changes the parallax amount between the plurality of viewpoint images so as to fall within a range of a second parallax amount that is a parallax amount. This is a typical example of “automatic adjustment”, and the above-described appropriate parallax can be used as the second parallax amount. An example of this processing is shown in FIG. 46 described later.
[0031]
The parallax amount detection unit detects the maximum value of the first parallax amount, and the parallax control unit changes the parallax amount between the viewpoint images so that the maximum value does not exceed the maximum value of the second parallax amount. Also good. In order to avoid excessive stereoscopic effect due to excessive parallax, the intent is to protect the maximum value of parallax, that is, limit parallax. The maximum value here may be considered as the maximum value on the near side.
[0032]
The parallax amount detection unit calculates the corresponding point matching between the plurality of viewpoint images to detect the first parallax amount, or the first parallax amount recorded in advance in any header of the plurality of viewpoint images. It may be detected. An example of these processes is shown in FIG. 47 described later.
[0033]
The parallax control unit may change the amount of parallax between the plurality of viewpoint images by shifting the synthesis position of the plurality of viewpoint images. This is common to FIGS. The shift of the composition position is a horizontal or vertical shift in units of pixels or the entire image. When the input is an image with depth information, the parallax control unit may change the parallax amount by adjusting the depth information.
[0034]
Another aspect of the present invention relates to a stereoscopic image processing method, a step of obtaining a user instruction for a stereoscopic image displayed based on a plurality of viewpoint images, and a parallax amount between the plurality of viewpoint images according to the instruction Changing.
[0035]
Another aspect of the present invention also relates to a stereoscopic image processing method, the step of detecting a first parallax amount that occurs when displaying a stereoscopic image from a plurality of viewpoint images, and the first parallax amount is an allowable parallax amount of a user And changing the amount of parallax between the plurality of viewpoint images so as to fall within the range of the second amount of parallax.
[0036]
These steps may be implemented as functions of a stereoscopic display library, and the functions of this library may be called as functions from a plurality of programs.
[0037]
The third group of the present invention is based on a technique for correcting parallax based on the position in the image. This “automatic correction” acts to reduce the user's uncomfortable feeling or refusal to stereoscopic display, and can be used in combination with the technologies of the first and second groups. In general, at the time of stereoscopic display, technical or physiological problems are pointed out, such as closer to the edge of the image, a plurality of viewpoint images are observed to be shifted and a sense of incongruity is likely to be produced. In the third group, this problem is reduced by reducing the parallax in a portion close to the image edge or adjusting the parallax so that the object moves from the near side to the far side. The following relates to the third group.
[0038]
An aspect of the present invention relates to a stereoscopic image processing apparatus, and maintains a parallax control unit that corrects parallax between a plurality of viewpoint images for displaying a stereoscopic image, and a correction map that the parallax control unit should refer to during the processing. The correction map is described so that the parallax is corrected based on the position in the viewpoint image. Examples of the correction map include a parallax correction map and a distance sense correction map.
[0039]
For example, the parallax control unit reduces the parallax at the peripheral portions of the plurality of viewpoint images, or changes the parallax so that the object is sensed further from the user. The parallax control unit may change the parallax by selectively performing processing on any of the plurality of viewpoint images.
[0040]
When multiple viewpoint images are generated from three-dimensional data, that is, when the viewpoint image can be generated by returning to the three-dimensional space, the parallax control unit controls the camera parameters to generate the parallax when generating the multiple viewpoint images. May be changed. Camera parameters include the distance between the left and right cameras, the angle at which an object is viewed from the camera, or the optical axis crossing position.
[0041]
Similarly, when a plurality of viewpoint images are generated from three-dimensional data, the parallax control unit may change the parallax by distorting the three-dimensional space itself in, for example, the world coordinate system when generating the plurality of viewpoint images. . On the other hand, when a plurality of viewpoint images are generated from an image with depth information, the parallax control unit may change the parallax by manipulating the depth information.
[0042]
Another aspect of the present invention relates to a stereoscopic image processing method, the step of acquiring a plurality of viewpoint images for displaying a stereoscopic image, and a parallax between the acquired viewpoint images based on positions in the viewpoint images. And changing steps. These steps may be implemented as functions of a stereoscopic display library, and the functions of this library may be called as functions from a plurality of programs.
[0043]
The fourth group of the present invention relates to a technology that provides the first to third groups and related functions as a software library, reduces the burden on programmers and users, and promotes the spread of stereoscopic image display applications. The following relates to the fourth group.
[0044]
An aspect of the present invention relates to a stereoscopic image processing method, which stores information related to stereoscopic image display on a memory, shares the stored information among a plurality of different programs, and any of these programs is a stereoscopic image. When displaying the image, the state of the image to be output is determined with reference to the stored information. An example of the state of the image is how much parallax is given to the parallax image.
[0045]
The “held information” may include information on any of the format of an image input to the stereoscopic image display device, the display order of viewpoint images, and the amount of parallax between viewpoint images. In addition to sharing the stored information, a process unique to stereoscopic image display may be shared by a plurality of programs. An example of “stereoscopic image display specific processing” is processing for determining stored information. Another example is a process related to a graphical user interface for determining an appropriate parallax, a display process for a parallax adjustment screen that supports realization of an appropriate parallax state, a process for detecting and tracking a user's head position, and a stereoscopic display device For example, a process of displaying an image for adjusting the image.
[0046]
Another aspect of the present invention relates to a stereoscopic image processing apparatus, and a stereoscopic effect adjusting unit that provides a user with a graphical user interface for adjusting the stereoscopic effect of a stereoscopic display image, and the result of adjusting the stereoscopic effect by the user. And a parallax control unit that generates a parallax image in a form that protects the limit parallax.
[0047]
The apparatus further includes an information detection unit that acquires information to be referred to in order to optimize the stereoscopic image display, and a conversion unit that converts the format of the parallax image generated by the parallax control unit according to the acquired information. May be included.
[0048]
The parallax control unit may control the camera parameters based on the three-dimensional data to generate a parallax image while protecting the limit parallax, or may control the depth of the image with depth information to generate the parallax image. Alternatively, the parallax image may be generated after determining the horizontal shift amounts of the plurality of two-dimensional images having parallax.
[0049]
The fifth group of the present invention relates to one application or business model using the above-described stereoscopic image processing technology or related technology. A fourth group of software libraries is available. The following relates to the fifth group.
[0050]
An aspect of the present invention relates to a stereoscopic image processing method, and converts an appropriate parallax for stereoscopic display of a parallax image into an expression format that does not depend on the display device hardware, and the appropriate parallax according to the expression format is changed between different display devices. Circulate.
[0051]
Another aspect of the present invention also relates to a stereoscopic image processing method, a step of reading an appropriate parallax of a user acquired by a first display device into a second display device, and a second display device according to the appropriate parallax. Adjusting the parallax between the parallax images, and outputting the adjusted parallax image from the second display device. For example, the first display device is a device normally used by the user, and the second display device is a device provided at another location.
[0052]
Another aspect of the present invention relates to a stereoscopic image processing device, which includes a first display device, a second display device, and a server connected via a network, and the first display device is acquired by the device. The user's appropriate disparity information is transmitted to the server, the server receives the appropriate disparity information, records it in association with the user, and when the user requests output of image data on the second display device, the device Reads out the appropriate parallax information of the user from the server, adjusts the parallax, and then outputs a parallax image.
[0053]
It should be noted that any combination of the above-described constituent elements and a conversion of the expression of the present invention between a method, an apparatus, a system, a recording medium, a computer program, etc. are also effective as an aspect of the present invention.
[0054]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 shows the positional relationship between the user 10, the screen 12, and the playback object 14 displayed in a three-dimensional manner. The distance between eyes of the user 10 is E, the distance between the user 10 and the screen 12 is D, and the width of the reproduction object 14 when displayed is W. Since the playback object 14 is stereoscopically displayed, it has pixels that are sensed closer to the screen 12, that is, pixels that are located closer to each other, and pixels that are sensed farther than the screen 12, that is, pixels that are located farther away. Pixels without parallax appear on the screen 12 because they appear exactly the same from both eyes on the screen 12
.
[0055]
FIG. 2 shows an imaging system for generating the ideal display of FIG. The distance between the two cameras 22 and 24 is E, and the distance from these to the optical axis crossing position when viewing the real object 20 (this is called the optical axis crossing distance) is D, and the same width as the screen 12 is set. If an object 20 with an actual angle of view and a width of W is actually photographed, parallax images can be obtained from the two cameras. If this is displayed on the screen 12 of FIG. 1, the ideal state of FIG. 1 is realized.
[0056]
FIG. 3 and FIG. 4 show a state where the positional relationship of FIG. 2 is A times (A <1) and B times (B> 1), respectively. The ideal state of FIG. 1 is also realized by the parallax images obtained with these positional relationships. In other words, the basic of ideal stereoscopic display starts from making W: D: E constant. This relationship also serves as a basis for adding parallax.
[0057]
FIGS. 5 to 10 show the outline of processing until stereoscopic display is performed based on the three-dimensional data of the object 20 in the embodiment.
FIG. 5 shows a model coordinate system, that is, a coordinate space that each three-dimensional object 20 has. In this space, coordinates when the object 20 is modeled are given. Usually, the origin is at the center of the object 20.
[0058]
FIG. 6 shows the world coordinate system. The world space is a wide space in which a scene is formed by arranging objects 20, floors, and walls. From the modeling in FIG. 5 to the determination of the world coordinate system in FIG. 6 can be recognized as “construction of three-dimensional data”.
[0059]
FIG. 7 shows the camera coordinate system. Conversion to the camera coordinate system is performed by setting the camera 22 at an arbitrary angle of view from an arbitrary position in the world coordinate system. Camera position, direction, and angle of view are camera parameters. In the case of stereoscopic display, since the parameters are determined for two cameras, the camera interval and the optical axis crossing position are also determined. Also, the origin is moved so that the midpoint of the two cameras is the origin.
[0060]
8 and 9 show a perspective coordinate system. First, as shown in FIG. 8, the space to be displayed is clipped by the front projection plane 30 and the rear projection plane 32. As will be described later, one feature of the embodiment is that the surface having the maximum disparity point is the front projection surface 30 and the surface having the maximum disparity point is the rear projection surface 32. After clipping, this view volume is converted into a rectangular parallelepiped as shown in FIG. The processing in FIGS. 8 and 9 is also referred to as projection processing.
[0061]
FIG. 10 shows the screen coordinate system. In the case of stereoscopic display, images from a plurality of cameras are converted into coordinate systems having screens, and a plurality of two-dimensional images, that is, parallax images are generated.
[0062]
11, 12, and 13 illustrate the configuration of the stereoscopic image processing apparatus 100 that is partially different. Hereinafter, for convenience, the stereoscopic image processing devices 100 are also referred to as first, second, and third stereoscopic image processing devices 100, respectively. These three-dimensional image processing apparatuses 100 can be integrated into the apparatus, but here, they are divided into three parts to avoid the complexity of the figure. The first stereoscopic image processing apparatus 100 is effective when the object and space to be drawn can be obtained from the three-dimensional data stage, and therefore the main input is the three-dimensional data. The second stereoscopic image processing apparatus 100 is effective for the parallax adjustment of a plurality of two-dimensional images to which parallax has already been given, that is, existing parallax images, and therefore inputs a two-dimensional parallax image. The third stereoscopic image processing apparatus 100 operates the depth information of the image with depth information to realize proper parallax, and therefore mainly inputs the image with depth information. These three inputs are collectively referred to as “original data”.
[0063]
In the case where the first to third stereoscopic image processing devices 100 are integrated and mounted, an “image format determination unit” is provided as a preprocessing unit thereof, and after determining three-dimensional data, a parallax image, and an image with depth information, It is good also as a structure which starts the optimal thing among the 1st-3rd three-dimensional image processing apparatuses 100. FIG.
[0064]
The first stereoscopic image processing apparatus 100 has functions of “initial setting” and “automatic adjustment” when setting a stereoscopic effect for stereoscopic display. When the user designates a range of his / her appropriate parallax for a stereoscopically displayed image, this is acquired by the system, and thereafter, when another stereoscopic image is displayed, a conversion process is performed in advance to realize this proper parallax. Is displayed. Therefore, the first stereoscopic image processing apparatus 100 allows the user to enjoy a stereoscopic display that suits him / herself after the setting procedure is performed only once in principle.
[0065]
The first stereoscopic image processing apparatus 100 further has a sub-function called “parallax correction” that artificially relaxes the parallax in the periphery of the image. As described above, as the image edge is approached, a shift between a plurality of viewpoint images is easily recognized as a “double image”. This is mainly due to mechanical errors such as parallax barrier and screen warpage of the display device. Therefore, at the peripheral part of the image, 1) reduce both the near parallax and the far parallax, 2) reduce the near parallax, and leave the far parallax as it is, 3) regardless of the near parallax and the far parallax. Various methods are implemented, such as shifting to a distant parallax. This “parallax correction” function also exists in the third stereoscopic image processing apparatus 100, but the processing differs depending on the difference in input data.
[0066]
The first stereoscopic image processing apparatus 100 includes a stereoscopic effect adjusting unit 112 that adjusts the stereoscopic effect based on a response from the user to a stereoscopically displayed image, and a parallax that stores the appropriate parallax specified by the stereoscopic effect adjusting unit 112. The information holding unit 120, the parallax control unit 114 that reads the appropriate parallax from the parallax information holding unit 120, generates the parallax image having the appropriate parallax from the original data, acquires the hardware information of the display device, and also displays the stereoscopic display An information acquisition unit 118 having a function of acquiring a method and a format conversion unit 116 that changes the format of the parallax image generated by the parallax control unit 114 based on the information acquired by the information acquisition unit 118 are included. Original data is simply called three-dimensional data, but strictly speaking, this is object and space data described in the world coordinate system.
[0067]
Examples of information acquired by the information acquisition unit 118 include the number of viewpoints for stereoscopic display, the method of a stereoscopic display device such as space division or time division, whether or not shutter glasses are used, and the viewpoint image in a multi-view type. There is a method of arrangement, whether there is an arrangement of viewpoint images in which parallax is reversed in the parallax image, a result of head tracking, and the like. Only the result of the head tracking is exceptionally inputted to the camera arrangement determining unit 132 via a route (not shown) and processed there.
[0068]
The above configuration can be realized in hardware by a CPU, memory, or other LSI of an arbitrary computer, and in software, it can be realized by a program having a GUI function, a parallax control function, or other functions. Here, functional blocks realized by the cooperation are depicted. Accordingly, it is understood by those skilled in the art that these functional blocks can be realized in various forms by hardware only, software only, or a combination thereof, and the situation is the same for the subsequent configurations.
[0069]
The stereoscopic effect adjusting unit 112 includes an instruction acquiring unit 122 and a parallax specifying unit 124. The instruction acquisition unit 122 acquires the appropriate parallax range for the stereoscopically displayed image when the user specifies the range. Based on the range, the parallax specifying unit 124 specifies an appropriate parallax when the user uses the display device. The appropriate parallax is expressed in an expression format that does not depend on the hardware of the display device. By realizing the appropriate parallax, stereoscopic vision suitable for the user's physiology becomes possible.
[0070]
The parallax control unit 114 includes a camera temporary arrangement unit 130 that temporarily sets camera parameters, a camera arrangement determination unit 132 that corrects camera parameters temporarily set according to appropriate parallax, and a plurality of cameras when camera parameters are determined. An origin moving unit 134 that performs origin movement processing to set the middle point as the origin, a projection processing unit 138 that performs the above-described projection processing, and conversion processing to a screen coordinate system after projection processing to generate a parallax image A two-dimensional image generation unit 142. In addition, a distortion processing unit 136 that performs spatial distortion conversion (hereinafter also simply referred to as distortion conversion) is provided between the camera temporary arrangement unit 130 and the camera arrangement determination unit 132 in order to reduce parallax in the periphery of the image as necessary. ing. The distortion processing unit 136 reads out a correction map described later from the correction map holding unit 140 and uses it.
[0071]
If it is necessary to adjust the display device for stereoscopic display, a GUI (not shown) for that purpose may be added. With this GUI, processing such as determining the optimum display position by slightly shifting the entire displayed parallax image vertically and horizontally may be performed.
[0072]
The second stereoscopic image processing apparatus 100 in FIG. 12 receives a plurality of parallax images. This is also simply called an input image. The second stereoscopic image processing apparatus 100 reads the appropriate parallax previously acquired by the first stereoscopic image processing apparatus 100, adjusts the parallax of the input image, puts it within the range of the appropriate parallax, and outputs it. In that sense, the second stereoscopic image processing apparatus 100 has an “automatic adjustment” function of parallax. However, in addition to this, when the user wants to change the stereoscopic effect when the stereoscopic display is actually performed, a GUI function is provided, and a “manual adjustment” function for changing the parallax according to the user's instruction is also provided.
[0073]
The parallax of the already generated parallax image cannot normally be changed, but according to the second stereoscopic image processing apparatus 100, the level that can be sufficiently put into practical use by shifting the synthesis position of the viewpoint images constituting the parallax image You can change the stereoscopic effect. The second stereoscopic image processing apparatus 100 exhibits a good stereoscopic effect adjustment function even in a situation where input data cannot be traced back to three-dimensional data. Hereinafter, differences from the first stereoscopic image processing apparatus 100 will be mainly described.
[0074]
The stereoscopic effect adjusting unit 112 is used for manual adjustment. The instruction acquisition unit 122 realizes numerical input such as “+ n” and “−n” on a screen, for example, and the value is specified by the parallax specifying unit 124 as a parallax change amount. There are several possible relations between the numerical value and the specified stereoscopic effect. For example, “+ n” is an instruction to increase the stereoscopic effect, and “−n” is an instruction to decrease, and the larger the n, the larger the change amount to the stereoscopic effect. Also, “+ n” may be an instruction to move the object in the near direction, and “−n” may be an instruction to move the object in the far direction. As another method, the value of n may not be specified, and only the “+” and “−” buttons may be displayed, and the parallax may be changed each time the button is clicked.
[0075]
The second stereoscopic image processing apparatus 100 includes a parallax amount detection unit 150 and a parallax control unit 152. When the input image is a plurality of parallax images, the parallax amount detection unit 150 inspects the header area of the parallax images, and the parallax amount described in the form of the number of pixels, particularly the near maximum parallax pixel number and the far maximum parallax. If there is the number of pixels, this is acquired. If the amount of parallax is not described, the matching unit 158 identifies the amount of parallax by detecting a corresponding point between parallax images using a known method such as block matching. The matching unit 158 may perform processing only on an important region such as the center of the image, or may detect by focusing on the most important number of nearby parallax pixels. The detected amount of parallax is sent to the parallax control unit 152 in the form of the number of pixels.
[0076]
The position shift unit 160 of the parallax control unit 152 shifts the synthesis position of the viewpoint images constituting the parallax image in the horizontal direction so that the parallax amount between the viewpoint images becomes an appropriate parallax. The shift may be performed on any one of the viewpoint images. The position shift unit 160 also has another operation mode. When the user gives an instruction to increase or decrease the parallax via the stereoscopic effect adjusting unit 112, the image shift position is simply changed according to this instruction. In other words, the position shift unit 160 has two functions of an automatic adjustment function for appropriate parallax and a manual adjustment function by the user.
[0077]
The parallax writing unit 164 writes the parallax amount by the number of pixels in one of the header areas of the plurality of viewpoint images constituting the parallax image for the above-described parallax amount detection unit 150 or for another use. The image edge adjustment unit 168 fills in the missing pixels generated at the image edge due to the shift by the position shift unit 160.
[0078]
The third stereoscopic image processing apparatus 100 in FIG. 13 receives an image with depth information as an input. The third stereoscopic image processing apparatus 100 adjusts the depth so that proper parallax is realized. In addition, the above-described “parallax correction” function is provided. The distortion processing unit 174 of the parallax control unit 170 performs distortion conversion according to the correction map stored in the correction map holding unit 176 in the manner described later. The depth information and the image after distortion conversion are input to the two-dimensional image generation unit 178, where a parallax image is generated. The two-dimensional image generation unit 178 is different from the two-dimensional image generation unit 142 of the first stereoscopic image processing apparatus 100, and appropriate parallax is considered here. Since the image with depth information is also two-dimensional as an image, the two-dimensional image generation unit 178 has a function similar to that of the position shift unit 160 of the second stereoscopic image processing apparatus 100 inside, although not shown in the figure. Accordingly, the pixels in the image are shifted in the horizontal direction to generate a stereoscopic effect. At this time, an appropriate parallax is realized by a process described later.
[0079]
The processing operation and the principle of each part of each stereoscopic image processing apparatus 100 in the above configuration are as follows.
FIGS. 14A and 14B show the left eye image 200 and the right eye image 202 respectively displayed in the specific parallax specifying process by the stereoscopic effect adjusting unit 112 of the first stereoscopic image processing apparatus 100. . In each image, five black circles are displayed, and a larger parallax is placed closer to the top, and a larger parallax is placed farther down.
[0080]
FIG. 15 schematically shows a sense of distance sensed by the user 10 when these five black circles are displayed. The user 10 responds that the range of these five senses of distance is “appropriate”, and the instruction acquisition unit 122 acquires this response. In the figure, five black circles with different parallaxes are displayed simultaneously or sequentially, and the user 10 inputs whether or not the parallax is acceptable. On the other hand, in FIG. 16, the display itself is performed with a single black circle, but the parallax is continuously changed, and when the user 10 reaches the limit allowed in each of the far and near positions, a response is made. The response may be performed by using a known technique such as normal key operation, mouse operation, voice input, and the like.
[0081]
In either case of FIGS. 15 and 16, the instruction acquisition unit 122 can acquire the appropriate parallax as a range, and the near parallax and the far parallax limit parallax are determined. The near maximum parallax is a parallax corresponding to the proximity allowed for a point that appears closest to the user, and the far maximum parallax is a parallax corresponding to the distance allowed for a point that appears farthest from the user. However, in general, the near maximum parallax should be taken care of due to a user's physiological problem. Hereinafter, only the near maximum parallax may be referred to as a limit parallax.
[0082]
FIG. 17 shows the principle of actually adjusting the parallax between two viewpoints when a stereoscopically displayed image is taken out from three-dimensional data. First, the critical parallax determined by the user is converted into a prospective angle of the temporarily placed camera. By taking the angle expression, it becomes a general-purpose expression independent of the hardware of the display device. As shown in the figure, the limit parallax between the near and far positions can be expressed as M and N in terms of the number of pixels, and the angle of view θ of the camera corresponds to the number of horizontal pixels L on the display screen. The near maximum prospective angle φ and the far maximum prospective angle ψ, which are angles, are represented by θ, M, N, and L.
[0083]
tan (φ / 2) = M tan (θ / 2) / L
tan (ψ / 2) = Ntan (θ / 2) / L
Next, this information is applied to the extraction of the two viewpoint images in the three-dimensional space. As shown in FIG. 18, first, a basic expression space T (its depth is also expressed as T) is determined. Here, it is assumed that the basic expression space T is determined from restrictions on the arrangement of objects. Let S be the distance from the front projection plane 30 which is the front surface of the basic expression space T to the camera placement plane, that is, the viewpoint plane 208. T and S can be specified by the user. There are two viewpoints, and D is the distance from the viewpoint plane 208 of these optical axis intersecting planes 210. Let A be the distance between the optical axis crossing plane 210 and the front projection plane 30.
[0084]
Next, let P and Q be the near parallax and far limit parallax in the basic expression space T, respectively.
E: S = P: A
E: S + T = Q: TA
Is established. E is the distance between viewpoints. Now, the point G, which is a pixel with no parallax, is at a position where the optical axes K2 from both cameras intersect on the optical axis intersecting surface 210, and the optical axis intersecting surface 210 is the position of the screen surface. The light rays K1 that produce the near maximum parallax P intersect on the front projection plane 30, and the light rays K3 that produce the far maximum disparity Q intersect on the rear projection plane 32.
[0085]
P and Q use φ and ψ as shown in FIG.
P = 2 (S + A) tan (φ / 2)
Q = 2 (S + A) tan (ψ / 2)
As a result,
E = 2 (S + A) tan (θ / 2) · (SM + SN + TN) / (LT)
A = STM / (SM + SN + TN)
Is obtained. Since S and T are already known, A and E are automatically determined in this way. Therefore, the optical axis crossing distance D and the inter-camera distance E are automatically determined, and the camera parameters are determined. If the camera arrangement determining unit 132 determines the arrangement of the cameras according to these parameters, then the projection processing unit 138 and the two-dimensional image generation unit 142 perform the processing independently on the images from the respective cameras. A parallax image having parallax can be generated and output. As described above, E and A do not include hardware information, and an expression format independent of hardware is realized.
[0086]
Thereafter, appropriate parallax can be automatically realized if a camera is arranged so as to protect A or D and E even when another image is stereoscopically displayed. The entire process from specifying the appropriate parallax to ideal 3D display can be automated, so if this function is provided as a software library, programmers who create content and applications do not need to be aware of 3D display programming. . In addition, when L, M, and N are represented by the number of pixels, L indicates a display range, and thus it can be indicated by L whether the display is a full screen or a part of the screen. L is also a parameter independent of hardware.
[0087]
FIG. 20 shows a four-lens camera arrangement with four cameras 22, 24, 26 and 28. To be precise, the above-mentioned A and E should be determined so as to obtain an appropriate parallax between adjacent cameras, such as between the first camera 22 and the second camera 24. Even if A and E determined between the second camera 24 and the third camera 26 close to each other are used between other cameras, substantially the same effect can be obtained.
[0088]
Note that T is a restriction on the arrangement of objects, but may be determined by a program as the size of a basic three-dimensional space. In this case, the object can always be arranged only in the basic expression space T throughout the program, and for effective display, the object may sometimes be given a parallax so as to intentionally jump out of this space.
[0089]
As another example, T may be determined for the coordinates of the closest object and the most distant object in the three-dimensional space. If this is performed in real time, the basic expression space T is always obtained. Objects can be placed in As an exception to always putting an object in the basic expression space T, a short-time exception can be made if it is operated under the relaxed condition that “the average of the positions for a certain period of time only needs to be in the basic expression space T”. Furthermore, the object that defines the basic expression space T may be limited to a static object. In this case, an exceptional operation in which a dynamic object protrudes from the basic expression space T can be given. As yet another example, conversion may be performed in which a space in which objects are already arranged is reduced to the size of the width T of the basic expression space, or may be combined with the operations described above.
[0090]
Note that if the stereoscopic effect adjustment unit 112 of the first stereoscopic image processing apparatus 100 displays a double image easily as an image displayed to the user, the marginal parallax is determined to be small, and other images are displayed. The appearance frequency of double images can be reduced. As images that are likely to produce double images, those with contrasting colors and brightness between the object and the background are known, and such images can be used at the stage of identifying the critical parallax, that is, at the initial setting. .
[0091]
FIG. 21 to FIG. 36 show processing by the distortion processing unit 136 of the first stereoscopic image processing apparatus 100 and its principle.
FIG. 21 conceptually shows an example of the correction map stored in the correction map holding unit 140 of the first stereoscopic image processing apparatus 100. This map directly corrects the parallax, and the entire map directly corresponds to the parallax image, and the parallax becomes smaller as it goes to the peripheral part. FIG. 22 shows a change in parallax that occurs as a result of camera parameter manipulation by the camera placement determination unit 132 that has received a camera placement by the distortion processing unit 136 according to this correction map. “Normal parallax” is added when viewing the front direction from the left and right viewpoint positions of the two cameras, while “small parallax” is added when viewing the direction greatly deviating from the front. Actually, the camera arrangement determining unit 132 decreases the camera interval as it goes to the periphery.
[0092]
FIG. 23 shows another example in which the camera arrangement determining unit 132 changes the parallax by changing the camera arrangement in accordance with an instruction from the distortion processing unit 136. Here, among the two cameras, only the left camera is moved, and the parallax changes as “normal parallax” → “medium parallax” → “small parallax” toward the periphery of the image. This method has a lower calculation cost than FIG.
[0093]
FIG. 24 shows another example of the correction map. This map also changes the parallax, and the vicinity of the center of the image is not touched with the normal parallax, and the parallax is gradually reduced in the other parallax correction areas. FIG. 25 shows the camera position that the camera placement determination unit 132 changes according to this map. When the camera direction deviates greatly from the front, the position of the left camera is shifted to the right camera for the first time and “small parallax” is added.
[0094]
FIG. 26 conceptually shows another example of the correction map. This map corrects the sense of distance from the viewpoint to the object, and in order to realize this, the camera arrangement determining unit 132 adjusts the optical axis crossing distance of the two cameras. If the optical axis crossing distance is decreased as it goes to the periphery of the image, the object appears to be relatively recessed in the distant direction, so that the object is achieved particularly in the sense of reducing the near parallax. In order to reduce the optical axis crossing distance, the camera arrangement determining unit 132 may change the optical axis direction of the camera, and may change the direction of one of the cameras. FIG. 27 shows the change of the optical axis crossing position or the optical axis crossing surface 210 when a two-dimensional image is generated by the map of FIG. The optical axis crossing surface 210 is closer to the camera as it is closer to the image.
[0095]
FIG. 28 shows another correction map related to the sense of distance, and FIG. 29 shows how the camera arrangement determining unit 132 changes the optical axis crossing plane 210 in accordance with an instruction from the distortion processing unit 136 according to the map of FIG. In this example, the object is placed at the normal position without correction in the center area of the image, and the position of the object is corrected in the peripheral area of the image. For that purpose, in FIG. 29, the optical axis crossing surface 210 does not change near the center of the image, and the optical axis crossing surface 210 approaches the camera after a certain point. In FIG. 29, only the left camera is changed in direction.
[0096]
30A to 30F show another distortion conversion by the distortion processing unit 136. FIG. Unlike the previous examples, instead of changing the camera position, the camera coordinate system directly distorts the 3D space itself. 30A to 30F, the rectangular area is a top view of the original space, and the hatched area is a top view of the space after conversion. For example, the point U in the original space in FIG. This means that this point has been moved away. In FIG. 30 (a), the space is crushed in the direction of the arrow in the depth direction as it goes to the peripheral part, and the distance closer to a certain sense of distance, like the point W in FIG. I feel a sense. As a result, the sense of distance is uniform at the periphery of the image, and there are no objects that are particularly close to the image. This solves the double image problem and makes it easy to adapt to the user's physiology.
[0097]
30 (b), 30 (c), 30 (d), and 30 (e) all show modified examples of conversion that brings the sense of distance close to a constant value at the periphery of the image, and FIG. An example is shown in which all points are converted in the distant direction.
[0098]
FIG. 31 shows the principle for realizing the conversion of FIG. The rectangular parallelepiped space 228 includes a space where the projection processing of the first camera 22 and the second camera 24 is performed. The view volume of the first camera 22 is determined by the angle of view of the camera, the front projection plane 230, and the rear projection plane 232, and that of the second camera 24 is determined by the angle of view of the camera, the front projection plane 234, and the rear projection plane. 236. The distortion processing unit 136 performs distortion conversion on the rectangular parallelepiped space 228. The origin is the center of the rectangular parallelepiped space 228. In the case of the multi-lens type, the conversion principle is the same just by adding more cameras.
[0099]
FIG. 32 shows an example of distortion conversion, which employs reduction conversion in the Z direction. Actually, processing is performed on each object in the space. FIG. 33 expresses this conversion as a parallax correction map. The parallax is normal parallax, the parallax decreases as the absolute value of X increases, and X = ± A indicates no parallax. Here, since the reduction conversion is performed only in the Z direction, the conversion formula is as follows.
[0100]
[Expression 1]
Figure 0003702243
The conversion will be described with reference to FIG. First, consider the range of X ≧ 0 and Z ≧ 0. When the point (X0, Y0, Z0) is moved to the point (X0, Y0, Z1) by the reduction process, the reduction ratio Sz is
Figure 0003702243
It is. The coordinates of C are (X0, Y0, 0) and the coordinates of D are (X0, Y0, B).
[0101]
E is the intersection of the straight line and the plane. If the coordinates are (X0, Y0, Z2), Z2 can be obtained as follows.
[0102]
Z = B−X × B / A (plane)
X = X0, Y = Y0 (straight line)
Z2 = B−X0 × B / A
Therefore,
Figure 0003702243
In general for X,
Sz = 1-X / A
It becomes. If the same calculation is performed for other ranges of X and Z, the following results are obtained and the conversion can be verified.
[0103]
When X ≧ 0, Sz = 1−X / A
When X <0, Sz = 1 + X / A
FIG. 35 shows another example of distortion conversion. Strictly speaking, taking into account that radiography is performed from the camera, reduction processing in the X-axis and Y-axis directions is also combined. Here, conversion is performed with the center of the two cameras as the representative of the camera position. The conversion formula is as follows.
[0104]
[Expression 2]
Figure 0003702243
FIG. 36 verifies this conversion. Again, consider the range of X ≧ 0 and Z ≧ 0. When the point (X0, Y0, Z0) is moved to the point (X1, Y1, Z1) by the reduction process, the reduction ratios Sx, Sy, Sz are
Figure 0003702243
It becomes. Since E is an intersection of a plane and a straight line, Sx, Sy, and Sz can be obtained as described above.
[0105]
If the converted space is represented by a set of planes as described above, the processing changes at the boundary of the tangents between the surfaces, and a sense of incongruity may occur in some cases. In that case, the space may be constituted by a curved surface or a curved surface alone. The calculation is merely changed to one for obtaining the intersection E between the curved surface and the straight line.
[0106]
In the above example, the reduction ratio is the same on the same straight line CD, but weighting may be performed. For example, a weighting function G (L) for the distance L from the camera may be applied to Sx, Sy, and Sz.
[0107]
FIGS. 37 to 40 show processing by the distortion processing unit 174 of the third stereoscopic image processing apparatus 100 and its principle.
FIG. 37 shows a depth map of an image with depth information input to the third stereoscopic image processing apparatus 100. Here, it is assumed that the depth range has values of K1 to K2. Here, the near depth is positive and the far depth is negative.
[0108]
FIG. 38 shows the relationship between the original depth range 240 and the converted depth range 242. The depth approaches a certain value as it goes to the periphery of the image. The distortion processing unit 174 converts the depth map according to this correction. The same applies to the case where parallax is provided in the vertical direction. Since this conversion is also only reduction in the Z direction, it can be expressed by the following equation.
[0109]
[Equation 3]
Figure 0003702243
Sz is classified according to the value of X.
When X ≧ 0, Sz = 1−2X / L
When X <0, Sz = 1 + 2X / L
It becomes. By the above conversion, a new depth map having new elements shown in FIG. 39 is generated.
[0110]
FIG. 40 shows another distortion transformation principle for the depth map. More strictly speaking, the space is observed from the user 10 in a radial manner, so that the reduction processing in the X-axis and Y-axis directions is also combined. Here, the center between the eyes is the observation position. The specific processing is the same as in the case of FIG. The original depth map has only a Z value, but when this calculation is performed, the X value and the Y value are also held. The Z value is converted into a pixel shift amount in the X direction or the Y direction, but the X value and the Y value may be held as offset values for them.
[0111]
In any case, the original image with the depth map converted by the distortion processing unit 174 is input to the two-dimensional image generation unit 178, where a composition process shifted in the horizontal direction so as to obtain an appropriate parallax is performed. Details thereof will be described later.
[0112]
41 to 51 show the processing of the position shift unit 160 of the second stereoscopic image processing apparatus 100 and the two-dimensional image generation unit 178 of the third stereoscopic image processing apparatus 100 that can be grasped as an extension thereof.
FIG. 41 shows the principle of shifting the composite position of two parallax images by the position shift unit 160. As shown in the figure, the positions of the right eye image R and the left eye image L match in the initial state. However, when the left eye image L is relatively shifted to the right as shown in the upper part of the figure, the parallax at the near point increases and the parallax at the far point decreases. Conversely, when the left eye image L is shifted relatively to the left as shown in the lower part of the figure, the parallax at the near point decreases and the parallax at the far point increases.
[0113]
The above is the essence of parallax adjustment by shifting the parallax image. One image may be shifted, or both may be shifted in opposite directions. From this principle, it can be seen that the stereoscopic display method can be applied to all methods using parallax regardless of the glasses method or the glassesless method. Similar processing can be performed for multi-view images and vertical parallax.
[0114]
FIG. 42 shows the shift process at the pixel level. The left eye image 200 and the right eye image 202 both include a first square 250 and a second square 252. The first square 250 has a near parallax, and when the parallax amount is expressed as a positive number, it becomes “6 pixels”. On the other hand, the second square 252 has a distant parallax. When the parallax amount is expressed as a negative number, it becomes “−6 pixels”. Here, let this amount of parallax be F2 and F1, respectively.
[0115]
On the other hand, it is assumed that the appropriate parallax of the display device owned by the user is J1 to J2. The position shift unit 160 shifts the synthesis start position of both images by (J2-F2) pixels. FIG. 43 shows a state after the end of the shift. Now, assuming that F1 = −6 and F2 = 6, and J1 = −5 and J2 = 4, the composition start positions are −2 pixels, that is, It is shifted in the direction in which the whole shifts in the distant direction. As shown in FIG. 43, the final amount of parallax is E1 = −8 and E2 = 4, and at least falls within the limit parallax with respect to the close-up direction. In general, the double image in the close-up direction is more uncomfortable compared to the distant direction, and the subject is often photographed in the close-up direction. It is desirable to keep the directional parallax within limits. A processing example is shown below.
[0116]
1. When the near point is outside the limit parallax and the far point is within the limit parallax, the near point is shifted to the limit parallax point. However, the processing is stopped when the disparity parallax reaches the interocular distance. 2. When the near point is outside the limit parallax and the far point is outside the limit parallax, the near point is shifted to the limit parallax point. However, the processing is stopped when the disparity parallax reaches the interocular distance. 3. If neither the near point nor the far point is within the limit parallax, no processing is performed.
4). If the near point is within the limit parallax and the far point is outside the limit parallax, the far point is shifted to the limit parallax point, but if the near point reaches the limit parallax point during the process, the processing is stopped. .
[0117]
FIG. 44 shows the missing image edge due to the shift of the composite position. Here, the shift amount of the left eye image 200 and the right eye image 202 is one pixel, and a missing portion 260 having a width of one pixel occurs at the right end of the left eye image 200 and the left end of the right eye image 202, respectively. At this time, the image edge adjustment unit 168 compensates the number of horizontal pixels by duplicating the pixel line at the image edge as shown in FIG.
[0118]
As another method, the missing portion 260 may be displayed in a specific color such as black or white, or may be hidden. Further, clipping and adding processing may be performed so as to be the same as the size of the initial image. Also, it may be considered that the size of the initial image is made larger than the actual display size in advance so that the missing portion 260 does not affect the display.
[0119]
FIG. 45 is a flow of manual adjustment of parallax by the second stereoscopic image processing apparatus 100. As shown in the figure, first, left and right images are manually created as parallax images (S10), and distributed through a network or other route (S12). This is received by the second stereoscopic image processing apparatus 100 (S14), and in the example of this figure, first, the images are synthesized and displayed as they are in the normal state without shifting (S16). That is, here, the case where the appropriate parallax has not yet been acquired or the case where the position shift unit 160 is not operated is considered. Subsequently, the user instructs parallax adjustment via the stereoscopic effect adjustment unit 112 for the parallax image displayed stereoscopically, and the position shift unit 160 receives this in the “manual adjustment mode” to adjust the image synthesis position. Are displayed (S18). S10 and S12 are the procedure 270 for the image creator, and the procedure after S14 is the procedure 272 for the second stereoscopic image processing apparatus 100. Although not shown, if this shift amount is recorded in the header and is synthesized by referring to it from the next time, the labor of readjustment can be saved.
[0120]
FIG. 46 shows a flow of automatic adjustment by the second stereoscopic image processing apparatus 100. The left and right image generation (S30) and image distribution (S32), which are image creator procedures 270, are the same as those in FIG. Also, the image reception (S34) is the same in the procedure 272 of the second stereoscopic image processing apparatus 100. Next, the parallax preliminarily added between the parallax images, particularly the maximum parallax, is detected by the matching unit 158 of the parallax amount detection unit 150 (S36), while appropriate parallax, especially critical parallax is acquired from the parallax information holding unit 120. (S38). Thereafter, the position shift unit 160 shifts the composite position of the image so as to satisfy the limit parallax by the above-described processing (S40), and the stereoscopic display is performed through the processing by the parallax writing unit 164, the image edge adjustment unit 168, and the format conversion unit 116. (S42).
[0121]
FIG. 47 shows a flow of still another automatic adjustment by the second stereoscopic image processing apparatus 100. After the left and right images are generated in the image creator procedure 270 (S50), the maximum parallax is detected at this time (S52) and recorded in the header of one of the viewpoint images of the parallax image (S54). This detection may be performed by corresponding point matching. However, when the creator manually generates the parallax image, it is naturally known in the editing process, and therefore this may be recorded. Thereafter, the image is distributed (S56).
[0122]
On the other hand, in the procedure 272 of the second stereoscopic image processing apparatus 100, the image reception (S58) is the same as in FIG. Next, the above-described maximum parallax is read from the header by the header inspection unit 156 of the parallax amount detection unit 150 (S60). On the other hand, the limit parallax is acquired from the parallax information holding unit 120 (S62), and the following processes S64 and S66 are the same as the processes S40 and S42 of FIG. According to this method, there is no need to calculate the maximum parallax. In addition, it is possible to realize an appropriate stereoscopic effect for the entire image. Furthermore, since the shift amount can be recorded in the header, there is no possibility of damaging the original image itself. Although not shown, if the maximum parallax detected in FIG. 46 is recorded in the header, it can be processed in accordance with the procedure shown in FIG.
[0123]
Note that the same processing can be performed even in the multi-view method, and the same processing may be performed on the amount of parallax between adjacent viewpoint images. However, in practice, the shift amount of the synthesis position may be determined by regarding the maximum parallax among the parallaxes among the plurality of viewpoint images as the “maximum parallax” between all the viewpoint images.
[0124]
The header information may be in at least one of the multi-viewpoint images. However, when the multi-viewpoint image is combined into one image, the header of the image may be used.
[0125]
In some cases, images that have already been combined may be distributed. In such a case, the images are separated by inverse transform processing once, and the combined position shift amount is calculated and recombined, or the result is the same pixel. This sort processing may be performed.
[0126]
48 to 51 show processing for shifting the composite position for the image with depth information. This is performed by the two-dimensional image generation unit 178 of the third stereoscopic image processing apparatus 100.
FIG. 48 and FIG. 49 are a plane image 204 and a depth map that constitute an image with depth information, respectively. Here, the near depth is represented as positive and the far depth is represented as negative. There are a first quadrangle 250, a second quadrangle 252 and a third quadrangle 254 as objects, the first quadrangle 250 is depth “4”, the second quadrangle 252 is “2”, and the third quadrangle 254 is “−4”. . The first square 250 is the nearest placement point, the second square 252 is the intermediate near placement point, and the third square 254 is the farthest placement point.
[0127]
Based on the original planar image 204, the two-dimensional image generation unit 178 first performs a process of shifting each pixel by the value of the depth map to generate the other viewpoint image. If the reference is the left eye image, the original planar image 204 becomes the left eye image as it is. The first square 250 is shifted to the left by 4 pixels, the second square 252 is shifted to the left by 2 pixels, and the third square 254 is shifted to the right by 4 pixels, and the right eye image 202 is created as shown in FIG. The image edge adjustment unit 168 fills the pixel information missing portion 260 due to the movement of the object with the neighboring pixels determined to be the background whose parallax is “0”.
[0128]
Subsequently, the two-dimensional image generation unit 178 calculates a depth that satisfies the appropriate parallax. If the depth range is K1 to K2 and the depth value of each pixel is Gxy, the depth map is changed from Hxy to Gxy in FIG. Further, it is assumed that the appropriate parallax of the display device owned by the user is J1 to J2. In this case, in the depth map, the depth value G of each pixel is converted as follows, and a new depth value Fxy is obtained.
[0129]
Fxy = J1 + (Gxy−K1) × (J2−J1) / (K2−K1)
In the above example, if K1 = −4, K2 = 4, and J1 = −3 and J2 = 2, the depth map of FIG. 49 is converted to the depth map of FIG. The That is, “4” is converted to “2”, “2” is converted to “1”, and “−4” is converted to “−3”. Intermediate values between K1 and K2 are converted between J1 and J2. For example, the second square 252 has Gxy = 2 and Fxy = 0.75. When Fxy does not become an integer, rounding off or processing that reduces the near parallax may be performed.
[0130]
Note that the above conversion formula is an example of linear conversion, but a weighting function F (Gxy) for Gxy is applied, and various other nonlinear conversions are also conceivable. Also, it is possible to newly generate left and right images from the original planar image 204 by shifting the objects in opposite directions. In the case of a multi-view type, a similar process may be performed a plurality of times to generate a multi-viewpoint image.
[0131]
The above is the configuration and operation of the stereoscopic image processing apparatus 100 according to the embodiment. Although the stereoscopic image processing apparatus 100 has been described as an apparatus, this may be a combination of hardware and software, or may be configured only by software. In that case, it is convenient if an arbitrary part of the stereoscopic image processing apparatus 100 is made into a library and can be called from various programs. The programmer can skip programming that requires knowledge of 3D display. For the user, regardless of the software and contents, the operation related to stereoscopic display, that is, the GUI is common, and the set information can be shared by other software, so that the trouble of resetting can be saved.
[0132]
Note that it is useful not only for the processing related to stereoscopic display but also for sharing information among a plurality of programs. Various programs can determine the state of the image with reference to the information. An example of information to be shared is information acquired by the information acquisition unit 118 of the stereoscopic image processing apparatus 100 described above. This information may be held in a recording unit or correction map holding unit 140 (not shown).
[0133]
52 to 54 show an example in which the above-described stereoscopic image processing apparatus 100 is used as a library. FIG. 52 shows the usage of the stereoscopic display library 300. The stereoscopic display library 300 is referred to by calling functions from a plurality of programs A302, B304, C306, and the like. The parameter file 318 stores the appropriate parallax of the user in addition to the above information. The stereoscopic display library 300 is used by a plurality of apparatuses A 312, B 314, C 316, etc. via an API (Application Program Interface) 310.
[0134]
Examples of the program A302 and the like include a game, a so-called Web3D three-dimensional application, a three-dimensional desktop screen, a three-dimensional map, a two-dimensional image parallax image viewer, and a depth information-added viewer. Of course, some of the games use different coordinates, but the 3D display library 300 can handle this.
[0135]
On the other hand, as an example of the device A312 or the like, any stereoscopic display device using parallax, such as a binocular or multi-lens parallax barrier method, a shutter glasses method, or a polarized glasses method.
[0136]
FIG. 53 shows an example in which the stereoscopic display library 300 is incorporated in the three-dimensional data software 402. The three-dimensional data software 402 includes a program main body 404, a stereoscopic display library 300 for realizing appropriate parallax therefor, and a photographing instruction processing unit 406. The program body 404 communicates with the user via the user interface 410. The photographing instruction processing unit 406 virtually photographs a predetermined scene during the operation of the program body 404 in accordance with a user instruction. The captured image is recorded in the image recording device 412. Also output to the stereoscopic display device 408.
[0137]
For example, assume that the three-dimensional data software 402 is game software. In that case, the user can execute the game while experiencing an appropriate stereoscopic effect by the stereoscopic display library 300 during the game. When the user wants to keep a record during the game, for example, when the player wins a complete battle game, an instruction is given to the shooting instruction processing unit 406 via the user interface 410 and the scene is recorded. At this time, using the stereoscopic display library 300, a parallax image is generated so as to have an appropriate parallax when played back later on the stereoscopic display device 408, and this is recorded in an electronic album or the like of the image recording device 412. Note that recording is performed with a two-dimensional image called a parallax image, so that the three-dimensional data itself of the program body 404 does not flow out, and it is possible to consider copyright protection.
[0138]
FIG. 54 shows an example in which the three-dimensional data software 402 of FIG. 53 is incorporated into a network-based system 430.
The game machine 432 is connected to the server 436 and the user terminal 434 via a network (not shown). The game machine 432 is for an arcade game, and includes a communication unit 442, three-dimensional data software 402, and a stereoscopic display device 440 that locally displays the game. The three-dimensional data software 402 is the one shown in FIG. The parallax image displayed on the stereoscopic display device 440 from the three-dimensional data software 402 is optimally set in advance for the stereoscopic display device 440. The parallax adjustment by the three-dimensional data software 402 is used when an image is transmitted to the user via the communication unit 442 as described later. The display device used here only needs to have a function of adjusting a parallax and generating a stereoscopic image, and does not necessarily have to be a device capable of stereoscopic display.
[0139]
The user terminal 434 includes a communication unit 454, a viewer program 452 for viewing a stereoscopic image, and a stereoscopic display device 450 of any size and type for locally displaying the stereoscopic image. The viewer program 452 includes the stereoscopic image processing apparatus 100.
[0140]
The server 436 associates the communication unit 460, an image holding unit 462 that records images virtually taken by the user in connection with the game, the user's appropriate parallax information, the user's email address, and other personal information with the user. A user information holding unit 464 for recording. The server 436 functions as an official game site, for example, and records a scene that the user likes during the game, a moving image or a still image of a famous game. The stereoscopic display can be either a moving image or a still image.
[0141]
An example of image capturing in the above configuration is performed as follows. The user performs stereoscopic display on the stereoscopic display device 450 of the user terminal 434 in advance, acquires appropriate parallax based on the function of the stereoscopic image processing device 100, notifies the server 436 of this via the communication unit 454, and transmits user information. It is stored in the holding unit 464. This appropriate parallax is a general-purpose description not related to the hardware of the stereoscopic display device 450 owned by the user.
[0142]
The user plays a game with the game machine 432 at an arbitrary timing. In the meantime, the stereoscopic display device 440 performs stereoscopic display using the parallax initially set or the parallax manually adjusted by the user. When the user wishes to record an image during game play or replay, the 3D display library 300 built in the 3D data software 402 of the game machine 432 is stored in the server 436 via the two communication units 442 and 460. A parallax image relating to an image virtually acquired by the image holding unit 462 via the two communication units 442 and 460 is acquired again by acquiring the appropriate parallax of the user from the user information holding unit 464 and generating a parallax image accordingly. Is stored. If the user returns to the home and then downloads the parallax image to the user terminal 434, the stereoscopic display can be performed with a desired stereoscopic effect. Even in this case, the parallax can be manually adjusted by the stereoscopic image processing apparatus 100 included in the viewer program 452.
[0143]
As described above, according to this application example, the programming related to the stereoscopic effect that must be set for each hardware of the display device and for each user is concentrated in the stereoscopic image processing device 100 and the stereoscopic display library 300. Programmers don't have to worry about any complex requirements for stereoscopic display. This applies not only to game software but also to arbitrary software that uses stereoscopic display, and it eliminates restrictions on the development of content and applications that use stereoscopic display. Therefore, the spread of these can be dramatically promoted.
[0144]
Especially in the case of games and other applications that originally have 3D CG data, it has been difficult to code accurate 3D display in the past. In many cases, it was not used for stereoscopic display. According to the stereoscopic image processing apparatus 100 or the stereoscopic display library 300 according to the embodiment, such adverse effects can be removed, and the stereoscopic display application can be enhanced.
[0145]
In FIG. 54, the user's appropriate parallax is registered in the server 436, but the user may bring an IC card or the like on which the information is recorded to use the game machine 432. You may record the score about this game and the picture you like on this card.
[0146]
The present invention has been described based on the embodiments. This embodiment is an exemplification, and it will be understood by those skilled in the art that various modifications can be made to combinations of the respective constituent elements and processing processes, and such modifications are also within the scope of the present invention. is there. Here are some examples.
[0147]
The first stereoscopic image processing apparatus 100 can perform processing with high accuracy by inputting three-dimensional data. However, it is also possible to drop the three-dimensional data into an image with depth information and generate a parallax image using the third stereoscopic image processing apparatus 100. In some cases, it may be less computationally expensive. Similarly, when inputting a plurality of viewpoint images, it is also possible to create a depth map by using matching point matching with high accuracy. A parallax image may be generated using the image processing apparatus 100.
[0148]
In the first stereoscopic image processing apparatus 100, the temporary camera arrangement unit 130 is configured as the stereoscopic image processing apparatus 100, but this may be preprocessing of the stereoscopic image processing apparatus 100. This is because processing up to the temporary placement of the camera can be performed regardless of the appropriate parallax. Similarly, arbitrary processing units constituting the first, second, and third stereoscopic image processing apparatuses 100 can be taken out of the stereoscopic image processing apparatus 100, and the degree of freedom of the configuration of the stereoscopic image processing apparatus 100 is allowed. Will be understood by those skilled in the art.
[0149]
In the embodiment, the case where the parallax control is performed in the horizontal direction has been described, but the same processing can also be performed in the vertical direction.
[0150]
During the operation of the stereoscopic display library 300 and the stereoscopic image processing apparatus 100, a unit for enlarging the character data may be provided. For example, in the case of a parallax image with two horizontal viewpoints, the horizontal resolution of an image visible to the user is halved. As a result, the readability of the characters can be reduced, and therefore a process of extending the characters twice in the horizontal direction is effective. When there is parallax in the vertical direction, it is also useful to extend the character in the vertical direction as well.
[0151]
During the operation of the stereoscopic display library 300 and the stereoscopic image processing apparatus 100, an “in-operation display unit” that puts characters and marks such as “3D” in the displayed image may be provided. In this case, the user can know whether or not the image can adjust the parallax.
[0152]
A stereoscopic display / normal display switching unit may be provided. This unit includes a GUI. When the user clicks a predetermined button, the display is switched from the stereoscopic display to the normal two-dimensional display, and vice versa.
[0153]
The information acquisition unit 118 does not necessarily acquire information by user input, but may include information that can be automatically acquired by a function such as plug and play.
[0154]
In the embodiment, a method of deriving E and A is used. However, a method of deriving other parameters by fixing these may be used, and designation of variables is free.
[0155]
【The invention's effect】
The present invention has the following effects.
1. It is possible to generate or display a stereoscopic image that is easily adapted to human physiology.
2. Even if the display target image changes, a stereoscopic image appropriate for the user can be generated or displayed.
3. The stereoscopic effect of the 3D display can be adjusted with a simple operation.
4). It is possible to reduce the burden on the programmer when creating contents or applications capable of appropriate stereoscopic display.
5. The user's effort to optimize the stereoscopic display is reduced.
6). The same applies to devices that cannot easily be plug-and-played in principle, such as a parallax barrier attached later, that can easily achieve stereoscopic adjustment and head tracking information that are not subject to the plug-and-play function.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating a positional relationship among a user, a screen, and a playback object 14 that are ideally viewed stereoscopically.
FIG. 2 is a diagram illustrating an example of an imaging system that realizes the state of FIG. 1;
FIG. 3 is a diagram illustrating another example of an imaging system that realizes the state of FIG. 1;
4 is a diagram illustrating another example of an imaging system that realizes the state of FIG. 1; FIG.
FIG. 5 is a diagram illustrating a model coordinate system used in the first stereoscopic image processing apparatus.
FIG. 6 is a diagram showing a world coordinate system used for the first stereoscopic image processing apparatus.
FIG. 7 is a diagram illustrating a camera coordinate system used for the first stereoscopic image processing apparatus.
FIG. 8 is a diagram showing a view volume used for the first stereoscopic image processing apparatus.
9 is a diagram showing a coordinate system after perspective transformation of the volume of FIG. 8; FIG.
FIG. 10 is a diagram illustrating a screen coordinate system used in the first stereoscopic image processing apparatus.
FIG. 11 is a configuration diagram of a first stereoscopic image processing apparatus.
FIG. 12 is a configuration diagram of a second stereoscopic image processing apparatus.
FIG. 13 is a configuration diagram of a third stereoscopic image processing apparatus.
FIGS. 14A and 14B are diagrams illustrating a left-eye image and a right-eye image displayed by the stereoscopic effect adjustment unit of the first stereoscopic image processing apparatus, respectively.
FIG. 15 is a diagram illustrating a plurality of objects having different parallaxes displayed by the stereoscopic effect adjusting unit of the first stereoscopic image processing apparatus.
FIG. 16 is a diagram illustrating an object whose parallax changes, which is displayed by the stereoscopic effect adjusting unit of the first stereoscopic image processing apparatus.
FIG. 17 is a diagram illustrating a relationship between a camera angle of view, an image size, and parallax when appropriate parallax is realized.
18 is a diagram illustrating a positional relationship of the imaging system that realizes the state of FIG. 17;
FIG. 19 is a diagram illustrating a positional relationship of an imaging system that realizes the state of FIG.
FIG. 20 is a diagram illustrating a camera arrangement when a multi-viewpoint image is generated with appropriate parallax.
FIG. 21 is a diagram illustrating a parallax correction map used by the distortion processing unit of the first stereoscopic image processing apparatus.
22 is a diagram illustrating a camera viewpoint when generating a parallax image according to the parallax correction map of FIG.
FIG. 23 is a diagram showing another camera viewpoint when generating a parallax image in accordance with the parallax correction map of FIG.
FIG. 24 is a diagram illustrating a parallax correction map used by the distortion processing unit of the first stereoscopic image processing apparatus.
FIG. 25 is a diagram showing a camera viewpoint when generating a parallax image according to the parallax correction map of FIG. 24;
FIG. 26 is a diagram illustrating a sense of distance correction map used by the distortion processing unit of the first stereoscopic image processing apparatus.
FIG. 27 is a diagram showing a camera viewpoint when generating a parallax image according to the sense of distance correction map of FIG.
FIG. 28 is a diagram showing another sense of distance correction map used by the distortion processing unit of the first stereoscopic image processing apparatus.
29 is a diagram illustrating a camera viewpoint when generating a parallax image according to the sense of distance correction map of FIG.
30 (a), FIG. 30 (b), FIG. 30 (c), FIG. 30 (d), FIG. 30 (e), and FIG. 30 (f) are all first stereoscopic image processing apparatuses. It is a top view of the parallax distribution obtained as a result of processing the distortion processing unit in the three-dimensional space.
FIG. 31 is a diagram illustrating a principle of processing by a distortion processing unit of the first stereoscopic image processing apparatus.
32 is a diagram specifically illustrating the process of FIG. 31. FIG.
FIG. 33 is a diagram specifically showing the processing of FIG. 31;
34 is a diagram specifically showing the processing of FIG. 31. FIG.
FIG. 35 is a diagram illustrating another example of processing by the distortion processing unit of the first stereoscopic image processing apparatus.
36 is a diagram specifically illustrating the processing of FIG. 35. FIG.
FIG. 37 is a diagram showing a depth map.
FIG. 38 is a diagram illustrating an example of processing by a distortion processing unit of the third stereoscopic image processing apparatus.
FIG. 39 is a diagram illustrating a depth map generated by processing by the distortion processing unit of the third stereoscopic image processing apparatus.
FIG. 40 is a diagram illustrating another example of processing by the distortion processing unit of the third stereoscopic image processing apparatus.
FIG. 41 is a diagram illustrating an example of processing by a two-dimensional image generation unit of the second stereoscopic image processing apparatus.
FIG. 42 is a diagram illustrating an example of a parallax image.
FIG. 43 is a diagram illustrating a parallax image in which the synthesis position is shifted by the two-dimensional image generation unit of the second stereoscopic image processing apparatus.
FIG. 44 is a diagram illustrating processing of an image edge adjustment unit of the second stereoscopic image processing apparatus.
FIG. 45 is a diagram illustrating processing of the second stereoscopic image processing apparatus.
FIG. 46 is a diagram illustrating another process of the second stereoscopic image processing apparatus.
FIG. 47 is a diagram illustrating another process of the second stereoscopic image processing apparatus.
FIG. 48 is a diagram illustrating a planar image to which a depth map is added.
FIG. 49 is a diagram showing a depth map.
FIG. 50 is a diagram illustrating a manner in which a parallax image is generated based on a depth map by a two-dimensional image generation unit of a second stereoscopic image processing apparatus.
FIG. 51 is a diagram illustrating a depth map corrected by the two-dimensional image generation unit of the second stereoscopic image processing apparatus.
FIG. 52 is a diagram illustrating a manner in which the stereoscopic image processing apparatus according to the embodiment is used as a library.
FIG. 53 is a configuration diagram in which a stereoscopic display library is incorporated into three-dimensional data software.
FIG. 54 is a diagram illustrating a manner in which a stereoscopic display library is used in a network-based system.
[Explanation of symbols]
10 users, 12 screens, 14 playback objects, 20 real objects, 22, 24, 26, 28 cameras, 30 front projection planes, 32 rear projection planes, 100 stereoscopic image processing devices, 112 stereoscopic effect adjustment units, 114, 152, 170 parallax control unit, 116 format conversion unit, 118 information acquisition unit, 122 instruction acquisition unit, 124 parallax identification unit, 132 camera arrangement determination unit, 136,174 distortion processing unit, 140,176 correction map holding unit, 142 two-dimensional image Generation unit, 150 parallax amount detection unit, 156 header inspection unit, 158 matching unit, 160 position shift unit, 164 parallax writing unit, 168 image edge adjustment unit, 178 two-dimensional image generation unit, 210 optical axis crossing plane, 300 three-dimensional Display library, 402 3D data software, 406 Shooting instruction processing unit 430 network utilization type of system, 432 game machine, 434 user terminal, 436 servers, 452 viewer program.

Claims (8)

立体画像を表示するための複数の視点画像間の視差を補正する視差制御部と、
前記視差制御部がその処理の際に参照すべき補正マップを保持するマップ保持部と、を含み、
前記補正マップは、前記視差の補正量が視点画像内の位置に対応して変化するよう記述されており、
前記視差制御部は、前記複数の視点画像の周辺部において視差を小さくし、または、周辺部のオブジェクトがユーザからより遠くに感知されるよう前記視差を変化させることを特徴とする立体画像処理装置。
A parallax control unit that corrects parallax between a plurality of viewpoint images for displaying a stereoscopic image;
A map holding unit that holds a correction map that the parallax control unit should refer to in the process,
In the correction map, the correction amount of the parallax is described so as to change corresponding to the position in the viewpoint image ,
The parallax control unit reduces the parallax in a peripheral part of the plurality of viewpoint images, or changes the parallax so that an object in the peripheral part is sensed farther from the user. .
前記視差制御部は、前記複数の視点画像のいずれかに選択的に処理を施すことによって前記視差を変化させることを特徴とする請求項記載の立体画像処理装置。The parallax control unit, three-dimensional image processing apparatus according to claim 1, wherein the changing the parallax By selectively processing performed on any of the plurality of viewpoint images. 前記複数の視点画像は三次元データを起点として生成されるものであり、
前記視差制御部は、前記複数の視点画像の生成にあたって、カメラパラメータを制御して前記視差を変化させることを特徴とする請求項1又は2記載の立体画像処理装置。
The plurality of viewpoint images are generated starting from three-dimensional data,
The parallax control unit, when generating the plurality of viewpoint images, a stereoscopic image processing apparatus and controls the camera parameter according to claim 1 or 2, wherein the changing the parallax.
前記複数の視点画像は三次元データを起点として生成されるものであり、
前記視差制御部は、前記複数の視点画像の生成にあたって、三次元空間自体を歪ませることにより前記視差を変化させることを特徴とする請求項記載の立体画像処理装置。
The plurality of viewpoint images are generated starting from three-dimensional data,
The parallax control unit, the plurality of carrying generated viewpoint image, three-dimensional image processing apparatus according to claim 1, wherein the changing the parallax by distorting the three-dimensional space itself.
前記複数の視点画像は、デプス情報が与えられている平面画像から生成されるものであり、前記視差制御部はそのデプス情報を操作することによって前記視差を変化させることを特徴とする請求項記載の立体画像処理装置。Wherein the plurality of viewpoint images, which are generated from the planar image depth information is given, the parallax control unit according to claim 1, characterized in that changing the parallax by manipulating the depth information The three-dimensional image processing apparatus described. 立体画像を表示するための複数の視点画像を取得する画像取得ステップと、
取得された前記複数の視点画像間の視差を、その補正量がそれら視点画像内の位置に対応して変化するように変化させる視差補正ステップと、含み、
前記視差補正ステップにおいて、前記複数の視点画像の周辺部において視差が小さくなるような視差の補正、または、周辺部のオブジェクトがユーザからより遠くに感知されるような視差の補正を行うことを特徴とする立体画像処理方法。
An image acquisition step of acquiring a plurality of viewpoint images for displaying a stereoscopic image;
A parallax correction step that changes the parallax between the acquired viewpoint images so that the correction amount changes corresponding to the position in the viewpoint images, and
In the parallax correction step, parallax correction is performed so that parallax is reduced in the peripheral portions of the plurality of viewpoint images, or parallax correction is performed so that peripheral objects are perceived further away from the user. A stereoscopic image processing method.
前記の各ステップを立体表示用ライブラリの機能として実装し、複数のプログラムからこのライブラリの機能を関数として呼出可能に構成したことを特徴とする請求項に記載の立体画像処理方法。7. The stereoscopic image processing method according to claim 6 , wherein each of the steps is implemented as a function of a stereoscopic display library, and the function of the library can be called as a function from a plurality of programs. 立体画像を表示するための複数の視点画像を取得する画像取得ステップと、
取得された前記複数の視点画像間の視差を、その補正量がそれら視点画像内の位置に対応して変化するように変化させる視差補正ステップと、をコンピュータに実行せしめるコンピュータプログラムであって、
前記視差補正ステップにおいて、前記複数の視点画像の周辺部において視差が小さくなるような視差の補正、または、周辺部のオブジェクトがユーザからより遠くに感知されるような視差の補正を行うことを特徴とするコンピュータプログラム。
An image acquisition step of acquiring a plurality of viewpoint images for displaying a stereoscopic image;
A computer program for causing a computer to execute a parallax correction step for changing parallax between the acquired viewpoint images so that a correction amount thereof changes corresponding to a position in the viewpoint images ,
In the parallax correction step, parallax correction is performed such that parallax is reduced in the peripheral portions of the plurality of viewpoint images, or parallax correction is performed so that objects in the peripheral portions are sensed farther from the user. Computer program.
JP2002087496A 2002-03-27 2002-03-27 Stereoscopic image processing method and apparatus Expired - Fee Related JP3702243B2 (en)

Priority Applications (25)

Application Number Priority Date Filing Date Title
JP2002087496A JP3702243B2 (en) 2002-03-27 2002-03-27 Stereoscopic image processing method and apparatus
EP20110161303 EP2381691B1 (en) 2002-03-27 2003-03-27 Method and apparatus for processing three-dimensional images
EP11161274A EP2357835A3 (en) 2002-03-27 2003-03-27 Method and apparatus for processing three-dimensional images
CN038071592A CN1643939B (en) 2002-03-27 2003-03-27 Method and apparatus for processing three-dimensional images
EP11161329.5A EP2357841B1 (en) 2002-03-27 2003-03-27 Method and apparatus for processing three-dimensional images
EP11161320A EP2357840A3 (en) 2002-03-27 2003-03-27 Method and apparatus for processing three-dimensional images
EP11161295.8A EP2357838B1 (en) 2002-03-27 2003-03-27 Method and apparatus for processing three-dimensional images
EP11161315A EP2357839A3 (en) 2002-03-27 2003-03-27 Method and apparatus for processing three-dimensional images
EP11161340A EP2387248A3 (en) 2002-03-27 2003-03-27 Method and apparatus for processing three-dimensional images
EP11161284A EP2357837A3 (en) 2002-03-27 2003-03-27 Method and apparatus for processing three-dimensional images
EP11161269A EP2362670B1 (en) 2002-03-27 2003-03-27 Method and apparatus for processing three-dimensional images
EP03715473A EP1489857B1 (en) 2002-03-27 2003-03-27 3-dimensional image processing method and device
KR1020047015105A KR100812905B1 (en) 2002-03-27 2003-03-27 3-dimensional image processing method and device
PCT/JP2003/003791 WO2003081921A1 (en) 2002-03-27 2003-03-27 3-dimensional image processing method and device
EP20110161281 EP2357836B1 (en) 2002-03-27 2003-03-27 Method and apparatus for processing three-dimensional images
US10/949,528 US8369607B2 (en) 2002-03-27 2004-09-27 Method and apparatus for processing three-dimensional images
US12/976,262 US8131064B2 (en) 2002-03-27 2010-12-22 Method and apparatus for processing three-dimensional images
US12/986,530 US8577128B2 (en) 2002-03-27 2011-01-07 Method and apparatus for processing three-dimensional images
US12/986,453 US8254668B2 (en) 2002-03-27 2011-01-07 Method and apparatus for processing three-dimensional images
US12/986,471 US8577127B2 (en) 2002-03-27 2011-01-07 Method and apparatus for processing three-dimensional images
US12/986,551 US8724886B2 (en) 2002-03-27 2011-01-07 Method and apparatus for processing three-dimensional images
US12/986,491 US8879824B2 (en) 2002-03-27 2011-01-07 Method and apparatus for processing three-dimensional images
US12/986,509 US8417024B2 (en) 2002-03-27 2011-01-07 Method and apparatus for processing three-dimensional images
US13/088,752 US8472702B2 (en) 2002-03-27 2011-04-18 Method and apparatus for processing three-dimensional images
US13/283,361 US8559703B2 (en) 2002-03-27 2011-10-27 Method and apparatus for processing three-dimensional images

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002087496A JP3702243B2 (en) 2002-03-27 2002-03-27 Stereoscopic image processing method and apparatus

Publications (2)

Publication Number Publication Date
JP2003284094A JP2003284094A (en) 2003-10-03
JP3702243B2 true JP3702243B2 (en) 2005-10-05

Family

ID=29233666

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002087496A Expired - Fee Related JP3702243B2 (en) 2002-03-27 2002-03-27 Stereoscopic image processing method and apparatus

Country Status (1)

Country Link
JP (1) JP3702243B2 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010226500A (en) * 2009-03-24 2010-10-07 Toshiba Corp Device and method for displaying stereoscopic image
US8531452B2 (en) 2009-07-21 2013-09-10 Konami Digital Entertainment Co., Ltd. Video game machine, gaming image display control method and display mode switching control method
JP5356139B2 (en) * 2009-07-21 2013-12-04 株式会社コナミデジタルエンタテインメント Video game apparatus and display mode switching control method
JP2011024635A (en) * 2009-07-21 2011-02-10 Konami Digital Entertainment Co Ltd Video game device and game image display control method
JP2013214787A (en) * 2010-07-28 2013-10-17 Panasonic Corp Video signal processing apparatus and video signal processing method
JP5236051B2 (en) * 2011-08-02 2013-07-17 ティディヴィジョン コーポレイション エス.エー. デ シー.ヴィ. 3D video game system
JP7375022B2 (en) * 2019-08-29 2023-11-07 オリンパス株式会社 Image processing device operating method, control device, and endoscope system

Also Published As

Publication number Publication date
JP2003284094A (en) 2003-10-03

Similar Documents

Publication Publication Date Title
JP3749227B2 (en) Stereoscopic image processing method and apparatus
JP3857988B2 (en) Stereoscopic image processing method and apparatus
KR100812905B1 (en) 3-dimensional image processing method and device
JP2004221700A (en) Stereoscopic image processing method and apparatus
US8724886B2 (en) Method and apparatus for processing three-dimensional images
JP2003284093A (en) Stereoscopic image processing method and apparatus therefor
JP2004221699A (en) Stereoscopic image processing method and apparatus
JP4118146B2 (en) Stereoscopic image processing device
JP2003284095A (en) Stereoscopic image processing method and apparatus therefor
JP3702243B2 (en) Stereoscopic image processing method and apparatus

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040331

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040527

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050322

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050513

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050628

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050715

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080722

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090722

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090722

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100722

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100722

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110722

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120722

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120722

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130722

Year of fee payment: 8

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees