(57)【特許請求の範囲】
【請求項１】
拡張現実環境において仮想オブジェクトの現実的な色を作成する方法であって、
参照画像ターゲットフレームを選択するステップと、
前記参照画像ターゲットフレーム内の複数のサンプル点を選択するステップと、
後続の新規の画像ターゲットフレームを取得するステップと、
前記新規の画像ターゲットフレーム内の複数の対応するサンプル点を決定するステップであって、前記複数の対応するサンプル点は前記参照画像ターゲットフレーム内の前記複数のサンプル点に対応する、ステップと、
前記参照画像ターゲットフレーム内の前記複数のサンプル点の各々の色を、前記新規の画像ターゲットフレーム内の前記対応するサンプル点の各々の色と比較し、かつ前記比較に少なくとも部分的に基づいて色伝達関数を計算するステップと、
前記色伝達関数を前記仮想オブジェクトの前記色に適用するステップと
を含む、方法。
【請求項２】
選択された前記複数のサンプル点が、前記参照画像ターゲットフレームのキーポイントのうちの少なくともいくつかと同じである、請求項1に記載の方法。
【請求項３】
前記複数のサンプル点が、前記複数のサンプル点によってカバーされる色の範囲を最大化するように選択される、請求項1に記載の方法。
【請求項４】
前記複数のサンプル点が、前記参照画像ターゲットフレームのほぼ大部分にわたるように選択される、請求項1に記載の方法。
【請求項５】
前記色伝達関数が、前記参照画像ターゲットフレーム内のサンプル点の色測定値と、前記新規の画像ターゲットフレーム内のサンプル点の色測定値と、色伝達前の前記仮想オブジェクトの色とに基づく、請求項1に記載の方法。
【請求項６】
前記色伝達関数が、F(R,S,c)->tの式の関数であり、ここでRは前記参照画像ターゲットフレームにおける色測定値であり、Sは前記新規の画像ターゲットフレームにおける色測定値であり、cは色伝達前の前記仮想オブジェクトの色であり、tは色伝達後のcの結果的な色である、請求項5に記載の方法。
【請求項７】
前記色伝達関数がさらに、ti=(Si-Ri)+ciの式の関数であり、ここでciは前記仮想オブジェクトのi番目の色であり、Riは色がciに最もよく似ているサンプル点の色測定値であり、SiはRiに対応する対応サンプル点の色測定値であり、tiは色伝達後のciの結果的な色である、請求項6に記載の方法。
【請求項８】
前記色伝達関数がさらに、
【数１】
0006453357.tif 000004
の式の関数であり、ここでnは前記参照画像ターゲットフレーム内のサンプル点の数である、請求項6に記載の方法。
【請求項９】
前記色伝達関数を適用するステップが、中間の色空間内で前記色伝達関数を適用するステップと、結果的な色をターゲット色空間に変換するステップとをさらに含む、請求項1に記載の方法。
【請求項１０】
プロセッサによって実行されたとき、前記プロセッサに、請求項1〜9のいずれか一項に記載の方法を実行させるコードを含む、非一時的コンピュータ可読記録媒体。
【請求項１１】
拡張現実環境において仮想オブジェクトの現実的な色を作成するための装置であって、
参照画像ターゲットフレームを選択するための手段と、
前記参照画像ターゲットフレーム内の複数のサンプル点を選択するための手段と、
後続の新規の画像ターゲットフレームを取得するための手段と、
前記新規の画像ターゲットフレーム内の複数の対応するサンプル点を決定するための手段であって、前記複数の対応するサンプル点は、前記参照画像ターゲットフレーム内の前記複数のサンプル点に対応する、手段と、
前記参照画像ターゲットフレーム内の前記複数のサンプル点の各々の色を、前記新規の画像ターゲットフレーム内の前記対応するサンプル点の各々の色と比較し、かつ前記比較に少なくとも部分的に基づいて色伝達関数を計算するための手段と、
前記色伝達関数を前記仮想オブジェクトの前記色に適用するための手段と
を含む、装置。
【請求項１２】
選択された前記複数のサンプル点が、前記参照画像ターゲットフレームのキーポイントと同じである、請求項11に記載の装置。
【請求項１３】
前記複数のサンプル点が、前記複数のサンプル点によってカバーされる色の範囲を最大化するように選択される、請求項11に記載の装置。
【請求項１４】
前記複数のサンプル点が、前記参照画像ターゲットフレームのほぼ大部分にわたるように選択される、請求項11に記載の装置。
【請求項１５】
前記色伝達関数が、前記参照画像ターゲットフレーム内のサンプル点の色測定値と、前記新規の画像ターゲットフレーム内のサンプル点の色測定値と、色伝達前の前記仮想オブジェクトの色とに基づく、請求項11に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書で開示する主題は、電子デバイスに関し、より具体的には、電子デバイスによって実装される拡張現実環境とともに使用するための方法および装置に関する。
【背景技術】
【０００２】
拡張現実は、実世界上へのコンピュータグラフィックスの重畳を含む技術である。たとえば、アメリカンフットボールの試合のテレビジョン放送においてしばしば見られるファーストダウンラインは、拡張現実の限定された用途の一例である。重畳されたオブジェクトが物理的なオブジェクトを表すとき、重畳された物理的なオブジェクトが実世界に溶け込み、現実的に見えるのが望ましい。
【０００３】
拡張現実のアプリケーションは、現在、拡張現実環境において仮想オブジェクトを表示するために使用される。特に、物理的世界の光景を表すためにディスプレイ上に、ライブカメラ画像がレンダリングされる場合がある。次いで、画像ターゲット上に、仮想オブジェクトが重畳される場合がある。仮想オブジェクトは、仮想オブジェクトに対する閲覧者の視点が画像ターゲットに対するその視点と一致するように、画像ターゲットの位置および方位にリアルタイムで追従し、仮想オブジェクトが実世界に密接に結合されるように見える。
【０００４】
仮想オブジェクトが画像ターゲットの位置および方位に追従するが、現状の実装では、仮想オブジェクトは、色などの、画像ターゲットの外観に追従しない。たとえば、画像ターゲットにおける照明状態の変化があるとき、仮想オブジェクトの色相は、画像ターゲットの現実オブジェクトのようには、それに応じて変化しない。その結果、仮想オブジェクトの現実性が損なわれる。
【発明の概要】
【課題を解決するための手段】
【０００５】
本明細書で開示する一実施形態は、参照画像ターゲットフレームを選択するステップと、参照画像ターゲットフレーム内の複数のサンプル点を選択するステップと、後続の新規の画像ターゲットフレームを取得するステップと、新規の画像ターゲットフレーム内の複数の対応するサンプル点を決定するステップであって、複数の対応するサンプル点は参照画像ターゲットフレーム内の複数のサンプル点に対応する、決定するステップと、参照画像ターゲットフレーム内の複数のサンプル点の各々の色を、新規の画像ターゲットフレーム内の対応するサンプル点の各々の色と比較するステップであって、この比較に少なくとも部分的に基づいて色伝達関数を計算するステップと、色伝達関数を仮想オブジェクトの色に適用するステップとを含む、拡張現実環境において仮想オブジェクトの現実的な色を作成する方法を含む場合がある。
【０００６】
本明細書で開示する別の実施形態は、メモリおよびプロセッサを含む、拡張現実環境において仮想オブジェクトの現実的な色を作成するための装置を含む場合がある。本プロセッサは、メモリに結合され、参照画像ターゲットフレームを選択することと、参照画像ターゲットフレーム内の複数のサンプル点を選択することと、後続の新規の画像ターゲットフレームを取得することと、新規の画像ターゲットフレーム内の複数の対応するサンプル点を決定することであって、複数の対応するサンプル点は参照画像ターゲットフレーム内の複数のサンプル点に対応する、決定することと、参照画像ターゲットフレーム内の複数のサンプル点の各々の色を、新規の画像ターゲットフレーム内の対応するサンプル点の各々の色と比較するとともに、この比較に少なくとも部分的に基づいて色伝達関数を計算することと、色伝達関数を仮想オブジェクトの色に適用することとを行うための命令を実行するように構成される。
【０００７】
本明細書で開示するさらなる実施形態は、プロセッサによって実行されたとき、参照画像ターゲットフレームを選択することと、参照画像ターゲットフレーム内の複数のサンプル点を選択することと、後続の新規の画像ターゲットフレームを取得することと、新規の画像ターゲットフレーム内の複数の対応するサンプル点を決定することであって、複数の対応するサンプル点は参照画像ターゲットフレーム内の複数のサンプル点に対応する、決定することと、参照画像ターゲットフレーム内の複数のサンプル点の各々の色を、新規の画像ターゲットフレーム内の対応するサンプル点の各々の色と比較するとともに、この比較に少なくとも部分的に基づいて色伝達関数を計算することと、色伝達関数を仮想オブジェクトの色に適用することとをプロセッサに行わせるコードを含む非一時的コンピュータ可読媒体を含む場合がある。
【０００８】
本明細書で開示する追加の実施形態は、参照画像ターゲットフレームを選択するための手段と、参照画像ターゲットフレーム内の複数のサンプル点を選択するための手段と、後続の新規の画像ターゲットフレームを取得するための手段と、新規の画像ターゲットフレーム内の複数の対応するサンプル点を決定するための手段であって、複数の対応するサンプル点は参照画像ターゲットフレーム内の複数のサンプル点に対応する、決定するための手段と、参照画像ターゲットフレーム内の複数のサンプル点の各々の色を、新規の画像ターゲットフレーム内の対応するサンプル点の各々の色と比較するための手段であって、この比較に少なくとも部分的に基づいて色伝達関数を計算するための手段と、色伝達関数を仮想オブジェクトの色に適用するための手段とを含む、拡張現実環境において仮想オブジェクトの現実的な色を作成するための装置を含む場合がある。
【図面の簡単な説明】
【０００９】
【図１】拡張現実用途に適したデバイスの一実施形態を示す図である。
【図２】画像ターゲットフレームを示す図である。
【図３】仮想ティーポットを用いて拡張された画像ターゲットフレームを示す図である。
【図４】一実施形態による、拡張現実環境において仮想オブジェクトの現実的な色を作成するための方法を示す図である。
【図５】内部に選択されたサンプル点を有する参照画像ターゲットフレームを示す図である。
【図６】色伝達サブ関数を計算するための方法の一実施形態を示す図である。
【図７】色伝達サブ関数を計算するための方法の別の実施形態を示す図である。
【図８】色伝達がない仮想ティーポットを用いて拡張された照明状態の変化がある画像ターゲットフレームを示す図である。
【図９】色伝達がある仮想ティーポットを用いて拡張された照明状態の変化がある画像ターゲットフレームを示す図である。
【発明を実施するための形態】
【００１０】
拡張現実用途に適した例示的なデバイス100が図1に示される。本明細書で使用するデバイス(たとえば、デバイス100)は、モバイルデバイス、ワイヤレスデバイス、携帯電話、携帯情報端末、モバイルコンピュータ、ウェアラブルデバイス(たとえば、腕時計、ヘッドマウントディスプレイ、仮想現実眼鏡など)、タブレット、パーソナルコンピュータ、ラップトップコンピュータ、または処理能力を有する任意のタイプのデバイスであってもよい。本明細書において用いられるときに、モバイルデバイスは、1つまたは複数のワイヤレス通信デバイスまたはネットワークから送信されたワイヤレス信号を取り込み、それらのデバイスまたはネットワークにワイヤレス信号を送信するように構成可能である、任意の持運び可能な、または移動可能なデバイスまたは機械であってもよい。したがって、例として、限定はしないが、デバイス100は、無線デバイス、携帯電話デバイス、コンピューティングデバイス、パーソナル通信システムデバイス、または他の同様の移動可能なワイヤレス通信機能搭載デバイス、機器または機械を含んでもよい。
【００１１】
デバイス100は、バス105を介して電気的に結合することができる(または場合によっては適宜、通信している場合がある)ハードウェア要素を含むように示される。ハードウェア要素は、限定はしないが、1つもしくは複数の汎用プロセッサおよび/または1つもしくは複数の専用プロセッサ(デジタル信号処理チップ、グラフィックス加速プロセッサなど)を含む1つもしくは複数のプロセッサ110と、少なくとも1つのカメラ116を含み、限定はしないが、マウス、キーボード、キーパッド、タッチスクリーン、マイクロフォンなどをさらに含むことができる1つもしくは複数の入力デバイス115と、少なくとも1つのディスプレイデバイス121を含み、限定はしないが、スピーカ、プリンタなどをさらに含むことができる1つもしくは複数の出力デバイス120とを含んでもよい。
【００１２】
デバイス100は、限定はしないが、ローカルおよび/またはネットワークアクセス可能記憶装置を含むことができ、かつ/あるいは限定はしないが、ディスクドライブ、ドライブアレイ、光記憶デバイス、プログラム可能、フラッシュ書換え可能などとすることができる、ランダムアクセスメモリ("RAM")および/もしくはリードオンリーメモリ("ROM")などの固体記憶デバイスなどを含むことができる、1つまたは複数の非一時的記憶デバイス125をさらに含む(かつ/または1つまたは複数の非一時的記憶デバイス125と通信する)場合がある。そのような記憶デバイスは、限定はしないが、様々なファイルシステム、データベース構造などを含む、任意の適切なデータストアを実装するように構成されてもよい。
【００１３】
デバイス100は、限定はしないが、モデム、ネットワークカード(ワイヤレスまたは有線)、赤外線通信デバイス、ワイヤレス通信デバイス、および/またはチップセット(Bluetooth(登録商標)デバイス、802.11デバイス、Wi-Fiデバイス、WiMAXデバイス、セルラー通信設備など)などを含むことができる通信サブシステム130をも含む場合もある。通信サブシステム130は、ネットワーク、他のデバイス、および/または本明細書で説明する任意の他のデバイスとデータを交換することを可能にする場合がある。一実施形態では、デバイス100は、上記で説明したように、RAMデバイスまたはROMデバイスを含むことができるメモリ135をさらに含んでもよい。デバイス100は、モバイルデバイスであっても、非モバイルデバイスであってもよく、ワイヤレス接続および/または有線接続を有してもよいことを了解されたい。
【００１４】
デバイス100は、本明細書で説明するように、オペレーティングシステム140、デバイスドライバ、実行可能ライブラリ、および/あるいは、方法を含む場合があるか、または方法を実装し、かつ/もしくは実施形態によって提供されるシステムを構成するように設計される場合がある、1つもしくは複数のアプリケーションプログラム145などの他のコードを含む、作業メモリ135内に現在配置されているものとして示されている、ソフトウェア要素を含む場合もある。単に例として、以下で説明する方法に関して説明する1つまたは複数の手順は、デバイス100(および/またはデバイス100内のプロセッサ110)によって実行可能なコードおよび/または命令として実装されてもよく、一態様では、次いで、そのようなコードおよび/または命令は、説明した方法に従って1つまたは複数の動作を実行するように汎用コンピュータ(または他のデバイス)を構成し、かつ/または適合させるために使用することができる。
【００１５】
これらの命令および/またはコードのセットは、上記で説明した記憶デバイス125などの非一時的コンピュータ可読記憶媒体に記憶される場合がある。場合によっては、記憶媒体は、デバイス100などのデバイス内に組み込まれてもよい。他の実施形態では、記憶媒体は、デバイスから分離し(たとえば、コンパクトディスクなどの取り外し可能な媒体)、および/またはインストレーションパッケージにおいて提供される場合があり、その結果、記憶媒体は、その上に記憶された命令/コードを用いて汎用コンピュータをプログラムし、構成し、かつ/または適合させるために使用することができる。これらの命令は、コンピュータ化されたデバイス100によって実行可能である実行可能コードの形態をとる場合があり、かつ/または、(たとえば、様々な一般的に利用可能なコンパイラ、インストールプログラム、圧縮/解凍ユーティリティなどのうちのいずれかを使用して)コンパイルし、および/もしくはデバイス100にインストールすると、実行可能コードの形態をとるソースおよび/もしくはインストール可能なコードの形態をとる場合がある。
【００１６】
アプリケーションプログラム145は、1つまたは複数の拡張現実アプリケーションを含んでもよい。例示的な拡張現実アプリケーションは、画像ターゲットをリアルタイムで認識および追跡することが可能である。例示的な一実施形態では、例示的な拡張現実アプリケーションは、画像ターゲット上の複数のキーポイントを使用して画像ターゲットを追跡する。以下で説明する拡張現実アプリケーションの機能は、ハードウェア、または、オペレーティングシステム(OS)、ファームウェア、コンピュータビジョンモジュールなどの様々なレベルのソフトウェアに選択的に実装される場合があることを了解されたい。
【００１７】
一実施形態では、実世界シーンを表す画像ターゲットは、デバイス100のカメラ116から受け取ったライブビデオフィードのフレームである。ビデオフィードは、バッファリングされる場合がある。別の実施形態では、ビデオフィードは、あらかじめ記録されたビデオフィードであってもよく、記憶媒体から取り出されてもよい。拡張現実アプリケーション145は、画像ターゲット上に1つまたは複数の仮想オブジェクトを重畳させてもよい。その際、1つまたは複数の仮想オブジェクトが重畳される画像ターゲットは、ディスプレイデバイス121上にフレームごとにレンダリングされる。例示的な拡張現実アプリケーションが、画像ターゲットの位置および方位を追跡し、それに応じて重畳された1つまたは複数の仮想オブジェクトの位置および方位を調整するので、1つまたは複数の仮想オブジェクトに対するユーザの視点は、画像ターゲットに対するユーザの視点と一致し、その結果、ユーザには、1つまたは複数の仮想オブジェクトが実世界シーンの一部であるように見える。また、一実施形態では、実世界シーンを表す画像ターゲットは、保存されたビデオフィードのフレームであってもよい。
【００１８】
図2は、テーブル面を含む画像ターゲットフレーム210の一例を示す。図3は、テーブル面の、仮想オブジェクトすなわちティーポット310によって重畳された例示的な画像ターゲットフレーム210を示す。
【００１９】
拡張現実アプリケーションは画像ターゲットの位置および方位のみを追跡するが、その外観を追跡しないとき、1つまたは複数の重畳された仮想オブジェクトの現実性は、いくつかの条件下で損なわれる場合があることが当業者には明らかであろう。たとえば、画像ターゲットに照明状態の変化があるときに、拡張現実アプリケーションが画像ターゲットの外観を追跡しない場合、1つまたは複数の仮想オブジェクトの色相は、画像ターゲット内の現実オブジェクトの色相のようには、変化した照明状態に応答して変化しない。したがって、現実性の認知可能な損失が生じる場合がある。この問題に対処するために、拡張現実アプリケーション145によってもたらされる拡張現実環境に関する現実的な色を作成するための方法および装置が開示される。画像ターゲット内の色測定値の変化を追跡し、次いで、それに応じて1つまたは複数の仮想オブジェクトの色を調整する、色伝達技法が本明細書で開示される。
【００２０】
図4は、色伝達技法を実装するための方法の一実施形態を示す。動作410では、参照画像ターゲットフレームが選択される。様々な実施形態において、参照画像ターゲットフレームを選択するための様々な方法を利用してもよい。例として、一実施形態では、ユーザは、中間の照明状態を有する画像ターゲットフレームを、拡張現実アプリケーション145における参照画像ターゲットフレームに指定してもよい。別の実施形態では、拡張現実アプリケーションは、参照画像ターゲットフレームとして第1の画像ターゲットフレームを選択してもよい。
【００２１】
次に、動作420では、参照画像ターゲットフレーム内のサンプル点が選択される。様々な実施形態において、サンプル点を選択するための様々な方法を利用してもよい。例として、一実施形態では、選択されたサンプル点は、拡張現実アプリケーション145のキーポイントと同じであってもよい。別の実施形態では、サンプル点によってカバーされる色の範囲を最大化するように、サンプル点が選択されてもよい。たとえば、低、中、および高の彩度レベルの各々、ならびに低、中、および高の輝度レベルの各々における赤色相、緑色相、および青色相をカバーするように、十分なサンプル点が選択されてもよい。
【００２２】
また別の実施形態では、後続の画像ターゲットフレームにおける照明状態の不均一な変化をキャプチャすることができるように、参照画像ターゲットフレームの大部分にわたるように、サンプル点が選択されてもよい。参照画像ターゲットフレームのほぼ大部分は、たとえば、参照画像ターゲットフレームの70パーセントをカバーする場合がある。サンプル点が多いほど、色伝達はより正確に生じることを了解されたい。
【００２３】
いくつかの実施形態では、1つまたは複数の仮想オブジェクトが配置されることになる、参照画像上のエリア内でサンプル点が選択されてもよい。いくつかの追加の実施形態では、1つまたは複数の仮想オブジェクトが配置されることになる、参照画像上のエリア外でサンプル点が選択されてもよい。
【００２４】
図5を一時的に参照すると、図5は、内部の選択されたサンプル点520を有するサンプル参照画像ターゲットフレーム210の一例500を示す。本明細書で説明するように、サンプル点520を選択するための様々な方法を利用してもよい。図5は、概念的な図にすぎず、サンプル点520は、本発明の実施形態が利用されるとき、異なって表示される場合があるか、またはまったく表示されない場合があることを了解されたい。図5に示すサンプル点520の数およびロケーションは、本発明の実施形態において実際に使用するサンプル点の数およびロケーションを代表するものではなく、説明のためのものにすぎないことも了解されたい。
【００２５】
図4に戻ると、後続の新規の画像ターゲットフレームは、動作425においてこのフレームが存在すると判定された場合、動作430において拡張現実アプリケーション145によって取得される。そうでない場合、処理は終了する。動作440では、参照画像ターゲットフレーム内のサンプル点に対応する、新規の画像ターゲットフレーム内のサンプル点は、拡張現実アプリケーション145によって追跡された姿勢の変化に少なくとも部分的に基づいて決定される。第1の画像ターゲットフレーム内の第1のサンプル点は、第2の画像ターゲットフレーム内の第2のサンプル点に対応し、そのとき、2つのサンプル点は、実世界における同じ物理的ロケーションに対応する。拡張現実アプリケーションを用いて対応する同じ点を決定するための方法が、当技術分野で知られている。次の動作450では、参照画像ターゲットフレーム内のサンプル点の各々と、新規の画像ターゲットフレーム内の対応するサンプル点との間で、色比較が行われる。
【００２６】
次の動作460では、動作450において実行された色比較の結果から、色伝達関数が計算される。次に、動作470では、色伝達関数が適用される。一実施形態では、色伝達関数は、参照画像ターゲットフレーム内のサンプル点の色測定値と、新規の画像ターゲットフレーム内の対応するサンプル点の色測定値と、色伝達前の1つまたは複数の仮想オブジェクトの色とに基づく場合がある。
【００２７】
一実施形態では、色伝達関数は、一般に、式F(R,S,c)->tの関数として表される場合があり、ここでRは参照画像ターゲットフレームにおける色測定値であり、Sは後続の新規の画像ターゲットフレームにおける色測定値であり、cは色伝達前の1つまたは複数の仮想オブジェクトの色であり、tは色伝達後のcの結果的な色である。
【００２８】
別の実施形態では、色伝達関数は、参照画像ターゲットフレーム内のサンプル点と、新規の画像ターゲットフレーム内の対応するサンプル点との間の色測定値差を取得し、これらの色測定値差を1つまたは複数の仮想オブジェクトの色に追加する。
【００２９】
色伝達関数を計算する方法の2つの実施形態を本明細書で具体的に開示するが、本発明の実施形態はそのように限定されない。色伝達関数は、1つまたは複数の色伝達サブ関数を含む場合があり、これらのサブ関数の数は、1つまたは複数の仮想オブジェクトに存在する色の数である。代替的に、各仮想オブジェクトに関して、それぞれの色伝達関数が計算されてもよい。複数の仮想オブジェクトが重畳された参照画像ターゲットフレームに関して、複数の色伝達関数が計算されてもよい。
【００３０】
図6は、色伝達サブ関数を計算する方法の一実施形態を示す。この実施形態では、色伝達前の1つまたは複数の仮想オブジェクトのi番目の色ciに関して、動作610では、色ciが最もよく似ている、参照画像ターゲットフレーム内のサンプル点が見つけられる。Riは、動作610において見つけられたサンプル点の色測定値を示す。次の動作620では、Riと、動作610において見つけられたサンプル点に対応する、新規の画像ターゲットフレーム内の対応するサンプル点の色測定値との間で、色比較が実行される。Siは新規の画像ターゲットフレーム内の対応するサンプル点の色測定値を示し、Si-Riは、SiとRiとの間の差を示す。動作630では、ciに関する色伝達サブ関数は、ti=(Si-Ri)+ciとして導出され、tiは色伝達後のciの結果的な色を示す。動作610〜動作630は、1つまたは複数の仮想オブジェクトの各色に関して反復される。
【００３１】
図7は、色伝達サブ関数を計算する方法の別の実施形態を示す。この実施形態において、動作710では、参照画像ターゲットフレーム内のサンプル点と、新規の画像ターゲットフレーム内の対応するサンプル点との間の色測定値差が取得され、平均される。動作710の結果は、
【数１】
0006453357.tif 000002
と表現される場合がある。nはサンプル点の数であり、Rjはj番目のサンプル点の色測定値を示し、Sjはj番目のサンプル点に対応する新規の画像ターゲットフレーム内の対応するサンプル点の色測定値を示す。動作720では、ciに関する色伝達サブ関数は、
【数２】
0006453357.tif 000003
として導出される。動作710の結果はciとは無関係なので、各新規の画像ターゲットフレームに関して、動作710を1度しか実行する必要がないことを了解されたい。
【００３２】
再び図4を参照すると、動作460において色伝達関数が計算された後、次の動作470において、この色伝達関数が1つまたは複数の仮想オブジェクトの色に適用される。
【００３３】
図8は、色伝達がない照明状態の変化を有する画像ターゲットフレーム210上に重畳された仮想ティーポット310の例示的な画像800を示す。仮想ティーポット310は、その色相が画像ターゲットフレーム210の照明状態の変化を反映していないので、非現実的に見えることがわかる。図9は、前に説明した色伝達関数のうちの1つが適用された照明状態の変化を有する画像ターゲットフレーム210上に重畳された仮想ティーポット310の例示的な画像900を示す。適用された色伝達関数が、仮想ティーポット310をより現実的に見えるようにすることがわかる。
【００３４】
また、追加の一実施形態では、CIELabまたはCIELuvなどの中間の色空間において、色伝達を実行することができる。この実施形態では、R、S、およびcは、最初に中間の色空間に変換される場合がある。次いで、色伝達は、中間の色空間において実行される場合がある。そして最後に、結果tが、ターゲット色空間に再び変換される。一実施形態では、元の色空間およびターゲット色空間は、RGB色空間である。中間の色空間は、色伝達動作により適している場合がある。そのような中間の色空間の例は、(原色ではなく、輝度、彩度、および色相を使用する)HSV色空間と、(人には知覚的にリニアである)CIELab色空間とを含んでもよい。YUV、YCbCr、RGB、HSV、HSLなどの様々な色空間は、必要な場合、中間の色空間として使用することができる。
【００３５】
図8からわかるように、仮想オブジェクト(仮想ティーポット310)は、その色相が画像ターゲットフレーム210の照明状態の変化を反映していないので、例示的な画像800では非現実的である。図3の例示的な画像300において示された中間色と比較して、例示的な画像800における画像ターゲットフレーム210の色はずっと明るいが、同時に、例示的な画像800における仮想ティーポット310の色は、中間的なままである。画像ターゲットフレーム210と仮想ティーポット310との間の例示的な画像800における色差の結果として、例示的な画像800における仮想ティーポット310が非現実的に見える。プロセッサ110を有するデバイス100が仮想オブジェクト(仮想ティーポット310)に関する現実的な色を作成するために拡張現実アプリケーション145を動作させるための命令を実行する場合がある、前に説明した関数を実行することによって、図8の例示的な画像800は、より現実的に彩色された、図9の仮想ティーポット310の例示的な画像900に変換することができ、画像ターゲットフレーム210の色と調和する、仮想ティーポット310の色はまた、例示的な画像300における仮想ティーポット310の中間色と比較してずっと明るい。
【００３６】
具体的には、前に説明したように、動作は、参照画像ターゲットフレーム210(図8)を選択することと、参照画像ターゲットフレーム内の複数のサンプル点を選択することと、後続の新規の画像ターゲットフレーム210(図9)を取得することと、新規の画像ターゲットフレーム内の複数の対応するサンプル点を決定することであって、複数の対応するサンプル点は参照画像ターゲットフレーム内の複数のサンプル点に対応する、決定することと、参照画像ターゲットフレーム(図8)内の複数のサンプル点の各々の色を、新規の画像ターゲットフレーム(図9)内の対応するサンプル点の各々の色と比較するとともに、この比較に少なくとも部分的に基づいて色伝達関数を計算することとを行うようにデバイス100によって実行される場合がある。色伝達関数の様々な実装形態を詳細に前に説明してきた。図9からわかるように、仮想ティーポットの色をはるかに現実的にするように、利用される色伝達関数に基づいて、図8の仮想ティーポット310の色に色伝達関数が適用される。
【００３７】
前に説明した、色伝達関数を実行するための拡張現実アプリケーション145は、ソフトウェア、ファームウェア、ハードウェア、それらの組合せなどとして実装される場合があることを了解されたい。一実施形態では、前に説明した機能は、事前に所望される機能(たとえば、図4、図6、および図7の方法動作)を実現するために、デバイス100の1つまたは複数のプロセッサ(たとえば、プロセッサ110)によって実装されてもよい。
【００３８】
本明細書の教示は、様々な装置(たとえば、デバイス)に組み込む(たとえば、それらの装置内に実装するか、またはそれらの装置によって実行する)場合がある。たとえば、本明細書で教示された1つまたは複数の態様は、一般的なデバイス、デスクトップコンピュータ、モバイルコンピュータ、モバイルデバイス、電話(たとえば、携帯電話)、携帯情報端末、タブレット、ラップトップコンピュータ、タブレット、エンターテインメントデバイス(たとえば、音楽デバイスもしくはビデオデバイス)、ヘッドセット(たとえば、ヘッドフォン、イヤピースなど)、医療用デバイス(たとえば、生体センサ、心拍数モニタ、歩数計、EKGデバイスなど)、ユーザI/Oデバイス、コンピュータ、サーバ、販売時点デバイス、エンターテインメントデバイス、セットトップボックス、ウェアラブルデバイス(たとえば、腕時計、ヘッドマウントディスプレイ、仮想現実眼鏡など)、自動車内の電子デバイス、または任意の他の適切なデバイスに組み込まれてもよい。
【００３９】
いくつかの態様では、ワイヤレスデバイスは、通信システムのためのアクセスデバイス(たとえばWi-Fiアクセスポイント)を含む場合がある。そのようなアクセスデバイスは、たとえば、有線またはワイヤレス通信リンクを介した、トランシーバを通した別のネットワーク(たとえばインターネットまたはセルラーネットワークなどの広域ネットワーク)への接続を提供する場合がある。したがって、アクセスデバイスは、別のデバイス(たとえば、Wi-Fiステーション)が他のネットワークまたは何らかの他の機能にアクセスすることを可能にする場合がある。加えて、デバイスのうちの1つまたは両方はポータブルであってもよく、または場合によっては、相対的に非ポータブルであってもよいことを了解されたい。
【００４０】
デバイスがモバイルデバイスまたはワイヤレスデバイスであるとき、それらのデバイスは、任意の適切なワイヤレス通信技術に基づくか、または別の方法でその技術をサポートするワイヤレスネットワークを通じて1つまたは複数のワイヤレス通信リンクを介して通信する場合があることを了解されたい。たとえば、いくつかの態様では、ワイヤレスデバイスおよび他のデバイスは、ワイヤレスネットワークを含むネットワークと関連付けてもよい。いくつかの態様では、ネットワークは、ボディエリアネットワークまたはパーソナルエリアネットワーク(たとえば超広帯域ネットワーク)を含んでもよい。いくつかの態様では、ネットワークは、ローカルエリアネットワークまたはワイドエリアネットワークを含んでもよい。ワイヤレスデバイスは、様々なワイヤレス通信技術、プロトコル、またはたとえば3G、LTE、Advanced LTE、4G、CDMA、TDMA、OFDM、OFDMA、WiMAX、およびWiFiなどの規格のうちの1つまたは複数をサポートするか、またはそうでなければ使用する場合がある。同様に、ワイヤレスデバイスは、様々な対応する変調方式または多重化方式のうちの1つまたは複数をサポートするか、またはそうでなければ使用する場合がある。したがって、ワイヤレスデバイスは、上記または他のワイヤレス通信技術を使用して、1つまたは複数のワイヤレス通信リンクを確立し、その通信リンクを介して通信するのに適した構成要素(たとえばエアインターフェース)を含む場合がある。たとえば、デバイスは、ワイヤレス媒体を介して通信するのを容易にする様々な構成要素(たとえば、信号発生器およびシグナルプロセッサ)を含む場合がある、関連するトランスミッタおよびレシーバ構成要素(たとえば、トランスミッタおよびレシーバ)を有するワイヤレストランシーバを含んでもよい。したがって、よく知られているように、モバイルワイヤレスデバイスは、他のモバイルデバイス、携帯電話、他の有線およびワイヤレスコンピュータ、インターネットウェブサイトなどとワイヤレスに通信する場合がある。
【００４１】
様々な異なる技術および技法のいずれかを使用して情報および信号が表される場合があることは当業者であれば理解されよう。たとえば、上記の説明全体を通して参照される場合があるデータ、命令、指令、情報、信号、ビット、記号およびチップは、電圧、電流、電磁波、磁場または磁性粒子、光場または光学粒子、あるいはそれらの任意の組合せによって表される場合がある。
【００４２】
本明細書で開示する実施形態に関して説明する様々な例示的な論理ブロック、モジュール、エンジン、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、または両方の組合せとして実装されてもよいことを当業者はさらに了解されよう。ハードウェアとソフトウェアとの、この互換性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、エンジン、回路、およびステップについて、上記では概してそれらの機能に関して説明した。そのような機能がハードウェアとして実装されるか、またはソフトウェアとして実装されるかは、システム全体に課される特定のアプリケーションおよび設計制約に依存する。当業者は、説明された機能を特定のアプリケーションごとに様々な方法で実施することができるが、そのような実装形態の決定は、本発明の範囲から逸脱させるものとして解釈されるべきではない。
【００４３】
本明細書で開示する実施形態に関連して説明する様々な例示的な論理ブロック、モジュール、および回路は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)もしくは他のプログラマブル論理デバイス、個別ゲートもしくはトランジスタ論理、個別ハードウェア構成要素、または本明細書で説明した機能を実行するように設計されたこれらの任意の組合せを用いて実装されるか、または実行される場合がある。汎用プロセッサはマイクロプロセッサであってもよいが、代替として、プロセッサは、任意の従来型プロセッサ、コントローラ、マイクロコントローラ、またはステートマシンであってもよい。プロセッサは、コンピューティングデバイスの組合せ、たとえばDSPとマイクロプロセッサの組合せ、複数のマイクロプロセッサ、DSPコアと連結した1つもしくは複数のマイクロプロセッサ、または任意の他のそのような構成として実装される場合もある。
【００４４】
本明細書で開示する実施形態に関して説明した方法またはアルゴリズムのステップは、ハードウェアにおいて直接、または、プロセッサによって実行されるソフトウェアモジュールにおいて、またはこの2つの組合せにおいて具現化される場合がある。ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、リムーバブルディスク、CD-ROM、または当技術分野において知られている任意のその他の形の記憶媒体内に存在する場合がある。例示的な記憶媒体は、プロセッサが記憶媒体から情報を読み出し、かつ、記憶媒体に情報を書き込むことができるようにプロセッサに結合される。代替として、記憶媒体は、プロセッサに一体化されてもよい。プロセッサおよび記憶媒体は、ASIC内に存在する場合がある。ASICは、ユーザ端末内に存在する場合がある。代替として、プロセッサおよび記憶媒体は、ユーザ端末内の個別構成要素として存在する場合がある。
【００４５】
1つまたは複数の例示的な実施形態では、説明した機能が、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せにおいて実装されてもよい。コンピュータプログラム製品としてソフトウェアに実装された場合、機能またはモジュールは、非一時的コンピュータ可読媒体上の1つまたは複数の命令またはコードとして記憶されるか、または伝送される場合がある。コンピュータ可読媒体は、ある場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体を含む、コンピュータ記憶媒体と通信媒体の両方を含むことができる。記憶媒体は、コンピュータによってアクセスできる任意の利用可能な媒体であってもよい。限定ではなく例として、そのような非一時的コンピュータ可読媒体は、RAM、ROM、EEPROM、CD-ROMもしくは他の光ディスク記憶装置、磁気ディスク記憶装置もしくは他の磁気記憶デバイス、または、命令もしくはデータ構造の形態の所望のプログラムコードを搬送もしくは記憶するために使用することができ、コンピュータによってアクセスできる任意の他の媒体を含むことができる。また、任意の接続部も、厳密にはコンピュータ可読媒体と呼ばれる。たとえば、ソフトウェアが、同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線(DSL)、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合には、同軸ケーブル、光ファイバケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。ディスク(disk)およびディスク(disc)は、本明細書において使用されるときに、コンパクトディスク(disc)(CD)、レーザディスク(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フロッピーディスク(disk)およびブルーレイディスク(disc)を含み、ディスク(disk)は通常、データを磁気的に再生するが、ディスク(disc)は、レーザを用いてデータを光学的に再生する。上記の組合せも、非一時的コンピュータ可読媒体の範囲内に含まれるべきである。
【００４６】
開示した実施形態の前の説明は、当業者が本発明を作成または使用することができるように提供される。これらの実施形態に対する様々な変更形態が、当業者には容易に理解され、本明細書において規定される一般原理は、本発明の趣旨または範囲から逸脱することなく他の実施形態に適用される場合がある。したがって、本発明は、本明細書において示される実施形態に限定されるものではなく、本明細書において開示される原理および新規の特徴に一致する最も広い範囲を与えられるべきである。
【符号の説明】
【００４７】
100  デバイス
105  バス
110  プロセッサ
115  入力デバイス
116  カメラ
120  出力デバイス
121  ディスプレイデバイス
125  記憶デバイス
130  通信サブシステム
135  作業メモリ、メモリ
140  オペレーティングシステム
145  アプリケーションプログラム、拡張現実アプリケーション
210  画像ターゲットフレーム、サンプル参照画像ターゲットフレーム
300  画像
310  ティーポット、仮想ティーポット
410  動作
420  動作
425  動作
430  動作
440  動作
450  動作
460  動作
470  動作
520  サンプル点
610  動作
620  動作
630  動作
710  動作
720  動作
800  画像
900  画像
【図１】
0006453357.tif 000005
【図２】
0006453357.tif 000006
【図３】
0006453357.tif 000007
【図４】
0006453357.tif 000008
【図５】
0006453357.tif 000009
【図６】
0006453357.tif 000010
【図７】
0006453357.tif 000011
【図８】
0006453357.tif 000012
【図９】
0006453357.tif 000013