特表2019-534599IP Force 特許公報全文掲載

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】特表2019-534599(P2019-534599A)
(43)【公表日】2019年11月28日
(54)【発明の名称】多層シフトを使用してステレオビジョンを容易にするための方法および装置
(51)【国際特許分類】
   H04N 13/111 20180101AFI20191101BHJP
   G06T 7/593 20170101ALI20191101BHJP
   G06T 7/285 20170101ALI20191101BHJP
   H04N 13/239 20180101ALI20191101BHJP
   H04N 13/122 20180101ALI20191101BHJP
【FI】
   H04N13/111
   G06T7/593
   G06T7/285
   H04N13/239
   H04N13/122
【審査請求】有
【予備審査請求】未請求
【全頁数】26
(21)【出願番号】特願2019-512883(P2019-512883)
(86)(22)【出願日】2017年8月25日
(85)【翻訳文提出日】2019年4月18日
(86)【国際出願番号】IB2017055138
(87)【国際公開番号】WO2018047033
(87)【国際公開日】20180315
(31)【優先権主張番号】15/258,737
(32)【優先日】2016年9月7日
(33)【優先権主張国】US
(81)【指定国】 AP(BW,GH,GM,KE,LR,LS,MW,MZ,NA,RW,SD,SL,ST,SZ,TZ,UG,ZM,ZW),EA(AM,AZ,BY,KG,KZ,RU,TJ,TM),EP(AL,AT,BE,BG,CH,CY,CZ,DE,DK,EE,ES,FI,FR,GB,GR,HR,HU,IE,IS,IT,LT,LU,LV,MC,MK,MT,NL,NO,PL,PT,RO,RS,SE,SI,SK,SM,TR),OA(BF,BJ,CF,CG,CI,CM,GA,GN,GQ,GW,KM,ML,MR,NE,SN,TD,TG),AE,AG,AL,AM,AO,AT,AU,AZ,BA,BB,BG,BH,BN,BR,BW,BY,BZ,CA,CH,CL,CN,CO,CR,CU,CZ,DE,DJ,DK,DM,DO,DZ,EC,EE,EG,ES,FI,GB,GD,GE,GH,GM,GT,HN,HR,HU,ID,IL,IN,IR,IS,JO,JP,KE,KG,KH,KN,KP,KR,KW,KZ,LA,LC,LK,LR,LS,LU,LY,MA,MD,ME,MG,MK,MN,MW,MX,MY,MZ,NA,NG,NI,NO,NZ,OM,PA,PE,PG,PH,PL,PT,QA,RO,RS,RU,RW,SA,SC,SD,SE,SG,SK,SL,SM,ST,SV,SY,TH,TJ,TM,TN,TR,TT
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.WCDMA
2.VISUAL BASIC
3.SMALLTALK
(71)【出願人】
【識別番号】515076873
【氏名又は名称】ノキア テクノロジーズ オサケユイチア
(74)【代理人】
【識別番号】100099759
【弁理士】
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【弁理士】
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100092624
【弁理士】
【氏名又は名称】鶴田 準一
(74)【代理人】
【識別番号】100141162
【弁理士】
【氏名又は名称】森 啓
(72)【発明者】
【氏名】ボディ ユアン
(72)【発明者】
【氏名】ムニンダー ベルダンディー
【テーマコード(参考)】
5C061
5L096
【Fターム(参考)】
5C061AB04
5C061AB06
5C061AB08
5L096CA04
5L096CA05
5L096EA02
5L096FA02
5L096GA51
5L096HA04
(57)【要約】
【課題】多層シフトを使用してステレオビジョンを容易にするための方法、装置およびコンピュータ・プログラム・プロダクトの提供。
【解決手段】本願方法の1つの例は、それぞれ異なる位置からキャプチャした第1のRGB画像および第2のRGB画像を受信するステップと、対応する深度画像を生成するステップと、その深度画像において第1のセグメント化を実行するステップと、第1のオブジェクトマスクおよび第1のオブジェクトマスクをもたらすRGB画像において第2のセグメント化を実行するステップと、背景層を形成するために背景層のステッチを行うステップと、前記背景層のシフトよりも速い速度で行われるオブジェクト層のシフトを示す、第1の位置からのビューを表す第1の画像および第2の位置からのビューを表す第2の画像を含む一連の画像を生成するステップと、を含む。
【選択図】図3
【特許請求の範囲】
【請求項1】
少なくとも、第1の位置からキャプチャされたオブジェクトを含む第1の画像および第2の位置からキャプチャされた前記オブジェクトを含む第2の画像を受信するステップであって、該第1位置は該第2位置とは異なる、ステップと、
少なくとも、前記第1の画像に対応する第1の深度画像および、前記第2の画像に対応する第2の深度画像を受信するステップと、
前記第1の深度画像および前記第2の深度画像に対して、予め定義された閾値に基づいて実行される第1のセグメント化をさせるステップであって、該第1のセグメント化は、第1のオブジェクトマスクと第2のオブジェクトマスクとを含む一組の画像をもたらす、ステップと、
前記第1の深度画像および前記第2の深度画像に対して、前記第1のオブジェクトマスクと前記第2のオブジェクトマスクを制約条件として利用して、実行される第2のセグメンテト化をさせるステップであって、該第2のセグメント化は、第1のオブジェクト画像、第2のオブジェクト画像、第1の背景層、および、第2の背景層を含む一組の画像をもたらす、ステップと、
背景層を形成するために、前記第1の背景層と前記第2の背景層とをステッチさせるステップと、
前記第1の位置からのビューを表す第1の画像および前記第2の位置からのビューを表す第2の画像を含む、一連の画像を生成するステップであって、該一連の画像は、前記背景層のシフトよりも速い速度でおこるオブジェクト層のシフトを示す、ステップと、
を含む方法。
【請求項2】
前記第1の画像は、前記背景層で補間された前記第1のオブジェクト画像を含み、前記第2の画像は、前記背景層で補間された前記第2のオブジェクト画像を含む、請求項1に記載の方法。
【請求項3】
第2のセグメント化は最大フロー最小カットアルゴリズムにしたがって行われる、請求項1に記載の方法。
【請求項4】
前記第1の背景層と前記第2の背景層とのステッチから生じる第1の穴埋めのステップと、近傍の有効画素に関連する値を平均するためのプロセスを実行するステップと、黒領域における前記ピクセルに対する新しい値として該平均を設定するステップとを含む第2の穴埋めのステップと、をさらに含む請求項1に記載の方法。
【請求項5】
前記第1のセグメント化のステップは、さらに、前記第1の画像および前記第2の画像から、それぞれ、前記第1深度画像および前記第2深度画像を生成するステップを含む、請求項1に記載の方法。
【請求項6】
距離に対応する前記所定の閾値を設定するステップと、前記深度画像セグメント化から、前記人物の形状マスクを利用してオブジェクト層を識別するステップと、前記画像の反転を決定し、該反転を前記背景マスクにするステップと、をさらに含む請求項1に記載の方法。
【請求項7】
層の前記シフトが異なる前記速度は、前記オブジェクト層と前記背景層との間の距離に間接的に比例する、請求項1に記載の方法。
【請求項8】
少なくとも1つのプロセッサと、コンピュータ・プログラム・コードを含む少なくとも1つのメモリとを備える装置であって、前記少なくとも1つのメモリおよび前記コンピュータ・プログラム・コードは、該プロセッサを用いて、該装置に、少なくとも、
少なくとも、第1の位置からキャプチャされたオブジェクトを含む第1の画像、および、第2の位置からキャプチャされたオブジェクトを含む第2の画像を受信させ、ここで、該第1の位置は該第2の位置とは異なるものであり、
少なくとも、前記第1の画像に対応する第1の深度画像、および、前記第2の画像に対応する第2の深度画像を受信させ、前記第1の深度画像および前記第2の深度画像に対して実行され、予め定められた閾値に基づいて、前記第1のセグメント化は、第1のオブジェクトマスクと第2のオブジェクトマスクとを含む一組の画像をもたらす、第1のセグメント化をさせ、前記第1のオブジェクトマスクと前記第2のオブジェクトマスクを制約として利用して、前記第1の画像と前記第2の画像に対して実行され、第1のオブジェクト画像、第2のオブジェクト画像、第1の背景層、および、第2の背景層を含む一組のセグメントをもたらす、第2のセグメント化をさせ、
背景層を形成するために前記第1の背景層と前記第2の背景層とをステッチさせ、前記第1の位置からのビューを表す第1の画像と、前記第2の位置からのビューを表す第2の画像とを含み、前記背景層のシフトよりも速い速度で行われるオブジェクト層のシフトを示す一連の画像を生成させるように構成される、
装置。
【請求項9】
前記第1の画像は、前記背景層で補間された前記第1のオブジェクト画像を含み、前記第2の画像は、前記背景層で補間された前記第2のオブジェクト画像を含む、請求項8に記載の装置。
【請求項10】
前記第2のセグメント化は、最大フロー最小カットアルゴリズムにしたがって実行される、請求項8に記載の装置。
【請求項11】
前記少なくとも1つのメモリおよび前記コンピュータ・プログラム・コードは、前記プロセッサを用いて、前記装置に、前記第1の背景層と前記第2の背景層との前記ステッチングから生じる第1の穴埋めステップを実行させ、近傍の有効画素に関連する値を平均するためのプロセスをインプリメントすること、および、前記平均値を、黒領域の前記ピクセルの新しい値として設定することを含む第2の穴埋めステップを実行させるようにさらに構成される、請求項8に記載の装置。
【請求項12】
前記第1セグメント化は、さらに、前記第1の画像および前記第2の画像からそれぞれ前記第1の深度画像および前記第2の深度画像を生成することを含む、請求項8に記載の装置。
【請求項13】
前記少なくとも1つのメモリおよび前記コンピュータ・プログラム・コードは、前記装置に、前記プロセッサを用いて、さらに、距離に対応する前記所定の閾値を設定させ、前記深度画像セグメント化から、前記人物の形状マスクを利用してオブジェクト層を識別し、前記画像の反転を決定し、該反転を前記背景マスクにさせるように構成される、請求項8に記載の装置。
【請求項14】
層の前記シフトが異なる前記速度は、前記オブジェクト層と前記背景層との間の距離に間接的に比例する、請求項8に記載の装置。
【請求項15】
その中に格納されたコンピュータ実行可能プログラム・コード命令を有する少なくとも1つの固定コンピュータ読取り可能記憶媒体を備えるコンピュータ・プログラム・プロダクトであって、該コンピュータ実行可能プログラム・コード命令は、少なくとも、
第1の位置からキャプチャされたオブジェクトを含む第1の画像および第2の位置からキャプチャされた前記オブジェクトを含む第2の画像を受信することであって、該第1の位置は該第2の位置とは異なるものである、受信することと、少なくとも、前記第1の画像に対応する第1の深度画像、および、前記第2の画像に対応する第2の深度画像を受信することと、前記第1の深度画像および前記第2の深度画像に対して、予め定義された閾値に基づいて実行される第1のセグメント化をさせることであって、該第1のセグメント化は、第1のオブジェクトマスクと第2のオブジェクトマスクとを含む一組の画像をもたらす、第1のセグメント化をさせることと、
前記第1の深度画像および前記第2の深度画像に対して、前記第1のオブジェクトマスクと前記第2のオブジェクトマスクを制約条件として利用して、実行される第2のセグメンテト化をさせることであって、該第2のセグメント化は、第1のオブジェクト画像、第2のオブジェクト画像、第1の背景層、および、第2の背景層を含む一組の画像をもたらす、第2のセグメンテト化をさせることと、
背景層を形成するために前記第1の背景層と前記第2の背景層とをステッチさせるステップと、前記第1の位置からのビューを表す第1の画像と、前記第2の位置からのビューを表す第2の画像と、を含む、一連の画像を生成することであって、前記背景層のシフトよりも速い速度で行われるオブジェクト層のシフトを示す一連の画像を生成することと、
のためのプログラム・コード命令を備える、コンピュータ・プログラム・プロダクト。
【請求項16】
前記第1の画像は、前記背景層で補間された前記第1のオブジェクト画像を含み、前記第2の画像は、前記背景層で補間された前記第2のオブジェクト画像を含む、請求項15に記載のコンピュータ・プログラム・プロダクト。
【請求項17】
前記第2のセグメント化は、最大フロー最小カットアルゴリズムにしたがって実行される、請求項15に記載のコンピュータ・プログラム・プロダクト。
【請求項18】
該コンピュータ実行可能プログラム・コード命令は、さらに、前記第1の背景層と前記第2の背景層とのステッチから生じる第1の穴埋めすることと、
近傍の有効画素に関連する値を平均するためのプロセスをインプリメントすること、前記平均値を、黒領域の前記ピクセルの新しい値として設定することを含む第2の穴埋めすることと、
のためのプログラム・コード命令を備える、請求項15に記載のコンピュータ・プログラム・プロダクト。
【請求項19】
前記第1セグメント化は、さらに、前記第1の画像および前記第2の画像からそれぞれ前記第1の深度画像および前記第2の深度画像を生成することを含む、請求項15に記載のコンピュータ・プログラム・プロダクト。
【請求項20】
該コンピュータ実行可能プログラム・コード命令は、さらに、
距離に対応する前記所定の閾値を設定することと、
前記深度画像セグメント化から、前記人物の形状マスクを利用してオブジェクト層を識別することと、
前記画像の反転を決定し、該反転を前記背景マスクにすることと、
のためのプログラム・コード命令を備える、請求項15に記載のコンピュータ・プログラム・プロダクト。
【請求項21】
層の前記シフトが異なる前記速度は、前記オブジェクト層と前記背景層との間の距離に間接的に比例する、請求項15に記載のコンピュータ・プログラム・プロダクト。
【発明の詳細な説明】
【技術分野】
【0001】
本願発明の概して、オクルージョンの影響を打ち消すための画像処理、立体視、画像セグメント化技術の利用に関する。特に、多層シフトを使用して立体視を容易にするための様々な方法、装置、およびコンピュータ・プログラム製品
【背景技術】
【0002】
従来の技術は、ステレオビジョンビューを構築するためにシーンパノラマを利用しようと試みることがあるが、ビューの移動中にオクルージョンが発生し、したがって、そのシーンは現実性を欠いている。本出願は、オクルージョン効果を考慮して異なる位置から撮影された2つのシーン間のビューの補間を提供し、それはより現実的なシーンの生成をもたらす。
【0003】
図5は、従来の技法がシーンを生成するために使用されるときのオクルージョンを実証する図を示す。例えば、位置Aにある撮像装置が2つの球体が重なり合う画像を取り込む一方、位置Bにあるとき、撮像装置は2つの球体が重ならない画像を取り込む。図6Aは位置Aにおける2つの重なり合った球の画像を示し、一方、図6Bは2つの球が存在する場合の画像を示す。パノラマ画像を使用している場合は、ユーザが位置Bに移動したときにオーバーラップすることになるが、唯一の変更はパノラマ画像の表示が移動することである。図2Bに示す図は現実性を欠いている。
【0004】
これに関して、既知および既存のシステムを改善するための領域が特定されている。適用された努力、創意工夫、および革新を通じて、そのようなシステムを改善するための解決策が実現されており、本願発明の実施形態に関連して説明されている。
【発明の概要】
【0005】
したがって、多層シフトを使用することによって立体視を容易にするための方法、装置およびコンピュータ・プログラム製品が本願発明の例示的な実施形態にしたがって提供される。すなわち、本願発明の画像をいくつかの層に切断し、異なる層を異なる速度でシフトさせることによって立体視におけるオクルージョンの問題を解決することを目的とする。これは、現実の世界における動きの見方と同じまたは類似の効果をもたらすことができる。
【0006】
いくつかの実施形態では、本明細書に記載の方法の利点は、立体視におけるオクルージョンの問題が解決され得る。さらに、本明細書に記載の低い計算複雑性しか必要としない。
【0007】
いくつかの実施形態では、少なくとも第1の画像を受け取ることを含む方法を提供することができ、第1の画像は、第1の位置からキャプチャされたオブジェクトを含む。第2の画像は、第2の位置からキャプチャされたオブジェクトを含み、第2の位置とは異なる。少なくとも第1の深度画像を受け取り、第1の深度画像は第1の画像に対応し、第2の深度画像は第2の画像に対応する。第1のセグメント化を引き起こし、この第1のセグメント化は、第1の深度画像および第2の深度画像に対して実行され、所定の閾値に基づいて、第1のオブジェクトマスクおよび第2のオブジェクトマスクを含む一組の画像をもたらす。第2のセグメント化を引き起こし、この第2のセグメント化は第1の画像と第2の画像に対して実行され、第1のオブジェクトマスクと第2のオブジェクトマスクを制約条件として利用する。第2のセグメント化は、第1のオブジェクト画像、第2のオブジェクト画像、第1の背景層、および第2の背景層を含むセグメントのセットをもたらす。第1の背景層と第2の背景層とのステッチングを引き起こし、背景層を形成し、一連の画像を生成する。一連の画像は、第1の位置からのビューを表す第1の画像および第2の位置からのビューを表す第2の画像を含む。一連の画像は、背景層のシフトよりも高速で行われるオブジェクト層のシフトを示す。
【0008】
いくつかの実施形態では、第1の画像は背景層で補間された第1のオブジェクト画像を含み、第2の画像は背景層で補間された第2のオブジェクト画像を含む。いくつかの実施形態では、第2のセグメント化は最大フロー最小カットアルゴリズムにしたがって実行される。
【0009】
いくつかの実施形態では、本願方法は、第1の背景層と第2の背景層とのステッチングから生じる第1の穴埋めステップと、近くの有効画素に関連する値を平均するためのプロセスを実行し、その平均を黒領域内の画素に対する新しい値として設定することを含む第2の穴埋めステップとをさらに含むことができる。
【0010】
いくつかの実施形態では、第1のセグメント化ステップはさらに、第1の画像および第2の画像からそれぞれ第1の深度画像および第2の深度画像を生成することを含む。いくつかの実施形態では、本願方法は、距離に対応する所定の閾値を設定することをさらに含み得る。深度画像セグメント化から人の形状マスクを利用してオブジェクト層を識別し、画像の逆行列を決定し、その逆行列を背景マスクにする。いくつかの実施形態では、層のシフトの異なる速度は、オブジェクト層と背景層との間の距離に間接的に比例する。
【0011】
いくつかの実施形態では、少なくとも1つのプロセッサと、コンピュータ・プログラム・コードを含む少なくとも1つのメモリとを備える装置が提供されることができる。コンピュータ・プログラム・コードは、プロセッサと共に、少なくとも、第1の位置からキャプチャされたオブジェクトを含む第1の画像、および、第2の位置からキャプチャされたオブジェクトを含む第2の画像であって、第1の位置は第2の位置とは異なる、第2の画像を装置に受信させるように構成され、装置は、少なくとも第1の深度画像を受け取るように構成され、第1の深度画像は第1の画像に対応し、第2の深度画像は、第2の画像に対応する。装置は、第1のセグメント化を生じさせるように構成され、第1のセグメント化は第1の深度画像および第2の深度画像に対して行われる。また、予め定められた閾値に基づいて、第1のセグメント化は、第1のオブジェクトマスクと第2のオブジェクトマスクとを含む一組の画像をもたらす。装置は、第2のセグメント化を引き起こすように構成され、第2のセグメント化は第1の画像と第2の画像に対して実行され、第1のオブジェクトマスクと第2のオブジェクトマスクを制約として利用する。第2のセグメント化は、第1のオブジェクト画像、第2のオブジェクト画像、第1の背景層、および第2の背景層を含むセグメントのセットをもたらす。第1の背景層と第2の背景層とをつなぎ合わせて背景層を形成し、一連の画像を生成する。一連の画像は、第1の位置からのビューを表す第1の画像と、第2の位置からのビューを表す第2の画像とを含む。一連の画像は、背景層のシフトよりも速い速度で行われるオブジェクト層のシフトを示す。
【0012】
いくつかの実施形態では、第1の画像は背景層で補間された第1のオブジェクト画像を含み、第2の画像は背景層で補間された第2のオブジェクト画像を含む。いくつかの実施形態では、第2のセグメント化は最大フロー最小カットアルゴリズムにしたがって実行される。
【0013】
いくつかの実施形態では、少なくとも1つのメモリおよびコンピュータ・プログラム・コードは、プロセッサを用いて、第1の背景層と第2の背景層とのステッチングから生じる第1の穴埋めステップを装置に実行させ、近傍の有効画素に関連する値を平均するためのプロセスを実行し、その平均を黒領域内の画素に対する新しい値として設定することを含む第2の穴埋めステップを実行させる。
【0014】
いくつかの実施形態では、第1のセグメント化ステップはさらに、第1の画像および第2の画像からそれぞれ第1の深度画像および第2の深度画像を生成することを含む。いくつかの実施形態では、少なくとも1つのメモリおよびコンピュータ・プログラム・コードは、プロセッサを用いて、距離に対応する所定の閾値を装置に設定させるようにさらに構成される。深度画像セグメント化から人の形状マスクを利用してオブジェクト層を識別し、画像の逆行列を決定し、その逆行列を背景マスクにする。
【0015】
いくつかの実施形態では、層のシフトが異なる速度は、オブジェクト層と背景層との間の距離に間接的に比例する。
【0016】
いくつかの実施形態では、コンピュータ実行可能プログラム・コード命令を格納した少なくとも1つの非一時的コンピュータ可読記憶媒体を含むコンピュータ・プログラム製品を提供することができる。コンピュータ実行可能プログラム・コード命令は、少なくとも第1の画像を受け取るためのプログラム・コード命令を含み、第1の画像は、第1の位置からキャプチャされたオブジェクトを含み、第2の画像は、第2の位置からキャプチャされたオブジェクトを含み、第1の位置は第2の位置とは異なる。さらに、第1画像に対応する第1深度画像および第2の画像に対応する第2の深度画像を受け取るためのプログラム・コード命令を含む。さらに、第1の深度画像および第2の深度画像に対して実行される第1のセグメント化を引き起こすためのプログラム・コード命令を含む。予め定められた閾値に基づいて、第1のセグメント化は、第1のオブジェクトマスクと第2のオブジェクトマスクとを含む一組の画像をもたらす。さらに、第1の画像と第2の画像に対して実行される第2のセグメント化を引き起こすためのプログラム・コード命令を含む。第2のセグメント化は、第1のオブジェクトマスクと第2のオブジェクトマスクを制約条件として利用する。第2のセグメント化は、第1のオブジェクト画像、第2のオブジェクト画像、第1の背景層、および第2の背景層を含むセグメントのセットをもたらす。そして、第1の背景層および第2の背景層のステッチを引き起こして背景層を形成するためのプログラム・コード命令を含む。前記一連の画像は、前記第1の位置からのビューを表す第1の画像と前記第2の位置からのビューを表す第2の画像とを含む。一連の画像は、背景層のシフトよりも速い速度で行われるオブジェクト層のシフトを示す。
【0017】
いくつかの実施形態では、第1の画像は背景層で補間された第1のオブジェクト画像を含み、第2の画像は背景層で補間された第2のオブジェクト画像を含む。いくつかの実施形態では、第2のセグメント化は最大フロー最小カットアルゴリズムにしたがって実行される。
【0018】
いくつかの実施形態では、コンピュータ実行可能プログラム・コード命令は、第1の背景層のステッチングから生じる第1の穴埋めステップのためのプログラム・コード命令をさらに含む。第2の穴埋めステップは、近隣の有効画素に関連する値を平均するためのプロセスを実行し、その平均を黒領域内の画素に対する新しい値として設定するステップを含む。
【0019】
いくつかの実施形態では、第1のセグメント化ステップはさらに、第1の画像および第2の画像からそれぞれ第1の深度画像および第2の深度画像を生成することを含む。いくつかの実施形態では、コンピュータ実行可能プログラム・コード命令は、距離に対応する所定の閾値を設定するためのプログラム・コード命令をさらに含む。深度画像セグメント化から人の形状マスクを利用してオブジェクト層を識別し、画像の逆行列を決定し、その逆行列を背景マスクにする。
【0020】
いくつかの実施形態では、層のシフトが異なる速度は、オブジェクト層と背景層との間の距離に間接的に比例する。
【図面の簡単な説明】
【0021】
このように本願発明の実施形態を一般的な用語で説明してきたが、次に、必ずしも一定の縮尺で描かれていない添付の図面を参照する。
【図1】本願発明の例示的な実施形態にしたがって構成することができるシステムのブロック図である。
【図2】本願発明の例示の実施形態にしたがって構成することができる装置のブロック図である。
【図3】本願発明の一実施形態による装置例を動作させる例示的方法を示すフローチャートである。
【図4】本願発明の一実施形態による装置例を動作させる例示的方法を示すフローチャートである。
【図5】図5、6A、および6Bは、オクルージョン効果を説明する一連の図である。
【図6A】図5、6A、および6Bは、オクルージョン効果を説明する一連の図である。
【図6B】図5、6A、および6Bは、オクルージョン効果を説明する一連の図である。
【発明を実施するための形態】
【0022】
いくつかの例示的な実施形態が、添付の図面を参照して以下により詳細に説明される。全ての実施形態ではなくいくつかの実施形態が示される。実際に、例示の実施形態は多くの異なる形態をとることができ、本明細書に記載の実施形態に限定されると解釈されるべきではない。むしろ、これらの本開示が適用可能な法的要件を満たすように提供されている。全体を通して、同じ参照番号は同じ要素を指す。用語「データ」、「コンテンツ」、「情報」、および同様の用語は、いくつかの例示的実施形態によれば、交換可能に使用され得、送信、受信、操作、および/または格納され得るデータを指す。さらに、本明細書で使用されることがある「例示的」という用語は、いかなる定性的評価も伝達するために提供されているのではなく、単に例の説明を伝達するために提供されている。したがって、そのような用語の使用は、本願発明の実施形態の趣旨および範囲を限定するものと解釈されるべきではない。
【0023】
本明細書で使用されているように、「回路」という用語は、以下のすべてを指す。
(a)ハードウェアのみの回路実装(アナログおよび/またはデジタル回路のみでの実装など)、
(b)次のような回路とソフトウェア(および/またはファームウェア)の組み合わせ、
(i)プロセッサを組み合わせたもの、または
(ii)さまざまな機能を実行する携帯電話やサーバなど、ソフトウェア、およびメモリを組み合わせて装置を生成するプロセッサ/ソフトウェアの一部(デジタル信号プロセッサを含む)、
(c)ソフトウェアまたはファームウェアが物理的に存在しなくても、動作のためにソフトウェアまたはファームウェアを必要とするマイクロプロセッサまたはマイクロプロセッサの一部などの回路。
【0024】
「回路」のこの定義は、任意の請求項を含む本出願におけるこの用語のすべての使用に適用される。さらなる例として、本出願で使用されるように、「回路」という用語は、単にプロセッサ(または複数のプロセッサ)またはプロセッサの一部、ならびにその(またはそれらの)付随するソフトウェアおよび/またはファームウェアの実装形態も含む。「回路」という用語は、例えば、特定の特許請求の範囲の要素に適用可能であるならば、携帯電話用のベースバンド集積回路または特定用途向け集積回路、あるいはサーバ、セルラーネットワークデバイス、または他のネットワークデバイス内の同様の集積回路もカバーする。
【0025】
ここで図1を参照すると、コンピューティングデバイス10、サーバ12、または他のネットワークエンティティ(以下、「サーバ」と総称する)とユーザデバイス16との間において、無線でまたは有線を介してのいずれかで通信をサポートするシステムが示される。ここで示されるように、コンピューティングデバイス10、サーバ12、およびユーザデバイス16は、セルラーネットワークまたはインターネットなどの広域ネットワークまたはローカルエリアネットワークなどのネットワーク14を介して通信することができる。しかしながら、コンピューティングデバイスとサーバとは、コンピューティングデバイスとサーバとの間の直接通信を介するなど、他の方法で通信することができる。
【0026】
コンピューティングデバイス10またはユーザデバイス16は、携帯情報端末(PDA)、携帯電話、スマートフォン、ラップトップコンピュータ、タブレットコンピュータ、またはこれらの任意の組み合わせ、ならびに他の種類の音声およびテキスト通信システムなどのモバイルコンピューティングデバイスを含むいくつかの異なるデバイスによって具体化することができる。あるいは、コンピューティングデバイス10および/またはユーザデバイス16は、パーソナルコンピュータ、コンピュータワークステーションなどのような固定コンピューティングデバイスであり得る。サーバ12は、コンピューティング装置によっても具体化することができ、一実施形態では、ウェブサーバによって具体化される。さらに、図1のシステムは単一のサーバを示しているが、サーバは、コンピューティングデバイスによって行われるブラウズ活動をサポートするために協働することができる複数のサーバから構成することができる。ユーザ装置16は、コンピューティング装置10によって具現化することができ、一実施形態では、複数のコンピューティング装置から構成することができる。
【0027】
ネットワーク14は、媒体(例えば、ツイストペア、同軸、光ファイバ、無線周波数)、ハードウェア(例えば、ルータ、スイッチ、リピータ、トランシーバ)、および、遠隔地にいる人間および/または装置間の通信を容易にするプロトコル(例えば、TCP/IP、UDP、イーサネット(登録商標)、Wi−Fi、WiMAX)の任意の組み合わせとすることができる。これに関して、通信インタフェース308は、1つ以上のエアインタフェース規格、通信プロトコル、変調タイプ、アクセスタイプなどで動作することが可能であり得る。より具体的には、システム302、通信インタフェース308などは、さまざまな第1世代(1G)、第2世代(2G)、2.5G、および、第3世代(3G)通信プロトコル、第4世代(4G)通信プロトコル、インターネットプロトコルマルチメディアサブシステム(IMS)通信プロトコル(例えば、セッション開始プロトコル(SIP))などにしたがって動作することが可能であり得る。例えば、移動端末は、2G無線通信プロトコルIS−136(時分割多元接続(TDMA))、グローバル移動体通信システム(GSM(登録商標))、IS−95(符号分割多元接続(CDMA))などにしたがって動作することが可能であり得る。また、例えば、移動端末は、2.5G無線通信プロトコル一般パケット無線サービス(GPRS)、拡張データGSM(登録商標)環境(EDGE)などにしたがって動作することが可能であり得る。さらに、例えば、移動端末は、ユニバーサル移動体通信システム(UMTS)、符号分割多元接続2000(CDMA2000)、広帯域符号分割多元接続(WCDMA)、時分割同期符号分割多元接続(TD −SCDMA)などの3G無線通信プロトコルにしたがって動作することが可能であり得る。移動端末はさらに、ロングタームエボリューション(LTE)またはエボルブドユニバーサル地上無線アクセスネットワーク(E−UTRAN)などの3.9G無線通信プロトコルにしたがって動作することができる。さらに、例えば、移動端末は、将来開発されるかもしれない同様の無線通信プロトコルと同様に、第4世代(4G)無線通信プロトコルおよび/または同様のものにしたがって動作することが可能であり得る。
【0028】
コンピューティングデバイス10またはユーザデバイス16を具現化するデバイスの種類にかかわらず、コンピューティングデバイス10またはユーザデバイス16は、図2に示されるように装置20を含むかまたは装置20と関連付けることができる。これに関して、装置は、プロセッサ22、メモリ装置24、通信インタフェース26、およびユーザインタフェース28を含むか、またはそれらと通信することができる。したがって、いくつかの実施形態では、装置または要素は互いに通信しているように示されているが、以下では、そのような装置または要素は同じ装置または要素内で実施可能であると見なされる。通信で示されている装置または要素は、代替的に同じ装置または要素の一部であると理解されるべきである。
【0029】
いくつかの実施形態では、プロセッサ22(および/またはコプロセッサ、またはプロセッサを支援する、またはそうでなければプロセッサに関連する任意の他の処理回路)は、その装置の構成要素間で情報を渡すためにバスを介してメモリ装置24と通信することができる。メモリデバイスは、例えば、1つ以上の揮発性および/または不揮発性メモリを含み得る。言い換えれば、例えば、メモリデバイスは、マシン(例えば、プロセッサのようなコンピューティングデバイス)によって検索可能であり得るデータ(例えば、ビット)を記憶するように構成されたゲートを含む電子記憶デバイス(例えば、コンピュータ可読記憶媒体)であり得る。メモリデバイスは、本願発明の例示的な実施形態にしたがって装置20が様々な機能を実行することを可能にするために、情報、データ、コンテンツ、アプリケーション、命令などを格納するように構成することができる。例えば、メモリデバイスは、プロセッサによる処理のために入力データをバッファリングするように構成され得る。追加的または代替的に、メモリ装置は、プロセッサによる実行のための命令を格納するように構成され得る。
【0030】
のように、装置20は、本願発明の例示の実施形態を採用するように構成されたコンピューティングデバイス10によって具現化することができる。しかしながら、いくつかの実施形態では、装置はチップまたはチップセットとして具体化されてもよい。言い換えれば、装置は、構造アセンブリ(たとえばベースボード)上に材料、構成要素および/またはワイヤを含む1つ以上の物理パッケージ(たとえばチップ)を備えることができる。構造アセンブリは、その上に含まれる構成要素回路に対して物理的強度、サイズの保存、および/または電気的相互作用の制限を提供することができる。したがって、装置は、場合によっては、本願発明の実施形態を単一のチップ上で、または単一の「システムオンチップ」として実装するように構成され得る。したがって、場合によっては、チップまたはチップセットは、本明細書で説明されている機能を提供するための1つまたは複数の動作を実行するための手段を構成することができる。
【0031】
プロセッサ22は、いくつかの異なる方法で具現化することができる。例えば、プロセッサは、コプロセッサ、マイクロプロセッサ、コントローラ、デジタル信号プロセッサ(DSP)、付随するDSPを有するあるいは有さない処理要素、または、例えばASIC(特定用途向け集積回路)のような集積回路を含む様々な他の処理回路、FPGA(フィールドプログラマブルゲートアレイ)、マイクロコントローラユニット(MCU)、ハードウェアアクセラレータ、または専用コンピュータチップなどの1つ以上の様々なハードウェア処理手段として実施することができる。したがって、いくつかの実施形態では、プロセッサは、独立して実行するように構成された1つまたは複数の処理コアを含み得る。マルチコアプロセッサは、単一の物理パッケージ内でマルチプロセッシングを可能にし得る。それに加えてまたはその代わりに、プロセッサは、命令の独立した実行、パイプライン化、および/またはマルチスレッド化を可能にするためにバスを介して直列に構成される1つ以上のプロセッサを含み得る。
【0032】
例示の実施形態では、プロセッサ22は、メモリデバイス24に格納されているか、そうでなければプロセッサにアクセス可能な命令を実行するように構成することができる。代替的または追加的に、プロセッサはハードコードされた機能を実行するように構成されてもよい。したがって、ハードウェアまたはソフトウェアの方法、あるいはそれらの組み合わせのいずれによって構成されたとしても、プロセッサはエンティティを表すことができる(例えば、回路内に物理的に具現化されている)。それに応じて構成されながら、本願発明の実施形態にしたがって動作を実行することができる。したがって、例えば、プロセッサがASIC、FPGAなどとして具現化されるとき、プロセッサは、本明細書で説明される動作を実行するために特に構成されたハードウェアであり得る。あるいは、別の例として、プロセッサがソフトウェア命令の実行者として具体化されるとき、命令は、命令が実行されたときに本明細書に記載のアルゴリズムおよび/または動作を実行するようにプロセッサを特に構成することができる。しかしながら、場合によっては、プロセッサは、本明細書に記載のアルゴリズムおよび/または動作を実行するための命令によるプロセッサのさらなる構成によって、本願発明の実施形態を採用するように構成された特定の装置(例えば、ヘッドマウントディスプレイ)のプロセッサであり得る。そのプロセッサは、とりわけ、プロセッサの動作をサポートするように構成されたクロック、算術論理装置(ALU)および論理ゲートを含むことができる。一実施形態では、プロセッサは、ユーザインタフェース28の1つ以上の要素の少なくともいくつかの機能を制御するように構成されたユーザインタフェース回路も含むことができる。
【0033】
一方、通信インタフェース26は、ハードウェアまたはハードウェアとソフトウェアの組み合わせのいずれかで具現化されたデバイスまたは回路などの任意の手段であり得る。それは、コンピューティングデバイス10とサーバ12との間でデータを送受信するように構成されている。この点に関して、通信インタフェース26は、例えば、無線で通信を可能にするためのアンテナ(または複数のアンテナ)およびサポートハードウェアおよび/またはソフトウェアを含むことができる。それに加えてまたはその代わりに、通信インタフェースは、アンテナを介して信号を送信するため、またはアンテナを介して受信された信号の受信を処理するために、アンテナと対話するための回路を含み得る。例えば、通信インタフェースは、Wi−Fi、Bluetooth(登録商標)または他の無線通信技術などを介してヘッドマウントディスプレイ10と無線通信するように構成されてもよい。いくつかの事例では、通信インタフェースは、代替的にまたは有線通信をサポートすることもできる。したがって、例えば、通信インタフェースは、ケーブル、デジタル加入者線(DSL)、ユニバーサルシリアルバス(USB)または他の機構を介した通信をサポートするための通信モデムおよび/または他のハードウェア/ソフトウェアを含み得る。例えば、通信インタフェースは、有線通信を介してコンピューティングデバイスの他の構成要素と通信するように構成され得る。
【0034】
ユーザインタフェース28は、ユーザインタフェース回路などのプロセッサ22と通信して、ユーザ入力の指示を受け取り、かつ/または可聴、視覚、機械的、または他の出力をユーザに提供することができる。したがって、ユーザインタフェースは、例えば、キーボード、マウス、ジョイスティック、ディスプレイ、タッチスクリーンディスプレイ、マイクロフォン、スピーカ、および/または他の入出力機構を含むことができる。いくつかの実施形態では、ディスプレイは、スクリーン上、壁上、眼鏡上(例えば、目に近いディスプレイ)、空中などでの表示を指すことがある。ユーザインタフェースはまた、バスを介するなどして、メモリ24および/または通信インタフェース26と通信することができる。
【0035】
例示の実施形態では、装置20の構成要素/モジュールは、標準的なプログラミング技法を使用して実施することができる。例えば、装置20は、1つ以上の静的または動的ライブラリとともに、プロセッサ22上で実行される「ネイティブ」実行可能ファイルとして実装することができる。一般に、様々なプログラミング言語パラダイムの代表的な実装形態を含む、そのような例示的な実施形態を実装するために、オブジェクト指向(例:Java(登録商標)、C++、C#、Visual Basic.NET、Smalltalkなど)、機能的(例:ML、Lisp、Schemeなど)、手続き型(例:C)、Pascal、Ada、Modulaなど)、スクリプティング(例えば、Perl、Ruby、Python、Java(登録商標)Script、VBScriptなど)、および宣言的(例えば、SQL、Prologなど)当技術分野において知られている様々なプログラミング言語を使用することができる。
【0036】
さらに、装置20の一部として格納されたデータへのプログラミングインタフェースは、C、C++、C#、およびJava(登録商標)API、ファイル、データベース、または他のデータリポジトリにアクセスするためのライブラリなどを介した標準的なメカニズムによって、XMLなどの言語を通じて、あるいは、Webサーバ、FTPサーバ、または保存されたデータへのアクセスを提供する他の種類のサーバを介して利用可能にすることができる。データストアも含まれてもよく、それは1つ以上のデータベースシステム、ファイルシステム、またはそのような情報を格納するための任意の他の技術、あるいは、分散コンピューティング技術を使用する実装を含む、の任意の組合せとして実装されてもよい。
【0037】
本明細書に記載の技法と共に使用するためのプログラムおよびデータの異なる構成および場所が考えられている。例示の実施形態の構成要素を分散方式で実装するためには、TCP/IPソケット、RPC、RMI、HTTP、Webサービス(XML−RPC、JAX−RPC、SOAPなど)を含む様々な分散コンピューティング技術が適切である。しかし、これらに限定されるものではない。他のバリエーションも可能である。また、各構成要素/モジュールによって他の機能を提供することができ、あるいは既存の機能を構成要素/モジュール間で異なる方法で分散させることができる。それでもなお本明細書に記載の機能を達成することができる。
【0038】
さらに、いくつかの実施形態では、装置20の構成要素のうちのいくつかまたはすべては、少なくとも部分的にファームウェアおよび/またはハードウェア内など、他の方法で実装または提供され得る。1つ以上の特定用途向け集積回路(「ASIC」)、標準の集積回路、適切な命令を実行するコントローラ、およびマイクロコントローラおよび/または組み込みコントローラ、フィールドプログラマブルゲートアレイ(「FPGA」)、複合プログラマブルロジックデバイス(「CPLD」)などを含むが、これらに限定されない。システムコンポーネントおよび/またはデータ構造のいくつかまたはすべては、コンテンツとして(たとえば実行可能または他のマシン可読ソフトウェア命令または構造化データとして)コンピュータ可読媒体(たとえばハードディスクなど)、メモリ、コンピュータネットワークまたはセルラ無線ネットワークまたは他のデータ伝送媒体、コンピュータ可読媒体を使用可能にするかまたは構成するために、適切なドライブによって、または適切な接続(DVDもしくはフラッシュメモリデバイスなど)を介して読み取られる可搬媒体物品、および/または、記載された技法のうちの少なくともいくつかを実行するために、コンテンツを実行する、またはそうでなければ使用する、または提供するための、1つまたは複数の関連するコンピューティングシステムまたはデバイスに格納することもできる。システム構成要素およびデータ構造のうちのいくつかまたはすべては、無線ベースの媒体および有線/ケーブルベースの媒体を含む、さまざまなコンピュータ可読伝送媒体上の(たとえば、搬送波の一部として符号化されることによって、あるいは、アナログまたはデジタル伝搬信号の一部として含まれる)データ信号としても記憶され得る。そして、(例えば、単一のまたは多重化されたアナログ信号の一部として、または複数の個別のデジタルパケットまたはフレームとして)様々な形態を取り得る。システムコンポーネントやデータ構造の一部または全部を、HTML5のようなブラウザでレンダリングされたマークアップ言語と組み合わせると、アプリケーションを実行可能にするために一般的なWebブラウザに依存する、ブラウザでサポートされているプログラミング言語(Java(登録商標)Scriptなど)でコーディングされているコンピュータソフトウェアアプリケーションなど、Webアプリケーション、「app」、あるいはHTML5やJava(登録商標)Scriptとして格納することもできる。ウェブページまたは「アプリ」を開くことは、コンピューティングデバイス10上のウェブブラウザによって実行され得る。HTML5かJava(登録商標)Script「app」は、ウェブページ全体を再ダウンロードする必要なしにデータを記憶し検索するために、ウェブページスクリプトが図1に示すようなサーバ12に連絡することを可能にする。システムコンポーネントおよびデータ構造のうちのいくつかまたはすべてはまた、特権ウェブアプリケーションまたは特権ウェブアプリケーションとして格納されることができる。特権のあるWebアプリは、たとえば1つまたは複数のアプリストアによって検証された、または信頼できるソースであるソースから取得またはダウンロードされた可能性のあるWebコンテンツである。信頼されたソースは、デフォルトのパワー設定を上書きすることを可能にされ得る特権的なウェブアプリケーションを提供し得る。そのようなコンピュータ・プログラム製品はまた、他の実施形態では他の形態を取り得る。したがって、本開示の実施形態は他のコンピュータシステム構成を用いて実施することができる。
【0039】
図3および図4は、本願発明の一実施形態による方法、装置およびコンピュータ・プログラム製品によって実行される例示的な動作の例示的なフローチャートを示している。フローチャートの各ブロック、およびフローチャート中のブロックの組み合わせは、ハードウェア、ファームウェア、プロセッサ、回路、および/または1つ以上のコンピュータ・プログラム命令を含むソフトウェアの実行に関連する他のデバイスなど様々な手段によって実施され得ることが理解される。例えば、の手順のうちの1つ以上は、コンピュータ・プログラム命令によって実施することができる。これに関して、の手順を具体化するコンピュータ・プログラム命令は、本願発明の実施形態を採用する装置のメモリ26によって記憶され、装置内のプロセッサ24によって実行されることができる。ここで、理解されるように、任意のそのようなコンピュータ・プログラム命令は、コンピュータまたは他のプログラム可能な装置(例えば、ハードウェア)にロードされて、結果として得られるコンピュータまたは他のプログラム可能な装置が、フローチャートブロックにおいて指定された機能の実装を提供するようになるようにマシンを作成することができる。これらのコンピュータ・プログラム命令は、コンピュータまたは他のプログラム可能な装置に特定の方法で機能するように指示することができる非一時的コンピュータ可読記憶メモリにも記憶することができる。そのようにして、コンピュータ可読記憶メモリに記憶された命令は製品を生成し、その実行はフローチャートブロックにおいて指定された機能を実行する。コンピュータ・プログラム命令はまた、コンピュータまたは他のプログラム可能装置上にロードされて、コンピュータまたは他のプログラム可能な装置上で実行される命令が、フローチャートブロックにおいて特定された機能を実施するための動作を提供するように、コンピュータ実施プロセスを生成するために、コンピュータまたは他のプログラム可能装置上で一連の動作を実行させることができる。したがって、図3および図4の動作は、実行されると、コンピュータまたは処理回路を本願発明の例示の実施形態を実行するように構成された特定のマシンに変換する。したがって、図3および図4の動作は、例示的実施形態を実行するためのコンピュータまたは処理を構成するためのアルゴリズムを定義する。場合によっては、汎用コンピュータに、汎用コンピュータを例示の実施形態を実行するように構成された特定のマシンに変換するために、図3および図4のアルゴリズムを実行するプロセッサのインスタンスを設けることができる。
【0040】
したがって、フローチャートのブロックは、指定された機能を実行するための手段の組合せおよび指定された機能を実行するための動作の組合せをサポートする。フローチャートの1つ以上のブロック、およびフローチャート内のブロックの組み合わせは、指定された機能、または特殊用途のハードウェアとコンピュータの命令の組み合わせを実行する特殊目的のハードウェアベースのコンピュータシステムによって実施することができることも理解される。
【0041】
いくつかの実施形態では、本明細書の動作のうちのいくつかは、以下で説明されるように修正またはさらに拡張され得る。さらに、いくつかの実施形態では、追加の任意の動作も含まれてもよい。以下の修正、任意選択の追加、または増幅のそれぞれは、単独で、または本明細書に記載されている特徴のうちの任意の他のものと組み合わせてのいずれかで、の動作に含まれ得る。
【0042】
一例示的実施形態では、多層シフトを使用することによって立体視を容易にするための方法、装置、および/またはコンピュータ・プログラム製品を提供することができる。図3は、本願発明の実施形態にしたがって実行される、例示的な携帯端末を動作させる方法を示す例示的なフローチャートである。具体的には、図3は、背景層のシフトよりも高速で行われるオブジェクト層のシフトを示す一連の画像を生成するための例示的な方法を示す。
【0043】
まず、図3のブロック305に示すように、コンピューティングデバイス10によって具現化された装置20は、少なくとも第1の画像および第2の画像を受信するか、そうでなければアクセスするように構成され得る。したがって、コンピューティングデバイスによって具現化される装置は、少なくとも第1の画像および第2の画像を受信および/またはアクセスするための、プロセッサ22、通信インタフェース26などのような手段を含み得る。いくつかの実施形態では、第1の画像は第1の位置から取り込まれたオブジェクトを含み、第2の画像は第2の位置から取り込まれたオブジェクトを含み、第1の位置は第2の位置とは異なる。いくつかの実施形態では、第1の画像と第2の画像を取り込む画像取込装置またはレンズの光軸は平行である。第1の画像および第2の画像は、赤−緑−青(RGB)画像であり得る。
【0044】
このプロセスはまた、RGB画像から別々に取り込まれるかまたは生成され得る深度画像を利用する。したがって、図3のブロック310に示されるように、コンピューティングデバイス10によって具現化される装置20は、少なくとも第1の深度画像および第2の深度画像を受け取るか、そうでなければアクセスするように構成され得る。したがって、コンピューティングデバイスによって具現化される装置は、少なくとも第1の深度画像を受信またはアクセスするための、プロセッサ22、通信インタフェース26などのような手段を含み得る。第1の深度画像は第1の画像に対応し、第2の深度画像は第2の画像に対応する。いくつかの実施形態では、深度画像は、例えば深度カメラによってキャプチャされ、および/またはそこから受信されることができる。他の実施形態では、深度画像は、第1および第2の画像(例えば、RGB画像)によって構築されることができ、またはそれらを使用して生成されることができる。
【0045】
図3のブロック315に示されるように、コンピューティングデバイス10によって具現化される装置20は、したがって、第1のセグメント化を引き起こすように構成され得る。したがって、コンピューティングデバイスによって具現化される装置は、第1のセグメント化を引き起こすための、プロセッサ22、通信インタフェース26などのような手段を含み得る。当業者が理解するように、セグメント化は、画像(例えば、デジタル画像)を複数のセグメントにセグメント化するプロセスである。たとえば、イメージの分析が容易になるように、または異なる方法で分析できるように、イメージの表現を変更する。いくつかの実施形態では、第1のセグメント化は、事前定義された閾値に基づいてもよく、例えば、例えば、第1のオブジェクトマスク、第1のオブジェクトマスクの反転(例えば、第1の画像の背景マスク)および第2のオブジェクトマスク、ならびに第2のオブジェクトマスクの反転(例えば、第2の画像の背景マスク)のうちの任意の組み合わせを含み得る一組の画像をもたらすことができる。
【0046】
以下に説明される図4は、本願発明の実施形態にしたがって実行される、例示的な移動端末を動作させる例示的な方法を示すフローチャートである。具体的には、図4は、第1のセグメント化を実行するための例示的な方法を示す。すなわち、以下に説明されるように、第2のセグメント化が実行され得る。しかしながら、第2のセグメント化の前に、が第2のセグメント化の実行に使用される第1のオブジェクトマスクと第2のオブジェクトマスクとが提供される。たとえば、いくつかの実施形態では、第1のセグメント化は、各深度画像の大まかなセグメント化を取得するために、(たとえば、レンズまたは画像キャプチャデバイスなどからの深さまたは距離に対応する)予め定義された閾値の設定を含む。さらに、いくつかの実施形態では、装置は、例えば、1つの画像の最大面積(例えば、第1の画像)を1つのオブジェクト層として識別する(例えば、第1の画像内の人物を識別する)ように構成される。この識別は、深度画像セグメント化からの形状マスクを利用すること、画像の逆行列を決定すること、およびその逆行列を背景マスクにすることを含む。
【0047】
ここで図3に戻ると、図3のブロック320に示されるように、コンピューティングデバイス10によって具現化される装置20は、したがって、第2のセグメント化の実行を引き起こすように構成され得る。したがって、コンピューティングデバイスによって具現化される装置は、第2のセグメント化の実行を引き起こすための、プロセッサ22、通信インタフェース26などのような手段を含み得る。第2のセグメント化は、第1の画像と第2の画像(例えば、RGB画像)に対して実行されることができる。いくつかの実施形態では、第2のセグメント化は、例えば最大フロー最小カットアルゴリズムを使用して実行されることができる。しかしながら、当業者は、セグメント化が任意の数のプロセスによって実行され得ることを理解する。第2のセグメント化は、第1のオブジェクト画像、第1の背景画像、第2のオブジェクト画像、および第2の背景画像をもたらし得る。
【0048】
図3のブロック325に示すように、上述したセグメント化ステップの出力を使用して、コンピューティングデバイス10によって具現化された装置20。次に、第1の背景層と第2の背景層とをステッチまたはステッチするように構成することができる。したがって、コンピューティングデバイスによって具現化される装置は、プロセッサ22、通信インタフェース26などのような手段を含み得る。第1の背景層と第2の背景層とをステッチする、またはステッチするためのものである。
【0049】
第1の背景層と第2の背景層とを一緒にステッチする際に、存在する穴の一部が埋められる。図3のブロック330に示されるように、コンピューティングデバイス10によって具現化される装置20は、したがって、穴埋めプロセスの実行を引き起こすように構成され得る。したがって、コンピューティングデバイスによって具現化される装置は、穴埋めプロセスの実行を引き起こすための、プロセッサ22、通信インタフェース26などのような手段を含み得る。例えば、ワープ効果のために、ステッチ後に穴を埋める必要があるかもしれない穴の部分がまだあり得る。いくつかの実施形態では、装置は、黒領域(すなわち塗りつぶしが必要な領域)内の画素についての新しい値として近くの有効画素の値を平均するためのプロセスを実装するように構成され得る。
【0050】
上述したように、現実性を実証するために、ビューが第1の位置から第2の位置へ変化するにつれて、前景のオブジェクトは一般に、背景のオブジェクトとは異なる速度で動くことが要求される。図3のブロック335に示されるように、コンピューティングデバイス10によって具現化される装置20は、したがって、オブジェクト層とは異なる速度でステッチされた背景層をシフトさせるように構成され得る。したがって、コンピューティングデバイスによって具現化される装置は、プロセッサ22、通信インタフェース26などのような手段を含み得る。オブジェクト層とは異なる速度でステッチされた背景層を移動させるため。
【0051】
いくつかの実施形態では、オブジェクト層がシフトされる速度は、例えば、距離が近いほど速い場合がある。特定の速度パラメータは、画像キャプチャデバイスまたはレンズの距離、およびいくつかの実施形態ではさらに、ユーザの移動速度に依存し得る。
【0052】
図3のブロック340に示されるように、コンピューティングデバイス10によって具現化される装置20は、したがって、以下のように構成されてもよい。背景層のシフトよりも高速で行われるオブジェクト層のシフトを示す一連の画像を生成する。したがって、コンピューティングデバイスによって具現化される装置は、一連の画像を生成するための、プロセッサ22、通信インタフェース26などのような手段を含み得る。一連の画像は、第1の位置からのビューを表す第1の画像と、第2の位置からのビューを表す第2の画像とを含む。一連の画像は、背景層のシフトよりも速い速度で行われるオブジェクト層のシフトを示す。いくつかの実施形態では、第1の画像は背景層で補間された第1のオブジェクト画像を含み、第2の画像は背景層で補間された第2のオブジェクト画像を含む。
【0053】
上述のように、図4は、本願発明の実施形態にしたがって実行される、例示的な移動端末を動作させる例示的な方法を示すフローチャートである。具体的には、図4は、第1のセグメント化を実行するための例示的な方法を示す。上述のように、第2のセグメント化に先立って、第1のセグメント化が実行されてもよい。図4のブロック405に示すように、コンピューティングデバイス10によって具現化される装置20は、したがって、それぞれの深度画像のセグメント化を実行するために所定の閾値を設定するように構成され得る。したがって、コンピューティングデバイスによって具現化される装置は、プロセッサ22、通信インタフェース26などのような手段を含み得る。(例えば、レンズまたは画像キャプチャデバイスからの深さまたは距離に対応する)所定の閾値を設定して、各深さ画像の大まかなセグメント化を取得する。
【0054】
続いて、図4のブロック410に示すように、コンピュータ装置10によって具現化された装置20は、たとえば、1つの画像の最大面積(たとえば、第1の深度画像または深度第2の画像)を1つのオブジェクト層として識別するように(たとえば、第1の深度画像内の人を識別するように)構成することができる。したがって、コンピューティングデバイスによって具現化される装置は、1つの画像の最大面積を1つのオブジェクト層として識別するための、プロセッサ22、通信インタフェース26などの手段を含み得る。
【0055】
図4のブロック415に示すように、計算装置10によって具現化された装置20は、したがって、深度画像セグメント化からの形状マスクを利用して画像の逆を決定するように構成されてもよい。したがって、コンピューティングデバイスによって具現化される装置は、画像の反転を決定するために、深度画像セグメント化から形状マスクを利用するためプロセッサ22、通信インタフェース26などのような手段を含み得る。図4のブロック420に示されるように、計算装置10によって具現化される装置20は、したがって、その逆から背景マスクを生成するように構成されることができる。したがって、コンピューティングデバイスによって具現化される装置は、反転を背景マスクにするための、プロセッサ22、通信インタフェース26などの手段を含むことができる。
【0056】
本明細書に記載されている本願発明の多くの修正および他のこれらの発明が関係し、前述の説明および関連する図面に提示された教示の恩恵を受ける当業者には思い浮かぶ。したがって、本願発明は開示された特定の実施形態に限定されるものではなく、修正および他の実施形態は添付の特許請求の範囲内に含まれることが意図されていることを理解されたい。さらに、前述の説明および関連する図面は、要素および/または機能の特定の例示的な組み合わせの文脈で例示的な実施形態を説明しているが、添付の特許請求の範囲から逸脱することなく、要素および/または機能の異なる組み合わせが代替の実施形態によって提供され得ることを理解されたい。これに関して、例えば、添付の特許請求の範囲のいくつかに記載されているように、要素および/または機能のとは明示的に記載されたものとは異なる組み合わせも考えられる。本明細書では特定の用語が使用されているが、それらは一般的かつ説明的な意味でのみ使用されており、限定の目的では使用されていない。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6A】
【図6B】
【手続補正書】
【提出日】2019年4月18日
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
少なくとも、第1の位置からキャプチャされたオブジェクトを含む第1の画像を受信するステップと、
第2の位置からキャプチャされたオブジェクトを含む第2の画像を受信するステップであって、該第1の位置は該第2の位置とは異なるものである、ステップと、
少なくとも、前記第1の画像に対応する第1の深度画像を受信するステップと、
前記第2の画像に対応する第2の深度画像を受信するステップと、
予め定義された閾値に基づいて、前記第1の深度画像および前記第2の深度画像に対して、実行される第1のセグメント化をさせるステップであって、該第1のセグメント化は、第1のオブジェクト・マスクと第2のオブジェクト・マスクとを含む一組の画像をもたらす、ステップと、
前記第1の深度画像および前記第2の深度画像に対して、前記第1のオブジェクト・マスクおよび制約としての第2のオブジェクト・マスクに基づいて実行される第2のセグメント化をさせるステップであって、該第2のセグメント化は、第1のオブジェクト画像、第2のオブジェクト画像、第1の背景層、および、第2の背景層を含む一組の画像をもたらす、ステップと、
背景層を形成するために前記第1の背景層と前記第2の背景層とをステッチさせるステップと、
前記第1の位置からのビューを表す第1の画像および前記第2の位置からのビューを表す第2の画像を含む、一連の画像を生成するステップであって、前記背景層のシフトよりも速い速度で行われるオブジェクト層のシフトを示すステップと、
を含む方法。
【請求項2】
前記第1の画像は、前記背景層で補間された前記第1のオブジェクト画像を含み、前記第2の画像は、前記背景層で補間された前記第2のオブジェクト画像を含む、請求項1に記載の方法。
【請求項3】
前記第2のセグメント化は、最大フロー最小カットアルゴリズムにしたがって実行される、請求項1に記載の方法。
【請求項4】
前記第1の背景層と前記第2の背景層とのステッチから生じる第1の穴埋めするステップと、
近傍の有効画素に関連する値を平均するためのプロセスをインプリメントすること、および、埋めるのに必要な近傍領域におけるピクセルに対する新しい値として該平均を設定することを含む第2の穴埋めするステップと
をさらに含む請求項1に記載の方法。
【請求項5】
前記第1のセグメント化は、さらに、前記第1の画像および前記第2の画像から前記第1の深度画像および前記第2の深度画像を生成するステップを含む、請求項1に記載の方法。
【請求項6】
距離に対応する前記予め定義された閾値を設定するステップと、
前記第1の深度画像および前記第2の深度画像のセグメント化から、人物の形状マスクを利用してオブジェクト層を識別し、前記画像の反転を決定し、該反転を前記背景層にするステップと、
をさらに含む請求項1に記載の方法。
【請求項7】
層の前記シフトでの異なる速度は、前記オブジェクト層と前記背景層との間の距離に間接的に比例する、請求項1に記載の方法。
【請求項8】
少なくとも、第1の位置からキャプチャされたオブジェクトを含む第1の画像を受信する手段と、
第2の位置からキャプチャされたオブジェクトを含む第2の画像を受信する手段であって、該第1の位置は該第2の位置とは異なるものである、手段と、
少なくとも、前記第1の画像に対応する第1の深度画像を受信する手段と、
前記第2の画像に対応する第2の深度画像を受信する手段と、
前記第1の深度画像および前記第2の深度画像に対して実行され、予め定義された閾値に基づいて、第1のオブジェクト・マスクと第2のオブジェクト・マスクとを含む一組の画像をもたらす、第1のセグメント化をさせる手段と、
前記第1のオブジェクト・マスクおよび制約としての第2のオブジェクト・マスクに基づいて前記第1の画像と前記第2の画像に対して実行され、第1のオブジェクト画像、第2のオブジェクト画像、第1の背景層、および、第2の背景層を含む一組のセグメントをもたらす、第2のセグメント化をさせる手段と、
背景層を形成するために前記第1の背景層と前記第2の背景層とをステッチさせる手段と、
前記第1の位置からのビューを表す第1の画像と、前記第2の位置からのビューを表す第2の画像とを含み、
前記背景層のシフトよりも速い速度で行われるオブジェクト層のシフトを示す一連の画像を生成する手段と、
を備える装置。
【請求項9】
前記第1の画像は、前記背景層で補間された前記第1のオブジェクト画像を含み、前記第2の画像は、前記背景層で補間された前記第2のオブジェクト画像を含む、請求項8に記載の装置。
【請求項10】
前記第2のセグメント化は、最大フロー最小カットアルゴリズムにしたがって実行される、請求項8に記載の装置。
【請求項11】
前記装置は、前記第1の背景層と前記第2の背景層との前記ステッチから生じる第1の穴埋めステップを実行させる手段と、
近傍の有効画素に関連する値を平均するためのプロセスを実行するステップ、および、埋めるのに必要な近傍領域におけるピクセルに対する新しい値として該平均を設定するステップを含む第2の穴埋めステップを実行する手段と
を更に備える、請求項8に記載の装置。
【請求項12】
前記第1のセグメント化をさせる手段は、前記第1の画像および前記第2の画像から前記第1の深度画像および前記第2の深度画像を生成する手段を備える、請求項8に記載の装置。
【請求項13】
前記装置は、コンピュータプログラムコードを含む少なくとも1つのメモリを備え、
前記少なくとも1つのメモリおよび前記コンピュータプログラムコードは、前記装置に、プロセッサを用いて、
距離に対応する前記予め定義された閾値を設定させ、
前記第1の深度画像および前記第2の深度画像のセグメント化から、人物の形状マスクを利用してオブジェクト層を識別し、前記画像の反転を決定し、
該反転を前記背景層にさせるように構成される、
請求項8に記載の装置。
【請求項14】
層の前記シフトでの異なる速度は、前記オブジェクト層と前記背景層との間の距離に間接的に比例する、請求項8に記載の装置。
【請求項15】
実行されると、装置に、請求項1から7のいずれかに記載の方法を実行させるコンピュータ実行可能プログラムコード命令を備えるコンピュータプログラム。
【国際調査報告】

[広告欄]

ログインすれば広告は減ります

ログインすれば広告は減ります