(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-02
(45)【発行日】2024-05-14
(54)【発明の名称】プロジェクタ-カメラベースのリモートコラボレーションシステムにおけるビデオエコーを除去するための方法
(51)【国際特許分類】
H04N 7/18 20060101AFI20240507BHJP
G09G 5/00 20060101ALI20240507BHJP
G09G 5/36 20060101ALI20240507BHJP
【FI】
H04N7/18 U
G09G5/00 555D
G09G5/00 510B
G09G5/00 510V
G09G5/36 300
G09G5/36 400
G09G5/00 550B
G09G5/00 550C
【外国語出願】
(21)【出願番号】P 2022077294
(22)【出願日】2022-05-10
【審査請求日】2022-10-20
(32)【優先日】2021-06-25
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】519448326
【氏名又は名称】コニカ ミノルタ ビジネス ソリューションズ ユー.エス.エー., インコーポレイテッド
(74)【代理人】
【識別番号】110001254
【氏名又は名称】弁理士法人光陽国際特許事務所
(72)【発明者】
【氏名】クルビダ, ジエ
【審査官】秦野 孝一郎
(56)【参考文献】
【文献】特開平05-219501(JP,A)
【文献】特開2005-203886(JP,A)
【文献】特開2009-141508(JP,A)
【文献】特開2008-306264(JP,A)
【文献】米国特許出願公開第2021/0097719(US,A1)
【文献】米国特許第10789780(US,B1)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 7/18
G09G 5/00-5/42
(57)【特許請求の範囲】
【請求項1】
コラボレーションセッションでのビデオエコーを除去する方法であって、
ローカルワークステーションのローカルカメラを使用して、前記ローカルワークステーションのローカルワークスペース面上のローカルコンテンツの変更を検出する工程であって、前記ローカルコンテンツの前記変更が前記ローカルワークスペース面上に配置された物理的対象物によってなされる、工程と、
前記ローカルワークステーションのローカルプロジェクタを使用して、前記ローカルワークスペース面へとリモートコンテンツを投影する工程であって、前記リモートコンテンツがリモートワークステーションから受信され、前記ローカルワークスペース面上の前記ローカルコンテンツ及び前記投影されたリモートコンテンツが、ローカル拡張現実(AR)環境を集合的に形成する、工程と、
前記投影されたリモートコンテンツが前記物理的対象物上に重なるコンテンツ重複領域を識別するコンタクトオーバーラップマスクを生成する工程と、
所定時間の間及び前記コンテンツ重複領域内で、前記投影されたリモートコンテンツが前記物理的対象物上に重なることを防ぐ工程であって、前記ローカルAR環境が前記所定時間の間一時的に修正される、工程と、
前記一時的に修正されたローカルAR環境に基づいてローカル画像を生成する工程と、
前記コラボレーションセッションのために、前記ローカル画像をリモートワークステーションに送信する工程と、を含む方法。
【請求項2】
前記ローカルカメラを使用し、前記ローカルコンテンツにおける変更の安定化に続いて、前記ローカルAR環境の第1の安定化画像を撮影する工程と、
前記物理的対象物に対応する前記第1の安定化画像の一部分を識別する変更領域マスクを生成する工程と、を更に含む方法であって、
前記コンタクトオーバーラップマスクが少なくとも前記変更領域マスクに基づいて生成される、請求項1に記載の方法。
【請求項3】
前記リモートコンテンツにおける複数の前景画素を識別する工程を更に含み、
前記コンタクトオーバーラップマスクが、前記変更領域マスクを前記複数の前景画素に適用することで生成される、請求項2に記載の方法。
【請求項4】
前記コンタクトオーバーラップマスクに基づいて、前記コンテンツ重複領域に対応する前記リモートコンテンツの一部分を識別する工程と、
前記所定時間の間、前記リモートコンテンツの前記部分の複数の画素値を背景画素値に設定し、前記投影されたリモートコンテンツが前記コンテンツ重複領域内で前記物理的対象物に重ならないようにする工程と、を更に含む請求項1から3のいずれか一項に記載の方法。
【請求項5】
前記所定時間に続いて、前記リモートコンテンツの前記部分の前記複数の画素値を対応するオリジナルの複数の画素値に戻してリセットする工程を更に含む請求項4に記載の方法。
【請求項6】
前記ローカルカメラを使用し、前記所定時間の間、前記ローカルAR環境の第2の安定化画像を撮影する工程と、
前記変更領域マスクに基づいて、前記投影されたリモートコンテンツが重なっていない前記物理的対象物に対応する、前記第2の安定化画像の一部分を識別する工程と、
を更に含む方法であって、
前記投影されたリモートコンテンツが重なっていない前記物理的対象物に対応する前記第2の安定化画像の前記部分に基づいて、以前のローカル画像を更新することで、前記ローカル画像が生成される、請求項
2に記載の方法。
【請求項7】
前記所定時間の間及び前記コンテンツ重複領域内で、前記投影されたリモートコンテンツが前記物理的対象物に重ならないようにすることによって、潜在的なビデオエコー効果を除去する、請求項1から3のいずれか一項に記載の方法。
【請求項8】
コラボレーションセッションでのビデオエコーを除去するシステムであって、
ローカルカメラ、ローカルプロジェクタ、及びローカルワークスペース面を含むローカルワークステーションと、
リモートカメラ、リモートプロジェクタ、及びリモートワークスペース面を含むリモートワークステーションと、
コンピュータプロセッサと、を備え、
前記コンピュータプロセッサは、
前記ローカルカメラを使用して、前記ローカルワークスペース面上のローカルコンテンツの変更を検出し、前記ローカルコンテンツの前記変更が前記ローカルワークスペース面上に配置された物理的対象物によってなされ、
前記ローカルプロジェクタを使用して、前記ローカルワークスペース面へとリモートコンテンツを投影し、前記リモートコンテンツがリモートワークステーションから受信され、前記ローカルワークスペース面上の前記ローカルコンテンツ及び前記投影されたリモートコンテンツが、ローカル拡張現実(AR)環境を集合的に形成し、
前記投影されたリモートコンテンツが前記物理的対象物上に重なるコンテンツ重複領域を識別するコンタクトオーバーラップマスクを生成し、
所定時間の間及び前記コンテンツ重複領域内で、前記投影されたリモートコンテンツが前記物理的対象物上に重なることを防ぎ、前記ローカルAR環境が前記所定時間の間一時的に修正され、
前記一時的に修正されたローカルAR環境に基づいてローカル画像を生成し、
前記コラボレーションセッションのために、前記ローカル画像を前記リモートワークステーションに送信する、システム。
【請求項9】
前記コンピュータプロセッサは、更に、
前記ローカルカメラを使用し、前記ローカルコンテンツにおける変更の安定化に続いて、前記ローカルAR環境の第1の安定化画像を撮影し、
前記物理的対象物に対応する前記第1の安定化画像の一部分を識別する変更領域マスクを生成し、
前記コンタクトオーバーラップマスクが少なくとも前記変更領域マスクに基づいて生成される、請求項8に記載のシステム。
【請求項10】
前記コンピュータプロセッサは、更に、
前記リモートコンテンツにおける複数の前景画素を識別し、
前記コンタクトオーバーラップマスクが、前記変更領域マスクを前記複数の前景画素に適用することで生成される、請求項9に記載のシステム。
【請求項11】
前記コンピュータプロセッサは、更に、
前記コンタクトオーバーラップマスクに基づいて、前記コンテンツ重複領域に対応する前記リモートコンテンツの一部分を識別し、
前記所定時間の間、前記リモートコンテンツの前記部分の複数の画素値を背景画素値に設定し、前記投影されたリモートコンテンツが前記コンテンツ重複領域内で前記物理的対象物に重ならないようにする、請求項8から10のいずれか一項に記載のシステム。
【請求項12】
前記コンピュータプロセッサは、更に、
前記所定時間に続いて、前記リモートコンテンツの前記部分の前記複数の画素値を対応するオリジナルの複数の画素値に戻してリセットする、請求項11に記載のシステム。
【請求項13】
前記コンピュータプロセッサは、更に、
前記ローカルカメラを使用し、前記所定時間の間、前記ローカルAR環境の第2の安定化画像を撮影し、
前記変更領域マスクに基づいて、前記投影されたリモートコンテンツが重なっていない前記物理的対象物に対応する、前記第2の安定化画像の一部分を識別し、
前記投影されたリモートコンテンツが重なっていない前記物理的対象物に対応する前記第2の安定化画像の前記部分に基づいて、以前のローカル画像を更新することで、前記ローカル画像が生成される、請求項9に記載のシステム。
【請求項14】
前記所定時間の間及び前記コンテンツ重複領域内で、前記投影されたリモートコンテンツが前記物理的対象物に重ならないようにすることによって、潜在的なビデオエコー効果を除去する、請求項8から10のいずれか一項に記載のシステム。
【請求項15】
コラボレーションセッションでのビデオエコーを除去するためのプログラムであって、
コンピュータに、
ローカルワークステーションのローカルカメラを使用して、前記ローカルワークステーションのローカルワークスペース面上のローカルコンテンツの変更を検出する機能であって、前記ローカルコンテンツの前記変更が前記ローカルワークスペース面上に配置された物理的対象物によってなされる、機能と、
前記ローカルワークステーションのローカルプロジェクタを使用して、前記ローカルワークスペース面へとリモートコンテンツを投影する機能であって、前記リモートコンテンツがリモートワークステーションから受信され、前記ローカルワークスペース面上の前記ローカルコンテンツ及び前記投影されたリモートコンテンツが、ローカル拡張現実(AR)環境を集合的に形成する、機能と、
前記投影されたリモートコンテンツが前記物理的対象物上に重なるコンテンツ重複領域を識別するコンタクトオーバーラップマスクを生成する機能と、
所定時間の間及び前記コンテンツ重複領域内で、前記投影されたリモートコンテンツが前記物理的対象物上に重なることを防ぐ機能であって、前記ローカルAR環境が前記所定時間の間一時的に修正される、機能と、
前記一時的に修正されたローカルAR環境に基づいてローカル画像を生成する機能と、
前記コラボレーションセッションのために、前記ローカル画像をリモートワークステーションに送信する機能と、を実現させるためのプログラム。
【請求項16】
前記コンピュータに、
前記ローカルカメラを使用し、前記ローカルコンテンツにおける変更の安定化に続いて、前記ローカルAR環境の第1の安定化画像を撮影する機能と、
前記物理的対象物に対応する前記第1の安定化画像の一部分を識別する変更領域マスクを生成する機能と、を更に実現させ、
前記コンタクトオーバーラップマスクが少なくとも前記変更領域マスクに基づいて生成される、請求項15に記載のプログラム。
【請求項17】
前記コンピュータに、
前記リモートコンテンツにおいて複数の前景画素を識別する機能を更に実現させ、
前記コンタクトオーバーラップマスクが、前記変更領域マスクを前記複数の前景画素に適用することで生成される、請求項16に記載のプログラム。
【請求項18】
前記コンピュータに、
前記コンタクトオーバーラップマスクに基づいて、前記コンテンツ重複領域に対応する前記リモートコンテンツの一部分を識別する機能と、
前記所定時間の間、前記リモートコンテンツの前記部分の複数の画素値を背景画素値に設定し、前記投影されたリモートコンテンツが前記コンテンツ重複領域内で前記物理的対象物に重ならないようにする機能と、を更に実現させる、請求項15から17のいずれか一項に記載のプログラム。
【請求項19】
前記コンピュータに、
前記所定時間に続いて、前記リモートコンテンツの前記部分の前記複数の画素値を対応するオリジナルの複数の画素値に戻してリセットする機能を更に実現させる、請求項18に記載のプログラム。
【請求項20】
前記コンピュータに、
前記ローカルカメラを使用し、前記所定時間の間、前記ローカルAR環境の第2の安定化画像を撮影する機能と、
前記変更領域マスクに基づいて、前記投影されたリモートコンテンツが重なっていない前記物理的対象物に対応する、前記第2の安定化画像の一部分を識別する機能と、を更に実現させ、
前記投影されたリモートコンテンツが重なっていない前記物理的対象物に対応する前記第2の安定化画像の前記部分に基づいて、以前のローカル画像を更新することで、前記ローカル画像が生成される、請求項
16に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プロジェクタ-カメラベースのリモートコラボレーションシステムにおけるビデオエコーを除去するための方法に関する。
【背景技術】
【0002】
拡張現実(AR)は、コンピュータが生成した出力を、実世界環境にある物体やその周囲に重ね合わせることで、ユーザーとのインタラクションを可能にする技術である。コンピュータが生成した出力を重ねることによって拡張された実世界環境を、AR環境と呼ぶ。言い換えれば、AR環境とは、実世界環境と、それに重なるコンピュータが生成した出力の組み合わせである。場合によっては、コンピュータが生成した出力は、リモートワークスペース面から撮影され、リモートユーザーとローカルユーザーが共同デスクトップを共有するように、ローカルワークスペース面(すなわち、実世界環境)に投影されるビデオストリームであってもよい。
【発明の概要】
【発明が解決しようとする課題】
【0003】
コラボレーションセッションは、複数の参加者によるインタラクティブな会議である。コラボレーションセッションの参加者(以下、ユーザーと呼ぶ)は、AR環境を用いてコラボレーションコンテンツを共有できる。各ユーザーがカメラとプロジェクタを持つAR環境を生成すると、音声のフィードバックで高音が鳴るように、映像のフィードバックループが発生し、映像が使えなくなる。ビデオエコーとは、カメラで撮影した映像投影を、伝送/処理遅延を伴って再び映像投影に挿入したものである。この問題は、電話通信の音声エコーと似ており、話している人が自分の声の遅延版を聞いていて、時間が経つにつれて継続して起こるエコーによって徐々に破損し得る。
【課題を解決するための手段】
【0004】
主として、一側面において、本発明は、コラボレーションセッションのためのビデオエコーを除去する方法に関する。前記方法は、ローカルワークステーションのローカルカメラを使用して、前記ローカルワークステーションのローカルワークスペース面上のローカルコンテンツの変更を検出する工程であって、前記ローカルコンテンツの前記変更が前記ローカルワークスペース面上に配置された物理的対象物によってなされる、工程と、前記ローカルワークステーションのローカルプロジェクタを使用して、前記ローカルワークスペース面へとリモートコンテンツを投影する工程であって、前記リモートコンテンツがリモートワークステーションから受信され、前記ローカルコンテンツ及び前記ローカルワークスペース面上の前記投影されたリモートコンテンツが、ローカル拡張現実(AR)環境を集合的に形成する、工程と、前記投影されたリモートコンテンツが前記物理的対象物上に重なるコンテンツ重複領域を識別するコンタクトオーバーラップマスクを生成する工程と、所定時間の間及び前記コンテンツ重複領域内で、前記投影されたリモートコンテンツが前記物理的対象物上に重なることを防ぐ工程であって、前記ローカル拡張現実(AR)環境が前記所定時間の間一時的に修正される、工程と、前記一時的に修正されたローカルAR環境に基づいてローカル画像を生成する工程と、前記コラボレーションセッションのために、前記ローカル画像をリモートワークステーションに送信する工程と、を含む。
【0005】
主として、一側面において、本発明は、コラボレーションセッションのためのビデオエコーを除去するシステムに関する。前記システムは、ローカルカメラ、ローカルプロジェクタ、及びローカルワークスペース面を含むローカルワークステーションと、リモートカメラ、リモートプロジェクタ、及びリモートワークスペース面を含むリモートワークステーションと、コンピュータプロセッサと、を備え、前記コンピュータプロセッサは、前記ローカルカメラを使用して、前記ローカルワークスペース面上のローカルコンテンツの変更を検出し、前記ローカルコンテンツの前記変更が前記ローカルワークスペース面上に配置された物理的対象物によってなされ、前記ローカルプロジェクタを使用して、前記ローカルワークスペース面へとリモートコンテンツを投影し、前記リモートコンテンツがリモートワークステーションから受信され、前記ローカルコンテンツ及び前記ローカルワークスペース面上の前記投影されたリモートコンテンツが、ローカル拡張現実(AR)環境を集合的に形成し、前記投影されたリモートコンテンツが前記物理的対象物上に重なるコンテンツ重複領域を識別するコンタクトオーバーラップマスクを生成し、所定時間の間及び前記コンテンツ重複領域内で、前記投影されたリモートコンテンツが前記物理的対象物上に重なることを防ぎ、前記ローカルAR環境が前記所定時間の間一時的に修正され、前記一時的に修正されたローカルAR環境に基づいてローカル画像を生成し、前記コラボレーションセッションのために、前記ローカル画像を前記リモートワークステーションに送信する。
【0006】
主として、一側面において、本発明は、コラボレーションセッションのためのビデオエコーを除去するコンピュータ読取り可能なプログラムコードを格納したプログラムに関する。前記コンピュータ読取り可能なプログラムコードは、コンピュータプロセッサによって実行されると、ローカルワークステーションのローカルカメラを使用して、前記ローカルワークステーションのローカルワークスペース面上のローカルコンテンツの変更を検出する機能であって、前記ローカルコンテンツの前記変更が前記ローカルワークスペース面上に配置された物理的対象物によってなされる、機能と、前記ローカルワークステーションのローカルプロジェクタを使用して、前記ローカルワークスペース面へとリモートコンテンツを投影する機能であって、前記リモートコンテンツがリモートワークステーションから受信され、前記ローカルコンテンツ及び前記ローカルワークスペース面上の前記投影されたリモートコンテンツが、ローカル拡張現実(AR)環境を集合的に形成する、機能と、前記投影されたリモートコンテンツが前記物理的対象物上に重なるコンテンツ重複領域を識別するコンタクトオーバーラップマスクを生成する機能と、所定時間の間及び前記コンテンツ重複領域内で、前記投影されたリモートコンテンツが前記物理的対象物上に重なることを防ぐ機能であって、前記ローカルAR環境が前記所定時間の間一時的に修正される、機能と、前記一時的に修正されたローカルAR環境に基づいてローカル画像を生成する機能と、前記コラボレーションセッションのために、前記ローカル画像をリモートワークステーションに送信する機能と、とを備える。
【0007】
本発明のその他の側面は、以下の説明及び添付の特許請求の範囲から明らかとなる。
【図面の簡単な説明】
【0008】
【
図1】
図1は、本発明の1つまたは複数の実施形態に係るシステムを示す。
【
図2】
図2A~2Cは、本発明の1つまたは複数の実施形態に係るフローチャートを示す。
【
図3】
図3A~3Eは、本発明の1つまたは複数の実施形態に係る実行例を示す。
【
図4】
図4は、本発明の1つまたは複数の実施形態に係るコンピューティングシステムを示す。
【発明の詳細な説明】
【0009】
本発明の具体的な実施形態を、添付の図面を参照して詳細に説明する。複数の図における同様の構成要素は、一貫性を保つため、同様の参照符号で示される。
【0010】
以下の本発明の実施形態の詳細な説明では、本発明がより十分に理解されるよう、具体的な詳細が多数示されている。しかし、当業者にとっては、これらの具体的な詳細がなくとも本発明が実施可能であることは明らかであろう。他の例では、説明を不必要に複雑にしないよう、周知の特徴について詳細に説明していない。
【0011】
一般に、本発明の実施形態は、AR環境を利用するコラボレーションセッションのための潜在的なビデオエコー効果を除去するための方法、システム、及びプログラムを提供する。コラボレーションセッション中やローカルAR環境では、ローカルワークスペース面に置かれた物理的対象物に投影されたリモートコンテンツが重なるコンテンツ重複領域を特定するコンタクトオーバーラップマスクが生成される。コンタクトオーバーラップマスクに基づき、コンテンツ重複領域内の物理的対象物に投影されたリモートコンテンツが重ならない短時間の間でローカルAR環境が一時的に変更される。一時的に変更されたローカルAR環境に基づいてローカル画像が生成され、リモートワークステーションに送られて、コラボレーションセッションで共有する。投影されたリモートコンテンツがローカル画像の物理的対象物の上に重ならないようにすることで、潜在的なビデオフィードバックループを除去でき、ビデオエコー効果の可能性を除去する。
【0012】
図1は、本発明の1つまたは複数の実施形態に係るシステムを示す。
図1に示すように、システム(100)は、例えば、バッファ(102)、コンテンツ変更検出エンジン(110)、コンテンツ重複検出エンジン(111)、拡張現実(AR)修正エンジン(112)、及びローカル画像生成エンジン(113)を含む複数の構成要素を有する。さらに、システム(100)は、これらの構成要素(102、110、111、112、113)と通信する別々の物理的位置にある複数のワークステーション(例えば、ワークステーションA(120a)、ワークステーションB(120b)、など)を有する。これら構成要素(102、110、111、112及び113)はそれぞれ、同じコンピューティング装置(例えばパーソナルコンピュータ(PC)、ノート型コンピュータ、タブレット型PC、スマートフォン、多機能周辺機器、キオスク、サーバ、ワークステーションなど)に配置されるか、若しくは有線及び/又は無線セグメントを有する任意のサイズのネットワークによって接続された異なるコンピューティング装置に配置されてよい。それぞれの構成要素とワークステーションを以下で説明する。
【0013】
バッファ(102)は、ハードウェア(すなわち、回路)、ソフトウェア又はそれらの任意の組合せに実装できる。バッファ(102)は、安定化画像(104)、変更領域マスク(105)、リモートコンテンツ(106)、ベースライン画像(107)、コンテンツ重複マスク(108)、及びローカル画像(109)を記憶するように構成される。安定化画像(104)、変更領域マスク(105)、リモートコンテンツ(106)、ベースライン画像(107)、コンテンツ重複マスク(108)、及びローカル画像(109)の複数のセットをバッファ(102)に記憶してもよい。安定化画像(104)、変更領域マスク(105)、リモートコンテンツ(106)、ベースライン画像(107)、コンテンツ重複マスク(108)、及びローカル画像(109)は、任意のサイズ及び任意の画像フォーマット(例えば、JPEG画像、GIF画像、ビットマップ画像、TIFF画像、又はPDF文書)でバッファ(102)内に保存され得る。更に、用語「安定化画像、変更領域マスク、リモートコンテンツ、ベースライン画像、コンテンツ重複マスク、ローカル画像」は、以下明細書中では、それぞれ、「I、Mc、Fr、B、Prc、L」と略記されることがある。
【0014】
各ワークステーションには、ワークスペース面に向けられたカメラとプロジェクタが含まれ、コラボレーションセッションのAR環境を作り出す。例えば、ワークステーションA(120a)は、ワークスペース面A(123a)に向けられたカメラA(121a)およびプロジェクタA(122a)を含み、ワークステーションB(120b)は、ワークスペース面B(123b)に向けられたカメラB(121b)およびプロジェクタB(122b)を含む。各カメラ(例えば、カメラA(121a)およびカメラB(121b))は、特殊光学系やハードウェアを持たない任意の市販のカメラであってもよい。各プロジェクタ(例えば、プロジェクタA(122a)およびプロジェクタB(122b))は、特殊光学系やハードウェアを持たない任意の市販のプロジェクタであってもよい。また、ワークステーションのカメラ及びプロジェクタは、特殊光学系やハードウェアを持つカスタマイズされた装置であってもよい。各ワークスペース面(例えば、ワークスペース面A(123a)及びワークスペース面B(123b))は、任意の種類の面(例えば、机、壁、ホワイトボード、及び床)であってよい。ワークスペース面は、平面であってもよい。また、ワークスペース面は、曲面であってもよい。各ワークステーションは、構成要素(102、110、111、112、113)とインターフェースするためのコンピューティング及び通信機能を有するハードウェア及び/又はソフトウェアをさらに含んでもよい。
【0015】
本発明の1つまたは複数の実施形態では、ワークステーションA(120a)のユーザー(以下、ローカルユーザーと呼ぶ)が、ワークステーションB(120b)の別のユーザー(以下、リモートユーザーと呼ぶ)と共同作業するときに、ワークステーションA(120a)に潜在的に現れるビデオエコー効果は、除去されるか若しくは実質的に低減される。ここでは、ワークステーションA(120a)、ワークスペース面A(123a)、カメラA(121a)をそれぞれ、ローカルワークステーション、ローカルワークスペース面、ローカルカメラと呼ぶ。特に、ローカルユーザーがローカルワークスペースに配置したコンテンツ(物理対象物、手書き/描画など)を、ローカルコンテンツと呼ぶ。以下の説明において、「ローカルコンテンツ」という用語は、物理的な形態のローカルコンテンツのデジタル画像及び/又はそのようなデジタル画像から得られるデータも指すこともある。これに対し、ワークステーションB(120b)、ワークスペース面B(123b)、カメラB(121b)を、リモートワークステーション、リモートワークスペース面、リモートカメラと呼ぶ。特に、リモートユーザーがリモートワークスペースに配置したコンテンツ(物理対象物、手書き/描画など)を、リモートコンテンツと呼ぶ。以下の説明において、「リモートコンテンツ」という用語は、物理的な形態のリモートコンテンツのデジタル画像及び/又はそのようなデジタル画像から得られるデータも指すこともある。コラボレーションセッションの間、リモートコンテンツ及び/又はリモートコンテンツにおける変更が、ローカルワークステーションに送られ、リモート更新と呼ばれる。
【0016】
安定化画像(104)は、ローカルワークスペース面(すなわち、ワークスペース面A(123a))の画像である。本発明の1つまたは複数の実施形態では、カメラA(121a)によりローカルワークスペース面の画像を定期的に撮影し、ローカルコンテンツにおける変更を検出する。ローカルコンテンツの変更が検出された後、撮影された画像における変更が安定した後に、安定化画像(104)が更新される。例えば、ユーザーの手がワークスペース面A(123a)上をホバリングして物理対象物を置いたり、特定のテキスト/パターンを書いたり描いたりしている間に、画像のシーケンスが撮影される場合がある。ローカルコンテンツの変更は、ユーザーが手をワークスペース面A(123a)から離した後、安定する。具体的には、所定の時間(例えば、1秒)、ローカルコンテンツに変更がなく安定している撮影された画像を、安定化画像(104)として保存する。なお、以下の説明において、安定化画像(104)をIと表記する場合がある。
【0017】
変更領域マスク(105)は、安定化画像(104)の現バージョンと前バージョンとの間のローカルコンテンツの変更領域を識別するバイナリマスクである。コンテキストに基づいて、変更領域マスク(105)又は変更領域マスク(105)によって特定される領域は、以下の説明において、Mcと表記する場合がある。
【0018】
リモートコンテンツ(106)は、リモートユーザーによってリモートワークスペースに配置され、ローカルユーザーと共有されるコンテンツ(物理的対象物、手書き/描画など)の表示である。本発明の1つまたは複数の実施形態では、コラボレーションセッションの間、リモートコンテンツ(106)は、ローカルワークスペース面上に投影されて、ワークステーションA(120a)のAR環境(ローカルAR環境と呼ぶ)を作り出す。特に、リモート更新は、ローカルワークステーションによって定期的に受信され、ローカルAR環境に投影されたリモートコンテンツとリモートワークスペース面に配置された実際のコンテンツとの間の整合性を維持する。1つまたは複数の実施形態では、リモートコンテンツ(106)は、リモートワークスペース画像の背景を除外して、リモート前景コンテンツと呼ばれる。リモートコンテンツ(106)は、以下の説明において、Frと表記する場合がある。
【0019】
コラボレーションセッションの間、安定化画像(104)は、ローカルコンテンツと投影されたリモートコンテンツのどちらかが存在する場合の組み合わせを含む。変更検出は、新たに到着したリモートコンテンツで投影された画像を更新する前に一時停止し、カメラが新たなリモート更新を含む新しいベースライン画像を撮影した後に再びオンになる。そのため、今回のリモート更新では、安定化画像が作成されることはない。
【0020】
ベースライン画像(107)は、ローカルコンテンツの変更を検出するための基準として使用されるローカルワークスペース面の画像である。ローカルコンテンツの変更が検出された後、撮影された画像における変更が安定した後に、安定化画像(104)が更新される。更新された安定化画像(104)は、ベースライン画像(107)の新しいバージョンとして保存される。リモート更新を受信した後、安定化画像(104)は、投影されたリモート更新が撮影画像に含まれた後に更新される。更新された安定化画像(104)は、ベースライン画像(107)の新しいバージョンとして保存される。以下の説明において、ベースライン画像(107)をBと表記する場合がある。
【0021】
コンテンツ重複マスク(108)は、変更領域マスク(105)とリモートコンテンツ(106)(特に、リモート前景コンテンツ)が重複する領域を識別するバイナリマスクである。コンテキストに基づいて、コンテンツ重複マスク(108)又はコンテンツ重複マスク(108)によって特定される領域は、以下の説明において、Prcと表記する場合がある。
【0022】
ローカル画像(109)は、リモートコンテンツを除くローカルコンテンツの画像である。本発明の1つまたは複数の実施形態において、ローカル画像(109)は、ローカルワークスペース面の直接撮影された画像ではなく、派生した画像である。ローカルワークスペース面の直接撮影された画像は、ローカルコンテンツとリモートコンテンツの両方を含むことができるので、ビデオエコー効果を防止するために、派生したローカル画像(109)は、投影されたリモートコンテンツを含まず、コラボレーションセッション中にリモートワークステーション(複数可)と共有するために使用される。以下の説明において、ローカル画像(109)をLと表記する場合がある。
【0023】
1つまたは複数の実施形態において、システム(100)は、コンテンツ変更検出エンジン(110)を更に含む。コンテンツ変更検出エンジン(110)は、ハードウェア(すなわち、回路)、ソフトウェア又はそれらの任意の組合せに実装できる。上述したように、コラボレーションセッションの間、リモートワークステーションから受信したリモートコンテンツは、ローカルワークスペース面に投影され、ローカルAR環境を形成する。コンテンツ変更検出エンジン(110)は、ローカルカメラを使用して、ローカルワークスペース面上のローカルコンテンツの変更を検出するように構成される。特に、ローカルコンテンツの変更は、ローカルユーザーがローカルワークスペース面に配置した物理的対象物によって作り出される。コンテンツ変更検出エンジン(110)は、ローカルカメラを使用し、ローカルコンテンツにおける変更の安定化に続いて、ローカルAR環境の安定化画像(第1の安定化画像と呼ぶ)を撮影するよう構成されている。
【0024】
1つまたは複数の実施形態において、システム(100)は、コンテンツ重複検出エンジン(111)を更に含む。コンテンツ重複検出エンジン(111)は、ハードウェア(すなわち、回路)、ソフトウェア又はそれらの任意の組合せに実装できる。コンテンツ重複検出エンジン(111)は、物理的対象物に対応する第1の安定化画像の一部分を識別する変更領域マスクを生成し、投影されたリモートコンテンツが物理的対象物に重なるコンテンツ重複領域を識別するコンタクトオーバーラップマスクを生成するように構成される。
【0025】
1つまたは複数の実施形態において、システム(100)は、AR修正エンジン(112)を更に含む。AR修正エンジン(112)は、ハードウェア(すなわち、回路)、ソフトウェア又はそれらの任意の組合せに実装できる。AR修正エンジン(112)は、投影されたリモートコンテンツがコンテンツ重複領域内の物理的対象物の上に重なるのを防ぐことによって、所定の時間中にローカルAR環境を一時的に修正するように構成される。上述したように、投影されたリモートコンテンツがコンテンツ重複領域内の物理的対象物に重なるのを防ぐことで、潜在的なビデオエコー効果を除去することができる。
【0026】
1つまたは複数の実施形態において、システム(100)は、ローカル画像生成エンジン(113)を更に含む。ローカル画像生成エンジン(113)は、ハードウェア(すなわち、回路)、ソフトウェア又はそれらの任意の組合せに実装できる。ローカル画像生成エンジン(113)は、一時的に修正されたローカルAR環境に基づいてローカル画像を生成し、コラボレーションセッションのためにローカル画像をリモートワークステーションに送信するように構成されている。
【0027】
変更検出エンジン(110)、コンテンツ重複検出エンジン(111)、AR修正エンジン(112)、及びローカル画像生成エンジン(113)は、以下の
図2A-2Cを参照して説明する方法を用いて、上述の機能を集合的に実行する。
【0028】
システム(100)は、2つのワークステーション(120a及び120b)と通信する6つの構成要素(102、110、111、112、113)を有することを示しているが、本発明の別の実施形態において、システム(100)は、任意の数のワークステーションと通信する、より多くの又はより少ない構成要素を有してよい。更に、上述した各構成要素の機能は、複数の構成要素で共有されてもよい。例えば、アライメントエンジン(114)又はその一部は、CTエンジン(111)及び/又はPTエンジン(112)内に埋め込まれてもよい。構成要素(102、110、111、112、113)は、集中管理されていて、ワークステーションから遠隔に配置されていてもよい。あるいは、構成要素(102、110、111、112、113)の1つまたは複数の機能は、1つまたは複数のワークステーションに分散及び/又は複製されてもよい。更に、各構成要素(102、110、111、112、113)を一続きでまたは並行して複数回利用し、反復動作を実行することも可能である。
【0029】
図2A~2Cは、本発明の1つまたは複数の実施形態に係るフローチャートを示す。
図2A~2Cの工程の1つまたは複数は、
図1を参照して上述した、システム(100)の構成要素によって実行されてもよい。本発明の1つまたは複数の実施形態において、
図2A~2Cの工程の1つまたは複数が省略され、繰り返され、及び/又は
図2A~2Cに示す順序とは異なる順序で実行されてよい。従って、本発明の範囲は、
図2A~2Cに示す工程の具体的な配置に限定されると考えるべきでない。
【0030】
上記のように、
図2A~2Cは、上記
図1に描かれたシステム(100)などのプロジェクタ-カメラベースのリモートコラボレーションシステムにおけるビデオエコーを除去するための方法を示している。より具体的に、その方法は、リモートワークステーションと共有するためにローカルワークスペース面の画像が撮影されるとき、ローカル対象物(例えば、3D物体)上に投影されたリモートコンテンツを一時的に取り除くことで、ビデオエコーを除去する。特に、その方法は、3D物体表面曲率及びカメラの視点によりローカルワークスペース面上に投影されたコンテンツロケーションの不確かさに関わらず、ビデオエコーを除去する。
【0031】
図2Aに示すように、最初はブロック201で、コラボレーションセッションがユーザーによって開始される。例えば、ローカルユーザーは、リモートユーザーに電子招待状を送り、コラボレーションコンテンツを共有することができる。別の例では、ローカルユーザーは、リモートユーザーから電子招待状を受け入れ、コラボレーションコンテンツを共有することができる。
【0032】
ブロック202では、キャリブレーションが実行される。空間キャリブレーションは、独特のマーカー(例えば、拡張現実コルドバ大学(ArUco)マーカー)のマトリックスをワークスペース面に投影し、カメラがマーカーの画像を撮影するように指示することで実行される。撮影した画像中のマーカーとプロジェクタに送られたマーカーとの対応関係に基づいて、カメラの撮像面とプロジェクタとの間に空間的な関係を構築する。キャリブレーションの結果は一連の変換として保存され、それぞれの変換は画像をある空間から別の空間に変換するために使用され、例えば、カメラで撮影した画像からプロジェクタに送信する画像、またはその逆の変換である。これらの空間間を正確にマッピングすることで、物理的コンテンツ及び仮想的コンテンツの両方をシームレスに統合でき、ネットワーク上の複数のワークステーションで一貫性を持つことができる。空間間の変換は、線形及び非線形の両方の構成要素を含み得る。非線形構成要素はカメラレンズによる歪みを除去し、一方で、線形構成要素は透視歪み、拡大縮小、回転、倍率を補正する。
【0033】
空間キャリブレーションに加えて、ワークスペース面に白い背景を投影し、カメラのキャリブレーションを行う一連の操作を行うことで、色と強度のキャリブレーションも行われ、複数のワークステーションから(異なる環境光条件のもとなどで)撮影した画像を、できるだけ同じ色と強度に近づける。
【0034】
色分散の補正は、白背景で投影されたワークスペース面の1つまたは複数の撮影画像を解析する。色成分の平均強度の比率に基づいて、一連の係数が計算され、ホワイトバランス調整のためにカメラに送信される。カメラが内部でホワイトバランスに対応していない場合、係数をコンピュータのメモリに保存し、それを使ってソフトウェアでホワイトバランス補正を行う。この処理は、色成分からの強度を適切に均等化するために数回の繰り返しが必要になることがある。色キャリブレーションが完了すると、反復処理が行われ、撮影した白背景画像の平均強度を目標強度に近づけるために、カメラの露出、ゲイン、又はその両方を調整する。目標強度レベルは調整可能なパラメータで、デフォルト値は160である。
【0035】
ブロック203では、空間キャリブレーション及び色と強度キャリブレーションの両方が完了した後、コラボレーションセッションでのコンテンツ共有が開始される。
【0036】
ブロック204では、コラボレーションセッションに入ると、ユーザーがAR環境と相互作用している間、カメラはワークスペース面の画像を定期的に撮影する。この方法は、ブロック204からブロック205a、ブロック205b、ブロック205cへのウェイトループを回転させる形で実行する。
【0037】
ブロック205aでは、ローカルコンテンツの変更が検出されたかどうかの判定が行われる。判定がYESである場合、すなわち、ローカルコンテンツの変更が検出された場合、方法はブロック206aに進み、ローカルコンテンツの変更が処理される。特に、ローカルワークスペース面の画像に安定した変更が検出されると、ローカルコンテンツの変更がリモートコラボレータに自動的に送信される。ブロック206aの追加の詳細については、以下の
図2Bを参照して説明する。判定がNOである場合、すなわち、ローカルコンテンツの変更が検出されなかった場合、方法はブロック204に戻る。ブロック205aからブロック204に戻るのに続いて、方法ウェイトループはブロック205bに進む。
【0038】
ブロック205bでは、リモート更新が受信されたかどうかの判定が行われる。判定がYESである場合、すなわち、リモート更新が受信された場合、方法はブロック206bに進み、リモート更新が処理される。特に、受信したリモート更新は、ローカルワークスペース面に投影されたコンテンツの更新をトリガーし、ローカルワークスペース面のコンテンツ全体の変更につながる。ブロック206bの追加の詳細については、以下の
図2Cを参照して説明する。判定がNOである場合、すなわち、リモート更新が受信されなかった場合、方法はブロック204に戻る。ブロック205bからブロック204に戻るのに続いて、方法ウェイトループはブロック205cに進む。
【0039】
ブロック205cでは、ユーザー終了コマンドが受信されたかどうかの判定が行われる。判定がYESである場合、すなわち、ユーザー終了コマンドを受信した場合、方法はブロック206cに進み、コラボレーションセッションが終了される。判定がNOである場合、すなわち、ユーザー終了コマンドが受信されなかった場合、方法はブロック204に戻る。ブロック205bからブロック204に戻るのに続いて、方法ウェイトループはブロック205aに進む。
【0040】
ブロック204からブロック205aと205bまでの繰り返しに基づいて、各ワークステーションへ及び各ワークステーションからのコラボレーション情報の流れは同時に起こり、各コラボレーション情報の流れはソフトウェアでアトミックに処理される。言い換えると、ローカル、リモートを問わず、更新の処理中は、前の更新が終了するまで、次の更新は開始されない。これにより、ソフトウェアが画像で観察される各変更のソースを認識し、ローカルとリモートのコンテンツを別々に追跡することができるようになる。
【0041】
上述したウェイトループは、ブロック204からブロック205aにまず進み、続いてブロック205bに進み、ブロック205cからシーケンスを再開することに基づいているが、ウェイトループは、他の順次順序に基づいて、異なる順次順序の組み合わせに基づいて、またはランダム順序に基づいて実行することも可能である。
【0042】
図2Bは、上記
図2Aに描かれたブロック206aの詳細を示す。具体的には、
図2Bは、ローカルコンテンツの変更に対応する処理を示す。
【0043】
最初にブロック211では、ローカルコンテンツの変更が発生し、安定化画像I1が撮影されるところで安定化される。例えば、ローカルユーザーがコラボレーションセッションを開始し、ローカルワークスペース面に物理的対象物を配置したり、ペンやマーカーでローカルワークスペース面に書き込み/描画したりする。
【0044】
ブロック212では、最新の安定化画像I1が新たなベースライン画像Bとして保存される。
【0045】
ブロック213では、安定化画像I1をもたらすローカルコンテンツの変更を識別するための変更マスクMcが作成される。例えば、変更マスクMcは、安定化画像I1内で物理的対象物又は書き込み/描画がローカルワークスペース面上のどこに配置されるかを特定する。
【0046】
ブロック214では、リモート前景コンテンツFrが存在し、ローカルワークスペース面に投影されているかどうかの判定が行われる。つまり、I1にFrが存在するかどうかである。判定がYESである場合、すなわち、I1に何らかのFrが見出された場合、方法はブロック216に進む。判定がNOである場合、すなわち、I1にFrが見出されなかった場合、方法はブロック215に進む。
【0047】
ブロック215では、安定化画像I1が最後の既知のローカル画像Lとして保存され、方法はブロック220に進む。
【0048】
ブロック216では、McにもあるFrのリモート前景画素、すなわち、変更が生じた領域内に入る画素が特定され、コンテンツ重複マスクPrcが生成される。
【0049】
ブロック217では、Prcの設定画素数を検証し、I1内に非空白Frが存在することを確認する。具体的には、Prcの設定画素数が0より大きいか否かの判定が行われる。判定がYESである場合、すなわち、Prcの設定画素の数が0より大きい場合、方法はブロック218に進む。判定がNOである場合、すなわち、Prcの設定画素の数が0より大きくない場合、方法はブロック219に進む。
【0050】
ブロック218は、ブロック218aからブロック208dのシーケンスを含む。
【0051】
ブロック218aでは、リモート前景コンテンツFrのうち、Prcで特定された領域に対応する画素を背景画素値(例えば、255、255、255)に設定する。これにより、ローカルコンテンツの変更が発生した領域内に投影されたリモートコンテンツ(すなわち、Mc)は、ローカルAR環境から事実上排除される。
【0052】
ブロック218bでは、ローカルワークスペース面の一時的に修正された安定化画像I3は、ローカルAR環境から排除されたMcにおいて、投影されたリモートコンテンツと一緒に撮影される。I3では、Mc内の画素は、ブロック211で識別された変更されたローカルコンテツを含むが、ブロック214で識別されたリモート前景コンテンツの干渉はないことに留意されたい。
【0053】
ブロック218cでは、リモート前景コンテンツFrのうち、Prcで特定された領域に対応する画素をFrでのオリジナル値にリセットする。これにより、ブロック218aで一時的に削除された投影されたリモートコンテンツが、ローカルAR環境に効果的に復元される。つまり、Mcにおいて投影されたリモートコンテンツを削除してから復元するまでの間に、ローカルAR環境が一時的に変更される。この時間は、AR環境を一時的に変更することによるローカルユーザーの視覚的な混乱を最小限に抑えるために、十分に短く選択される。例えば、この時間を100ミリ秒としてよい。
【0054】
ブロック218dでは、先に生成されたローカル画像Lは、Mc内の画素位置において、I3内の対応する画素値で、更新される。下式は、背景を画素値「0」とした場合のローカル画像(L)の前景画素に対して行われたオペレーションを表す。
【0055】
(数1)
L=(I3∩Mc)∪L
【0056】
ブロック220では、更新されたローカル画像Lを、背景を平坦化し、前景を強調することによって処理し、処理されたローカル画像Lpを生成する。
【0057】
ブロック221では、処理されたローカル画像Lpがリモートユーザーに送信される。
【0058】
上記
図2Aに示すように、ブロック211-221は、コラボレーションセッションが続くにつれて繰り返される。
【0059】
図2Cは、上記
図2Aに描かれたブロック206bの詳細を示す。具体的には、
図2Cは、リモートワークステーションからの更新を処理するプロセスを示す。上記のように、受信したリモート更新は、ローカルワークスペース面に投影されたコンテンツの更新をトリガーし、ローカルAR環境のコンテンツ全体の変更につながる。ローカルユーザーがコラボレーションセッションに参加すると、全てのリモートコラボレータによって以前に共有されたコラボレーションコンテンツが背景を平坦化された合成画像としてローカルワークステーションに受信される。合成された画像は、最初のリモート前景コンテンツF
rとして保存される。コラボレーションセッション中、リモートユーザーが追加のコラボレーションコンテンツを共有すると、最初のリモート前景コンテンツF
rが定期的に更新される。
【0060】
最初にブロック231では、リモート更新がローカルワークステーションによって受信される。
【0061】
ブロック232では、以前に保存したリモート前景コンテンツFrを、受信したリモート更新に基づき更新する。
【0062】
ブロック233では、更新されたリモート前景コンテンツFrをローカルプロジェクタの空間に変換する。
【0063】
ブロック234では、更新され変換されたリモート前景コンテンツFrがローカルワークスペース面に投影される。
【0064】
ブロック235では、ローカルカメラは、更新され変換されたリモート前景コンテンツFrが投影されるとすぐに、ローカルワークスペース面の画像を撮影する。
【0065】
ブロック236では、ローカルワークスペース面の撮影された画像が、新たなベースライン画像Bとして保存される。
【0066】
上記
図2Aに示すように、ブロック231-236は、コラボレーションセッションが続くにつれて繰り返される。
【0067】
図3A~3Eは、本発明の1つまたは複数の実施形態に係る実行例を示す。
図3A~3Eに示す実施例は、上記の
図1及び2A~2Cを参照して説明したシステム及び方法フローチャートに基づくものである。具体的には、
図1及び
図3A~3Eに同様の参照番号で描かれた要素は、互いに対応する。本発明の1つまたは複数の実施形態において、
図3A~3Eに示される要素の1つまたは複数は、省略され、繰り返され、及び/又は異なる配置で編成されてもよい。従って、本発明の範囲は、
図3A~3Eに示す要素の具体的な配置に限定されると考えるべきでない。
【0068】
1つまたは複数の実施形態において、
図3A~3Eに示される例示的な実装は、
図1を参照して上述したローカルユーザー及びリモートユーザーが、最終的なワークプロダクトを完成するために定期的にコラボレーションコンテンツを交換する場合のコラボレーションセッションに対応する。上記のように、キャリブレーションセッションがコラボレーションセッションを始める前に実行される。キャリブレーションセッションは、空間キャリブレーション及び色と強度キャリブレーションを含む。
【0069】
図3A~3Eに示すように、キャリブレーションセッションに続いて、ローカルユーザー及びリモートユーザーは、例示的なコラボレーションセッションにおいてコラボレーションコンテンツを交換する。特に、ローカルユーザーは、ローカルワークスペース面にリンゴ(すなわち、対象物A(315))を配置する。ローカルカメラで撮影した画像が安定し、リンゴを置いた後に、安定化画像は、I
1として保存される(310)。また、I
1(310)は、変更検知に使用するベースライン画像B
1(311)として保存される。I
1(310)は、ローカル及びリモートワークステーション間の空間/色/強度の関係に基づいて、リモートユーザーのリモートワークステーションに送られるローカル画像(L
1)へと変換される。
図3Aは、L
1が明示されていないI
1(310)とB
1(311)を示す。
【0070】
リンゴを含むローカル画像(L
1)を受け取ると、リモートワークステーションは、L
1をリモートワークスペース面に投影し、リモートAR環境を作り出す。これに対して、リモートユーザーは、投影されたL
1に「リンゴ」というテキストラベルとそれを指し示す矢印をアノテーションする。リモートユーザーは、次に別のテキストラベル「レモン」、矢印、及び疑問符を追加する。矢印と疑問符のついたテキストラベル「リンゴ」と「レモン」は、リモートカメラを使用して撮影され、リモート前景コンテンツとしてローカルワークステーションへと送られ、上記
図1Aで示すリモートコンテンツ(106)の例である。
【0071】
図3Bは、投影されたリモートコンテンツと共にローカルワークスペース面の画像を示す。特に、リモートコンテンツは、ローカルワークステーションによって受信され、ローカル及びリモートワークステーション間の空間/色/強度の関係に基づいて変換される。変換されたリモートコンテンツは、ローカルワークスペース面上に投影され、ローカルAR環境において対象物A(315)にオーバーレイされる(つまり、重なる)。具体的には、
図3Bは、対象物A(315)に、テキストラベル「リンゴ」と「レモン」に矢印(323)と疑問符(322)を加えたリモート前景コンテンツ(321)を重ねたものである。ローカルカメラは、リモート前景コンテンツ(321)と重ねた対象物A(315)の画像を撮影する。撮影された画像はベースライン画像B
2(320)として保存され、その後の変更検出のために以前のベースライン画像B
1(311)と置き換わる。
【0072】
図3Cは、投影された疑問符(322)がある場所にローカルユーザーがレモン(すなわち、対象物B(335))を配置したローカルAR環境の撮影された画像である。ベースライン画像B
2(320)に基づいて、レモンによるローカルコンテンツの変更を検出する。従って、変更が安定すると、撮影した画像を安定化画像I
2(330)として保存し、前回の安定化画像I
1(310)に置き換える。特に、I
1(310)は、
図2Bのブロック215を横断する反復に対応し、I
2(330)は、
図2Bのブロック216からブロック219を横断する後続の反復に対応する。変更領域マスク(332)は、安定化画像I
1(310)及びI
2(330)間の相違に基づいて、M
cとして生成される。安定化画像I
2(330)もまた、ベースライン画像B
3(331)として保存され、その後の変更検出のために以前のベースライン画像B
2(320)と置き換わる。
図3Cに示すように、投影された疑問符(322)は、安定化画像I
2(330)中の物理的レモン(すなわち、対象物B(335))の上に重なる。
【0073】
レモンによるローカルコンテンツの変更の検出に応答して、変更領域マスク(332)に基づいて、変更領域内のリモート前景コンテンツ(321)の部分を特定し、コンテンツ重複マスク(341)を生成する。従って、コンテンツ重複マスク(341)に基づいて、投影された疑問符(322)がレモン(すなわち、対象物B(325))と重なる画素をリモート前景コンテンツ(321)において特定し、背景画素値に設定して、リモート前景コンテンツ(321)を一時的に変更することができる。
【0074】
図3Dは、リモート前景コンテンツ(321)の投影が修正版で一時的に置き換えられるローカルAR環境の撮影された画像である。特に、投影された疑問符(322)の前記部分がコンテンツ重複マスク(341)に基づいてレモン(すなわち、対象物B(335))から削除される。投影された疑問符(322)の前記部分の削除に応じて、撮影された画像は、安定化画像I
3(340)として保存され、以前の安定化画像I
2(330)と置き換わる。
図3Dに示されるように、安定化画像I
2(330)での対象物B(335)のローカルコンテンツは、リモート前景コンテンツ(321)の一時的に修正された投影によって重ならない。
【0075】
図3Eは、最後に知られたローカル画像L
1の更新バージョンを示す。具体的には、変更領域マスク(332)に基づいてI
3(340)から追加されたレモン(投影された疑問符(322)の一部を除く)を抽出し、L
1に追加して更新ローカル画像L
2(350)を生成する。従って、L
2(350)は、任意の投影されたリモートコンテンツなしでローカルコンテンツのみを含み、ビデオエコー効果を誘発することなく、リモートユーザーと共有するために使用される。
【0076】
本発明の実施形態は、使用するプラットフォームにかかわらず、事実上あらゆる種類のコンピューティングシステムに実装できる。例えば、コンピューティングシステムは、1つまたは複数の可搬装置(例えば、ノート型コンピュータ、スマートフォン、パーソナルデジタルアシスタント、タブレット型コンピュータ又はその他の可搬装置)、デスクトップコンピュータ、サーバ、サーバシャーシにおけるブレード、又は本発明の1つまたは複数の実施形態を実施するための最低限の処理能力、メモリ及び入出力装置を少なくとも備えるその他の種類の1つまたは複数のコンピューティング装置であってよい。例えば
図4に示すように、コンピューティングシステム(400)は、1つまたは複数のコンピュータプロセッサ(402)、関連するメモリ(404)(例えば、ランダムアクセスメモリ(RAM)、キャッシュメモリ、フラッシュメモリ等)、1つまたは複数の記憶装置(406)(例えば、ハードディスク、コンパクトディスク(CD)ドライブやデジタル多用途ディスク(DVD)ドライブといった光ドライブ、フラッシュメモリスティック等)、その他多くの構成要素及び機能を有してよい。コンピュータプロセッサ(402)は、指示を処理するための集積回路でもよい。例えば、コンピュータプロセッサは、1つまたは複数のコア又はプロセッサのマイクロコアでもよい。また、コンピューティングシステム(400)は、タッチスクリーン、キーボード、マウス、マイク、タッチパッド、電子ペン、又はその他の種類の入力装置といった1つまたは複数の入力装置(410)を備えてよい。また、コンピューティングシステム(400)は、スクリーン(例えば、液晶ディスプレイ(LCD)、プラズマディスプレイ、タッチスクリーン、ブラウン管(CRT)モニター、プロジェクタ、又はその他の表示装置)、プリンター、外部記憶装置、又はその他の出力装置等、1つまたは複数の出力装置(408)を備えてよい。1つまたは複数の出力装置は、入力装置と同じでも良いし、異なってもよい。コンピューティングシステム(400)は、ネットワークインターフェース接続(図示なし)を介してネットワーク(412)(例えば、ローカルエリアネットワーク(LAN)、インターネット等の広域ネットワーク(WAN)、モバイルネットワーク、又はその他の種類のネットワーク)に接続されてよい。入力装置と出力装置は、ローカルにまたはリモートに(例えば、ネットワーク(412)を介して)コンピュータプロセッサ(402)、メモリ(404)及び記憶装置(406)に接続されてよい。コンピューティングシステムには多くの異なる種類があり、前述の入力装置及び出力装置は他の形態をとってもよい。
【0077】
本発明の実施形態を実施するためのコンピュータ読取り可能なプログラムコードの形態をとるソフトウェア指示は、全て又は一部が、一時的に又は恒久的に、CD、DVD、記憶装置、ディスケット、テープ、フラッシュメモリ、物理メモリ、又はその他のコンピュータ読取り可能な記憶媒体といった非一時的なコンピュータ読取り可能な媒体に記憶されてよい。具体的には、ソフトウェア指示は、プロセッサによって実行された際に本発明の実施形態を実施するように構成されたコンピュータ読取り可能なプログラムコードに相当し得る。
【0078】
更に、前述のコンピューティングシステム(400)の構成要素は、そのうち一つ以上が遠隔に配され、ネットワーク(412)を介してその他の構成要素と接続されてもよい。また、本発明の1つまたは複数の実施形態は、複数のノードを有する分散システムに実装されてもよく、本発明の各部は、分散システム内の異なるノード上に位置してもよい。本発明の一実施形態では、ノードは別個のコンピューティング装置に相当する。あるいは、ノードは関連する物理メモリを有するコンピュータプロセッサに相当してもよい。あるいは、ノードは、共有メモリ及び/又は情報源を有するコンピュータプロセッサ又はコンピュータプロセッサのマイクロコアに相当してもよい。
【0079】
本発明の1つまたは複数の実施形態は、従来の画像処理及びAR関連技術に対する以下のうち1つまたは複数の効果及び改良を有し得る:以前にアラインされてなく互いに較正された様々なワークステーションでインストールされた様々なカメラ及びプロジェクタを使用できる;特殊光学系又はハードウェアなしで市販のカメラ及びプロジェクタを使用できる;カメラ平面及び/又はプロジェクタアングルがワークスペース面に平行でないカメラ及びプロジェクタを使用できる(例えば、画用紙);システムには完全に未知のそれぞれの位置及び角度でカメラ及びプロジェクタを使用できる;ハードウェアセットアップ又は較正を行うためのユーザーが干渉を最小限にして、カメラ及びプロジェクタを使用できる;コラボレーションセッション間に変更し得る各ワークステーションの任意の用紙位置と併せて、任意のタイプの用紙(又は、その他任意のライティング媒体)を使用できる;など。
【0080】
限られた数の実施形態に関連して本発明を説明したが、本開示の恩恵に浴する当業者であれば、ここに開示された本発明の範囲から逸脱しない他の実施形態が考案可能であると分かるだろう。したがって、本発明の範囲は、添付の特許請求の範囲によってのみ限定されるものである。