JP6853391B2 - Reduced latency in the map interface - Google Patents
Reduced latency in the map interface Download PDFInfo
- Publication number
- JP6853391B2 JP6853391B2 JP2020003689A JP2020003689A JP6853391B2 JP 6853391 B2 JP6853391 B2 JP 6853391B2 JP 2020003689 A JP2020003689 A JP 2020003689A JP 2020003689 A JP2020003689 A JP 2020003689A JP 6853391 B2 JP6853391 B2 JP 6853391B2
- Authority
- JP
- Japan
- Prior art keywords
- image
- map
- sub
- data
- region
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—Two-dimensional [2D] image generation
- G06T11/40—Filling planar surfaces by adding surface attributes, e.g. adding colours or textures
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/51—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/63—Querying
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04842—Selection of displayed objects or displayed text elements
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—Two-dimensional [2D] image generation
- G06T11/10—Texturing; Colouring; Generation of textures or colours
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—Two-dimensional [2D] image generation
- G06T11/20—Drawing from basic elements
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/048—Indexing scheme relating to G06F3/048
- G06F2203/04806—Zoom, i.e. interaction techniques or interactors for controlling the zooming operation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/16—Indexing scheme for image data processing or generation, in general involving adaptation to the client's capabilities
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20092—Interactive image processing based on input by user
- G06T2207/20104—Interactive definition of region of interest [ROI]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Remote Sensing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Human Computer Interaction (AREA)
- User Interface Of Digital Computer (AREA)
- Information Transfer Between Computers (AREA)
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
- Controls And Circuits For Display Device (AREA)
- Instructional Devices (AREA)
Description
本発明は、マップインターフェースにおける待ち時間の低減に関する。 The present invention relates to reducing latency in a map interface.
インターネットは、世界中のユーザ間の情報および取引の交換を容易にする。この情報の交換は、データプロバイダが様々なユーザにデータを提供することを可能にする。インターネットを介して提供される情報の一例は、ユーザが特定の領域のマップを探索し、見ることを可能にするインタラクティブマップである。これらのマップユーザインターフェースは、多くの情報を含むことができ、多くの異なるスクリプト、キャンバス、およびグラフィックスを使用して生成されることが可能であるが、マップをレンダリングすることは、リソース集約的であり、クライアントデバイスにおいてレンダリングするのに時間がかかる場合がある。 The Internet facilitates the exchange of information and transactions between users around the world. This exchange of information allows data providers to provide data to a variety of users. An example of information provided over the Internet is an interactive map that allows a user to explore and view a map of a particular area. Although these map user interfaces can contain a lot of information and can be generated using many different scripts, canvases, and graphics, rendering maps is resource intensive. It may take some time to render on the client device.
本明細書は、マップユーザインターフェースを送信および提示する際の待ち時間を低減することに関する技術を説明する。 This specification describes techniques for reducing latency when transmitting and presenting a map user interface.
一般に、本明細書で説明される主題の1つの革新的な態様は、クライアントデバイスから、(i)特定のグラフィック領域と、(ii)特定の領域の複数の異なるサブ領域に関するオンラインアカウントに関連したデータとを描画するインタラクティブマップユーザインターフェースの提示のための要求を受信するアクションと、1つまたは複数のサーバによって、マッピングサービスを使用して、特定の領域のマップをレンダリングするアクションであって、レンダリングすることが、特定の領域のキャンバスを生成することと、マップを生成するために使用されるプログラミング要素とグラフィック要素とをロードすることとを備える、アクションと、1つまたは複数のサーバによって、レンダリングされたマップに基づいて、レンダリングされたマップの画像を表す画像ファイルを生成するアクションと、少なくとも、前記画像によって描画された視覚的境界に基づいて、画像内の1つまたは複数のサブ領域を検出するアクションと、画像内の各異なるサブ領域に異なる視覚的特徴を割り当てるアクションと、画像内の各位置を、位置を含む対応するサブ領域にマッピングする電子インデックスを生成するアクションと、1つまたは複数のサーバによって、クライアントデバイスが画像の所与のサブ領域とのユーザインタラクションを検出したときに、(i)異なるサブ領域の各々が異なるサブ領域に対応する異なる視覚的特徴に従って提示される画像と、(ii)少なくとも1つの所与のサブ領域に関連したアカウントデータとを提示するようにクライアントデバイスのユーザインターフェースを構成するアクションとを含む方法において具体化されることが可能である。本態様の他の実施形態は、コンピュータ記憶デバイス上に符号化された、本発明のアクションを実行するように構成された、対応するシステム、装置、およびコンピュータプログラムを含む。 In general, one innovative aspect of the subject matter described herein pertains to an online account from a client device regarding (i) a particular graphic area and (ii) multiple different sub-areas of a particular area. Interactive Maps to Draw Data An action that receives a request to present a user interface and an action that renders a map of a particular area by one or more servers using a mapping service. What you do is generate a canvas for a particular area and load the programming and graphic elements used to generate the map, with actions and rendering by one or more servers. Detects one or more sub-regions in an image based on the action that generates an image file representing the image of the rendered map based on the map, and at least the visual boundaries drawn by the image. One or more actions to do, one to assign different visual features to each different subregion in the image, and one to generate an electronic index that maps each position in the image to the corresponding subregion containing the position. When a client device detects user interaction with a given subregion of an image, the image is (i) presented according to different visual features, each of which is a different subregion, corresponding to a different subregion. (ii) It can be embodied in a way that includes actions that configure the user interface of the client device to present with account data associated with at least one given subregion. Other embodiments of this aspect include corresponding systems, devices, and computer programs encoded on a computer storage device and configured to perform the actions of the present invention.
これらおよび他の実施形態は、各々、以下の特徴のうちの1つまたは複数をオプションで含むことができる。いくつかの態様では、各サブ領域に関する視覚的特徴は、サブ領域に割り当てられ画像内のサブ領域内に提示される特定の色を含む。 Each of these and other embodiments may optionally include one or more of the following features: In some embodiments, the visual features for each sub-region include a particular color that is assigned to the sub-region and presented within the sub-region in the image.
画像ファイルは、キャンバスを生成するために必要とされるよりも少ない計算リソースを使用してレンダリング可能であってもよい。いくつかの態様は、画像の各サブ領域に、画像のサブ領域が提示される特定の赤、緑、青(RGB)色を割り当てることと、画像ファイル内に、特定のサブ領域ごとに、サブ領域に関するRGB色と、画像内の特定のサブ領域の位置を指定するデータとを記憶することとを含む圧縮技法を使用して画像ファイルのデータサイズを低減することを含むことができる。 The image file may be renderable with less computational resources than required to generate the canvas. In some aspects, each sub-region of the image is assigned a specific red, green, blue (RGB) color that presents the sub-region of the image, and each sub-region in the image file is sub-regional. It can include reducing the data size of an image file using compression techniques that include storing RGB colors for the region and data that specifies the location of a particular sub-region in the image.
いくつかの態様は、1つまたは複数のサーバにおいて、クライアントデバイスから、画像内の特定の位置の選択を指定するデータを受信することを含むことができる。選択に応答して、選択された位置に対応する特定のサブ領域のマップを描画する更新された画像ファイルが生成されることが可能である。この生成することは、マッピングサービスを使用して特定のサブ領域のマップをレンダリングすることと、レンダリングされたマップの画像を生成することとを含むことができる。更新された画像を表す画像ファイルがクライアントデバイスに提供されることが可能である。いくつかの態様は、クライアントデバイスから、選択時の画像に関するズームレベルを指定するデータを受信することを含むことができる。ズームレベルに基づいて、選択の粒度レベルが決定されることが可能である。選択された位置に対応する特定のサブ領域は、選択に関する粒度レベルに基づいて決定されることが可能である。 Some embodiments may include receiving data from a client device that specifies the selection of a particular location in an image on one or more servers. In response to the selection, it is possible to generate an updated image file that draws a map of a particular subregion corresponding to the selected location. This generation can include rendering a map of a particular subregion using a mapping service and generating an image of the rendered map. An image file representing the updated image can be provided to the client device. Some embodiments may include receiving data from a client device that specifies the zoom level for the selected image. It is possible to determine the particle size level of the selection based on the zoom level. The specific sub-region corresponding to the selected position can be determined based on the particle size level for the selection.
いくつかの態様では、画像ファイルは、ポータブルネットワークグラフィックス(PNG)ファイルフォーマットを含む。いくつかの態様は、1つまたは複数のサーバによって、サブ領域のうちの少なくとも1つのマップを各々が表す1つまたは複数の追加の画像ファイルを、要求に応答して、かつ1つまたは複数の追加の画像ファイルに対する要求を受信する前に、クライアントデバイスに提供することを含むことができる。 In some embodiments, the image file comprises a portable network graphics (PNG) file format. In some embodiments, one or more servers provide one or more additional image files, each representing at least one map of a subregion, in response to a request and one or more. It can include providing a request to a client device before receiving a request for an additional image file.
本明細書で説明される主題の特定の実施形態は、以下の利点のうちの1つまたは複数を実現するように実施されることが可能である。クライアントデバイスにおいてインタラクティブマップユーザインターフェースを提供し提示する際の待ち時間は、スクリプト、キャンバス、グラフィックス、ドキュメントオブジェクトモデル(DOM)要素および他のデータをクライアントデバイスにロードするのではなく、ユーザインタラクションに応答して提示されることが可能なデータにインデックスを有する圧縮画像を提供することによって低減されることが可能である。たとえば、インターネットを介して画像ファイル(たとえば、圧縮画像ファイル)を提供するために必要とされるネットワーキングリソースの量は、クライアントデバイスにおいてマップを生成するために使用されるスクリプト、キャンバスおよびDOM要素を提供するために必要とされるネットワーキングリソースの量よりも実質的に少なくてもよい。 Certain embodiments of the subject matter described herein can be implemented to achieve one or more of the following advantages: The latency of providing and presenting an interactive map user interface on a client device responds to user interaction rather than loading scripts, canvas, graphics, document object model (DOM) elements and other data into the client device. It can be reduced by providing a compressed image with an index on the data that can be presented. For example, the amount of networking resources needed to serve an image file (for example, a compressed image file) over the Internet provides the scripts, canvas, and DOM elements used to generate the map on the client device. It may be substantially less than the amount of networking resources required to do so.
同様に、クライアントデバイスの計算リソースに対する要求は、クライアントデバイスのプロセッサがスクリプトもしくはDOM要素をロードしなくてもよく、またはキャンバスを生成しなくてもよいので、圧縮画像ファイルを使用して低減されることが可能である。加えて、インタラクティブマップユーザインターフェースを提示するために使用されるクライアントデバイスのメモリ(たとえば、RAM)の量は、画像ファイルを使用して低減されることが可能であり、それは、他のアプリケーションに対してメモリを解放し、データがクライアントデバイスによって処理される速度を増加させる。マップ画像の各サブ領域全体に特定の色を割り当てることによって、画像を記憶する画像ファイルのサイズは、低減(たとえば、圧縮)されることが可能であり、デバイス間のより速い伝送時間と、画像ファイルを送信するために使用されるより少ない消費ネットワーク帯域幅とをもたらす。したがって、実施形態は、インタラクティブマップデータの配信および表示に関連する課題に対処することができる。 Similarly, the demand on the client device's computational resources is reduced using compressed image files because the client device's processor does not have to load scripts or DOM elements or generate a canvas. It is possible. In addition, the amount of memory (eg RAM) on the client device used to present the interactive map user interface can be reduced using image files, which can be reduced for other applications. Frees memory and increases the speed at which data is processed by client devices. By assigning a particular color to each sub-region of the map image, the size of the image file that stores the image can be reduced (eg, compressed), resulting in faster transmission times between devices and the image. It results in less network bandwidth consumed and used to send files. Accordingly, embodiments can address challenges related to the distribution and display of interactive map data.
本明細書で説明される主題の1つまたは複数の実施形態の詳細は、添付図面および以下の説明に記載されている。主題の他の特徴、態様、および利点は、説明、図面、および特許請求の範囲から明らかになるであろう。 Details of one or more embodiments of the subject matter described herein are described in the accompanying drawings and in the following description. Other features, aspects, and advantages of the subject matter will become apparent from the description, drawings, and claims.
様々な図面における同様の参照番号および名称は、同様の要素を示す。 Similar reference numbers and names in various drawings indicate similar elements.
システムは、インタラクティブマップユーザインターフェースを提供および提示する際の待ち時間を低減することができる。たとえば、システムは、マッピングサービスによって生成されたマップの画像を生成することができる。画像は、特定の領域およびそのサブ領域のマップを描画することができる。システムはまた、画像のサブ領域に画像内の位置(たとえば、画像のx-y座標)をマッピングする電子インデックスを生成することができる。電子インデックスはまた、サブ領域をサブ領域用のデータにマッピングすることができる。このようにして、ユーザが、たとえば、サブ領域に対応する位置上にホバーするか、またはその位置を選択することによって、特定のサブ領域に対応する位置におけるマップの画像と相互作用すると、サブ領域用のデータは、インタラクティブな方法でユーザに提示されることが可能である。 The system can reduce the latency of providing and presenting an interactive map user interface. For example, the system can generate an image of the map generated by the mapping service. The image can draw a map of a particular area and its sub-areas. The system can also generate an electronic index that maps a position in the image (eg, the x-y coordinates of the image) to a subregion of the image. Electronic indexes can also map sub-regions to data for sub-regions. In this way, when the user interacts with the image of the map at the position corresponding to a particular sub-region, for example by hovering over or selecting that position corresponding to the sub-region, the sub-region The data for can be presented to the user in an interactive way.
たとえば、インターネットを介してクライアントデバイスに画像を提供することは、マッピングサービスを使用してクライアントデバイスにおいてマップを生成することよりも少ないコンピューティングリソースおよびネットワーキングリソースを必要とすることができる。これはまた、マップユーザインターフェースがユーザに提示される速度を増加させる。コンピューティングリソースおよびネットワーキングリソースの量は、画像を圧縮することによって、さらに低減されることが可能であり、速度は、さらに増加されることが可能である。いくつかの実装形態では、画像は、画像の各サブ領域に特定の色を割り当てることによって圧縮されることが可能である。たとえば、サブ領域全体が、道路、地形などに対して異なる色で描画するのではなく、サブ領域に割り当てられた特定の色で描画されてもよい。このようにして、画像ファイルのサイズは、低減されることが可能であり、ネットワークを介するより迅速な転送と、ネットワークを介して画像を転送するためのより少ないネットワーク帯域幅とを可能にする。たとえば、所与のサブ領域の領域のすべてが同じ色であるので、サブ領域の複数の異なる部分のための異なるカラーコードを送信するのではなく、サブ領域を表す画像の領域全体に対して単一のカラーコード(たとえば、RGB値)のみが送信される必要がある。加えて、クライアントデバイスは、たとえば、グラフィックス処理ユニット(GPU)によって実装される圧縮画像レンダリング技術を使用してより迅速に圧縮画像を提示することができる。 For example, providing an image to a client device over the Internet can require less computing and networking resources than using a mapping service to generate a map on the client device. This also increases the speed at which the map user interface is presented to the user. The amount of computing and networking resources can be further reduced by compressing the image, and the speed can be further increased. In some embodiments, the image can be compressed by assigning specific colors to each subregion of the image. For example, the entire sub-region may be drawn in a specific color assigned to the sub-region instead of being drawn in different colors for roads, terrain, and the like. In this way, the size of the image file can be reduced, allowing faster transfers over the network and less network bandwidth for transferring images over the network. For example, because all areas of a given sub-region are the same color, instead of sending different color codes for multiple different parts of the sub-region, it is simply for the entire region of the image that represents the sub-region. Only one color code (eg RGB value) needs to be transmitted. In addition, client devices can present compressed images more quickly, for example, using compressed image rendering techniques implemented by graphics processing units (GPUs).
インタラクティブユーザインターフェースを提示する際の待ち時間をさらに低減するために、マップが要求される前にマップの追加画像が提示されてもよい。追加のマップ画像は、ユーザがマップを要求した場合にマップのより迅速な提示を可能にするために、クライアントデバイスにおいて、たとえば、キャッシュ内に記憶されることが可能である。たとえば、システムは、ユーザがより詳細なビューのためにサブ領域のうちの1つを選択した場合に、要求に応答して生成された画像内に描画された各サブ領域のより詳細なマップを提供してもよい。 To further reduce the latency of presenting the interactive user interface, additional images of the map may be presented before the map is requested. Additional map images can be stored on the client device, for example, in a cache to allow faster presentation of the map if the user requests the map. For example, if the user selects one of the sub-regions for a more detailed view, the system will provide a more detailed map of each sub-region drawn in the image generated in response to the request. May be provided.
図1は、データ管理システム110がインタラクティブマップユーザインターフェースを提供する例示的な環境100である。たとえば、データ管理システム110は、クライアントデバイスからの要求に応答して、クライアントデバイス、たとえば、クライアントデバイス150にインタラクティブマップユーザインターフェースを提供してもよい。データ管理システム110は、データ通信ネットワーク130、たとえば、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、モバイル通信ネットワーク、インターネット、またはそれらの組み合わせを介してインタラクティブマップユーザインターフェースを送信することができる。ネットワーク130は、サーバ、ハブ、ルータ、スイッチ、インターフェースデバイス、伝送媒体、およびデバイスが他のデバイスにデータを送信し、他のデバイスからデータを受信することを可能にする他のネットワーク構成要素を含むことができる。
FIG. 1 is an
クライアントデバイス150は、ネットワーク130を介して電子リソースおよび他のデータを要求し、それらを受信することができる電子デバイスである。例示的なクライアントデバイス150は、パーソナルコンピュータ、モバイル通信デバイス(たとえば、スマートフォン、タブレットコンピュータデバイス、および/またはスマートウォッチ)、およびネットワーク130を介してデータを送信および受信することができる他のデバイスを含む。クライアントデバイス150は、典型的にはネットワーク130を介するデータの送信および受信を容易にするために、ウェブブラウザのようなユーザアプリケーションを含む。ウェブブラウザは、ユーザが、典型的にはウェブサイトにおけるウェブページ上に位置する、テキスト、画像、ビデオ、音楽および他の情報とインタラクションすることを可能にすることができる。
The client device 150 is an electronic device capable of requesting and receiving electronic resources and other data via the
クライアントデバイス150は、他のアプリケーション、たとえば、特定のタイプのデバイスのため、または特定のプラットフォームのために開発されたネイティブアプリケーションを含むことができる。たとえば、クライアントデバイス150は、インタラクティブマップユーザインターフェース157をクライアントデバイス150のユーザに提示するマップビューア155を含む。マップビューア155は、ウェブブラウザ、ネイティブアプリケーション、または別のタイプのアプリケーションプログラムにおいて実装されてもよい。
Client device 150 can include other applications, such as native applications developed for a particular type of device or for a particular platform. For example, client device 150 includes a
インタラクティブマップユーザインターフェース157は、特定の領域のマップを提示する。たとえば、インタラクティブマップユーザインターフェース157は、クライアントデバイス150から受信された要求によって指定された特定の領域のマップを提示することができる。インタラクティブマップユーザインターフェース157はまた、マップ内に含まれる特定の領域および/または領域のサブ領域に関連したデータを提示することができる。以下に説明するように、提示されるデータは、クライアントデバイス150のユーザがアクセスすることを許可されたオンラインアカウントに関連したアカウントデータを含むことができる。データは、マップとのユーザインタラクションに応答して提示されることが可能である。たとえば、クライアントデバイス150のユーザが特定のサブ領域に対応する位置の上にカーソルまたは他のポインタをホバーさせた場合、サブ領域に関するデータがユーザに提示されてもよい。例示的なインタラクティブマップユーザインターフェースが図2に示され、以下でより詳細に説明される。
The interactive
データ管理システム110は、ユーザおよび/または組織のためのデータを管理し、たとえば、データ管理システム110によって生成されたユーザインターフェースにおいて、ユーザに提示するためのデータを提供することができる。たとえば、データ管理システム110は、複数の異なるアカウント保有者の複数の異なるアカウントのためのオンラインアカウントデータを管理することができる。特定の例では、データ管理システム110は、複数の異なる組織のためのコンテンツ配信アカウントデータを管理することができる。以下に説明するシステムおよび技法はまた、様々な他のタイプのデータに適用されることが可能である。 The data management system 110 can manage data for users and / or organizations and, for example, provide data for presentation to users in the user interface generated by the data management system 110. For example, the data management system 110 can manage online account data for a plurality of different accounts of a plurality of different account holders. In a particular example, the data management system 110 can manage content delivery account data for a plurality of different organizations. The systems and techniques described below can also be applied to various other types of data.
データ管理システム110によって管理されるアカウントデータは、コンテンツアイテムに関するパフォーマンスデータ(たとえば、インプレッション数、クリックスルーレート、コンバージョン率など)、アカウント保有者に関する予算情報、および/またはコンテンツアイテム配信基準のような、アカウントに関連した任意のデータを含むことができる。各アカウント保有者に関するアカウントデータは、1つまたは複数のデータセンタ内に配置された複数のデータ記憶デバイスを含んでもよいアカウントデータ記憶デバイス115内に記憶される。各アカウント保有者に関するアカウントデータは、あるアカウント保有者に関するアカウントデータが異なるアカウント保有者のユーザに提供されないように、別々に記憶されてもよい。
Account data managed by the data management system 110 includes performance data about content items (eg impressions, clickthrough rate, conversion rate, etc.), budget information about account holders, and / or content item delivery criteria. It can contain any data related to your account. Account data for each account holder is stored in account
アカウントデータの少なくとも一部は、データに関する対応する地理的位置を識別するデータと共に記憶されることが可能である。たとえば、コンテンツ配信キャンペーンに関するデータは、コンテンツアイテムのインプレッション数、コンテンツアイテムの選択数、コンテンツアイテムの提示から生じるコンバージョン数、および/または他の適切なキャンペーンデータを指定するデータを含んでもよい。各イベント(たとえば、インプレッション、選択、コンバージョンなど)に関するデータは、イベントが発生した地理的位置の指定を含むことができる。たとえば、コンテンツアイテムがシアトル内に位置するクライアントデバイス上に提示された場合、インプレッションに関するデータは、インプレッションがシアトル内で発生したことを示すことができる。このようにして、データは、位置に基づいてフィルタリングされることが可能であり、各位置に関連するメトリックが決定されることが可能である。 At least part of the account data can be stored with data that identifies the corresponding geographic location with respect to the data. For example, data about a content delivery campaign may include data that specifies the number of impressions of the content item, the number of selections of the content item, the number of conversions resulting from the presentation of the content item, and / or other suitable campaign data. Data about each event (for example, impressions, selections, conversions, etc.) can include a designation of the geographic location where the event occurred. For example, if a content item is presented on a client device located in Seattle, the impression data can indicate that the impression occurred in Seattle. In this way, the data can be filtered based on position and the metrics associated with each position can be determined.
データ管理システム110は、1つまたは複数のフロントエンドサーバ111と、データセレクタ113と、マップユーザインターフェース生成器120とを含む。データセレクタ113およびマップユーザインターフェース生成器120はまた、1つまたは複数サーバ内に実装されることが可能である。たとえば、フロントエンドサーバ111、データセレクタ113およびマップユーザインターフェース生成器120は、1つまたは複数の位置(たとえば、データセンタ)において配置された1つまたは複数のサーバ内に実装されてもよい。フロントエンドサーバ111、データセレクタ113およびマップユーザインターフェース生成器120は、たとえば、ネットワークを介して、互いにデータを通信することができる。
The data management system 110 includes one or more front-
フロントエンドサーバ111は、クライアントデバイスからデータに対する要求を受信し、要求されたデータをクライアントデバイスに提供する。フロントエンドサーバ111は、クライアントデバイスとデータセレクタ113とマップユーザインターフェース生成器120との間のインターフェースとして機能することができる。たとえば、フロントエンドサーバ111は、データに対する要求をデータセレクタ113に転送することができる。次に、データセレクタ113は、アカウントデータ記憶デバイス115から適切なデータを取得し、データをフロントエンドサーバ111に提供することができる。フロントエンドサーバ111は次いで、要求を提出したクライアントデバイスにデータを提供することができる。
The front-
フロントエンドサーバ111はまた、受信された要求がマップユーザインターフェースを要求しているかどうかを判定することができる。たとえば、要求は、特定の領域に関するアカウントデータを描画するマップユーザインターフェースを要求していることを指定してもよい。別の例では、クライアントデバイスのユーザは、別のマップユーザインターフェースに対する要求をトリガするようにマップユーザインターフェースとインタラクションしてもよい。たとえば、ユーザは、異なる領域、またはサブ領域のより詳細なビューを見るために、マップユーザインターフェースをズームインまたはズームアウトしてもよい。この例では、要求は、マップユーザインターフェース内に含める領域を指定してもよい。
The front-
フロントエンドサーバ111が、要求がマップユーザインターフェースを要求していると判定した場合、フロントエンドサーバ111は、マップユーザインターフェース生成器120からのマップユーザインターフェースを要求することができる。マップユーザインターフェース生成器120は、要求された領域に関するインタラクティブマップユーザインターフェースを生成し、インタラクティブマップユーザインターフェースをフロントエンドサーバ111に提供することができる。次に、フロントエンドサーバ111は、インタラクティブマップユーザインターフェースをクライアントデバイスに提供する。
If the front-
いくつかの実装形態では、データセレクタ113は、マップユーザインターフェースをクライアントデバイス150に提供するかどうかを判定することができる。たとえば、データセレクタ113は、クライアントデバイス150に提供されているデータに基づいて、マップユーザインターフェースを提供するかどうかを判定してもよい。データセレクタ113は、データが複数の異なる地理的位置に特有のデータを含む場合、マップユーザインターフェースを提供することを決定してもよい。たとえば、データは、複数の異なる地理的位置の各々について、コンテンツアイテムが地理的位置において提供されたときのコンテンツアイテムに関するコンバージョン率を含んでもよい。この例では、データセレクタ113は、マップ上のそれらの適切な位置におけるコンバージョン率を提示するマップユーザインターフェースを提供することを決定してもよい。 In some implementations, the data selector 113 can determine whether to provide a map user interface to the client device 150. For example, the data selector 113 may determine whether to provide a map user interface based on the data provided to the client device 150. The data selector 113 may decide to provide a map user interface if the data contains data specific to a plurality of different geographic locations. For example, the data may include, for each of a plurality of different geographic locations, the conversion rate for the content item when the content item was served at the geographic location. In this example, the data selector 113 may decide to provide a map user interface that presents conversion rates at their appropriate locations on the map.
マップユーザインターフェース生成器120は、マップ上に描画された地理的位置に関するデータを提示するインタラクティブマップユーザインターフェースを生成する。たとえば、マップユーザインターフェース生成器120は、クライアントデバイスから受信された要求によって指定された特定の領域のマップを描画するインタラクティブマップユーザインターフェースを生成してもよい。マップユーザインターフェース生成器120によって生成されたインタラクティブマップユーザインターフェースは、より複雑なマップの画像と、画像によって描画された地理的位置に対応するデータのインデックスとを含むことができる。このようにして、クライアントデバイス150においてインタラクティブマップユーザインターフェースをレンダリングする際の待ち時間は、コード(たとえば、スクリプト)と、DOM要素と、マッピングサービスから取得された他のデータとを使用してクライアントデバイス150においてマップを生成することと比較して低減されることが可能である。加えて、インタラクティブマップユーザインターフェースをレンダリングするために使用されるクライアントデバイス150の計算リソースへの要求は、低減されることが可能であり、それによって、クライアントデバイス150の性能を改善することができる。 The map user interface generator 120 generates an interactive map user interface that presents data about geographic locations drawn on the map. For example, the map user interface generator 120 may generate an interactive map user interface that draws a map of a particular area specified by a request received from a client device. The interactive map user interface generated by the map user interface generator 120 can include a more complex map image and an index of data corresponding to the geographic location drawn by the image. In this way, the latency when rendering the interactive map user interface on the client device 150 uses code (for example, a script), DOM elements, and other data retrieved from the mapping service on the client device. It can be reduced compared to generating a map at 150. In addition, the demand on the computational resources of the client device 150 used to render the interactive map user interface can be reduced, thereby improving the performance of the client device 150.
マップユーザインターフェース生成器120は、1つまたは複数のマップレンダリングサーバ121を含む。マップレンダリングサーバ121は、地理的領域のマップをレンダリングするためにマッピングサービス122とマップクライアント123とを使用することができる。マッピングサービス122は、マップに対する要求に応答してマップクライアント123にマップまたはマップの一部を提供するウェブマッピングサービスを含むことができる。たとえば、マッピングサービス122は、特定の領域のマップに対する要求に基づいてマップクライアント123に提供するマップタイル、オーバレイおよび他のマップデータを選択してもよい。マッピングサービス122は、マップデータ記憶デバイス124からマップタイル、オーバレイおよび他のマップデータを選択することができる。
The map user interface generator 120 includes one or more map rendering servers 121. The map rendering server 121 can use the mapping service 122 and the
マップクライアント123は、マッピングサービス122からのマップを要求し、マッピングサービスから受信されたマップデータを編成し、マップをレンダリングすることができる。いくつかの実装形態では、マップクライアント123は、マップキャンバスを生成し、キャンバス上にマップタイルを編成し、マップタイル上にオーバレイを配置し、マップ上に対マップデータを配置し、たとえば、ディスプレイにおいて、またはメモリ内にマップをレンダリングするために複数のスクリプトを使用する。マップをレンダリングするために、マップクライアント123は、マップをレンダリングするためにスクリプトによって使用される複数のDOM要素をロードしてもよい。
The
マップクライアント123は、クライアントデバイス、たとえば、クライアントデバイス150によって要求されたマップをレンダリングするために、マッピングサービス122とインタラクションすることができる。クライアントデバイス150ではなくマップレンダリングサーバ121においてマップをレンダリングすることによって、マップレンダリングサーバは、マップをレンダリングするより強力でより多くの計算リソースを有するので、マップは、より迅速にレンダリングされることが可能である。加えて、マップクライアント123は、インターネットを介して要求を提出することなくマッピングサービス122とインタラクションすることができ、マップをレンダリングするために必要とされる時間量をさらに低減することができる。
The
マップユーザインターフェース120はまた、マップ画像ファイル生成器125と、インデック生成器128と、ファイル圧縮器129とを含む。マップ画像ファイル生成器125は、マップクライアント123によってレンダリングされたマップの画像を生成し、画像を表す画像ファイルを生成することができる。たとえば、マップ画像ファイル生成器125は、レンダリングされたマップのスクリーンショットをキャプチャし、キャプチャされた画像を表す画像ファイルを生成してもよい。画像ファイルは、ポータブルネットワークグラフィックス(PNG)ファイル、グラフィックスインターチェンジフォーマット(GIF)ファイル、ジョイントフォトグラフィックエキスパートグループ(JPEG)ファイル、または別の適切なタイプの画像ファイルであってもよい。
The map user interface 120 also includes a map
マップ画像ファイル生成器125は、境界検出器126と視覚的特徴セレクタ127とを含む。境界検出器126は、マップ画像ファイル生成器125によって生成されたマップの画像内の視覚的境界を検出することができる。たとえば、画像は、境界によって画定されたサブ領域を含む特定の領域を描画してもよい。特定の例では、領域は、米国であってもよく、サブ領域は、個々の州であってもよい。境界検出器126は、サブ領域間の境界を検出するために、境界検出技法、たとえば、エッジ検出を使用することができる。
The map
いくつかの実装形態では、境界検出器126はまた、境界に基づいて、および/または画像によって描画された領域を指定するデータに基づいて、画像によって描画されたサブ領域を識別することができる。たとえば、画像内の領域およびサブ領域が分かると、境界検出器126は、画像のどの境界付けられた領域が各サブ領域に対応するのかを判定することができる。境界検出器126は、画像内の境界によって画定される形状と各サブ領域に関する既知の形状とを比較することによって、サブ領域を決定することができる。
In some implementations, the
視覚的特徴セレクタ127は、マップの画像内に描画された各サブ領域と関係付ける視覚的特徴を選択することができる。たとえば、視覚的特徴は、色(たとえば、RGBカラーモデルまたは赤色、緑色、青色、アルファ(RGBAカラーモデル)に基づく)、シェーディング、ハッチング、色強度、または何らかの他の適切な視覚的特徴であってもよい。いくつかの実装形態では、視覚的特徴セレクタ127は、各サブ領域に関するデータに基づいて各サブ領域のための視覚的特徴を選択する。たとえば、インタラクティブマップユーザインターフェースは、コンテンツアイテムがサブ領域内に位置するクライアントデバイスにおいて提示されるとき、コンテンツアイテムのパフォーマンスを提示するために生成されてもよい。この例では、視覚的特徴セレクタ127は、各サブ領域に対するパフォーマンス測定に基づいて各サブ領域のための視覚的特徴を選択してもよい。コンテンツアイテムがより良いパフォーマンスを有するサブ領域は、コンテンツアイテムがより低いパフォーマンスを有するサブ領域よりも明るい色で提示されてもよい。 The visual feature selector 127 can select the visual features associated with each subregion drawn in the image of the map. For example, a visual feature is a color (eg, based on an RGB color model or red, green, blue, alpha (RGBA color model)), shading, hatching, color intensity, or some other suitable visual feature. May be good. In some implementations, the visual feature selector 127 selects visual features for each subregion based on the data for each subregion. For example, an interactive map user interface may be generated to present the performance of a content item when it is presented on a client device located within a subregion. In this example, the visual feature selector 127 may select visual features for each subregion based on performance measurements for each subregion. The sub-region where the content item has better performance may be presented in a lighter color than the sub-region where the content item has lower performance.
別の例では、各サブ領域は、同じ色で描画されてもよいが、色の濃淡または明るさは、サブ領域に関するデータに基づいて変化する。たとえば、各サブ領域は、青色で描画されてもよい。視覚的特徴セレクタ127は、各サブ領域に関するデータに基づいて各サブ領域のための青色の明るさまたは濃淡を選択してもよい。さらに別の例では、各サブ領域の視覚的特徴は、異なるサブ領域を区別するためにランダムまたは疑似ランダムに選択されてもよい。 In another example, each sub-region may be drawn in the same color, but the shade or brightness of the color will vary based on the data for the sub-region. For example, each sub-region may be drawn in blue. The visual feature selector 127 may select the brightness or shade of blue for each sub-region based on the data for each sub-region. In yet another example, the visual features of each sub-region may be randomly or pseudo-randomly selected to distinguish between different sub-regions.
インデックス生成器128は、マップの画像内の位置を画像内に描画されたサブ領域にマッピングする電子インデックスを生成することができる。たとえば、電子インデックスは、画像の各x-y座標をその対応するサブ領域にマッピングしてもよい。電子インデックスはまた、各サブ領域に関するデータをマップの画像によって描画されたサブ領域にマッピングしてもよい。たとえば、インデックス生成器128は、データセレクタ113からサブ領域に関するデータを取得することができる。いくつかの実装形態では、電子インデックスは、サブ領域に関するデータを、サブ領域に割り当てられた固有の視覚的特徴(たとえば、固有のRGBまたはRGBA値)にマッピングする。このようにして、ユーザが、サブ領域における画像、たとえば、サブ領域に関するx-y座標または固有の視覚的特徴のうちの1つにおける画像とインタラクションするとき、サブ領域に関するデータは、インデックスから取得され、ユーザに提示されることが可能である。 The index generator 128 can generate an electronic index that maps the position of the map in the image to the sub-regions drawn in the image. For example, the electronic index may map each x-y coordinate of the image to its corresponding subregion. The electronic index may also map the data for each subregion to the subregions drawn by the image of the map. For example, the index generator 128 can retrieve data about the subregion from the data selector 113. In some implementations, the electronic index maps data about a subregion to a unique visual feature (eg, a unique RGB or RGBA value) assigned to the subregion. In this way, when the user interacts with an image in the sub-region, eg, an image in one of the xy coordinates or unique visual features of the sub-region, the data about the sub-region is retrieved from the index and the user It is possible to be presented in.
ファイル圧縮器129は、ネットワーク130を介するより速い転送およびクライアントデバイス150のユーザへのより速いレンダリングのために、マップの画像を表す画像ファイルを圧縮することができる。いくつかの実装形態では、ファイル圧縮器129は、画像内に描画された各サブ領域に対して選択された固有の視覚的特徴を使用して画像ファイルを圧縮する。たとえば、各サブ領域に関する固有の視覚的特徴は、各サブ領域に割り当てられた固有の色であってもよい。この例では、ファイル圧縮器129は、各特定のサブ領域に関する画像領域にそのサブ領域の固有の色を割り当てることによって画像ファイルを圧縮することができる。このようにして、画像ファイルは、各サブ領域について、サブ領域に対応するx-y座標と、サブ領域に関するRGBカラー値とを記憶するだけでよい。クライアントデバイス150のアプリケーション(たとえば、ウェブブラウザ)は、クライアントデバイス150においてマップの画像をレンダリングするために、各サブ領域に関するx-y座標と、各サブ領域に関する固有のRGB色とを使用することができる。
File compressor 129 can compress an image file that represents an image of a map for faster transfer over
ファイル圧縮器129は、圧縮画像ファイルと、インデックス生成器128によって生成された電子インデックスとを、フロントエンドサーバ111に提供する。次に、フロントエンドサーバは、画像ファイルとインデックスとをクライアントデバイス150に提供する。クライアントデバイス150のマップビューア155は次いで、インタラクティブマップユーザインターフェースにおいて、画像ファイルによって表されるマップの画像をレンダリングすることができる。
The file compressor 129 provides the compressed image file and the electronic index generated by the index generator 128 to the front-
フロントエンドサーバ111はまた、クライアントデバイス150にマップの画像との特定のユーザインタラクションに応答して特定の動作を実行させるコード、ルーチン、またはスクリプトをクライアントデバイス150に提供することができる。たとえば、スクリプトは、ユーザが特定のサブ領域に対応する画像の位置の上にポインタ(たとえば、マウスカーソル)をホバーさせることに応答して、特定のサブ領域に関連したデータを取得しかつ提示するために、クライアントデバイス150に電子インデックスにアクセスさせてもよい。たとえば、ユーザが特定のサブ領域上にポインタをホバーさせた場合、クライアントデバイス150は、電子インデックスから特定のサブ領域に関するデータを取得し、かつデータをクライアントデバイス150のユーザに提示することができる。クライアントデバイス150は、地図の画像に関するユーザインタラクションの位置に基づいてデータを取得するサブ領域を識別することができる。たとえば、クライアントデバイス150は、ホバーイベント(たとえば、少なくともしきい値時間量の間同じ位置に留まるポインタ)の間にポインタのx-y座標を検出し、検出されたx-y座標に対応する電子インデックスからデータを取得することができる。別の例では、クライアントデバイス150は、ホバーイベントの間にポインタの位置における画像の色を判定し、色に対応する電子インデックスからデータを取得することができる。
The front-
いくつかの実装形態では、マップユーザインターフェース生成器120は、マップの2つの画像を生成する。第1の画像は、マップレンダリングサーバによってレンダリングされたマップの画像であってもよい。たとえば、第1の画像は、任意の道路、水域、地形のタイプに関する色などを用いてレンダリングされたマップを描画してもよい。第2の画像は、特定のサブ領域に対して特定のRGB色を有する画像であってもよい。この例では、第2の画像は、第1の画像の上のオーバレイであってもよいが、クライアントデバイス150のユーザには見えない。代わりに、第2の画像は、上記で説明したように、画像内に描画されたサブ領域にユーザインタラクションの位置をマッピングするために使用されてもよい。このようにして、マップは、レンダリング速度およびネットワーク帯域幅消費の改善を実現しながら、マッピングサービス122によって典型的に提供されるマップと同じに見えることができる。 In some implementations, the map user interface generator 120 produces two images of the map. The first image may be an image of the map rendered by the map rendering server. For example, the first image may draw a map rendered using colors for any road, body of water, terrain type, and so on. The second image may be an image having a specific RGB color for a specific subregion. In this example, the second image may be an overlay on top of the first image, but is invisible to the user of client device 150. Alternatively, the second image may be used to map the location of the user interaction to the sub-regions drawn within the image, as described above. In this way, the map can look the same as the map typically provided by the mapping service 122, while achieving improvements in rendering speed and network bandwidth consumption.
いくつかの実装形態では、マップユーザインターフェース生成器120は、インタラクティブマップユーザインターフェースに対する要求に応答して、マップの追加の画像とインデックスとを生成し、追加の画像およびインデックスの各々をクライアントデバイス150に提供する。たとえば、要求は、複数のサブ領域を含む特定の領域を指定してもよい。この例では、この例では、マップユーザインターフェース生成器120は、各サブ領域に関するマップの画像と、各サブ領域に関する電子インデックスとを生成してもよい。特定のサブ領域の画像は、特定のサブ領域のサブ領域を描画してもよい。同様に、特定のサブ領域に関する電子インデックスは、特定のサブ領域の各サブ領域に関するデータを含んでもよい。 In some implementations, the map user interface generator 120 responds to requests for an interactive map user interface to generate additional images and indexes for the map, each of which is on the client device 150. provide. For example, the request may specify a specific area that includes multiple sub-areas. In this example, in this example, the map user interface generator 120 may generate an image of the map for each subregion and an electronic index for each subregion. The image of the specific sub-region may draw the sub-region of the specific sub-region. Similarly, an electronic index for a particular subregion may contain data for each subregion of a particular subregion.
マップユーザインターフェース生成器120は、要求に応答して生成された元の画像と共に、または元の画像がクライアントデバイス150に送信された後に、追加の画像と電子インデックスとをクライアントデバイス150に送信することができる。クライアントデバイス150は、クライアントデバイス150のキャッシュ内に追加の画像と電子インデックスとを記憶することができる。クライアントデバイス150は、元の画像(または別の画像)を含むインタラクティブマップユーザインターフェースとのユーザインタラクションに応答して追加の画像を提示することができる。たとえば、ユーザは、元の画像によって描画された特定のサブ領域を選択してもよい。これに応答して、クライアントデバイス150は、データ管理システム110から新しいインタラクティブマップユーザインターフェースを要求することなく、キャッシュから選択されたサブ領域の画像を取得し、かつ画像を提示することができる。このようにして、サブ領域の詳細なマップは、はるかにより迅速にレンダリングされることが可能であり、ネットワークトラフィックは、低減されることが可能である。 The map user interface generator 120 sends additional images and electronic indexes to the client device 150 along with the original image generated in response to the request or after the original image has been sent to the client device 150. Can be done. The client device 150 can store additional images and electronic indexes in the cache of the client device 150. The client device 150 can present an additional image in response to user interaction with an interactive map user interface that includes the original image (or another image). For example, the user may select a particular sub-area drawn by the original image. In response, the client device 150 can retrieve and present an image of the selected subregion from the cache without requesting a new interactive map user interface from the data management system 110. In this way, a detailed map of the sub-regions can be rendered much faster and network traffic can be reduced.
図2は、例示的なインタラクティブマップユーザインターフェース210のスクリーンショット200である。この例では、インタラクティブマップユーザインターフェース210は、ウェブブラウザにおいて提示される。いくつかの実装形態では、インタラクティブマップユーザインターフェース210は、別のアプリケーションプログラム、たとえば、ネイティブアプリケーションによって提示される。
FIG. 2 is a
例示的なインタラクティブマップユーザインターフェース210は、特定の領域のマップの画像220を含む。この例では、マップの画像220は、いくつかの南東部の州を描画する。各州は、南東領域のサブ領域である。図2には示されていないが、各州は、その州に固有の視覚的特徴を含むことができる。たとえば、視覚的特徴は、色(たとえば、RGBカラーモデルに基づく)、シェーディング、ハッチング、色強度、または異なる州を区別する何らかの他の適切な視覚的特徴であってもよい。特定の例では、ジョージア州は、緑色であってもよく、アラバマ州は、青色であってもよい。別の例では、各州は、同じ基本色であってもよい。しかしながら、各州は、異なる強度、濃淡、または明るさのその色であってもよい。たとえば、各州は、異なる濃淡の青色であってもよい。
An exemplary interactive
各州に関する視覚的特徴は、各州に対応するデータに基づいてもよい。たとえば、インタラクティブマップユーザインターフェース210は、各州について、その州における特定のコンテンツの提示から生じるコンバージョン数を提示してもよい。この例では、各州の領域は、色の濃淡が各州のコンバージョン数に基づいている同じ色で提示されてもよい。たとえば、たとえば、最もコンバージョン数が多い州は、最も暗くてもよく、コンバージョンが最も少ない州は、最も明るくてもよい。
Visual features for each state may be based on data corresponding to each state. For example, the interactive
各州に関するデータは、データおよび視覚的特徴を各州にマッピングする電子インデックス内に記憶されることが可能である。ユーザが、たとえば、カーソルを州の上にホバーさせるか、州を選択することによって州とインタラクションするとき、その州に関するデータが提示されることが可能である。たとえば、ジョージア州は、カーソル230によってホバーされている。それに応答して、コンテンツアイテムがジョージア州内に位置するデバイス上に提示された結果として生じたコンテンツアイテムに関するコンバージョン数が、オーバレイ240内に提示されている。オーバレイ240は、画像220の上に提示される。特に、オーバレイ240は、画像220内のジョージア州の上に提示される。
Data for each state can be stored in electronic indexes that map data and visual features to each state. When a user interacts with a state, for example by hovering the cursor over a state or selecting a state, data about that state can be presented. For example, Georgia is hovered by
いくつかの実装形態では、第1のタイプのユーザインタラクションが、画像220の上へのデータの提示を引き起こしてもよく、第2のタイプのユーザインタラクションが、異なるマップをインタラクティブマップユーザインターフェース210内に提示させてもよい。たとえば、州の上へのホバーは、州に関するデータを州の上のオーバレイ内に提示させてもよい。加えて、たとえば、州上でクリックすることによる州の選択が州の詳細マップを提示させてもよい。たとえば、ジョージア州が選択された場合、ジョージア州のサブ領域を描画するジョージア州のマップが提示されてもよい。州のビューのサブ領域は、郡、市、市外局番、郵便番号、またはより大きい領域をセグメント化する他の方法であってもよい。
In some embodiments, the first type of user interaction may cause the presentation of data on top of the
いくつかの実装形態では、選択の粒度レベルは、州が選択された時間としてインタラクティブマップユーザインターフェースのズームレベルに基づいてもよい。たとえば、ズームレベルがしきい値よりも大きい、たとえば、100%よりも大きい場合、選択は、選択が生じた画像内の位置に対応する州内の郡、市、郵便番号、または市外局番であるとみなされてもよい。この例では、インタラクティブマップユーザインターフェース210は、選択された郡、市、郵便番号、または市外局番のマップの画像を提示するように更新されてもよい。ズームレベルがしきい値未満、たとえば、100%未満である場合、選択は、州全体であるとみなされてもよい。この例では、インタラクティブマップユーザインターフェース210は、選択された州のマップの画像を提示するように更新されてもよい。
In some implementations, the particle size level of selection may be based on the zoom level of the interactive map user interface as the time the state was selected. For example, if the zoom level is greater than the threshold, for example greater than 100%, the selection is by county, city, zip code, or area code in the state that corresponds to the position in the image where the selection occurred. It may be considered to be. In this example, the interactive
いくつかの実装形態では、州の選択(または別のタイプのユーザインタラクション)は、ユーザがデータを入力または変更できるユーザインターフェースを提示させる。たとえば、州の選択は、ユーザがコンテンツ項目に対する入札(bid)を修正もしくは入力すること、コンテンツアイテムが配信されるキーワードを選択すること、または別の適切なパラメータを入力することを可能にするオーバレイを提示させてもよい。たとえば、ユーザがジョージア州を選択した後に入札を変更した場合、入札は、ジョージア州内に位置するクライアントデバイス上にコンテンツアイテムを提示させるかどうかを判定する際に使用されてもよい。 In some implementations, state selection (or another type of user interaction) presents a user interface that allows the user to enter or modify data. For example, state selection allows users to modify or enter bids for content items, select keywords for which content items are delivered, or enter other appropriate parameters. May be presented. For example, if a user changes a bid after selecting Georgia, the bid may be used to determine whether to present a content item on a client device located within Georgia.
いくつかの実装形態では、州が特定のキャンペーンのために提示されている間の州(たとえば、他のサブ領域)の選択は、キャンペーンに関するアクティブ状態と非アクティブ状態との間のトグルをもたらす。たとえば、州がキャンペーンに対してアクティブではない(たとえば、キャンペーンに関するコンテンツアイテムが州内に位置するクライアントデバイスに提供される資格がない)場合、州の選択は、州の状態をキャンペーンのためのアクティブ状態(たとえば、コンテンツアイテムは、州内に位置するクライアントデバイスに提供される資格がある)に切り替えてもよい。この例では、クライアントデバイスは、選択およびデータ管理システム110に応答して、州がキャンペーンに対して切り替えられたことを指定するデータを提供する。それに応答して、データ管理システム110は、州に関する状態の変化に基づいてキャンペーンに関する配信基準を更新してもよい。 In some implementations, selecting a state (eg, another sub-region) while a state is being presented for a particular campaign results in a toggle between active and inactive states for the campaign. For example, if a state is not active for a campaign (for example, content items related to the campaign are not eligible to be served to client devices located within the state), the state selection is active for the state state for the campaign. You may switch to a state (for example, a content item is eligible to be served to client devices located in the state). In this example, the client device responds to the selection and data management system 110 to provide data that specifies that the state has been switched to the campaign. In response, the data management system 110 may update delivery criteria for campaigns based on changes in state status.
図3は、インタラクティブマップユーザインターフェースを提供するための例示的なプロセス300のフローチャートである。プロセス300の動作は、たとえば、図1のデータ管理システム110のような1つまたは複数のデータ処理装置によって実施されることが可能である。プロセス300はまた、コンピュータ記憶媒体上に記憶された命令によって実施されることが可能であり、データ処理装置による命令の実行は、データ処理装置にプロセス300の動作を実行させる。
FIG. 3 is a flowchart of an
インタラクティブマップユーザインターフェースの提示に対する要求が受信される(302)。たとえば、クライアントデバイスが、特定の地理的領域を描画するインタラクティブマップユーザインターフェースに対する要求を提出してもよい。要求はまた、クライアントデバイスのユーザが見たいと思う特定の地理的領域に関連したデータを指定してもよい。たとえば、コンテンツアイテムが南アメリカ内に位置するデバイスにおいて提示されるとき、要求は、南アメリカの地理的位置と、特定のコンテンツアイテムに関する選択データとを指定してもよい。 A request for the presentation of the interactive map user interface is received (302). For example, a client device may submit a request for an interactive map user interface that renders a particular geographic area. The request may also specify data related to a particular geographic area that the user of the client device wants to see. For example, when a content item is presented on a device located within South America, the request may specify the geographic location of South America and selection data for a particular content item.
特定の領域のマップが、マッピングサービスを使用してレンダリングされる(304)。たとえば、上記で説明したように、マップクライアントは、マップキャンバスを生成し、キャンバス上にマップファイルを編成し、マップタイルの上にオーバレイを配置し、マップ上に他のマップデータを配置し、たとえば、ディスプレイにおいて、またはメモリ内にマップをレンダリングするために、マッピングサービスとインタラクションすることができる。レンダリングは、特定の領域のキャンバスを生成することと、マップを生成するために使用されるプログラミング要素(たとえば、スクリプト)およびグラフィック要素(たとえば、マップタイル、オーバレイなど)を配置することとを含むことができる。 A map of a particular area is rendered using the mapping service (304). For example, as described above, a map client can generate a map canvas, organize map files on the canvas, place overlays on map tiles, place other map data on the map, for example. You can interact with the mapping service, on the display, or to render the map in memory. Rendering involves generating a canvas for a particular area and arranging programming elements (eg scripts) and graphic elements (eg map tiles, overlays, etc.) used to generate the map. Can be done.
レンダリングされたマップの画像を表す画像ファイルが生成される(306)。たとえば、レンダリングされたマップの画像は、レンダリングされたマップを提示しているディスプレイのスクリーンショットを撮影することによってキャプチャされてもよい。次いで、キャプチャされた画像を表す画像ファイルが生成される。画像ファイルは、PNG、GIF、JPEG、または他の適切な画像ファイルフォーマットであってもよい。 An image file is generated that represents the image of the rendered map (306). For example, an image of a rendered map may be captured by taking a screenshot of the display presenting the rendered map. An image file representing the captured image is then generated. The image file may be in PNG, GIF, JPEG, or any other suitable image file format.
1つまたは複数のサブ領域が画像内で検出される(308)。たとえば、画像内の境界が、境界検出技法を使用して検出されてもよい。境界間の形状は次いで、サブ領域を識別するために、特定の地理的領域の既知のサブ領域の形状と比較されることが可能である。 One or more sub-regions are detected in the image (308). For example, boundaries in an image may be detected using boundary detection techniques. The shape between the boundaries can then be compared to the shape of a known sub-region of a particular geographic region to identify the sub-region.
異なる視覚的特徴が各サブ領域に割り当てられる(310)。たとえば、異なる色が各サブ領域に割り当てられてもよい。色は、RGBモデルまたは別の適切なコンピュータ可読カラーモデルに基づいてもよい。別の例では、視覚的特徴は、異なるシェーディング、ハッチング、色強度、または何らかの他の適切な視覚的特徴であってもよい。 Different visual features are assigned to each subregion (310). For example, different colors may be assigned to each subregion. Colors may be based on an RGB model or another suitable computer readable color model. In another example, the visual feature may be different shading, hatching, color intensity, or any other suitable visual feature.
電子インデックスが生成される(312)。電子インデックスは、画像内の各位置を、位置を含む対応するサブ領域にマッピングすることができる。電子インデックスはまた、各サブ領域をサブ領域に関連したデータにマッピングすることができる。たとえば、インタラクティブマップユーザインターフェースは、サブ領域に関連した特定のデータを提示するように要求されてもよい。各サブ領域に関する特定のデータは、電子インデックス内に含まれることが可能である。 An electronic index is generated (312). The electronic index can map each position in the image to a corresponding sub-region containing the position. The electronic index can also map each sub-region to the data associated with the sub-region. For example, an interactive map user interface may be required to present specific data associated with a subarea. Specific data for each subregion can be contained within the electronic index.
いくつかの実装形態では、電子インデックスは、各位置x-y座標をその対応するサブ領域にマッピングする。いくつかの実装形態では、電子インデックスは、視覚的特徴をサブ領域にマッピングする。たとえば、電子インデックスは、各サブ領域をその固有のRGB色にマッピングしてもよい。 In some implementations, the electronic index maps each position x-y coordinate to its corresponding subregion. In some implementations, electronic indexes map visual features to subregions. For example, the electronic index may map each subregion to its own RGB color.
クライアントデバイスのユーザインターフェースが画像を表すように構成される(314)。たとえば、画像の提示を引き起こすデータがクライアントデバイスに提供されてもよい。このデータは、画像を表す画像ファイルと、電子インデックスと、クライアントデバイスに画像を提示させるコード(たとえば、ルーチンまたはスクリプト)とを含むことができる。このデータは、異なるサブ領域の各々を異なるサブ領域に対応する異なる視覚的特徴に従って提示しながら画像を提示させてもよい。たとえば、各サブ領域は、そのRGB色において提示されてもよい。いくつかの実装形態では、画像を表す画像ファイルは、画像ファイルをクライアントデバイスに送信する前に圧縮されてもよい。画像ファイルを圧縮するための例示的なプロセスを図4に示し、以下に説明する。 The user interface of the client device is configured to represent an image (314). For example, the data that causes the presentation of the image may be provided to the client device. This data can include an image file representing the image, an electronic index, and code (eg, routine or script) that causes the client device to present the image. This data may cause the image to be presented while presenting each of the different subregions according to different visual features corresponding to the different subregions. For example, each subregion may be presented in its RGB color. In some implementations, the image file representing the image may be compressed before sending the image file to the client device. An exemplary process for compressing an image file is shown in Figure 4 and described below.
クライアントデバイスは、画像とのユーザインタラクションに応答して電子インデックスにアクセスすることができる。たとえば、ユーザが特定のサブ領域の位置の上にポインタをホバーさせた場合、クライアントデバイスは、画像内のホバーの位置(たとえば、x-y座標)を検出することができる。クライアントデバイスは次いで、サブ領域がホバーされていると判定するために電子インデックスにアクセスし、電子インデックスからサブ領域に関するデータを取り出すことができる。クライアントデバイスは次いで、ユーザインターフェース内に、たとえば、ユーザインタラクションを受信したサブ領域の上に、取り出されたデータを提示することができる。 The client device can access the electronic index in response to user interaction with the image. For example, if the user hovers the pointer over the position of a particular subregion, the client device can detect the position of the hover in the image (eg, x-y coordinates). The client device can then access the electronic index to determine that the subregion is hovered and retrieve data about the subregion from the electronic index. The client device can then present the retrieved data within the user interface, for example, over the sub-region that received the user interaction.
クライアントデバイスに提供されたデータは、特定のユーザインタラクションに応答してクライアントデバイスに他の動作を実行させることができる。たとえば、クライアントデバイスは、特定のサブ領域における画像の選択に応答して、特定のサブ領域に関するキャンペーンのアクティブ/非アクティブ状態を切り替えてもよい。この例では、スクリプトが、クライアントデバイスに、特定のサブ領域のアクティブ/非アクティブ状態のトグルを指定するデータをコンテンツ配信システムに送信させてもよい。 The data provided to the client device can cause the client device to perform other actions in response to a particular user interaction. For example, a client device may toggle the active / inactive state of a campaign for a particular subregion in response to image selection in a particular subregion. In this example, the script may cause the client device to send data to the content delivery system that specifies the active / inactive toggle for a particular subregion.
別の例では、特定のサブ領域の選択が、クライアントデバイスに特定のサブ領域のマップを要求させてもよい。この例では、スクリプトが、クライアントデバイスに、特定のサブ領域の画像を表す画像ファイルがキャッシュ内に記憶されているかどうかを判定するために、そのキャッシュにアクセスさせてもよい。そうである場合、クライアントデバイスは、キャッシュから画像ファイルを取得し、ユーザインターフェース内の特定のサブ領域の画像を提示することができる。そうでない場合、スクリプトは、クライアントデバイスに特定のサブ領域のマップの画像を要求させることができる。 In another example, the selection of a particular subregion may cause the client device to request a map of the particular subregion. In this example, the script may allow the client device to access the cache to determine if an image file representing an image in a particular subregion is stored in the cache. If so, the client device can retrieve the image file from the cache and present an image of a particular subregion within the user interface. Otherwise, the script can force the client device to request an image of the map for a particular subregion.
図4は、画像を圧縮するための例示的なプロセス400のフローチャートである。プロセス400の動作は、たとえば、図1のファイル圧縮器129のような1つまたは複数の処理装置によって実施されることが可能である。プロセス400はまた、コンピュータ記憶媒体上に記憶された命令によって実施されることが可能であり、データ処理装置による命令の実行は、データ処理装置にプロセス400の動作を実行させる。
FIG. 4 is a flowchart of an
画像ファイルが受信される(402)。画像ファイルは、特定の領域の画像を表してもよく、特定の領域のサブ領域を描画してもよい。画像ファイルは、PNG、GIF、JPEG、または他の適切な画像ファイルフォーマットであってもよい。 The image file is received (402). The image file may represent an image of a specific area or may draw a sub-area of a specific area. The image file may be in PNG, GIF, JPEG, or any other suitable image file format.
複数の異なるサブ領域の各々に関する画像内の位置を指定するデータが受信される(404)。たとえば、データは、各サブ領域について、各サブ領域に対応する画像内のx-y座標(またはx-y座標の範囲)を指定してもよい。 Data is received that specifies the position in the image for each of several different subregions (404). For example, the data may specify x-y coordinates (or a range of x-y coordinates) in the image corresponding to each sub-region for each sub-region.
異なる色が各サブ領域について識別される(406)。たとえば、各サブ領域は、RGBカラーモデルに基づいて異なる色が割り当てられてもよい。 Different colors are identified for each subregion (406). For example, each subregion may be assigned a different color based on the RGB color model.
画像ファイルが圧縮される(408)。画像ファイルは、各サブ領域の位置と各サブ領域に割り当てられた色とに基づいて圧縮される。たとえば、画像ファイルは、各サブ領域について、サブ領域に割り当てられた色とその対応する位置とを記憶してもよい。このように画像を圧縮することは、画像が単色で色付けされたサブ領域を含むとき、サブ領域が多色で色付けされた場合よりも少ないデータを使用して各サブ領域が画像ファイル内で表されることが可能であるので、はるかにより低いピクセルあたりのコスト(たとえば、表示ピクセルあたりの画像のデータサイズの点で)をもたらすことができる。 The image file is compressed (408). The image file is compressed based on the position of each sub-region and the colors assigned to each sub-region. For example, the image file may store the colors assigned to the sub-regions and their corresponding positions for each sub-region. Compressing an image in this way means that when the image contains monochromatically colored subregions, each subregion is tabulated in the image file with less data than if the subregions were multicolored. It is possible to result in a much lower cost per pixel (eg, in terms of the data size of the image per display pixel).
このように画像ファイルを圧縮することによって、画像ファイルは、ネットワークを介し、非圧縮画像ファイルよりも少ない帯域幅を使用して、より迅速に送信されることが可能である。加えて、クライアントデバイスのGPUは、画像内の各位置の詳細データを含む非圧縮画像ファイルを提示することができるよりも迅速に圧縮画像ファイルを提示することができる。 By compressing the image file in this way, the image file can be transmitted over the network more quickly, using less bandwidth than the uncompressed image file. In addition, the GPU of the client device can present the compressed image file faster than it can present the uncompressed image file containing the detailed data of each position in the image.
実施形態がコンテンツ配信管理システムのためのマップインターフェースを参照して一般的に説明されているが、主題は、データがユーザに提供される代替システムにおいて適用可能であり、コンテンツ配信管理に限定されないことが理解されよう。 Although embodiments are generally described with reference to a map interface for a content delivery management system, the subject matter is applicable in alternative systems where the data is provided to the user and is not limited to content delivery management. Will be understood.
本明細書で説明される主題の実施形態および動作は、デジタル電子回路において、または本明細書において開示される構造およびそれらの構造的均等物を含むコンピュータソフトウェア、ファームウェア、もしくはハードウェアにおいて、またはそれらのうちの1つもしくは複数の組み合わせにおいて実施されることが可能である。本明細書で説明される主題の実施形態は、データ処理装置による実行のため、またはデータ処理装置の動作を制御するためにコンピュータ記憶媒体上に符号化された1つまたは複数のコンピュータプログラム、すなわち、コンピュータプログラム命令の1つまたは複数のモジュールとして実装されることが可能である。代替的には、または加えて、プログラム命令は、データ処理装置による実行のための適切なレシーバ装置への送信のために情報を符号化するために生成された人工的に生成された伝搬信号、たとえば、機械生成された電気信号、光信号、または電磁信号において符号化されることが可能である。コンピュータ記憶媒体は、コンピュータ可読記憶媒体、コンピュータ可読基板、ランダムもしくはシリアルアクセスメモリアレイもしくはデバイス、またはそれらの1つもしくは複数の組み合わせであることができ、またはそれらの中に含まれることが可能である。さらに、コンピュータ記憶媒体は、伝搬信号ではないが、人工的に生成された伝搬信号内に符号化されたコンピュータプログラム命令のソースまたは宛先であることが可能である。コンピュータ記憶媒体はまた、1つまたは複数の別個の物理的構成要素または媒体(たとえば、複数のCD、ディスク、または他の記憶デバイス)であることもでき、またはそれらの中に含まれることが可能である。 The embodiments and operations of the subject matter described herein are in digital electronic circuits, or in computer software, firmware, or hardware, including the structures disclosed herein and their structural equivalents, or them. It can be implemented in one or more combinations of. Embodiments of the subject described herein are one or more computer programs encoded on a computer storage medium for execution by a data processor or to control the operation of the data processor. , Can be implemented as one or more modules of computer program instructions. Alternatively, or in addition, a program instruction is an artificially generated propagating signal, generated to encode information for transmission to a suitable receiver device for execution by a data processor. For example, it can be encoded in a machine-generated electrical, optical, or electromagnetic signal. The computer storage medium can be, or can be contained within, a computer-readable storage medium, a computer-readable board, a random or serial access memory array or device, or a combination thereof. .. Further, the computer storage medium can be a source or destination of computer program instructions encoded in an artificially generated propagating signal, although not a propagating signal. Computer storage media can also be, or can be contained within, one or more separate physical components or media (eg, multiple CDs, disks, or other storage devices). Is.
本明細書で説明される動作は、1つもしくは複数のコンピュータ可読記憶デバイス上に記憶されるか、または他のソースから受信されたデータに対してデータ処理装置によって実行される命令として実装されることが可能である。 The operations described herein are implemented as instructions stored on one or more computer-readable storage devices or executed by a data processor for data received from other sources. It is possible.
「データ処理装置」という用語は、例として、プログラム可能なプロセッサ、コンピュータ、システムオンチップ、もしくは複数のそれら、または上記のものの組み合わせを含む、データを処理するためのすべての種類の装置、デバイス、および機械を包含する。本装置は、専用論理回路、たとえば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)を含むことができる。本装置はまた、ハードウェアに加えて、問題のコンピュータプログラムのための実行環境を作成するコード、たとえば、プロセッサファームウェアを構成するコード、プロトコルスタック、データベース管理システム、オペレーティングシステム、クロスプラットフォームランタイム環境、仮想マシン、またはそれらのうちの1つもしくは複数の組み合わせを含むことができる。本装置および実行環境は、ウェブサービスインフラストラクチャ、分散コンピューティングインフラストラクチャおよびグリッドコンピューティングインフラストラクチャのような、様々な異なるコンピューティングモデルインフラストラクチャを実現することができる。 The term "data processor" refers to all types of devices, devices, for processing data, including, for example, programmable processors, computers, system-on-chip, or multiple of them, or a combination of the above. And include machines. The device may include dedicated logic circuits, such as FPGAs (Field Programmable Gate Arrays) or ASICs (Application Specific Integrated Circuits). In addition to the hardware, the device also creates code that creates an execution environment for the computer program in question, such as the code that makes up the processor firmware, protocol stacks, database management systems, operating systems, cross-platform runtime environments, virtual machines. It can contain machines, or one or more combinations of them. The device and execution environment can implement a variety of different computing model infrastructures, such as web service infrastructures, distributed computing infrastructures and grid computing infrastructures.
(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとしても知られる)コンピュータプログラムは、コンパイラ型言語もしくはインタープリタ型言語、宣言型言語もしくは手続型言語を含む任意の形式のプログラミング言語において書かれることが可能であり、スタンドアロンプログラムとして、またはモジュール、コンポーネント、サブルーチン、オブジェクト、もしくはコンピューティング環境において使用するのに適した他の単位として、を含む任意の形式において展開されることが可能である。コンピューティングプログラムは、ファイルシステム内のファイルに対応してもよいが、必ずしも対応する必要はない。プログラムは、他のプログラムもしくはデータ(たとえば、マークアップ言語文書内に記憶された1つもしくは複数のスクリプト)を保持するファイルの一部内、問題のプログラム専用の単一のファイル内、または複数の連携ファイル(たとえば、1つもしくは複数のモジュール、サブプログラム、もしくはコードの一部を記憶するファイル)内に記憶されることが可能である。コンピュータプログラムは、単一のコンピュータ上で、または1つのサイトにおいて配置されるかもしくは複数のサイトにわたって分散され、通信ネットワークによって相互接続された複数のコンピュータ上で実行されるように展開されることが可能である。 Computer programs (also known as programs, software, software applications, scripts, or code) can be written in any form of programming language, including compiler or interpreted languages, declarative or procedural languages. It can be deployed in any format, including as a stand-alone program or as a module, component, subroutine, object, or other unit suitable for use in a computing environment. The computing program may, but does not necessarily, support the files in the file system. A program may be part of a file that holds other programs or data (eg, one or more scripts stored in a markup language document), in a single file dedicated to the program in question, or in multiple collaborations. It can be stored in a file (for example, a file that stores one or more modules, subprograms, or parts of code). Computer programs may be deployed on a single computer, or distributed at one site or distributed across multiple sites, to run on multiple computers interconnected by communication networks. It is possible.
本明細書で説明されるプロセスおよび論理フローは、入力データに対して動作し、出力を生成することによってアクションを実行するために1つまたは複数のコンピュータプログラムを実行する1つまたは複数のプログラム可能なプロセッサによって実行されることが可能である。プロセスおよび論理フローはまた、専用論理回路、たとえばFPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によって実行されることが可能であり、本装置はまた、専用論理回路、たとえばFPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)として実装されることが可能である。 The processes and logical flows described herein are programmable one or more computers that operate on input data and execute one or more computer programs to perform actions by producing output. Can be run by any processor. Processes and logic flows can also be executed by dedicated logic circuits such as FPGAs (Field Programmable Gate Arrays) or ASICs (Application Specific Integrated Circuits), and the instrument can also be executed by dedicated logic circuits such as FPGAs (FPGAs). It can be implemented as a field programmable gate array) or an ASIC (application specific integrated circuit).
コンピュータプログラムの実行に適したプロセッサは、例として、汎用マイクロプロセッサと専用マイクロプロセッサの両方と、任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサとを含む。一般にプロセッサは、読み出し専用メモリまたはランダムアクセスメモリまたはその両方から、命令とデータとを受信する。コンピュータの必須要素は、命令に従ってアクションを実行するためのプロセッサと、命令およびデータを記憶するための1つまたは複数のメモリデバイスとである。一般に、コンピュータは、データを記憶するための1つまたは複数の大容量記憶デバイス、たとえば磁気ディスク、光磁気ディスク、または光ディスクも含むか、またはそれらからデータを受信するか、もしくはそれらにデータを送信するか、もしくはその両方を行うように動作可能に結合される。しかしながら、コンピュータは、そのようなデバイスを有する必要はない。さらに、コンピュータは、別のデバイス、たとえばいくつか例を挙げると、携帯電話、携帯情報端末(PDA)、モバイルオーディオもしくはビデオプレーヤ、ゲームコンソール、全地球測位システム(GPS)レシーバ、またはポータブル記憶デバイス(たとえば、ユニバーサルシリアルバス(USB)フラッシュドライブ)内に組み込まれることが可能である。コンピュータプログラム命令およびデータを記憶するのに適したデバイスは、例として、半導体メモリデバイス、たとえばEPROM、EEPROM、およびフラッシュメモリデバイス、磁気ディスク、たとえば内部ハードディスクまたはリムーバブルディスク、光磁気ディスク、ならびにCDROMおよびDVD-ROMを含む、すべての形態の不揮発性メモリ、媒体およびメモリデバイスを含む。プロセッサおよびメモリは、専用論理回路によって補完されることが可能であり、またはそれに組み込まれることが可能である。 Suitable processors for running computer programs include, for example, both general purpose and dedicated microprocessors, and any one or more processors of any type of digital computer. Processors typically receive instructions and data from read-only memory and / or random access memory. Essential elements of a computer are a processor for performing actions according to instructions and one or more memory devices for storing instructions and data. In general, a computer also includes or receives data from or sends data to one or more mass storage devices for storing data, such as magnetic disks, magneto-optical disks, or optical disks. Operated to do or both. However, the computer does not need to have such a device. In addition, a computer can be another device, such as a mobile phone, personal digital assistant (PDA), mobile audio or video player, game console, global positioning system (GPS) receiver, or portable storage device (to name a few). For example, it can be built into a universal serial bus (USB) flash drive). Suitable devices for storing computer program instructions and data include, for example, semiconductor memory devices such as EPROM, EEPROM, and flash memory devices, magnetic disks such as internal hard disks or removable disks, magneto-optical disks, and CDROMs and DVDs. -Includes all forms of non-volatile memory, media and memory devices, including ROM. Processors and memory can be complemented or incorporated into dedicated logic circuits.
ユーザとのインタラクションを提供するために、本明細書で開示される主題の実施形態は、情報をユーザに表示するためのディスプレイデバイス、たとえばCRT(陰極線管)またはLCD(液晶ディスプレイ)モニタと、ユーザが入力をコンピュータに提供することができるキーボードおよびポインティングデバイス、たとえばマウスまたはトラックボールとを有するコンピュータ上で実施されることが可能である。同様にユーザとのインタラクションを提供するために他の種類のデバイスが使用されることが可能であり、たとえばユーザに提供されるフィードバックは、任意の形態の感覚フィードバック、たとえば視覚フィードバック、聴覚フィードバック、または触覚フィードバックであることが可能であり、ユーザからの入力は、音響、音声、または触覚入力を含む任意の形態で受信されることが可能である。加えて、コンピュータは、ユーザによって使用されるデバイスに文書を送信し、そこから文書を受信することによって、たとえばウェブブラウザから受信された要求に応答してユーザのクライアントデバイス上のウェブブラウザにウェブページを送信することによって、ユーザとインタラクションすることができる。 To provide interaction with the user, embodiments of the subject matter disclosed herein include a display device for displaying information to the user, such as a CRT (cathode tube) or LCD (liquid crystal display) monitor, and the user. Can be performed on a computer that has a keyboard and pointing device that can provide input to the computer, such as a mouse or trackball. Similarly, other types of devices can be used to provide interaction with the user, eg, the feedback provided to the user is any form of sensory feedback, such as visual feedback, auditory feedback, or It can be tactile feedback and the input from the user can be received in any form, including acoustic, audio, or tactile input. In addition, the computer sends a document to and from a device used by the user, and by receiving the document, for example, in response to a request received from a web browser, a web page to the web browser on the user's client device. Can interact with the user by sending.
本明細書で説明される実施形態は、たとえばデータサーバとしてバックエンド構成要素と含み、たとえばたとえば、アプリケーションサーバとしてミドルウェア構成要素を含み、またはフロントエンド構成要素、たとえばユーザが本明細書で説明される主題の実装形態とインタラクションすることができるグラフィカルユーザインターフェースまたはウェブブラウザを有するクライアントコンピュータ、もしくは、1つもしくは複数のそのようなバックエンド構成要素、ミドルウェア構成要素、またはフロントエンド構成要素の任意の組み合わせを含むコンピューティングシステムにおいて実施されることが可能である。システムの構成要素は、任意の形式または媒体のデジタルデータ通信、たとえば通信ネットワークによって相互接続されることが可能である。通信ネットワークの例は、ローカルエリアネットワーク("LAN")およびワイドエリアネットワーク("WAN")、インターネットワーク(たとえば、インターネット)、ならびにピアツーピアネットワーク(たとえば、アドホックピアツーピアネットワーク)を含む。 The embodiments described herein include, for example, a back-end component as a data server, eg, a middleware component as an application server, or a front-end component, eg, a user as described herein. A client computer with a graphical user interface or web browser that can interact with the subject implementation, or any combination of one or more such back-end, middleware, or front-end components. It can be implemented in including computing systems. The components of the system can be interconnected by digital data communication of any form or medium, such as a communication network. Examples of communication networks include local area networks ("LAN") and wide area networks ("WAN"), internetworks (eg, the Internet), and peer-to-peer networks (eg, ad hoc peer-to-peer networks).
コンピューティングシステムは、クライアントとサーバとを含むことができる。クライアントおよびサーバは、一般に互いに遠隔であり、典型的には通信ネットワークを介してインタラクションする。クライアントとサーバとの関係は、それぞれのコンピュータ上で実行され、互いにクライアント-サーバ関係を有するコンピュータプログラムのおかげで生じる。いくつかの実施形態では、サーバは、データ(たとえば、HTMLページ)をクライアントデバイスに(たとえば、クライアントデバイスとインタラクションするユーザにデータを表示し、ユーザからユーザ入力を受信する目的のために)送信する。クライアントデバイスにおいて生成されたデータ(たとえば、ユーザインタラクションの結果)は、サーバにおいてクライアントデバイスから受信されることが可能である。 A computing system can include a client and a server. Clients and servers are generally remote from each other and typically interact over a communication network. The client-server relationship is created thanks to computer programs that run on their respective computers and have a client-server relationship with each other. In some embodiments, the server sends data (eg, an HTML page) to a client device (eg, for the purpose of displaying the data to a user interacting with the client device and receiving user input from the user). .. The data generated on the client device (eg, the result of user interaction) can be received from the client device on the server.
本明細書は、多くの具体的な実装形態の詳細を含むが、これらは、任意の発明の範囲、または特許請求されてもよい発明の範囲に対する限定として解釈されるべきではなく、むしろ、特定の発明の特定の実施形態に特有の特徴の説明として解釈されるべきである。別個の実施形態の文脈において本明細書で説明される特定の特徴はまた、単一の実施形態において組み合わせて実装されることが可能である。逆に、単一の実施形態の文脈において説明される様々な特徴はまた、複数の実施形態において別々に、または任意の適切な部分的組み合わせにおいて実装されることが可能である。さらに、特徴は、特定の組み合わせにおいて作用するものとして上記で説明され、当初はそのように特許請求されている場合があるが、特許請求された組み合わせからの1つまたは複数の特徴は、場合によっては組み合わせから削除されることが可能であり、特許請求された組み合わせは、部分的組み合わせまたは部分的組み合わせの変形に向けられてもよい。 The present specification includes details of many specific implementations, but these should not be construed as limitations to the scope of any invention, or the scope of claims that may be claimed, but rather specific. It should be construed as an explanation of the characteristics specific to a particular embodiment of the invention. The particular features described herein in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, the various features described in the context of a single embodiment can also be implemented separately in multiple embodiments or in any suitable partial combination. Further, the features are described above as acting in a particular combination and may be initially claimed as such, but one or more features from the claimed combination may optionally be. Can be removed from the combination, and the claimed combination may be directed to a partial combination or a variant of the partial combination.
同様に、動作は、特定の順序で図面に示されているが、これは、所望の結果を達成するために、そのような動作が示された特定の順序または逐次的な順序で実行されること、またはすべての図示された動作が実行されることを必要とするものとして理解されるべきではない。特定の状況では、マルチタスク処理および並列処理が有利な場合がある。さらに、上記で説明した様々なシステム構成要素の分離は、すべての実施形態においてそのような分離を必要とするものとして理解されるべきではなく、説明されたプログラム構成要素およびシステムは、一般に単一のソフトウェア製品内に一緒に統合されるか、または複数のソフトウェア製品にパッケージ化されることが可能であることが理解されるべきである。 Similarly, the actions are shown in the drawings in a particular order, but this is performed in a particular order or sequential order in which such actions are shown to achieve the desired result. That, or should not be understood as requiring all the illustrated actions to be performed. In certain situations, multitasking and parallelism may be advantageous. Moreover, the separation of the various system components described above should not be understood as requiring such separation in all embodiments, and the program components and systems described are generally single. It should be understood that it is possible to integrate together within a software product or package into multiple software products.
したがって、主題の特定の実施形態について説明した。他の実施形態は、以下の特許請求の範囲内にある。場合によっては、特許請求の範囲内に列挙された動作は、異なる順序で実行されることが可能であり、依然として所望の結果を達成することができる。加えて、添付図面において記されたプロセスは、所望の結果を達成するために、示された特定の順序または逐次的な順序を必ずしも必要としない。特定の実装形態では、マルチタスク処理および並列処理が有利な場合がある。 Therefore, specific embodiments of the subject have been described. Other embodiments are within the scope of the following claims. In some cases, the actions listed within the claims can be performed in different orders and still achieve the desired result. In addition, the processes described in the accompanying drawings do not necessarily require the specific order or sequential order shown to achieve the desired result. In certain implementations, multitasking and parallel processing may be advantageous.
100 環境
110 データ管理システム
111 フロントエンドサーバ
113 データセレクタ
115 アカウントデータ記憶デバイス
120 マップユーザインターフェース生成器
121 マップレンダリングサーバ
122 マッピングサービス
123 マップクライアント
124 マップデータ記憶デバイス
125 マップ画像ファイル生成器
126 境界検出器
127 視覚的特徴セレクタ
128 インデックス生成器
129 ファイル圧縮器
130 データ通信ネットワーク、ネットワーク
150 クライアントデバイス
155 マップビューア
157 インタラクティブマップユーザインターフェース
200 スクリーンショット
210 インタラクティブマップユーザインターフェース
220 画像
230 カーソル
240 オーバレイ
100 environment
110 Data management system
111 Front-end server
113 Data selector
115 Account data storage device
120 Map User Interface Generator
121 Map Rendering Server
122 Mapping service
123 map client
124 Map data storage device
125 Map image file generator
126 Boundary detector
127 Visual Feature Selector
128 Index Generator
129 File compressor
130 Data communication network, network
150 client device
155 Map Viewer
157 Interactive Map User Interface
200 screenshots
210 interactive map user interface
220 images
230 cursor
240 overlay
Claims (20)
前記1つまたは複数のサーバによって、前記特定のグラフィック領域のマップを描画するとともに、生成される画像ファイルより大きく、より多くのメモリを記憶するために必要とする、レンダリングされたマップキャンバスの画像を表す画像ファイルを生成するステップと、
前記画像によって描画された視覚的境界に少なくとも基づいて、前記画像内の1つまたは複数のサブ領域を検出するステップと、
前記異なるサブ領域のための前記属性データに基づいて異なる視覚的特徴を前記画像内の前記異なるサブ領域の各々に割り当てるステップであって、前記電子コンテンツアイテムとのユーザインタラクションの異なる数量が、前記異なる視覚的特徴によって表される、ステップと、
前記1つまたは複数のサーバによって、前記異なるサブ領域の各々が前記異なるサブ領域に対応する前記異なる視覚的特徴を使用して提示される前記画像を提示するように前記クライアントデバイスのユーザインターフェースを構成するステップと
を備える、方法。 A step in receiving a request from a client device to present an interactive map user interface that draws (i) a particular graphic area and (ii) account data for an online account by one or more servers. Thus, the account data, for each of the plurality of different sub-regions of the particular graphic region, the user interaction with the plurality of different electronic content items of the online account to the plurality of different user devices located in the sub-region. A step and a step that includes attribute data indicating how many occurrences occurred when the electronic content item was delivered, and each of the electronic content items is different from the interactive map user interface.
The one or more servers draws a map of the particular graphic area, as well as a rendered map canvas image that is larger than the generated image file and needs to store more memory. Steps to generate the image file to represent,
A step of detecting one or more sub-regions in the image, at least based on the visual boundaries drawn by the image.
A step of assigning different visual features to each of the different sub-regions in the image based on the attribute data for the different sub-regions, wherein different quantities of user interaction with the electronic content item are said different. Steps and, represented by visual features,
The one or more servers configure the user interface of the client device such that each of the different sub-regions presents the image presented using the different visual features corresponding to the different sub-regions. A method that includes steps to do.
前記画像ファイル内に、特定のサブ領域ごとに、前記サブ領域に関する前記RGB色と前記画像内の前記特定のサブ領域の位置を指定するデータとを記憶することと
を含む、圧縮技法を使用して、前記画像ファイルのデータサイズを低減するステップをさらに備える、請求項1に記載の方法。 Assigning specific red, green, and blue (RGB) colors to which the subregions of the image are presented to each subregion of the image.
A compression technique is used that includes storing in the image file, for each particular sub-region, the RGB color with respect to the sub-region and data specifying the position of the particular sub-region in the image. The method according to claim 1, further comprising a step of reducing the data size of the image file.
前記画像内の前記特定の位置に対応する特定のサブ領域の第2のマップを描画する更新された画像を生成するステップであって、前記生成するステップが、マッピングサービスを使用して前記特定のサブ領域の前記第2のマップをレンダリングするステップと、前記レンダリングされた第2のマップの第2の画像を生成するステップとを備える、ステップと、
前記クライアントデバイスに、前記レンダリングされた第2のマップを提供する代わりに前記更新された画像を表すデータを含む第2の画像ファイルを提供するステップと
をさらに備える、請求項1に記載の方法。 A step of receiving data from the client device that specifies the selection of a particular position in the image on the one or more servers.
A step of generating an updated image that draws a second map of a particular subregion corresponding to the particular location in the image, wherein the generating step uses a mapping service to generate the particular. A step comprising rendering the second map of the sub-region and generating a second image of the rendered second map.
The method of claim 1, further comprising providing the client device with a second image file containing data representing the updated image instead of providing the rendered second map.
前記ズームレベルに基づいて、前記選択に関する粒度レベルを決定するステップと、
前記選択に関する前記粒度レベルに基づいて、前記選択された位置に対応する前記特定のサブ領域を決定するステップと
をさらに備える、請求項4に記載の方法。 A step of receiving data from the client device that specifies a zoom level for the image at the time of selection.
Steps to determine the particle size level for the selection based on the zoom level,
The method of claim 4, further comprising determining the particular subregion corresponding to the selected position based on the particle size level for the selection.
前記画像ファイルが、前記レンダリングされたマップを使用して生成され、
前記画像ファイルが、ポータブルネットワークグラフィックス(PNG)ファイルフォーマットを備える、請求項1に記載の方法。 A step of rendering a map of the particular graphic area using a mapping service, a step of generating a canvas of the particular graphic area, and a plurality of programming elements used to generate the map. With more steps, with a step to load the graphic elements,
The image file was generated using the rendered map and
The method of claim 1, wherein the image file comprises a portable network graphics (PNG) file format.
マップ画像ファイル生成器であって、
前記特定のグラフィック領域のマップを描画するとともに、生成される画像ファイルより大きく、より多くのメモリを記憶するために必要とする、レンダリングされたマップキャンバスの画像を表す画像ファイルを生成することと、
前記画像によって描画された視覚的境界に少なくとも基づいて、前記画像内の1つまたは複数のサブ領域を検出することと、
前記異なるサブ領域のための前記属性データに基づいて異なる視覚的特徴を前記画像内の前記異なるサブ領域の各々に割り当てることであって、前記電子コンテンツアイテムとのユーザインタラクションの異なる数量が、前記異なる視覚的特徴によって表される、ことと
をする、マップ画像ファイル生成器と
を備え、
前記1つまたは複数のフロントエンドサーバが、前記異なるサブ領域の各々が前記異なるサブ領域に対応する前記異なる視覚的特徴を使用して提示される前記画像を提示するように前記クライアントデバイスのユーザインターフェースを構成する、システム。 One or more front-end servers that receive requests from client devices to present an interactive map user interface that draws (i) a specific graphic area and (ii) account data for an online account. Thus, the account data, for each of the plurality of different sub-regions of the particular graphic region, the user interaction with the plurality of different electronic content items of the online account to the plurality of different user devices located in the sub-region. One or more front-end servers, each of which contains attribute data indicating how many occurrences occurred when the electronic content item was delivered, each of which is different from the interactive map user interface.
Map image file generator
To draw a map of the particular graphic area and generate an image file that represents the image of the rendered map canvas, which is larger than the generated image file and needs to store more memory.
To detect one or more sub-regions in the image, at least based on the visual boundaries drawn by the image.
By assigning different visual features to each of the different sub-regions in the image based on the attribute data for the different sub-regions, different quantities of user interaction with the electronic content item are said to be different. Equipped with a map image file generator that does and does what is represented by visual features,
The user interface of the client device such that the one or more front-end servers present the images, each of which is presented using the different visual features corresponding to the different subregions. The system that makes up.
前記画像ファイル内に、特定のサブ領域ごとに、前記サブ領域に関する前記RGB色と前記画像内の前記特定のサブ領域の位置を指定するデータとを記憶することと
を含む、圧縮技法を使用して、前記画像を記憶する画像ファイルのデータサイズを圧縮する、ファイル圧縮器をさらに備える、請求項8に記載のシステム。 Assigning specific red, green, and blue (RGB) colors to which the subregions of the image are presented to each subregion of the image.
A compression technique is used that includes storing in the image file, for each particular sub-region, the RGB color with respect to the sub-region and data specifying the position of the particular sub-region in the image. The system according to claim 8, further comprising a file compressor that compresses the data size of the image file that stores the image.
前記マップ画像ファイル生成器が、前記画像内の前記特定の位置に対応する前記特定のサブ領域の第2のマップを描画する更新された画像を生成することであって、前記生成することが、マッピングサービスを使用して前記特定のサブ領域の前記第2のマップをレンダリングすることと、前記レンダリングされた第2のマップの第2の画像を生成することとを備える、ことをし、
前記1つまたは複数のフロントエンドサーバが、前記クライアントデバイスに、前記レンダリングされた第2のマップを提供する代わりに前記更新された画像を表すデータを含む第2の画像ファイルを提供する、請求項8に記載のシステム。 The one or more front-end servers receive data from the client device that specifies the selection of a particular location in the image.
The map image file generator is to generate an updated image that draws a second map of the particular subregion corresponding to the particular location in the image. It comprises using a mapping service to render the second map of the particular subregion and generate a second image of the rendered second map.
Claim that the one or more front-end servers provide the client device with a second image file containing data representing the updated image instead of providing the rendered second map. The system described in 8.
前記1つまたは複数のフロントエンドサーバが、前記クライアントデバイスから、前記選択時の前記画像に関するズームレベルを指定するデータを受信し、
前記マップレンダリングサーバが、前記ズームレベルに基づいて、前記選択に関する粒度レベルを決定するように構成され、
前記マップレンダリングサーバが、前記選択に関する前記粒度レベルに基づいて、前記選択された位置に対応する前記特定のサブ領域を決定するように構成される、請求項11に記載のシステム。 Further equipped with a map rendering server for data communication with the one or more front-end servers mentioned above,
The one or more front-end servers receive data from the client device that specifies the zoom level for the image at the time of selection.
The map rendering server is configured to determine the particle size level for the selection based on the zoom level.
11. The system of claim 11, wherein the map rendering server is configured to determine the particular subregion corresponding to the selected location based on the particle size level for the selection.
前記画像ファイルが、前記レンダリングされたマップを使用して生成され、
前記画像ファイルが、ポータブルネットワークグラフィックス(PNG)ファイルフォーマットを備える、請求項8に記載のシステム。 A map rendering server that renders a map of the particular graphic area using a mapping service, the rendering used to generate the canvas for the particular graphic area and to generate the map. Further equipped with a map rendering server, with multiple programming and graphic elements to be loaded,
The image file was generated using the rendered map and
The system of claim 8, wherein the image file comprises a portable network graphics (PNG) file format.
クライアントデバイスから、(i)特定のグラフィック領域と(ii)オンラインアカウントのためのアカウントデータとを描画するインタラクティブマップユーザインターフェースの提示のための要求を受信するステップであって、前記アカウントデータが、前記特定のグラフィック領域の複数の異なるサブ領域の各々について、前記オンラインアカウントの複数の異なる電子コンテンツアイテムとのユーザインタラクションが、前記サブ領域に位置するユーザデバイスに前記電子コンテンツアイテムが配信された際に、いくつ発生したかを表す属性データを含み、前記電子コンテンツアイテムの各々が、前記インタラクティブマップユーザインターフェースとは異なる、ステップと、
前記特定のグラフィック領域のマップを描画するとともに、生成される画像ファイルより大きく、より多くのメモリを記憶するために必要とする、レンダリングされたマップキャンバスの画像を表す画像ファイルを生成するステップと、
前記画像によって描画された視覚的境界に少なくとも基づいて、前記画像内の1つまたは複数のサブ領域を検出するステップと、
前記異なるサブ領域のための前記属性データに基づいて異なる視覚的特徴を前記画像内の前記異なるサブ領域の各々に割り当てるステップであって、前記電子コンテンツアイテムとのユーザインタラクションの異なる数量が、前記異なる視覚的特徴によって表される、ステップと、
前記異なるサブ領域の各々が前記異なるサブ領域に対応する前記異なる視覚的特徴を使用して提示される前記画像を提示するように前記クライアントデバイスのユーザインターフェースを構成するステップと
を含む動作を実行させる命令を含む、非一時的コンピュータ可読記憶媒体。 A non-temporary computer-readable storage medium encoded using a computer program that, when executed by one or more data processing devices, the data processing device.
A step of receiving a request from a client device for presenting an interactive map user interface that draws (i) a particular graphic area and (ii) account data for an online account, wherein the account data is said to be said. For each of a plurality of different sub-regions of a particular graphic region, a user interaction with a plurality of different electronic content items of the online account occurs when the electronic content item is delivered to a user device located in the sub-region. Steps and steps, each of which contains attribute data indicating how many have occurred, are different from the interactive map user interface.
With the steps of drawing a map of the particular graphic area and generating an image file that represents the image of the rendered map canvas, which is larger than the generated image file and needs to store more memory.
A step of detecting one or more sub-regions in the image, at least based on the visual boundaries drawn by the image.
A step of assigning different visual features to each of the different sub-regions in the image based on the attribute data for the different sub-regions, wherein different quantities of user interaction with the electronic content item are said different. Steps and, represented by visual features,
Perform an operation that includes configuring the user interface of the client device so that each of the different subregions presents the image presented using the different visual features corresponding to the different subregions. A non-temporary computer-readable storage medium that contains instructions.
前記画像の前記サブ領域が提示される特定の赤、緑、青(RGB)色を前記画像の各サブ領域に割り当てることと、
前記画像ファイル内に、特定のサブ領域ごとに、前記サブ領域に関する前記RGB色と前記画像内の前記特定のサブ領域の位置を指定するデータとを記憶することと
を含む、圧縮技法を使用して、前記画像ファイルのデータサイズを低減するステップをさらに備える、請求項15に記載の非一時的コンピュータ可読記憶媒体。 The above operation
Assigning specific red, green, and blue (RGB) colors to which the subregions of the image are presented to each subregion of the image.
A compression technique is used that includes storing in the image file, for each particular sub-region, the RGB color with respect to the sub-region and data specifying the position of the particular sub-region in the image. The non-temporary computer-readable storage medium according to claim 15, further comprising a step of reducing the data size of the image file.
前記クライアントデバイスから、前記画像内の特定の位置の選択を指定するデータを受信するステップと、
前記画像内の前記特定の位置に対応する前記特定のサブ領域の第2のマップを描画する更新された画像を生成するステップであって、前記生成するステップが、マッピングサービスを使用して前記特定のサブ領域の前記第2のマップをレンダリングするステップと、前記レンダリングされた第2のマップの第2の画像を生成するステップとを備える、ステップと、
前記クライアントデバイスに、前記レンダリングされた第2のマップを提供する代わりに前記更新された画像を表すデータを含む第2の画像ファイルを提供するステップと
をさらに備える、請求項15に記載の非一時的コンピュータ可読記憶媒体。 The above operation
A step of receiving data from the client device that specifies the selection of a particular position in the image.
A step of generating an updated image that draws a second map of the particular subregion corresponding to the particular position in the image, wherein the generating step is said to be specified using a mapping service. A step comprising the step of rendering the second map of the subregion of and the step of generating a second image of the rendered second map.
The non-temporary aspect of claim 15, further comprising providing the client device with a second image file containing data representing the updated image instead of providing the rendered second map. Computer-readable storage medium.
前記クライアントデバイスから、前記選択時の前記画像に関するズームレベルを指定するデータを受信するステップと、
前記ズームレベルに基づいて、前記選択に関する粒度レベルを決定するステップと、
前記選択に関する前記粒度レベルに基づいて、前記選択された位置に対応する前記特定のサブ領域を決定するステップと
をさらに備える、請求項18に記載の非一時的コンピュータ可読記憶媒体。 The above operation
A step of receiving data from the client device that specifies a zoom level for the image at the time of selection.
Steps to determine the particle size level for the selection based on the zoom level,
The non-temporary computer-readable storage medium of claim 18, further comprising determining the particular subregion corresponding to the selected position based on the particle size level for the selection.
マッピングサービスを使用して、前記特定のグラフィック領域のマップをレンダリングするステップであって、前記特定のグラフィック領域のキャンバスを生成するステップと、前記マップを生成するために使用される複数のプログラミング要素とグラフィック要素とをロードするステップとを備える、ステップを備え、
前記画像ファイルが、前記レンダリングされたマップを使用して生成され、
前記画像ファイルが、ポータブルネットワークグラフィックス(PNG)ファイルフォーマットを備える、請求項15に記載の非一時的コンピュータ可読記憶媒体。 The above operation
A step of rendering a map of the particular graphic area using a mapping service, a step of generating a canvas of the particular graphic area, and a plurality of programming elements used to generate the map. With steps, with steps to load graphic elements
The image file was generated using the rendered map and
The non-temporary computer-readable storage medium according to claim 15, wherein the image file comprises a portable network graphics (PNG) file format.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US15/005,820 | 2016-01-25 | ||
| US15/005,820 US9922426B2 (en) | 2016-01-25 | 2016-01-25 | Reducing latency in presenting map interfaces at client devices |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2018538767A Division JP6648285B2 (en) | 2016-01-25 | 2016-12-01 | Reduction of waiting time in map interface |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2020074155A JP2020074155A (en) | 2020-05-14 |
| JP6853391B2 true JP6853391B2 (en) | 2021-03-31 |
Family
ID=57796962
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2018538767A Active JP6648285B2 (en) | 2016-01-25 | 2016-12-01 | Reduction of waiting time in map interface |
| JP2020003689A Active JP6853391B2 (en) | 2016-01-25 | 2020-01-14 | Reduced latency in the map interface |
Family Applications Before (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2018538767A Active JP6648285B2 (en) | 2016-01-25 | 2016-12-01 | Reduction of waiting time in map interface |
Country Status (7)
| Country | Link |
|---|---|
| US (3) | US9922426B2 (en) |
| EP (1) | EP3408833B1 (en) |
| JP (2) | JP6648285B2 (en) |
| KR (2) | KR102366752B1 (en) |
| CN (1) | CN107231817A (en) |
| AU (3) | AU2016389048B2 (en) |
| WO (1) | WO2017131858A1 (en) |
Families Citing this family (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR102181345B1 (en) * | 2018-02-20 | 2020-11-20 | 한국전자통신연구원 | Method for visualizing image based on hierarchichal presentation of image tile information, device and system using the method |
| WO2019191584A1 (en) * | 2018-03-30 | 2019-10-03 | FullStory, Inc. | Capturing and processing interactions with a user interface of a native application |
| CN108671541B (en) * | 2018-04-27 | 2021-09-28 | 腾讯科技(深圳)有限公司 | Data storage method and device and storage medium |
| US11145092B2 (en) * | 2018-08-08 | 2021-10-12 | Adobe Inc. | Graphical element color diffusion techniques |
| CN109542987B (en) * | 2018-10-09 | 2021-10-22 | 中国电子科技集团公司第二十八研究所 | An Online Map Saving Method Based on Canvas |
| KR20210037774A (en) | 2019-09-27 | 2021-04-07 | 주식회사 현대제이콤 | File managing method for maps |
| CN112115224B (en) * | 2020-09-24 | 2024-03-08 | 北京百度网讯科技有限公司 | Auxiliary quality inspection methods, devices, electronic equipment and storage media for map data |
| CN112433651B (en) * | 2020-11-13 | 2022-03-11 | 北京鸿腾智能科技有限公司 | Area identification method, device, storage medium and device |
| US12511261B2 (en) | 2021-10-15 | 2025-12-30 | Lognovations Holdings, Llc | Encoding / decoding system and method |
| CN115131484B (en) * | 2022-05-30 | 2025-07-25 | 阿里巴巴(中国)有限公司 | Image rendering method, computer-readable storage medium, and image rendering apparatus |
| CN115272945B (en) * | 2022-09-27 | 2023-01-03 | 江苏衣升元气服饰科技有限公司 | Data processing method and device suitable for clothes |
| CN116774900B (en) * | 2023-08-24 | 2023-12-12 | 中招国际招标有限公司 | Interaction method of electronic map of engineering project management system |
| CN117332102B (en) * | 2023-11-30 | 2024-02-06 | 陕西建一建设有限公司 | A BIM-based construction data optimization storage method |
Family Cites Families (50)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3882569B2 (en) * | 1996-01-11 | 2007-02-21 | ソニー株式会社 | Information processing method and apparatus, information providing method and apparatus |
| JP3503397B2 (en) | 1997-02-25 | 2004-03-02 | Kddi株式会社 | Map display system |
| GB2346786A (en) | 1999-02-09 | 2000-08-16 | Ibm | Image maps |
| JP2001125938A (en) * | 1999-10-26 | 2001-05-11 | Kubota Corp | Layout drawing creating method and apparatus, and recording medium |
| US7447509B2 (en) * | 1999-12-22 | 2008-11-04 | Celeritasworks, Llc | Geographic management system |
| JP2002055990A (en) * | 2000-08-11 | 2002-02-20 | Dainippon Printing Co Ltd | Map-related information provision system |
| JP2002189674A (en) * | 2000-12-22 | 2002-07-05 | Kokusai Kogyo Co Ltd | Image information distributing system |
| KR20010088887A (en) * | 2001-02-02 | 2001-09-29 | 유명순 | Display method of living formation using a map interface |
| CA2335445A1 (en) * | 2001-02-09 | 2002-08-09 | Lasoo Inc. | Internet search tool using geographically selective features |
| US7120293B2 (en) | 2001-11-30 | 2006-10-10 | Microsoft Corporation | Interactive images |
| AU2003228329A1 (en) | 2002-03-15 | 2003-09-29 | Summus, Inc. | Methods and systems for downloading and viewing maps |
| US20060058951A1 (en) | 2004-09-07 | 2006-03-16 | Cooper Clive W | System and method of wireless downloads of map and geographic based data to portable computing devices |
| US20060058953A1 (en) | 2004-09-07 | 2006-03-16 | Cooper Clive W | System and method of wireless downloads of map and geographic based data to portable computing devices |
| US10198521B2 (en) * | 2005-06-27 | 2019-02-05 | Google Llc | Processing ambiguous search requests in a geographic information system |
| JP4812661B2 (en) * | 2006-03-27 | 2011-11-09 | 株式会社デンソーアイティーラボラトリ | Map display system and map display method |
| US7707379B2 (en) | 2006-07-13 | 2010-04-27 | International Business Machines Corporation | Dynamic latency map for memory optimization |
| KR20080018405A (en) * | 2006-08-24 | 2008-02-28 | 한국문화콘텐츠진흥원 | Computer-readable recording medium recording terrain making program that provides the creation of three-dimensional terrain |
| US8368695B2 (en) * | 2007-02-08 | 2013-02-05 | Microsoft Corporation | Transforming offline maps into interactive online maps |
| US8739123B2 (en) | 2007-05-28 | 2014-05-27 | Google Inc. | Incorporating gadget functionality on webpages |
| EP2272009A4 (en) * | 2008-04-24 | 2011-11-16 | Movideo Pty Ltd | System and method for tracking usage |
| CN102067155A (en) * | 2008-04-25 | 2011-05-18 | 普得有限公司 | A method and system for collecting and processing retail store inventory data |
| CN101477559B (en) * | 2009-01-20 | 2010-12-29 | 华南理工大学 | Geographic Information Perception Method Based on Region Coloring |
| US8190585B2 (en) * | 2010-02-17 | 2012-05-29 | Lockheed Martin Corporation | Supporting multiple different applications having different data needs using a voxel database |
| US20120254804A1 (en) | 2010-05-21 | 2012-10-04 | Sheha Michael A | Personal wireless navigation system |
| US9183221B2 (en) | 2010-08-11 | 2015-11-10 | Root Wireless, Inc. | Component and method for overlying information bearing hexagons on a map display |
| CN101957839A (en) * | 2010-09-15 | 2011-01-26 | 苏州恩巨网络有限公司 | Map file format |
| US9535537B2 (en) | 2010-11-18 | 2017-01-03 | Microsoft Technology Licensing, Llc | Hover detection in an interactive display device |
| US20120213416A1 (en) * | 2011-02-23 | 2012-08-23 | Google Inc. | Methods and systems for browsing heterogeneous map data |
| TW201303624A (en) * | 2011-07-05 | 2013-01-16 | Hon Hai Prec Ind Co Ltd | Checking system and method for information of books |
| US9269091B2 (en) * | 2011-08-31 | 2016-02-23 | Adobe Systems Incorporated | Geographic segmentation systems and methods |
| US8560600B2 (en) | 2011-09-26 | 2013-10-15 | Google Inc. | Managing map elements using aggregate feature identifiers |
| US8612491B2 (en) * | 2011-10-25 | 2013-12-17 | The United States Of America, As Represented By The Secretary Of The Navy | System and method for storing a dataset of image tiles |
| US8803920B2 (en) | 2011-12-12 | 2014-08-12 | Google Inc. | Pre-fetching map tile data along a route |
| US20130321400A1 (en) * | 2012-06-05 | 2013-12-05 | Apple Inc. | 3D Map Views for 3D Maps |
| US20130325343A1 (en) * | 2012-06-05 | 2013-12-05 | Apple Inc. | Mapping application with novel search field |
| US9235906B2 (en) * | 2012-06-10 | 2016-01-12 | Apple Inc. | Scalable processing for associating geometries with map tiles |
| US8781735B2 (en) * | 2012-06-25 | 2014-07-15 | Google Inc. | Adaptive clustering of locations |
| US9066206B2 (en) * | 2012-07-03 | 2015-06-23 | Uber Technologies, Inc. | System and method for providing dynamic supply positioning for on-demand services |
| JP2012248204A (en) * | 2012-07-19 | 2012-12-13 | Zenrin Datacom Co Ltd | Guidance information transmission apparatus |
| US9691128B2 (en) * | 2012-09-20 | 2017-06-27 | Facebook, Inc. | Aggregating and displaying social networking system user information via a map interface |
| US8520018B1 (en) | 2013-01-12 | 2013-08-27 | Hooked Digital Media | Media distribution system |
| SE539172C2 (en) * | 2013-03-13 | 2017-05-02 | Smart Climate Scandinavian Ab | Air conditioning intended to be temporarily connected to at least one aircraft |
| US9208170B1 (en) | 2013-03-15 | 2015-12-08 | Google Inc. | Classifying natural mapping features |
| US9471959B2 (en) | 2013-05-15 | 2016-10-18 | Google Inc. | Water color gradients on a digital map |
| US9710882B2 (en) * | 2013-06-25 | 2017-07-18 | Iteris Inc. | Data overlay for animated map weather display and method of rapidly loading animated raster data |
| US9905043B2 (en) * | 2013-09-10 | 2018-02-27 | Microsoft Technology Licensing, Llc | Techniques to generate digital maps |
| EP3077985B1 (en) * | 2013-12-04 | 2020-05-27 | Urthecast Corp. | Systems and methods for processing distributing earth observation images |
| US9495767B2 (en) * | 2014-05-15 | 2016-11-15 | Google Inc. | Indexed uniform styles for stroke rendering |
| US20160018951A1 (en) * | 2014-07-17 | 2016-01-21 | Microsoft Corporation | Contextual view portals |
| US9600146B2 (en) * | 2015-08-17 | 2017-03-21 | Palantir Technologies Inc. | Interactive geospatial map |
-
2016
- 2016-01-25 US US15/005,820 patent/US9922426B2/en active Active
- 2016-12-01 KR KR1020207008831A patent/KR102366752B1/en active Active
- 2016-12-01 KR KR1020187022781A patent/KR102096497B1/en active Active
- 2016-12-01 AU AU2016389048A patent/AU2016389048B2/en active Active
- 2016-12-01 EP EP16826210.3A patent/EP3408833B1/en active Active
- 2016-12-01 JP JP2018538767A patent/JP6648285B2/en active Active
- 2016-12-01 CN CN201680003888.1A patent/CN107231817A/en active Pending
- 2016-12-01 WO PCT/US2016/064399 patent/WO2017131858A1/en not_active Ceased
- 2016-12-14 US US15/379,167 patent/US10311572B2/en active Active
- 2016-12-19 US US15/383,902 patent/US10176584B2/en active Active
-
2019
- 2019-05-30 AU AU2019203802A patent/AU2019203802B2/en active Active
-
2020
- 2020-01-14 JP JP2020003689A patent/JP6853391B2/en active Active
- 2020-03-06 AU AU2020201699A patent/AU2020201699B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| KR20200035491A (en) | 2020-04-03 |
| AU2016389048B2 (en) | 2019-05-16 |
| AU2020201699A1 (en) | 2020-03-26 |
| JP6648285B2 (en) | 2020-02-14 |
| WO2017131858A1 (en) | 2017-08-03 |
| JP2019510292A (en) | 2019-04-11 |
| US10311572B2 (en) | 2019-06-04 |
| AU2019203802A1 (en) | 2019-06-20 |
| KR102096497B1 (en) | 2020-04-02 |
| US9922426B2 (en) | 2018-03-20 |
| KR20180101477A (en) | 2018-09-12 |
| CN107231817A (en) | 2017-10-03 |
| US20170212909A1 (en) | 2017-07-27 |
| US20170213348A1 (en) | 2017-07-27 |
| KR102366752B1 (en) | 2022-02-23 |
| JP2020074155A (en) | 2020-05-14 |
| EP3408833B1 (en) | 2025-03-26 |
| EP3408833A1 (en) | 2018-12-05 |
| US20170213362A1 (en) | 2017-07-27 |
| AU2016389048A1 (en) | 2018-08-16 |
| US10176584B2 (en) | 2019-01-08 |
| AU2019203802B2 (en) | 2020-02-27 |
| AU2020201699B2 (en) | 2020-04-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6853391B2 (en) | Reduced latency in the map interface | |
| US10719571B2 (en) | Virtualized rendering | |
| Schirski et al. | Vista flowlib-framework for interactive visualization and exploration of unsteady flows in virtual environments | |
| CN103412871A (en) | Method and device for generating visualized view | |
| US9235911B2 (en) | Rendering an image on a display screen | |
| KR20140105609A (en) | Online gaming | |
| CN108073350B (en) | An object storage system and method for cloud rendering | |
| WO2022105282A1 (en) | Game display method and apparatus | |
| CN108074210B (en) | An object acquisition system and method for cloud rendering | |
| US10515433B1 (en) | Zoom-adaptive data granularity to achieve a flexible high-performance interface for a geospatial mapping system | |
| US20140192082A1 (en) | Methods and systems for generating an aggregated data visualization | |
| CN106294884A (en) | Data acquisition method and device | |
| CN116206031A (en) | Data visualization method and device and electronic equipment | |
| CN118710795B (en) | Three-dimensional scene rendering method, device, equipment and medium | |
| CN117112950B (en) | Rendering method, device, terminal and storage medium for objects in electronic map | |
| CN118537487A (en) | Map data loading method and device and electronic equipment | |
| CN121166334A (en) | Computational graph optimization for visual scripting and distributed content creation | |
| CN118245208A (en) | A digital twin display method and terminal device | |
| CN118642789A (en) | A page display method, device, equipment and storage medium | |
| CN118227905A (en) | Point cloud data processing method, device, equipment and storage medium | |
| CN116150519A (en) | A dynamic rendering method, device and storage medium |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200117 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210203 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20210215 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210311 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6853391 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |