 an interface to communicate with a set of sensors that create a spatial dataset of a plurality of spatial points wherein the spatial points represent at least one of RGB values in threedimensional space, points of interest in a digital image, and locations on a geographic map
 a storage device to store the plurality of spatial points that each represent characteristics in a dimensional space
 a processor operatively connected to the storage device, the processor to: generate a plurality of nondata points in the dimensional space
 perform a Delaunay triangulation using the plurality of spatial points and the plurality of nondata points to generate a plurality of edges, wherein interior points of the plurality of nondata points that are in an interior space of the plurality of spatial points are excluded from the Delaunay triangulation
 identify spatial edges from the plurality of edges that each connect a spatial point that is connected to a first mixed edge to another spatial point that is connected to a second mixed edge, wherein the spatial edges are used to generate a robust contour of a cluster of the plurality of spatial points
 and estimate an outer boundary with convex and concave features from the robust contour for one of machine learning, image segmentation, object reconstruction, and threedimensional print processing.
Spatial analysis with attribute graphs
Updated Time 12 June 2019
Patent Registration DataPublication Number
US10152653
Application Number
US15/500916
Application Date
31 July 2014
Publication Date
11 December 2018
Current Assignee
HEWLETTPACKARD DEVELOPMENT COMPANY, L.P.
Original Assignee (Applicant)
HEWLETTPACKARD DEVELOPMENT COMPANY, L.P.
International Classification
G06K9/62,G06K9/46,G06T7/11,G06T7/162
Cooperative Classification
G06K9/6224,G06T7/162,G06T7/11,G06K9/4638
Inventor
MORONEY, NATHAN,ZENG, JUN
Patent Images
This patent contains figures and images illustrating the invention and its embodiment.
Abstract
Examples relate to providing spatial analysis using attribute graphs. In one examples, there are a number of spatial points that each represent characteristics in a dimensional space. Nondata points are generated in the dimensional space, and a Delaunay triangulation is performed using the spatial points and the nondata points to generate a plurality of edges, where interior points of the plurality of nondata points that are in an interior space of the plurality of spatial points are excluded from the Delaunay triangulation. Next, spatial edges from the plurality of edges that each connect a spatial point that is connected to a first mixed edge to another spatial point that is connected to a second mixed edge are identified, where the spatial edges are used to generate a robust contour of a cluster of the spatial points.
Claims
1. A system for providing spatial analysis using attribute graphs, the system comprising:
an interface to communicate with a set of sensors that create a spatial dataset of a plurality of spatial points wherein the spatial points represent at least one of RGB values in threedimensional space, points of interest in a digital image, and locations on a geographic map; a storage device to store the plurality of spatial points that each represent characteristics in a dimensional space;a processor operatively connected to the storage device, the processor to:
generate a plurality of nondata points in the dimensional space; perform a Delaunay triangulation using the plurality of spatial points and the plurality of nondata points to generate a plurality of edges, wherein interior points of the plurality of nondata points that are in an interior space of the plurality of spatial points are excluded from the Delaunay triangulation; identify spatial edges from the plurality of edges that each connect a spatial point that is connected to a first mixed edge to another spatial point that is connected to a second mixed edge, wherein the spatial edges are used to generate a robust contour of a cluster of the plurality of spatial points; and estimate an outer boundary with convex and concave features from the robust contour for one of machine learning, image segmentation, object reconstruction, and threedimensional print processing.
2. The system of claim 1, wherein the plurality of nondata points is a square grid, a rectangular grid, a hexagonal grid, or a spherical grid of points that are uniformly distributed in the dimensional space.
3. The system of claim 2 wherein a user specifies one of the types of grid.
4. The system of claim 2, wherein the uniform distribution of the grid of points is determined using a preconfigured coarseness parameter.
5. The system of claim 4, wherein the preconfigured coarseness parameter is set to a coarser value to decrease an analysis duration of the Delaunay triangulation.
6. The system of claim 4, wherein the Delaunay triangulation is iteratively performed using a plurality of values for the preconfigured coarseness parameter to generate a plurality of robust results, and wherein the robust contour is a composite of the plurality of robust results.
7. The system of claim 1, wherein the processor is further to determine a centroid of the robust contour, wherein the centroid is used to determine a representative value of a characteristic in the cluster of the plurality of spatial points.
8. The system of claim 1 wherein the spatial dataset includes meta data associated with the plurality of spatial points wherein the metadata includes at least one of bounds of the dimensional space, a coordinate system of the dimensional space, descriptions of attributes of the spatial points, and a rendering style for the plurality of spatial points.
9. The system of claim 1 wherein the characteristics of the dimensional space are related to the positioning of objects in an underlying photograph or picture that have a similar color.
10. The system of claim 1 wherein the plurality of nondata points is constructed using at least one of a uniform geometric sampling scheme and a voidfilling dataapproaching scheme.
11. The system of claim 1, wherein processor creates an estimated a number of clusters and the Delaunay triangulation creates a tessellation mesh and the processor is further to post process the tessellation mesh such that the number of clusters extracted is a function of minimum area thresholding.
12. A method for providing spatial analysis using attribute graphs, the method comprising:
obtaining from an interface communicating to a set of sensors that create a spatial dataset of a plurality of spatial points that each represent characteristics in a dimensional space, wherein the characteristics include at least one of RGB values in threedimensional space, points of interest in a digital image, and locations on a geographic map; generating a plurality of nondata points using a bounds of the dimensional space, wherein the plurality of nondata points is a square grid, a rectangular grid, a hexagonal grid, or a spherical grid of points that are uniformly distributed in the dimensional space; performing a Delaunay triangulation using the plurality of spatial points and the plurality of nondata points to generate a plurality of edges, wherein interior points of the plurality of nondata points that are in an interior space of the plurality of spatial points are excluded from the Delaunay triangulation; identifying spatial edges from the plurality of edges that each connect a spatial point that is connected to a first mixed edge to another spatial point that is connected to a second mixed edge, wherein the spatial edges are used to generate a robust contour of a cluster of the plurality of spatial points; and estimating an outer boundary with convex and concave features from the robust contour for one of machine learning, image segmentation, object reconstruction, and threedimensional print processing.
13. The method of claim 12, wherein the uniform distribution of the grid of points is determined using a preconfigured coarseness parameter.
14. The method of claim 13, wherein the preconfigured coarseness parameter is set to a coarser value to decrease an analysis duration of the Delaunay triangulation.
15. The method of claim 13, wherein the Delaunay triangulation is iteratively performed using a plurality of values for the preconfigured coarseness parameter to generate a plurality of robust results, and wherein the robust contour is a composite of the plurality of robust results.
16. The method of claim 12, further comprising determining a centroid of the robust contour, wherein the centroid is used to determine a representative value of a characteristic in the cluster of the plurality of spatial points.
17. A nontransitory machinereadable storage medium encoded with instructions executable by a processor for spatial analysis using attribute graphs, the machinereadable storage medium comprising instructions to:
obtain from an interface communicating with a set of sensors that create a spatial dataset of a plurality of spatial points that each represent characteristics in a dimensional space, wherein the characteristics include at least one of RGB values in threedimensional space, points of interest in a digital image, and locations on a geographic map; generate a plurality of nondata points using a bounds of the dimensional space, wherein the uniform distribution of the grid of points is determined using a preconfigured coarseness parameter; perform a Delaunay triangulation using the plurality of spatial points and the plurality of nondata points to generate a plurality of edges, wherein interior points of the plurality of nondata points that are in an interior space of the plurality of spatial points are excluded from the Delaunay triangulation; identify spatial edges from the plurality of edges that each connect a spatial point that is connected to a first mixed edge to another spatial point that is connected to a second mixed edge; use the spatial edges to generate a robust contour of a cluster of the plurality of spatial points; and estimate an outer boundary with convex and concave features from the robust contour for one of machine learning, image segmentation, object reconstruction, and threedimensional print processing.
18. The nontransitory machinereadable storage medium of claim 17, wherein the plurality of nondata points is a square grid, a rectangular grid, a hexagonal grid, or a spherical grid of points that are uniformly distributed in the dimensional space.
19. The nontransitory machinereadable storage medium of claim 17, wherein the Delaunay triangulation is iteratively performed using a plurality of values for the preconfigured coarseness parameter to generate a plurality of robust results, and wherein the robust contour is a composite of the plurality of robust results.
20. The nontransitory machinereadable storage medium of claim 17, wherein the machinereadable storage medium further comprises instructions to determine a centroid of the robust contour, wherein the centroid is used to determine a representative value of a characteristic in the cluster of the plurality of spatial points.
Claim Tree

11. A system for providing spatial analysis using attribute graphs, the system comprising:

2. The system of claim 1, wherein
 the plurality of nondata points is a square grid, a rectangular grid, a hexagonal grid, or a spherical grid of points that are uniformly distributed in the dimensional space.

7. The system of claim 1, wherein
 the processor is further to determine a centroid of the robust contour, wherein

8. The system of claim 1 wherein
 the spatial dataset includes meta data associated with the plurality of spatial points wherein

9. The system of claim 1 wherein
 the characteristics of the dimensional space are related to the positioning of objects in an underlying photograph or picture that have a similar color.

10. The system of claim 1 wherein
 the plurality of nondata points is constructed using at least one of a uniform geometric sampling scheme and a voidfilling dataapproaching scheme.

11. The system of claim 1, wherein
 processor creates an estimated a number of clusters and the Delaunay triangulation creates a tessellation mesh and the processor is further to post process the tessellation mesh such that the number of clusters extracted is a function of minimum area thresholding.


1212. A method for providing spatial analysis using attribute graphs, the method comprising:
 obtaining from an interface communicating to a set of sensors that create a spatial dataset of a plurality of spatial points that each represent characteristics in a dimensional space, wherein the characteristics include at least one of RGB values in threedimensional space, points of interest in a digital image, and locations on a geographic map
 generating a plurality of nondata points using a bounds of the dimensional space, wherein the plurality of nondata points is a square grid, a rectangular grid, a hexagonal grid, or a spherical grid of points that are uniformly distributed in the dimensional space
 performing a Delaunay triangulation using the plurality of spatial points and the plurality of nondata points to generate a plurality of edges, wherein interior points of the plurality of nondata points that are in an interior space of the plurality of spatial points are excluded from the Delaunay triangulation
 identifying spatial edges from the plurality of edges that each connect a spatial point that is connected to a first mixed edge to another spatial point that is connected to a second mixed edge, wherein the spatial edges are used to generate a robust contour of a cluster of the plurality of spatial points
 and estimating an outer boundary with convex and concave features from the robust contour for one of machine learning, image segmentation, object reconstruction, and threedimensional print processing.

13. The method of claim 12, wherein
 the uniform distribution of the grid of points is determined using a preconfigured coarseness parameter.

16. The method of claim 12, further comprising
 determining a centroid of the robust contour, wherein the centroid is used to determine a representative value of a characteristic in the cluster of the plurality of spatial points.

1717. A nontransitory machinereadable storage medium encoded with instructions executable by a processor for spatial analysis using attribute graphs, the machinereadable storage medium comprising
 instructions to: obtain from an interface communicating with a set of sensors that create a spatial dataset of a plurality of spatial points that each represent characteristics in a dimensional space, wherein the characteristics include at least one of RGB values in threedimensional space, points of interest in a digital image, and locations on a geographic map
 generate a plurality of nondata points using a bounds of the dimensional space, wherein the uniform distribution of the grid of points is determined using a preconfigured coarseness parameter
 perform a Delaunay triangulation using the plurality of spatial points and the plurality of nondata points to generate a plurality of edges, wherein interior points of the plurality of nondata points that are in an interior space of the plurality of spatial points are excluded from the Delaunay triangulation
 identify spatial edges from the plurality of edges that each connect a spatial point that is connected to a first mixed edge to another spatial point that is connected to a second mixed edge
 use the spatial edges to generate a robust contour of a cluster of the plurality of spatial points
 and estimate an outer boundary with convex and concave features from the robust contour for one of machine learning, image segmentation, object reconstruction, and threedimensional print processing.

18. The nontransitory machinereadable storage medium of claim 17, wherein
 the plurality of nondata points is a square grid, a rectangular grid, a hexagonal grid, or a spherical grid of points that are uniformly distributed in the dimensional space.

19. The nontransitory machinereadable storage medium of claim 17, wherein
 the Delaunay triangulation is iteratively performed using a plurality of values for the preconfigured coarseness parameter to generate a plurality of robust results, and wherein

20. The nontransitory machinereadable storage medium of claim 17, wherein
 the machinereadable storage medium further comprises
Description
BACKGROUND
Clustering, robust statistics, geometric processing and graph processing are commonly used to analyze spatial data points. For example, kmeans clustering can be applied to color dusters to derive color palettes, to extrapolate color using the median matrix, to apply a computer vision algorithm for fitting of geometric primitives, and to perform a graph formulation of color categories. The color clustering assumes uniform, symmetric distributions and that competing methods of computing k are suboptimal. The color extrapolation may use a variant of a TheilSen estimator. The geometric primitives technique may be ineffective at processing complex contours. Finally, the results from color categorization networks show the power and expressiveness of graph formulations of data with a spatial interpretation.
BRIEF DESCRIPTION OF THE DRAWINGS
The following detailed description references the drawings, wherein:
FIG. 1 is a block diagram of an example computing device for spatial analysis with attribute graphs;
FIG. 2 is a block diagram of an example computing device in communication with a spatial dataset for spatial analysis with attribute graphs;
FIG. 3 is a flowchart of an example method for execution by a computing device for spatial analysis with attribute graphs;
FIG. 4 is a flowchart of an example method for execution by a computing device for composite spatial analysis with attribute graphs;
FIG. 5A is an example dimensional space showing spatial data;
FIG. 5B is an example dimensional space showing spatial data and nondata; and
FIG. 5C is an example dimensional space showing spatial data, nondata, and robust contours.
DETAILED DESCRIPTION
As detailed above, various techniques for analyzing spatial data points can be used to estimate duster boundaries. Classical approaches like kmeans use assumptions, such as mostly uniform distributions, and additional computations, such as estimation of k or the number of dusters. More complex algorithms use data density or other measures but are generally more complex and also include some assumptions about the data. Computational geometry techniques, such as convex hull algorithms, are used in various computer vision applications to estimate an outer convex boundary.
Examples herein describe a spatial analysis scheme that with minimal assumptions is capable of clustering data with convex and concave features and providing an intuitive technique to estimate the number of dusters. The spatial analysis scheme add nondata points (i.e., aether) to the dataset before computing a Delaunay triangulation, which results is an attributed relational graph (i.e., attribute graph) in which points have spatial positions and are classified as either aether or data. At this stage, edges can be determined through the spatial positions of the points and are classified with a logical operator using the connecting points. A nondata edge connects two nondata points, a spatial edge connects two spatial points, and a mixed edge connects a spatial point and a nondata point. Logical operations can be performed using the edges of the triangular mesh to identify mixed edges that include a spatial point that is further connected to another spatial point, where the mixed edges are used to an exterior contour.
Numerous refinements and variations of the spatial analysis scheme are described below. In some cases, the nondata points can be constructed using a uniform geometric sampling scheme or a voidfilling dataapproaching scheme. Further, the attribute graph can be extended to additional properties such as length, area, or angular span. Likewise the tessellation mesh can be postprocessed in manner similar to convex hull peeling such that the number of clusters extracted is a function of minimum area thresholding.
Examples disclosed herein provide spatial analysis with attribute graphs. For example, in some cases, there are a number of spatial points that each represent characteristics in a dimensional space. Nondata points are generated in the dimensional space, and a Delaunay triangulation is performed using the spatial points and the nondata points to generate a plurality of edges, where interior points of the plurality of nondata points that are in an interior space of the plurality of spatial points are excluded from the Delaunay triangulation. Next, spatial edges from the plurality of edges that each connect a spatial point that is connected to a first mixed edge to another spatial point that is connected to a second mixed edge are identified, where the spatial edges are used to generate a robust contour of a cluster of the spatial points.
In this manner, examples disclosed herein provided spatial analysis with attribute graphs by using nondata points when performing a Delaunay triangulation. Specifically, by using nondata points, mixed edges can be identified during the Delaunay triangulation and then used to determine a robust contour for data clusters. Applications of such techniques include data clustering for machine learning, image segmentation, object reconstruction, and threedimensional print processing.
Referring now to the drawings, FIG. 1 is a block diagram of an example computing device 100 for spatial analysis with attribute graphs. Computing device 100 may be any computing device (e.g., desktop computer, laptop computer, server, tablet device, etc.) capable of accessing spatial data. In FIG. 1, computing device 100 includes a processor 110, an interface 115, and a machinereadable storage medium 120.
Processor 110 may be one or more central processing units (CPUs), microprocessors, and/or other hardware devices suitable for retrieval and execution of instructions stored in machinereadable storage medium 120. Processor 110 may fetch, decode, and execute instructions 122, 124, 126, 128 to enable spatial analysis with attribute graphs, as described below. As an alternative or in addition to retrieving and executing instructions, processor 110 may include one or more electronic circuits comprising a number of electronic components for performing the functionality of one or more of instructions 122, 124, 126, 128.
Interface 115 may include a number of electronic components for communicating with sensors. For example, interface 115 may be an Ethernet interface, a Universal Serial Bus (USB) interface, an IEEE 1394 (Firewire) interface, an external Serial Advanced Technology Attachment (eSATA) interface, or any other physical connection interface suitable for communication with a spatial dataset. Alternatively, interface 115 may be a wireless interface, such as a wireless local area network (WLAN) interface or a nearfield communication (NFC) interface. In operation, as detailed below, interface 115 may be used to send and receive data to and from a corresponding interface of sensors.
Machinereadable storage medium 120 may be any electronic, magnetic, optical, or other physical storage device that stores executable instructions. Thus, machinereadable storage medium 120 may be, for example, Random Access Memory (RAM), an ElectricallyErasable Programmable ReadOnly Memory (EEPROM), a storage drive, an optical disc, and the like. As described in detail below, machinereadable storage medium 120 may be encoded with executable instructions for spatial analysis with attribute graphs.
Data collecting instructions 122 may access a spatial dataset and related data. The spatial dataset includes spatial points, which describe various attributes in a dimensional space. Specifically, spatial points may refer to coordinates in a twodimensional or threedimensional space, where each axis of the dimensional space are associated with attribute. For example, the spatial points may correspond to RGB values in a threedimensional space. In another example, the spatial points may correspond to points of interest in a digital image. In yet another example, the spatial points may correspond to locations on a geographic map.
Nondata points generating instructions 124 may generate nondata points in the dimensional space of the spatial dataset. The nondata points can correspond to vertices/intersection of a geometric object that is evenly distributed throughout the dimensional space (I.e., geometric packing) such as a square grid, a rectangular grid, a hexagonal grid, a spherical grid with overlap, etc. The nondata points may be iteratively generated within bounds of the dimensional space.
Delaunay triangulation performing instructions 126 may perform a Delaunay triangulation on the spatial and nondata points. In twodimensional space, the Delaunay triangulation creates edges of triangles between the spatial points and nondata points such that the circumcircle of any resulting triangle does not include a point that isn't a vertex of the triangle. Delaunay triangulation can be extended to a threedimensional space by considering circumscribed spheres. As noted above, a nondata edge connects two nondata points, a spatial edge connects two spatial points, and a mixed edge connects a spatial point and a nondata point.
Robust contour determining instructions 128 uses the edges resulting from the Delaunay triangulation to determine a robust contour for clusters of spatial points. A duster of spatial points may be a subset of the spatial points that are vertices of adjacent triangles formed by the Delaunay triangulation. A robust contour for a cluster may be composed of spatial edges, where each spatial point of each spatial edge is also connected to a mixed edge. In other words, the robust contour is defined by spatial edges that occur at the edges of the duster of spatial points.
A robust contour exhibits a good approximation of a composite shape for a duster of spatial data with a wide range of probability distributions. Accordingly, robust contours can be resistant to distortion caused by outliers.
FIG. 2 is a block diagram of an example computing device 200 in communication via a network 245 with spatial dataset 250. As illustrated in FIG. 2 and described below, computing device 200 may communicate with spatial dataset 250 to provide spatial analysis with attribute graphs.
As illustrated, computing device 200 may include a number of modules 202216. Each of the modules may include a series of instructions encoded on a machinereadable storage medium and executable by a processor of the computing device 200. In addition or as an alternative, each module may include one or more hardware devices including electronic circuitry for implementing the functionality described below.
As with computing device 100 of FIG. 1, computing device 200 may be a notebook, desktop, server, tablet, workstation, mobile device, or any other device suitable for executing the functionality described below. As detailed below, computing device 200 may include a series of modules 202216 for spatial analysis with attribute graphs.
Interface module 202 may manage communications with spatial dataset 250. Specifically, the interface module 202 may initiate connections with spatial dataset 250 and receive spatial data and related data from spatial dataset 250.
Data processing module 204 may manage spatial data obtained from spatial dataset 250 and other sources. Although the components of data processing module 204 are described in detail below, additional details regarding an example implementation of module 204 are provided above in connection with instructions 122 and 124 of FIG. 1.
Spatial data collection module 206 may collect and process spatial data from spatial dataset 250. Specifically, spatial points describing attributes in a dimensional space can be collected from spatial dataset 250. Further, data collection module 206 can also obtain metadata that is associated with the spatial points such as the bounds of the dimensional space, a coordinate system of the dimensional space, descriptions of the attributes, a rendering style for the spatial points (e.g., color ramp based on data values, etc.), etc.
Nondata module 208 may generate nondata points for use in a Delaunay triangulation. The nondata points may correspond to vertices/Intersection of a geometric object that is evenly distributed throughout the dimensional space (e.g., a square grid, a rectangular grid, a hexagonal grid, a spherical grid with overlap, etc.). The nondata points can be generated using the spatial data, such as the bounds of the dimensional space, obtained by spatial data collection module 206. For example, the nondata points by dividing the bounds of each dimension of the dimension space by a preconfigured parameter so that a grid of points can be iteratively generated in the dimensional space.
Triangulation module 210 may manage triangulations that are performed using the spatial data and the nondata. Although the components of triangulation module 210 are described in detail below, additional details regarding an example implementation of module 210 are provided above in connection with instructions 126 and 128 of FIG. 1.
Configuration module 212 may allow a user of computing device 200 to specify various triangulation parameters. For example, configuration module 212 may allow the user to specify the coarseness a grid formed by the nondata points generated by nondata module 208. In this example, a grid that is configured to be less coarse typically results in more spatial points being considered for a resulting robust contour. In another example, configuration module 212 may allow the user to specify the type of grid (e.g., rectangular, hexagonal, spherical, etc.) that should be generated by nondata module 208. In these examples, the coarseness of the grid affects an analysis duration of a Delaunay triangulation performed on the data (i.e., a coarser grid results in a Delaunay triangulation that can be performed faster or that can preview or handle larger amounts of data).
Delaunay triangulation module 214 may perform Delaunay triangulations using spatial data and nondata provided by data processing module 204. Initially, Delaunay triangulation module 214 may determine nondata points to exclude from further analysis. The nondata points to exclude occur within an interior space of clusters of the spatial data. For example, a duster of spatial points in a twodimensional space can be used to generate a polygon, where any nondata points that intersect the polygon are excluded from further analysis. After the identified points are excluded, Delaunay triangulations can be performed for each duster of spatial points and neighboring nondata points. The Delaunay triangulation results in nondata edges, spatial edges, and mixed edges such as the edges described below with respect to FIG. 5C. In some cases, Delaunay triangulations can be performed for multiple coarseness parameters to generate multiple results for use by robust contour module 216.
Robust contour module 216 may use the results of Delaunay triangulation module 216 to determine a robust contour for each duster of spatial points. Specifically, robust contour module 216 identifies edges satisfying particular characteristics to be considered for inclusion in robust contours. For example, spatial edges where each edge is connected to a nondata point can be identified for inclusion in robust contours. In some cases, robust contour module 216 generate a composite robust contour based on multiple results for varying coarseness parameters. After the robust contours are determined, the robust contours can be used to perform various analysis of the spatial or related data. A centroid of the robust contour can be used to determine a representative value of spatial data for the corresponding duster of spatial points. In another example, the robust contour is used to calculate an area of the corresponding duster of spatial data.
Spatial dataset 250 may be provided a hardware storage device for maintaining data accessible to computing device 200. For example, the storage device may include one or more hard disk drives, solid state drives, tape drives, and/or any other storage devices. In some cases rather than accessing spatial dataset 250 via network 245, the storage device may be located in computing device 200.
FIG. 3 is a flowchart of an example method 300 for execution by a computing device 100 for spatial analysis with attribute graphs. Although execution of method 300 is described below with reference to computing device 100 of FIG. 1, other suitable devices for execution of method 300 may be used, such as computing device 200 of FIG. 2. Method 300 may be implemented in the form of executable instructions stored on a machinereadable storage medium, such as storage medium 120, and/or in the form of electronic circuitry.
Method 300 may start in block 305 and continue to block 310, where computing device 100 may collect spatial data points that describe various attributes in a dimensional space. In block 315, nondata points are generated in the dimensional space of the spatial points. For example, the nondata points may be a square grid of evenly distributed points.
In block 320, a Delaunay triangulation is performed on the spatial and nondata points. In this example, the Delaunay triangulation creates edges of triangles between the spatial points and nondata points such that the circumcircle of any resulting triangle does not include a point that isn't a vertex of the triangle. In block 325, computing device 100 uses the edges resulting from the Delaunay triangulation to determine a robust contour for clusters of spatial points. A robust contour for a cluster may be composed of spatial edges, where each spatial point of each spatial edge is also connected to a mixed edge. Method 300 may then continue to block 330, where method 300 may stop.
FIG. 4 is a flowchart of an example method 400 for execution by a computing device 200 for composite spatial analysis with attribute graphs. Although execution of method 400 is described below with reference to computing device 200 of FIG. 2, other suitable devices for execution of method 400 may be used, such as computing device 200 of FIG. 1. Method 400 may be implemented in the form of executable instructions stored on a machinereadable storage medium and/or in the form of electronic circuitry.
Method 400 may start in block 405 and continue to block 410, where computing device 200 may collect spatial data points that describe various attributes in a dimensional space. In block 415, the next coarseness parameter to be used when performing a Delaunay triangulation is loaded. Specifically, a sequence of coarseness parameters may be configured for sequential use in generating nondata points for the Delaunay triangulation. In block 420, nondata points are generated in the dimensional space using the loaded coarseness parameter.
In block 425, nondata points occurring in the interior of clusters of spatial data are excluded from further analysis. Excluding the identified nondata points ensures that spatial edges can be more easily identified as described below. In block 430, a Delaunay triangulation is performed on the spatial points and nondata points that were not excluded. In block 435, computing device 200 determines if there are additional coarseness parameters. If there are additional coarseness parameters, method 400 returns to block 415 to use the next coarseness parameter as described above. If there are no additional coarseness parameters, a composite robust contour can be generated using the spatial edges generated above in block 440. Specifically, the spatial edges for each coarseness parameter where each spatial point is connected to a nondata point are used to generate a composite robust contour. For example, spatial edges can be selected for each coarseness parameter to generate the composite contour. In another example, the composite contour can be a spatial average of the different robust contours generated for the coarseness parameters. Method 400 may then continue to block 445, where method 400 may stop.
FIG. 5A is example dimensional space 500 showing spatial data. The dimensional space 500 allows for dusters of spatial points 502A, 502B, 502C to be spatially represented. Dimensional space 500 is twodimensional and includes two axis (not shown), each of which represents a characteristic of each spatial point. In this example, the characteristics may be related to the positioning of objects in an underlying photograph or picture. Specifically, the spatial points in each duster 502A, 502B, 502C may represent locations in the underlying photograph or picture that have a similar color. 502A and 5028 appear to represent eyes while 502C appears to represent a mouth.
FIG. 5B is an example dimensional space 500 showing spatial data and nondata. Dimensional space 500 shows dusters of spatial points 502A, 502B, 502C and nondata points 504, 506. In this example, nondata points 504, 506 are evenly distributed in a square grid according to the bounds of dimensional space 500. The nondata points 504, 506 may be generated by iteratively dividing the dimensional space 500 according to a coarseness parameter. Nondata point 506 is interior to duster of spatial points 5028 such that nondata point 506 would be excluded from a Delaunay triangulation.
FIG. 5C is an example dimensional space 500 showing spatial data, nondata, and robust contours. Each duster of spatial points 502A, 502B, 502C has been processed to now show spatial edges 508, 512 and mixed edges 510, which are the results of a Delaunay triangulation. Spatial edges 508 have been used to determine a robust contour for each duster of spatial points 502A, 502B, 502C, which shows a smiling face. Each spatial edge 508 in a robust contour is connected to two nondata points via mixed edges.
The foregoing disclosure describes a number of examples for providing spatial analysis using attribute graphs. In this manner, the examples disclosed herein enable robust contours to be determined clustered spatial data by using nondata points with the spatial points when performing a Delaunay triangulation.
Great research starts with great data.
Use the most comprehensive innovation intelligence platform to maximise ROI on research.
More Patents & Intellectual Property
 Selecting a device with visual confirmation in the internet of things
 Enterprise Patent & IP Solutions
 Improve R&D Innovation
 Intellectual Property (IP) Tools
 IP & Patent Strategies
 Market Intelligence for Innovation
 IP Data API
 Chemical Structure Search
 DNA Sequence Search
 Free Intellectual Property Courses
 IP & Patent Glossary