(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-11-15
(54)【発明の名称】単眼深度推定を用いたセグメント化
(51)【国際特許分類】
G06T 7/194 20170101AFI20241108BHJP
H04N 23/60 20230101ALI20241108BHJP
G06T 7/50 20170101ALI20241108BHJP
G06T 7/11 20170101ALI20241108BHJP
G06T 7/136 20170101ALI20241108BHJP
【FI】
G06T7/194
H04N23/60 500
G06T7/50
G06T7/11
G06T7/136
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2024532291
(86)(22)【出願日】2021-12-01
(85)【翻訳文提出日】2024-05-29
(86)【国際出願番号】 CN2021134849
(87)【国際公開番号】W WO2023097576
(87)【国際公開日】2023-06-08
(81)【指定国・地域】
(71)【出願人】
【識別番号】507364838
【氏名又は名称】クアルコム,インコーポレイテッド
(74)【代理人】
【識別番号】100108453
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100163522
【氏名又は名称】黒田 晋平
(72)【発明者】
【氏名】インヨン・チ
(72)【発明者】
【氏名】シン・リ
(72)【発明者】
【氏名】シャオウェン・イン
(72)【発明者】
【氏名】シュアイ・ジャン
【テーマコード(参考)】
5C122
5L096
【Fターム(参考)】
5C122DA03
5C122DA04
5C122DA09
5C122EA61
5C122FH10
5C122FH11
5C122FH14
5C122FH15
5C122FH21
5C122FH22
5C122FH23
5C122GA01
5C122HA13
5C122HA35
5C122HA48
5C122HA88
5C122HB01
5C122HB05
5L096AA09
5L096CA04
5L096DA01
5L096EA05
5L096FA02
5L096FA69
5L096FA77
5L096GA08
5L096GA10
5L096GA17
5L096GA51
5L096HA11
5L096JA11
5L096JA16
5L096KA04
(57)【要約】
深度フィルタリングを用いて画像セグメント化を実行するためのシステム、方法、及びコンピュータ可読媒体が提供される。いくつかの実施例では、方法は、シーンをキャプチャするフレームを取得することと、フレームに基づいて、対象のターゲットを識別するターゲットセグメント化マスクと、フレームの1つ又は複数の背景領域を識別する1つ又は複数の背景マスクとを含む第1のセグメント化マップを生成することと、1つ又は複数の背景マスクがフィルタリングされた第1のセグメント化マップであって、1つ又は複数の背景マスクが、フレームに関連付けられた深度マップに基づいて第1のセグメント化マップからフィルタリングされる、第1のセグメント化マップを含む第2のセグメント化マップを生成することと、を含むことができる。
【特許請求の範囲】
【請求項1】
画像セグメント化のための装置であって、
メモリと、
前記メモリに結合された1つ又は複数のプロセッサと、
を備え、前記1つ又は複数のプロセッサが、
シーンをキャプチャするフレームを取得し、
前記フレームに基づいて、対象のターゲットを識別するターゲットセグメント化マスクと、前記フレームの1つ又は複数の背景領域を識別する1つ又は複数の背景マスクとを含む第1のセグメント化マップを生成し、
前記1つ又は複数の背景マスクがフィルタリングされた前記第1のセグメント化マップであって、前記1つ又は複数の背景マスクが、前記フレームに関連付けられた深度マップに基づいて前記第1のセグメント化マップからフィルタリングされる、前記第1のセグメント化マップを含む第2のセグメント化マップを生成する、
ように構成されている、
装置。
【請求項2】
前記第2のセグメント化マップを生成するために、前記1つ又は複数のプロセッサが、
前記第1のセグメント化マップと前記深度マップとの比較に基づいて、前記1つ又は複数の背景マスクに関連付けられたそれぞれの深度値と、前記対象の前記ターゲットを識別する前記ターゲットセグメント化マスクに関連付けられたそれぞれの深度値との間の閾値差を決定する、
ように構成されている、
請求項1に記載の装置。
【請求項3】
前記第2のセグメント化マップを生成するために、前記1つ又は複数のプロセッサが、
前記1つ又は複数の背景マスクに関連付けられたそれぞれの深度値と、対象の前記ターゲットを識別する前記ターゲットセグメント化マスクに関連付けられたそれぞれの深度値との間の前記閾値差に基づいて、前記第1のセグメント化マップから前記1つ又は複数の背景マスクを除去する、
ように構成されている、
請求項2に記載の装置。
【請求項4】
前記深度マップが、前記フレームのピクセルに対応する深度値に関連付けられた深度マスクのセットを含み、前記第2のセグメント化マップを生成するために、前記1つ又は複数のプロセッサが、
前記第1のセグメント化マップと前記深度マップとの比較に基づいて、対象の前記ターゲットを識別する前記ターゲットセグメント化マスクと、前記深度マップ内の前記深度マスクのセットからの1つ又は複数の深度マスクとの間の重複を決定し、
前記重複に基づいて、対象の前記ターゲットを識別する前記ターゲットセグメント化マスクを維持し、
前記1つ又は複数の背景マスクと深度マスクの前記セットからの1つ又は複数の追加の深度マスクとの間の追加の重複に基づいて、前記第1のセグメント化マップから前記1つ又は複数の背景マスクをフィルタリングする、
ように構成されている、
請求項1に記載の装置。
【請求項5】
前記第2のセグメント化マップを生成するために、前記1つ又は複数のプロセッサが、
前記1つ又は複数の追加の深度マスクに関連付けられた深度値と、前記1つ又は複数の深度マスクに関連付けられた深度値との間の差が閾値を上回ると決定し、
前記差が前記閾値を上回ることに基づいて、前記第1のセグメント化マップから前記1つ又は複数の背景マスクをフィルタリングする、ように構成されており、前記1つ又は複数の深度マスクが、対象の前記ターゲットに対応し、前記1つ又は複数の追加の深度マスクが、前記フレームの前記1つ又は複数の背景領域に対応する、
請求項4に記載の装置。
【請求項6】
前記第2のセグメント化マップを生成するために、前記1つ又は複数のプロセッサが、
前記深度マップからの深度領域及び前記第1のセグメント化マップからの予測されたマスクに関連付けられたインターセクションオーバーユニオン(IOU)スコアを決定し、
前記IOUスコアに基づいて、前記深度マップからの前記深度領域を、前記第1のセグメント化マップからの前記予測されたマスクであって、対象の前記ターゲットを識別する前記ターゲットセグメント化マスクと、前記フレームの前記1つ又は複数の背景領域を識別する前記1つ又は複数の背景マスクとを含む、前記予測されたマスクと照合し、
前記1つ又は複数の背景マスクに関連付けられた1つ又は複数のIOUスコアが閾値未満であるという決定に基づいて、前記第1のセグメント化マップから前記1つ又は複数の背景マスクをフィルタリングする、
ように構成されている、
請求項1に記載の装置。
【請求項7】
前記1つ又は複数のプロセッサが、
前記第1のセグメント化マップから前記1つ又は複数の背景マスクをフィルタリングする前に、適応ガウス閾値処理及びノイズ低減を前記深度マップに適用するように構成されている、
請求項6に記載の装置。
【請求項8】
前記フレームが、単眼画像キャプチャデバイスによって生成された単眼フレームを含む、請求項1に記載の装置。
【請求項9】
前記第1のセグメント化マップ及び前記第2のセグメント化マップが、1つ又は複数のニューラルネットワークを使用して生成される、請求項1に記載の装置。
【請求項10】
前記1つ又は複数のプロセッサが、ニューラルネットワークを使用して前記深度マップを生成するように構成されている、請求項1に記載の装置。
【請求項11】
前記1つ又は複数のプロセッサが、
前記フレーム及び前記第2のセグメント化マップに基づいて、修正されたフレームを生成するように構成されている、
請求項1に記載の装置。
【請求項12】
前記修正されたフレームが、視覚効果、エクステンデッドリアリティ効果、画像処理効果、ぼかし効果、画像認識効果、オブジェクト検出効果、コンピュータグラフィックス効果、クロマキーイング効果、及び画像様式化効果のうちの少なくとも1つを含む、請求項11に記載の装置。
【請求項13】
画像キャプチャデバイスを更に備え、前記フレームが、前記画像キャプチャデバイスによって生成される、請求項1に記載の装置。
【請求項14】
前記装置がモバイルデバイスを含む、請求項1に記載の装置。
【請求項15】
画像セグメント化の方法であって、
シーンをキャプチャするフレームを取得することと、
前記フレームに基づいて、対象のターゲットを識別するターゲットセグメント化マスクと、前記フレームの1つ又は複数の背景領域を識別する1つ又は複数の背景マスクとを含む第1のセグメント化マップを生成することと、
前記1つ又は複数の背景マスクがフィルタリングされた前記第1のセグメント化マップであって、前記1つ又は複数の背景マスクが、前記フレームに関連付けられた深度マップに基づいて前記第1のセグメント化マップからフィルタリングされる、前記第1のセグメント化マップを含む第2のセグメント化マップを生成することと、
を含む、方法。
【請求項16】
前記第2のセグメント化マップを生成することが、
前記第1のセグメント化マップと前記深度マップとの比較に基づいて、前記1つ又は複数の背景マスクに関連付けられたそれぞれの深度値と、対象の前記ターゲットを識別する前記ターゲットセグメント化マスクに関連付けられたそれぞれの深度値との間の閾値差を決定すること、
を含む、
請求項15に記載の方法。
【請求項17】
前記第2のセグメント化マップを生成することが、
前記1つ又は複数の背景マスクに関連付けられたそれぞれの深度値と、対象の前記ターゲットを識別する前記ターゲットセグメント化マスクに関連付けられたそれぞれの深度値との間の前記閾値差に基づいて、前記第1のセグメント化マップから前記1つ又は複数の背景マスクを除去すること、
を更に含む、
請求項16に記載の方法。
【請求項18】
前記深度マップが、前記フレームのピクセルに対応する深度値に関連付けられた深度マスクのセットを含み、前記第2のセグメント化マップを生成することが、
前記第1のセグメント化マップと前記深度マップとの比較に基づいて、対象の前記ターゲットを識別する前記ターゲットセグメント化マスクと、前記深度マップ内の深度マスクの前記セットからの1つ又は複数の深度マスクとの間の重複を決定することと、
前記重複に基づいて、対象の前記ターゲットを識別する前記ターゲットセグメント化マスクを維持することと、
前記1つ又は複数の背景マスクと深度マスクの前記セットからの1つ又は複数の追加の深度マスクとの間の追加の重複に基づいて、前記第1のセグメント化マップから前記1つ又は複数の背景マスクをフィルタリングすることと、
を含む、
請求項15に記載の方法。
【請求項19】
前記第2のセグメント化マップを生成することが、
前記1つ又は複数の追加の深度マスクに関連付けられた深度値と、前記1つ又は複数の深度マスクに関連付けられた深度値との間の差が閾値を上回ると決定することと、
前記差が前記閾値を上回ることに基づいて、前記第1のセグメント化マップから前記1つ又は複数の背景マスクをフィルタリングすることと、
を更に含み、前記1つ又は複数の深度マスクが、対象の前記ターゲットに対応し、前記1つ又は複数の追加の深度マスクが、前記フレームの前記1つ又は複数の背景領域に対応する、
請求項18に記載の方法。
【請求項20】
前記第2のセグメント化マップを生成することが、
前記深度マップからの深度領域及び前記第1のセグメント化マップからの予測されたマスクに関連付けられたインターセクションオーバーユニオン(IOU)スコアを決定することと、
前記IOUスコアに基づいて、前記深度マップからの前記深度領域を、前記第1のセグメント化マップからの前記予測されたマスクであって、対象の前記ターゲットを識別する前記ターゲットセグメント化マスクと、前記フレームの前記1つ又は複数の背景領域を識別する前記1つ又は複数の背景マスクとを含む、前記予測されたマスクと照合することと、
前記1つ又は複数の背景マスクに関連付けられた1つ又は複数のIOUスコアが閾値未満であるという決定に基づいて、前記第1のセグメント化マップから前記1つ又は複数の背景マスクをフィルタリングすることと、
を含む、
請求項15に記載の方法。
【請求項21】
前記第1のセグメント化マップから前記1つ又は複数の背景マスクをフィルタリングする前に、適応ガウス閾値処理及びノイズ低減を前記深度マップに適用することを更に含む、請求項20に記載の方法。
【請求項22】
前記フレームが、単眼画像キャプチャデバイスによって生成された単眼フレームを含む、請求項15に記載の方法。
【請求項23】
前記第1のセグメント化マップ及び前記第2のセグメント化マップが、1つ又は複数のニューラルネットワークを使用して生成される、請求項15に記載の方法。
【請求項24】
ニューラルネットワークを使用して前記深度マップを生成することを更に含む、請求項15に記載の方法。
【請求項25】
前記フレーム及び前記第2のセグメント化マップに基づいて、修正されたフレームを生成することを更に含む、請求項15に記載の方法。
【請求項26】
前記修正されたフレームが、視覚効果、エクステンデッドリアリティ効果、画像処理効果、ぼかし効果、画像認識効果、オブジェクト検出効果、コンピュータグラフィックス効果、クロマキーイング効果、及び画像様式化効果のうちの少なくとも1つを含む、請求項25に記載の方法。
【請求項27】
命令を記憶した非一時的コンピュータ可読媒体であって、前記命令が、1つ又は複数のプロセッサによって実行されると、前記1つ又は複数のプロセッサに、
シーンをキャプチャするフレームを取得させ、
前記フレームに基づいて、対象のターゲットを識別するターゲットセグメント化マスクと、前記フレームの1つ又は複数の背景領域を識別する1つ又は複数の背景マスクとを含む第1のセグメント化マップを生成させ、
前記1つ又は複数の背景マスクがフィルタリングされた前記第1のセグメント化マップであって、前記1つ又は複数の背景マスクが、前記フレームに関連付けられた深度マップに基づいて前記第1のセグメント化マップからフィルタリングされる、前記第1のセグメント化マップを含む第2のセグメント化マップを生成させる、
非一時的コンピュータ可読媒体。
【請求項28】
前記第2のセグメント化マップを生成することが、
前記第1のセグメント化マップと前記深度マップとの比較に基づいて、前記1つ又は複数の背景マスクに関連付けられたそれぞれの深度値と、対象の前記ターゲットを識別する前記ターゲットセグメント化マスクに関連付けられたそれぞれの深度値との間の閾値差を決定すること、
を含む、
請求項27に記載の非一時的コンピュータ可読媒体。
【請求項29】
前記第2のセグメント化マップを生成することが、
前記1つ又は複数の背景マスクに関連付けられたそれぞれの深度値と、対象の前記ターゲットを識別する前記ターゲットセグメント化マスクに関連付けられたそれぞれの深度値との間の前記閾値差に基づいて、前記第1のセグメント化マップから前記1つ又は複数の背景マスクを除去すること、
を更に含む、
請求項28に記載の非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、概して、画像処理に関する。例えば、本開示の態様は、単眼深度推定を用いたセグメント化に関する。
【背景技術】
【0002】
デジタルカメラ製品の汎用性が高まることにより、デジタルカメラを多種多様なデバイスに組み込むことが可能になり、その使用が様々な用途に拡大してきた。例えば、電話、ドローン、自動車、コンピュータ、テレビ、及び今日の多くの他のデバイスは、しばしばカメラデバイスを装備している。カメラデバイスは、ユーザが、カメラデバイスを装備した任意のシステムから画像及び/又はビデオをキャプチャすることを可能にする。画像及び/又はビデオは、他の用途の中でも、娯楽使用、専門家による撮影、監視、及びオートメーションのためにキャプチャすることができる。更に、カメラデバイスは、画像を修正する又は画像に芸術的効果を生成するための特定の機能をますます備えている。例えば、多くのカメラデバイスは、キャプチャされた画像に対して異なる効果を生成するための画像処理能力を備えている。
【0003】
実施される多くの画像処理技術は、画像をセグメントに分割する画像セグメント化アルゴリズムに依存し、セグメントは、オブジェクトを識別し、特定の画像効果を生成するなどのために分析又は処理することができる。画像セグメント化のいくつかの例示的な実際の用途としては、とりわけ、クロマキー合成、特徴抽出、オブジェクト検出、認識タスク(例えば、オブジェクト認識、顔認識など)、画像様式化、マシンビジョン、医療撮像、及び被写界深度(又は「ボケ」)効果が挙げられるが、これらに限定されない。しかしながら、カメラデバイス及び画像セグメント化技術は、しばしば、不十分かつ一貫性のない結果をもたらす。
【発明の概要】
【0004】
単眼深度推定を用いたセグメント化の安定性を改善するためのシステム及び技術が本明細書で説明される。少なくとも一実施例によれば、単眼深度推定を用いたセグメント化の方法が提供される。例示的な方法は、シーンをキャプチャするフレームを取得することと、フレームに基づいて、対象のターゲットを識別するターゲットセグメント化マスクと、フレームの1つ又は複数の背景領域を識別する1つ又は複数の背景マスクとを含む第1のセグメント化マップを生成することと、1つ又は複数の背景マスクがフィルタリングされた第1のセグメント化マップであって、1つ又は複数の背景マスクが、フレームに関連付けられた深度マップに基づいて第1のセグメント化マップからフィルタリングされる、第1のセグメント化マップを含む第2のセグメント化マップを生成することと、を含むことができる。
【0005】
少なくとも一実施例によれば、単眼深度推定を用いたセグメント化のための非一時的コンピュータ可読媒体が提供される。例示的な非一時的コンピュータ可読媒体は、命令を含むことができ、この命令は、1つ又は複数のプロセッサによって実行されると、1つ又は複数のプロセッサに、シーンをキャプチャするフレームを取得させ、フレームに基づいて、対象のターゲットを識別するターゲットセグメント化マスクと、フレームの1つ又は複数の背景領域を識別する1つ又は複数の背景マスクとを含む第1のセグメント化マップを生成させ、1つ又は複数の背景マスクがフィルタリングされた第1のセグメント化マップであって、1つ又は複数の背景マスクが、フレームに関連付けられた深度マップに基づいて第1のセグメント化マップからフィルタリングされる、第1のセグメント化マップを含む第2のセグメント化マップを生成させる。
【0006】
少なくとも一実施例によれば、単眼深度推定を用いたセグメント化のための装置が提供される。例示的な装置は、メモリと、メモリに結合された1つ又は複数のプロセッサとを含むことができ、1つ又は複数のプロセッサは、シーンをキャプチャするフレームを取得し、フレームに基づいて、対象のターゲットを識別するターゲットセグメント化マスクと、フレームの1つ又は複数の背景領域を識別する1つ又は複数の背景マスクとを含む第1のセグメント化マップを生成し、1つ又は複数の背景マスクがフィルタリングされた第1のセグメント化マップであって、1つ又は複数の背景マスクが、フレームに関連付けられた深度マップに基づいて第1のセグメント化マップからフィルタリングされる、第1のセグメント化マップを含む第2のセグメント化マップを生成する、ように構成されている。
【0007】
少なくとも一実施例によれば、単眼深度推定を用いたセグメント化のための別の装置が提供される。装置は、シーンをキャプチャするフレームを取得し、フレームに基づいて、対象のターゲットを識別するターゲットセグメント化マスクと、フレームの1つ又は複数の背景領域を識別する1つ又は複数の背景マスクとを含む第1のセグメント化マップを生成し、1つ又は複数の背景マスクがフィルタリングされた第1のセグメント化マップであって、1つ又は複数の背景マスクが、フレームに関連付けられた深度マップに基づいて第1のセグメント化マップからフィルタリングされる、第1のセグメント化マップを含む第2のセグメント化マップを生成する、手段を含むことができる。
【0008】
いくつかの態様では、上述した方法、非一時的コンピュータ可読媒体、及び装置は、ニューラルネットワークを使用して深度マップを生成することを含むことができる。
【0009】
いくつかの実施例では、第2のセグメント化マップを生成することは、第1のセグメント化マップと深度マップとの比較に基づいて、1つ又は複数の背景マスクに関連付けられたそれぞれの深度値と、対象のターゲットを識別するターゲットセグメント化マスクに関連付けられたそれぞれの深度値との間の閾値差を決定することを含むことができる。いくつかの実施例では、第2のセグメント化マップは、1つ又は複数の背景マスクに関連付けられたそれぞれの深度値と、対象のターゲットを識別するターゲットセグメント化マスクに関連付けられたそれぞれの深度値との間の閾値差に基づいて、第1のセグメント化マップから1つ又は複数の背景マスクを除去することを更に含む。
【0010】
いくつかの実施例では、深度マップは、フレームのピクセルに対応する深度値に関連付けられた深度マスクのセットを含むことができる。いくつかの態様では、第2のセグメント化マップを生成することは、第1のセグメント化マップと深度マップとの比較に基づいて、対象のターゲットを識別するターゲットセグメント化マスクと、深度マップ内の深度マスクのセットからの1つ又は複数の深度マスクとの間の重複を決定することと、重複に基づいて、対象のターゲットを識別するターゲットセグメント化マスクを維持することと、1つ又は複数の背景マスクと深度マスクのセットからの1つ又は複数の追加の深度マスクとの間の追加の重複に基づいて、第1のセグメント化マップから1つ又は複数の背景マスクをフィルタリングすることと、を含むことができる。
【0011】
いくつかの態様では、第2のセグメント化マップを生成することは、1つ又は複数の追加の深度マスクに関連付けられた深度値と、1つ又は複数の深度マスクに関連付けられた深度値との間の差が閾値を上回ると決定することと、差が閾値を上回ることに基づいて、第1のセグメント化マップから1つ又は複数の背景マスクをフィルタリングすることと、を更に含む。いくつかの実施例では、1つ又は複数の深度マスクは、対象のターゲットに対応し、1つ又は複数の追加の深度マスクは、フレームの1つ又は複数の背景領域に対応する。
【0012】
いくつかの態様では、第2のセグメント化マップを生成することは、深度マップからの深度領域及び第1のセグメント化マップからの予測されたマスクに関連付けられたインターセクションオーバーユニオン(intersection-over-union、IOU)スコアを決定することと、IOUスコアに基づいて、深度マップからの深度領域を、第1のセグメント化マップからの予測されたマスクであって、対象のターゲットを識別するターゲットセグメント化マスクと、フレームの1つ又は複数の背景領域を識別する1つ又は複数の背景マスクとを含むことができる、予測されたマスクと照合することと、1つ又は複数の背景マスクに関連付けられた1つ又は複数のIOUスコアが閾値未満であるという決定に基づいて、第1のセグメント化マップから1つ又は複数の背景マスクをフィルタリングすることと、を含むことができる。
【0013】
いくつかの態様では、上述した方法、非一時的コンピュータ可読媒体、及び装置は、第1のセグメント化マップから1つ又は複数の背景マスクをフィルタリングする前に、適応ガウス閾値処理及びノイズ低減を深度マップに適用することを含むことができる。
【0014】
いくつかの実施例では、フレームは、単眼画像キャプチャデバイスによって生成された単眼フレームを含むことができる。
【0015】
いくつかの実施例では、第1のセグメント化マップ及び第2のセグメント化マップは、1つ又は複数のニューラルネットワークを使用して生成される。
【0016】
いくつかの態様では、上述した方法、非一時的コンピュータ可読媒体、及び装置は、フレームと第2のセグメント化マップとに基づいて、修正されたフレームを生成することを含むことができる。いくつかの実施例では、修正されたフレームは、視覚効果、エクステンデッドリアリティ効果、画像処理効果、ぼかし効果、画像認識効果、オブジェクト検出効果、コンピュータグラフィックス効果、クロマキーイング効果、及び画像様式化効果のうちの少なくとも1つを含むことができる。
【0017】
いくつかの態様では、上述した装置の各々は、モバイル、デバイス、スマートデバイス若しくは接続デバイス、カメラシステム、及び/又はエクステンデッドリアリティ(extended reality、XR)デバイス(例えば、仮想現実(virtual reality、VR)デバイス、拡張現実(augmented reality、AR)デバイス、又は複合現実(mixed reality、MR)デバイス)である、それらの一部であってもよい、又はそれらを含むことができる。いくつかの例では、装置は、車両、モバイルデバイス(例えば、携帯電話又はいわゆる「スマートフォン」又は他のモバイルデバイス)、ウェアラブルデバイス、パーソナルコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、サーバコンピュータ、ロボティクスデバイス又はシステム、航空システム、あるいは他のデバイスを含むか、又はそれらの一部であり得る。いくつかの態様では、装置は、1つ又は複数の画像をキャプチャするための画像センサ(例えば、カメラ)又は複数の画像センサ(例えば、複数のカメラ)を含む。いくつかの態様では、装置は、1つ又は複数の画像、通知、及び/又は他の表示可能なデータを表示するための1つ又は複数のディスプレイを含む。いくつかの態様では、装置は、1つ又は複数のスピーカ、1つ又は複数の発光デバイス、及び/又は1つ又は複数のマイクロフォンを含む。いくつかの態様では、上記で説明した装置は、1つ又は複数のセンサを含んでもよい。場合によっては、1つ又は複数のセンサは、装置のロケーション、装置の状態(例えば、追跡状態、動作状態、温度、湿度レベル、及び/又は他の状態)を判定するために、かつ/又は他の目的のために使用することができる。
【0018】
本概要では、特許請求される主題の主要な又は必須の特徴を特定することは意図されず、特許請求される主題の範囲を決定するために独立して使用されることも意図されない。本主題は、この特許の明細書全体、いずれか又は全ての図面、及び各請求項の適切な部分を参照することによって理解されるはずである。
【0019】
上記のことは、他の特徴及び実施形態と共に、以下の明細書、特許請求の範囲、及び添付図面を参照すると、より明らかになろう。
【0020】
本出願の例示的な実施例について、以下の図面を参照して以下で詳細に説明する。
【図面の簡単な説明】
【0021】
【
図1】本開示のいくつかの実施例による、例示的な画像処理システムを示すブロック図である。
【
図2】本開示のいくつかの実施例による、背景に多数のオブジェクトを有する例示的なシーンを示す。
【
図3】本開示のいくつかの実施例による、本開示のいくつかの実施例による深度推定を用いたセグメント化のための例示的なプロセスを示す図である。
【
図4】本開示のいくつかの実施例による、セグメント化マップ及び推定深度情報に基づいてセグメント化出力を生成するための例示的な深度フィルタリングプロセスを示す図である。
【
図5】本開示のいくつかの実施例による、深度フィルタリングを用いたセグメント化のための例示的なトレーニング段階及び推論段階を示す図である。
【
図6】本開示のいくつかの実施例による、深度フィルタリングなしの、及び深度フィルタリングありのセグメント化されたフレームの例を示す図である。
【
図7】本開示のいくつかの実施例による、深度フィルタリングを用いたセマンティックセグメント化のためのプロセスの一実施例のフローチャートである。
【
図8】本開示のいくつかの実施例による、例示的なコンピューティングデバイスアーキテクチャを示す。
【発明を実施するための形態】
【0022】
本開示の特定の態様及び実施形態が、以下で提供される。当業者に明らかになるように、これらの態様及び実施形態のうちのいくつかが独立して適用されてもよく、それらのうちのいくつかは組み合わせて適用されてもよい。以下の説明では、説明目的で、本出願の実施形態の完全な理解をもたらすために具体的な詳細が記載される。しかしながら、様々な実施形態がこれらの具体的な詳細なしに実践され得ることは明らかであろう。図及び説明は限定的であることが意図されていない。
【0023】
以下の説明は、例示的な実施形態を提供するにすぎず、本開示の範囲、適用可能性、又は構成を限定することを意図しない。むしろ、例示的な実施形態の以下の説明は、例示的な実施形態を実装することを可能にする説明を当業者に提供する。添付の特許請求の範囲に記載されるような本出願の趣旨及び範囲から逸脱することなく、要素の機能及び構成において様々な変更が加えられてよいことを理解されたい。
【0024】
前述のように、コンピューティングデバイスは、画像をキャプチャし、様々な画像処理タスクを実行し、様々な画像効果を生成するなどの能力をますます備えてきている。クロマキーイング、被写界深度又は「ボケ」効果、オブジェクト検出、認識タスク(例えば、オブジェクト、顔、及びバイオメトリック認識)、特徴抽出、背景置換、画像様式化、オートメーション、マシンビジョン、コンピュータグラフィックス、医療撮像などの多くの画像処理タスク及び効果は、所望の画像処理タスクを実行する、又は所望の画像効果を生成するために分析又は処理することができるセグメントに画像を分割するために、画像セグメント化に依拠する。例えば、カメラは、浅い被写界深度(「ボケ」)効果を可能にするポートレートモード機能を備えることが多い。被写界深度効果は、前景オブジェクト又は領域等の特定の画像領域又はオブジェクトに焦点を合わせる一方で、背景領域又はピクセル等の画像内の他の領域又はピクセルをぼかすことができる。被写界深度効果は、背景及び前景領域又はオブジェクト等の画像内の異なる領域又はオブジェクトを識別及び修正するために、画像セグメント化技術を使用して生成することができる。
【0025】
場合によっては、ユーザは、画像及び/又はビデオ内の特定の前景オブジェクトのみに関心があることがある。例えば、ユーザが自分の自分撮り又は小グループの人々の自分撮りを行う場合など、ユーザは、ユーザの近くにある前景オブジェクトのみに関心があることがある。別の例として、ユーザは、ビデオストリーム又はビデオ録画、パーソナルメディア制作、プレゼンテーションなどにおける特定の前景ターゲットに関心がある場合がある。場合によっては、デバイスは、対象のオブジェクトがセマンティックセグメント化を使用して識別され、任意選択的に後処理により拡張される、オブジェクトベースの処理を実行するように構成することができる。
【0026】
セマンティックセグメント化は、ビューのピクセルごとのクラスマッピングを生成することができ、人などのクラス内のオブジェクトは、画像データから識別される。多くの場合、セマンティックセグメント化の精度は、キャプチャされたシーン内に(例えば、前景ターゲットなど、対象のより近い人又はオブジェクトに対して)より遠く離れた人又はオブジェクトがあるとき、低減される可能性がある。精度の低減は、シーン内でより遠く離れている人若しくはオブジェクトのサイズがより小さいこと、及び/又はそれらの解像度がより小さいことによって引き起こされる場合がある。セマンティックセグメント化の不正確さ及び/又は不一致により、遠隔の人及び/又はオブジェクト(例えば、キャプチャされたシーン及び/又は背景内のより遠く離れている人及び/又はオブジェクト)がキャプチャされたシーンに含まれるときに、ビデオにおいてアーチファクト及び/又はちらつきを引き起こす可能性がある。正確なセマンティックセグメント化は、対象でない背景内の人々及び/又はオブジェクト、並びに前景オブジェクトなどの対象のターゲット(単数又は複数)を検出し、セグメント化することができる。
【0027】
以下の開示では、単眼深度推定を使用してセグメント化の安定性を改善するためのシステム、装置、方法(プロセスとも呼ばれる)、及びコンピュータ可読媒体(本明細書では集合的に「システム及び技術」と呼ばれる)について、本明細書で説明する。いくつかの実施例では、本明細書で説明されるシステム及び技術は、対象のターゲットを含み、かつ対象でない背景内の任意のオブジェクト及び/又は人々を除外する、セグメント化マップなどのセグメント化出力を生成することができる。本明細書で説明されるシステム及び技術は、入力フレームからセグメント化マップ及び深度マップを生成し、深度マップ内の推定された深度値を使用して、閾値深度又は範囲を超える、かつ/又はセグメント化ターゲットに接続されていない、セグメント化マップ内のアイテムをフィルタリングすることができる。次いで、本明細書で説明されるシステム及び技術は、より正確なセグメント化出力を生成することができる。いくつかの実施例では、本明細書で説明されるシステム及び技術は、単眼画像からセグメント化マップ及び深度マップを生成することができる。本明細書で説明されるシステム及び技術は、深度マップを使用して、画像内の背景アイテムをフィルタリングし、セグメント化出力内に対象のセグメント化ターゲットを維持することができる。
【0028】
図1は、いくつかの実施例による、例示的な画像処理システム100を示す図である。画像処理システム100は、本明細書で説明するセグメント化技術を実行することができる。更に、画像処理システム100は、本明細書で説明するように、様々な画像処理タスクを実行し、様々な画像処理効果を生成することができる。例えば、画像処理システム100は、画像セグメント化、前景予測、背景置換、被写界深度効果、クロマキーイング効果、特徴抽出、オブジェクト検出、画像認識、マシンビジョン、並びに/又は任意の他の画像処理及びコンピュータビジョンタスクを実行することができる。
【0029】
図1に示す実施例では、画像処理システム100は、画像キャプチャデバイス102、ストレージ108、コンピュート構成要素110、画像処理エンジン120、1つ又は複数のニューラルネットワーク(単数又は複数)122、及びレンダリングエンジン124を含む。画像処理システム100はまた、任意選択的に、1つ又は複数の追加の画像キャプチャデバイス104と、光検出及び測距(light detection and ranging、LIDAR)センサ、電波検出及び測距(radio detection and ranging、RADAR)センサ、加速度計、ジャイロスコープ、光センサ、慣性測定ユニット(inertial measurement unit、IMU)、近接センサなどの1つ又は複数のセンサ106と、を含むことができる。場合によっては、画像処理システム100は、異なるFOVを有する画像をキャプチャすることができる複数の画像キャプチャデバイスを含むことができる。例えば、デュアルカメラ又は画像センサの用途では、画像処理システム100は、異なるFOV(例えば、異なる視野角、異なる被写界深度等)を有する画像をキャプチャすることが可能な異なるタイプのレンズ(例えば、広角、望遠、標準、ズーム等)を有する画像キャプチャデバイスを含むことができる。
【0030】
画像処理システム100は、1つのコンピューティングデバイス又は複数のコンピューティングデバイスの一部であり得る。いくつかの実施例では、画像処理システム100は、カメラシステム(例えば、デジタルカメラ、IPカメラ、ビデオカメラ、セキュリティカメラなど)、電話システム(例えば、スマートフォン、セルラー電話、会議システムなど)、デスクトップコンピュータ、ラップトップ若しくはノートブックコンピュータ、タブレットコンピュータ、セットトップボックス、テレビ、ディスプレイデバイス、デジタルメディアプレーヤ、ゲームコンソール、ビデオストリーミングデバイス、ドローン、自動車内のコンピュータ、IoT(Internet-of-Things、モノのインターネット)デバイス、スマートウェアラブルデバイス、エクステンデッドリアリティ(XR)デバイス(例えば、ヘッドマウントディスプレイ、スマートグラスなど)、又は任意の他の好適な電子デバイス(単数又は複数)などの、電子デバイス(単数又は複数)の一部であってもよい。
【0031】
いくつかの実装形態では、画像キャプチャデバイス102、画像キャプチャデバイス104、他のセンサ(単数又は複数)106、ストレージ108、コンピュート構成要素110、画像処理エンジン120、ニューラルネットワーク(単数又は複数)122、及びレンダリングエンジン124は、同じコンピューティングデバイスの一部であってもよい。例えば、場合によっては、画像キャプチャデバイス102、画像キャプチャデバイス104、他のセンサ(単数又は複数)106、ストレージ108、コンピュート構成要素110、画像処理エンジン120、ニューラルネットワーク(単数又は複数)122、及びレンダリングエンジン124は、スマートフォン、ラップトップ、タブレットコンピュータ、スマートウェアラブルデバイス、ゲームシステム、XRデバイス、及び/又は任意の他のコンピューティングデバイスに統合することができる。しかしながら、いくつかの実装形態では、画像キャプチャデバイス102、画像キャプチャデバイス104、他のセンサ(単数又は複数)106、ストレージ108、コンピュート構成要素110、画像処理エンジン120、ニューラルネットワーク(単数又は複数)122、及び/又はレンダリングエンジン124は、2つ以上の別個のコンピューティングデバイスの一部であってもよい。
【0032】
いくつかの実施例では、画像キャプチャデバイス102及び104は、デジタルカメラ、ビデオカメラ、スマートフォンカメラ、テレビ又はコンピュータなどの電子装置上のカメラデバイス、カメラシステムなどの任意の画像及び/又はビデオキャプチャデバイスであってもよい。場合によっては、画像キャプチャデバイス102及び104は、デジタルカメラ、ビデオカメラ、IPカメラ、スマートフォン、スマートテレビ、ゲームシステムなどのカメラ又はコンピューティングデバイスの一部であってもよい。いくつかの実施例では、画像キャプチャデバイス102及び104は、デュアルカメラアセンブリの一部であってもよい。画像キャプチャデバイス102及び104は、画像及び/又はビデオコンテンツ(例えば、未加工画像及び/又はビデオデータ)をキャプチャすることができ、これらは次いで、本明細書で説明するように、コンピュート構成要素110、画像処理エンジン120、ニューラルネットワーク(単数又は複数)122、及び/又はレンダリングエンジン124によって処理することができる。
【0033】
場合によっては、画像キャプチャデバイス102及び104は、画像データ(例えば、静止画像、ビデオフレーム等)をキャプチャするための画像センサ及び/又はレンズを含むことができる。画像キャプチャデバイス102及び104は、異なる又は同じ視野角、異なる又は同じ被写界深度、異なる又は同じサイズ等を含む、異なる又は同じFOVを有する画像データをキャプチャすることができる。例えば、場合によっては、画像キャプチャデバイス102及び104は、異なるFOVを有する異なる画像センサを含むことができる。他の実施例では、画像キャプチャデバイス102及び104は、広角レンズ、望遠レンズ(例えば、短望遠、中望遠など)、標準レンズ、ズームレンズなど、異なるFOVを有する異なるタイプのレンズを含むことができる。いくつかの実施例では、画像キャプチャデバイス102は、1つのタイプのレンズを含むことができ、画像キャプチャデバイス104は、異なるタイプのレンズを含むことができる。場合によっては、画像キャプチャデバイス102及び104は、異なるタイプの光に応答することができる。例えば、場合によっては、画像キャプチャデバイス102は、可視光に応答することができ、画像キャプチャデバイス104は、赤外光に応答することができる。
【0034】
他のセンサ(単数又は複数)106は、距離、動き、位置、深度、速度などの情報を検出及び測定するための任意のセンサであってもよい。センサの非限定的な例としては、LIDAR、超音波センサ、ジャイロスコープ、加速度計、磁力計、RADAR、IMU、オーディオセンサ、光センサなどが挙げられる。例示的な一実施例では、センサ106は、被写界深度及び他の効果を計算するときに使用することができる距離及び/又は深度情報を感知又は測定するように構成されたLIDARであってもよい。場合によっては、画像処理システム100は、マシンビジョンセンサ、スマートシーンセンサ、音声認識センサ、衝撃センサ、位置センサ、傾斜センサ、光センサなどの、他のセンサを含むことができる。
【0035】
ストレージ108は、例えば、画像データなどの、データを記憶するための任意の記憶デバイス(単数又は複数)を含むことができる。ストレージ108は、画像処理システム100の構成要素のいずれかからのデータを記憶することができる。例えば、ストレージ108は、画像キャプチャデバイス102及び104、他のセンサ(単数又は複数)106、コンピュート構成要素110のいずれか(例えば、処理パラメータ、出力、ビデオ、画像、セグメント化マップ、深度マップ、フィルタリング結果、計算結果など)、並びに/又は画像処理エンジン120、ニューラルネットワーク(単数又は複数)122、及び/若しくはレンダリングエンジン124のいずれか(例えば、出力画像、処理結果、パラメータなど)からのデータ又は測定値を記憶することができる。いくつかの実施例では、ストレージ108は、コンピュート構成要素110による処理のためのデータ(例えば、画像データ)を記憶するためのバッファを含んでもよい。
【0036】
いくつかの実装形態では、コンピュート構成要素110は、中央処理ユニット(central processing unit、CPU)112、グラフィックス処理ユニット(graphics processing unit、GPU)114、デジタル信号プロセッサ(digital signal processor、DSP)116、及び/又は画像信号プロセッサ(image signal processor、ISP)118を含むことができる。コンピュート構成要素110は、画像強調、特徴抽出、オブジェクト若しくは画像セグメント化、深度推定、コンピュータビジョン、グラフィックスレンダリング、XR(例えば、拡張現実、仮想現実、複合現実など)、画像/ビデオ処理、センサ処理、認識(例えば、テキスト認識、オブジェクト認識、特徴認識、顔認識、パターン認識、シーン認識など)、前景予測、機械学習、フィルタリング、被写界深度効果計算若しくはレンダリング、追跡、位置特定、及び/又は本明細書で説明する様々な動作のいずれかなどの様々な動作を実行することができる。いくつかの実施例では、コンピュート構成要素110は、画像処理エンジン120、ニューラルネットワーク(単数又は複数)122、及びレンダリングエンジン124を実装することができる。他の例では、コンピュート構成要素110は、1つ又は複数の他の処理エンジンを実装することもできる。
【0037】
画像処理エンジン120、ニューラルネットワーク(単数又は複数)122、及びレンダリングエンジン124の動作は、コンピュート構成要素110のうちの1つ又は複数によって実施することができる。例示的な一実施例では、画像処理エンジン120及びニューラルネットワーク(単数又は複数)122(及び関連付けられた動作)は、CPU112、DSP116、及び/又はISP118によって実装することができ、レンダリングエンジン124(及び関連付けられた動作)は、GPU114によって実装することができる。場合によっては、コンピュート構成要素110は、本明細書に記載の様々な動作のいずれかを実行するために、他の電子回路又はハードウェア、コンピュータソフトウェア、ファームウェア、又はそれらの任意の組み合わせを含むことができる。
【0038】
場合によっては、コンピュート構成要素110は、画像キャプチャデバイス102及び/又は画像キャプチャデバイス104によってキャプチャされたデータ(例えば、画像データなど)を受信し、そのデータを処理して、例えば、被写界深度効果、背景置換、追跡、オブジェクト検出などの特定の視覚及び/又は画像処理効果を有する出力画像又はビデオを生成することができる。例えば、コンピュート構成要素110は、画像キャプチャデバイス102及び104によってキャプチャされた画像データ(例えば、1つ又は複数の静止画像又はビデオフレームなど)を受信し、深度推定、画像セグメント化、及び深度フィルタリングを実行し、本明細書で説明するような出力セグメント化結果を生成することができる。画像(又はフレーム)は、ピクセルごとに赤、緑、及び青の色成分を有する赤-緑-青(red-green-blue、RGB)画像、ピクセルごとに1つの輝度成分及び2つの色差(色)成分(赤の色差及び青の色差)を有する、輝度、赤の色差、青の色差(YCbCr)画像、又は任意の他の適切なタイプのカラー又はモノクロ画像、であり得る。
【0039】
コンピュート構成要素110は、画像処理エンジン120及びニューラルネットワーク(単数又は複数)122を実装して、様々な画像処理動作を実行し、画像効果を生成することができる。例えば、コンピュート構成要素110は、画像処理エンジン120及びニューラルネットワーク(単数又は複数)122を実装して、特徴抽出、スーパーピクセル検出、前景予測、空間マッピング、顕著性検出、セグメント化、深度推定、深度フィルタリング、ピクセル分類、クロッピング、アップサンプリング/ダウンサンプリング、ぼかし、モデリング、フィルタリング、色補正、ノイズ低減、スケーリング、ランキング、適応ガウス閾値処理、及び/又は他の画像処理タスクを実行することができる。コンピュート構成要素110は、画像キャプチャデバイス102及び/又は104によってキャプチャされた画像データ、ストレージ108内の画像データ、リモートカメラ、サーバ、又はコンテンツプロバイダなどのリモートソースから受信された画像データ、ソースの組み合わせから取得された画像データなどを処理することができる。
【0040】
いくつかの実施例では、コンピュート構成要素110は、画像キャプチャデバイス102によってキャプチャされた単眼画像から深度マップを生成し、単眼画像からセグメント化マップを生成し、深度マップとセグメント化マップとを比較して少なくとも閾値深度を有するピクセル/領域をフィルタリングすることによって実行される深度フィルタリングに基づいて、精緻化又は更新されたセグメント化マップを生成し、セグメント化出力を生成することができる。場合によっては、コンピュート構成要素110は、空間情報(例えば、中心事前マップ)、確率マップ、視差情報(例えば、視差マップ)、画像クエリ、顕著性マップなどを使用して、1つ又は複数の画像内のオブジェクト及び/又は領域をセグメント化し、被写界深度効果などの画像効果を有する出力画像を生成することができる。他の場合には、コンピュート構成要素110は、顔検出情報、センサ測定値(例えば、深度測定値)、深度測定値などの他の情報を使用することもできる。
【0041】
いくつかの実施例では、コンピュート構成要素110は、ピクセルレベル又は領域レベルの精度で(又はほぼその精度で)セグメント化(例えば、前景-背景セグメント化、オブジェクトセグメント化など)を実行することができる。場合によっては、コンピュート構成要素110は、異なるFOVを有する画像を使用してセグメント化を実行することができる。例えば、コンピュート構成要素110は、画像キャプチャデバイス102によってキャプチャされた第1のFOVを有する画像と、画像キャプチャデバイス104によってキャプチャされた第2のFOVを有する画像とを使用して、セグメント化を実行することができる。セグメント化はまた、例えば、限定ではないが、深度拡張及びオブジェクト認識自動露出、自動ホワイトバランス、オートフォーカス、トーンマッピング等の他の画像調整又は画像処理動作を可能にすることができる(又はそれと併せて使用することができる)。
【0042】
画像処理システム100はいくつかの構成要素を含むものとして示されるが、画像処理システム100は
図1に示されるものよりも多数又は少数の構成要素を含むことができることが、当業者には理解されよう。例えば、画像処理システム100は、いくつかの事例では、
図1に示さない、1つ又は複数のメモリデバイス(例えば、RAM、ROM、キャッシュなど)、1つ又は複数のネットワークインターフェース(例えば、有線及び/又は無線通信インターフェースなど)、1つ又は複数のディスプレイデバイス、及び/又は他のハードウェア若しくは処理デバイスも含むことができる。画像処理システム100と共に実装することができるコンピューティングデバイス及びハードウェア構成要素の例示的な実施例については、
図8に関して以下で説明する。
【0043】
場合によっては、セマンティックセグメント化は、ビューのピクセルごとのクラスマッピングを生成することができ、人などのクラス内のオブジェクトは、画像データから識別される。前述したように、多くの場合、セマンティックセグメント化の精度は、キャプチャされたシーン内に(例えば、前景の人又はオブジェクトなど、前景又は対象のターゲットに対して)より遠く離れた人又はオブジェクトがあるとき、低減される可能性がある。精度の低減は、シーン内でより遠く離れている人若しくはオブジェクトのサイズがより小さいこと、及び/又はそれらの解像度がより小さいことによって引き起こされる場合がある。セマンティックセグメント化の不正確さ及び/又は不一致により、遠隔の人及び/又はオブジェクト(例えば、キャプチャされたシーン及び/又は背景内のより遠く離れている人及び/又はオブジェクト)がキャプチャされたシーンに含まれるときに、ビデオにおいてアーチファクト及び/又はちらつきを引き起こす可能性がある。正確なセマンティックセグメント化は、対象でない背景内の人々及び/又はオブジェクト、並びに前景オブジェクトなどの対象のターゲット(単数又は複数)を検出し、セグメント化することができる。
【0044】
図2は、背景に多数のオブジェクト210を有する例示的なシーン200を示す。この例では、シーン内の人202は、セマンティックセグメント化のための対象のターゲットである。人202は、画像処理システム100によってシーン内で検出されている。しかしながら、セグメント化のための対象のターゲットではないオブジェクト210も検出されている。図示されるように、オブジェクト210は、人202からより遠く離れており、人202よりも小さく、したがって、そのようなオブジェクトが対象ではないことを区別すること、フィルタリングすること、及び/又は決定することがより困難である。これは、セグメント化の不正確さ/不一致をもたらす可能性がある。更に、これは、シーン200のビデオにちらつきを引き起こす可能性がある。例えば、画像処理システム100がシーン200をキャプチャするフレームのセマンティックセグメント化を実行するとき、オブジェクト210は、いくつかのフレームにおいて検出され、他のフレームにおいては検出されない場合がある。オブジェクト210がいくつかのフレームにおいてセグメント化され、他のフレームにおいてはセグメント化されないので、これは、フレーム間のちらつきを引き起こす可能性がある。
【0045】
図3は、本開示のいくつかの実施例による、深度推定を用いたセグメント化のための例示的なプロセス300を示す図である。プロセス300は、セマンティックセグメント化に加えて深度推定を使用して、セグメント化結果の安定性を改善することができる。例えば、プロセス300は、前述のようなちらつきを低減又は回避することができ、より正確なセグメント化結果をもたらすことなどができる。いくつかの実施例では、プロセス300は、単眼深度推定を使用して、セグメント化結果の特定の部分をフィルタリングすることができる。例えば、プロセス300は、単眼深度推定を使用して、対象のターゲット(例えば、前景ターゲットなど)からより遠く離れている(例えば、少なくとも閾値深度を有する)セグメント化マップ内のオブジェクト及び/又は人々をフィルタリングし、深度フィルタリングを用いてセグメント化結果を生成することができる。
【0046】
図3に示すように、プロセス300は、入力フレーム302からセグメント化マップ304を(例えば、画像処理システム100を介して)生成する。いくつかの実施例では、プロセス300は、入力フレーム302に対してセマンティックセグメント化を実行して、セグメント化マップ304を生成することができる。加えて、プロセス300は、入力フレーム302から深度推定306を生成する。いくつかの実施例では、深度推定306は、単眼深度推定を含むことができ、入力フレーム302は、単眼カメラ画像フレームを含むことができる。
【0047】
場合によっては、深度推定306は、入力フレーム302の深度マップを含むことができる。いくつかの実施例では、深度推定306は、入力フレーム302の全てのピクセルの深度を推定することができる。プロセス300は、深度推定306を使用して、深度フィルタリング308を実行することができる。例えば、深度推定306は、背景内の不要なアイテム(例えば、より小さい/遠隔のオブジェクトなど)をフィルタリングして、ちらつきを最小限に抑える又は防止するために使用することができる。例えば、プロセス300は、セグメント化マップ304を深度推定306と比較することができる。プロセス300は、深度推定306からの顕著な深度領域をセグメント化マップ304内の予測されたマスクと照合することができる。プロセス300は、深度推定306からの1つ又は複数の顕著な深度領域と一致及び/又は少なくとも部分的に重複するセグメント化マップ304内の任意の予測されたマスクを維持し、深度推定306からの1つ又は複数の顕著な深度領域と一致及び/又は少なくとも部分的に重複しないセグメント化マップ304内の任意の予測されたマスクをフィルタリングすることができる。
【0048】
深度フィルタリング308に基づいて、プロセス300は、セグメント化結果310を出力することができる。セグメント化結果310は、深度推定306からの1つ又は複数の顕著な深度領域と一致及び/又は少なくとも部分的に重複しないセグメント化マップ304内の任意の予測されたマスクを除外又はフィルタリングすることができる。したがって、いくつかの実施例では、セグメント化結果310は、フィルタリングされたセグメント化マップを含むことができる。例えば、セグメント化結果310は、深度推定306からの1つ又は複数の顕著な深度領域と一致及び/又は重複するセグメント化マップ304内の任意の予測されたマスクを維持することができる。いくつかの実施例では、セグメント化マップ304から除去/フィルタリングされたアイテムは、セグメント化マップ304内の1つ又は複数のセグメント化マスク又はアイテムに対応する深度マップ内の1つ又は複数のアイテムよりも大きい深度値を有する深度マップ(例えば、深度推定306)内のアイテム(例えば、オブジェクト、人々、領域など)を含むことができる。
【0049】
図4は、セグメント化マップ及び推定深度情報に基づいてセグメント化出力を生成するための例示的な深度フィルタリングプロセス400を示す図である。いくつかの実施例では、深度フィルタリングプロセス400は、
図3に示す深度フィルタリング308を含むことができ、表すことができ、又はそれと同じであってもよい。
【0050】
この実施例では、深度フィルタリングシステム410は、セグメント化マップ402及び深度マップ404を受信する。いくつかの実施例では、深度フィルタリングシステム410は、画像処理システム100によって実装することができる。セグメント化マップ402及び深度マップ404は、前に説明したように、入力フレームに基づくことができる。例えば、セグメント化マップ402及び深度マップ404は、単眼カメラフレームに基づくことができる。
【0051】
ブロック412において、深度フィルタリングシステム410は、深度マップ404に適応ガウス閾値処理を適用することができる。いくつかの実施例では、適応ガウス閾値処理は、深度マップ404内の様々な深度値に基づいて、深度マップ404内の対象のターゲットを識別するのを助けることができる。更に、適応ガウス閾値処理を使用して、閾値量だけ周囲/背景ピクセルの深度値とは異なる深度値を有するフレーム領域を選択することができる。例えば、場合によっては、適応ガウス閾値処理は、深度マップ404内の対象のターゲットの1つ又は複数の深度値を識別し、深度マップ404内の対象のターゲットに対応しない、かつ/又は接続されていない、深度マップ404内の領域/ピクセル/オブジェクトを減算するために使用される深度閾値又は範囲を設定することができる。例えば、適応ガウス閾値処理は、特定の深度値(単数又は複数)を有するターゲット領域(単数又は複数)を選択/維持し、深度閾値又は範囲を上回る、かつ/又は選択されたターゲット領域(単数又は複数)に接続されていない、深度マップ404内の任意のピクセル/領域を除外/減算することができる。
【0052】
いくつかの実施例では、深度フィルタリングシステム410は、任意の好適な背景減算技術(背景抽出とも呼ばれる)を使用して(例えば、入力フレーム内でキャプチャされた)シーンの背景をモデル化することができる。例えば、場合によっては、深度フィルタリングシステム410は、深度マップ404内の各ピクセル位置をモデル化するための平均及び分散というパラメータを用いて、各ピクセル位置に対してガウス分布モデルを使用することができる。いくつかの実施例では、特定のピクセル位置における以前のピクセルの値を使用して、そのピクセル位置に対するターゲットガウスモデルの平均と分散を計算することができる。入力フレーム内の所与の位置におけるピクセルが処理されると、その値は、このピクセル位置の現在のガウス分布によって評価することができる。前景ピクセル又は背景ピクセルのいずれかとしてのピクセルの分類は、ピクセル値と指定されたガウスモデルの平均との間の差を比較することによって行うことができる。例示的な一実施例では、ピクセル値とガウス平均の距離が分散の特定の量未満である場合、ピクセルは、背景ピクセルとして分類することができる。それ以外の場合、この例示的な実施例では、ピクセルは、前景ピクセルとして分類することができる。
【0053】
ブロック414において、深度フィルタリングシステム410は、適応ガウス閾値処理から結果として得られた深度マップに対してノイズ低減を実行することができる。いくつかの実施例では、深度フィルタリングシステム410は、収縮操作及び膨張操作を介してノイズ低減を実行することができる。例えば、場合によっては、深度フィルタリングシステム410は、モルフォロジー関数を実行して、深度マップ404内の前景ピクセルをフィルタリングすることができる。モルフォロジー関数は、収縮及び膨張関数を含み得る。一例では、収縮関数を適用し、続いて一連の1つ又は複数の膨張関数を適用することができる。収縮関数は、ターゲット(例えば、オブジェクト/領域)境界上のピクセルを除去するために適用することができる。
【0054】
例えば、深度フィルタリングシステム410は、処理されている中心ピクセルのフィルタウィンドウに収縮関数を適用することができる。ウィンドウは、前景マスク内の(中心ピクセルとしての)各前景ピクセルに適用することができる。収縮関数は、ウィンドウ内のその近隣のピクセルの1つ又は複数が背景ピクセルである場合に、(中心ピクセルとして機能する)前景マスク内の現在の前景ピクセルを背景ピクセルに設定する、収縮操作を含むことができる。そのような収縮操作は、強い収縮操作又は単一近隣収縮操作と呼ばれ得る。ここで、現在の中心ピクセルの近隣ピクセルは、ウィンドウ内のピクセルを含み、追加のピクセルが現在の中心ピクセルである。
【0055】
膨張操作は、前景物体の境界を強調するために使用され得る。例えば、深度フィルタリングシステム410は、中心ピクセルのフィルタウィンドウに膨張関数を適用することができる。膨張ウィンドウは、前景マスク内の(中心ピクセルとしての)各背景ピクセルに適用することができる。膨張関数は、ウィンドウ内のその近隣ピクセルの1つ又は複数が前景ピクセルである場合に、(中心ピクセルとして機能する)前景マスク内の現在の背景ピクセルを前景ピクセルとして設定する、膨張操作を含むことができる。現在の中心ピクセルの近隣ピクセルは、ウィンドウ内のピクセルを含み、追加のピクセルが現在の中心ピクセルである。いくつかの例では、収縮関数が適用された後で、複数の膨張操作が適用され得る。例示的な一実施例では、特定のウィンドウサイズの膨張の複数の関数呼び出しを前景マスクに適用することができる。いくつかの実施例では、ノイズであるピクセルを除去するためにまず収縮関数を適用することができ、前景ピクセルを改良するために一連の膨張関数を適用することができる。例示的な一実施例では、特定のウィンドウサイズを有する収縮関数が最初に呼び出され、特定のウィンドウサイズの膨張の複数の関数呼び出しが前景マスクに適用される。
【0056】
場合によっては、モルフォロジー操作が実行された後、深度フィルタリングシステム410は、連結成分分析を適用して近隣の前景ピクセルを連結し、連結成分及びブロブを編成することができる。連結成分分析のいくつかの実装形態では、1つ又は複数のバウンディングボックスが、各バウンディングボックスが連結されたピクセルの1つの成分を含むような方法で返される。
【0057】
ブロック416において、深度フィルタリングシステム410は、適応ガウス閾値処理及びノイズ低減の後に、セグメント化マップ402と深度マップ404との間のインターセクションオーバーユニオン(IOU)マッチングを実行することができる。IOUマッチングは、深度マップ内の顕著な深度領域をセグメント化マップ402からの予測されたマスクと、それらのIOUに基づいて照合することができる。いくつかの実施例では、IOUは、深度マップ内の深度マスク(例えば、顕著な深度領域)又は境界形状(例えば、バウンディングボックスなど)と、セグメント化マップ402内のセグメント化マスク又は境界形状との間の重複を測定することができる。
【0058】
ブロック418において、深度フィルタリングシステム410は、IOUマッチングに基づいてマスクフィルタリングを実行することができる。例えば、深度フィルタリングシステム410は、閾値未満のIOUスコアを有する(例えば、深度マップ内の深度マスク(単数又は複数)との十分な重複を有さない)セグメント化マップ402内の任意のマスク(又は境界形状)を減算/フィルタリングすることができる。
【0059】
次いで、深度フィルタリングシステム410は、閾値未満のIOUスコアを有するマスク(又は境界形状)を含まないセグメント化マップ402を含むセグメント化出力420を生成することができる。セグメント化出力420は、より高いセグメント化精度/安定性を提供し、入力フレームに関連付けられたフレームのシーケンスにおけるちらつきを防止又は最小化することができる。
【0060】
図5は、本開示のいくつかの実施例による、深度フィルタリングを用いたセグメント化のための例示的なトレーニング段階500及び推論段階520を示す図である。トレーニング段階500では、画像処理システム100は、入力フレーム502を取得し、セグメント化504を実行して、セグメント化マップを生成することができる。画像処理システム100はまた、入力フレーム502に対して深度推定506を実行して、深度マップを生成することができる。いくつかの実施例では、入力フレームは、単眼カメラフレームを含むことができ、深度マップは、単眼深度推定を含むことができる。
【0061】
画像処理システム100は、セグメント化504からのセグメント化マップを使用して、教師ありセグメント化学習508を実行することができる。いくつかの実施例では、画像処理システム100は、トレーニング段階500及び推論段階520においてセグメント化を実行するために、ニューラルネットワーク(例えば、ニューラルネットワーク122)を実装することができる。場合によっては、トレーニング段階500における教師ありセグメント化学習508において、画像処理システム100は、セグメント化504からの出力に対する損失を計算するのを助けるためにトレーニングデータセットを使用することができる。画像処理システム100は、そのセグメント化結果を改善するために、計算された損失に基づいてニューラルネットワークにおける重みを調整することができる。
【0062】
いくつかの実施例では、画像処理システム100は、トレーニング段階500及び推論段階520において深度推定を実行するために、ニューラルネットワーク(例えば、ニューラルネットワーク122)を実装することができる。トレーニング段階500では、画像処理システム100は、深度推定506からの出力を使用して、自己教師付き深度学習510を実行することができる。いくつかの実施例では、画像処理システム100は、ターゲット出力のデータセットを使用して、深度推定モデルを生成することができる。場合によっては、画像処理システム100は、深度推定モデルを使用して、深度推定を計算し、かつ/又は深度推定損失を決定することができる。いくつかの実施例では、画像処理システム100は、深度推定を計算し、それらが関連付けられたフレームに一致するかどうかを決定することができる。次いで、画像処理システム100は、マッチング結果及び/又は計算された損失に基づいて、ニューラルネットワークの重みを調整することができる。
【0063】
推論段階520において、画像処理システム100は、
図3及び
図4に関して前述したように、プロセス300及び深度フィルタリングプロセス400を実行することができる。例えば、画像処理システム100は、入力フレーム522に対してセマンティックセグメント化524を実行して、セグメント化マップを生成することができる。画像処理システム100はまた、入力フレーム522に対して深度推定526を実行して、深度マップを生成することができる。
【0064】
次いで、画像処理システム100は、セグメント化マップ及び深度マップを使用して、深度フィルタリング528を実行することができる。深度フィルタリング528は、セグメント化マップと深度マップとを比較して、セグメント化マップと深度マップとの間に閾値量の重複を有さない領域/ピクセルを減算することができる。例えば、先に説明したように、画像処理システム100は、セグメント化マップと深度マップとの間のIOUスコアを計算し、閾値未満のIOUスコアを有するピクセル/領域を減算することができる。画像処理システム100は、深度フィルタリング528に基づいてセグメント化出力530(例えば、フィルタリングされたセグメント化マップ)を生成することができる。セグメント化出力530は、より高いセグメント化精度/安定性を提供し、入力フレーム522に関連付けられたフレームのシーケンスにおけるちらつきを防止又は最小化することができる。
【0065】
図示のように、画像処理システム100は、現在のフレームの3次元(three-dimensional、3D)深度予測を使用して、背景の一部、不要なもの、遠隔のもの、小さいもの、及び/又はそれらの組み合わせであるオブジェクトをフィルタリングすることができる。本明細書で説明される深度フィルタリングを用いたセグメント化は、セグメント化フレームの信頼できる時間的一貫性を生成することができる。
【0066】
図6は、深度フィルタリングなしの、及び深度フィルタリングありのセグメント化されたフレームの例を示す図である。ここで、入力フレーム602は、深度フィルタリングを含まないセグメント化されたフレーム604を生成するために使用される。図示のように、セグメント化されたフレーム604は、前景内の対象のターゲット612を検出(例えば、セグメント化、マスキング、識別)しているが、対象ではない背景内の様々な被写体610も検出している。セグメント化されたフレーム604を含むフレームのシーケンスにおいて、検出された被写体610は、それらがセグメント化されたフレーム604において検出され、フレームのシーケンスの他のフレームにおいて検出されないので、ちらつきを引き起こす可能性がある。
【0067】
一方、
図6はまた、本明細書で説明されるような深度フィルタリングを用いたセグメント化されたフレーム608を示す。セグメント化されたフレーム608は、入力フレーム602について計算された推定深度606と、入力フレームについて計算されたセグメント化マップとに基づいて生成される。図示されるように、被写体610は、推定深度606を使用してフィルタリングされているので、セグメント化されたフレーム608は、被写体610も検出することなく対象のターゲット612の検出に成功した。その結果、セグメント化されたフレーム608は、いくつかのフレームで検出され他のフレームでは検出されない被写体610からのちらつきを引き起こさない。
【0068】
図7は、本開示のいくつかの実施例による、深度フィルタリングを用いたセマンティックセグメント化のためのプロセス700の一実施例のフローチャートである。ブロック702において、プロセス700は、シーンをキャプチャするフレームを取得することを含むことができる。フレームは、1つ又は複数の前景領域と1つ又は複数の背景領域とを含むことができる。いくつかの実施例では、フレームは、単眼カメラデバイス(例えば、画像キャプチャデバイス102)によってキャプチャされた単眼フレームである。
【0069】
ブロック704において、プロセス700は、フレームに基づいて、対象のターゲット(例えば、人202又は対象のターゲット612)を識別するターゲットセグメント化マスクと、フレームの1つ又は複数の背景領域(例えば、オブジェクト210又は被写体610)を識別する1つ又は複数の背景マスクとを含む第1のセグメント化マップ(例えば、セグメント化マップ304、セグメント化マップ402)を生成することを含むことができる。
【0070】
ブロック706において、プロセス700は、1つ又は複数の背景マスクがフィルタリングされた第1のセグメント化マップを含む第2のセグメント化マップ(例えば、セグメント化結果310、セグメント化出力420)を生成することを含むことができる。いくつかの実施例では、1つ又は複数の背景マスクは、フレームに関連付けられた深度マップ(例えば、深度推定306、深度マップ404)に基づいて第1のセグメント化マップからフィルタリングすることができる。
【0071】
いくつかの態様では、プロセス700は、フレームに基づいて、深度マップ(例えば、深度推定306、深度マップ404)を生成することを含むことができ、深度マップは、フレームのピクセルに関連付けられた深度値を含む。
【0072】
いくつかの態様では、プロセス700は、深度マップ内の深度値に基づいて第1のセグメント化マップから1つ又は複数の背景マスクをフィルタリングすることを含むことができる。いくつかの実施例では、第2のセグメント化マップを生成することは、第1のセグメント化マップと深度マップとの比較に基づいて、1つ又は複数の背景マスクに関連付けられたそれぞれの深度値と、対象のターゲットを識別するターゲットセグメント化マスクに関連付けられたそれぞれの深度値との間の閾値差を決定することを含むことができる。いくつかの態様では、プロセス700は、1つ又は複数の背景マスクに関連付けられたそれぞれの深度値と、対象のターゲットを識別するターゲットセグメント化マスクに関連付けられたそれぞれの深度値との間の閾値差に基づいて、第1のセグメント化マップから1つ又は複数の背景マスクを除去することを含むことができる。
【0073】
場合によっては、深度マップは、フレームのピクセルに対応する深度値に関連付けられた深度マスクのセットを含む。いくつかの実施例では、第2のセグメント化マップを生成することは、第1のセグメント化マップと深度マップとの比較に基づいて、対象のターゲットを識別するターゲットセグメント化マスクと、深度マップ内の深度マスクのセットからの1つ又は複数の深度マスクとの間の重複を決定することと、重複に基づいて、対象のターゲットを識別するターゲットセグメント化マスクを維持することと、1つ又は複数の背景マスクと深度マスクのセットからの1つ又は複数の追加の深度マスクとの間の追加の重複に基づいて、第1のセグメント化マップから1つ又は複数の背景マスクをフィルタリングすることと、を含むことができる。
【0074】
いくつかの実施例では、第2のセグメント化マップを生成することは、1つ又は複数の追加の深度マスクに関連付けられた深度値と、1つ又は複数の深度マスクに関連付けられた深度値との間の差が閾値を上回ると決定することと、差が閾値を上回ることに基づいて、第1のセグメント化マップから1つ又は複数の背景マスクをフィルタリングすることと、を更に含むことができる。場合によっては、1つ又は複数の深度マスクは、対象のターゲットに対応し、1つ又は複数の追加の深度マスクは、フレームの1つ又は複数の背景領域に対応する。
【0075】
場合によっては、第2のセグメント化マップを生成することは、深度マップからの深度領域及び第1のセグメント化マップからの予測されたマスクに関連付けられたインターセクションオーバーユニオン(IOU)スコアを決定することと、IOUスコアに基づいて、深度マップからの深度領域を、第1のセグメント化マップからの予測されたマスクであって、対象のターゲットを識別するターゲットセグメント化マスクと、フレームの1つ又は複数の背景領域を識別する1つ又は複数の背景マスクとを含む、予測されたマスクと照合することと、1つ又は複数の背景マスクに関連付けられた1つ又は複数のIOUスコアが閾値未満であるという決定に基づいて、第1のセグメント化マップから1つ又は複数の背景マスクをフィルタリングすることと、を含むことができる。
【0076】
いくつかの態様では、プロセス700は、フレーム及び第2のセグメント化マップに基づいて、修正されたフレームを生成することを含むことができる。いくつかの実施例では、修正されたフレームは、視覚効果、エクステンデッドリアリティ効果、画像処理効果、ぼかし効果、画像認識効果、オブジェクト検出効果、コンピュータグラフィックス効果、クロマキーイング効果、及び画像様式化効果のうちの少なくとも1つを含むことができる。
【0077】
いくつかの態様では、プロセス700は、第1のセグメント化マップから1つ又は複数の背景マスクをフィルタリングする前に、適応ガウス閾値処理及びノイズ低減を深度マップに適用することを含むことができる。
【0078】
いくつかの実施例では、第1のセグメント化マップ及び第2のセグメント化マップは、1つ又は複数のニューラルネットワークを使用して生成される。いくつかの実施例では、深度マップは、ニューラルネットワークを使用して生成される。
【0079】
いくつかの実施例では、プロセス300、400、及び/又は700は、1つ又は複数のコンピューティングデバイス又は装置によって実行されてもよい。例示的な一実施例では、プロセス300、400、及び/又は700は、
図1に示す画像処理システム100、及び/又は
図8に示すコンピューティングデバイスアーキテクチャ800を有する1つ若しくは複数のコンピューティングデバイスによって実行することができる。場合によっては、そのようなコンピューティングデバイス又は装置は、プロセッサ、マイクロプロセッサ、マイクロコンピュータ、又はプロセス300、400、及び/若しくは700のステップを実行するように構成されたデバイスの他の構成要素を含んでもよい。いくつかの例では、そのようなコンピューティングデバイス又は装置は、画像データをキャプチャするように構成された1つ又は複数のセンサを含んでもよい。例えば、コンピューティングデバイスは、スマートフォン、ヘッドマウントディスプレイ、モバイルデバイス、カメラ、タブレットコンピュータ、又は他の好適なデバイスを含むことができる。いくつかの例では、そのようなコンピューティングデバイス又は装置は、1つ又は複数の画像又はビデオをキャプチャするように構成されたカメラを含んでもよい。場合によっては、そのようなコンピューティングデバイスは、画像を表示するためのディスプレイを含んでもよい。いくつかの例では、1つ又は複数のセンサ及び/又はカメラは、コンピューティングデバイスから分離され、その場合、コンピューティングデバイスは感知されたデータを受信する。そのようなコンピューティングデバイスは、データを通信するように構成されたネットワークインターフェースを更に含んでもよい。
【0080】
コンピューティングデバイスの構成要素は、回路に実装され得る。例えば、構成要素は、1つ又は複数のプログラマブル電子回路(例えば、マイクロプロセッサ、グラフィックス処理ユニット(GPUs)、デジタル信号プロセッサ(DSPs)、中央処理ユニット(CPUs)、及び/又は他の好適な電子回路)を含み得る、電子回路若しくは他の電子ハードウェアを含むことができる、及び/若しくはそれらを使用して実装されることが可能であり、並びに/又は本明細書で説明する様々な動作を実行するために、コンピュータソフトウェア、ファームウェア、若しくはそれらの任意の組み合わせを含むことができる、及び/若しくはそれらを使用して実装されることが可能である。コンピューティングデバイスは、ディスプレイ(出力デバイスの一例として又は出力デバイスに加えて)、データを通信及び/若しくは受信するように構成されたネットワークインターフェース、任意のそれらの組み合わせ、並びに/又は他の構成要素を更に含んでもよい。ネットワークインターフェースは、インターネットプロトコル(IP)ベースのデータ若しくは他のタイプのデータを通信及び/又は受信するように構成され得る。
【0081】
プロセス300、400、及び700は、論理フロー図として示され、その動作は、ハードウェア、コンピュータ命令、又はそれらの組み合わせにおいて実装することができる動作のシーケンスを表す。コンピュータ命令のコンテキストでは、動作は、1つ又は複数のプロセッサによって実行されたとき、記載された動作を実行する、1つ又は複数のコンピュータ可読記憶媒体上に記憶されたコンピュータ実行可能命令を表す。概して、コンピュータ実行可能命令は、特定の機能を実行するか又は特定のデータタイプを実装するルーチン、プログラム、オブジェクト、構成要素、データ構造などを含む。動作が説明される順序は、限定として解釈されることを意図せず、任意の数の説明される動作は、プロセスを実装するために任意の順序で、及び/又は並列に組み合わせることができる。
【0082】
加えて、プロセス300、400、及び/又は700は、実行可能命令で構成された1つ又は複数のコンピュータシステムの制御下で実行することができ、1つ又は複数のプロセッサ上で、ハードウェアによって、又はそれらの組み合わせで集合的に実行するコード(例えば、実行可能命令、1つ若しくは複数のコンピュータプログラム、又は1つ若しくは複数のアプリケーション)として実装することができる。上述のように、コードは、例えば、1つ又は複数のプロセッサによって実行可能な複数の命令を備えるコンピュータプログラムの形態で、コンピュータ可読記憶媒体又は機械可読記憶媒体上に記憶されてもよい。コンピュータ可読記憶媒体又は機械可読記憶媒体は、非一時的であってもよい。
【0083】
図8は、本明細書で説明する様々な技術を実装することができる、例示的なコンピューティングデバイスの例示的なコンピューティングデバイスアーキテクチャ800を示す。例えば、コンピューティングデバイスアーキテクチャ800は、
図1に示す画像処理システム100の少なくともいくつかの部分を実装することができる。コンピューティングデバイスアーキテクチャ800の構成要素は、バスなどの接続部805を使用して、互いに電気通信するように示されている。例示的なコンピューティングデバイスアーキテクチャ800は、処理ユニット(CPU又はプロセッサ)810と、読取り専用メモリ(read only memory、ROM)820及びランダムアクセスメモリ(random access memory、RAM)825などのコンピューティングデバイスメモリ815を含む様々なコンピューティングデバイス構成要素をプロセッサ810に結合するコンピューティングデバイス接続部805と、を含む。
【0084】
コンピューティングデバイスアーキテクチャ800は、プロセッサ810に直接接続される、プロセッサ810の近くにある、又はプロセッサ810の一部として統合される高速メモリのキャッシュを含むことができる。コンピューティングデバイスアーキテクチャ800は、プロセッサ810による高速アクセスのために、メモリ815及び/又は記憶デバイス830からデータをキャッシュ812にコピーすることができる。このようにして、キャッシュは、データを待機する間のプロセッサ810の遅延を回避する、パフォーマンスブーストを提供することができる。これら及び他のモジュールは、様々なアクションを実行するようにプロセッサ810を制御することができる、又はそれを制御するように構成することができる。他のコンピューティングデバイスメモリ815も同様に使用のために利用可能であり得る。メモリ815は、異なる性能特性を有する複数の異なるタイプのメモリを含むことができる。
【0085】
プロセッサ810は、任意の汎用プロセッサ、並びにプロセッサ810を制御するように構成された、記憶デバイス830内に記憶されたサービス1 832、サービス2 834、及びサービス3 836などのハードウェア又はソフトウェアサービス、並びにソフトウェア命令がプロセッサ設計に組み込まれている専用プロセッサを含むことができる。プロセッサ810は、複数のコア又はプロセッサ、バス、メモリコントローラ、キャッシュなどを含む、自己完結型のシステムであってもよい。マルチコアプロセッサは、対称又は非対称であってもよい。
【0086】
コンピューティングデバイスアーキテクチャ800とのユーザの対話を可能にするために、入力デバイス845は、発話のためのマイクロフォン、ジェスチャ又はグラフィカル入力のためのタッチ感知スクリーン、キーボード、マウス、動作入力、スピーチなどの、任意の数の入力機構を表すことができる。出力デバイス835はまた、ディスプレイ、プロジェクタ、テレビ、スピーカデバイスなどの、当業者に知られているいくつかの出力機構のうちの1つ又は複数であってもよい。場合によっては、マルチモーダルコンピューティングデバイスにより、コンピューティングデバイスアーキテクチャ800と通信するためにユーザが複数のタイプの入力を提供することを可能にし得る。通信インターフェース840は、一般に、ユーザ入力及びコンピューティングデバイス出力を支配して管理することができる。いかなる特定のハードウェア構成上で動作することに対しても制約はなく、したがって、改善されたハードウェア又はファームウェア構成が開発されるにつれて、ここでの基本的機能がそれらと容易に置き換えられ得る。
【0087】
記憶デバイス830は、不揮発性メモリであり、ハードディスク、又は磁気カセット、フラッシュメモリカード、ソリッドステートメモリデバイス、デジタル多用途ディスク、カートリッジ、ランダムアクセスメモリ(RAMs)185、読取り専用メモリ(ROM)820、及びそれらのハイブリッドなどの、コンピュータによってアクセス可能なデータを記憶できる他のタイプのコンピュータ可読媒体であってもよい。記憶デバイス830は、プロセッサ810を制御するためのサービス832、834、836を含むことができる。他のハードウェア又はソフトウェアモジュールが企図される。記憶デバイス830は、コンピューティングデバイス接続部805に接続することができる。1つの態様では、特定の機能を実行するハードウェアモジュールは、機能を実行するために、プロセッサ810、接続部805、出力デバイス835などの必要なハードウェア構成要素と接続している、コンピュータ可読媒体に記憶されているソフトウェア構成要素を含むことができる。
【0088】
「コンピュータ可読媒体」という用語は、限定はしないが、ポータブル又は非ポータブルの記憶デバイス、光記憶デバイス、並びに命令(単数又は複数)及び/又はデータを記憶、格納、又は搬送できる様々な他の媒体を含む。コンピュータ可読媒体は、データが記憶され、かつワイヤレスで若しくは有線接続を介して伝搬する搬送波及び/又は一時的な電子信号を含まない、非一時的媒体を含んでもよい。非一時的媒体の例としては、限定はしないが、磁気ディスク若しくはテープ、コンパクトディスク(CD)若しくはデジタル多用途ディスク(DVD)などの光記憶媒体、フラッシュメモリ、メモリ、又はメモリデバイスが挙げられ得る。コンピュータ可読媒体は、プロシージャ、関数、サブプログラム、プログラム、ルーチン、サブルーチン、モジュール、ソフトウェアパッケージ、クラス、又は命令、データ構造、若しくはプログラムステートメントの任意の組み合わせを表し得る、コンピュータ可読媒体上に記憶されたコード及び/又は機械実行可能命令を有してもよい。コードセグメントは、情報、データ、引数、パラメータ、又はメモリコンテンツを渡すこと及び/又は受けることによって、別のコードセグメント又はハードウェア回路に結合されてもよい。情報、引数、パラメータ、データなどは、メモリ共有、メッセージパッシング、トークンパッシング、ネットワーク送信などを含む、任意の好適な手段を介して渡され、転送され、又は送信されてもよい。
【0089】
いくつかの実施形態では、コンピュータ可読記憶デバイス、媒体、及びメモリは、ビットストリームなどを含むケーブル又はワイヤレス信号を含み得る。しかしながら、言及する場合、非一時的コンピュータ可読記憶媒体は、エネルギー、キャリア信号、電磁波、及び信号自体などの媒体を明確に除外する。
【0090】
本明細書で提供する実施形態及び例の完全な理解を与えるために、上記の説明において具体的な詳細が提供されている。しかしながら、実施形態がこれらの具体的な詳細なしに実践され得ることが当業者によって理解されよう。説明を明快にするために、幾つかの事例では、本技術は、デバイスと、デバイスコンポーネントと、ソフトウェア、又はハードウェアとソフトウェアの組み合わせにおいて具現化された方法におけるステップ又はルーチンと、を備える個々の機能ブロックを含むものとして提示されてもよい。図中に示され、及び/又は本明細書で説明される構成要素以外の、追加の構成要素が使用されてもよい。例えば、不必要な詳細で実施形態を不明瞭にしないように、回路、システム、ネットワーク、プロセス、及び他の構成要素がブロック図の形態で構成要素として示されてもよい。他の事例では、実施形態を不明瞭にすることを避けるために、よく知られている回路、プロセス、アルゴリズム、構造、及び技法は、不必要な詳細なしに示されてもよい。
【0091】
個々の実施形態は、フローチャート、フロー図、データフロー図、構造図、又はブロック図として示されるプロセス又は方法として上記で説明されてもよい。フローチャートは、動作を逐次プロセスとして説明することがあるが、動作の多くは並列に又は同時に実行することができる。加えて、動作の順序は並べ替えられてもよい。プロセスは、その動作が完了するときに終了するが、図に含まれていない追加のステップを有することができる。プロセスは、メソッド、関数、プロシージャ、サブルーチン、サブプログラムなどに対応してもよい。プロセスが関数に対応するとき、その終了は、その関数が呼出し関数又はメイン関数に戻ることに対応することができる。
【0092】
上記で説明した例によるプロセス及び方法は、コンピュータ可読媒体に記憶されているか、又はそうでなければコンピュータ可読媒体から入手可能なコンピュータ実行可能命令を使用して実装され得る。そのような命令は、例えば、汎用コンピュータ、専用コンピュータ、若しくは処理デバイスにいくつかの機能若しくは機能の群を実施させるか、又は場合によっては、いくつかの機能若しくは機能の群を実施するように汎用コンピュータ、専用コンピュータ、若しくは処理デバイスを構成する、命令及びデータを含み得る。使用されるコンピュータリソースの部分は、ネットワークを介してアクセス可能であり得る。コンピュータ実行可能命令は、例えば、アセンブリ言語、ファームウェア、ソースコードなどのバイナリ、中間フォーマット命令であってもよい。命令、使用される情報、及び/又は記載した例による方法中に作成される情報を記憶するのに使用され得るコンピュータ可読媒体の例は、磁気又は光ディスク、フラッシュメモリ、不揮発性メモリが設けられたUSBデバイス、ネットワーク接続された記憶デバイスなどを含む。
【0093】
これらの開示に従ってプロセス及び方法を実施するデバイスは、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、又はそれらの任意の組み合わせを含むことができ、様々なフォームファクタのうちのいずれかをとることができる。ソフトウェア、ファームウェア、ミドルウェア、又はマイクロコードにおいて実装されるとき、必要なタスクを実行するためのプログラムコード又はコードセグメント(例えば、コンピュータプログラム製品)は、コンピュータ可読媒体又は機械可読媒体に記憶されてもよい。プロセッサ(単数又は複数)は、必要なタスクを実行してもよい。フォームファクタの典型的な例は、ラップトップ、スマートフォン、携帯電話、タブレットデバイス又は他の小スペース型パーソナルコンピュータ、携帯情報端末、ラックマウントデバイス、スタンドアロンデバイスなどを含む。本明細書で説明した機能はまた、周辺装置又はアドインカードで具現化され得る。そのような機能はまた、更なる例として、異なるチップのうちの回路基板上、又は単一のデバイスにおいて実行する異なるプロセス上で実施され得る。
【0094】
命令、そのような命令を伝えるための媒体、命令を実行するためのコンピューティングリソース、及びそのようなコンピューティングリソースをサポートするための他の構造は、本開示で説明した機能を提供するための例示的な手段である。
【0095】
上記の説明では、本出願の態様はそれらの特定の実施形態を参照しながら説明されるが、本出願がそれらに限定されないことを当業者は認識されよう。したがって、本出願の例示的な実施形態が本明細書で詳細に説明されているが、本発明の概念が別のやり方で様々に具現及び採用され得ること、並びに従来技術によって限定される場合を除き、添付の特許請求の範囲がそのような変形を含むものと解釈されることが意図されることを理解されたい。上記で説明した本出願の様々な特徴及び態様は、個別に又は共同で使用され得る。更に、実施形態は、本明細書のより広い趣旨及び範囲から逸脱することなく、本明細書で説明されるもの以外の任意の数の環境及び適用例において利用することができる。したがって、本明細書及び図面は、限定的ではなく例示的と見なされるべきである。例示の目的のために、方法は特定の順序で説明された。代替実施形態では、方法は、説明された順序とは異なる順序で実行されてもよいことを理解されたい。
【0096】
本明細書において使用される、よりも小さい(「<」)及びよりも大きい(「>」)という記号又は用語は、本説明の範囲から逸脱することなく、それぞれ、以下(「≦」)及び以上(「≧」)という記号で置き換えられ得ることを、当業者は理解するであろう。
【0097】
構成要素が特定の動作を実行する「ように構成されている」ものとして説明される場合、そのような構成は、例えば、動作を実行するように電子回路若しくは他のハードウェアを設計することによって、動作を実行するようにプログラマブル電子回路(例えば、マイクロプロセッサ、又は他の適切な電子回路)をプログラムすることによって、又はそれらの任意の組み合わせで達成され得る。
【0098】
「に結合された」という句は、直接的若しくは間接的のいずれかで別の構成要素に物理的に接続されている任意の構成要素、及び/又は直接的若しくは間接的のいずれかで別の構成要素と通信している(例えば、有線接続若しくはワイヤレス接続及び/又は他の好適な通信インターフェースを介して他の構成要素に接続されている)任意の構成要素を指す。
【0099】
集合「のうちの少なくとも1つ」及び/又は集合のうちの「1つ又は複数」と記載する請求項の文言又は他の文言は、集合の1つのメンバー又は集合の(任意の組み合わせでの)複数のメンバーが請求項を満たすことを示す。例えば、「A及びBのうちの少なくとも1つ」又は「A又はBのうちの少なくとも1つ」を記載する請求項の文言は、A、B、又はA及びBを意味する。別の例では、「A、B、及びCのうちの少なくとも1つ」又は「A、B、又はCのうちの少なくとも1つ」を記載する請求項の文言は、A、B、C、又はA及びB、又はA及びC、又はB及びC、又はA及びB及びCを意味する。集合「のうちの少なくとも1つ」及び/又は集合のうちの「1つ又は複数」という文言は、集合の中で列挙される項目にその集合を限定しない。例えば、「A及びBのうちの少なくとも1つ」又は「A又はBのうちの少なくとも1つ」と記載する請求項の文言は、A、B、又はA及びBを意味することができ、追加として、A及びBの集合の中で列挙されない項目を含むことができる。
【0100】
本明細書で開示した例に関して説明した様々な例示的な論理ブロック、モジュール、回路、及びアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、ファームウェア、又はそれらの組み合わせとして実装されてもよい。ハードウェアとソフトウェアのこの互換性を明確に示すために、様々な例示的なコンポーネント、ブロック、モジュール、回路、及びステップについて、それらの機能に関して概略的に上記で説明した。そのような機能がハードウェアとして実装されるのか又はソフトウェアとして実装されるのかは、具体的な適用例及び全体的なシステムに課される設計制約に依存する。当業者は、説明した機能を特定の適用例ごとに様々な方法で実装し得るが、そのような実装の決定は、本出願の範囲から逸脱する原因として解釈されるべきではない。
【0101】
本明細書で説明される技法はまた、電子ハードウェア、コンピュータソフトウェア、ファームウェア、又はそれらの任意の組み合わせにおいて実装され得る。そのような技法は、汎用コンピュータ、ワイヤレス通信デバイスハンドセット、又はワイヤレス通信デバイスハンドセット及び他のデバイスにおける適用例を含む複数の用途を有する集積回路デバイスなどの、様々なデバイスのうちのいずれかにおいて実装されてもよい。モジュール又は構成要素として説明した任意の特徴は、集積ロジックデバイスの中で一緒に、又は個別であるが相互動作可能なロジックデバイスとして別々に実装され得る。ソフトウェアで実装される場合、技術は、命令を含むプログラムコードを含むコンピュータ可読データ記憶媒体によって少なくとも部分的に実現されてもよく、命令が、実行されたときに、上記で説明した方法、アルゴリズム、及び/又は動作のうちの1つ又は複数を実行する。コンピュータ可読データ記憶媒体は、コンピュータプログラム製品の一部を形成してもよく、これはパッケージ材料を含んでもよい。コンピュータ可読媒体は、同期ダイナミックランダムアクセスメモリ(SDRAM)などのランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、不揮発性ランダムアクセスメモリ(non-volatile random access memory、NVRAM)、電気的消去可能プログラマブル読取り専用メモリ(EEPROM)、フラッシュメモリ、磁気又は光データ記憶媒体などの、メモリ又はデータ記憶媒体を備えてもよい。技法は、追加又は代替として、命令又はデータ構造の形態でのプログラムコードを搬送又は通信し得る、かつコンピュータによってアクセスされ、読み取られ、及び/又は実行され得る、伝搬される信号又は波などの、コンピュータ可読通信媒体によって少なくとも部分的に実現されてもよい。
【0102】
プログラムコードは、1つ又は複数のデジタル信号プロセッサ(DSPs)、汎用マイクロプロセッサ、特定用途向け集積回路(ASICs)、フィールドプログラマブルロジックアレイ(FPGAs)、又は他の同等の集積論理回路若しくは個別論理回路などの1つ又は複数のプロセッサを含み得る、プロセッサによって実行されてもよい。そのようなプロセッサは、本開示に記載された技法のいずれかを実施するように構成されてもよい。汎用プロセッサは、マイクロプロセッサであってもよい代わりに、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、又はステートマシンでもあってもよい。プロセッサはまた、コンピューティングデバイスの組み合わせ、例えば、DSPとマイクロプロセッサとの組み合わせ、複数のマイクロプロセッサ、DSPコアと連携した1つ又は複数のマイクロプロセッサ、又は任意の他のそのような構成として実装されてもよい。したがって、本明細書で使用する「プロセッサ」という用語は、上記の構造、上記の構造の任意の組み合わせ、又は本明細書で説明した技法の実装に適した任意の他の構造若しくは装置のうちのいずれかを指すことがある。
【0103】
本開示の説明のための態様は、以下を含む。
【0104】
態様1.画像セグメント化のための装置であって、メモリと、メモリに結合された1つ又は複数のプロセッサとを備え、1つ又は複数のプロセッサが、シーンをキャプチャするフレームを取得し、フレームに基づいて、対象のターゲットを識別するターゲットセグメント化マスクと、フレームの1つ又は複数の背景領域を識別する1つ又は複数の背景マスクとを含む第1のセグメント化マップを生成し、1つ又は複数の背景マスクがフィルタリングされた第1のセグメント化マップであって、1つ又は複数の背景マスクが、フレームに関連付けられた深度マップに基づいて第1のセグメント化マップからフィルタリングされる、第1のセグメント化マップを含む第2のセグメント化マップを生成する、ように構成されている、装置。
【0105】
態様2.第2のセグメント化マップを生成するために、1つ又は複数のプロセッサが、第1のセグメント化マップと深度マップとの比較に基づいて、1つ又は複数の背景マスクに関連付けられたそれぞれの深度値と、対象のターゲットを識別するターゲットセグメント化マスクに関連付けられたそれぞれの深度値との間の閾値差を決定するように構成されている、態様1に記載の装置。
【0106】
態様3.第2のセグメント化マップを生成するために、1つ又は複数のプロセッサが、1つ又は複数の背景マスクに関連付けられたそれぞれの深度値と、対象のターゲットを識別するターゲットセグメント化マスクに関連付けられたそれぞれの深度値との間の閾値差に基づいて、第1のセグメント化マップから1つ又は複数の背景マスクを除去するように構成されている、態様2に記載の装置。
【0107】
態様4.深度マップが、フレームのピクセルに対応する深度値に関連付けられた深度マスクのセットを含み、第2のセグメント化マップを生成するために、1つ又は複数のプロセッサが、第1のセグメント化マップと深度マップとの比較に基づいて、対象のターゲットを識別するターゲットセグメント化マスクと、深度マップ内の深度マスクのセットからの1つ又は複数の深度マスクとの間の重複を決定し、重複に基づいて、対象のターゲットを識別するターゲットセグメント化マスクを維持し、1つ又は複数の背景マスクと深度マスクのセットからの1つ又は複数の追加の深度マスクとの間の追加の重複に基づいて、第1のセグメント化マップから1つ又は複数の背景マスクをフィルタリングする、ように構成されている、態様1から3のいずれか一項に記載の装置。
【0108】
態様5.第2のセグメント化マップを生成するために、1つ又は複数のプロセッサが、1つ又は複数の追加の深度マスクに関連付けられた深度値と、1つ又は複数の深度マスクに関連付けられた深度値との間の差が閾値を上回ると決定し、差が閾値を上回ることに基づいて、第1のセグメント化マップから1つ又は複数の背景マスクをフィルタリングする、ように構成され、1つ又は複数の深度マスクが、対象のターゲットに対応し、1つ又は複数の追加の深度マスクが、フレームの1つ又は複数の背景領域に対応する、態様4に記載の装置。
【0109】
態様6.第2のセグメント化マップを生成するために、1つ又は複数のプロセッサが、深度マップからの深度領域及び第1のセグメント化マップからの予測されたマスクに関連付けられたインターセクションオーバーユニオン(IOU)スコアを決定し、IOUスコアに基づいて、深度マップからの深度領域を、第1のセグメント化マップからの予測されたマスクであって、対象のターゲットを識別するターゲットセグメント化マスクと、フレームの1つ又は複数の背景領域を識別する1つ又は複数の背景マスクとを含む、予測されたマスクと照合し、1つ又は複数の背景マスクに関連付けられた1つ又は複数のIOUスコアが閾値未満であるという決定に基づいて、第1のセグメント化マップから1つ又は複数の背景マスクをフィルタリングする、ように構成されている、態様1から5のいずれか一項に記載の装置。
【0110】
態様7.1つ又は複数のプロセッサが、第1のセグメント化マップから1つ又は複数の背景マスクをフィルタリングする前に、適応ガウス閾値処理及びノイズ低減を深度マップに適用するように構成されている、態様6に記載の装置。
【0111】
態様8.フレームが、単眼画像キャプチャデバイスによって生成された単眼フレームを含む、態様1から7のいずれか一項に記載の装置。
【0112】
態様9.第1のセグメント化マップ及び第2のセグメント化マップが、1つ又は複数のニューラルネットワークを使用して生成される、態様1から8のいずれか一項に記載の装置。
【0113】
態様10.1つ又は複数のプロセッサが、ニューラルネットワークを使用して深度マップを生成するように構成されている、態様1から9のいずれか一項に記載の装置。
【0114】
態様11.1つ又は複数のプロセッサが、フレーム及び第2のセグメント化マップに基づいて、修正されたフレームを生成するように構成されている、態様1から10のいずれか一項に記載の装置。
【0115】
態様12.修正されたフレームが、視覚効果、エクステンデッドリアリティ効果、画像処理効果、ぼかし効果、画像認識効果、オブジェクト検出効果、コンピュータグラフィックス効果、クロマキーイング効果、及び画像様式化効果のうちの少なくとも1つを含む、態様11に記載の装置。
【0116】
態様13.画像キャプチャデバイスを更に備え、フレームが、画像キャプチャデバイスによって生成される、態様1から12のいずれか一項に記載の装置。
【0117】
態様14.装置が、モバイルデバイスを含む、態様1から13のいずれか一項に記載の装置。
【0118】
態様15.画像セグメント化の方法であって、シーンをキャプチャするフレームを取得することと、フレームに基づいて、対象のターゲットを識別するターゲットセグメント化マスクと、フレームの1つ又は複数の背景領域を識別する1つ又は複数の背景マスクとを含む第1のセグメント化マップを生成することと、1つ又は複数の背景マスクがフィルタリングされた第1のセグメント化マップであって、1つ又は複数の背景マスクが、フレームに関連付けられた深度マップに基づいて第1のセグメント化マップからフィルタリングされる、第1のセグメント化マップを含む第2のセグメント化マップを生成することと、を含む、方法。
【0119】
態様16.第2のセグメント化マップを生成することが、第1のセグメント化マップと深度マップとの比較に基づいて、1つ又は複数の背景マスクに関連付けられたそれぞれの深度値と、対象のターゲットを識別するターゲットセグメント化マスクに関連付けられたそれぞれの深度値との間の閾値差を決定することを含む、態様15に記載の方法。
【0120】
態様17.第2のセグメント化マップを生成することが、1つ又は複数の背景マスクに関連付けられたそれぞれの深度値と、対象のターゲットを識別するターゲットセグメント化マスクに関連付けられたそれぞれの深度値との間の閾値差に基づいて、第1のセグメント化マップから1つ又は複数の背景マスクを除去することを更に含む、態様16に記載の方法。
【0121】
態様18.深度マップが、フレームのピクセルに対応する深度値に関連付けられた深度マスクのセットを含み、第2のセグメント化マップを生成することが、第1のセグメント化マップと深度マップとの比較に基づいて、対象のターゲットを識別するターゲットセグメント化マスクと、深度マップ内の深度マスクのセットからの1つ又は複数の深度マスクとの間の重複を決定することと、重複に基づいて、対象のターゲットを識別するターゲットセグメント化マスクを維持することと、1つ又は複数の背景マスクと深度マスクのセットからの1つ又は複数の追加の深度マスクとの間の追加の重複に基づいて、第1のセグメント化マップから1つ又は複数の背景マスクをフィルタリングすることと、を含む、態様15から17のいずれか一項に記載の方法。
【0122】
態様19.第2のセグメント化マップを生成することが、1つ又は複数の追加の深度マスクに関連付けられた深度値と、1つ又は複数の深度マスクに関連付けられた深度値との間の差が閾値を上回ると決定することと、差が閾値を上回ることに基づいて、第1のセグメント化マップから1つ又は複数の背景マスクをフィルタリングすることと、を更に含み、1つ又は複数の深度マスクが、対象のターゲットに対応し、1つ又は複数の追加の深度マスクが、フレームの1つ又は複数の背景領域に対応する、態様18に記載の方法。
【0123】
態様20.第2のセグメント化マップを生成することが、深度マップからの深度領域及び第1のセグメント化マップからの予測されたマスクに関連付けられたインターセクションオーバーユニオン(IOU)スコアを決定することと、IOUスコアに基づいて、深度マップからの深度領域を、第1のセグメント化マップからの予測されたマスクであって、対象のターゲットを識別するターゲットセグメント化マスクと、フレームの1つ又は複数の背景領域を識別する1つ又は複数の背景マスクとを含む、予測されたマスクと照合することと、1つ又は複数の背景マスクに関連付けられた1つ又は複数のIOUスコアが閾値未満であるという決定に基づいて、第1のセグメント化マップから1つ又は複数の背景マスクをフィルタリングすることと、を含む、態様15から19のいずれか一項に記載の方法。
【0124】
態様21.1つ又は複数のプロセッサが、第1のセグメント化マップから1つ又は複数の背景マスクをフィルタリングする前に、適応ガウス閾値処理及びノイズ低減を深度マップに適用するように構成されている、態様20に記載の方法。
【0125】
態様22.フレームが、単眼画像キャプチャデバイスによって生成された単眼フレームを含む、態様15から21のいずれか一項に記載の方法。
【0126】
態様23.第1のセグメント化マップ及び第2のセグメント化マップが、1つ又は複数のニューラルネットワークを使用して生成される、態様15から22のいずれか一項に記載の方法。
【0127】
態様24.ニューラルネットワークを使用して深度マップを生成することを更に含む、態様15から23のいずれか一項に記載の方法。
【0128】
態様25.フレーム及び第2のセグメント化マップに基づいて、修正されたフレームを生成することを更に含む、態様15から24のいずれか一項に記載の方法。
【0129】
態様26.修正されたフレームが、視覚効果、エクステンデッドリアリティ効果、画像処理効果、ぼかし効果、画像認識効果、オブジェクト検出効果、コンピュータグラフィックス効果、クロマキーイング効果、及び画像様式化効果のうちの少なくとも1つを含む、態様25に記載の方法。
【0130】
態様27.1つ又は複数のプロセッサによって実行されると、1つ又は複数のプロセッサに態様15から26のいずれか一項に記載の方法を実行させる命令を記憶した非一時的コンピュータ可読媒体。
【0131】
態様28.態様15から26のいずれか一項に記載の方法を実行する手段を備える装置。
【国際調査報告】