SYSTEM AND METHOD FOR GEO-LOCATION BASED KEY PERFORMANCE INDICATOR VISUALIZATION IN TELECOMMUNICATIONS NETWORKS - Patent application
The system automates the determination of geolocation-based KPIs by processing pixel tiles within polygon-defined regions, improving efficiency and accuracy in RAN management by eliminating manual data entry and human error.
Patent Information
- Application Number
- JP2025546007
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-03-29
- Publication Date
- 2026-02-25
AI Technical Summary
Existing methods for visualizing network element coverage in telecommunications networks require manual data collection and population, leading to inaccuracies and inefficiencies, making the analysis of geolocation-based key performance indicators (KPIs) time-consuming and unreliable.
A system and method for automating the determination and output of geolocation-based KPIs by extracting pixel colors from intersecting pixel tiles within polygon-defined regions, using a lookup table to calculate and output KPI values, eliminating the need for manual data entry and reducing human error.
This approach increases the efficiency of RAN management by automating the process and eliminating human error, providing accurate and reliable geolocation-based KPI visualization in polygon-defined areas.
Smart Images

Figure 2026506582000001_ABST
Abstract
Description
[Technical Field]
[0001] Systems and methods consistent with example embodiments of the present disclosure relate to geolocation-based key performance indicator visualization in telecommunications networks. [Background technology]
[0002] In the related art, a visualization tool for network element (i.e., cell site) analysis includes a function that can identify only network element coverage (i.e., radio access network (RAN) key performance indicators (KPIs)) in a particular geolocation (i.e., RAN KPIs in a particular geolocation having coordinates with latitude and longitude).
[0003] As a result, in the case of analyzing network element (i.e., cell site) coverage in a geographic area, according to the related art, human interaction of a user (e.g., a network engineer) is required to manually collect coverage information (i.e., each RAN KPI) by looking up each RAN KPI at multiple geolocations covering the geographic area of interest (i.e., each RAN KPI at multiple coordinates on a geolocation map). Furthermore, human interaction of a user (e.g., a network engineer) is required to manually populate (input) each RAN KPI at multiple coordinates on the geolocation map into a data sheet to obtain coverage information for each geographic area. Due to the human interaction while populating the data sheet to obtain coverage information for each geographic area, the entered RAN KPIs may be inaccurate due to inaccuracies of the manually collected RAN KPIs.
[0004] Furthermore, this manual process is tedious and time-consuming because it requires the user (network engineer) to identify coverage for a given geographic area for multiple RAN KPIs (e.g., Reference Signal Received Power (RSRP), Signal-to-Interference-and-Noise Ratio (SINR), etc.), and the manual acquisition requires going through the same tedious manual process for each of the RAN KPIs.
[0005] As a result, due to the manual processes of the related art, analysis of network element (i.e., cell site) coverage in a given geographic area, as well as visualization of geolocation-based key performance indicators in a given geographic area, may be limited in feasibility or may be very time-consuming and unreliable. Summary of the Invention [Means for solving the problem]
[0006] According to embodiments, systems and methods are provided for implementing geolocation-based key performance indicator visualization to automatically determine and output geolocation-based key performance indicators (KPIs) of telecommunications networks located in specific (e.g., freely determined or given) polygon-defined geolocation regions. In particular, the systems and methods provide for extracting pixel colors from pixel tiles that intersect with a specific polygon-shaped geolocation region (i.e., polygon boundary) to enable automatic output of KPI values within the boundaries of the specific geolocation region (polygon) (e.g., geolocation-based key performance indicator visualization for the specific geolocation region).
[0007] As a result, the present system and method has the advantage of automating the tedious and time-consuming human interaction for the manual process of collecting and populating geolocation-based key performance indicators at multiple geolocations (based on multiple coordinates having latitude and longitude on a geolocation map), thereby increasing the efficiency of RAN management, and the advantage of eliminating human error in determining geolocation-based key performance indicators for a particular geolocation area a.
[0008] According to an embodiment, there is provided a system for implementing geolocation-based key performance indicator (KPI) visualization in polygon-defined geolocation regions of a telecommunications network, the system comprising: a memory that stores instructions; and at least one processor that is configured to execute the instructions, the instructions including: receiving data defining a boundary of the polygon-defined geolocation region based on the polygon-defined geolocation region; generating pixel coordinates of a polygon that encompasses the boundary of the polygon-defined geolocation region from a pixel map based on the received data; and, for each generated pixel coordinate of the polygon, calculating the pixel coordinates of the polygon from the pixel map. determining one or more pixel tiles that intersect with the landmark, where the pixel tile represents an array of pixels from the pixel map; for each pixel tile among the pixel tiles that intersects with the generated pixel coordinates of the polygon, determining one or more pixels that intersect with the polygon, where for each pixel among the one or more pixels that intersect with the polygon, determining a color of the pixel and determining a KPI value for the at least one KPI from a lookup table based on the color; and outputting at least one KPI value for each of the at least one KPI for each pixel among the one or more pixels that intersect with the polygon.
[0009] According to an embodiment, there is provided a method for implementing geolocation-based key performance indicator (KPI) visualization in polygon-defined geolocation regions of a telecommunications network, the method including: receiving data defining a boundary of the polygon-defined geolocation region based on the polygon-defined geolocation region; generating pixel coordinates of a polygon surrounding the boundary of the polygon-defined geolocation region from a pixel map based on the received data; for each generated pixel coordinate of the polygon, determining one or more pixel tiles from the pixel map that intersect with the generated pixel coordinate of the polygon, wherein the pixel tile represents an array of pixels from the pixel map; for each pixel tile of the pixel tiles that intersect with the generated pixel coordinate of the polygon, determining one or more pixels that intersect with the polygon, wherein for each pixel of the one or more pixels intersecting with the polygon, determining a color of the pixel and determining a KPI value for at least one KPI from a lookup table based on the color; and outputting at least one KPI value for each of the at least one KPI for each pixel of the one or more pixels intersecting with the polygon.
[0010] According to an embodiment, there is provided a non-transitory computer-readable storage medium having stored thereon instructions executable by at least one processor configured to perform a method for implementing geolocation-based key performance indicator (KPI) visualization in polygon-defined geolocation regions of a telecommunications network, the method including: receiving, based on the polygon-defined geolocation region, data defining a boundary of the polygon-defined geolocation region; generating, based on the received data, pixel coordinates of a polygon that encompasses the boundary of the polygon-defined geolocation region from a pixel map; and, for each generated pixel coordinate of the polygon, calculating a pixel coordinate of the generated pixel of the polygon from the pixel map. determining one or more pixel tiles that intersect with the generated pixel coordinates of the polygon, where the pixel tile represents an array of pixels from the pixel map; for each pixel tile among the pixel tiles that intersect with the generated pixel coordinates of the polygon, determining one or more pixels that intersect with the polygon, where for each pixel among the one or more pixels that intersect with the polygon, determining a color of the pixel and determining a KPI value for the at least one KPI from a lookup table based on the color; and outputting the at least one KPI value for each of the at least one KPI for each pixel among the one or more pixels that intersect with the polygon.
[0011] Additional aspects will be set forth in part in the description that follows, and in part will be apparent from the description, or may be learned by practice of presented embodiments of the present disclosure.
[0012] Features, aspects, and advantages of certain exemplary embodiments of the present disclosure are described below with reference to the accompanying drawings, in which like reference numerals refer to like elements. [Brief explanation of the drawings]
[0013] [Figure 1]FIG. 1 illustrates a method for implementing geolocation-based key performance indicator visualization in polygon-defined geolocation regions, according to one embodiment.
[0014] [Figure 2] FIG. 1 illustrates a method for outputting coverage information for a polygon-defined geolocation area, according to one embodiment.
[0015] [Figure 3A] FIG. 1 illustrates a method for receiving data defining boundaries of a polygon-defined geolocation region, according to one embodiment.
[0016] [Figure 3B] FIG. 10 illustrates a method for receiving data defining a boundary of a polygon-defined geolocation region according to another embodiment.
[0017] [Figure 3C] FIG. 10 illustrates a method for receiving data defining a boundary of a polygon-defined geolocation region according to yet another embodiment.
[0018] [Figure 4] FIG. 1 illustrates a method for storing polygon data in a geo-services database, according to one embodiment.
[0019] [Figure 5] FIG. 10 illustrates a method for outputting at least one KPI value for each of at least one KPI according to another embodiment.
[0020] [Figure 6] FIG. 1 illustrates a method for determining one or more pixel tiles that intersect with generated pixel coordinates of a polygon boundary from a pixel map and its one or more pixels that intersect with the polygon, according to one embodiment.
[0021] [Figure 7] FIG. 1 illustrates a method for determining a KPI value for at least one KPI from a lookup table based on a color code of each pixel of one or more pixels intersecting a polygon, according to one embodiment.
[0022] [Figure 8] FIG. 10 illustrates a graphical user interface for visualizing coverage information for a user-defined polygon-defined geolocation area, according to one embodiment.
[0023] [Figure 9] FIG. 1 illustrates a graphical user interface for visualizing one or more KPIs on a viewport area, according to one embodiment.
[0024] [Figure 10] FIG. 1 illustrates a graphical user interface for visualizing one or more KPIs on polygons stored in a geo-services database, according to one embodiment.
[0025] [Figure 11] FIG. 1 is a diagram of an example environment in which the systems and / or methods described herein may be implemented.
[0026] [Figure 12] FIG. 2 is a diagram of exemplary components of a device, according to one embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0027] The following detailed description of exemplary embodiments refers to the accompanying drawings. The foregoing disclosure provides illustration and description, but is not intended to be exhaustive or to limit implementations to the precise form disclosed. Modifications and variations are possible in light of the above disclosure or may be acquired from practice of implementations. Moreover, one or more features or components of one embodiment may be incorporated into or combined with another embodiment (or one or more features of another embodiment). Furthermore, in the flowcharts and descriptions of operations provided below, it should be understood that one or more operations may be omitted, one or more operations may be added, one or more operations may be performed (at least partially) concurrently, or the order of one or more operations may be interchanged.
[0028] It will be apparent that the systems and / or methods described herein may be implemented in different forms of hardware, firmware, or a combination of hardware and software. The actual specialized control hardware or software code used to implement these systems and / or methods is not limiting of the implementation. Thus, the operation and behavior of the systems and / or methods have been described herein without reference to specific software code. It should be understood that software and hardware can be designed to implement the systems and / or methods based on the description herein.
[0029] Although particular combinations of features are recited in the claims and / or disclosed herein, these combinations are not intended to limit the disclosure of possible implementations. Indeed, many of these features may be combined in ways not specifically recited in the claims and / or disclosed in the specification. Although each dependent claim listed below may depend directly on only one claim, the disclosure of possible implementations includes each dependent claim in combination with all other claims in the claim set.
[0030] No element, act, or instruction used herein should be construed as critical or required unless explicitly described as such. Also, as used herein, the articles "a" and "an" are intended to include one or more items and may be used interchangeably with "one or more." Where only one item is intended, the term "one" or similar language is used. Also, as used herein, terms such as "has," "have," "having," "include," and "including" are intended to be open-ended terms. Furthermore, the phrase "based on" is intended to mean "based at least in part on," unless specifically stated otherwise. Furthermore, phrases such as "at least one of [A] and [B]" or "at least one of [A] or [B]" should be understood to include only A, only B, or both A and B.
[0031] Exemplary embodiments of the present disclosure provide a method and system in which network elements intersecting a specific geolocation area in the shape of a polygon are determined without human interaction to enable automated listing of network elements within the specific geolocation area (i.e., within the boundaries of the specific geolocation area (polygon)) in an efficient and reliable manner without human error.
[0032] FIG. 1 illustrates a method for implementing geolocation-based key performance indicator visualization in a polygon-defined geolocation region, according to one embodiment.
[0033] 1, in step S101, based on a polygon-defined geolocation area, the system receives data defining the boundary of the polygon-defined geolocation area. For example, a geolocation area defined by a polygon shape may refer to any area defined by coordinates (e.g., longitude and latitude data) that span a plane having the polygon shape on a map.
[0034] In an exemplary embodiment, the data defining the boundaries of a polygon-defined geolocation area may be spatial data of a freely determined (drawn) geolocation area defined by a polygon shape created by user input via a graphical user interface (GUI) of a visualization software service that displays the map.
[0035] In another embodiment, the geolocation area defined by the polygon shape may be determined by geolocation data (e.g., geolocation data such as longitude and latitude data) that defines the boundaries of the geolocation area defined by the polygon. The geolocation data may be data stored in a spatial data file, such as a Keyhole Markup Language (KML) data file, where the Keyhole Markup Language format is used to display the geographic data (i.e., a geolocation graphical user interface such as a geolocation browser).
[0036] Additionally, the geolocation data may be stored in spatial data files such as, for example, the TAB file format (i.e., a geospatial vector data format developed for geographic information system (GIS) software), the SHAPE file (*.shp) format (i.e., another geospatial vector data format for geographic information system (GIS) software), etc.
[0037] In yet another exemplary embodiment, the data defining the boundaries of the polygon-defined geolocation area may refer to polygon identification data defining the boundaries of the polygon-defined geolocation area of a polygon stored in a geo-services database. In this case, a user may select a polygon by inputting (selecting) data identifying the polygon (i.e., polygon identification data), such as the name of the geographic area to which the polygon relates. For example, the country-specific name of a province (state), city, county, district, etc., within a country, to define the geographic area to which the polygon refers (i.e., the polygon data stored in a geo-services database).
[0038] In step S102, based on the received data, the system generates pixel coordinates of a polygon that surrounds (circumscribes) the boundary of the polygon-defined geolocation area from the pixel map. For example, based on the received data defining the boundary of the polygon-defined geolocation area, the system generates coordinates (e.g., longitude and latitude data) of at least one polygon-defined geolocation area and assigns the coordinates (e.g., longitude and latitude data) to respective pixels (i.e., pixel coordinates) in the pixel map. For example, pixel coordinates (i.e., pixels) in the pixel map may refer to areas of 1, 2, 4, 6 square meters, etc., that have been assigned geolocation coordinates (e.g., longitude and latitude data).
[0039] In an exemplary embodiment, the system can generate pixel coordinates from data received from the GUI defining the boundaries of a polygon-defined geolocation region.
[0040] In another exemplary embodiment, the system can generate pixel coordinates from a data file containing geolocation data, such as a geospatial vector data format for geographic information system (GIS) software (e.g., a TAB or SHAP file), a KML format, or the like.
[0041] In yet another exemplary embodiment, the system can generate pixel coordinates based on a user selection of a polygon, and the system can retrieve (generate) the coordinates from a geo-services database.
[0042] In step S103, for each generated pixel coordinate of the polygon, the system determines one or more pixel tiles from the pixel map that intersect with the generated pixel coordinate of the polygon, where a pixel tile represents an array of pixels from the pixel map. For example, a pixel tile may be a square array of pixels (e.g., a 256x256 array of pixels).
[0043] In an exemplary embodiment, pixel tiles in the pixel map may have index identifiers. In this case, the system can determine, for each generated pixel coordinate of the polygon boundary, an index identifier from the index list for each pixel tile that intersects with the generated pixel coordinate of the polygon boundary. According to this exemplary embodiment, the system can generate a list of index identifiers for the intersecting pixel tiles by extrapolating (estimating) the intersecting pixel tiles within the boundary polygon from the pixel map, where the generated list of index identifiers represents all pixel tiles that intersect with the polygon.
[0044] In step S104, for each pixel tile among the pixel tiles that intersect with the generated pixel coordinates of the polygon, the system determines one or more pixels that intersect with the polygon.
[0045] In an exemplary embodiment, the system can determine one or more pixels that intersect with the polygon based on the repetition of pixel tiles listed in the list of index identifiers.
[0046] For example, one or more pixels that intersect with a particular polygon may be stored in the system's memory to enable fast processing of a method for implementing geolocation-based key performance indicator visualization in the polygon-defined geolocation area.
[0047] In step S105, the system determines the color of each pixel of the one or more pixels that intersect with the polygon. For example, the system extracts RGB color from the pixel information of the pixel. Typically, RGB color values are supported in a graphical user interface and can be specified as RGB (red, green, blue), where each of the three parameters (red, green, and blue) defines the color intensity with a value between 0 and 255. For example, RGB(255,0,0) is displayed as red because red is set to the highest value (255) and the other two (green and blue) are set to 0. In another example, RGB(0,255,0) is displayed as green because green is set to the highest value (255) and the other two (red and blue) are set to 0.
[0048] In step S106, based on the (determined) color, the system determines a KPI value for at least one KPI from a look-up table.
[0049] For example, the lookup table may include a column containing a range of predetermined RGB color values, which defines the number of rows in the lookup table. The range of predetermined RGB color values refers to the number of RGB color values, which in turn refers to the number of rows in the lookup table (e.g., 64 rows, 128 rows, 256 rows, etc. in the lookup table).
[0050] The predetermined RGB color value range is based on the system operator's setting. According to the setting, the predetermined RGB color value range determines the resolution of the KPI values between the maximum KPI value and the minimum KPI value. For example, for a range of 128 RGB color values, the resolution of 126 KPI values between the maximum KPI value and the minimum KPI value can be visualized by the range.
[0051] Furthermore, the lookup table may include multiple columns referencing multiple KPIs. The multiple KPIs may be listed according to the resolution of the KPI values as described above. Among the multiple KPIs, the KPI may be at least one of a reference signal received quality (RSRQ), a reference signal received power (RSRP), a signal-to-interference-and-noise ratio (SINR), an uplink (UL) data throughput, a downlink (DL) data throughput, etc.
[0052] As a result, each RGB color value is assigned a KPI value for at least one KPI that allows for unique identification of the assigned KPI value. In step S107, for each pixel of the one or more pixels intersecting the polygon, the system outputs at least one KPI value for each of the at least one KPI. For example, the system outputs the KPI value for each of the at least one KPI and displays it in a graphical user interface. The polygon-defined geolocation area can be one of a specific (freely determined, user-defined, etc.) geolocation area, a viewport area, a country-specific name for a geolocation area definition such as a province (state), city, county, district, etc. stored in a geographic area.
[0053] As a result, the system and method for implementing geolocation-based key performance indicator visualization in polygon-defined geolocation areas has the advantages of automating the tedious and time-consuming human interaction for manually processing the collection and population of geolocation-based key performance indicators at multiple geolocations (based on multiple coordinates having latitude and longitude on a geolocation map), thereby increasing the efficiency of RAN management, and eliminating human error in determining geolocation-based key performance indicators in a particular geolocation area a.
[0054] FIG. 2 illustrates a method for outputting coverage information for a polygon-defined geolocation area, according to one embodiment.
[0055] Referring to FIG. 2, in step S201, for each (at least one) KPI, the system generates coverage information of a polygon-defined geolocation area, which includes the following steps S202 to S205.
[0056] In step S202, for each (at least one) KPI, the system determines the total number of pixels in the one or more pixels that intersect with the polygon.
[0057] In step S203, for each (at least one) KPI, the system sums, for each pixel of the one or more pixels that intersect with the polygon, the KPI values for the KPI at each pixel.
[0058] In step S204, for each (at least one) KPI, the system divides the sum of the KPI values of all pixels among the one or more pixels that intersect with the polygon by the total number of pixels.
[0059] In step S205, for each (at least one) KPI, the system outputs coverage information of the polygon-defined geolocation area, where the coverage information represents the area average of one KPI within the boundary of the polygon-defined geolocation area.
[0060] As a result, coverage information representing the area average of one KPI within the boundaries of a polygon-defined geolocation area has the advantage that coverage within that area can be easily analyzed and provides a simple and effective geolocation-based key performance indicator visualization of the polygon-defined geolocation area.
[0061] 3A illustrates a method for receiving data defining a boundary of a polygon-defined geolocation area, according to one embodiment. Referring to FIG. 3A, in step S301A, the system receives a data file including geolocation data for at least one polygon-defined geolocation area, the data file defining a boundary of the at least one polygon-defined geolocation area.
[0062] In an exemplary embodiment, the data file may be a spatial data file, such as a Keyhole Markup Language (KML) data file, where the Keyhole Markup Language format is used to display geographic data (i.e., in a geolocation graphical user interface, such as a geolocation browser).
[0063] In another exemplary embodiment, the data file may be a spatial data file, such as, for example, a TAB file format (i.e., a geospatial vector data format developed for geographic information system (GIS) software), a SHAPE file (*.shp) format (i.e., another geospatial vector data format for geographic information system (GIS) software), or the like.
[0064] In an exemplary embodiment, if the system determines that the data file containing the geolocation data for at least one polygon-defined geolocation region is not a Keyhole Markup Language (KML) data file, the system may convert the geolocation data for the at least one polygon-defined geolocation region into a KML data file. Alternatively, the system may convert a data file in TAB file format or SHAP file format into a data file in KML data file format.
[0065] In step S302A, for each polygon-defined geolocation area, based on the received data, the system generates pixel coordinates from the pixel map of a polygon that encompasses the boundary of the polygon-defined geolocation area.
[0066] The system then starts the method according to steps S103 to S107 as described in FIG.
[0067] 3B illustrates a method for receiving data defining boundaries of polygon-defined geolocation regions according to another embodiment. Referring to FIG. 3B, in step S301B, a user inputs pins (i.e., geolocations having latitude and longitude coordinates) that define the boundaries of at least one freely defined geolocation region into a graphical user interface (e.g., the user selects at least three geolocations (pins) that define coordinates such as latitude and longitude data on a map displayed by the graphical user interface (GUI)).
[0068] In an exemplary embodiment, a user may select at least three pins defining coordinates (i.e., latitude and longitude data) on a map displayed by the graphical user interface and store a polygon defined by the at least three points selected by the user.
[0069] To identify a polygon, a user may enter data identifying the polygon (i.e., polygon identification data) into the graphical user interface. For example, the polygon identification data may include at least one of the name of the geographic area to which the polygon relates, the category of the polygon, the source of the polygon, the creation date, the creator of the polygon, etc.
[0070] In step S302B, the system receives data defining the boundaries of a polygon-defined geolocation area from a graphical user interface (GUI) (i.e., according to a freely defined geolocation area as input to a user input to the GUI).
[0071] In step S303B, based on the received data, the system generates pixel coordinates of a polygon that encompasses the boundary of the GUI-defined geolocation area from the pixel map.
[0072] The system then starts the method according to steps S103 to S107 as described in FIG.
[0073] FIG. 3C illustrates a method for receiving data defining a boundary of a polygon-defined geolocation region according to yet another embodiment.
[0074] Referring to Figure 3C, in step S301C, the system receives data defining the boundaries of a polygon-defined geolocation by a viewport area. For example, a viewport is defined as a user's viewable area of a graphical user interface (e.g., a web page, a window, etc.). The viewport may vary depending on device specifications and may be smaller on a mobile phone (smartphone) than on a computer screen.
[0075] In step S302C, the system generates pixel coordinates for a polygon that encompasses the boundary of the viewport area from the pixel map.
[0076] The system then starts the method according to steps S103 to S107 as described in FIG.
[0077] 4 illustrates storing polygon data in a geo-services database according to one embodiment. Referring to FIG. 4, when outputting at least one KPI value for each (at least one) KPI, in step S401, the system receives at least one polygon identification data for each polygon (based on the output KPI value) via a graphical user interface.
[0078] For example, in step S401, the system may provide a graphical user interface that allows a user to enter data identifying a polygon (i.e., polygon identification data) into the graphical user interface. For example, the polygon identification data may include at least one of the name of the geographic region to which the polygon relates, the category of the polygon, the source of the polygon, the creation date, the creator of the polygon, etc.
[0079] In step S402, the system stores polygon data in a geo-services database based on the received at least one polygon identification data, where the polygon data includes polygon coordinates of the polygon-defined geolocation area.
[0080] In an example embodiment, the polygon data may include at least one of: colors of pixels intersecting the polygon; list index identifiers referencing all pixel tiles intersecting the polygon; pixel coordinates of pixels intersecting the polygon; data defining the boundaries of the polygon-defined geolocation area; at least one per-pixel KPI value for each of at least one KPI within the polygon;
[0081] Referring to FIG. 4, user-defined geolocation regions may be added to pre-defined (fixed) geolocation regions that are not stored in the geo-services database for later use.
[0082] For example, a user can select geolocation data for a user-defined geolocation area at one time and later determine network elements that intersect with the stored user-defined geolocation area. This has the advantage of allowing a user to create a library of user-defined geolocation areas on which to perform geolocation-based polygon analysis to determine network elements within user-defined polygon-defined geolocation areas stored in the geo-services database.
[0083] 5 illustrates a method for receiving data defining boundaries of a polygon-defined geolocation from a geo-services database according to another embodiment. Referring to FIG. 5, in step S501, the system receives, via a graphical user interface, at least one polygon identification data for a polygon stored in the geo-services database. For example, a user may select the stored polygon of FIG. 4.
[0084] In step S502, the system obtains polygon data from a geo-services database. For example, the system may request pixel coordinates of the polygon-defined geolocation area, among other polygon data, as described in FIG. 4. The polygon identification data may include data as described in FIG. 4. The system may then begin a method according to at least one of steps S103-S107 as described in FIG. 1.
[0085] FIG. 6 illustrates a method for determining one or more pixel tiles that intersect with generated pixel coordinates of a polygon boundary from a pixel map and its one or more pixels that intersect with the polygon, according to one embodiment.
[0086] 6, a pixel map represents a geographical map of geolocations having coordinates including latitude and longitude. According to the pixel map, coordinates (e.g., longitude and latitude data) are assigned to each pixel in the pixel map (i.e., pixel coordinates). For example, a pixel coordinate (i.e., pixel) in the pixel map may refer to an area of 1, 2, 4, 6 square meters, etc., that has been assigned geolocation coordinates (e.g., longitude and latitude data).
[0087] The pixel map is also divided into tiles. Each tile contains an array of pixels. For example, a pixel tile may be a square array of pixels (e.g., a 256x256 array of pixels).
[0088] Upon generating pixel coordinates of a polygon that encompasses the boundary of the polygon-defined geolocation area from the pixel map, the system determines, for each generated pixel coordinate of the polygon, one or more pixel tiles that intersect with the generated pixel coordinate of the polygon from the pixel map.
[0089] According to the exemplary embodiment of Figure 6, pixel tiles (T1-T9) intersect with the generated pixel coordinates of the polygon. Once the tiles are determined, for each of tiles T1-T9, the system determines one or more pixel tiles from the pixel map that intersect with the generated pixel coordinates of the polygon, where the pixel tile represents an array of pixels from the pixel map.
[0090] As a result, only the pixels of the intersecting tiles are processed, which has the advantage that the processing for determining the intersecting pixels is fast.
[0091] 7 illustrates a method for determining a KPI value for at least one KPI from a lookup table based on a color code of each pixel of one or more pixels intersecting a polygon, according to one embodiment. Referring to FIG. 7, upon determining the color (e.g., RGB color) of the pixel, the system determines a KPI value for the at least one KPI from the lookup table (based on the color).
[0092] For example, an RGB color may have an RGB value RGB(255,255,255). According to the lookup table, for a first KPI 1, the associated color references a KPI value of -113, and for a second KPI 2, the associated color references a KPI value of 98. In a further example, an RGB color may have an RGB value RGB(5,3,9). According to the lookup table, for a first KPI 1, the associated color references a KPI value of -114, and for a second KPI 2, this color references a KPI value of 90. In general, an RGB value RGB(R,G,B) is associated with at least one KPI having a KPI value referenced by the RGB value RGB(R,G,B).
[0093] 7, the range of predetermined RGB color values defines the number of rows in the lookup table. The range of predetermined RGB color values refers to the number of RGB color values, and the number of RGB color values refers to the number of rows in the lookup table (e.g., 64 rows, 128 rows, 256 rows, etc. in the lookup table).
[0094] The range of predetermined RGB color values is based on the system operator's settings. According to the settings, the range of predetermined RGB color values determines the resolution of KPI values between the maximum KPI value and the minimum KPI value. For example, for a range of 128 RGB color values, a resolution of 126 KPI values between the maximum KPI value and the minimum KPI value can be visualized.
[0095] 8 illustrates a graphical user interface for visualizing coverage information for a user-defined polygon-defined geolocation area, according to one embodiment. Referring to FIG. 8, the graphical user interface visualizes a particular (freely determined, user-defined, etc.) geolocation area. The coverage information referencing the particular geolocation is determined according to the generation of coverage information as described in FIG. 2. The coverage information is displayed on a KPI foreground window showing, for example, a first KPI with a KPI value of -71.22 dbm, a second KPI with a KPI value of 21.55 Mbps, a third KPI that is not applicable, and a fourth KPI with a KPI value of 14.
[0096] 9 illustrates a graphical user interface for visualizing one or more KPIs on a viewport region, according to one embodiment. Referring to FIG. 9, the graphical user interface visualizes a geolocation region defined by the viewport region. Coverage information referencing the viewport region is determined according to generation of coverage information as described in FIG. 2. The coverage information is displayed on a KPI foreground window showing, for example, a first KPI having a KPI value of -76.14 dbm, a second KPI having a KPI value of -20.45 Mbps, a third KPI having a KPI value of -9.53 dbm, and a fourth KPI having a KPI value of 11.
[0097] 10 illustrates a graphical user interface for visualizing one or more KPIs on a viewport region, according to one embodiment. Referring to FIG. 10, the graphical user interface visualizes a particular geolocation region defined by a country-specific name (e.g., province (state), city, county, district, etc.) or by a stored polygon in a geo-services database.
[0098] The coverage information referencing a particular geolocation area is determined according to the generation of coverage information as described in Figure 2. The coverage information is displayed on a KPI foreground window showing, for example, a first KPI having a KPI value of -72.72 dbm, a second KPI having a KPI value of 19.05 Mbps, a third KPI having a KPI value of -8.92 dbm, and a fourth KPI having a KPI value of 20.
[0099] 11 is a diagram of an example environment 1100 in which the systems and / or methods described herein may be implemented. As shown in FIG. 11, environment 1100 may include a user device 1110, a platform 1120, and a network 1130. The devices in environment 1100 may be interconnected via wired connections, wireless connections, or a combination of wired and wireless connections. In an embodiment, any of the functions and operations described above with reference to FIG. 1 may be performed by any combination of elements shown in FIG. 11.
[0100] The user device 1110 includes one or more devices capable of receiving, generating, storing, processing, and / or providing information related to the platform 1120. For example, the user device 1110 may include a computing device (e.g., a desktop computer, a laptop computer, a tablet computer, a handheld computer, a smart speaker, a server, etc.), a mobile phone (e.g., a smartphone, a wireless phone, etc.), a wearable device (e.g., smart glasses or a smart watch), or a similar device. In some implementations, the user device 1110 may receive information from and / or transmit information to the platform 1120.
[0101] Platform 1120 includes one or more devices capable of receiving, generating, storing, processing, and / or providing information. In some implementations, platform 1120 may include a cloud server or a group of cloud servers. In some implementations, platform 1120 may be designed to be modular, such that particular software components can be swapped in or out depending on particular needs. As such, platform 1120 may be easily and / or quickly reconfigured for different uses.
[0102] In some implementations, as shown, platform 1120 may be hosted in a cloud computing environment 1122. In particular, although the implementations described herein describe platform 1120 as being hosted within cloud computing environment 1122, in some implementations platform 1120 may not be cloud-based (i.e., may be implemented outside of a cloud computing environment) or may be partially cloud-based.
[0103] Cloud computing environment 1122 includes an environment that hosts platform 1120. Cloud computing environment 1122 can provide services such as computation, software, data access, storage, etc. that do not require end-user (e.g., user device 1110) knowledge of the physical location and configuration of the systems and / or devices that host platform 1120. As shown, cloud computing environment 1122 can include a group of computing resources 1124 (collectively referred to as “computing resources 1124” and individually referred to as “computing resource 1124”).
[0104] Computing resources 1124 include one or more personal computers, clusters of computing devices, workstation computers, server devices, or other types of computing and / or communication devices. In some implementations, computing resources 1124 can host platform 1120. Cloud resources may include compute instances executing within computing resources 1124, storage devices provided within computing resources 1124, data transfer devices provided by computing resources 1124, etc. In some implementations, computing resources 1124 may communicate with other computing resources 1124 via wired connections, wireless connections, or a combination of wired and wireless connections.
[0105] As further shown in FIG. 11, computing resources 1124 include a group of cloud resources such as one or more applications (“APP”) 1124-1, one or more virtual machines (“VM”) 1124-2, virtualized storage (“VS”) 1124-3, and one or more hypervisors (“HYP”) 1124-4.
[0106] Applications 1124-1 include one or more software applications that may be provided to or accessed by user device 1110. Applications 1124-1 may obviate the need to install and run software applications on user device 1110. For example, applications 1124-1 may include software associated with platform 1120 and / or any other software that may be provided via cloud computing environment 1122. In some implementations, one application 1124-1 may send information to or receive information from one or more other applications 1124-1 via virtual machine 1124-2.
[0107] Virtual machine 1124-2 includes a software-implemented machine (e.g., a computer) that executes programs like a physical machine. Virtual machine 1124-2 can be either a system virtual machine or a process virtual machine, depending on the application and the degree to which virtual machine 1124-2 represents an actual machine. A system virtual machine can provide a complete system platform that supports the execution of a complete operating system (“OS”). A process virtual machine can execute a single program and support a single process. In some implementations, virtual machine 1124-2 can run on behalf of a user (e.g., user device 1110) and manage the infrastructure of cloud computing environment 1122, such as data management, synchronization, or long-term data transfer.
[0108] Virtualized storage 1124-3 includes one or more storage systems and / or one or more devices that use virtualization technology within the storage systems or devices of computing resources 1124. In some implementations, in the context of storage systems, types of virtualization may include block virtualization and file virtualization. Block virtualization may refer to the abstraction (or separation) of logical storage from physical storage so that the storage system can be accessed regardless of the physical storage or heterogeneous structure. The separation provides storage system administrators with flexibility in how they manage storage for end users. File virtualization may eliminate the dependency between data accessed at the file level and where the file is physically stored. This can enable performance optimization of storage usage, server consolidation, and / or non-disruptive file migration.
[0109] The hypervisor 1124-4 may provide hardware virtualization technology that allows multiple operating systems (e.g., "guest operating systems") to run simultaneously on a host computer, such as computing resource 1124. The hypervisor 1124-4 may present a virtual operating platform to the guest operating systems and may manage the execution of the guest operating systems. Multiple instances of various operating systems may share virtualized hardware resources.
[0110] Network 1130 may include one or more wired and / or wireless networks. For example, network 1130 may include a cellular network (e.g., a fifth-generation (5G) network, a long-term evolution (LTE) network, a third-generation (3G) network, a code division multiple access (CDMA) network, etc.), a public land mobile network (PLMN), a local area network (LAN), a wide area network (WAN), a metropolitan area network (MAN), a telephone network (e.g., a public switched telephone network (PSTN)), a private network, an ad hoc network, an intranet, the Internet, an optical fiber-based network, etc., and / or a combination of these or other types of networks.
[0111] The number and arrangement of devices and networks shown in Figure 11 are provided as an example. In practice, there may be additional, fewer, different, or differently arranged devices and / or networks than those shown in Figure 11. Furthermore, two or more devices shown in Figure 11 may be implemented within a single device, or a single device shown in Figure 11 may be implemented as multiple distributed devices. Additionally, or instead, a set of devices (e.g., one or more devices) of environment 1100 may perform one or more functions that are described as being performed by another set of devices of environment 1100.
[0112] 12 is a diagram of example components of device 1200. Device 1200 may correspond to user device 1110 and / or platform 1120. As shown in FIG. 12 , device 1200 may include a bus 1210, a processor 1220, a memory 1230, a storage component 1240, an input component 1250, an output component 1260, and a communication interface 1270.
[0113] Bus 1210 includes components that enable communication between components of device 1200. Processor 1220 may be implemented in hardware, firmware, or a combination of hardware and software. Processor 1220 may be a central processing unit (CPU), graphics processing unit (GPU), accelerated processing unit (APU), microprocessor, microcontroller, digital signal processor (DSP), field programmable gate array (FPGA), application specific integrated circuit (ASIC), or another type of processing component. In some implementations, processor 1220 includes one or more processors that can be programmed to perform functions. Memory 1230 includes random access memory (RAM), read-only memory (ROM), and / or another type of dynamic or static storage device (e.g., flash memory, magnetic memory, and / or optical memory) that stores information and / or instructions used by processor 1220.
[0114] Storage component 1240 stores information and / or software related to the operation and use of device 1200. For example, storage component 1240 may include a hard disk (e.g., a magnetic disk, optical disk, magneto-optical disk, and / or solid-state disk), a compact disk (CD), a digital versatile disk (DVD), a floppy disk, a cartridge, magnetic tape, and / or another type of non-transitory computer-readable medium, along with a corresponding drive. Input component 1250 includes components that enable device 1200 to receive information, such as via user input (e.g., a touchscreen display, a keyboard, a keypad, a mouse, buttons, switches, and / or a microphone). Additionally or alternatively, input component 1250 may include sensors for sensing information (e.g., a global positioning system (GPS) component, an accelerometer, a gyroscope, and / or an actuator). Output component 1260 includes components that provide output information from device 1200 (e.g., a display, a speaker, and / or one or more light-emitting diodes (LEDs)).
[0115] Communication interface 1270 includes transceiver-like components (e.g., a transceiver and / or a separate receiver and transmitter) that enable device 1200 to communicate with other devices via wired connections, wireless connections, or a combination of wired and wireless connections, etc. Communication interface 1270 may enable device 1200 to receive information from and / or provide information to another device. For example, communication interface 1270 may include an Ethernet interface, an optical interface, a coaxial interface, an infrared interface, a radio frequency (RF) interface, a universal serial bus (USB) interface, a Wi-Fi interface, a cellular network interface, etc.
[0116] Device 1200 may perform one or more processes described herein. Device 1200 may perform these processes in response to processor 1220 executing software instructions stored by a non-transitory computer-readable medium, such as memory 1230 and / or storage component 1240. A computer-readable medium is defined herein as a non-transitory memory device. A memory device includes memory space within a single physical storage device or memory space distributed across multiple physical storage devices.
[0117] The software instructions may be loaded into memory 1230 and / or storage component 1240 from another computer-readable medium or from another device via communication interface 1270. When executed, the software instructions stored in memory 1230 and / or storage component 1240 may cause processor 1220 to perform one or more processes described herein.
[0118] Additionally, or alternatively, hardwired circuitry may be used in place of or in combination with software instructions to implement one or more processes described herein. Thus, implementations described herein are not limited to any specific combination of hardware circuitry and software.
[0119] The number and arrangement of components shown in Figure 12 are provided as an example. In practice, device 1200 may include additional, fewer, different, or differently arranged components than those shown in Figure 12. Additionally or alternatively, a set of components (e.g., one or more components) of device 1200 may perform one or more functions that are described as being performed by another set of components of device 1200.
[0120] In embodiments, any one of the operations or processes of Figures 1-11 may be implemented by or using any one of the elements shown in Figures 11 and 12. It will be appreciated that other embodiments are not limited thereto and may be implemented in a variety of different architectures (e.g., bare metal architectures, any cloud-based or deployment architectures such as Kubernetes, Docker, OpenStack, etc.).
[0121] The foregoing disclosure provides illustration and description, but is not intended to be exhaustive or to limit the implementations to the precise forms disclosed. Modifications and variations are possible in light of the above disclosure or may be acquired from practice of the implementations.
[0122] Some embodiments may relate to systems, methods, and / or computer-readable media at any possible level of technical detail. Furthermore, one or more of the above components described above may be implemented as instructions stored on a computer-readable medium and executable by at least one processor (and / or may include at least one processor). The computer-readable medium may include computer-readable non-transitory storage medium(s) having computer-readable program instructions for causing a processor to perform operations.
[0123] A computer-readable storage medium may be any tangible device capable of retaining and storing instructions for use by an instruction-execution device. A computer-readable storage medium may be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. A non-exhaustive list of more specific examples of computer-readable storage media includes portable computer diskettes, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disk read-only memory (CD-ROM), digital versatile disks (DVD), memory sticks, floppy disks, mechanically encoded devices such as punch cards or ridge-in-groove structures with instructions recorded thereon, and any suitable combination of the foregoing. Computer-readable storage medium, as used herein, should not be construed as a transitory signal per se, such as an electric wave or other freely propagating electromagnetic wave, an electromagnetic wave propagating through a waveguide or other transmission medium (e.g., a light pulse passing through a fiber optic cable), or an electrical signal transmitted over an electrical wire.
[0124] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to each computing / processing device or to an external computer or storage device over a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network may include copper transmission cables, fiber optic transmissions, wireless transmissions, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface within each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions for storage on a computer-readable storage medium within the respective computing / processing device.
[0125] The computer-readable program code / instructions for carrying out operations may be either source code or object code written in any combination of one or more programming languages, including assembler instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, integrated circuit configuration data, or object-oriented programming languages such as Smalltalk, C++, and procedural programming languages such as the "C" programming language or similar programming languages. The computer-readable program instructions may execute entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or a connection to an external computer may be made (e.g., via the Internet using an Internet Service Provider). In some embodiments, electronic circuitry including, for example, a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA) may execute computer-readable program instructions to personalize the electronic circuitry by utilizing state information of the computer-readable program instructions to perform aspects or operations.
[0126] These computer-readable program instructions may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, executed by the processor of the computer or other programmable data processing apparatus, form means for performing the functions / acts specified in one or more blocks of the flowcharts and / or block diagrams. These computer-readable program instructions may also be stored on a computer-readable storage medium that can direct a computer, programmable data processing apparatus, and / or other device to function in a particular way, such that the computer-readable storage medium on which the instructions are stored comprises an article of manufacture containing instructions that implement aspects of the functions / acts specified in one or more blocks of the flowcharts and / or block diagrams.
[0127] The computer-readable program instructions may also be loaded into a computer, other programmable data processing apparatus, or other device to cause the computer, other programmable apparatus, or other device to perform a series of operational steps to create a computer-implemented process, such that the instructions, executing on the computer, other programmable apparatus, or other device, perform the functions / acts specified in one or more blocks of the flowcharts and / or block diagrams.
[0128] The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer-readable media according to various embodiments. In this regard, each block in the flowcharts or block diagrams may represent a portion of a microservice, module, segment, or instruction set, including one or more executable instructions for implementing the specified logical function(s). The methods, computer systems, and computer-readable media may include additional, fewer, different, or differently arranged blocks than those shown in the figures. In some alternative implementations, the functions noted in the blocks may occur out of the order noted in the figures. For example, two blocks shown in succession may actually be executed concurrently or substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending on the functionality involved. It should also be noted that each block in the block diagrams and / or flowchart diagrams, and combinations of blocks in the block diagrams and / or flowchart diagrams, may be implemented by a dedicated hardware-based system that performs the specified functions or operations or executes a combination of dedicated hardware and computer instructions.
[0129] It will be apparent that the systems and / or methods described herein may be implemented in different forms of hardware, firmware, or a combination of hardware and software. The actual specialized control hardware or software code used to implement these systems and / or methods is not intended to limit the implementation. Thus, the operation and behavior of the systems and / or methods are described herein without reference to specific software code, and it will be understood that software and hardware can be designed to implement the systems and / or methods based on the description herein.
[0130] Various further respective aspects and features of embodiments of the present disclosure can be defined by the following clauses. Item [1] A system for implementing geolocation-based key performance indicator (KPI) visualization in polygon-defined geolocation regions of a telecommunications network, the system comprising: a memory for storing instructions; and at least one processor configured to execute the instructions, the instructions including: receiving data defining a boundary of the polygon-defined geolocation region based on the polygon-defined geolocation region; generating pixel coordinates of a polygon that encompasses the boundary of the polygon-defined geolocation region from a pixel map based on the received data; and, for each generated pixel coordinate of the polygon, intersecting the generated pixel coordinate of the polygon from the pixel map. determining one or more pixel tiles to intersect, where the pixel tile represents an array of pixels from the pixel map; for each pixel tile among the pixel tiles that intersects with the generated pixel coordinates of the polygon, determining one or more pixels that intersect with the polygon, where for each pixel among the one or more pixels that intersect with the polygon, determining a color of the pixel and determining a KPI value for at least one KPI from a lookup table based on the color; and outputting at least one KPI value for each of the at least one KPI for each pixel among the one or more pixels that intersect with the polygon. Item [2] The system of Item [1], wherein the at least one processor may be further configured to execute instructions to generate coverage information for the polygon-defined geolocation region for each of the at least one KPI while outputting at least one KPI value for the polygon-defined geolocation region, where during the generating, the at least one processor may be further configured to execute instructions to determine a total number of pixels among one or more pixels intersecting the polygon, for each pixel among the one or more pixels intersecting the polygon, sum KPI values for the KPI for each pixel of the one or more pixels intersecting the polygon, and divide the sum of the KPI values for all pixels among the one or more pixels intersecting the polygon by the total number of pixels; and output coverage information for the polygon-defined geolocation region for each of the at least one KPI, where the coverage information represents an area average of the one KPI within the boundary of the polygon-defined geolocation region. Item [3] The system of Item [1], wherein the at least one processor may be further configured to execute instructions to receive a data file including geolocation data for at least one polygon-defined geolocation area defining a boundary of the at least one polygon-defined geolocation area while receiving data defining a boundary of the polygon-defined geolocation area, and for each polygon-defined geolocation area, generate pixel coordinates of a polygon that surrounds the boundary of the polygon-defined geolocation area from the pixel map based on the received data. Item [4] The system of Item [1], wherein the at least one processor may be further configured to execute instructions to receive data defining a boundary of the polygon-defined geolocation region from a graphical user interface (GUI) while receiving data defining a boundary of the polygon-defined geolocation region, and generate pixel coordinates of a polygon that encompasses the boundary of the GUI-defined geolocation region from a pixel map based on the received data. Item [5] The system described in Item [1], wherein at least one processor may be further configured to execute instructions to receive data defining a boundary of a polygon-defined geolocation area by a viewport area while receiving data defining a boundary of the polygon-defined geolocation area, and generate pixel coordinates of a polygon that encompasses the boundary of the viewport area from a pixel map. Item [6] The system described in Item [1], wherein the at least one processor may be further configured to execute instructions to receive, via a graphical user interface, at least one polygon identification data for each polygon, while outputting at least one KPI value for each of the at least one KPI, and store the polygon data in a geo services database based on the received at least one polygon identification data, wherein the polygon data may include polygon coordinates of the polygon-defined geolocation area. Item [7] The system of Item [6], wherein while receiving data defining the boundary of the polygon-defined geolocation area, at least one processor may be further configured to execute instructions to receive, via a graphical user interface, at least one polygon identification data for a polygon stored in a geo services database, retrieve polygon data from the geo services database, and generate pixel coordinates from the polygon coordinates in the geo services database. Item [8] A method for implementing geolocation-based key performance indicator (KPI) visualization in polygon-defined geolocation areas of a telecommunications network, the method including: receiving data defining a boundary of the polygon-defined geolocation area based on the polygon-defined geolocation area; generating pixel coordinates of a polygon surrounding the boundary of the polygon-defined geolocation area from a pixel map based on the received data; for each generated pixel coordinate of the polygon, determining one or more pixel tiles from the pixel map that intersect with the generated pixel coordinate of the polygon, where the pixel tile represents an array of pixels from the pixel map; for each pixel tile of the pixel tiles that intersect with the generated pixel coordinate of the polygon, determining one or more pixels that intersect with the polygon; for each pixel tile of the pixel tiles that intersect with the generated pixel coordinate of the polygon, determining a color of the pixel and determining a KPI value for at least one KPI from a lookup table based on the color; and outputting at least one KPI value for each of the at least one KPI for each pixel of the one or more pixels that intersect with the polygon. Item [9] The method of item [8], wherein outputting at least one KPI value for the polygon-defined geolocation region may include generating coverage information for the polygon-defined geolocation region for each of the at least one KPI, wherein during the generating, determining a total number of pixels among one or more pixels intersecting the polygon, for each pixel among one or more pixels intersecting the polygon, summing the KPI values for the KPI for each pixel among one or more pixels intersecting the polygon, and dividing the sum of the KPI values for all pixels among one or more pixels intersecting the polygon by the total number of pixels; and outputting coverage information for the polygon-defined geolocation region for each of the at least one KPI, wherein the coverage information represents an area average of the one KPI within the boundary of the polygon-defined geolocation region. Item
[10] The method of item [8], wherein receiving data defining boundaries of polygon-defined geolocation areas may include receiving a data file including geolocation data for at least one polygon-defined geolocation area defining a boundary of the at least one polygon-defined geolocation area, and for each polygon-defined geolocation area, generating pixel coordinates of a polygon that encompasses the boundary of the polygon-defined geolocation area from a pixel map based on the received data. Item
[11] The method of item [8], wherein receiving data defining a boundary of the polygon-defined geolocation area may include receiving data defining a boundary of the polygon-defined geolocation area from a graphical user interface (GUI), and generating pixel coordinates of a polygon that encompasses the boundary of the GUI-defined geolocation area from a pixel map based on the received data. Item
[12] The method described in Item [8], wherein receiving data defining a boundary of a polygon-defined geolocation area may include receiving data defining a boundary of the polygon-defined geolocation by a viewport area, and generating pixel coordinates of a polygon that encompasses the boundary of the viewport area from a pixel map. Item
[13] The method of item [8], wherein outputting at least one KPI value for each of the at least one KPI may include receiving, via a graphical user interface, at least one polygon identification data for each polygon; and storing polygon data in a geographic services database based on the received at least one polygon identification data, wherein the polygon data may include polygon coordinates of the polygon-defined geolocation area. Item
[14] The method of item
[13] , wherein receiving data defining the boundary of the polygon-defined geolocation area may include receiving, via a graphical user interface, at least one polygon identification data for a polygon stored in a geo services database, retrieving the polygon data from the geo services database, and generating pixel coordinates from the polygon coordinates in the geo services database. Item
[15] A non-transitory computer-readable storage medium having stored thereon instructions executable by at least one processor configured to execute a method for implementing geolocation-based key performance indicator (KPI) visualization in polygon-defined geolocation regions of a telecommunications network, the method including: receiving data defining a boundary of the polygon-defined geolocation region based on the polygon-defined geolocation region; generating pixel coordinates of a polygon that encompasses the boundary of the polygon-defined geolocation region from a pixel map based on the received data; and, for each generated pixel coordinate of the polygon, extracting pixel coordinates of the polygon from the pixel map. determining one or more pixel tiles that intersect with the landmark, where the pixel tile represents an array of pixels from the pixel map; for each pixel tile among the pixel tiles that intersects with the generated pixel coordinates of the polygon, determining one or more pixels that intersect with the polygon, where for each pixel among the one or more pixels that intersect with the polygon, determining a color of the pixel and determining a KPI value for the at least one KPI from a lookup table based on the color; and outputting at least one KPI value for each of the at least one KPI for each pixel among the one or more pixels that intersect with the polygon. Item
[16] The non-transitory computer-readable storage medium of Item
[15] , wherein outputting the at least one KPI value for the polygon-defined geolocation region may include generating coverage information for the polygon-defined geolocation region for each of the at least one KPI, wherein during the generating, determining a total number of pixels among one or more pixels that intersect with the polygon, for each pixel among the one or more pixels that intersect with the polygon, summing the KPI values for the KPI for each pixel among the one or more pixels that intersect with the polygon, and dividing the sum of the KPI values for all pixels among the one or more pixels that intersect with the polygon by the total number of pixels; and outputting coverage information for the polygon-defined geolocation region for each of the at least one KPI, wherein the coverage information represents an area average of the one KPI within the boundary of the polygon-defined geolocation region. Item
[17] The non-transitory computer-readable storage medium of Item
[15] , wherein receiving data defining a boundary of a polygon-defined geolocation area may include receiving a data file including geolocation data for at least one polygon-defined geolocation area defining a boundary of the at least one polygon-defined geolocation area, and, for each polygon-defined geolocation area, generating pixel coordinates of a polygon that encompasses the boundary of the polygon-defined geolocation area from a pixel map based on the received data. Item
[18] The non-transitory computer-readable storage medium of Item
[15] , wherein receiving data defining a boundary of the polygon-defined geolocation area may include receiving data defining a boundary of the polygon-defined geolocation area from a graphical user interface (GUI), and generating pixel coordinates of a polygon that encompasses the boundary of the GUI-defined geolocation area from a pixel map based on the received data. Item
[19] The non-transitory computer-readable storage medium of Item
[15] , wherein receiving data defining a boundary of a polygon-defined geolocation area may include receiving data defining a boundary of the polygon-defined geolocation, and generating pixel coordinates of a polygon that encompasses the boundary of the viewport area from a pixel map. Item
[20] The non-transitory computer-readable storage medium of Item
[15] , wherein outputting at least one KPI value for each of the at least one KPI may include receiving, for each polygon, at least one polygon identification data via a graphical user interface; storing polygon data in a geo-services database based on the received at least one polygon identification data, wherein the polygon data may include polygon coordinates of the polygon-defined geolocation area; and receiving data defining a boundary of the polygon-defined geolocation area may include receiving, via a graphical user interface, at least one polygon identification data for the polygon stored in the geo-services database; retrieving the polygon data from the geo-services database; and generating pixel coordinates from the polygon coordinates in the geo-services database.
Claims
1. 1. A system for implementing geolocation-based key performance indicator (KIP) visualization in a polygon-defined geolocation region of a telecommunications network, comprising: a memory for storing instructions; and at least one processor configured to execute the instructions; The instructions: receiving data defining a boundary of the polygon-defined geolocation area based on the polygon-defined geolocation area; generating pixel coordinates of a polygon that encompasses the boundary of the polygon-defined geolocation area from a pixel map based on the received data; determining, for each generated pixel coordinate of the polygon, one or more pixel tiles from the pixel map that intersect with the generated pixel coordinate of the polygon, a pixel tile representing an array of pixels from the pixel map; determining, for each pixel tile among the pixel tiles that intersects the generated pixel coordinate of the polygon, one or more pixels that intersect the polygon, determining a color of said pixel; determining a KPI value for at least one KPI from a lookup table based on the color; To decide; outputting, for each pixel of the one or more pixels that intersect the polygon, the at least one KPI value for each of the at least one KPI. system.
2. While the at least one processor is outputting the at least one KPI value for the polygon-defined geolocation area, execute the instructions to: generating coverage information for the polygon-defined geolocation area for each of the at least one KPI, wherein during generating, the at least one processor executes the instructions to: determining a total number of pixels among the one or more pixels that intersect with the polygon; for each pixel of the one or more pixels that intersect the polygon, summing the KPI values for the KPI at each pixel; and Dividing the sum of the KPI values of all pixels of the one or more pixels that intersect with the polygon by the total number of pixels. further configured to generate; outputting, for each of the at least one KPI, the coverage information of the polygon-defined geolocation area, the coverage information representing an area average of the one KPI within the boundary of the polygon-defined geolocation area; further configured to perform The system of claim 1 .
3. While the at least one processor receives the data defining the boundary of the polygon-defined geolocation area, it executes the instructions to: receiving a data file including geolocation data for the at least one polygon-defined geolocation area defining the boundary of the at least one polygon-defined geolocation area; for each polygon-defined geolocation area, generating from the pixel map, based on the received data, pixel coordinates of a polygon that encompasses the boundary of the polygon-defined geolocation area; further configured to perform The system of claim 1 .
4. While the at least one processor receives the data defining the boundary of the polygon-defined geolocation area, it executes the instructions to: receiving data from a graphical user interface (GUI) defining the boundary of the polygon-defined geolocation area; generating pixel coordinates of a polygon encompassing a boundary of a GUI-defined geolocation region from the pixel map based on the received data; further configured to perform The system of claim 1 .
5. While the at least one processor receives the data defining the boundary of the polygon-defined geolocation area, it executes the instructions to: receiving data defining the boundary of the polygon-defined geolocation by a viewport area; generating pixel coordinates of a polygon enclosing the boundary of the viewport area from the pixel map; further configured to perform The system of claim 1 .
6. While the at least one processor is outputting the at least one KPI value for each of the at least one KPI, execute the instructions to: receiving, via the graphical user interface, at least one polygon identification data for each polygon; storing polygon data in a geo-services database based on the received at least one polygon identification data, the polygon data including polygon coordinates of the polygon-defined geolocation area; further configured to perform The system of claim 1 .
7. While the at least one processor receives data defining the boundary of the polygon-defined geolocation area, it executes the instructions to: receiving, via a graphical user interface, the at least one polygon identification data for a polygon stored in the geo-services database; obtaining the polygon data from the geographic services database; generating said pixel coordinates from said polygon coordinates in said geographic services database; further configured to perform The system of claim 6.
8. 1. A method for implementing geolocation-based key performance indicator (KPI) visualization in a polygon-defined geolocation area of a telecommunications network, comprising: receiving data defining a boundary of the polygon-defined geolocation area based on the polygon-defined geolocation area; generating pixel coordinates of a polygon enclosing the boundary of the polygon-defined geolocation area from a pixel map based on the received data; determining, for each generated pixel coordinate of the polygon, one or more pixel tiles from the pixel map that intersect with the generated pixel coordinate of the polygon, a pixel tile representing an array of pixels from the pixel map; determining, for each pixel tile among the pixel tiles that intersects the generated pixel coordinate of the polygon, one or more pixels that intersect the polygon, determining a color of said pixel; determining a KPI value for at least one KPI from a lookup table based on the color; To decide; outputting, for each pixel of the one or more pixels that intersect the polygon, the at least one KPI value for each of the at least one KPI. method.
9. Outputting the at least one KPI value of the polygon-defined geolocation area includes: generating coverage information for the polygon-defined geolocation area for each of the at least one KPI, wherein during the generating, determining a total number of pixels among the one or more pixels that intersect with the polygon; for each pixel of the one or more pixels that intersect the polygon, summing the KPI values for the KPI at each pixel; and dividing the sum of the KPI values of all pixels of the one or more pixels that intersect with the polygon by the total number of pixels; To generate; outputting, for each of the at least one KPI, the coverage information of the polygon-defined geolocation area, the coverage information representing an area average of the one KPI within the boundary of the polygon-defined geolocation area; Including, The method of claim 8.
10. Receiving the data defining the boundary of the polygon-defined geolocation area includes: receiving a data file including geolocation data for the at least one polygon-defined geolocation area defining the boundary of the at least one polygon-defined geolocation area; for each polygon-defined geolocation area, generating from the pixel map, based on the received data, pixel coordinates of a polygon that encompasses the boundary of the polygon-defined geolocation area; Including, The method of claim 8.
11. Receiving the data defining the boundary of the polygon-defined geolocation area includes: receiving data from a graphical user interface (GUI) defining the boundary of the polygon-defined geolocation area; generating pixel coordinates of a polygon encompassing a boundary of a GUI-defined geolocation area from the pixel map based on the received data; Including, The method of claim 8.
12. Receiving the data defining the boundary of the polygon-defined geolocation area includes: receiving data defining the boundary of the polygon-defined geolocation by a viewport area; generating pixel coordinates of a polygon enclosing a boundary of the viewport area from the pixel map; Including, The method of claim 8.
13. Outputting the at least one KPI value for each of the at least one KPI includes: receiving, via the graphical user interface, at least one polygon identification data for each polygon; storing polygon data in a geo-services database based on the received at least one polygon identification data, the polygon data including polygon coordinates of the polygon-defined geolocation area; Including, The method of claim 8.
14. Receiving data defining the boundary of the polygon-defined geolocation area includes: receiving, via a graphical user interface, the at least one polygon identification data for a polygon stored in the geo-services database; obtaining the polygon data from the geographic services database; generating said pixel coordinates from said polygon coordinates in said geographic services database; Including, The method of claim 13.
15. 1. A non-transitory computer-readable storage medium having instructions executable by at least one processor configured to perform a method for implementing geolocation-based key performance indicator (KPI) visualization in a polygon-defined geolocation region of a telecommunications network, the method comprising: receiving data defining a boundary of the polygon-defined geolocation area based on the polygon-defined geolocation area; generating pixel coordinates of a polygon that encompasses the boundary of the polygon-defined geolocation area from a pixel map based on the received data; determining, for each generated pixel coordinate of the polygon, one or more pixel tiles from the pixel map that intersect with the generated pixel coordinate of the polygon, a pixel tile representing an array of pixels from the pixel map; determining, for each pixel tile among the pixel tiles that intersects the generated pixel coordinate of the polygon, one or more pixels that intersect the polygon, determining a color of said pixel; determining a KPI value for at least one KPI from a lookup table based on the color; To decide; outputting, for each pixel of the one or more pixels that intersect the polygon, the at least one KPI value for each of the at least one KPI. A non-transitory computer-readable recording medium.
16. Outputting the at least one KPI value of the polygon-defined geolocation area includes: generating coverage information for the polygon-defined geolocation area for each of the at least one KPI, wherein during the generating, determining a total number of pixels among the one or more pixels that intersect with the polygon; for each pixel of the one or more pixels that intersect the polygon, summing the KPI values for the KPI at each pixel; and dividing the sum of the KPI values of all pixels of the one or more pixels that intersect with the polygon by the total number of pixels; To generate; outputting, for each of the at least one KPI, the coverage information of the polygon-defined geolocation area, the coverage information representing an area average of the one KPI within the boundary of the polygon-defined geolocation area; Including, 16. The non-transitory computer-readable storage medium of claim 15.
17. Receiving the data defining the boundary of the polygon-defined geolocation area includes: receiving a data file including geolocation data for the at least one polygon-defined geolocation area defining the boundary of the at least one polygon-defined geolocation area; for each polygon-defined geolocation area, generating from the pixel map, based on the received data, pixel coordinates of a polygon that encompasses the boundary of the polygon-defined geolocation area; Including, 16. The non-transitory computer-readable storage medium of claim 15.
18. Receiving the data defining the boundary of the polygon-defined geolocation area includes: receiving data from a graphical user interface (GUI) defining the boundary of the polygon-defined geolocation area; generating pixel coordinates of a polygon encompassing a boundary of a GUI-defined geolocation area from the pixel map based on the received data; Including, 16. The non-transitory computer-readable storage medium of claim 15.
19. Receiving the data defining the boundary of the polygon-defined geolocation area includes: receiving data defining the boundary of the polygon-defined geolocation by a viewport area; generating pixel coordinates of a polygon enclosing a boundary of the viewport area from the pixel map; Including, 16. The non-transitory computer-readable storage medium of claim 15.
20. Outputting the at least one KPI value for each of the at least one KPI includes: receiving, via the graphical user interface, at least one polygon identification data for each polygon; storing polygon data in a geo-services database based on the received at least one polygon identification data, the polygon data including polygon coordinates of the polygon-defined geolocation area; Including, Receiving data defining the boundary of the polygon-defined geolocation area includes: receiving, via a graphical user interface, the at least one polygon identification data for a polygon stored in the geo-services database; obtaining the polygon data from the geographic services database; generating said pixel coordinates from said polygon coordinates in said geographic services database; Including, 16. The non-transitory computer-readable storage medium of claim 15.
Citation Information
Patent Citations
Systems, methods and apparatus for portable design, deployment, testing and optimization of communication networks
JP2004505531A
Wireless network quality presenting system, portable terminal, and wireless network quality presenting method
JP2008109571A
Methods and systems for maintaining or optimizing mobile phone networks
JP2015505199A
Positioning method and system for wireless communication networks
US20170219681A1
Method and network node for identifiying specific area of wireless communication system
WO2017108106A1