(57)【要約】【課題】  ベクトル画像をワイヤレス装置にストリーミングする方法であって、複数のベクトル基本図形を含むベクトル画像の一部分と、目標のディスプレイ幅および高さに対する要求をワイヤレス装置から受信することと、ベクトル基本図形のいずれが要求された部分と重なるように位置しているかを判定することと、その一部分で、重なっているベクトル基本図形を切り抜き、その部分に重なる切り抜きされたベクトル基本図形を送信することと、を含む。システムとコンピュータ読み取り可能格納媒体もまた記述され、請求項の対象となる。【選択図】  図２
2008520131.tif 000002
【特許請求の範囲】
【請求項１】
ベクトル画像をワイヤレス装置にストリーミングする方法であって、
複数のベクトル基本図形を含むベクトル画像の一部分と、目標のディスプレイ幅および高さに対する要求をワイヤレス装置から受信することと、
前記ベクトル基本図形のいずれが前記要求された部分と重なるように位置しているかを判定することと、
前記重なっているベクトル基本図形を、前記部分で切り抜くことと、
前記部分に重なる前記切り抜きベクトル基本図形を送信することと、を備える方法。
【請求項２】
前記要求された部分は、長方形部分である請求項１に記載の方法。
【請求項３】
前記要求された部分は、非長方形部分である請求項１に記載の方法。
【請求項４】
前記非長方形部分は、多角形部分である請求項３に記載の方法。
【請求項５】
前記非長方形部分は、円形部分である請求項３に記載の方法。
【請求項６】
前記非長方形部分は、楕円形部分である請求項３に記載の方法。
【請求項７】
ベクトル基本図形は、可視性のための拡大レベルの範囲をそれ自身に関連付け、前記要求された部分と、前記目標のディスプレイ幅および高さは、表示のためのある拡大レベルに対応し、前記送信により、可視性のための拡大レベルの関連付けられた範囲が、表示のための前記拡大レベルを含むベクトル基本図形が送信される請求項１に記載の方法。
【請求項８】
前記ベクトル画像はまた、前記ベクトル基本図形に対しての表示順を含み、前記判定により、前記要求された部分に重なるように位置する前記ベクトル基本図形に対しての誘導表示順が判定され、前記送信により、前記誘導表示順が送信される請求項１に記載の方法。
【請求項９】
前記ベクトル画像の複数のタイル領域からの各タイル領域に対して、そのようなタイル領域と重なるように位置する前記ベクトル基本図形のリストを生成することを更に備え、前記判定は、前記リストを使用して、前記要求された部分に重なるように位置する前記ベクトル基本図形を判定する請求項１に記載の方法。
【請求項１０】
ベクトル基本図形は点を含み、前記判定は、点が前記要求された部分の内部に位置するかを判定する請求項１に記載の方法。
【請求項１１】
ベクトル基本図形は線分を含み、前記判定は、線分が前記要求された部分を通過しているかを判定する請求項１に記載の方法。
【請求項１２】
ベクトル基本図形は曲線を含み、前記判定は、曲線が前記要求された部分を通過しているかを判定する請求項１に記載の方法。
【請求項１３】
ベクトル基本図形は、ベジェ曲線を含む請求項１２に記載の方法。
【請求項１４】
ベクトル基本図形は、円形弧を含む請求項１２に記載の方法。
【請求項１５】
ベクトル基本図形は、楕円形弧を含む請求項１２に記載の方法。
【請求項１６】
ベクトル基本図形は領域を含み、前記判定は、領域が前記要求された部分と交差するかを判定する請求項１に記載の方法。
【請求項１７】
ベクトル基本図形は、多角形領域を含む請求項１６に記載の方法。
【請求項１８】
ベクトル基本図形は、円形領域を含む請求項１６に記載の方法。
【請求項１９】
ベクトル基本図形は、楕円形領域を含む請求項１６に記載の方法。
【請求項２０】
ベクトル基本図形は、英数字フォントを含み、前記判定は、英数字フォントが前記要求された部分に重なるように位置しているかを判定する請求項１６に記載の方法。
【請求項２１】
ベクトル画像をワイヤレス装置にストリーミングする方法であって、
複数のベクトル基本図形を含むベクトル画像の一部分と、目標のディスプレイ幅および高さに対する要求をワイヤレス装置から受信することと、
前記要求された部分に重なるように位置する各ベクトル基本図形に対して、そのようなベクトル基本図形が前記要求された部分で切り抜かれるときに、前記切り抜きベクトル基本図形を判定することと、
更に、前記切り抜きベクトル基本図形を指定するために必要なデータが、閾値バイトサイズを超えるバイトを必要とするかを判定することと、
前記更なる判定の結果が肯定的であった場合は、前記ベクトル画像の前記要求された部分をラスター化してラスター画像部分を生成して、前記ラスター画像部分を送信し、前記更なる判定の結果が否定的であった場合は、前記切り抜きベクトル基本図形を送信することと、を備える方法。
【請求項２２】
前記要求された部分は、長方形部分である請求項２１に記載の方法。
【請求項２３】
前記要求された部分は、非長方形部分である請求項２１に記載の方法。
【請求項２４】
前記非長方形部分は、多角形部分である請求項２３に記載の方法。
【請求項２５】
前記非長方形部分は、円形部分である請求項２３に記載の方法。
【請求項２６】
前記非長方形部分は、楕円形部分である請求項２３に記載の方法。
【請求項２７】
前記閾値バイトサイズは、１画素当りの指定されたビット数に基づく請求項２１に記載の方法。
【請求項２８】
前記閾値バイトサイズは、前記要求された部分と、前記ディスプレイ幅および高さに対応する前記拡大レベルに基づく請求項２１に記載の方法。
【請求項２９】
前記閾値バイトサイズは、前記部分の寸法に基づく請求項２１に記載の方法。
【請求項３０】
ベクトル画像をワイヤレス装置にストリーミングするシステムであって、
複数のベクトル基本図形を含むベクトル画像の一部分と、目標のディスプレイ幅および高さに対する要求をワイヤレス装置から受信する受信機と、
（ｉ）前記ベクトル基本図形のいずれが前記要求された部分に重なるように位置しているかを判定し、（ｉｉ）前記重なっているベクトル基本図形を、前記部分で切り抜くグラフィックスプロセッサと、
前記部分と重なっている、前記切り抜きベクトル基本図形を送信する送信機と、を備えるシステム。
【請求項３１】
前記要求された部分は、長方形部分である請求項３０に記載のシステム。
【請求項３２】
前記要求された部分は、非長方形部分である請求項３０に記載のシステム。
【請求項３３】
前記非長方形部分は、多角形部分である請求項３２に記載のシステム。
【請求項３４】
前記非長方形部分は、円形部分である請求項３２に記載のシステム。
【請求項３５】
前記非長方形部分は、楕円形部分である請求項３２に記載のシステム。
【請求項３６】
ベクトル基本図形は、可視性のための拡大レベルの範囲をそれ自身に関連付け、前記要求された部分と、前記目標のディスプレイ幅および高さは、表示のためのある拡大レベルに対応し、前記送信により、可視性のための拡大レベルの関連付けられた範囲が、表示のための前記拡大レベルを含むベクトル基本図形が送信される請求項３０に記載のシステム。
【請求項３７】
前記ベクトル画像はまた、表示順を含み、前記グラフィックスプロセッサは、前記要求された部分に重なるように位置する前記ベクトル基本図形に対しての誘導表示順を判定し、前記送信機は前記誘導表示順を送信する請求項３０に記載のシステム。
【請求項３８】
前記グラフィックスプロセッサは、前記ベクトル画像の複数のタイル領域からの各タイル領域に対して、前記タイル領域と重なるように位置する前記ベクトル基本図形のリストを生成し、前記グラフィックスプロセッサは、前記リストを使用して、前記要求された部分に重なるように位置する前記ベクトル基本図形を判定する請求項３０に記載のシステム。
【請求項３９】
ベクトル基本図形は点を含み、前記グラフィックスプロセッサは、点が前記要求された部分の内部に位置するかを判定する請求項３０に記載のシステム。
【請求項４０】
ベクトル基本図形は線分を含み、前記グラフィックスプロセッサは、線分が前記要求された部分を通過しているかを判定する請求項３０に記載のシステム。
【請求項４１】
ベクトル基本図形は曲線を含み、前記グラフィックスプロセッサは、曲線が前記要求された部分を通過しているかを判定する請求項３０に記載のシステム。
【請求項４２】
ベクトル基本図形は、ベジェ曲線を含む請求項４１に記載のシステム。
【請求項４３】
ベクトル基本図形は、円形弧を含む請求項４１に記載のシステム。
【請求項４４】
ベクトル基本図形は、楕円形弧を含む請求項４１に記載のシステム。
【請求項４５】
ベクトル基本図形は領域を含み、前記グラフィックスプロセッサは、領域が前記要求された部分と交差するかを判定する請求項３０に記載のシステム。
【請求項４６】
ベクトル基本図形は、多角形領域を含む請求項４５に記載のシステム。
【請求項４７】
ベクトル基本図形は、円形領域を含む請求項４５に記載のシステム。
【請求項４８】
ベクトル基本図形は、楕円形領域を含む請求項４５に記載のシステム。
【請求項４９】
ベクトル基本図形は、英数字フォントを含み、前記グラフィックスプロセッサは、英数字フォントが前記要求された部分に重なるように位置しているかを判定する請求項３０に記載のシステム。
【請求項５０】
ベクトル画像をワイヤレス装置にストリーミングするシステムであって、
複数のベクトル基本図形を含むベクトル画像の一部分と、目標のディスプレイ幅および高さに対する要求をワイヤレス装置から受信する受信機と、
（ｉ）前記要求された長方形部分に重なるように位置している各ベクトル基本図形に対して、そのようなベクトル基本図形が前記要求される部分で切り抜かれるときに、前記切り抜きベクトル基本図形を判定し、（ｉｉ）前記切り抜きベクトル基本図形を指定するために必要なデータが、閾値バイトサイズを超えるバイトを必要とするかを更に判定し、（ｉｉｉ）前記更なる判定結果が肯定的であった場合は、前記ベクトル画像の前記要求された部分をラスター化してラスター画像部分を生成する、前記受信機に結合されたグラフィックスプロセッサと、
前記更なる判定の結果が肯定的であるか否かそれぞれに基づいて、前記ラスター画像部分または前記切り抜きベクトル画像を送信する、前記グラフィックスプロセッサに結合された送信機と、を含むシステム。
【請求項５１】
前記要求された部分は、長方形部分である請求項５０に記載のシステム。
【請求項５２】
前記要求された部分は、非長方形部分である請求項５０に記載のシステム。
【請求項５３】
前記非長方形部分は、多角形部分である請求項５２に記載のシステム。
【請求項５４】
前記非長方形部分は、円形部分である請求項５２に記載のシステム。
【請求項５５】
前記非長方形部分は、楕円形部分である請求項５２に記載のシステム。
【請求項５６】
前記閾値バイトサイズは、１画素当りの指定されたビット数に基づく請求項５０に記載のシステム。
【請求項５７】
前記閾値バイトサイズは、前記要求された部分と、前記ディスプレイ幅および高さに対応する前記拡大レベルに基づく請求項５０に記載のシステム。
【請求項５８】
前記閾値バイトサイズは、前記長方形部分の寸法に基づく請求項５０に記載のシステム。
【請求項５９】
プログラムコードを格納するコンピュータ読み取り可能格納媒体であって、コンピュータに、
複数のベクトル基本図形を含むベクトル画像の一部分と、目標のディスプレイ幅および高さに対する要求をワイヤレス装置から受信するステップと、
前記ベクトル基本図形のいずれが前記要求された部分と重なるように位置しているかを判断するステップと、
前記部分で前記重なっているベクトル基本図形を切り抜くステップと、
前記部分に重なる切り抜きベクトル基本図形を送信するステップと、を実行させるプログラムコードを格納するコンピュータ読み取り可能格納媒体。
【請求項６０】
プログラムコードを格納するコンピュータ読み取り可能格納媒体であって、コンピュータに、
複数のベクトル基本図形を備えるベクトル画像の一部分と、目標のディスプレイ幅および高さに対する要求をワイヤレス装置から受信するステップと、
前記要求された部分に重なるように位置する各ベクトル基本図形に対して、そのようなベクトル基本図形が前記要求された部分で切り抜かれるときに、前記切り抜きベクトル基本図形を判定するステップと、
更に、前記切り抜きベクトル基本図形を指定するために必要なデータが、閾値バイトサイズを超えるバイトを必要とするかを判定するステップと、
前記更なる判定の結果が肯定的であった場合は、前記ベクトル画像の前記要求された長方形部分をラスター化してラスター画像部分を生成して、前記ラスター画像部分を送信し、前記更なる判定の結果が否定的であった場合は、前記切り抜きベクトル基本図形を送信するステップと、を実行させるプログラムコードを格納するコンピュータ読み取り可能格納媒体。
【請求項６１】
ベクトル画像を前処理する方法であって、
任意の解像度での表示のためにラスター化できるグローバルベクトルオブジェクトの記述リストを含むベクトル画像データを受信することと、
前記ベクトル画像の、解像度レベルに関連付けられている複数のローカル長方形領域からの各ローカル領域に対して、グローバルベクトルオブジェクトとそのようなローカル領域との交差部分に対応するローカルベクトルオブジェクトを判定することと、
前記複数のローカル長方形領域からの各ローカル領域に対して、そのローカルベクトルオブジェクトの記述をコンピュータメモリ内に格納することと、を備える方法。
【請求項６２】
前記複数のローカル長方形領域は、画像の区画内のタイルに対応し、相対的に精細な区画から相対的に粗い区画までの範囲の複数の区画に対して、各区画はある解像度レベルに対応している請求項６１に記載の方法。
【請求項６３】
グローバルベクトルオブジェクトは、属性に関して指定され、前記属性は、グローバルベクトルオブジェクトが前記ベクトル画像内で見えるような解像度レベルに対しての随意的指示子を含み、ローカル長方形部分に対する前記ローカルベクトルオブジェクトは、前記ローカル長方形領域に対応する解像度レベルで見ることができるそれらのグローバルベクトルオブジェクトの交差部分のみを含む請求項６２に記載の方法。
【請求項６４】
グローバルベクトルオブジェクトとローカルベクトルオブジェクトは属性に関して指定され、前記属性は特に、色、スタイル、および少なくとも１つの制御点を含む請求項６１に記載の方法。
【請求項６５】
前記格納の前に、重複するローカルベクトルオブジェクトを削除することを更に備える請求項６１に記載の方法。
【請求項６６】
ローカル長方形領域に対応する前記解像度レベルに対して、ローカルベクトルオブジェクトが単一の画素内に限定されている場合は、前記ローカル長方形領域の前記ローカルベクトルオブジェクトを単一画素として指定することを更に備える請求項６１に記載の方法。
【請求項６７】
前記ベクトル画像は文書である請求項６１に記載の方法。
【請求項６８】
前記ベクトル画像は地図である請求項６１に記載の方法。
【請求項６９】
ベクトル画像を前処理する方法であって、
動画シーケンスに対応する複数のベクトル画像のデータであって、任意の解像度レベルでの表示のためにラスター化できるグローバルベクトルオブジェクトの記述リストを含む各ベクトル画像に対する前記データを受信することと、
前記第１ベクトル画像の、解像度レベルに関連付けられている複数のローカル長方形領域からの各ローカル領域に対して、前記第１ベクトル画像のグローバルベクトルオブジェクトとそのようなローカル領域との交差部分に対応するローカルベクトルオブジェクトを判定することと、
指標付ルックアップテーブル内に前記ローカルベクトルオブジェクトのハッシュ値を記録することと、
前記指標付ルックアップテーブルをコンピュータメモリ内に格納することと、
前記第１ベクトル画像の後の、少なくとの１つの連続するベクトル画像に対して、および前記複数のローカル長方形領域からの各ローカル領域に対して、そのような連続するベクトル画像のグローバルベクトルオブジェクトとそのようなローカル領域の交差部分に対応するローカルベクトルオブジェクトを判定することと、
前記連続するベクトル画像に対して、前記ローカルベクトルオブジェクトのいずれが既に前記ルックアップテーブル内に格納されているかを判定することと、
既に前記ルックアップテーブル内に格納されているローカルベクトルオブジェクトに対して、そのルックアップテーブル指標をコンピュータメモリ内に格納することと、
前記ルックアップテーブル内にまだ格納されてないローカルベクトルオブジェクトに対して、前記ローカルベクトルオブジェクトの記述を前記コンピュータメモリ内に格納することと、を備える方法。
【請求項７０】
キー画像として指定されたベクトル画像に対して、前記指標付ルックアップテーブルを定期的に更新することを更に備える請求項６９に記載の方法。
【請求項７１】
ベクトル画像を前処理するシステムであって、
任意の解像度レベルでの表示のためにラスター化できるグローバルベクトルオブジェクトの記述リストを含むベクトル画像データを前処理するベクトル画像プロセッサと、
前記ベクトル画像の複数の、解像度レベルに関連付けられているローカル長方形領域からの各ローカル領域に対して、グローバルベクトルオブジェクトとそのようなローカル領域との交差部に対応するローカルベクトルオブジェクトを判定するローカルベクトルオブジェクト生成子と、
各ローカル部分に対して、前記ローカルベクトルオブジェクトの記述をコンピュータメモリ内に格納するデータレコーダと、を備えるシステム。
【請求項７２】
前記複数のローカル長方形領域は、画像の区画内のタイルに対応し、相対的に精細な区画から相対的に粗い区画までの範囲の複数の区画に対して、各区画はある解像度レベルに対応している請求項７１に記載のシステム。
【請求項７３】
グローバルベクトルオブジェクトは、属性に関して指定され、前記属性は、グローバルベクトルオブジェクトが前記ベクトル画像内で見えるような解像度レベルに対しての随意的指示子を含み、ローカル長方形領域に対する前記ローカルベクトルオブジェクトは、前記ローカル長方形領域に対応する解像度レベルで見ることができるそれらのグローバルベクトルオブジェクトの交差部分のみを含む請求項７２に記載のシステム。
【請求項７４】
グローバルベクトルオブジェクトとローカルベクトルオブジェクトは属性に関して指定され、前記属性は特に、色、スタイル、および少なくとも１つの制御点を含む請求項７１に記載のシステム。
【請求項７５】
前記データレコーダは、前記格納の前に、重複するローカルベクトルオブジェクトを削除する請求項７１に記載のシステム。
【請求項７６】
ローカル長方形領域に対応する前記解像度レベルに対して、ローカルベクトルオブジェクトが単一の画素内に限定されている場合は、前記ローカルベクトルオブジェクト生成子は、前記ローカル長方形領域の前記ローカルベクトルオブジェクトを単一画素として指定する請求項７１に記載のシステム。
【請求項７７】
前記ベクトル画像は文書である請求項７１に記載のシステム。
【請求項７８】
前記ベクトル画像は地図である請求項７１に記載のシステム。
【請求項７９】
ベクトル画像を前処理するシステムであって、
動画シーケンスに対応する複数のベクトル画像に対するデータであって、任意の解像度レベルでの表示のためにラスター化できるグローバルベクトルオブジェクトの記述リストを含む各ベクトル画像に対する前記データを前処理するベクトル画像プロセッサと、
（ｉ）前記第１ベクトル画像の複数の、解像度レベルに対応するローカル長方形領域からの各ローカル領域に対して、前記第１ベクトル画像のグローバルベクトルオブジェクトとそのようなローカル領域との交差部分に対応するローカルベクトルオブジェクトを判定し、（ｉｉ）前記第１ベクトル画像の後の少なくとも１つの連続ベクトル画像に対して、および前記複数のローカル長方形領域からの各ローカル領域に対して、そのような連続するベクトル画像のグローバルベクトルオブジェクトと、そのようなローカル領域の交差部分に対応するグローバルベクトルオブジェクトを判定するローカルベクトルオブジェクト生成子と、
指標付ルックアップテーブル内に、前記ローカルベクトルオブジェクトのハッシュ値を記録するルックアップテーブル生成子と、
（ｉ）前記指標付ルックアップテーブルをコンピュータメモリ内に格納し、（ｉｉ）前記連続するベクトル画像に対して、前記ローカルベクトルオブジェクトのいずれが既に、前記ルックアップテーブルに格納されているかを判定し、（ｉｉｉ）前記ルックアップテーブル内に既に格納されているローカルベクトルオブジェクトに対して、そのルックアップテーブル指標をコンピュータメモリ内に格納し、（ｉｖ）前記ルックアップテーブル内にまだ格納されていないローカルベクトルオブジェクトに対して、前記ローカルベクトルオブジェクトの記述を前記コンピュータメモリ内に格納するデータレコーダと、を備えるシステム。
【請求項８０】
前記ローカルベクトルオブジェクト生成子と前記ルックアップテーブル生成子は、キー画像として指定されたベクトル画像に対して、前記指標付ルックアップテーブルを定期的に更新する請求項７９に記載のシステム。
【請求項８１】
プログラムコードを格納するコンピュータ読み取り可能格納媒体であって、コンピュータに、
任意の解像度での表示のためにラスター化できるグローバルベクトルオブジェクトの記述リストを含むベクトル画像に対するデータを受信するステップと、
前記ベクトル画像の、解像度レベルに関連付けられている複数のローカル長方形領域からの各ローカル領域に対して、グローバルベクトルオブジェクトとそのようなローカル領域との交差部分に対応するローカルベクトルオブジェクトを判定するステップと、
前記複数のローカル長方形領域からの各ローカル領域に対して、そのローカルベクトルオブジェクトの記述をコンピュータメモリ内に格納するステップと、を実行させるプログラムコードを格納するコンピュータ読み取り可能格納媒体。
【請求項８２】
プログラムコードを格納するコンピュータ読み取り可能格納媒体であって、コンピュータに、
動画シーケンスに対応する複数のベクトル画像に対するデータであって、任意の解像度レベルでの表示のためにラスター化できるグローバルベクトルオブジェクトの記述リストを含む各ベクトル画像に対する前記データを受信するステップと、
前記第１ベクトル画像の、解像度レベルに関連付けられている複数のローカル長方形領域からの各ローカル領域に対して、前記第１ベクトル画像のグローバルベクトルオブジェクトとそのようなローカル部分との交差部分に対応するローカルベクトルオブジェクトを判定するステップと、
指標付ルックアップテーブル内に前記ローカルベクトルオブジェクトのハッシュ値を記録するステップと、
前記指標付ルックアップテーブルをコンピュータメモリ内に格納するステップと、
前記第１ベクトル画像の後の、少なくとの１つの連続するベクトル画像に対して、および前記複数のローカル長方形領域からの各ローカル領域に対して、そのような連続するベクトル画像のグローバルベクトルオブジェクトとそのようなローカル領域の交差部分に対応するローカルベクトルオブジェクトを判定するステップと、
前記連続するベクトル画像に対して、前記ローカルベクトルオブジェクトのいずれが既に前記ルックアップテーブル内に格納されているかを判定するステップと、
既に前記ルックアップテーブル内に格納されているローカルベクトルオブジェクトに対して、そのルックアップテーブル指標をコンピュータメモリ内に格納するステップと、
まだ前記ルックアップテーブル内に格納されてないローカルベクトルオブジェクトに対して、前記ローカルベクトルオブジェクトの記述を前記コンピュータメモリ内に格納するステップと、を実行させるプログラムコードを格納するコンピュータ読み取り可能格納媒体。
【請求項８３】
ベクトル画像をクライアントコンピュータへストリーミングする方法であって、
ベクトル画像から生成され、複数のローカル長方形領域と、それぞれが前記ローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像にアクセスすることと、
クライアントコンピュータのユーザーからの、所望する画素表示解像度での表示のために、前記ベクトル画像の所望する部分に対する要求を受信することと、
前記所望する表示解像度で、前記ベクトル画像の前記所望部分を生成するために適切な、前記前処理ベクトル画像の前記複数のローカル長方形領域からの、少なくとも１つのローカル長方形領域を特定することと、
前記少なくとも１つのローカル長方形領域に関連付けられた前記ローカルベクトルオブジェクトを、前記クライアントコンピュータに送信することと、を備える方法。
【請求項８４】
前記送信では、単一ネットワーク要求内で送ることができるパケットにローカルベクトルオブジェクトを束ねる請求項８３に記載の方法。
【請求項８５】
ベクトル画像をクライアントコンピュータへストリーミングする方法であって、
ベクトル画像から生成され、複数のローカル長方形領域と、それぞれが前記ローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像にアクセスすることと、
クライアントコンピュータのユーザーからの、所望する画素表示解像度での表示のために、前記ベクトル画像の所望する部分に対する要求を受信することと、
前記所望する表示解像度で、前記ベクトル画像の前記所望部分を生成するために適切な、前記前処理ベクトル画像の前記複数のローカル長方形領域からの、少なくとも１つのローカル長方形領域を特定することと、
前記所望する表示解像度での、前記ベクトル画像の前記所望する部分を、前記少なくとも１つのローカル長方形領域に関連付けられた前記ローカルベクトルオブジェクトから生成することと、
前記ベクトル画像の前記所望する部分を、前記クライアントコンピュータに送信することと、を備える方法。
【請求項８６】
ベクトル画像をクライアントコンピュータへストリーミングする方法であって、
ベクトル画像から生成され、複数のローカル長方形領域と、それぞれが前記ローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像にアクセスすることと、
クライアントコンピュータのユーザーからの、前記複数のローカル長方形部分から、少なくとも１つの長方形領域を指定する要求を受信することと、
前記少なくとも１つのローカル長方形領域に関連付けられた前記ベクトル画像を、前記クライアントコンピュータに送信することと、を備える方法。
【請求項８７】
前記送信では、単一ネットワーク要求内で送ることができるパケットにローカルベクトルオブジェクトを束ねる請求項８６に記載の方法。
【請求項８８】
ベクトル画像を対話的に見る方法であって、
指定された解像度での表示のために、ベクトル画像の所望部分に対する要求を示すことと、
前記ベクトル画像から生成され、複数のローカル長方形領域と、それぞれが前記ローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像の前記ローカル長方形領域を、前記ベクトル画像の前記所望部分をそこから生成するのに適している複数の前記ローカル長方形領域から判定することと、
前記前処理ベクトル画像の少なくとも１つの長方形領域をサーバーコンピュータから要求することと、
前記前処理ベクトル画像の前記要求された少なくとも１つの長方形領域に関連付けられたローカルベクトルオブジェクトを受信することと、
前記受信したローカルベクトルオブジェクトを使用して、前記ベクトル画像の前記所望部分を生成することと、を備える方法。
【請求項８９】
前記受信することは、単一ネットワーク要求内のパケットに束ねられたローカルベクトルオブジェクトを受信することと、前記パケットを開けて、前記ローカルベクトルオブジェクトを抽出することと、を備える請求項８８に記載の方法。
【請求項９０】
ベクトルオブジェクトキャッシュにローカルベクトルオブジェクトを格納することを更に備え、前記要求することは、その関連付けられたローカルベクトルオブジェクトが前記ベクトルオブジェクトキャッシュ内に常駐していない場合は、ローカル長方形部分のみを要求する請求項８８に記載の方法。
【請求項９１】
ベクトル画像をクライアントコンピュータにストリーミングするシステムであって、
所望の画素表示解像度での表示のために、ベクトル画像の所望する部分に対する、クライアントコンピュータのユーザーからの要求を受信する受信機と、
（ｉ）前記ベクトル画像から生成され、複数のローカル長方形領域と、それぞれが前記ローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像にアクセスし、（ｉｉ）前記所望する表示解像度で、前記ベクトル画像の前記所望部分を生成するために適切な、前記前処理ベクトル画像の前記複数のローカル長方形領域から、少なくとも１つのローカル長方形領域を特定するベクトル画像アダプタと、
前記少なくとも１つのローカル長方形領域に関連付けられた前記ローカルベクトルオブジェクトを、前記クライアントコンピュータに送信する送信機と、を備えるシステム。
【請求項９２】
前記送信機は、単一ネットワーク要求内で送ることができるパケットにローカルベクトルオブジェクトを束ねる請求項９１に記載のシステム。
【請求項９３】
ベクトル画像をクライアントコンピュータにストリーミングするシステムであって、
所望の画素表示解像度での表示のために、ベクトル画像の所望する部分に対する、クライアントコンピュータのユーザーからの要求を受信する受信機と、
（ｉ）前記ベクトル画像から生成され、複数のローカル長方形領域と、それぞれが前記ローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像にアクセスし、（ｉｉ）前記所望する表示解像度で、前記ベクトル画像の前記所望部分を生成するために適切な、前記前処理ベクトル画像の前記複数のローカル長方形領域から、少なくとも１つのローカル長方形領域を特定するベクトル画像アダプタと、
前記所望表示解像度での、前記ベクトル画像の前記所望部分を、前記少なくとも１つのローカル長方形領域に関連付けられた前記ローカルベクトルオブジェクトから生成するベクトル画像プロセッサと、
前記ベクトル画像の前記所望部分を、前記クライアントコンピュータに送信する送信機と、を備えるシステム。
【請求項９４】
ベクトル画像をクライアントコンピュータにストリーミングするシステムであって、
クライアントコンピュータのユーザーからの、複数のローカル長方形領域から、少なくとも１つの長方形領域を指定する要求を受信する受信機と、
ベクトル画像から生成され、複数のローカル長方形領域と、それぞれが前記ローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像にアクセスするベクトル画像アダプタと、
前記少なくとも１つのローカル長方形領域に関連付けられた前記ローカルベクトルオブジェクトを、前記クライアントコンピュータに送信する送信機と、を備えるシステム。
【請求項９５】
前記送信機は、単一ネットワーク要求内で送ることができるパケットにローカルベクトルオブジェクトを束ねる請求項９４に記載のシステム。
【請求項９６】
ベクトル画像を対話的に見るシステムであって、
指定された解像度での表示のために、ベクトル画像の所望部分に対する要求を解釈するユーザーインタフェースと、
前記ベクトル画像から生成され、複数のローカル長方形領域と、それぞれが前記ローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像の少なくとも１つの長方形領域を、サーバーコンピュータから要求する送信機と、
前記前処理ベクトル画像の前記要求された少なくとも１つの長方形領域に関連付けられたローカルベクトルオブジェクトを、前記サーバーコンピュータから受信する受信機と、
（ｉ）前記ベクトル画像の前記所望部分をそこから生成するのに適切な、前記前処理ベクトル画像のローカル長方形領域を、前記複数のローカル長方形領域から判定し、（ｉｉ）前記受信したローカルベクトルオブジェクトを使用して、前記ベクトル画像の前記所望部分を生成するベクトル画像プロセッサと、を備えるシステム。
【請求項９７】
前記受信機は、パケットに束ねられたローカルベクトルオブジェクトを単一ネットワーク要求内で受信し、前記パケットを開いて、前記ローカルベクトルオブジェクトを抽出する請求項９６に記載のシステム。
【請求項９８】
ローカルベクトルオブジェクトを格納するベクトルオブジェクトキャッシュを更に備え、前記送信機は、その関連付けられたローカルベクトルオブジェクトが前記ベクトルオブジェクトキャッシュに常駐していない場合は、ローカル長方形部分のみを要求する請求項９６に記載のシステム。
【請求項９９】
プログラムコードを格納するコンピュータ読み取り可能格納媒体であって、コンピュータに、
ベクトル画像から生成され、複数のローカル長方形領域と、それぞれが前記ローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像にアクセスするステップと、
クライアントコンピュータのユーザーからの、所望する画素表示解像度での表示のために、前記ベクトル画像の所望する部分に対する要求を受信するステップと、
前記所望する表示解像度での、前記ベクトル画像の前記所望部分を生成するために適切な、少なくとも１つのローカル長方形領域を、前記前処理ベクトル画像の前記複数のローカル長方形領域から特定するステップと、
前記少なくとも１つのローカル長方形領域に関連付けられた前記ローカルベクトルオブジェクトを、前記クライアントコンピュータに送信するステップと、を実行させるプログラムコードを格納するコンピュータ読み取り可能格納媒体。
【請求項１００】
プログラムコードを格納するコンピュータ読み取り可能格納媒体であって、コンピュータに、
ベクトル画像から生成され、複数のローカル長方形領域と、それぞれが前記ローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像にアクセスするステップと、
クライアントコンピュータのユーザーからの、所望する画素表示解像度での表示のために、前記ベクトル画像の所望する部分に対する要求を受信するステップと、
前記所望する表示解像度で、前記ベクトル画像の前記所望部分を生成するために適切な、少なくとも１つのローカル長方形領域を、前記前処理ベクトル画像の前記複数のローカル長方形領域から特定するステップと、
前記所望する表示解像度での、前記ベクトル画像の前記所望する部分を、前記少なくとも１つのローカル長方形領域に関連付けられた前記ローカルベクトルオブジェクトから生成するステップと、
前記ベクトル画像の前記所望する部分を、前記クライアントコンピュータに送信するステップと、を実行させるプログラムコードを格納するコンピュータ読み取り可能格納媒体。
【請求項１０１】
プログラムコードを格納するコンピュータ読み取り可能格納媒体であって、コンピュータに、
ベクトル画像から生成され、複数のローカル長方形領域と、それぞれが前記ローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像にアクセスするステップと、
クライアントコンピュータのユーザーからの、前記複数のローカル長方形領域から、少なくとも１つの長方形領域を指定する要求を受信するステップと、
前記少なくとも１つのローカル長方形領域に関連付けられた前記ローカルベクトルオブジェクトを、前記クライアントコンピュータに送信するステップと、を実行させるプログラムコードを格納するコンピュータ読み取り可能格納媒体。
【請求項１０２】
プログラムコードを格納するコンピュータ読み取り可能格納媒体であって、コンピュータに、
指定された解像度での表示のために、ベクトル画像の所望部分に対する要求を示すステップと、
前記ベクトル画像から生成され、複数のローカル長方形領域と、それぞれが前記ローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像の前記ローカル長方形領域を、前記ベクトル画像の前記所望部分をそこから生成するのに適している複数の前記ローカル長方形領域から判定するステップと、
前記前処理ベクトル画像の少なくとも１つの長方形領域をサーバーコンピュータから要求するステップと、
前記前処理ベクトル画像の前記要求された少なくとも１つの長方形領域に関連付けられたローカルベクトルオブジェクトを、前記サーバーコンピュータから受信するステップと、
前記受信したローカルベクトルオブジェクトを使用して、前記ベクトル画像の前記所望部分を生成するステップと、を実行させるプログラムコードを格納するコンピュータ読み取り可能格納媒体。
【請求項１０３】
ベクトル動画シーケンスを対話的に見る方法であって、
第１ベクトル画像のタイル領域に関連付けられた複数のローカルベクトルオブジェクトを格納する指標付ルックアップテーブルを受信することと、
指定された解像度での表示のために、第２ベクトル画像の所望部分に対する要求を示すことと、
前記第２ベクトル画像から生成され、複数のタイル領域と、それぞれが前記タイル領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像の前記タイル領域を、前記第２ベクトル画像の前記所望部分をそこから生成するのに適している複数の前記タイル領域から判定することと、
前記前処理ベクトル画像の少なくとも１つのタイル領域を、サーバーコンピュータから要求することと、
前記前処理ベクトル画像の前記要求された少なくとも１つのタイル領域に関連付けられたローカルベクトルオブジェクトとローカルベクトルオブジェクト指標を、前記サーバーコンピュータから受信することと、
前記サーバーコンピュータから受信した前記ローカルベクトルオブジェクト指標に従って、前記指標付ルックアップテーブルからローカルベクトルオブジェクトを抽出することと、
前記受信したローカルベクトルオブジェクトと、前記抽出されたローカルベクトルオブジェクトを使用して、前記第２ベクトル画像の前記所望部分を生成することと、を備える方法。
【請求項１０４】
ベクトル動画シーケンスを対話的に見るシステムであって、
（ｉ）第１ベクトル画像のタイル領域に関連付けられた複数のローカルベクトルオブジェクトを格納する指標付ルックアップテーブルを受信し、（ｉｉ）第２ベクトル画像から生成され、複数のタイル領域と、それぞれが前記タイル領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像の少なくとも１つの要求されたタイル領域に関連付けられたローカルベクトルオブジェクトとローカルベクトルオブジェクト指標を、サーバーコンピュータから受信する受信機と、
前記サーバーコンピュータから受信したローカルベクトルオブジェクト指標に従って、前記指標付ルックアップテーブルからローカルベクトルオブジェクトを抽出するベクトル画像アダプタと、
指定された解像度での表示のために、前記第２ベクトル画像の所望部分に対する要求を示すユーザーインタフェースと、
（ｉ）前記第２ベクトル画像の前記所望部分をそこから生成するのに適している前記前処理ベクトル画像のタイル領域を判定し、（ｉｉ）前記受信したローカルベクトルオブジェクトと、前記抽出されたローカルベクトルオブジェクトを使用して、前記第２ベクトル画像の前記所望部分を生成するベクトル画像プロセッサと、
前記前処理ベクトル画像の少なくとも１つのタイル領域を、前記サーバーコンピュータから要求する送信機と、を備えるシステム。
【請求項１０５】
プログラムコードを格納するコンピュータ読み取り可能格納媒体であって、コンピュータに、
第１ベクトル画像のタイル領域に関連付けられた複数のローカルベクトルオブジェクトを格納する指標付ルックアップテーブルを受信するステップと、
指定された解像度での表示のために、第２ベクトル画像の所望部分に対する要求を示すステップと、
前記第２ベクトル画像から生成され、複数のタイル領域と、それぞれが前記タイル領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像の前記タイル領域を、前記第２ベクトル画像の前記所望部分をそこから生成するのに適している複数の前記タイル領域から判定するステップと、
前記前処理ベクトル画像の少なくとも１つのタイル領域を、サーバーコンピュータから要求するステップと、
前記前処理ベクトル画像の前記要求された少なくとも１つのタイル領域に関連付けられたローカルベクトルオブジェクトとローカルベクトルオブジェクト指標を、前記サーバーコンピュータから受信するステップと、
前記サーバーコンピュータから受信した前記ローカルベクトルオブジェクト指標に従って、前記指標付ルックアップテーブルからローカルベクトルオブジェクトを抽出するステップと、
前記受信したローカルベクトルオブジェクトと、前記抽出されたローカルベクトルオブジェクトを使用して、前記第２ベクトル画像の所望部分を生成するステップと、を実行させるプログラムコードを格納するコンピュータ読み取り可能格納媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書、電子メール添付ファイル、および地図を含むベクトル画像の、ワイヤレス装置へのストリーミングに関する。
【背景技術】
【０００２】
インターネットストリーミングは、メディアファイルをディスクに保存する必要がなく、メディアを受信しながら、受信機側において再生できるような方法でデジタルメディアを送信する技術である。ストリーミングにより、アナログの世界におけるラジオおよびテレビ放送のように、デジタルの世界における生放送が可能になる。
【０００３】
従来、ストリーミングはデジタルオーディオおよびデジタルビデオを含む、時間ベースメディアに使用されてきた。データを、サーバーコンピュータからクライアントコンピュータで受信しながら、オーディオファイルまたはビデオファイルをクライアントコンピュータに保存する必要なく、ユーザーは、オーディオデータから生成された音楽を聴き、ビデオデータから生成された動画を見ることができる。クライアントにおいて追加データが受信されると、再生されている音楽および映像は、時間に遅れずに進行する。
【０００４】
画像のストリーミングは、非時間ベースメディアに対する新しいパラダイムであり、対話的に見ることができ、格納用の大量のデータを要する画像または他のメディアに有効である。画像は単一フレームであり、時間順シーケンスではないが、それにも関わらず、データの受信中に、画像データをファイルに保存する必要なく、対話的に見ることができるということは非常に有利である。
【０００５】
高画質のラスター画像は、コンピュータディスプレイ画面では、最大解像度で表示することは一般的にはできない。その代わり、画像の低解像度バージョンは全体を、または高解像度バージョンは部分的に表示できる。ユーザーは、高解像度で画像のより小さな部分を拡大して、または、低解像度で画像のより大きな部分を縮小して、または固定解像度でそれを左右上下にパンすることにより、画像の異なる部分を対話的に見ることができる。
【０００６】
画像ストリーミングには、画像データをサーバーコンピュータからクライアントコンピュータへ、クライアントが、現在要求されている解像度で画像の現在要求されている部分を表示するために必要なデータを有するように、ユーザーの対話的視聴要求に応答して送ることが含まれる。時系列の順でクライアントに一般的にデータをプッシュする（送り出す）というオーディオおよびビデオストリーミングとは異なり、画像ストリーミングは一般的に、個々のユーザーのナビゲーションに基づいて、「オンデマンド」の順にサーバーからデータをプルする（引き出す）。このように、第１のユーザーが、ユーザー独自の順序で画像をナビゲートしている間に、第２のユーザーは、異なる順序でナビゲートできる。いずれの場合も、「ちょうど十分なだけのデータ」が各ユーザーの対話的要求を満足するために各ユーザーにストリーミングされる。
【０００７】
ラスター画像に対しての画像ストリーミングは、ラスター画像のバージョンを種々の解像度で生成し、画像を各生成された解像度の長方形ローカル画像タイル領域に分割することにより実践できる。特別な解像度における画像の特別な部分に対するユーザー要求は、１つまたは２つ以上の適切なローカル画像タイル領域を特定し、送信することにより満たされる。
【０００８】
画像ストリーミングは、サーバー側の描画、クライアント側の描画、およびサーバー側とクライアント側のハイブリッド型の描画を含む、種々のアーキテクチャを使用して実践できる。サーバー側の描画は、各対話的ユーザー要求に対して、サーバーが、適切なローカル画像タイル領域を組立て、組立てた画像を適切にトリミングし、再拡大／縮小し、単一JPEG画像を生成することが必要となる。サーバー側の描画の優位点は、画像ストリーミングが、従来のウェブブラウザが起動しているクライアントコンピュータのいずれに対しても可能であるということ、つまり、クライアント側では特別な目的のソフトウェアを必要としないということである。クライアント側の描画は、画像処理負担をサーバーからクライアントに移す。適切なローカル画像タイル領域がサーバーからクライアントへ、生の未処理データとして送信され、クライアントは、このローカル画像タイル領域を組立てる処理作業を行う。クライアント側の描画の優位点は、クライアントにおいてのより高速な性能ということである。
【０００９】
従来の時間ベースのオーディオおよびビデオストリーミングと、非時間ベースの画像ストリーミングの間の重要な違いは、描画されるデータの繰り返しという点にある。具体的には、オーディオおよびビデオシーケンスは、一般的には、ワンパス順方向再生順序で描画され、同一データは一般的には２回以上は描画されない。しかし、画像ナビゲーションは、繰り返しに特徴がある。拡大および縮小、および左右上下へパンしている間、ユーザーは同一データに何度も何度も戻ることがよくある。典型的には、同一のローカル画像タイル領域は、ユーザーが画像をナビゲートしている間に、複数回描画される。このように、画像ストリーミングの性能は、タイルのキャッシングにより多大な恩恵を受けることになる。
【００１０】
Guedaliaによる米国特許第５，９６８，１２０号（特許文献１）は、ローカル画像タイル送信による画像ストリーミングを記載している。Guedaliaによる米国特許第６，１２１，９７０号（特許文献２）と６，３５６，２８３号（特許文献３）は、インターネット映像化プロトコルを使用して、HTMLページ内の画像ファイルへの参照を修正することにより作動する、サーバー側の画像ストリーミングの実施形態を記載している。
【００１１】
Guedaliaによる米国特許第６，５３６，０４３号（特許文献４）と、Guedaliaその他による米国特許第６，７２１，９５２号（特許文献５）は、画像データの連続するまとまりが送信され、それぞれの連続するまとまりが、描画された画像の品質を改善する順次画像ストリーミングを記載している。
【００１２】
Guedaliaによる米国特許第６，７４５，２２６号（特許文献６）は、画像データを送信するプッシュプル（送り出し／引き出し）の方法およびシステムを記載しており、画像の低品質バージョンのデータがユーザーのデスクトップにプッシュされ（送り出され）、画像の品質を改善するデータはユーザーの要求により自由にプルされる（引き出される）。
【００１３】
ワイヤレス装置の出現と、大量デジタルファイルに対する送信時間のコストにより、大きなサイズのグラフィックスに対して、ラスター画像ではなく、ベクトル画像を配信することがより現実的になってきた。ベクトル画像は一般的に、点、線、および領域のような、ベクトルオブジェクトとも称されるベクトル基本図形から構成され、ラスター画像は一般的に、画素色値の配列から構成されている。ベクトルオブジェクトは典型的には、特に、色、スタイル、および１つまたは２つ以上の制御点に対する属性を含む属性により指定される。このように、大きなサイズのグラフィックスに対して、ベクトル画像ファイルは典型的に、それに対応するラスター画像ファイルよりもはるかに小さい。
【００１４】
更に、ベクトル画像は、GPSシステムにより表示される地図のように、多様な尺度で見ることができる地図に対して重要である。
【００１５】
ベクトル画像はまた、トゥルータイプフォントは一般的にはベクトルオブジェクトとして表現されるために、リッチテキスト形式の文書に対しても重要である。携帯電話のような今日のワイヤレス装置の多くは、WORDおよびPDF文書のようなリッチテキスト文書を描画する機能は持っていない。その代わりに、文書はプレーンASCIIテキストに変換される。例えば、ユーザーが自分の携帯電話で、WORD文書が添付された電子メールを受信すると、WORD文書は一般的にプレーンテキストで表示される。
【００１６】
ワイヤレス装置において、リッチテキスト文書を描画する機能がないことは、ワイヤレス通信またはワイヤレス装置プロセッサに固有の制限のためではない。リッチテキスト文書を描画しない主な理由は、そのような文書を無線で受信してメモリに格納するために必要なダウンロード時間という欠点のためである。そのような欠点を緩和するためには、画像ストリーミングを使用すべきであることは明白である。画像ストリーミングにより、文書全体をメモリに格納する必要なく、クライアントにおいて文書データを受信しながら、オンデマンドで文書の部分をクライアント装置で描画できるようになる。
【００１７】
【特許文献１】米国特許第５，９６８，１２０号
【特許文献２】米国特許第６，１２１，９７０号
【特許文献３】米国特許第６，３５６，２８３号
【特許文献４】米国特許第６，５３６，０４３号
【特許文献５】米国特許第６，７２１，９５２号
【特許文献６】米国特許第６，７４５，２２６号
【発明の開示】
【発明が解決しようとする課題】
【００１８】
しかし、従来の画像ストリーミングアプリケーションは、ラスター画像のみのストリーミングを行い、ベクトル画像のストリーミングは行わない。従来の技術を使用するときは、ベクトル画像はまずラスター画像に変換してから、サーバーコンピュータからクライアントコンピュータにストリーミングできるようになる。そのような変換により、ベクトル画像の、ラスター画像に対するサイズの優位性が明らかに削除される。
【００１９】
このように、ラスター画像への変換が必要なく、オンデマンドでユーザーが対話的にベクトル画像が見ることができるように、ベクトル画像のストリーミングを行うアプリケーションに対する需要がある。
【課題を解決するための手段】
【００２０】
本発明は、地図やリッチテキスト文書を含む、スケーラブルベクトルグラフィックス（SVG）のようなベクトル画像をストリーミングする方法とシステムを提供する。本発明の方法とシステムは、特に、サーバー側描画およびクライアント側描画を含む多様なソフトウェアとハードウェアアーキテクチャを使用して実践することができ、ベクトル画像を、ワイヤレス装置へ効率的にストリーミングすることに特に優位性がある。
【００２１】
本発明はまた、処理の２つの段階を含む。第１段階においては、ベクトル画像がタイルのように重ならずに並べられた複数寸法のデータ構造に前処理され、第２段階においては、前処理画像のタイル領域が、オンデマンドでベクトル画像を対話的にストリーミングするために使用される。
【００２２】
本発明は、リッチテキスト文書、電子メール添付ファイル、および地図をワイヤレス装置にストリーミングするときに特に有効である。
【００２３】
ベクトル画像それ自体は、解像度に依存しないが、任意の解像度レベルで描画でき、本発明により、ベクトル画像の解像度に依存する視認性の機能が可能になる。このようにして、地図内の注釈または詳細のようなベクトルオブジェクトは、選択された解像度レベルでのみ見ることができるように定めることができる。
【００２４】
本発明の好適な実施形態によれば、ベクトル画像をワイヤレス装置にストリーミングする方法であって、複数のベクトル基本図形を含むベクトル画像の一部分と、目標のディスプレイ幅および高さに対する要求をワイヤレス装置から受信することと、ベクトル基本図形のいずれが要求された部分と重なるように位置しているかを判定することと、重なっているベクトル基本図形を、該当部分で切り抜くことと、該当部分に重なる切り抜きベクトル基本図形を送信することを含む方法がこのように提供される。
【００２５】
本発明の好適な実施形態によれば、ベクトル画像をワイヤレス装置にストリーミングする方法であって、複数のベクトル基本図形を含むベクトル画像の一部分と、目標のディスプレイ幅および高さに対する要求をワイヤレス装置から受信することと、要求された部分に重なるように位置する各ベクトル基本図形に対して、そのようなベクトル基本図形が要求された部分で切り抜かれるときに、切り抜きベクトル基本図形を判定することと、更に、切り抜きベクトル基本図形を指定するために必要なデータが、閾値バイトサイズを超えるバイトを必要とするかを判定することと、更なる判定の結果が肯定的であった場合は、ベクトル画像の要求された部分をラスター化してラスター画像部分を生成して、ラスター画像部分を送信し、更なる判定の結果が否定的であった場合は、切り抜きベクトル基本図形を送信することを含む方法が更に提供される。
【００２６】
本発明の好適な実施形態によれば、ベクトル画像をワイヤレス装置にストリーミングするシステムであって、複数のベクトル基本図形を含むベクトル画像の一部分と、目標のディスプレイ幅および高さに対する要求をワイヤレス装置から受信する受信機と、（ｉ）ベクトル基本図形のいずれが要求された部分に重なるように位置しているかを判定し、（ｉｉ）重なっているベクトル基本図形を、該当部分で切り抜くグラフィックスプロセッサと、該当部分と重なっている、切り抜きベクトル基本図形を送信する送信機を含むシステムが更に提供される。
【００２７】
本発明の好適な実施形態によれば、ベクトル画像をワイヤレス装置にストリーミングするシステムであって、複数のベクトル基本図形を含むベクトル画像の一部分と、目標のディスプレイ幅および高さに対する要求をワイヤレス装置から受信する受信機と、（ｉ）要求された長方形部分に重なるように位置している各ベクトル基本図形に対して、そのようなベクトル基本図形が要求される部分で切り抜かれるときに、切り抜きベクトル基本図形を判定し、（ｉｉ）切り抜きベクトル基本図形を指定するために必要なデータが、閾値バイトサイズを超えるバイトを必要とするかを更に判定し、（ｉｉｉ）更なる判定の結果が肯定的であった場合は、ベクトル画像の要求された部分をラスター化してラスター画像部分を生成する、受信機に結合されたグラフィックスプロセッサと、更なる判定の結果が肯定的であるか否かそれぞれに基づいて、ラスター画像部分または切り抜きベクトル画像を送信する、グラフィックスプロセッサに結合された送信機を含むシステムが更に提供される。
【００２８】
本発明の好適な実施形態によれば、プログラムコードを格納するコンピュータ読み取り可能格納媒体であって、コンピュータに、複数のベクトル基本図形を含むベクトル画像の一部分と、目標のディスプレイ幅および高さに対する要求をワイヤレス装置から受信するステップと、ベクトル基本図形のいずれが要求された部分と重なるように位置しているかを判断するステップと、該当部分でベクトル基本図形の一部分を切り抜くステップと、該当部分に重なる切り抜きベクトル基本図形を送信するステップを実行させるプログラムコードを格納するコンピュータ読み取り可能格納媒体が追加的に提供される。
【００２９】
本発明の好適な実施形態によれば、プログラムコードを格納するコンピュータ読み取り可能格納媒体であって、コンピュータに、複数のベクトル基本図形を備えるベクトル画像の一部分と、目標のディスプレイ幅および高さに対する要求をワイヤレス装置から受信するステップと、要求された部分に重なるように位置する各ベクトル基本図形に対して、そのようなベクトル基本図形が要求された部分で切り抜かれるときに、切り抜きベクトル基本図形を判定するステップと、更に、切り抜きベクトル基本図形を指定するために必要なデータが、閾値バイトサイズを超えるバイトを必要とするかを判定するステップと、更なる判定の結果が肯定的であった場合は、ベクトル画像の要求された部分をラスター化してラスター画像部分を生成して、ラスター画像部分を送信し、更なる判定の結果が否定的であった場合は、切り抜きベクトル基本図形を送信するステップを実行させるプログラムコードを格納するコンピュータ読み取り可能格納媒体が更に提供される。
【００３０】
本発明の好適な実施形態によれば、ベクトル画像を前処理する方法であって、任意の解像度での表示のためにラスター化できるグローバルベクトルオブジェクトの記述リストを含むベクトル画像データを受信することと、ベクトル画像の、解像度レベルに関連付けられている複数のローカル長方形領域からの各ローカル領域に対して、グローバルベクトルオブジェクトとそのようなローカル領域との交差部分に対応するローカルベクトルオブジェクトを判定することと、複数のローカル長方形領域からの各ローカル領域に対して、そのローカルベクトルオブジェクトの記述をコンピュータメモリ内に格納することを含む方法が更に提供される。
【００３１】
本発明の好適な実施形態によれば、ベクトル画像を前処理する方法であって、動画シーケンスに対応する複数のベクトル画像のデータであって、任意の解像度レベルでの表示のためにラスター化できるグローバルベクトルオブジェクトの記述リストを含む各ベクトル画像に対するデータを受信することと、第１ベクトル画像の、解像度レベルに関連付けられている複数のローカル長方形領域からの各ローカル領域に対して、第１ベクトル画像のグローバルベクトルオブジェクトとそのようなローカル領域との交差部分に対応するローカルベクトルオブジェクトを判定することと、指標付ルックアップテーブル内にローカルベクトルオブジェクトのハッシュ値を記録することと、指標付ルックアップテーブルをコンピュータメモリ内に格納することと、第１ベクトル画像の後の、少なくとも１つの連続するベクトル画像に対して、および複数のローカル長方形領域からの各ローカル領域に対して、そのような連続するベクトル画像のグローバルベクトルオブジェクトとそのようなローカル領域の交差部分に対応するローカルベクトルオブジェクトを判定することと、連続するベクトル画像に対して、ローカルベクトルオブジェクトのいずれが既にルックアップテーブル内に格納されているかを判定することと、既にルックアップテーブル内に格納されているローカルベクトルオブジェクトに対して、そのルックアップテーブル指標をコンピュータメモリ内に格納することと、ルックアップテーブル内にまだ格納されてないローカルベクトルオブジェクトに対して、ローカルベクトルオブジェクトの記述をコンピュータメモリ内に格納することを含む方法が更に提供される。
【００３２】
本発明の好適な実施形態によれば、ベクトル画像を前処理するシステムであって、任意の解像度レベルでの表示のためにラスター化できるグローバルベクトルオブジェクトの記述リストを含むベクトル画像データを前処理するベクトル画像プロセッサと、ベクトル画像の複数の、解像度レベルに関連付けられているローカル長方形領域からの各ローカル領域に対して、グローバルベクトルオブジェクトとそのようなローカル領域との交差部に対応するローカルベクトルオブジェクトを判定するローカルベクトルオブジェクト生成子と、各ローカル部分に対して、ローカルベクトルオブジェクトの記述をコンピュータメモリ内に格納するデータレコーダを含むシステムが追加的に提供される。
【００３３】
本発明の好適な実施形態によれば、ベクトル画像を前処理するシステムであって、動画シーケンスに対応する複数のベクトル画像に対するデータであって、任意の解像度レベルでの表示のためにラスター化できるグローバルベクトルオブジェクトの記述リストを含む各ベクトル画像に対するデータを前処理するベクトル画像プロセッサと、（ｉ）第１ベクトル画像の複数の、解像度レベルに対応するローカル長方形領域からの各ローカル領域に対して、第１ベクトル画像のグローバルベクトルオブジェクトとそのようなローカル領域との交差部分に対応するローカルベクトルオブジェクトを判定し、（ｉｉ）第１ベクトル画像の後の少なくとも１つの連続ベクトル画像に対して、および複数のローカル長方形領域からの各ローカル領域に対して、そのような連続するベクトル画像のグローバルベクトルオブジェクトと、そのようなローカル領域の交差部分に対応するグローバルベクトルオブジェクトを判定するローカルベクトルオブジェクト生成子と、指標付ルックアップテーブル内に、ローカルベクトルオブジェクトのハッシュ値を記録するルックアップテーブル生成子と、（ｉ）指標付ルックアップテーブルをコンピュータメモリ内に格納し、（ｉｉ）連続するベクトル画像に対して、ローカルベクトルオブジェクトのいずれが既に、ルックアップテーブルに格納されているかを判定し、（ｉｉｉ）ルックアップテーブル内に既に格納されているローカルベクトルオブジェクトに対して、そのルックアップテーブル指標をコンピュータメモリ内に格納し、（ｉｖ）ルックアップテーブル内にまだ格納されていないローカルベクトルオブジェクトに対して、ローカルベクトルオブジェクトの記述をコンピュータメモリ内に格納するデータレコーダを含むシステムが更に提供される。
【００３４】
本発明の好適な実施形態によれば、ベクトル画像をクライアントコンピュータへストリーミングする方法であって、ベクトル画像から生成され、複数のローカル長方形領域と、それぞれがローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像にアクセスすることと、クライアントコンピュータのユーザーからの、所望する画素表示解像度での表示のために、ベクトル画像の所望する部分に対する要求を受信することと、所望する表示解像度で、ベクトル画像の所望領域を生成するために適切な、前処理ベクトル画像の複数のローカル長方形領域からの、少なくとも１つのローカル長方形領域を特定することと、少なくとも１つのローカル長方形領域に関連付けられたローカルベクトルオブジェクトを、クライアントコンピュータに送信することを含む方法が更に提供される。
【００３５】
本発明の好適な実施形態によれば、ベクトル画像をクライアントコンピュータへストリーミングする方法であって、ベクトル画像から生成され、複数のローカル長方形領域と、それぞれがローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像にアクセスすることと、クライアントコンピュータのユーザーからの、所望する画素表示解像度での表示のために、ベクトル画像の所望する領域に対する要求を受信することと、所望する表示解像度で、ベクトル画像の所望部分を生成するために適切な、前処理ベクトル画像の複数のローカル長方形領域からの、少なくとも１つのローカル長方形領域を特定することと、所望する表示解像度での、ベクトル画像の所望する部分を、少なくとも１つのローカル長方形領域に関連付けられたローカルベクトルオブジェクトから生成することと、ベクトル画像の所望する部分を、クライアントコンピュータに送信すること含む方法が更に提供される。
【００３６】
本発明の好適な実施形態によれば、ベクトル画像をクライアントコンピュータへストリーミングする方法であって、ベクトル画像から生成され、複数のローカル長方形領域と、それぞれがローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像にアクセスすることと、クライアントコンピュータのユーザーからの、複数のローカル長方形領域から、少なくとも１つの長方形領域を指定する要求を受信することと、少なくとも１つのローカル長方形領域に関連付けられたベクトル画像を、クライアントコンピュータに送信することを含む方法が追加的に提供される。
【００３７】
本発明の好適な実施形態によれば、ベクトル画像を対話的に見る方法であって、指定された解像度での表示のために、ベクトル画像の所望部分に対する要求を示すことと、ベクトル画像から生成され、複数のローカル長方形領域と、それぞれがローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像のローカル長方形領域を、ベクトル画像の所望部分をそこから生成するのに適している複数のローカル長方形領域から判定することと、前処理ベクトル画像の少なくとも１つの長方形領域をサーバーコンピュータから要求することと、前処理ベクトル画像の要求された少なくとも１つの長方形領域に関連付けられたローカルベクトルオブジェクトを受信することと、受信したローカルベクトルオブジェクトを使用して、ベクトル画像の所望部分を生成することを含む方法が更に提供される。
【００３８】
本発明の好適な実施形態によれば、ベクトル画像をクライアントコンピュータにストリーミングするシステムであって、所望の画素表示解像度での表示のために、ベクトル画像の所望する部分に対する、クライアントコンピュータのユーザーからの要求を受信する受信機と、（ｉ）ベクトル画像から生成され、複数のローカル長方形領域と、それぞれがローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像にアクセスし、（ｉｉ）所望する表示解像度で、ベクトル画像の所望部分を生成するために適切な、前処理ベクトル画像の複数のローカル長方形領域から、少なくとも１つのローカル長方形領域を特定するベクトル画像アダプタと、少なくとも１つのローカル長方形領域に関連付けられたローカルベクトルオブジェクトを、クライアントコンピュータに送信する送信機を含むステムが更に提供される。
【００３９】
本発明の好適な実施形態によれば、ベクトル画像をクライアントコンピュータにストリーミングするシステムであって、所望の画素表示解像度での表示のために、ベクトル画像の所望する部分に対する、クライアントコンピュータのユーザーからの要求を受信する受信機と、（ｉ）ベクトル画像から生成され、複数のローカル長方形領域と、それぞれがローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像にアクセスし、（ｉｉ）所望する表示解像度で、ベクトル画像の所望部分を生成するために適切な、前処理ベクトル画像の複数のローカル長方形領域から、少なくとも１つのローカル長方形領域を特定するベクトル画像アダプタと、所望表示解像度での、ベクトル画像の所望部分を、少なくとも１つのローカル長方形領域に関連付けられたローカルベクトルオブジェクトから生成するベクトル画像プロセッサと、ベクトル画像の所望部分を、クライアントコンピュータに送信する送信機を含むシステムが更に提供される。
【００４０】
本発明の好適な実施形態によれば、ベクトル画像をクライアントコンピュータにストリーミングするシステムであって、クライアントコンピュータのユーザーからの、複数のローカル長方形領域から、少なくとも１つの長方形領域を指定する要求を受信する受信機と、ベクトル画像から生成され、複数のローカル長方形領域と、それぞれがローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像にアクセスするベクトル画像アダプタと、少なくとも１つのローカル長方形領域に関連付けられたローカルベクトルオブジェクトを、クライアントコンピュータに送信する送信機を含むシステムが追加的に提供される。
【００４１】
本発明の好適な実施形態によれば、ベクトル画像を対話的に見るシステムであって、指定された解像度での表示のために、ベクトル画像の所望部分に対する要求を解釈するユーザーインタフェースと、ベクトル画像から生成され、複数のローカル長方形領域と、それぞれがローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像の少なくとも１つの長方形領域を、サーバーコンピュータから要求する送信機と、前処理ベクトル画像の要求された少なくとも１つの長方形領域に関連付けられたローカルベクトルオブジェクトを、サーバーコンピュータから受信する受信機と、（ｉ）ベクトル画像の所望部分をそこから生成するのに適切な、前処理ベクトル画像のローカル長方形領域を、複数のローカル長方形領域から判定し、（ｉｉ）受信したローカルベクトルオブジェクトを使用して、ベクトル画像の所望部分を生成するベクトル画像プロセッサを含むシステムが更に提供される。
【００４２】
本発明の好適な実施形態によれば、プログラムコードを格納するコンピュータ読み取り可能格納媒体であって、コンピュータに、任意の解像度での表示のためにラスター化できるグローバルベクトルオブジェクトの記述リストを含むベクトル画像に対するデータを受信するステップと、ベクトル画像の、解像度レベルに関連付けられている複数のローカル長方形領域からの各ローカル領域に対して、グローバルベクトルオブジェクトとそのようなローカル領域との交差部分に対応するローカルベクトルオブジェクトを判定するステップと、複数のローカル長方形領域からの各ローカル領域に対して、そのローカルベクトルオブジェクトの記述をコンピュータメモリ内に格納するステップとを実行させるプログラムコードを格納するコンピュータ読み取り可能格納媒体が更に提供される。
【００４３】
本発明の好適な実施形態によれば、プログラムコードを格納するコンピュータ読み取り可能格納媒体であって、コンピュータに、動画シーケンスに対応する複数のベクトル画像に対するデータであって、任意の解像度レベルでの表示のためにラスター化できるグローバルベクトルオブジェクトの記述リストを含む各ベクトル画像に対するデータを受信するステップと、第１ベクトル画像の、解像度レベルに関連付けられている複数のローカル長方形領域からの各ローカル領域に対して、第１ベクトル画像のグローバルベクトルオブジェクトとそのようなローカル領域との交差部分に対応するローカルベクトルオブジェクトを判定するステップと、指標付ルックアップテーブル内にローカルベクトルオブジェクトのハッシュ値を記録するステップと、指標付ルックアップテーブルをコンピュータメモリ内に格納するステップと、第１ベクトル画像の後の、少なくとの１つの連続するベクトル画像に対して、および複数のローカル長方形領域からの各ローカル領域に対して、そのような連続するベクトル画像のグローバルベクトルオブジェクトとそのようなローカル領域の交差部分に対応するローカルベクトルオブジェクトを判定するステップと、連続するベクトル画像に対して、ローカルベクトルオブジェクトのいずれが既にルックアップテーブル内に格納されているかを判定するステップと、既にルックアップテーブル内に格納されているローカルベクトルオブジェクトに対して、そのルックアップテーブル指標をコンピュータメモリ内に格納するステップと、まだルックアップテーブル内に格納されてないローカルベクトルオブジェクトに対して、ローカルベクトルオブジェクトの記述をコンピュータメモリ内に格納するステップを実行させるプログラムコードを格納するコンピュータ読み取り可能格納媒体が更に提供される。
【００４４】
本発明の好適な実施形態によれば、プログラムコードを格納するコンピュータ読み取り可能格納媒体であって、コンピュータに、ベクトル画像から生成され、複数のローカル長方形領域と、それぞれがローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像にアクセスするステップと、クライアントコンピュータのユーザーからの、所望する画素表示解像度での表示のために、ベクトル画像の所望する部分に対する要求を受信するステップと、所望する表示解像度での、ベクトル画像の所望部分を生成するために適切な、少なくとも１つのローカル長方形領域を、前処理ベクトル画像の複数のローカル長方形領域から特定するステップと、少なくとも１つのローカル長方形領域に関連付けられたローカルベクトルオブジェクトを、クライアントコンピュータに送信するステップを実行させるプログラムコードを格納するコンピュータ読み取り可能格納媒体が更に提供される。
【００４５】
本発明の好適な実施形態によれば、プログラムコードを格納するコンピュータ読み取り可能格納媒体であって、コンピュータに、ベクトル画像から生成され、複数のローカル長方形領域と、それぞれがローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像にアクセスするステップと、クライアントコンピュータのユーザーからの、所望する画素表示解像度での表示のために、ベクトル画像の所望する部分に対する要求を受信するステップと、所望する表示解像度で、ベクトル画像の所望部分を生成するために適切な、少なくとも１つのローカル長方形領域を、前処理ベクトル画像の複数のローカル長方形領域から特定するステップと、所望する表示解像度での、ベクトル画像の所望する部分を、少なくとも１つのローカル長方形領域に関連付けられたローカルベクトルオブジェクトから生成するステップと、ベクトル画像の所望する部分を、クライアントコンピュータに送信するステップを実行させるプログラムコードを格納するコンピュータ読み取り可能格納媒体が更に提供される。
【００４６】
本発明の好適な実施形態によれば、プログラムコードを格納するコンピュータ読み取り可能格納媒体であって、コンピュータに、ベクトル画像から生成され、複数のローカル長方形領域と、それぞれがローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像にアクセスするステップと、クライアントコンピュータのユーザーからの、複数のローカル長方形領域から、少なくとも１つの長方形領域を指定する要求を受信するステップと、少なくとも１つのローカル長方形領域に関連付けられたローカルベクトルオブジェクトを、クライアントコンピュータに送信するステップを実行させるプログラムコードを格納するコンピュータ読み取り可能格納媒体が追加的に提供される。
【００４７】
本発明の好適な実施形態によれば、プログラムコードを格納するコンピュータ読み取り可能格納媒体であって、コンピュータに、指定された解像度での表示のために、ベクトル画像の所望部分に対する要求を示すステップと、ベクトル画像から生成され、複数のローカル長方形領域と、それぞれがローカル長方形領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像のローカル長方形領域を、ベクトル画像の所望部分をそこから生成するのに適している複数のローカル長方形領域から判定するステップと、前処理ベクトル画像の少なくとも１つの長方形領域をサーバーコンピュータから要求するステップと、前処理ベクトル画像の要求された少なくとも１つの長方形領域に関連付けられたローカルベクトルオブジェクトを、サーバーコンピュータから受信するステップと、受信したローカルベクトルオブジェクトを使用して、ベクトル画像の所望部分を生成するステップを実行させるプログラムコードを格納するコンピュータ読み取り可能格納媒体が更に提供される。
【００４８】
本発明の好適な実施形態によれば、ベクトル動画シーケンスを対話的に見る方法であって、第１ベクトル画像のタイル領域に関連付けられた複数のローカルベクトルオブジェクトを格納する指標付ルックアップテーブルを受信することと、指定された解像度での表示のために、第２ベクトル画像の所望部分に対する要求を示すことと、第２ベクトル画像から生成され、複数のタイル領域と、それぞれがタイル領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像のタイル領域を、第２ベクトル画像の所望部分をそこから生成するのに適している複数のタイル領域から判定することと、前処理ベクトル画像の少なくとも１つのタイル領域を、サーバーコンピュータから要求することと、前処理ベクトル画像の要求された少なくとも１つのタイル領域に関連付けられたローカルベクトルオブジェクトとローカルベクトルオブジェクト指標を、サーバーコンピュータから受信することと、サーバーコンピュータから受信したローカルベクトルオブジェクト指標に従って、指標付ルックアップテーブルからローカルベクトルオブジェクトを抽出することと、受信したローカルベクトルオブジェクトと、抽出されたローカルベクトルオブジェクトを使用して、第２ベクトル画像の所望部分を生成することを含む方法が更に提供される。
【００４９】
本発明の好適な実施形態によれば、ベクトル動画シーケンスを対話的に見るシステムであって、（ｉ）第１ベクトル画像のタイル領域に関連付けられた複数のローカルベクトルオブジェクトを格納する指標付ルックアップテーブルを受信し、（ｉｉ）第２ベクトル画像から生成され、複数のタイル領域と、それぞれがタイル領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像の少なくとも１つの要求されたタイル領域に関連付けられたローカルベクトルオブジェクトとローカルベクトルオブジェクト指標を、サーバーコンピュータから受信する受信機と、サーバーコンピュータから受信したローカルベクトルオブジェクト指標に従って、指標付ルックアップテーブルからローカルベクトルオブジェクトを抽出するベクトル画像アダプタと、指定された解像度での表示のために、第２ベクトル画像の所望部分に対する要求を示すユーザーインタフェースと、（ｉ）第２ベクトル画像の所望部分をそこから生成するのに適している前処理ベクトル画像のタイル領域を判定し、（ｉｉ）受信したローカルベクトルオブジェクトと、抽出されたローカルベクトルオブジェクトを使用して、第２ベクトル画像の所望部分を生成するベクトル画像プロセッサと、前処理ベクトル画像の少なくとも１つのタイル領域を、サーバーコンピュータから要求する送信機を含むシステムが更に提供される。
【００５０】
本発明の好適な実施形態によれば、プログラムコードを格納するコンピュータ読み取り可能格納媒体であって、コンピュータに、第１ベクトル画像のタイル領域に関連付けられた複数のローカルベクトルオブジェクトを格納する指標付ルックアップテーブルを受信するステップと、指定された解像度での表示のために、第２ベクトル画像の所望部分に対する要求を示すステップと、第２ベクトル画像から生成され、複数のタイル領域と、それぞれがタイル領域の１つに関連付けられている複数のローカルベクトルオブジェクトを含む前処理ベクトル画像のタイル領域を、第２ベクトル画像の所望部分をそこから生成するのに適している複数のタイル領域から判定するステップと、前処理ベクトル画像の少なくとも１つのタイル領域を、サーバーコンピュータから要求するステップと、前処理ベクトル画像の要求された少なくとも１つのタイル領域に関連付けられたローカルベクトルオブジェクトとローカルベクトルオブジェクト指標を、サーバーコンピュータから受信するステップと、サーバーコンピュータから受信したローカルベクトルオブジェクト指標に従って、指標付ルックアップテーブルからローカルベクトルオブジェクトを抽出するステップと、受信したローカルベクトルオブジェクトと、抽出されたローカルベクトルオブジェクトを使用して、第２ベクトル画像の所望部分を生成するステップを実行させるプログラムコードを格納するコンピュータ読み取り可能格納媒体が追加的に提供される。
【発明を実施するための最良の形態】
【００５１】
本発明は、スケーラブルベクトルグラフィックス（SVG）のようなベクトル画像を、サーバーコンピュータから複数のクライアントコンピュータへストリーミングする方法とシステムに関する。
【００５２】
本発明は好ましくは、サーバーコンピュータがメディアをクライアントコンピュータに配信する、従来のクライアントおよびサーバーコンピュータのネットワーク内で実践される。サーバーおよびクライアントコンピュータは、従来のコンピューティング装置であってよく、それぞれは中央処理装置と、プログラムとデータを格納するメモリ装置と、マウスとキーボードを含む入力装置と、出力表示装置を含む。好ましくは、中央処理装置と、メモリ装置と、マウスとキーボードとディスプレイのデバイスドライバは、従来のデータバスを使用してお互いに通信可能に結合される。好ましくは、サーバーコンピュータはウェブサーバーソフトウェアを起動し、クライアントコンピュータはウェブブラウザソフトウェアを起動する。
【００５３】
下記の記述により、本発明は、装置が相互に通信する処理手段、プログラムおよびデータ格納手段、および入力および表示手段を含む限り、特に携帯情報端末（PDA）、携帯メディアプレーヤー、および携帯電話を含む移動コンピューティング装置内で優位的に実践できるということは理解されよう。
【００５４】
本発明は、処理の２つの段階を含む。つまり、下記に詳細に記述する前処理段階と、画像ストリーミング段階である。
【００５５】
前処理段階
【００５６】
本発明の好適な実施形態によれば、ストリーミングされる画像ベクトルは、タイルのように重ならずに並べられた複数解像度のデータ構造に前処理される。具体的には、グローバルベクトルオブジェクトのリストとして符号化されるオリジナルベクトル画像の複数解像度が生成され、そのような各解像度は、長方形タイル領域の格子に分割される。例えば、ベクトル画像は７レベルの画素解像度、つまり、（レベル１）２００×３００画素、（レベル２）４００×６００画素、（レベル３）８００×１２００画素、（レベル４）１６００×２４００画素、（レベル５）３２００×４８００画素、（レベル６）６４００×９６００画素、および（レベル７）１２８００×１９２００画素で生成できる。そのような各レベルの解像度は、１００×１００画素の隣接するタイル領域に分割される。
【００５７】
ベクトルオブジェクトは一般的に解像度に依存しないことは理解されるであろう。このため、ベクトルオブジェクトは任意の所望解像度で生成できる。このように、ラスター画像とは異なり、ベクトル画像は「真の」解像度というものを有しない。その代わり、ベクトル画像の寸法が正規化されており、画像が１.０単位の幅と高さを有しているときは、各１００×１００のタイル領域は１.０×１.０単位正方形に対して正規化された長方形に対応する。レベル１において、各タイル領域は０.５×０.３３３３３３３の正規化寸法を有し、全体画像は、そのようなタイル領域の２×３の配列を含む。レベル２においては、各タイル領域は０.２５×０.１６６６６６７の正規化寸法を有し、全体画像は、そのようなタイル領域の４×６の配列を含む。レベル７においては、各タイル領域は０.００７８１２５×０.００５２０８３の正規化寸法を有し、全体画像は、そのようなタイル領域の１２８×１９２の配列を含む。解像度がレベルからレベルへと増すにつれ、各１００×１００画素タイル領域は、全体画像のより小さな部分を占めるようになるということは理解されよう。各個々のタイル領域は、特別なレベルの解像度に対応し、正規化された単位正方形のサブ領域に対応する。
【００５８】
解像度のレベル数、および解像度の各レベルの画素寸法は任意であり、パラメータにより指定できるということは理解されよう。同様に、タイル領域のサイズも、解像度のあるレベルから他のレベルで変化してもよい。
【００５９】
好ましくは、各１００×１００画素タイル領域は、ローカルベクトルオブジェクトのリストとしてデータ構造内で指定され、タイル領域に対応する領域で、グローバルベクトルオブジェクトと称せられる、オリジナルベクトル画像のベクトルオブジェクトと交差することにより決定される。つまり、タイル領域に関連付けられたローカルベクトルオブジェクトは、グローバルベクトルオブジェクトをタイル領域で切り抜くことにより生成される。一般的に、オリジナルベクトル画像のグローバルベクトルオブジェクトのいくつかは、その領域とまったく交差しないこともある。このように、各タイル領域は、それ自身のローカルベクトルオブジェクトのリストとして符号化され、グローバルベクトルオブジェクトのいくつかの、タイル領域との交差部分に対応する。
【００６０】
解像度の低いレベルにおいて、ローカルベクトルオブジェクトのいくつかは、単一画素のサイズ内に縮小される。本発明の好適な実施形態によれば、そのような場合、ローカルベクトルオブジェクトは、そのような画素を含むタイル領域内の単一画素として符号化される。
【００６１】
同様に、解像度のレベルが高くなるにつれて、地図内の道路や、注釈のようないくつかの付加的な詳細が見えるようになる。逆に、解像度のレベルが高くなるにつれて、国境のような、地図がローカルな近隣地域レベルまで拡大されたときには存在する必要がなくなるいくつかの詳細が省略される。本発明の好適な実施形態によれば、グローバルベクトルオブジェクトは、指定された解像度においてのみ現れるように指定できる。そのようなグローバルベクトルオブジェクトは、そのグローバルベクトルオブジェクトがタイル領域と交差したとしても、解像度の非指定レベルに対応するタイル領域に対しては、切り抜きされない。
【００６２】
更に、解像度の高いレベルにおいては、異なるグローバルベクトルオブジェクトが単一のタイル領域内で同一の交差部分を有することは可能である。具体的には、交差部分は、ローカルベクトルオブジェクトが、特に、色、スタイル、および制御点を含む同一の属性を有しているならば、同一と見なされる。本発明によれば、重複するローカルベクトルオブジェクトは削除される。
【００６３】
ベクトルオブジェクトを、低解像度のタイル領域内において単一画素として符号化し、そのような解像度では見えるようには指定されていない低解像度のタイル領域からベクトルオブジェクトを除き、ベクトルオブジェクトの重複する交差部分を削除することは、個々のタイル領域を符号化しているベクトルオブジェクトリストを「間引き」し、結果としてのタイルのように重ならずに並べられた複数解像度のデータ構造の全体のサイズを縮小することに役立つ。
【００６４】
ここで図１Ａを参照すると、図１Ａは、本発明の好適な実施形態による、ベクトル画像用の複数解像度のタイル領域の簡略化された例図である。図１Ａには、粗い分割１１０から、より精細な分割１２０と、更に精細な分割１３０までの３つの分割が示されている。各分割は、それぞれ長方形タイル領域１４０、１５０、および１６０を含んでいる。これらの長方形領域は、ここで言及されるタイル領域である。画素寸法をタイル領域に割り当てることにより、つまり１００×１００画素を割り当てることにより、各タイル領域は、ベクトル画像の特別な解像度に対応する。このように、タイル領域１６０は、タイル領域１５０に対するグローバル解像度の２倍の幅と高さのグローバル解像度に対応し、同様に、タイル領域１５０は、タイル領域１４０に対するグローバル領域の２倍の幅と高さのグローバル解像度に対応する。具体的には、タイル領域１４０、１５０、および１６０がそれぞれ１００×１００画素である場合、タイル領域１４０は４００×４００画素のグローバル解像度に対応し、タイル領域１５０は、８００×８００画素のグローバル解像度に対応し、タイル領域１６０は、１６００×１６００画素のグローバル解像度に対応する。
【００６５】
本発明の好適な実施形態によれば、グローバルベクトルオブジェクトの１つまたは２つ以上が、解像度の特別なレベルでのみ見えるように指定できる。ベクトルオブジェクトは本質的に解像度に依存せず、解像度の任意のレベルで描画できるが、本発明により、ベクトルオブジェクトに対しての解像度依存の視認性機能が可能になる。
【００６６】
ここで図１Ｂを参照すると、図１Ｂは、本発明の好適な実施形態による、解像度依存の視認性を有するベクトルオブジェクトを含む図１Ａの変形例である。具体的には、大きな星形オブジェクト１７０は、分割１１０の低解像度でのみ見ることができ、精細印刷注釈１８０は、分割１３０の高解像度でのみ見ることができる。この技術に精通した者は、解像度依存の視認性がなければ、分割１１０、１２０、および１３０のそれぞれに対するタイル領域は同じ情報を含むであろうことは理解されよう。
【００６７】
ここで図２を参照すると、図２は、本発明の好適な実施形態による、ベクトル画像を前処理し、そこからタイルのように重ならずに並べられた複数解像度のベクトル画像を生成し、サーバーからクライアントコンピュータへストリーミングする方法の簡略化されたフローチャートである。フローチャートに対する入力は、グローバルベクトルオブジェクトのリストとして符号化された、オリジナルベクトル画像である。図２に例示されるように、処理はステップ２００で開始する。ステップ２０５において、解像度のレベル数を決定するパラメータと、解像度の種々のレベルの画素寸法と、タイル領域サイズが検索される。
【００６８】
ステップ２１０、２１５、および２２０において、処理は解像度の最高レベルから最低レベルへループし、タイル領域をループする。各タイル領域に対して、タイルの位置とサイズに対応する境界となる長方形は、処理中の現在の解像度レベルの画素寸法に基づいて、ステップ２２５で決定される。ステップ２３０で、グローバルベクトルオブジェクトの、現在の境界長方形との交差部分が決定され、ローカルベクトルオブジェクトとして符号化され、現在のタイルに対するローカル・ベクトル・オブジェクト・リストに送られる。ループはステップ２３５、２４０、および２４５を繰り返し、処理はステップ２５０で終了する。好ましくは、フローチャートの出力はタイルのように重ならずに並べられた複数解像度画像に対するデータ構造であり、オリジナルベクトル画像に対応する、各複数解像度タイル領域のローカルベクトルオブジェクトのリストを含む。
【００６９】
ここで図３を参照すると、図３は、本発明の好適な実施形態による、効率的なストリーミングのための、複数解像度タイルデータの間引き方法の簡略化されたフローチャートである。図３のフローチャートの入力は、図２のフローチャートからの出力、つまり、タイルのように重ならずに並べられた複数解像度画像のデータ構造である。図３の処理は各解像度のレベルでタイル領域をループし、タイルの符号化に使用されるローカルベクトルオブジェクトのリストを間引きする。
【００７０】
具体的には、図３はステップ３００において開始する。ステップ３０５において、解像度のレベル数のパラメータと、解像度の各レベルの画素寸法と、タイル領域の寸法が検索される。追加的に、解像度依存データのパラメータもまたステップ３０５で検索される。そのようなパラメータは、グローバルベクトルオブジェクトが見えるような解像度を指定する。処理は、ステップ３１０、３１５、および３２０において、解像度のレベルと、解像度の各レベル内のタイル領域をループする。ステップ３２５において、現在のタイル領域の重複したローカルベクトルオブジェクトは削除される。ステップ３３０において、ローカルベクトルオブジェクトは、現在の解像度のレベルでは見えないように指定されたグローバルベクトルオブジェクトから切り抜きされているならば、除去される。ステップ３３５において、単一画素内に縮小されるローカルベクトルオブジェクトは単一画像と交換される。図３の処理は、ステップ３４０、３４５、および３５０でループを繰り返し、ステップ３５５において終了する。好ましくは、図３のフローチャートの出力は、処理されたタイルのように重ならずに並べられた複数解像度画像の間引きされたデータ構造である。
【００７１】
対話的ストリーミング
【００７２】
図２と図３の前処理段階の後、結果としてのタイルのように重ならずに並べられた複数解像度ベクトル画像は、サーバーコンピュータから複数のクライアントコンピュータにストリーミングされ、対話的に見ることが出来る。ラスター画像のストリーミングと同様に、サーバー側またはクライアント側いずれかの処理、またはサーバー側とクライアント側のハイブリッドな処理が実践される。サーバー側処理に対しては、単位正方形内の関心対象の正規化領域が、あるいは部分とも称されるが、指定された画素解像度で要求され、サーバーは好ましくは、要求に対応して、SVGのような指定されたフォーマットに従ってフォーマットされた単一画像を戻す。
【００７３】
クライアント側の処理に対して、１つまたは２つ以上のタイル領域が要求され、クライアントは、個々のタイルを組立てる処理を行う。このように、クライアントは、表示の目的で、タイルをラスター画像タイルにラスター化できる。
【００７４】
ラスター画像のストリーミングと同様に、個々のベクトルタイルは、現在のセッション中の、または後のセッション中での検索のために、キャッシュメモリに格納できる。
【００７５】
ここで図４を参照すると、図４は、本発明の好適な実施形態による、ベクトル画像ストリーミングのサーバー側実践の簡略化されたフローチャートである。図４の最左端の列は、対話的にベクトル画像を見ているクライアントコンピュータにより行われるステップを記述している。図４の最右端の列は、オンデマンドでクライアントコンピュータにベクトル画像データをストリーミングするサーバーコンピュータにより行われるステップを記述している。
【００７６】
図４に示されるワークフローは繰り返され、ベクトル画像の一部分を見るための対話的要求を行い、要求された部分の準備をして、それを表示する基本的な機構を含む。ベクトル画像のその部分を表示した後、処理は循環して戻り、ベクトル画像の異なる部分を要求する。本発明の好適な実施形態においては、そのような各要求は、ユーザー操作を命令に変換するユーザーインタフェースによりクライアントコンピュータに入力される。例えば、ベクトル画像を拡大する要求を発行するためには、ユーザーは表示された画像の一部分をクリックしてその拡大画像を要求するか、拡大レンズのアイコンをクリックするか、表示されたベクトル画像部分の周りに長方形を描き、関心対象の領域が表示領域を満たすために再サイズ調整されるように画像を拡大するために、関心対象の領域を指定することができる。
【００７７】
図４では、ストリーミングされ、対話的に見られているベクトル画像は、ローカルタイル領域に従って指標付けされているローカルベクトルオブジェクトを含むタイルのように重ならずに並べられた複数寸法のデータ構造に前処理されていると仮定している。好ましくは、前処理は、図２と図３を参照して上述した方法に従って処理されている。しかし、この技術に精通した者は、そのような前処理は、ベクトル画像部分がストリーミングされているその動作中に行うことができるということを理解されよう。
【００７８】
ステップ４１０において、クライアントコンピュータは、所望の画素解像度の、つまり、ベクトル画像が現れる表示ウィンドウの画素解像度の、ベクトル画像の関心対象領域または一部分に対する要求をサーバーコンピュータに発行する。好ましくは、この要求は、グラフィカルユーザーインタフェースを介して、クライアントコンピュータのユーザーにより行われる。ステップ４２０において、サーバーコンピュータは、ベクトル画像の要求された部分を生成するためには、前処理されたベクトル画像のどのローカルタイル領域が必要か、または適切かを判定する。ステップ４３０において、サーバーコンピュータは、前処理されたベクトル画像、つまり、該当するローカルタイル領域に関連付けられたローカルベクトルオブジェクトから、該当するローカルタイルデータを検索する。ステップ４４０において、サーバーコンピュータはローカルデータタイルを組み合わせて、要求されたベクトル部分を生成する。本発明の好適な実施形態によれば、要求されたベクトル画像部分は、スケーラブルベクトルグラフィックス（SVG）のような、標準画像フォーマットでフォーマットされる。そのような画像フォーマットは、補助的なクライアントソフトウェアを必要とすることなく、クライアントコンピュータのブラウザで解釈され処理され得る。
【００７９】
ステップ４５０において、サーバーコンピュータは、ベクトル画像の要求された部分を、標準画像フォーマットで送信する。ステップ４６０において、クライアントコンピュータは要求された部分を受信する。ステップ４７０において、クライアントコンピュータは、好ましくは標準ウェブブラウザを使用して、その要求された部分を描画し、クライアントコンピュータに接続されたコンピュータモニタに表示する。表示された画像部分を見た後、クライアントコンピュータのユーザーは、異なる部分を見るための要求を対話的に行うことができ、処理は循環してステップ４１０に戻る。
【００８０】
ここで図５を参照すると、図５は、本発明の好適な実施形態による、ベクトルストリーミングのクライアント側実践の簡略化フローチャートである。図４と同様に、図５の最左端の列は、クライアントコンピュータにより行われるステップを記述し、図５の最右端の列は、サーバーコンピュータにより行われるステップを記述している。図４と同様に、図５に記述されたワークフローは、繰り返し行われ、ユーザーがベクトル画像の異なる部分を見ることを対話的に要求するたびに繰り返される。図４と比較すると、図５においては、画像処理ステップの多くが、サーバー側ではなく、クライアント側にあることが分かる。
【００８１】
図４のフローチャートと同様に、図５のフローチャートもまた、ユーザーにより対話的に見られているベクトル画像は、図２と図３を参照して上述したように、タイルのように重ならずに並べられた複数解像度ベクトル画像に前処理されていることを仮定している。図５においては、クライアントコンピュータが、図５のクライアント側のステップを行うために、ウェブブラウザを補完する追加的ソフトウェアを有していることも仮定されている。
【００８２】
ステップ５１０において、クライアントコンピュータは、所望の画素解像度で、つまり、表示領域の画素解像度で、ユーザーにより見ることを要求されたベクトル画像の一部分を特定する。好ましくは、ステップ５１０は、マウスやキーボード操作のようなユーザー操作を、ユーザーの要求に変換するユーザーインタフェースを介して行われる。ステップ５２０において、クライアントコンピュータは、所望された解像度で、ベクトル画像の要求された部分を生成するためには、前処理されたベクトル画像のどのローカルタイル領域が必要か、または適切かを判定する。クライアントコンピュータが該当するローカルタイル領域を特定できるためには、クライアントコンピュータ上で起動しているソフトウェアは、好ましくは、特に、タイル領域寸法と、前処理されたベクトル画像の解像度レベルを含む、前処理されたベクトル画像のパラメータを認識している。
【００８３】
ステップ５３０において、クライアントコンピュータは、そのタイルキャッシュをチェックして、該当するローカルタイル領域に対するデータのある部分またはその全部がそこに格納されていないかを調べる。ステップ５４０において、クライアントコンピュータはサーバーコンピュータに、クライアントタイルキャッシュに常駐していないローカルタイル領域のデータを提供するように要求する。ステップ５５０において、サーバーコンピュータは、前処理されたベクトル画像から、要求されたローカルタイル領域を検索する。ステップ５６０において、サーバーコンピュータは、タイル領域に対して要求されたデータをクライアントコンピュータに送信する。本発明の好適な実施形態によれば、効率化の目的で、サーバー５６０は、複数のタイル領域のデータを、単一ネットワーク要求のオーバーヘッド内で送ることができ、かつ開梱できる単一パケットにまとめる。
【００８４】
ステップ５７０において、クライアントコンピュータはタイル領域のデータを受信し、ステップ５８０において、クライアントコンピュータはそのデータを組み合わせて、所望の解像度で、ベクトル画像の要求部分を生成する。ステップ５９０において、クライアントコンピュータは要求された部分を描画して表示する。その後、ユーザーは、ベクトル画像の別の部分を見る要求を対話的に行うことができ、処理は循環してステップ５１０に戻る。
【００８５】
ここで図６を参照すると、図６は、本発明の好適な実施形態による、画像ストリーミングシステムの構成要素の簡略化ブロック図である。図６には、基本的ベクトル画像前処理およびストリーミング機構を備えるモジュールが示されている。ベクトル画像プリプロセッサ６１０は、スケーラブルベクトルグラフィックス（SVG）画像のようなベクトル画像を入力として受信して、出力として、上述したように、ベクトル画像のローカルタイル領域に従って指標付けされたローカルベクトルオブジェクトを特に含むデータ構造として格納された、ベクトル画像のタイルのように重ならずに並べられた複数解像度バージョンを生成する。ベクトル画像プリプロセッサ６１０もまた入力として、特にローカル長方形タイル領域の寸法と、解像度のレベルを含む前処理パラメータを受信する。ベクトル画像プリプロセッサ６１０の出力は、特に、ローカルタイル領域で切り抜かれたグローバルベクトルオブジェクトに対応するローカルベクトルオブジェクトを含む。更に、ベクトル画像が描画順序を含んでいる場合は、好ましくは、前処理されたベクトル画像は、ローカルタイル領域のそれぞれに、ローカルベクトルオブジェクトの誘導描画ベクトルを含む。
【００８６】
ベクトル画像プロセッサ６２０は入力として、所望の解像度で表示されるベクトル画像の一部分に対するユーザー要求を受信し、出力として、ユーザー要求を満たすためには、前処理されたベクトル画像のローカルタイル領域のどれが必要か、または適切かを特定する。ベクトル画像プロセッサ６２０もまた入力として、ローカル長方形タイル領域の寸法と解像度のレベルを特に含む、前処理されたベクトル画像のパラメータを受信する。
【００８７】
前処理されたベクトル画像アダプタ６３０は、前処理されたベクトル画像とのインタフェースを取るために使用される。ベクトル画像アダプタ６３０は入力として、前処理されたベクトル画像、またはそこへの１つまたは２つ以上のポインタを受信する。ベクトルアダプタ６３０はまた入力として、ローカルタイル領域の１つまたは２つ以上の識別子を受信する。ベクトルアダプタ６３０は、前処理されたベクトル画像にアクセスし、そのようなローカルタイル領域に関連付けられたベクトルオブジェクトを特に含む、特定されたローカルタイル領域に関連付けられたデータを検索する。
【００８８】
ベクトル画像プロセッサ６４０は入力として、１つまたは２つ以上のローカルタイル領域に関連付けられたデータを受信し、出力として、ユーザーにより所望された画素解像度での組み合わされた画像を生成する。好ましくは、ベクトル画像プロセッサ６４０の出力は、SVGのような標準ベクトルフォーマット、またはJPEGのような標準ラスターフォーマットである。標準ウェブブラウザは、このように、補完的なソフトウェアを必要とすることなく、組み合わされた画像を描画できる。
【００８９】
図６から、ベクトル画像プロセッサ６２０と、ベクトル画像プロセッサ６４０は、クライアントコンピュータ上またはサーバーコンピュータ上に常駐できるということは明白である。サーバー側の実践に対しては、図６に示されたすべてのモジュールはサーバーコンピュータ上に常駐する。クライアントコンピュータは単に、所望する解像度で、ベクトル画像の所望する部分を見る要求を発行すればよいだけで、モジュール６２０、６３０、および６４０内の処理は、すべてサーバーコンピュータにおいて実行される。反対に、クライアント側の実践に対しては、モジュール６２０と６４０はクライアントコンピュータ上に常駐する。サーバーコンピュータは単に、１つまたは２つ以上のローカルタイル領域の識別子を含む要求を受信し、アダプタ５３０を使用して特定されたタイル領域に関連付けられたデータを検索し、検索されたデータをクライアントコンピュータに送るだけでよい。ハイブリッドなサーバー側およびクライアント側の実践に対しては、ベクトルプロセッサ６２０は、サーバーコンピュータ上に常駐し、ベクトルプロセッサ６４０は、クライアントコンピュータ上に常駐する。つまり、クライアントコンピュータは、所望の解像度でのベクトル画像の一部分に対する要求をサーバーコンピュータに発行し、サーバーコンピュータは、どのタイル領域が適切であるかを判定し、そのようなタイル領域に関連付けられたローカル・ベクトル・オブジェクト・データをクライアントに送り、クライアントは、ローカル・ベクトル・オブジェクト・データを、ベクトル画像の要求された部分に組み合わせる。
【００９０】
本発明は、特にリッチテキスト文書、スプレッドシート、図、およびプレゼンテーションを含むリッチフォーマットで、電子メール添付ファイルをワイヤレス装置へストリーミングする用途に対して広く適用される。
【００９１】
上記の記載を読めば、この技術に精通した者は、上述した本方法およびシステムに対して適用できる明らかな変形が多くあることを認識するであろう。このように、本発明はベクトル画像を前処理することなく実践できる。ユーザーがベクトル画像の所望する部分を要求すると、ローカルベクトルオブジェクトが、適切な領域でグローバルベクトルオブジェクトを切り抜くことにより、動作中に動的に生成できる。
【００９２】
本発明はまた、特に多角形、円形、および楕円形部分を含む、画像の非長方形部分を対話的に見るために使用することができる。例えば、ユーザーは、境界内全域でいろいろな方向にパンし、拡大縮小することにより、楕円形境界内に表示された地図をナビゲートできる。
【００９３】
本発明はまた、ベクトルアニメーションのストリーミングにも適用できる。具体的には、本発明が、アニメーションのフレームとして、SVG文書のようなベクトル画像のストリーミングに使用されると、好ましくは、間引き処理もまた、複数のフレームに対して、同じタイル領域に存在するベクトルを除去する。実際、解像度の高いレベルでは、同じタイル領域内のベクトル画像は、フレームのシーケンス内に同一に存在する。このように、連続フレームに対して、同一画像ベクトルの再送信を回避することにより、相当なパフォーマンスゲインが達成される。
【００９４】
現在のアニメーションフレームのタイル内のベクトル画像が、前のフレーム内に存在するかを効率よく判定するために、本発明では好ましくは、第１アニメーションフレームの各タイル領域に対するベクトルオブジェクトのリスト内の個々のベクトルオブジェクトのハッシュ値を、ルックアップテーブルに格納する。つまり、ルックアップテーブルは、アニメーションの第１フレームに対して、複数解像度のタイル領域のそれぞれの各ベクトルオブジェクトに対するハッシュキーを格納している。各連続するフレームに対して、タイル領域内のベクトルオブジェクトが既にルックアップテーブル内に存在しているときはいつでも、そのようなベクトルオブジェクトは、独立したベクトルオブジェクトとして符号化されるのではなく、ルックアップテーブルへの指標として符号化される。
【００９５】
ここで図７を参照すると、図７は、本発明の好適な実施形態による、ベクトルアニメーションのストリーミングにおける効率的使用のための、複数解像度のタイル内のローカルベクトルオブジェクトを格納するデータ構造を例示している簡略化された図である。図７には、タイル領域に関連付けられたローカルベクトルオブジェクトのハッシュ値を格納しているルックアップテーブル７１０が示されている。好ましくは、ルックアップテーブル７１０は、ベクトルアニメーション内のフレームシーケンスの第１フレームに対して構築される。図７には、ベクトルアニメーションの第２フレーム内のタイル領域に対するローカルベクトルオブジェクトのリスト７２０もまた示されている。ローカルベクトルオブジェクトのそれぞれは、特に色、スタイル、および制御点を含む属性に関して従来のように格納されるか、またはルックアップテーブル７１０への指標に関して格納される。後者の格納は、第一フレーム内に同一の対応部分を有する第二フレームのベクトルオブジェクトに対して使用される。
【００９６】
ハッシュ値が入力された後、ルックアップテーブル７１０は、アニメーションを対話的に見ているクライアントコンピュータに送信される。その後、クライアントコンピュータが、リスト７２０のようなローカルベクトルオブジェクトのリストとして符号化された１つまたは２つ以上のタイルを受信すると、クライアントは、それをルックアップテーブルから抽出することにより、テーブル指標として符号化されたローカルベクトルオブジェクトの属性を検索できる。
【００９７】
相対的に長いアニメーションシーケンスに対して、ルックアップテーブル７１０を、キーフレームがMPEGエンコーダにおいて使用されるのと類似の方法で、キーフレームに対して再生成できる。キーフレームを使用することにより、ルックアップテーブル７１０が最新の状態に維持され、それにより連続するフレームのローカルベクトルオブジェクトは、ルックアップテーブルに既に格納されている可能性が高くなる。キーフレームを使用することにより、ユーザーが第１フレームから開始することなく、アニメーションシーケンスを見ることも可能になる。
【００９８】
上記の明細書において、本発明は、その特殊な典型的実施形態を参照して記載されてきた。しかし、付随する請求項に記載された本発明のより広い精神および範囲から逸脱することなく、この特殊な典型的実施形態に種々の変形および変更がなされるということは明白であろう。従って、本明細書と図は、限定された意味ではなく、例示的なものと見なされるべきである。
【図面の簡単な説明】
【００９９】
本発明は、図面と提携した下記の詳細な記述から、より完全に理解かつ評価されるであろう。
【図１Ａ】本発明の好適な実施形態による、ベクトル画像に対する複数解像度タイル領域の簡略化された例図である。
【図１Ｂ】本発明の好適な実施形態による、解像度に依存する視認性を有するベクトルオブジェクトを含む図１Ａの変形例である。
【図２】本発明の好適な実施形態による、サーバーからクライアントコンピュータへのストリーミングのための、ベクトル画像を前処理し、そこからタイルのように重ならずに並べられた複数解像度のベクトル画像を生成する方法の簡略化されたフローチャートである。
【図３】本発明の好適な実施形態による、効率的なストリーミングのための、複数解像度のタイルデータを間引く方法の簡略化されたフローチャートである。
【図４】本発明の好適な実施形態による、ベクトル画像ストリーミングの、サーバー側の実践の簡略化されたフローチャートである。
【図５】本発明の好適な実施形態による、ベクトルストリーミングの、クライアント側の実践の簡略化されたフローチャートである。
【図６】本発明の好適な実施形態による、画像ストリーミングシステムの構成要素の簡略化されたブロック図である。
【図７】本発明の好適な実施形態による、ベクトルアニメーションのストリーミングにおける効率的使用のための、複数解像度のタイル領域内のローカルベクトルオブジェクトを格納するデータ構造を例示する簡略化された図である。
【符号の説明】
【０１００】
１１０  粗い分割
１２０  より精細な分割
１３０  更に精細な分割
１４０  長方形タイル領域
１５０  長方形タイル領域
１６０  長方形タイル領域
１７０  星形オブジェクト
１８０  精細印刷注釈
２００  開始
２０５  パラメータ（レベル数、ＸとＹにおけるタイル数、間引き方法）を得る
２１０  高解像度から低解像度までのループ
２１５  Ｙ＝０からＹ＝ＹＭＡＸまでのループ
２２０  Ｘ＝０からＸ＝ＸＭＡＸまでのループ
２２５  ＸおよびＹ座標に基づいて境界長方形を作成する
２３０  境界長方形とベクトル・オブジェクト・データ・セットの交差部分をエクスポートする
２３５  ループの終了
２４０  ループの終了
２４５  ループの終了
２５０  終了
３００  開始
３０５  パラメータ（レベル数、ＸとＹにおけるタイル数、解像度に依存するデータ）を得る
３１０  高解像度から低解像度までのループ
３１５  Ｙ＝０からＹ＝ＹＭＡＸまでのループ
３２０  Ｘ＝０からＸ＝ＸＭＡＸまでのループ
３２５  重複したベクトルオブジェクトをまとめる
３３０  ベクトルオブジェクトを解像度の違いに基づき除去する
３３５  ベクトルオブジェクトが完全に画素内にあるときは、ベクトルオブジェクトを画素と交換する
３４０  ループの終了
３４５  ループの終了
３５０  ループの終了
３５５  終了
４１０  所望の画素解像度レベルでのベクトル画像の一部分を要求する
４２０  所望の画素解像度で要求された部分を生成するために適切なローカルタイル領域はいずれかを判定する
４３０  前処理されたベクトル画像から適切なローカルタイル領域を検索する
４４０  ローカルタイル領域を組み合わせることで、所望の解像度でのベクトル画像の要求された部分を生成する
４５０  ベクトル画像の要求された部分を送信する
４６０  ベクトル画像の要求された部分を受信する
４７０  ベクトル画像の要求された部分を描画して表示する
５１０  所望の画素解像度での、ユーザーにより要求されたベクトル画像の部分を特定する
５２０  所望の画素解像度で要求された部分を生成するのに必要なローカルタイル領域はいずれかを判定する
５３０  タイルキャッシュを調べて、必要なローカルタイル領域のいずれが既にキャッシュに格納されているかを判定する
５４０  キャッシュにまだ格納されていないタイル領域を要求する
５５０  前処理されたベクトル画像から要求されたローカルタイル領域を検索する
５６０  要求されたタイル領域を送信する
５７０  要求されたタイル領域を受信する
５８０  ローカルタイル領域を組み合わせることにより所望の解像度でのベクトル画像の要求された部分を生成する
５９０  ベクトル画像の要求された部分を描画して表示する
６１０  ベクトル画像プリプロセッサ
６２０  ベクトル画像プロセッサ
６３０  前処理されたベクトル画像用アダプタ
６４０  ベクトル画像プロセッサ
【図２】
2008520131.tif 000003
【図３】
2008520131.tif 000004
【図４】
2008520131.tif 000005
【図５】
2008520131.tif 000006
【図６】
2008520131.tif 000007
【図７】
2008520131.tif 000008
【図１Ａ】
2008520131.tif 000009
【図１Ｂ】
2008520131.tif 000010
【国際調査報告】
2008520131.tif 000011
2008520131.tif 000012
2008520131.tif 000013