街路レベルの画像間の移行を示すシステム及び方法
街路レベルの画像間の移行を表示するシステム及び方法が提供される。一態様では、このシステム及び方法は、3D位置に関連付けられた2Dの街路レベルの画像(1110)からの画像でテクスチャー加工された複数のポリゴン(1120)を作り出す。ここで、3D位置は、画像内に含まれる目的物(320,322)の3D位置に一致する。そして、これらのポリゴン(1120)は、当初の画像内に含まれた目的物の間を移動する外観を伝えるために、様々な視点から表示される。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願の相互参照]
本願は「SYSTEM AND METHOD OF INDICATING TRANSITION BETWEEN STREET LEVEL IMAGES」という名称の2009年2月24日に出願された出願番号第12/391,516号の利点を請求する。その開示内容を引用することによって本明細書の一部をなすものとする。
【背景技術】
【0002】
クーグル・マップ(Google Map)などのサービスは、地理的位置の街路レベルの画像を表示することができる。「ストリート・ビュー」("Street Views")としてクーグル・マップの中で識別されたこれらの画像は、一般に、ビルディングや他の構造体の写真を有し、またユーザが地理的位置を、トップダウンのマップの視点ではなく、人の視点から見ることができるようにしている。
【0003】
街路レベルの画像は、バラバラの位置で撮られる傾向がある。クーグル・マップ・サービスは、ユーザがある位置から他の位置に街路レベルの画像から変化できるようにする、矢印アイコンのクリッキングなどの種々の機構を提供する。
【0004】
このクーグル・マップ・サービスは、2つの街路レベルの画像間のアニメーション移行も示す。例えば、ユーザが次の画像まで前に進みたいと思うことを知らせると、クライアント・コンピュータは現在の街路レベルに素早く入るような命令を与えられる。このズーミングは、画像内に移動する印象を伝えることを目的にしている。同様に、ユーザが次の街路レベルの画像に移動する場合、現在表示されている画像は、それぞれ右又は左にパンする。
【0005】
現在の街路レベルの画像のアニメーションは、次の街路レベルの画像の上に半透明で示されうる。さらに具体的に言うと、次の街路レベルの画像が低解像度のJPEG形式で最初に送られて、現在の街路レベルの画像が低品質の画像を超えて移動し、その間に、次の画像のより高い解像度のバージョンがロードされる。現在の街路レベルの画像が移動又はズーミングを終えると、それはユーザから隠され、この時点で、第2の街路レベルの画像が表示される。
【0006】
サーバが現在の街路レベルの画像の地理的位置と表示される街路レベルの画像の位置との間の位置で撮られた街路レベルの画像にアクセスする場合、サーバはこれらの画像をクライアント・コンピュータに送って表示させることができる。多くの状況で都合が良いことに、多くのクライアント・コンピュータは、中間画像を受け取りまた表示するためには、サーバに対する十分早い接続が欠けている。
【発明の概要】
【0007】
本発明の1つの態様は、画像を表示する方法を提供する。この方法は、第1の位置でカメラが取り込んだ地理上の目的物を表す第1の画像を受け取るステップと、地理的目標物の地理的位置に関連した目的物位置データを受け取るステップと、プロセッサを用いて、第1の画像と目的物位置データとに基づいて複数の領域を決定するステップと、プロセッサを用いて、第2の位置の視点から地理上の目的物を表す第2の画像を発生するステップと、電子ディスプレイ上に第2の画像を表示するステップとを含み、各領域は第1の画像と地理的位置の部分に関連付けられ、第2の画像は第2の位置の視点から表示された複数の領域を有する。
【0008】
本発明の別の態様は、街路レベルの画像を表示する方法を提供する。この方法には、第1の位置でカメラによって取り込まれた地理上の目的物の第1の街路レベルの画像を受け取るステップと、第1の位置に関連した地理上の目的物の外面の位置を表す深さデータを受け取るステップと、プロセッサを用いて、複数のポリゴンを発生するステップと、電子ディスプレイ上で地理上の目的物の第2の街路レベルの画像を表示するステップとを含み、ポリゴンの頂点は位置に関連付けられ、頂点の位置は深さデータに基づいて決定され、また各ポリゴンは第1の街路レベルの画像の部分にさらに関連付けられて、街路レベルの画像が、あたかも第2の位置でカメラによって取り込まれたように表示される。第2の街路レベルの画像はプロセッサによって、第2の位置、複数のポリゴン、及び第2の位置に対するポリゴンの位置に基づいて計算される。
【0009】
本発明のさらに別の態様は、ユーザ入力装置及びメモリを有するシステムに関連する。このメモリは、命令、カメラによって取り込まれた地理上の目的物の街路レベルの画像を表す二次元画像データ、及びカメラに向いた目的物の外面の三次元位置を表す位置データを記憶している。このシステムは、ユーザ入力装置と通信してユーザ入力装置から受け取った情報を命令に従って処理するプロセッサと、このプロセッサと通信してプロセッサから受け取った情報を表示するディスプレイとをさらに含む。この命令には、第2の位置及び第2の向きの識別情報を受け取り、画像データの部分を様々な領域に関連付け、各領域に関連付けられた複数の点に対して外面位置データを決定し、領域の画像データ、領域に対する外面位置データ、第2の位置及び第2の向きに基づいて二次元の第2の画像を提供し、この第2の画像をディスプレイ上に表示することを含み、点の外面位置データは、その点で画像内に表示される目的物の外面部分の三次元位置を示し、またこの外面の位置データは位置データに基づいている。
【0010】
さらに別のシステムは画像を表示し、ネットワークの第1のノードに第1のコンピュータを含んでなり、この第1のコンピュータは第1の命令の集合を記憶する第1のメモリ、第1の命令の集合に従ってデータを処理する第1のプロセッサ、及び電子ディスプレイを有する。このシステムは、ネットワークの第2のノードに第2のコンピュータも含み、この第2のコンピュータは、第2の命令の集合を記憶する第2のメモリ、及び第2の命令の集合に従ってデータを処理する第2のプロセッサを含む。この第2の命令の集合は、第1のコンピュータから位置情報を受け取る命令、カメラによって取り込まれた地理上の目的物の第1の画像を第1のコンピュータに送信する命令、及び画像内に表された目的物の外面の地理的位置を定義する位置データを送信する命令を有している。第1の命令の集合には、第1の画像を受け取る命令、位置データを受け取る命令、第2の位置情報を受け取る命令、複数の画像部分に対して、各画像部分を画像部分の位置に関連付ける命令、画像部分から第2の画像を発生させる命令、及びこの第2の画像を表示する命令を含み、画像部分の位置は、その部分によって表された外面の少なくとも1つの地理的位置に基づいて計算され、第2の画像内の各画像部分の位置は、第2の位置の視点から見た場合の画像部分の外観に基づいて計算される。
【0011】
本発明のさらに別の態様は、街路レベルの画像間の移行を提供する方法に関する。この方法には、第1の地理的位置から撮られた地理上の目的物の第1の街路レベルの画像を受け取るステップ、目的物の外面の地理的位置を表す目的物の位置データを受け取るステップ、第2の地理的位置に関連付けられた第2の街路レベルの画像を要求するステップ、プロセッサを用いて、複数のポリゴンを決定するステップ、第1の地理的位置と第2の地理的位置とに基づいて、第1の中間の地理的位置を決定するステップ、プロセッサを用いて、この第1の中間の地理的位置の視点から少なくとも1つの地理上の目的物を表す第1の中間画像を決定するステップ、及びこの第1の中間画像をディスプレイに表示するステップを含み、ポリゴンの各頂点はピクセル位置と地理的位置との両方に関連付けられ、このピクセル位置は第1の画像に関連した頂点の位置を表し、各頂点の地理的位置は頂点のピクセル位置で表示される目的物の部分の地理的位置を示し、この第1の中間画像は、第1の中間の地理的位置に関連した各ポリゴンの頂点の地理的位置に基づいて、第1の中間画像内に配置された複数のポリゴンを有している。
【図面の簡単な説明】
【0012】
【図1】本発明の態様に基づいたシステムの機能図である。
【図2】本発明の態様に基づいたシステムの絵図である。
【図3】本発明の態様に基づいて、カメラによって取り込まれた街路レベルの画像である。
【図4】本発明の態様に基づいて、街路レベルの画像内の目的物の相対的な地理的位置、及びこの街路レベルの画像を取り込むために使用されたカメラの位置及び角度を機能的に例示する図である。
【図5】本発明の態様による、街路レベルの画像、カメラ位置に関連した街路レベルの画像内の目的物の地理的位置の機能図、及び目的物の位置データである。
【図6】本発明の態様による、街路レベルの画像、カメラ位置に関連した街路レベルの画像内の目的物の地理的位置の機能図、及び目的物の位置データである。
【図7】本発明の態様による、街路レベルの画像、カメラ位置に関連した街路レベルの画像内の目的物の地理的位置の機能図、及び目的物の位置データである。
【図8】本発明の態様によるスクリーン場面である。
【図9】本発明の態様によるスクリーン場面である。
【図10】本発明の態様による街路レベルの画像が付いた領域の関連性を例示する図である。
【図11】本発明の態様による街路レベルの画像が付いた領域の位置を例示する図である。
【図12】本発明の態様による街路レベルの画像及び種々の視点内の目的物の地理的位置に関連した領域の位置を例示する図である。
【図13】本発明の態様に基づいて、街路レベルの画像をそこから発生された中間の街路レベルの画像と比較した図である。
【図14】本発明の態様に基づいて、街路レベルの画像及び中間の街路レベルの画像内の領域のピクセル位置を例示する図である。
【図15】本発明の態様によるスクリーン場面である。
【図16】本発明の態様による中間の位置及び向きを例示する図である。
【図17】本発明の態様によるフローチャートである。
【図18】本発明の態様によるフローチャートである。
【図19】本発明の態様によるフローチャートである。
【発明を実施するための形態】
【0013】
1つの態様では、このシステム及び方法は、ビルディングなどの街路レベルの画像内で表示された地理上の目的物の外面の位置を決定し、この情報を使用して、画像内に表された光景を通して動きの印象を伝えるアニメーションを作り出す。このアニメーションは、全体的にクライアント・コンピュータによって作られる。このクライアント・コンピュータは、サーバから受け取った位置情報を使用して、現在の街路レベルの画像からの画像情報を用いて加工されるポリゴンを作る。クライアント・コンピュータは、現在の街路レベルの画像から次の街路レベルの画像に対して、一連の中間の地理的位置を計算することもできる。これらの中間位置は、これらの位置からのポリゴンに基づいて、一連の二次元の光景を提供及び表示するために使用される。このシステム及び方法の態様により、街路レベルの画像の中で示された地理上の目的物を通して生き生きとした動きの印象を作るための、大きな柔軟性が提供される。
【0014】
図1〜図2において示されるように、本発明の1つの態様によるシステム100は、プロセッサ210、メモリ220及び他の汎用コンピュータに一般に存在する構成部品を備えたコンピュータ110を含む。
【0015】
メモリ220は、プロセッサ210が実行できる命令240を含む、プロセッサ210がアクセス可能な命令を記憶している。このメモリ220は、プロセッサが検索、操作又は記憶することができるデータ230も含む。このメモリは、ハードディスク、メモリ・カード、ROM、RAM、DVD、CD−ROM、書込み可能メモリ、読み出し専用メモリなど、プロセッサがアクセス可能な情報を記憶することができる任意の種類でありうる。プロセッサ210は、Intel Corporation 又は AMD から入手可能な任意のよく知られているプロセッサでありうる。別の方法では、このプロセッサは、ASICなどの専用コントローラでありうる。
【0016】
命令240は、プロセッサによって(マシン・コードなどの)直接的に又は(スクリプトなどの)間接的に実行される任意の命令の集合でありうる。その点において、「命令」、「ステップ」及び「プログラム」という用語は、本願では交換可能に使用できる。これらの命令は、プロセッサが直接処理するためのオブジェクト・コード形式で、又はオンデマンドで解釈される又は事前にコンパイルされる独立ソース・コード・モジュールのスクリプト又はコレクションを含む任意の他のコンピュータ言語で保管されうる。命令の機能、方法及びルーチンは、以下でより詳細に説明される。
【0017】
データ230は、プロセッサ210によって、命令240に従って検索、記憶又は変更されうる。例えば、このシステム及び方法は、特定のデータ構造によって限定されることはないが、データはコンピュータ・レジスタの中に、複数の様々なフィールド及びレコードを有するテーブル、XML文書、又はフラット・ファイルとしてリレーショナル・データベースの中に記憶されうる。データは、これらに限定されることはないが、バイナリ値、ASCII又はユニコードなどのコンピュータが読取り可能な形式にフォーマットされることもできる。さらに、ほんの一例として、画像データは、圧縮された形式若しくは圧縮されない形式、可逆の形式若しくは(例えば、JPEGなどの)不可逆の形式、又は(例えば、SVGなどの)ベクタ・ベース・フォーマット若しくはグラフィックを描画するコンピュータ命令で記憶されるピクセルから成るビットマップとして記憶されうる。さらに、数、説明文、商標コード、ポインタ、(他のネットワーク位置を含む)他のメモリの中に記憶されたデータへの参照、又は関連したデータを計算するための関数として使用される情報などの、関連した情報を識別するに十分な任意の情報を含みうる。
【0018】
図1は、プロセッサ及びメモリを同じブロック内にあるように機能的に例示しているが、プロセッサ及びメモリは、実質的には、同じ物理的な筐体内に記憶される又は記憶されない複数のプロセッサ及びメモリを含みうることは当業者には理解されるであろう。例えば、幾つかの命令やデータは、着脱可能なCD−ROMや読取り専用のコンピュータ・チップの中の他の装置に記憶されうる。幾つかの又は全ての命令やデータは、プロセッサから物理的に離れているが、プロセッサがアクセス可能な位置に記録されうる。同様に、プロセッサは、並列に動作できる又は動作できないプロセッサの集合を実際に含みうる。
【0019】
1つの態様では、コンピュータ110は、1つ以上のクライアント・コンピュータ150、170と通信するサーバである(図1では、明確にするために、クライアント150だけを示している)。各クライアント・コンピュータは、プロセッサ、メモリ及び命令を有して、サーバ110と同様に構成されている。各クライアント・コンピュータ150、170は、人190〜191が使用することを意図されたパーソナル・コンピュータとすることができ、中央処理装置(CPU)、ディスプレイ装置160(例えば、スクリーン、プロジェクタ、タッチ・スクリーン、小型LCDスクリーン、テレビ、又はプロセッサが処理した情報を表示するように動作できる電気装置などの他の装置を有するモニタ)、CD−ROM、ハード・ドライブ、ユーザ入力装置(例えば、マウス163、キーボード、タッチ・スクリーン又はマイクロフォン)、スピーカ、モデム及び/又は(電話、ケーブルなどの)ネットワーク・インターフェース装置及びこれらの構成要素を互いに接続するために使用される全ての構成部品など、パーソナル・コンピュータの中で通常見出される全ての内部構成要素を有している。さらに、本願で説明されるシステム及び方法によるコンピュータは、命令を処理し、汎用コンピュータ、PDA、局部記憶能力がないネットワーク・コンピュータ、及びテレビ用のセットトップ・ボックスを含む人や他のコンピュータに対してデータ送信し、人や他のコンピュータからデータを受信することができる任意の装置を含みうる。
【0020】
クライアント・コンピュータ150及び170はフルサイズのパーソナル・コンピュータを備えることができるが、このシステム及び方法は、インターネットなどのネットワークを介してサーバとデータを無線で交換できるモバイル機器と接続して使用されうる。例えば、クライアント・コンピュータ170は、ブラックベリー電話(Blackberry phone)又はインターネットが可能な携帯電話などの無線可能形PDAでありうる。いずれにしても、ユーザは、小さなキーボード(ブラックベリー電話の場合)、キーボード(一般的な携帯電話の場合)、タッチ・スクリーン(PDAの場合)又はユーザが入力する任意の他の手段を使用することができる。
【0021】
クライアント・コンピュータ150及び170は、装置の地理的位置を決定するために、回路などの構成部品を備えうる。例えば、モバイル機器170は、GPS受信機155を備えうる。さらに、一例として、構成部品は、モバイル機器が携帯電話の場合、1つ以上の携帯電話タワーから携帯電話のアンテナで受信された信号などの、モバイル機器170で受信された他の信号に基づいて装置の位置を決定するためのソフトウェアを含みうる。
【0022】
サーバ110、クライアント・コンピュータ150及び170は、ネットワーク295を介して、直接的及び間接的な通信を行うことができる。図1〜図2には、ほんのわずかな数のコンピュータしか示されていないが、一般的なシステムは、それぞれ別のコンピュータがネットワーク295の別個のノードに存在する、多数の接続されたコンピュータを含みうることが理解されるであろう。ネットワーク及び介在するノードは、インターネット、ワールド・ワイド・ウェブ、イントラネット、仮想プライベート・ネットワーク、ワイド・エリア・ネットワーク、ローカル・ネットワーク、1つ以上の会社に占有の通信プロトコルを使用するプライベート・ネットワーク、イーサネット(登録商標)、WiFi及びHTTP、及び前述されたものの種々の組合せを含む様々な構成やプロトコル含みうる。そのような通信は、モデム(例えば、ダイアルアップ、ケーブル又は光ファイバー)及び無線インターフェースなどの他のコンピュータに又はそこからデータを送受信できる任意の装置によって円滑にされうる。
【0023】
情報が前述されたように送信又は受信されるときに幾つかの利点が得られるが、このシステム及び方法の他の態様は、情報の特定の送信方法に限定されることはない。例えば、幾つかの態様では、ディスク、テープ又はCD−ROMなどの媒体を介して送られることができる。別の態様では、情報は非電子的な形式で送信され、また手作業でシステムに入力されうる。さらに別の態様では、幾つかの機能がサーバ上でまた他の機能がクライアント上で実行されると示されているが、このシステム及び方法の種々の態様は、1つのプロセッサを有する単一のコンピュータによって実行されうる。
【0024】
サーバ110のマップ・データベース270は、マップ関連情報を記憶し、その少なくとも一部がクライアント装置に送信されうる。例えば、マップ・データベース270は、マップ・タイル272を記憶することができ、ここで各タイルは、特定の地理上の区域のマップ画像である。(例えば、マップがズーム・イン又はズーム・アウトされる場合でも)解像度に基づいて、1つのタイルは比較的小さい細部の状態などの全区域をカバーすることができる。他のタイルは、僅か数個の街路を高精細でカバーできる。このマップ情報は、特定のフォーマットに限定されない。例えば、画像は街路マップ、衛星画像、又はこれらの組合せを含むことがあり、(特に街路マップに関連して)ベクトルとして又は(特に衛星画像に関連して)ビットマップとして記憶されうる。種々のマップ・タイルは、それぞれ地理的位置に関連付けられるため、サーバ110は地理的位置を受け取ることに応答して、1つ以上のタイルを選択、検索及び送信することができる。
【0025】
以下に記載するように、位置は緯度/経度位置、住所、(ユーザがマップ上でクリックするときなどの)マップ上の点、ビルディングの名前、1つ以上の地理的位置を識別できる他のデータ、及び前述した範囲を含む種々の方法で表すことができるが、これらに限定されることはない。
【0026】
マップ・データベースは、街路レベルの画像274も記憶することができる。この街路レベルの画像は、地理的位置において全体的に地面に平行な方向で、カメラが撮影した地理的位置の目的物の画像を含んでいる。このため、図3に示されているように、街路レベルの画像データは、地面から数フィート上で街路を見下ろす視点から、ビルディング320〜322、歩道330〜331及び街路340などの種々の地理上の目的物を表すことができる。街路レベルの画像310は、説明を容易にするために数個の目的物しか示していないが、代表的な街路レベルの画像は、カメラが取り込むことができるのと同じぐらい詳細な、地理的位置に関連付けられた(外灯、山、木、水域、車両、人などの)多数の目的物を含むことが理解されるであろう。
【0027】
この街路レベルの画像は、車両の頂部に取り付けられたカメラによって取り込まれる。この場合、カメラ角度は地面にほぼ平行に向けられ、カメラ位置は車両の高さに対する法的限度以下(例えば、213.36〜426.72 cm(7フィート〜14フィート))である。街路レベルの画像は、地面の上の特定の高さに限定されない。例えば、街路レベルの画像はビルディングの頂部から撮影されうる。パノラマ式の街路レベルの画像は、種々のカメラ角度から撮られた複数の写真を縫合することによって作られる。
【0028】
図4は、画像が撮られたときのカメラの位置410及び角度420に関連したビルディング320〜321の位置を図示している。
【0029】
各街路レベルの画像は、カラー及び輝度値に関連したピクセルの集合として記憶されうる。例えば、画像がJPEG形式で記憶される場合、画像は行及び列のピクセルの集合として表示される。この場合、各ピクセルは、ピクセルの位置における画像のカラー及び輝度を定義する値に関係付けられる。
【0030】
街路レベルの画像274は、地理的位置に関係付けられることに加えて、一般に、画像の向きを示す情報に関係付けられる。例えば、街路レベルの画像が一般的な写真から構成される場合、向きは単純にカメラ角度であり、そして、これは、真北の東30°で地表面から2°上向いている角度として表される。街路レベルの画像が、画像に関連付けられた地理的位置の中心にある360°のパノラマ画像などのパノラマ画像である場合、向きは、地面に直接平行な角度のカメラ位置から真北を見ることと同じ画像部分を示すことができる。
【0031】
街路レベルの画像は、アナログのビデオ・カメラによって取り込まれたMPEGビデオを表示するか、又はディジタルのスチール・カメラによって取り込まれた時系列の写真を連続して表示するビデオ形式により記憶されうる。
【0032】
メモリ220は、街路レベルの画像内で地理上の目的物の地理的位置を表す目的物の位置データも記憶する。目的物の位置データは、任意の形式により記憶されうる。(「位置(location)」及び「場所(position)」という用語は、本願では交換可能に使用される。)
【0033】
1つの態様では、目的物の位置データは、カメラに向いた外面の地理的位置を表す値を記憶する。そのことについては、街路レベルの画像の各ピクセルに対して別の値が記憶される。この値は、そのピクセルで明らかにされる外面の地理的位置を表す。従って、図5に示されているように、街路レベルの画像510の行ya及び列xaのピクセル(以後、「(xa,ya)」と呼ぶ)は、点「A」におけるビルディング320の外面の一部分を表す。このピクセルは、2つの値に関連付けられる。第1の値は、カメラによって取り込まれた外面部分のカラー及び輝度である。
【0034】
そのピクセルに関連した第2の値は、その外面部分の地理的位置である。例えば、その値はその位置の緯度/経度及び高さ位置を示し、形式(Lat2°,Lon2°,Alt2メータ)の座標として表される。位置「B」のピクセルで示されたビルディング322の部分の地理的位置は、同様に、(Lat3,Lon3,Alt3)として表される。目的物の位置データ550は、(Lat1,Lon1,Alt1)としてカメラ位置の地理的位置を記憶する。外面に関連付けられないピクセルは、ゼロすなわちデフォルトの外面値に関連付けられる。
【0035】
さらに別の態様では、目的物の位置データは、画像の各ピクセルで目的物からカメラまでの距離を記憶することができる。このため、図6に示されているように、目的物の位置データ650は、カメラ位置610からピクセル「A」のビルディング320の外面までの距離620を定義することができる。同様に、目的物の位置データは、カメラ位置610からピクセル「B」のビルディング321の外面までの距離630を定義することができる。
【0036】
別の態様では、カメラに面している外面の地理的位置は、ポリゴンとして記憶される。このため、図7に示されているように、カメラに面しているビルディング320の外面720は、4つの頂点を有するポリゴン725として定義されうる。ここで、各頂点は異なる地理的位置に関連付けられている。例えば、この外面は、位置(Lat2,Lon2,Alt2)、(Lat3,Lon3,Alt3)、(Lat4,Lon4,Alt5)及び(Lat5,Lon5,Alt5)における頂点の集合として、目的物の位置データ750の中で参照されうる。他の目的物の外面は、カメラの位置に沿って同様に記憶されうる。目的物の位置データは、画像内の各ピクセルに対して、ピクセルと一致する外面をさらに定義することができる。例えば、位置「A」のピクセルに対する目的物の位置データは、ポリゴン725を参照することにより得られる。
【0037】
目的物の位置データを記憶する他の形式も、使用されうる。例えば、緯度/経度などの絶対値に関連付けられるのではなく、これらの値は相対的で任意のスケールにすることができる。さらに、たとえ(記憶されているカメラ及び外面の緯度、経度及び高さなどの)第1の種類の情報が使用される場合であっても、(緯度/経度の位置と高さとの間の相違を用いて距離を計算するなどの)他の種類の情報をそこから発生することができる。
【0038】
特定のフォーマットは、カメラで得られた街路レベルの画像の外面情報を独立して記憶できるようにしている。例えば、図7で説明されたように記憶されている目的物の位置データは、街路レベルの画像又はカメラ位置との関連なしに記憶され、そして街路レベルの画像の位置に近い地理的位置の外面を読み出すことによって取り出されうる。
【0039】
種々のシステム及び方法が、外面情報を収集するために使用されうる。ほんの一例として、レーザ距離計を使用できる。さらに、わずかに間隔を空けているが同じ光景を見ている2つのビデオ・カメラを使用するステレオ・システムも、同様に使用できる。各カメラによって得られた画像間の僅かな相異を分析することによって、画像内の各点における距離を推定することができる。さらに別の態様では、通過した光景として街路レベルの画像を得るために、特定の速度で移動する1台のビデオ・カメラを用いて、情報をコンパイルすることができる。このビデオは、街路レベルの画像として使用されるだけでなく、後に来るフレームが目的物とカメラとの間の様々な距離を取り出すために比較される(例えば、遠方の山は、街路に沿って通り過ぎる消火栓よりも遙かに長くフレーム内に留まっている)。
【0040】
図17〜図19に例示されている動作に加えて、本発明の様々な態様による多様な動作がここで説明される。以下の動作は、以下で説明される正確な順序で実行される必要はないことは理解されたい。むしろ、各種のステップは、逆の順序で又は同時に操作されうる。
【0041】
図8は、クライアント・コンピュータのディスプレイ装置で表示されるスクリーン場面を例示している。例えば、このシステム及び方法は、マップ810及び他の情報を示しているウェブ・ページを表示するグーグル・クロム(Google Chrome)(図示せず)などのインターネット・ブラウザに関連して実行されうる。プログラムは、位置が街路レベルの光景の中に示されるように要求することに関して、ユーザに大きな柔軟性を提供することができる。例えば、ユーザは、住所、ビルディングの名前又は緯度及び経度などの位置を識別するテキストを、テキストボックス805の中に入力することができる。そして、ユーザは、検索ボタン815を選択することによって、この位置をサーバに送信する。ユーザは、マウス又はキーパッドをさらに使用してマウス・カーソル860を移動して、マップ上の特定の地理的位置を識別する。さらに、プログラムは、ユーザが指定された地理的位置で街路レベルの光景を要求できるようにするボタン870又は何らかの他の機構を提供する。
【0042】
街路レベルの画像を要求する場合、マップは街路視点カーソル840を用いて、カメラ位置の位置及び向きを示すことができる。
【0043】
サーバ110は、要求された位置に基づいて適切な街路レベルの画像を読み出す。例えば、街路レベルの画像が、カメラが画像を取り込んだときの緯度/経度座標に関連付けられる場合、サーバは要求された緯度/経度に最も近い画像を読み出すことができる。
【0044】
図9に示されているように、街路レベルの画像910は、視点の位置又は向きを変更するためのユーザ選択可能制御部と一緒に、ブラウザの中で示される。この制御部は、画像をズーム・イン及びズーム・アウトするための制御部920と、北東から北西に見る方向を変更するような、視野の向きを変更するための制御部930とを含みうる。街路レベルの画像が完全360°のパノラマとしてダウンロードされた場合、視野の向きを変えることは、サーバからより多くの情報を読み出すことなく、このパノラマの異なる部分を単に表示することしか必要でない。
【0045】
ユーザは、視点の位置を変えることもできる。例えば、ユーザは制御部940を選択することによって現在見ている方向で視点を前方又は後方に移動することができる。
【0046】
視点を街路の上下に移動するために選択される、街路に沿って配置された矢印の形式の他のナビゲーション制御部も同様に含まれる。ユーザは、視野のズーム、方向又は位置を変えるために、キーボードの矢印制御部を操作することもできる。ユーザは画像の部分を選択して画像内に表示された目的物のより近くに移動させるために、コンピュータ・マウスを移動しまたクリッキングすることによって、又はタッチセンシティブ・スクリーンをタッピングすることによって、画像部分をさらに選択することができる。
【0047】
位置を変えることは、ダウンロードされた街路レベルの画像データに応じて、クライアント・コンピュータがサーバからより多くの街路レベルの画像データを得る必要がある。例えば、図8及び図9の両方を参照すると、街路レベルの画像910は街路視点カーソル840によって表された位置と方向(北東方向)に一致する。ユーザが制御部940を選択して位置を前方に動かす場合、北東方向における最も近い街路レベルの画像は、位置850に配置される。このため、ユーザの位置変更の選択により、位置850に関連した街路レベルの画像がダウンロードされる。
【0048】
このシステム及び方法は、現在検索された街路レベルの画像を用いて、場面を通って次の街路レベルの画像まで移動する印象を伝えるアニメーションを示す。
【0049】
この態様では、クライアント・コンピュータは、街路レベルの画像の中に示された目的物の外観と一緒に、三次元空間内の街路レベルの画像の目的物の位置に関連した情報を使用する。
【0050】
クライアント・コンピュータが新しい街路レベルの画像を表示する前に、そのプロセッサは表示すべき一連の中間画像を決定する。これらの中間画像は、現在の街路レベルの画像と次の街路レベルの画像との間の中間の視点を示す。
【0051】
例えば、ユーザが、図8に示されているように、位置840の街路レベルの画像から位置850の別の街路レベルの画像に移動していると仮定する。プロセッサは、画像を示すために多数の中間位置を計算する。ユーザに示される第1の中間画像は、例えば、次の街路レベルの画像の位置850への途中の位置846の視点から発生される。次の中間画像は、位置850にさらに近い位置847に関連して発生される。第3及び第4の中間画像は、位置848及び849に基づいて発生される。位置849は、位置850の前に示された最後の位置である。
【0052】
第1の中間画像が表示される前に、目的物の位置データが現在表示されている街路レベルの画像に対して読み出される。この目的物の位置データは、街路レベルの画像を用いて読み出される。
【0053】
プロセッサは街路レベルの画像の個々の部分を分析して、その部分を画像データと画像内に表示された目的物の地理的位置との両方に関係付ける。例えば、図10に示されているように、またこのシステム及び方法の1つの態様では、(太い線で示されている)街路レベルの画像が、三角形(細い線)に効果的に分割されている。このシステム及び方法の1つの態様では、重なり合わない三角形が使用されているが、重なった又は重ならない他の形状でも使用されうることが理解されるであろう。
【0054】
図11は、プロセスが単一の領域に適用される方法を示している。領域1120は、街路レベルの画像1110上のピクセルの三角形領域を定義している。画像1110内のピクセル位置に関して、領域の頂点は、(x1,y1)、(x2,y2)及び(x3,y3)として参照される。
【0055】
画像が地理上の目的物を表すため、ピクセルは画像内の地理上の目的物のカラー及び輝度を表す。換言すると、(x1,y1)のピクセルはビルディング320のある部分のカラー及び輝度を定義し、(x2,y2)のピクセルはビルディング320の別の部分のカラー及び輝度を定義し、また(x3,y3)のピクセルは、ビルディング322の部分のカラー及び輝度を定義する。
【0056】
領域1120内の各ピクセルが地理上の目的物に関連付けられるために、ピクセルは三次元空間内の地理的位置にも関連付けられる。
【0057】
図12は、領域内のピクセルと目的物の地理的位置に対するそれらの関連性との間の関係を概略的に例示している。画像1110内の(x1,y1)のピクセル1251は、ビルディング320の一部分、すなわち地理的位置(Lat1,Lon1,Alt1)におけるビルディングの外面の一部分を表している。画像1110内のピクセル(x2,y2)及び(x3,y3)は、同様に、それぞれ、ビルディング320及び322の外面上の地理的位置(Lat2,Lon2,Alt2)及び(Lat3,Lon3,Alt3)に一致する。このため、領域1120内の各ピクセルは、画像ピクセル(図11)と地理的位置(図12)の両方に関連付けられる。
【0058】
図12は、街路レベルの画像1110が取り込まれたときのカメラの位置1210及び向き1215、並びに中間位置(図8で参照された途中の位置846に一致している)の地理的位置1230及び向き1235も概略的に例示している。
【0059】
頂点の地理的位置は、目的物の位置データから決定されうる。例えば、目的物の位置データがサーバによって事前計算され、そして図5に関連して説明された形式で送信される場合、頂点に関連した地理的位置は頂点のピクセル位置のみに基づいて迅速にアクセスされる。
【0060】
この処理は、図10に示された各三角形領域などの各画像領域に対して繰り返される。
【0061】
クライアント・コンピュータは、第1の中間位置からの新しい街路レベルの画像を描写するために、この領域を使用する。例えば、図12に示されているように、領域1120は、中間位置1230の頂点から矢印1235の方向に表示される。(その緯度/経度及び高さなどの)領域の3D位置及び(その領域に含まれるピクセルなどの)その画像は周知であるため、その領域は、当業者には周知の画像処理技術を用いて、任意の3Dカメラ位置及び角度に基づいて2D画像で描写される。
【0062】
例えば、領域を表すデータはポリゴンとして構成される。この場合、各ポリゴンは街路レベルの画像のそれぞれの部分でテクスチャー加工され、またポリゴンの頂点の座標は頂点の地理的位置に一致する。3D座標のスクリーンに対する2D投影は、標準的なカメラ投影法を用いて計算されうる。さらに、3D空間内に透視変換(perspective transformation)を概算するために、テクスチャー・マッピング用の肯定変換(affirm transformation)が使用される。第1の中間位置に一致する座標を有するカメラ位置からポリゴンを表示する命令と一緒に、テクスチャー加工されたポリゴンが、3D表現に対応するブラウザ・プラグインに与えられる、
【0063】
そして、結果として生じる中間画像が、クライアント・コンピュータ上に表示される。例えば、街路レベルの画像が、(−現在、中間位置の視点から見られる−)クライアント・コンピュータ上のウェブ・ブラウザで表示される。
【0064】
図13は、中間位置の視点から領域を再描画する効果を例示している。街路レベルの画像1110は、サーバから読み出され、ユーザに示され、かつ中間画像を計算するために使用された当初の画像を表している。クライアント・コンピュータのプロセッサは、三角形領域1120を定義し、領域1120内に含まれた視覚情報に基づいて領域の画像情報を決定し、かつ3個の頂点1301、1302及び1303における目的物の地理的位置に基づいて、3D空間内の領域の位置を決定した。街路レベルの画像1310は、領域1120などの領域を処理することによって発生された中間画像である。そのことについては、三角形領域1320は、三角形領域1120とほぼ同じ画像データを有している。しかしながら、(例えば、図8に示された中間位置846などの)新しい視点が効果的に広げられ、(古い画像1110に対して)この領域を新しい画像1310内の異なるピクセル位置に移動する。
【0065】
また、図13に示されているように、中間画像は、ビルディング321などの当初の画像内に存在した少なくとも1つの地理上の目的物を表示する。しかしながら、この地理上の目的物は、ここでは別の視点から表示される。
【0066】
図14は、新しい視点に基づいて、領域を画像内で効果的に引き伸ばすまた移動する方法も例示している。三角形領域は、店舗を示すピクセルを含んでいる。この領域は、街路レベルの画像の境界に対してピクセル位置1410に存在した。この三角形領域が新しい視点から描画される場合、領域はその当初のピクセル位置1410とは異なる新しいピクセル位置1420に引き伸ばされて移動される。
【0067】
第1の中間画像が表示された後で、第2の中間位置に関連した中間画像が表示される。本発明の1つの態様では、同じ領域が、第2のまたその後の中間画像を表示するために使用される。例えば、領域が3D空間内に存在するテクスチャー加工されたポリゴンとしてすでに構築されている場合、クライアント・コンピュータは、第2の中間位置と一致する視点から簡単にポリゴンを再描画することができる。
【0068】
中間位置のために計算されたそれぞれの画像も、順次に示されうる。このように、図8に示されているように、位置846〜849に対して順次画像を発生及び表示することにより、位置840で取り込まれた街路レベルの画像の中で表された目的物の間を移動する外観を知らせる動画が作られる。
【0069】
任意の数の中間画像が、そのような画像が発生されるのと同じぐらい早く又は要望どおりに遅く、連続して発生されかつ表示される。一般に、少ない画像をそれらの間に長い休止を取って示すよりも、多数の画像を矢継ぎ早に示す方が、動画はより円滑に見える。
【0070】
中間画像は、最後の中間画像に達するまで表示される。これは一般に、表示される次の街路レベルの画像の地理的位置に最も近い中間位置である。最後の中間位置が表示された後で、サーバで読み出された街路レベルの画像が表示される。
【0071】
本発明の1つの態様では、クライアント・コンピュータが中間画像を発生及び表示し、一方、サーバが次の街路レベルの画像を読み出して、それをクライアント・コンピュータに送信する。このことは、画像がローディングされている間に、ユーザに何か見て面白いものを与えるという別の利点がある。さらに、中間画像の数及び個々の中間画像を表示する間の時間は、次の街路レベルの画像をロード及び表示する推定時間と一致すると計算される。
【0072】
このシステム及び方法の1つの態様では、また図15に示されているように、ウェブ・ブラウザで表示された街路レベルの画像1540内で、ユーザがマウス・カーソル1520を移動し、ビルディング1530などの離れた地理上の目的物をクリックすることによって、視点の位置と方向とを変更することができる。(引用することにより本明細書の一部をなすものとする)米国特許出願第12/038,325号において説明されているように、ビルディング1530に最も近くかつその方向を向いた街路レベルの画像をマップ・データベースから読み出すことができる。
【0073】
図16は、視点位置及び視点方向の両方が各中間画像に対して変化する態様を例示している。アイコン1610は第1の街路レベルの画像1540を表示するために使用される位置と方向(例えば、北東)とを識別する。位置/方向1615は、ユーザが選択したビルディング1530に基づいて、サーバから読み出された街路レベルの画像の位置及び方向(例えば、南西)を表す。これらの開始及び終了の位置及び方向に基づいて、プロセッサは、各その後の中間画像が位置/方向1615に位置及び方向でより近くに徐々に移動するように、中間の位置/方向1611〜1614を計算することができる。このことは、ユーザに対して特に好適である、その理由は、街路レベルの画像内の遠方のビルディングをクリックすること、及びそれに応じて新しい街路レベルの画像を表示することにより、カメラの位置及び/又は角度が大きく変わるとき、ユーザを混乱させる可能性があるからである。図16によって例示された態様により、ユーザは位置やカメラ角度の変化に対応できるようにされて、混乱が軽減される。
【0074】
1つの態様では、前述によるシステム及び方法は、ユーザが比較的大きな距離だけ離れた街路レベルの画像から移動しているときに使用される。しかしながら、隣接する街路レベルの画像などの短い距離の間を移動する場合は、前述されたように、画像をパン及びズームするシステム及び方法で十分である。
【0075】
たいていの前述された他の実施形態は互いに排他的なものではないが、独特な利点を実現するために、様々な組合せにより実行されうる。前述された機能のこれらの及び他の変形例や組合せは、クレームによって定義されるように、本発明から逸脱せずに使用されうる。実施形態に関する前述された説明は、クレームによって定義された本発明を限定するものではなく、例示するものと解釈すべきである。本発明の実施例を提供すること(及び「などの」、「含む」などと表された文節)は、本発明を特定の実施例に限定するものと解釈してはならず、むしろ、実施例は多数の可能な実施形態の1つだけを例示するように意図されていることも理解されるであろう。
【0076】
[産業上の利用可能性]
本発明は、画像マッピング・システム及び装置、並びに3D画像をディスプレイ上に表示するためのシステム及び装置を含む広い産業上の利用可能性を有しているが、これらに限定されるべきものではない。
【技術分野】
【0001】
[関連出願の相互参照]
本願は「SYSTEM AND METHOD OF INDICATING TRANSITION BETWEEN STREET LEVEL IMAGES」という名称の2009年2月24日に出願された出願番号第12/391,516号の利点を請求する。その開示内容を引用することによって本明細書の一部をなすものとする。
【背景技術】
【0002】
クーグル・マップ(Google Map)などのサービスは、地理的位置の街路レベルの画像を表示することができる。「ストリート・ビュー」("Street Views")としてクーグル・マップの中で識別されたこれらの画像は、一般に、ビルディングや他の構造体の写真を有し、またユーザが地理的位置を、トップダウンのマップの視点ではなく、人の視点から見ることができるようにしている。
【0003】
街路レベルの画像は、バラバラの位置で撮られる傾向がある。クーグル・マップ・サービスは、ユーザがある位置から他の位置に街路レベルの画像から変化できるようにする、矢印アイコンのクリッキングなどの種々の機構を提供する。
【0004】
このクーグル・マップ・サービスは、2つの街路レベルの画像間のアニメーション移行も示す。例えば、ユーザが次の画像まで前に進みたいと思うことを知らせると、クライアント・コンピュータは現在の街路レベルに素早く入るような命令を与えられる。このズーミングは、画像内に移動する印象を伝えることを目的にしている。同様に、ユーザが次の街路レベルの画像に移動する場合、現在表示されている画像は、それぞれ右又は左にパンする。
【0005】
現在の街路レベルの画像のアニメーションは、次の街路レベルの画像の上に半透明で示されうる。さらに具体的に言うと、次の街路レベルの画像が低解像度のJPEG形式で最初に送られて、現在の街路レベルの画像が低品質の画像を超えて移動し、その間に、次の画像のより高い解像度のバージョンがロードされる。現在の街路レベルの画像が移動又はズーミングを終えると、それはユーザから隠され、この時点で、第2の街路レベルの画像が表示される。
【0006】
サーバが現在の街路レベルの画像の地理的位置と表示される街路レベルの画像の位置との間の位置で撮られた街路レベルの画像にアクセスする場合、サーバはこれらの画像をクライアント・コンピュータに送って表示させることができる。多くの状況で都合が良いことに、多くのクライアント・コンピュータは、中間画像を受け取りまた表示するためには、サーバに対する十分早い接続が欠けている。
【発明の概要】
【0007】
本発明の1つの態様は、画像を表示する方法を提供する。この方法は、第1の位置でカメラが取り込んだ地理上の目的物を表す第1の画像を受け取るステップと、地理的目標物の地理的位置に関連した目的物位置データを受け取るステップと、プロセッサを用いて、第1の画像と目的物位置データとに基づいて複数の領域を決定するステップと、プロセッサを用いて、第2の位置の視点から地理上の目的物を表す第2の画像を発生するステップと、電子ディスプレイ上に第2の画像を表示するステップとを含み、各領域は第1の画像と地理的位置の部分に関連付けられ、第2の画像は第2の位置の視点から表示された複数の領域を有する。
【0008】
本発明の別の態様は、街路レベルの画像を表示する方法を提供する。この方法には、第1の位置でカメラによって取り込まれた地理上の目的物の第1の街路レベルの画像を受け取るステップと、第1の位置に関連した地理上の目的物の外面の位置を表す深さデータを受け取るステップと、プロセッサを用いて、複数のポリゴンを発生するステップと、電子ディスプレイ上で地理上の目的物の第2の街路レベルの画像を表示するステップとを含み、ポリゴンの頂点は位置に関連付けられ、頂点の位置は深さデータに基づいて決定され、また各ポリゴンは第1の街路レベルの画像の部分にさらに関連付けられて、街路レベルの画像が、あたかも第2の位置でカメラによって取り込まれたように表示される。第2の街路レベルの画像はプロセッサによって、第2の位置、複数のポリゴン、及び第2の位置に対するポリゴンの位置に基づいて計算される。
【0009】
本発明のさらに別の態様は、ユーザ入力装置及びメモリを有するシステムに関連する。このメモリは、命令、カメラによって取り込まれた地理上の目的物の街路レベルの画像を表す二次元画像データ、及びカメラに向いた目的物の外面の三次元位置を表す位置データを記憶している。このシステムは、ユーザ入力装置と通信してユーザ入力装置から受け取った情報を命令に従って処理するプロセッサと、このプロセッサと通信してプロセッサから受け取った情報を表示するディスプレイとをさらに含む。この命令には、第2の位置及び第2の向きの識別情報を受け取り、画像データの部分を様々な領域に関連付け、各領域に関連付けられた複数の点に対して外面位置データを決定し、領域の画像データ、領域に対する外面位置データ、第2の位置及び第2の向きに基づいて二次元の第2の画像を提供し、この第2の画像をディスプレイ上に表示することを含み、点の外面位置データは、その点で画像内に表示される目的物の外面部分の三次元位置を示し、またこの外面の位置データは位置データに基づいている。
【0010】
さらに別のシステムは画像を表示し、ネットワークの第1のノードに第1のコンピュータを含んでなり、この第1のコンピュータは第1の命令の集合を記憶する第1のメモリ、第1の命令の集合に従ってデータを処理する第1のプロセッサ、及び電子ディスプレイを有する。このシステムは、ネットワークの第2のノードに第2のコンピュータも含み、この第2のコンピュータは、第2の命令の集合を記憶する第2のメモリ、及び第2の命令の集合に従ってデータを処理する第2のプロセッサを含む。この第2の命令の集合は、第1のコンピュータから位置情報を受け取る命令、カメラによって取り込まれた地理上の目的物の第1の画像を第1のコンピュータに送信する命令、及び画像内に表された目的物の外面の地理的位置を定義する位置データを送信する命令を有している。第1の命令の集合には、第1の画像を受け取る命令、位置データを受け取る命令、第2の位置情報を受け取る命令、複数の画像部分に対して、各画像部分を画像部分の位置に関連付ける命令、画像部分から第2の画像を発生させる命令、及びこの第2の画像を表示する命令を含み、画像部分の位置は、その部分によって表された外面の少なくとも1つの地理的位置に基づいて計算され、第2の画像内の各画像部分の位置は、第2の位置の視点から見た場合の画像部分の外観に基づいて計算される。
【0011】
本発明のさらに別の態様は、街路レベルの画像間の移行を提供する方法に関する。この方法には、第1の地理的位置から撮られた地理上の目的物の第1の街路レベルの画像を受け取るステップ、目的物の外面の地理的位置を表す目的物の位置データを受け取るステップ、第2の地理的位置に関連付けられた第2の街路レベルの画像を要求するステップ、プロセッサを用いて、複数のポリゴンを決定するステップ、第1の地理的位置と第2の地理的位置とに基づいて、第1の中間の地理的位置を決定するステップ、プロセッサを用いて、この第1の中間の地理的位置の視点から少なくとも1つの地理上の目的物を表す第1の中間画像を決定するステップ、及びこの第1の中間画像をディスプレイに表示するステップを含み、ポリゴンの各頂点はピクセル位置と地理的位置との両方に関連付けられ、このピクセル位置は第1の画像に関連した頂点の位置を表し、各頂点の地理的位置は頂点のピクセル位置で表示される目的物の部分の地理的位置を示し、この第1の中間画像は、第1の中間の地理的位置に関連した各ポリゴンの頂点の地理的位置に基づいて、第1の中間画像内に配置された複数のポリゴンを有している。
【図面の簡単な説明】
【0012】
【図1】本発明の態様に基づいたシステムの機能図である。
【図2】本発明の態様に基づいたシステムの絵図である。
【図3】本発明の態様に基づいて、カメラによって取り込まれた街路レベルの画像である。
【図4】本発明の態様に基づいて、街路レベルの画像内の目的物の相対的な地理的位置、及びこの街路レベルの画像を取り込むために使用されたカメラの位置及び角度を機能的に例示する図である。
【図5】本発明の態様による、街路レベルの画像、カメラ位置に関連した街路レベルの画像内の目的物の地理的位置の機能図、及び目的物の位置データである。
【図6】本発明の態様による、街路レベルの画像、カメラ位置に関連した街路レベルの画像内の目的物の地理的位置の機能図、及び目的物の位置データである。
【図7】本発明の態様による、街路レベルの画像、カメラ位置に関連した街路レベルの画像内の目的物の地理的位置の機能図、及び目的物の位置データである。
【図8】本発明の態様によるスクリーン場面である。
【図9】本発明の態様によるスクリーン場面である。
【図10】本発明の態様による街路レベルの画像が付いた領域の関連性を例示する図である。
【図11】本発明の態様による街路レベルの画像が付いた領域の位置を例示する図である。
【図12】本発明の態様による街路レベルの画像及び種々の視点内の目的物の地理的位置に関連した領域の位置を例示する図である。
【図13】本発明の態様に基づいて、街路レベルの画像をそこから発生された中間の街路レベルの画像と比較した図である。
【図14】本発明の態様に基づいて、街路レベルの画像及び中間の街路レベルの画像内の領域のピクセル位置を例示する図である。
【図15】本発明の態様によるスクリーン場面である。
【図16】本発明の態様による中間の位置及び向きを例示する図である。
【図17】本発明の態様によるフローチャートである。
【図18】本発明の態様によるフローチャートである。
【図19】本発明の態様によるフローチャートである。
【発明を実施するための形態】
【0013】
1つの態様では、このシステム及び方法は、ビルディングなどの街路レベルの画像内で表示された地理上の目的物の外面の位置を決定し、この情報を使用して、画像内に表された光景を通して動きの印象を伝えるアニメーションを作り出す。このアニメーションは、全体的にクライアント・コンピュータによって作られる。このクライアント・コンピュータは、サーバから受け取った位置情報を使用して、現在の街路レベルの画像からの画像情報を用いて加工されるポリゴンを作る。クライアント・コンピュータは、現在の街路レベルの画像から次の街路レベルの画像に対して、一連の中間の地理的位置を計算することもできる。これらの中間位置は、これらの位置からのポリゴンに基づいて、一連の二次元の光景を提供及び表示するために使用される。このシステム及び方法の態様により、街路レベルの画像の中で示された地理上の目的物を通して生き生きとした動きの印象を作るための、大きな柔軟性が提供される。
【0014】
図1〜図2において示されるように、本発明の1つの態様によるシステム100は、プロセッサ210、メモリ220及び他の汎用コンピュータに一般に存在する構成部品を備えたコンピュータ110を含む。
【0015】
メモリ220は、プロセッサ210が実行できる命令240を含む、プロセッサ210がアクセス可能な命令を記憶している。このメモリ220は、プロセッサが検索、操作又は記憶することができるデータ230も含む。このメモリは、ハードディスク、メモリ・カード、ROM、RAM、DVD、CD−ROM、書込み可能メモリ、読み出し専用メモリなど、プロセッサがアクセス可能な情報を記憶することができる任意の種類でありうる。プロセッサ210は、Intel Corporation 又は AMD から入手可能な任意のよく知られているプロセッサでありうる。別の方法では、このプロセッサは、ASICなどの専用コントローラでありうる。
【0016】
命令240は、プロセッサによって(マシン・コードなどの)直接的に又は(スクリプトなどの)間接的に実行される任意の命令の集合でありうる。その点において、「命令」、「ステップ」及び「プログラム」という用語は、本願では交換可能に使用できる。これらの命令は、プロセッサが直接処理するためのオブジェクト・コード形式で、又はオンデマンドで解釈される又は事前にコンパイルされる独立ソース・コード・モジュールのスクリプト又はコレクションを含む任意の他のコンピュータ言語で保管されうる。命令の機能、方法及びルーチンは、以下でより詳細に説明される。
【0017】
データ230は、プロセッサ210によって、命令240に従って検索、記憶又は変更されうる。例えば、このシステム及び方法は、特定のデータ構造によって限定されることはないが、データはコンピュータ・レジスタの中に、複数の様々なフィールド及びレコードを有するテーブル、XML文書、又はフラット・ファイルとしてリレーショナル・データベースの中に記憶されうる。データは、これらに限定されることはないが、バイナリ値、ASCII又はユニコードなどのコンピュータが読取り可能な形式にフォーマットされることもできる。さらに、ほんの一例として、画像データは、圧縮された形式若しくは圧縮されない形式、可逆の形式若しくは(例えば、JPEGなどの)不可逆の形式、又は(例えば、SVGなどの)ベクタ・ベース・フォーマット若しくはグラフィックを描画するコンピュータ命令で記憶されるピクセルから成るビットマップとして記憶されうる。さらに、数、説明文、商標コード、ポインタ、(他のネットワーク位置を含む)他のメモリの中に記憶されたデータへの参照、又は関連したデータを計算するための関数として使用される情報などの、関連した情報を識別するに十分な任意の情報を含みうる。
【0018】
図1は、プロセッサ及びメモリを同じブロック内にあるように機能的に例示しているが、プロセッサ及びメモリは、実質的には、同じ物理的な筐体内に記憶される又は記憶されない複数のプロセッサ及びメモリを含みうることは当業者には理解されるであろう。例えば、幾つかの命令やデータは、着脱可能なCD−ROMや読取り専用のコンピュータ・チップの中の他の装置に記憶されうる。幾つかの又は全ての命令やデータは、プロセッサから物理的に離れているが、プロセッサがアクセス可能な位置に記録されうる。同様に、プロセッサは、並列に動作できる又は動作できないプロセッサの集合を実際に含みうる。
【0019】
1つの態様では、コンピュータ110は、1つ以上のクライアント・コンピュータ150、170と通信するサーバである(図1では、明確にするために、クライアント150だけを示している)。各クライアント・コンピュータは、プロセッサ、メモリ及び命令を有して、サーバ110と同様に構成されている。各クライアント・コンピュータ150、170は、人190〜191が使用することを意図されたパーソナル・コンピュータとすることができ、中央処理装置(CPU)、ディスプレイ装置160(例えば、スクリーン、プロジェクタ、タッチ・スクリーン、小型LCDスクリーン、テレビ、又はプロセッサが処理した情報を表示するように動作できる電気装置などの他の装置を有するモニタ)、CD−ROM、ハード・ドライブ、ユーザ入力装置(例えば、マウス163、キーボード、タッチ・スクリーン又はマイクロフォン)、スピーカ、モデム及び/又は(電話、ケーブルなどの)ネットワーク・インターフェース装置及びこれらの構成要素を互いに接続するために使用される全ての構成部品など、パーソナル・コンピュータの中で通常見出される全ての内部構成要素を有している。さらに、本願で説明されるシステム及び方法によるコンピュータは、命令を処理し、汎用コンピュータ、PDA、局部記憶能力がないネットワーク・コンピュータ、及びテレビ用のセットトップ・ボックスを含む人や他のコンピュータに対してデータ送信し、人や他のコンピュータからデータを受信することができる任意の装置を含みうる。
【0020】
クライアント・コンピュータ150及び170はフルサイズのパーソナル・コンピュータを備えることができるが、このシステム及び方法は、インターネットなどのネットワークを介してサーバとデータを無線で交換できるモバイル機器と接続して使用されうる。例えば、クライアント・コンピュータ170は、ブラックベリー電話(Blackberry phone)又はインターネットが可能な携帯電話などの無線可能形PDAでありうる。いずれにしても、ユーザは、小さなキーボード(ブラックベリー電話の場合)、キーボード(一般的な携帯電話の場合)、タッチ・スクリーン(PDAの場合)又はユーザが入力する任意の他の手段を使用することができる。
【0021】
クライアント・コンピュータ150及び170は、装置の地理的位置を決定するために、回路などの構成部品を備えうる。例えば、モバイル機器170は、GPS受信機155を備えうる。さらに、一例として、構成部品は、モバイル機器が携帯電話の場合、1つ以上の携帯電話タワーから携帯電話のアンテナで受信された信号などの、モバイル機器170で受信された他の信号に基づいて装置の位置を決定するためのソフトウェアを含みうる。
【0022】
サーバ110、クライアント・コンピュータ150及び170は、ネットワーク295を介して、直接的及び間接的な通信を行うことができる。図1〜図2には、ほんのわずかな数のコンピュータしか示されていないが、一般的なシステムは、それぞれ別のコンピュータがネットワーク295の別個のノードに存在する、多数の接続されたコンピュータを含みうることが理解されるであろう。ネットワーク及び介在するノードは、インターネット、ワールド・ワイド・ウェブ、イントラネット、仮想プライベート・ネットワーク、ワイド・エリア・ネットワーク、ローカル・ネットワーク、1つ以上の会社に占有の通信プロトコルを使用するプライベート・ネットワーク、イーサネット(登録商標)、WiFi及びHTTP、及び前述されたものの種々の組合せを含む様々な構成やプロトコル含みうる。そのような通信は、モデム(例えば、ダイアルアップ、ケーブル又は光ファイバー)及び無線インターフェースなどの他のコンピュータに又はそこからデータを送受信できる任意の装置によって円滑にされうる。
【0023】
情報が前述されたように送信又は受信されるときに幾つかの利点が得られるが、このシステム及び方法の他の態様は、情報の特定の送信方法に限定されることはない。例えば、幾つかの態様では、ディスク、テープ又はCD−ROMなどの媒体を介して送られることができる。別の態様では、情報は非電子的な形式で送信され、また手作業でシステムに入力されうる。さらに別の態様では、幾つかの機能がサーバ上でまた他の機能がクライアント上で実行されると示されているが、このシステム及び方法の種々の態様は、1つのプロセッサを有する単一のコンピュータによって実行されうる。
【0024】
サーバ110のマップ・データベース270は、マップ関連情報を記憶し、その少なくとも一部がクライアント装置に送信されうる。例えば、マップ・データベース270は、マップ・タイル272を記憶することができ、ここで各タイルは、特定の地理上の区域のマップ画像である。(例えば、マップがズーム・イン又はズーム・アウトされる場合でも)解像度に基づいて、1つのタイルは比較的小さい細部の状態などの全区域をカバーすることができる。他のタイルは、僅か数個の街路を高精細でカバーできる。このマップ情報は、特定のフォーマットに限定されない。例えば、画像は街路マップ、衛星画像、又はこれらの組合せを含むことがあり、(特に街路マップに関連して)ベクトルとして又は(特に衛星画像に関連して)ビットマップとして記憶されうる。種々のマップ・タイルは、それぞれ地理的位置に関連付けられるため、サーバ110は地理的位置を受け取ることに応答して、1つ以上のタイルを選択、検索及び送信することができる。
【0025】
以下に記載するように、位置は緯度/経度位置、住所、(ユーザがマップ上でクリックするときなどの)マップ上の点、ビルディングの名前、1つ以上の地理的位置を識別できる他のデータ、及び前述した範囲を含む種々の方法で表すことができるが、これらに限定されることはない。
【0026】
マップ・データベースは、街路レベルの画像274も記憶することができる。この街路レベルの画像は、地理的位置において全体的に地面に平行な方向で、カメラが撮影した地理的位置の目的物の画像を含んでいる。このため、図3に示されているように、街路レベルの画像データは、地面から数フィート上で街路を見下ろす視点から、ビルディング320〜322、歩道330〜331及び街路340などの種々の地理上の目的物を表すことができる。街路レベルの画像310は、説明を容易にするために数個の目的物しか示していないが、代表的な街路レベルの画像は、カメラが取り込むことができるのと同じぐらい詳細な、地理的位置に関連付けられた(外灯、山、木、水域、車両、人などの)多数の目的物を含むことが理解されるであろう。
【0027】
この街路レベルの画像は、車両の頂部に取り付けられたカメラによって取り込まれる。この場合、カメラ角度は地面にほぼ平行に向けられ、カメラ位置は車両の高さに対する法的限度以下(例えば、213.36〜426.72 cm(7フィート〜14フィート))である。街路レベルの画像は、地面の上の特定の高さに限定されない。例えば、街路レベルの画像はビルディングの頂部から撮影されうる。パノラマ式の街路レベルの画像は、種々のカメラ角度から撮られた複数の写真を縫合することによって作られる。
【0028】
図4は、画像が撮られたときのカメラの位置410及び角度420に関連したビルディング320〜321の位置を図示している。
【0029】
各街路レベルの画像は、カラー及び輝度値に関連したピクセルの集合として記憶されうる。例えば、画像がJPEG形式で記憶される場合、画像は行及び列のピクセルの集合として表示される。この場合、各ピクセルは、ピクセルの位置における画像のカラー及び輝度を定義する値に関係付けられる。
【0030】
街路レベルの画像274は、地理的位置に関係付けられることに加えて、一般に、画像の向きを示す情報に関係付けられる。例えば、街路レベルの画像が一般的な写真から構成される場合、向きは単純にカメラ角度であり、そして、これは、真北の東30°で地表面から2°上向いている角度として表される。街路レベルの画像が、画像に関連付けられた地理的位置の中心にある360°のパノラマ画像などのパノラマ画像である場合、向きは、地面に直接平行な角度のカメラ位置から真北を見ることと同じ画像部分を示すことができる。
【0031】
街路レベルの画像は、アナログのビデオ・カメラによって取り込まれたMPEGビデオを表示するか、又はディジタルのスチール・カメラによって取り込まれた時系列の写真を連続して表示するビデオ形式により記憶されうる。
【0032】
メモリ220は、街路レベルの画像内で地理上の目的物の地理的位置を表す目的物の位置データも記憶する。目的物の位置データは、任意の形式により記憶されうる。(「位置(location)」及び「場所(position)」という用語は、本願では交換可能に使用される。)
【0033】
1つの態様では、目的物の位置データは、カメラに向いた外面の地理的位置を表す値を記憶する。そのことについては、街路レベルの画像の各ピクセルに対して別の値が記憶される。この値は、そのピクセルで明らかにされる外面の地理的位置を表す。従って、図5に示されているように、街路レベルの画像510の行ya及び列xaのピクセル(以後、「(xa,ya)」と呼ぶ)は、点「A」におけるビルディング320の外面の一部分を表す。このピクセルは、2つの値に関連付けられる。第1の値は、カメラによって取り込まれた外面部分のカラー及び輝度である。
【0034】
そのピクセルに関連した第2の値は、その外面部分の地理的位置である。例えば、その値はその位置の緯度/経度及び高さ位置を示し、形式(Lat2°,Lon2°,Alt2メータ)の座標として表される。位置「B」のピクセルで示されたビルディング322の部分の地理的位置は、同様に、(Lat3,Lon3,Alt3)として表される。目的物の位置データ550は、(Lat1,Lon1,Alt1)としてカメラ位置の地理的位置を記憶する。外面に関連付けられないピクセルは、ゼロすなわちデフォルトの外面値に関連付けられる。
【0035】
さらに別の態様では、目的物の位置データは、画像の各ピクセルで目的物からカメラまでの距離を記憶することができる。このため、図6に示されているように、目的物の位置データ650は、カメラ位置610からピクセル「A」のビルディング320の外面までの距離620を定義することができる。同様に、目的物の位置データは、カメラ位置610からピクセル「B」のビルディング321の外面までの距離630を定義することができる。
【0036】
別の態様では、カメラに面している外面の地理的位置は、ポリゴンとして記憶される。このため、図7に示されているように、カメラに面しているビルディング320の外面720は、4つの頂点を有するポリゴン725として定義されうる。ここで、各頂点は異なる地理的位置に関連付けられている。例えば、この外面は、位置(Lat2,Lon2,Alt2)、(Lat3,Lon3,Alt3)、(Lat4,Lon4,Alt5)及び(Lat5,Lon5,Alt5)における頂点の集合として、目的物の位置データ750の中で参照されうる。他の目的物の外面は、カメラの位置に沿って同様に記憶されうる。目的物の位置データは、画像内の各ピクセルに対して、ピクセルと一致する外面をさらに定義することができる。例えば、位置「A」のピクセルに対する目的物の位置データは、ポリゴン725を参照することにより得られる。
【0037】
目的物の位置データを記憶する他の形式も、使用されうる。例えば、緯度/経度などの絶対値に関連付けられるのではなく、これらの値は相対的で任意のスケールにすることができる。さらに、たとえ(記憶されているカメラ及び外面の緯度、経度及び高さなどの)第1の種類の情報が使用される場合であっても、(緯度/経度の位置と高さとの間の相違を用いて距離を計算するなどの)他の種類の情報をそこから発生することができる。
【0038】
特定のフォーマットは、カメラで得られた街路レベルの画像の外面情報を独立して記憶できるようにしている。例えば、図7で説明されたように記憶されている目的物の位置データは、街路レベルの画像又はカメラ位置との関連なしに記憶され、そして街路レベルの画像の位置に近い地理的位置の外面を読み出すことによって取り出されうる。
【0039】
種々のシステム及び方法が、外面情報を収集するために使用されうる。ほんの一例として、レーザ距離計を使用できる。さらに、わずかに間隔を空けているが同じ光景を見ている2つのビデオ・カメラを使用するステレオ・システムも、同様に使用できる。各カメラによって得られた画像間の僅かな相異を分析することによって、画像内の各点における距離を推定することができる。さらに別の態様では、通過した光景として街路レベルの画像を得るために、特定の速度で移動する1台のビデオ・カメラを用いて、情報をコンパイルすることができる。このビデオは、街路レベルの画像として使用されるだけでなく、後に来るフレームが目的物とカメラとの間の様々な距離を取り出すために比較される(例えば、遠方の山は、街路に沿って通り過ぎる消火栓よりも遙かに長くフレーム内に留まっている)。
【0040】
図17〜図19に例示されている動作に加えて、本発明の様々な態様による多様な動作がここで説明される。以下の動作は、以下で説明される正確な順序で実行される必要はないことは理解されたい。むしろ、各種のステップは、逆の順序で又は同時に操作されうる。
【0041】
図8は、クライアント・コンピュータのディスプレイ装置で表示されるスクリーン場面を例示している。例えば、このシステム及び方法は、マップ810及び他の情報を示しているウェブ・ページを表示するグーグル・クロム(Google Chrome)(図示せず)などのインターネット・ブラウザに関連して実行されうる。プログラムは、位置が街路レベルの光景の中に示されるように要求することに関して、ユーザに大きな柔軟性を提供することができる。例えば、ユーザは、住所、ビルディングの名前又は緯度及び経度などの位置を識別するテキストを、テキストボックス805の中に入力することができる。そして、ユーザは、検索ボタン815を選択することによって、この位置をサーバに送信する。ユーザは、マウス又はキーパッドをさらに使用してマウス・カーソル860を移動して、マップ上の特定の地理的位置を識別する。さらに、プログラムは、ユーザが指定された地理的位置で街路レベルの光景を要求できるようにするボタン870又は何らかの他の機構を提供する。
【0042】
街路レベルの画像を要求する場合、マップは街路視点カーソル840を用いて、カメラ位置の位置及び向きを示すことができる。
【0043】
サーバ110は、要求された位置に基づいて適切な街路レベルの画像を読み出す。例えば、街路レベルの画像が、カメラが画像を取り込んだときの緯度/経度座標に関連付けられる場合、サーバは要求された緯度/経度に最も近い画像を読み出すことができる。
【0044】
図9に示されているように、街路レベルの画像910は、視点の位置又は向きを変更するためのユーザ選択可能制御部と一緒に、ブラウザの中で示される。この制御部は、画像をズーム・イン及びズーム・アウトするための制御部920と、北東から北西に見る方向を変更するような、視野の向きを変更するための制御部930とを含みうる。街路レベルの画像が完全360°のパノラマとしてダウンロードされた場合、視野の向きを変えることは、サーバからより多くの情報を読み出すことなく、このパノラマの異なる部分を単に表示することしか必要でない。
【0045】
ユーザは、視点の位置を変えることもできる。例えば、ユーザは制御部940を選択することによって現在見ている方向で視点を前方又は後方に移動することができる。
【0046】
視点を街路の上下に移動するために選択される、街路に沿って配置された矢印の形式の他のナビゲーション制御部も同様に含まれる。ユーザは、視野のズーム、方向又は位置を変えるために、キーボードの矢印制御部を操作することもできる。ユーザは画像の部分を選択して画像内に表示された目的物のより近くに移動させるために、コンピュータ・マウスを移動しまたクリッキングすることによって、又はタッチセンシティブ・スクリーンをタッピングすることによって、画像部分をさらに選択することができる。
【0047】
位置を変えることは、ダウンロードされた街路レベルの画像データに応じて、クライアント・コンピュータがサーバからより多くの街路レベルの画像データを得る必要がある。例えば、図8及び図9の両方を参照すると、街路レベルの画像910は街路視点カーソル840によって表された位置と方向(北東方向)に一致する。ユーザが制御部940を選択して位置を前方に動かす場合、北東方向における最も近い街路レベルの画像は、位置850に配置される。このため、ユーザの位置変更の選択により、位置850に関連した街路レベルの画像がダウンロードされる。
【0048】
このシステム及び方法は、現在検索された街路レベルの画像を用いて、場面を通って次の街路レベルの画像まで移動する印象を伝えるアニメーションを示す。
【0049】
この態様では、クライアント・コンピュータは、街路レベルの画像の中に示された目的物の外観と一緒に、三次元空間内の街路レベルの画像の目的物の位置に関連した情報を使用する。
【0050】
クライアント・コンピュータが新しい街路レベルの画像を表示する前に、そのプロセッサは表示すべき一連の中間画像を決定する。これらの中間画像は、現在の街路レベルの画像と次の街路レベルの画像との間の中間の視点を示す。
【0051】
例えば、ユーザが、図8に示されているように、位置840の街路レベルの画像から位置850の別の街路レベルの画像に移動していると仮定する。プロセッサは、画像を示すために多数の中間位置を計算する。ユーザに示される第1の中間画像は、例えば、次の街路レベルの画像の位置850への途中の位置846の視点から発生される。次の中間画像は、位置850にさらに近い位置847に関連して発生される。第3及び第4の中間画像は、位置848及び849に基づいて発生される。位置849は、位置850の前に示された最後の位置である。
【0052】
第1の中間画像が表示される前に、目的物の位置データが現在表示されている街路レベルの画像に対して読み出される。この目的物の位置データは、街路レベルの画像を用いて読み出される。
【0053】
プロセッサは街路レベルの画像の個々の部分を分析して、その部分を画像データと画像内に表示された目的物の地理的位置との両方に関係付ける。例えば、図10に示されているように、またこのシステム及び方法の1つの態様では、(太い線で示されている)街路レベルの画像が、三角形(細い線)に効果的に分割されている。このシステム及び方法の1つの態様では、重なり合わない三角形が使用されているが、重なった又は重ならない他の形状でも使用されうることが理解されるであろう。
【0054】
図11は、プロセスが単一の領域に適用される方法を示している。領域1120は、街路レベルの画像1110上のピクセルの三角形領域を定義している。画像1110内のピクセル位置に関して、領域の頂点は、(x1,y1)、(x2,y2)及び(x3,y3)として参照される。
【0055】
画像が地理上の目的物を表すため、ピクセルは画像内の地理上の目的物のカラー及び輝度を表す。換言すると、(x1,y1)のピクセルはビルディング320のある部分のカラー及び輝度を定義し、(x2,y2)のピクセルはビルディング320の別の部分のカラー及び輝度を定義し、また(x3,y3)のピクセルは、ビルディング322の部分のカラー及び輝度を定義する。
【0056】
領域1120内の各ピクセルが地理上の目的物に関連付けられるために、ピクセルは三次元空間内の地理的位置にも関連付けられる。
【0057】
図12は、領域内のピクセルと目的物の地理的位置に対するそれらの関連性との間の関係を概略的に例示している。画像1110内の(x1,y1)のピクセル1251は、ビルディング320の一部分、すなわち地理的位置(Lat1,Lon1,Alt1)におけるビルディングの外面の一部分を表している。画像1110内のピクセル(x2,y2)及び(x3,y3)は、同様に、それぞれ、ビルディング320及び322の外面上の地理的位置(Lat2,Lon2,Alt2)及び(Lat3,Lon3,Alt3)に一致する。このため、領域1120内の各ピクセルは、画像ピクセル(図11)と地理的位置(図12)の両方に関連付けられる。
【0058】
図12は、街路レベルの画像1110が取り込まれたときのカメラの位置1210及び向き1215、並びに中間位置(図8で参照された途中の位置846に一致している)の地理的位置1230及び向き1235も概略的に例示している。
【0059】
頂点の地理的位置は、目的物の位置データから決定されうる。例えば、目的物の位置データがサーバによって事前計算され、そして図5に関連して説明された形式で送信される場合、頂点に関連した地理的位置は頂点のピクセル位置のみに基づいて迅速にアクセスされる。
【0060】
この処理は、図10に示された各三角形領域などの各画像領域に対して繰り返される。
【0061】
クライアント・コンピュータは、第1の中間位置からの新しい街路レベルの画像を描写するために、この領域を使用する。例えば、図12に示されているように、領域1120は、中間位置1230の頂点から矢印1235の方向に表示される。(その緯度/経度及び高さなどの)領域の3D位置及び(その領域に含まれるピクセルなどの)その画像は周知であるため、その領域は、当業者には周知の画像処理技術を用いて、任意の3Dカメラ位置及び角度に基づいて2D画像で描写される。
【0062】
例えば、領域を表すデータはポリゴンとして構成される。この場合、各ポリゴンは街路レベルの画像のそれぞれの部分でテクスチャー加工され、またポリゴンの頂点の座標は頂点の地理的位置に一致する。3D座標のスクリーンに対する2D投影は、標準的なカメラ投影法を用いて計算されうる。さらに、3D空間内に透視変換(perspective transformation)を概算するために、テクスチャー・マッピング用の肯定変換(affirm transformation)が使用される。第1の中間位置に一致する座標を有するカメラ位置からポリゴンを表示する命令と一緒に、テクスチャー加工されたポリゴンが、3D表現に対応するブラウザ・プラグインに与えられる、
【0063】
そして、結果として生じる中間画像が、クライアント・コンピュータ上に表示される。例えば、街路レベルの画像が、(−現在、中間位置の視点から見られる−)クライアント・コンピュータ上のウェブ・ブラウザで表示される。
【0064】
図13は、中間位置の視点から領域を再描画する効果を例示している。街路レベルの画像1110は、サーバから読み出され、ユーザに示され、かつ中間画像を計算するために使用された当初の画像を表している。クライアント・コンピュータのプロセッサは、三角形領域1120を定義し、領域1120内に含まれた視覚情報に基づいて領域の画像情報を決定し、かつ3個の頂点1301、1302及び1303における目的物の地理的位置に基づいて、3D空間内の領域の位置を決定した。街路レベルの画像1310は、領域1120などの領域を処理することによって発生された中間画像である。そのことについては、三角形領域1320は、三角形領域1120とほぼ同じ画像データを有している。しかしながら、(例えば、図8に示された中間位置846などの)新しい視点が効果的に広げられ、(古い画像1110に対して)この領域を新しい画像1310内の異なるピクセル位置に移動する。
【0065】
また、図13に示されているように、中間画像は、ビルディング321などの当初の画像内に存在した少なくとも1つの地理上の目的物を表示する。しかしながら、この地理上の目的物は、ここでは別の視点から表示される。
【0066】
図14は、新しい視点に基づいて、領域を画像内で効果的に引き伸ばすまた移動する方法も例示している。三角形領域は、店舗を示すピクセルを含んでいる。この領域は、街路レベルの画像の境界に対してピクセル位置1410に存在した。この三角形領域が新しい視点から描画される場合、領域はその当初のピクセル位置1410とは異なる新しいピクセル位置1420に引き伸ばされて移動される。
【0067】
第1の中間画像が表示された後で、第2の中間位置に関連した中間画像が表示される。本発明の1つの態様では、同じ領域が、第2のまたその後の中間画像を表示するために使用される。例えば、領域が3D空間内に存在するテクスチャー加工されたポリゴンとしてすでに構築されている場合、クライアント・コンピュータは、第2の中間位置と一致する視点から簡単にポリゴンを再描画することができる。
【0068】
中間位置のために計算されたそれぞれの画像も、順次に示されうる。このように、図8に示されているように、位置846〜849に対して順次画像を発生及び表示することにより、位置840で取り込まれた街路レベルの画像の中で表された目的物の間を移動する外観を知らせる動画が作られる。
【0069】
任意の数の中間画像が、そのような画像が発生されるのと同じぐらい早く又は要望どおりに遅く、連続して発生されかつ表示される。一般に、少ない画像をそれらの間に長い休止を取って示すよりも、多数の画像を矢継ぎ早に示す方が、動画はより円滑に見える。
【0070】
中間画像は、最後の中間画像に達するまで表示される。これは一般に、表示される次の街路レベルの画像の地理的位置に最も近い中間位置である。最後の中間位置が表示された後で、サーバで読み出された街路レベルの画像が表示される。
【0071】
本発明の1つの態様では、クライアント・コンピュータが中間画像を発生及び表示し、一方、サーバが次の街路レベルの画像を読み出して、それをクライアント・コンピュータに送信する。このことは、画像がローディングされている間に、ユーザに何か見て面白いものを与えるという別の利点がある。さらに、中間画像の数及び個々の中間画像を表示する間の時間は、次の街路レベルの画像をロード及び表示する推定時間と一致すると計算される。
【0072】
このシステム及び方法の1つの態様では、また図15に示されているように、ウェブ・ブラウザで表示された街路レベルの画像1540内で、ユーザがマウス・カーソル1520を移動し、ビルディング1530などの離れた地理上の目的物をクリックすることによって、視点の位置と方向とを変更することができる。(引用することにより本明細書の一部をなすものとする)米国特許出願第12/038,325号において説明されているように、ビルディング1530に最も近くかつその方向を向いた街路レベルの画像をマップ・データベースから読み出すことができる。
【0073】
図16は、視点位置及び視点方向の両方が各中間画像に対して変化する態様を例示している。アイコン1610は第1の街路レベルの画像1540を表示するために使用される位置と方向(例えば、北東)とを識別する。位置/方向1615は、ユーザが選択したビルディング1530に基づいて、サーバから読み出された街路レベルの画像の位置及び方向(例えば、南西)を表す。これらの開始及び終了の位置及び方向に基づいて、プロセッサは、各その後の中間画像が位置/方向1615に位置及び方向でより近くに徐々に移動するように、中間の位置/方向1611〜1614を計算することができる。このことは、ユーザに対して特に好適である、その理由は、街路レベルの画像内の遠方のビルディングをクリックすること、及びそれに応じて新しい街路レベルの画像を表示することにより、カメラの位置及び/又は角度が大きく変わるとき、ユーザを混乱させる可能性があるからである。図16によって例示された態様により、ユーザは位置やカメラ角度の変化に対応できるようにされて、混乱が軽減される。
【0074】
1つの態様では、前述によるシステム及び方法は、ユーザが比較的大きな距離だけ離れた街路レベルの画像から移動しているときに使用される。しかしながら、隣接する街路レベルの画像などの短い距離の間を移動する場合は、前述されたように、画像をパン及びズームするシステム及び方法で十分である。
【0075】
たいていの前述された他の実施形態は互いに排他的なものではないが、独特な利点を実現するために、様々な組合せにより実行されうる。前述された機能のこれらの及び他の変形例や組合せは、クレームによって定義されるように、本発明から逸脱せずに使用されうる。実施形態に関する前述された説明は、クレームによって定義された本発明を限定するものではなく、例示するものと解釈すべきである。本発明の実施例を提供すること(及び「などの」、「含む」などと表された文節)は、本発明を特定の実施例に限定するものと解釈してはならず、むしろ、実施例は多数の可能な実施形態の1つだけを例示するように意図されていることも理解されるであろう。
【0076】
[産業上の利用可能性]
本発明は、画像マッピング・システム及び装置、並びに3D画像をディスプレイ上に表示するためのシステム及び装置を含む広い産業上の利用可能性を有しているが、これらに限定されるべきものではない。
【特許請求の範囲】
【請求項1】
画像を表示する方法であって、
カメラによって第1の位置で取り込まれた地理上の目的物を表す第1の画像を受け取るステップと、
前記地理上の目的物の地理的位置に関連した目的物の位置データを受け取るステップと、
プロセッサを用いて、前記第1の画像及び前記目的物の位置データに基づいて複数の領域を決定するステップであって、前記各領域は、前記第1の画像の部分と地理的位置に関連付けられるものである、決定するステップと、
プロセッサを用いて、第2の位置の視点から前記地理上の目的物を表す第2の画像を発生するステップであって、前記第2の画像は、前記第2の位置の視点から表示された複数の領域を有するものである、発生するステップと、
電子ディスプレイ上に前記第2の画像を表示するステップと
を含んでなる方法。
【請求項2】
前記第1の画像が、街路レベルの画像である請求項1に記載の方法。
【請求項3】
前記目的物の位置データが、カメラに面した目的物の外面の地理的位置と前記第1の位置との間の距離を表している請求項1に記載の方法。
【請求項4】
前記目的物の位置データが、地理上の目的物の外面部分の地理的位置を三次元空間で表している請求項1に記載の方法。
【請求項5】
前記目的物の位置データが、前記外面部分の緯度、経度及び高さを表している請求項4に記載の方法。
【請求項6】
プロセッサを用いて、第3の位置の視点から前記地理上の目的物を表す第3の画像を発生するステップと、
前記電子ディスプレイ上で、前記第2の画像が表示された後に、前記第3の画像を表示するステップであって、前記第3の画像が、前記第2の位置の視点から表示された複数の領域を含むものである、表示するステップと
をさらに含む、請求項1に記載の方法。
【請求項7】
前記第1の画像が複数のピクセルを含み、前記目的物の位置データが各ピクセルの値を含み、前記値が前記ピクセルで例示された前記目的物の部分の位置を表している請求項1に記載の方法。
【請求項8】
前記値が、前記目的物の部分と前記第1の位置との間の距離に一致するものである請求項7に記載の方法。
【請求項9】
前記領域は、前記第1の画像の部分がテクスチャー加工されたポリゴンを含むものである請求項1に記載の方法。
【請求項10】
街路レベルの画像を表示する方法であって、
第1の位置においてカメラによって取り込まれた地理上の目的物の第1の街路レベルの画像を受け取るステップと、
前記第1の位置に関連した地理上の目的物の外面の位置を表す深さデータを受け取るステップと、
プロセッサを用いて、複数のポリゴンを発生するステップであって、前記ポリゴンの頂点は位置に関連付けられ、前記頂点の位置は前記深さデータに基づいて決定され、各ポリゴンは前記第1の街路レベルの画像の部分にさらに関連付けられるものである、発生するステップと、
電子ディスプレイ上で地理上の目的物の第2の街路レベルの画像を表示するステップであって、前記第2の街路レベルの画像は、あたかも第2の位置でカメラによって取り込まれたように表示されるものであり、第2の位置、複数のポリゴン、及び前記第2の位置に対するポリゴンの位置に基づいてプロセッサによって計算されるものである、表示するステップと
を含んでなる方法。
【請求項11】
前記深さデータが、前記地理上の目的物の部分と前記第1の位置との間の距離を表しているものである請求項10に記載の方法。
【請求項12】
前記第2の位置が、前記第1の画像の部分に関するユーザの選択に基づいて決定されるものである請求項10に記載の方法。
【請求項13】
ユーザ入力装置と、
命令と、カメラによって取り込まれた地理上の目的物の街路レベルの画像を表す二次元画像データと、カメラに向いた前記目的物の外面の三次元位置を表す位置データとを記憶しているメモリと、
前記ユーザ入力装置と通信して前記ユーザ入力装置から受け取った情報を前記命令に従って処理するプロセッサと、
前記プロセッサと通信して前記プロセッサから受け取った情報を表示するディスプレイと
を含んでなり、
前記命令は、
第2の位置及び第2の向きの識別情報を受け取り、
前記画像データの部分を様々な領域に関連付け、
各領域に関連付けられた複数の点に対して外面の位置データを決定し、
前記領域の画像データ、前記領域に対する外面の位置データ、前記第2の位置及び第2の向きに基づいて、二次元の第2の画像を提供し、ここで、前記位置データに基づく前記点の外面位置データが、前記点において画像内に表示される目的物の外面部分の三次元位置を示すものであり、
前記第2の画像を前記ディスプレイ上に表示する、ことを含むシステム。
【請求項14】
前記ユーザ入力装置がマウスである請求項13に記載のシステム。
【請求項15】
ネットワークと、画像及び位置データを記憶しているサーバとをさらに含み、前記メモリが、前記サーバからネットワークを介して前記画像及びデータを受け取るものである請求項14に記載のシステム。
【請求項16】
画像を表示するシステムであって、
ネットワークの第1のノードの第1のコンピュータであって、第1の命令の集合を記憶している第1のメモリと、前記第1の命令の集合に従ってデータを処理する第1のプロセッサと、電子ディスプレイとを有している、第1のコンピュータと、
ネットワークの第2のノードの第2のコンピュータであって、第2の命令の集合を記憶している第2のメモリと、前記第2の命令の集合に従ってデータを処理する第2のプロセッサとを有している、第2のコンピュータと
を含んでなり、
前記第2の命令の集合は、前記第1のコンピュータから位置情報を受け取り、カメラによって取り込まれた地理上の目的物の第1の画像を前記第1のコンピュータに送信し、画像内に表された前記目的物の外面の地理的位置を定義する位置データを送信することを含み、
前記第1の命令の集合は、(a)第1の画像を受け取り、(b)前記位置データを受け取り、(c)第2の位置情報を受け取り、(d)複数の画像部分に対して、各画像部分を画像部分の位置に関連付け、(e)前記画像部分から第2の画像を発生させ、及び(f)前記第2の画像を表示することを含み、前記画像部分の位置が、当該画像部分によって表された外面の少なくとも1つの地理的位置に基づいて計算され、前記第2の画像内の各画像部分の位置が、前記第2の位置の視点から見た場合の前記画像部分の外観に基づいて計算されるものである、画像を表示するシステム。
【請求項17】
街路レベルの画像間の移行を提供する方法であって、
第1の地理的位置から撮られた地理上の目的物の第1の街路レベルの画像を受け取るステップと、
前記目的物の外面の地理的位置を表す前記目的物の位置データを受け取るステップと、
第2の地理的位置に関連付けられた第2の街路レベルの画像を要求するステップと、
プロセッサを用いて、複数のポリゴンを決定するステップであって、前記複数のポリゴンの各頂点は、ピクセル位置と地理的位置との両方に関連付けられ、前記ピクセル位置は前記第1の画像に関連した頂点の位置を表し、各頂点の地理的位置は頂点のピクセル位置で表示される前記目的物の部分の地理的位置を示している、複数のポリゴンを決定するステップと、
前記第1の地理的位置と前記第2の地理的位置とに基づいて、第1の中間の地理的位置を決定するステップと、
プロセッサを用いて、前記第1の中間の地理的位置の視点から前記少なくとも1つの地理上の目的物を表す第1の中間画像を決定するステップであって、前記第1の中間画像は、前記第1の中間の地理的位置に関連した各ポリゴンの頂点の地理的位置に基づいて、前記第1の中間画像内に配置された複数のポリゴンを有するものである、第1の中間画像を決定するステップと、
前記第1の中間画像をディスプレイに表示するステップと
を含んでなる方法。
【請求項18】
前記第2の地理的位置に前記第1の中間位置よりも近い第2の中間の地理的位置を決定するステップと、
プロセッサを用いて、前記第2の中間の地理的位置の視点から少なくとも1つの地理上の目的物を表す第2の中間画像を決定するステップであって、前記第2の中間画像が、前記第2の中間の地理的位置に関連した各ポリゴンの頂点の地理的位置に基づいて、前記第2の中間画像内に配置された複数のポリゴンを有するものである、第2の中間画像を決定するステップと、
前記第1の中間画像を表示した後で、前記ディスプレイ上で前記第2の中間画像を表示するステップと
をさらに含む、請求項17に記載の方法。
【請求項19】
それぞれが順序の中で以前の別の地理的位置よりも前記第2の地理的位置に近い、一連の別の地理的位置を決定するステップと、
プロセッサを用いて、各別の地理的位置の視点から少なくとも1つの地理上の目的物を表す一連の別の中間画像を決定するステップであって、前記別の中間画像が、別の中間の地理的位置に関連付けられた別の中間画像に関連した各ポリゴンの頂点の地理的位置に基づいて、各別の中間画像内に配置された複数のポリゴンを有するものである、一連の別の中間画像を決定するステップと、
前記各別の中間画像を順番に前記ディスプレイ上で表示するステップと
をさらに含む、請求項18に記載の方法。
【請求項20】
前記一連の画像が、前記第1の街路レベルの画像内に表された地理上の目的物の場面を通って移動する動画として現れるものである請求項19に記載の方法。
【請求項21】
前記ポリゴンが三角形を含むものである請求項17に記載の方法。
【請求項22】
前記ポリゴンが、前記街路レベルの画像内に配置されるときは重なり合わないものである請求項17に記載の方法。
【請求項1】
画像を表示する方法であって、
カメラによって第1の位置で取り込まれた地理上の目的物を表す第1の画像を受け取るステップと、
前記地理上の目的物の地理的位置に関連した目的物の位置データを受け取るステップと、
プロセッサを用いて、前記第1の画像及び前記目的物の位置データに基づいて複数の領域を決定するステップであって、前記各領域は、前記第1の画像の部分と地理的位置に関連付けられるものである、決定するステップと、
プロセッサを用いて、第2の位置の視点から前記地理上の目的物を表す第2の画像を発生するステップであって、前記第2の画像は、前記第2の位置の視点から表示された複数の領域を有するものである、発生するステップと、
電子ディスプレイ上に前記第2の画像を表示するステップと
を含んでなる方法。
【請求項2】
前記第1の画像が、街路レベルの画像である請求項1に記載の方法。
【請求項3】
前記目的物の位置データが、カメラに面した目的物の外面の地理的位置と前記第1の位置との間の距離を表している請求項1に記載の方法。
【請求項4】
前記目的物の位置データが、地理上の目的物の外面部分の地理的位置を三次元空間で表している請求項1に記載の方法。
【請求項5】
前記目的物の位置データが、前記外面部分の緯度、経度及び高さを表している請求項4に記載の方法。
【請求項6】
プロセッサを用いて、第3の位置の視点から前記地理上の目的物を表す第3の画像を発生するステップと、
前記電子ディスプレイ上で、前記第2の画像が表示された後に、前記第3の画像を表示するステップであって、前記第3の画像が、前記第2の位置の視点から表示された複数の領域を含むものである、表示するステップと
をさらに含む、請求項1に記載の方法。
【請求項7】
前記第1の画像が複数のピクセルを含み、前記目的物の位置データが各ピクセルの値を含み、前記値が前記ピクセルで例示された前記目的物の部分の位置を表している請求項1に記載の方法。
【請求項8】
前記値が、前記目的物の部分と前記第1の位置との間の距離に一致するものである請求項7に記載の方法。
【請求項9】
前記領域は、前記第1の画像の部分がテクスチャー加工されたポリゴンを含むものである請求項1に記載の方法。
【請求項10】
街路レベルの画像を表示する方法であって、
第1の位置においてカメラによって取り込まれた地理上の目的物の第1の街路レベルの画像を受け取るステップと、
前記第1の位置に関連した地理上の目的物の外面の位置を表す深さデータを受け取るステップと、
プロセッサを用いて、複数のポリゴンを発生するステップであって、前記ポリゴンの頂点は位置に関連付けられ、前記頂点の位置は前記深さデータに基づいて決定され、各ポリゴンは前記第1の街路レベルの画像の部分にさらに関連付けられるものである、発生するステップと、
電子ディスプレイ上で地理上の目的物の第2の街路レベルの画像を表示するステップであって、前記第2の街路レベルの画像は、あたかも第2の位置でカメラによって取り込まれたように表示されるものであり、第2の位置、複数のポリゴン、及び前記第2の位置に対するポリゴンの位置に基づいてプロセッサによって計算されるものである、表示するステップと
を含んでなる方法。
【請求項11】
前記深さデータが、前記地理上の目的物の部分と前記第1の位置との間の距離を表しているものである請求項10に記載の方法。
【請求項12】
前記第2の位置が、前記第1の画像の部分に関するユーザの選択に基づいて決定されるものである請求項10に記載の方法。
【請求項13】
ユーザ入力装置と、
命令と、カメラによって取り込まれた地理上の目的物の街路レベルの画像を表す二次元画像データと、カメラに向いた前記目的物の外面の三次元位置を表す位置データとを記憶しているメモリと、
前記ユーザ入力装置と通信して前記ユーザ入力装置から受け取った情報を前記命令に従って処理するプロセッサと、
前記プロセッサと通信して前記プロセッサから受け取った情報を表示するディスプレイと
を含んでなり、
前記命令は、
第2の位置及び第2の向きの識別情報を受け取り、
前記画像データの部分を様々な領域に関連付け、
各領域に関連付けられた複数の点に対して外面の位置データを決定し、
前記領域の画像データ、前記領域に対する外面の位置データ、前記第2の位置及び第2の向きに基づいて、二次元の第2の画像を提供し、ここで、前記位置データに基づく前記点の外面位置データが、前記点において画像内に表示される目的物の外面部分の三次元位置を示すものであり、
前記第2の画像を前記ディスプレイ上に表示する、ことを含むシステム。
【請求項14】
前記ユーザ入力装置がマウスである請求項13に記載のシステム。
【請求項15】
ネットワークと、画像及び位置データを記憶しているサーバとをさらに含み、前記メモリが、前記サーバからネットワークを介して前記画像及びデータを受け取るものである請求項14に記載のシステム。
【請求項16】
画像を表示するシステムであって、
ネットワークの第1のノードの第1のコンピュータであって、第1の命令の集合を記憶している第1のメモリと、前記第1の命令の集合に従ってデータを処理する第1のプロセッサと、電子ディスプレイとを有している、第1のコンピュータと、
ネットワークの第2のノードの第2のコンピュータであって、第2の命令の集合を記憶している第2のメモリと、前記第2の命令の集合に従ってデータを処理する第2のプロセッサとを有している、第2のコンピュータと
を含んでなり、
前記第2の命令の集合は、前記第1のコンピュータから位置情報を受け取り、カメラによって取り込まれた地理上の目的物の第1の画像を前記第1のコンピュータに送信し、画像内に表された前記目的物の外面の地理的位置を定義する位置データを送信することを含み、
前記第1の命令の集合は、(a)第1の画像を受け取り、(b)前記位置データを受け取り、(c)第2の位置情報を受け取り、(d)複数の画像部分に対して、各画像部分を画像部分の位置に関連付け、(e)前記画像部分から第2の画像を発生させ、及び(f)前記第2の画像を表示することを含み、前記画像部分の位置が、当該画像部分によって表された外面の少なくとも1つの地理的位置に基づいて計算され、前記第2の画像内の各画像部分の位置が、前記第2の位置の視点から見た場合の前記画像部分の外観に基づいて計算されるものである、画像を表示するシステム。
【請求項17】
街路レベルの画像間の移行を提供する方法であって、
第1の地理的位置から撮られた地理上の目的物の第1の街路レベルの画像を受け取るステップと、
前記目的物の外面の地理的位置を表す前記目的物の位置データを受け取るステップと、
第2の地理的位置に関連付けられた第2の街路レベルの画像を要求するステップと、
プロセッサを用いて、複数のポリゴンを決定するステップであって、前記複数のポリゴンの各頂点は、ピクセル位置と地理的位置との両方に関連付けられ、前記ピクセル位置は前記第1の画像に関連した頂点の位置を表し、各頂点の地理的位置は頂点のピクセル位置で表示される前記目的物の部分の地理的位置を示している、複数のポリゴンを決定するステップと、
前記第1の地理的位置と前記第2の地理的位置とに基づいて、第1の中間の地理的位置を決定するステップと、
プロセッサを用いて、前記第1の中間の地理的位置の視点から前記少なくとも1つの地理上の目的物を表す第1の中間画像を決定するステップであって、前記第1の中間画像は、前記第1の中間の地理的位置に関連した各ポリゴンの頂点の地理的位置に基づいて、前記第1の中間画像内に配置された複数のポリゴンを有するものである、第1の中間画像を決定するステップと、
前記第1の中間画像をディスプレイに表示するステップと
を含んでなる方法。
【請求項18】
前記第2の地理的位置に前記第1の中間位置よりも近い第2の中間の地理的位置を決定するステップと、
プロセッサを用いて、前記第2の中間の地理的位置の視点から少なくとも1つの地理上の目的物を表す第2の中間画像を決定するステップであって、前記第2の中間画像が、前記第2の中間の地理的位置に関連した各ポリゴンの頂点の地理的位置に基づいて、前記第2の中間画像内に配置された複数のポリゴンを有するものである、第2の中間画像を決定するステップと、
前記第1の中間画像を表示した後で、前記ディスプレイ上で前記第2の中間画像を表示するステップと
をさらに含む、請求項17に記載の方法。
【請求項19】
それぞれが順序の中で以前の別の地理的位置よりも前記第2の地理的位置に近い、一連の別の地理的位置を決定するステップと、
プロセッサを用いて、各別の地理的位置の視点から少なくとも1つの地理上の目的物を表す一連の別の中間画像を決定するステップであって、前記別の中間画像が、別の中間の地理的位置に関連付けられた別の中間画像に関連した各ポリゴンの頂点の地理的位置に基づいて、各別の中間画像内に配置された複数のポリゴンを有するものである、一連の別の中間画像を決定するステップと、
前記各別の中間画像を順番に前記ディスプレイ上で表示するステップと
をさらに含む、請求項18に記載の方法。
【請求項20】
前記一連の画像が、前記第1の街路レベルの画像内に表された地理上の目的物の場面を通って移動する動画として現れるものである請求項19に記載の方法。
【請求項21】
前記ポリゴンが三角形を含むものである請求項17に記載の方法。
【請求項22】
前記ポリゴンが、前記街路レベルの画像内に配置されるときは重なり合わないものである請求項17に記載の方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【公表番号】特表2012−518849(P2012−518849A)
【公表日】平成24年8月16日(2012.8.16)
【国際特許分類】
【出願番号】特願2011−551307(P2011−551307)
【出願日】平成22年2月24日(2010.2.24)
【国際出願番号】PCT/US2010/025161
【国際公開番号】WO2010/099151
【国際公開日】平成22年9月2日(2010.9.2)
【出願人】(502208397)グーグル インコーポレイテッド (161)
【Fターム(参考)】
【公表日】平成24年8月16日(2012.8.16)
【国際特許分類】
【出願日】平成22年2月24日(2010.2.24)
【国際出願番号】PCT/US2010/025161
【国際公開番号】WO2010/099151
【国際公開日】平成22年9月2日(2010.9.2)
【出願人】(502208397)グーグル インコーポレイテッド (161)
【Fターム(参考)】
[ Back to top ]