Tree structures for Spatial Data - PowerPoint PPT Presentation

1 / 34
About This Presentation
Title:

Tree structures for Spatial Data

Description:

Structure should be based on the spatial keys. ... The search for the target can be focussed easily and it doesnt have to traverse many paths. ... – PowerPoint PPT presentation

Number of Views:40
Avg rating:3.0/5.0
Slides: 35
Provided by: vin69
Category:

less

Transcript and Presenter's Notes

Title: Tree structures for Spatial Data


1
Tree structures for Spatial Data
2
Abstract
  • The spatial data are

3
Spatial trees Quadtree
  • Structure should be based on the spatial keys.
    The data on the space does not have specific
    record structure and its difficult to
    predetermine. Its efficient to construct on the
    fly.
  • For example, a 2D point can be represented as 4D
    spatial key. (X,Y) can be changed to (X1,Y1) and
    (X2,Y2) to define a region.

4
Example of splitting Spatial data as Bounding
rectangles
5
Spatial Occupancy
  • The space can be viewed as grids/cells /buckets.
    This can be formed as bounding rectangles or
    proximities.
  • Overlapping of points in space can be allowed to
    store objects in different places. This leads to
    multiple search paths to make sure that the
    target object is fetched properly.
  • Non-overlapping nodes are difficult to perform,
    since they need to be verified for duplicates.

6
Types of spatial occupancy
  • Region data
  • Line data
  • Rectangle data
  • Point data

7
Region data
  • Region data can be represented as boundary or by
    its interior value.
  • Quad tree decomposes based on the distribution of
    the data (arbitrarily distributed), Uniform
    grid(uniformly distributed data). - Both are good
    for performing set operations on diff sets and
    operations.
  • The bit values are used to represent the
    occupancy of the object in the space.

8
Example
9
Point data
  • PR quadtree is used to represent points structure
    adapted from region quadtree.
  • More precious the nearby points in the structure
    means more depth is the tree.
  • The search for the target can be focussed easily
    and it doesnt have to traverse many paths.

10
(No Transcript)
11
Rectangle Data
  • It represents the enclosing boundary of the
    space.
  • The centroid of the rectangles that occupy the
    space is used to find the line segment that
    intersects with each other with the centroid
    point is used to form the tree.
  • The splitting stops if the size of the rectangle
    is same as the splitting block.

12
Example
13
Line data
  • There are two types of representing the line
    segment. Either by vertex or edge based.
  • Vertex based saves space by splitting according
    to the occupancy of the line in the block.The
    vertex based makes sure that no more than one
    edge or vertex occupies the block unless all the
    edges meet the same vertex or in adjacent side.
  • But in edge based variable number of line
    segments are allowed. Line segment intersects or
    occupies entirely the block

14
Vertex based split
15
Edge based split
16
BSP tree
  • Used by Doom, First Person Shooting games.
  • The tree is constructed before the execution not
    on the fly.
  • The polygons are used to split the space based on
    their positions.

17
Example
18
Example of Polygon
19
Formation of tree
20
R tree
  • This is used for efficient spatial data handling
    operations such as deletion or insertion.
  • Used for CAD or geo-data applications. Its index
    based searching for multi-dimensions

21
Properties of R tree
  • Every leaf node contains between m and M index
    records unless it is the root
  • For each index record (I, tuple -identifier) in a
    leaf node, I is the smallest rectangle that
    spatially contains the n-dimensional data object
    represented by the indicated tuple
  • Every non-leaf node has between m and M children
    unless it is the root

22
..contd
  • For each entry (I, child -pointer) a non-leaf
    node, I is the smallest rectangle that spatially
    contains the rectangles m the child node
  • The root node has at least two children unless it
    is a leaf
  • All leaves appear on the same level

23
Example of R tree
24
..contd
25
Searching
  • The record is searched from the root. The child
    area that encloses the range that matches the
    searching query is used for traversal down the
    tree.
  • The leaf node that matches the query is the final
    record. More than one sub tree needs to be
    searched since there may be overlaps.

26
Insertion
  • The leaf is searched for the inserting record to
    accommodate new record. If this overflows the
    existing leaf node, the splitting is informed to
    the upper layer and the new root is selected to
    balance the change.
  • If there is any change that can accommodate the
    new entry, it can be done before splitting.

27
Splitting of the space
  • Instead of analysing different combinations of
    the area occupied by the rectangles, two points
    are chosen such that the area will be wasted by
    enclosing them as a rectangle.
  • Then each record is inserted by analysing the
    existing node and added to corresponding group.

28
R tree
  • This is an extension of R tree taking the concept
    basically but it is dynamic insertions and
    deletions with no need to change the global
    organisation.
  • A single search path does not guarantee the
    fetching of all records that corresponds to the
    query.

29
Properties
  • The area enclosed by the directory rectangle
    should be minimum leaving the dead space as max
    as possible.
  • The overlap directory between the rectangles
    should be minimum.
  • The margin of the directory rectangle should be
    minimum.
  • The storage utilisation should be minimum.

30
R tree , Guttmann, Greene and Rtree comparisons
31
K d tree
  • This is used to store points of k-dimensional
    space.
  • Each node in the tree stores a point whereas BSP,
    R, R stores records only in the leaf nodes.
  • As one moves down the tree, the splitting axis
    goes around the cycle.

32
..contd
  • The point chosen in each level is the median of
    all points. This would make the tree structure
    more height balanced.
  • But it is not required to calculate the exact
    medium, and it may not optimal for all
    applications. Some heuristic calculation will
    ease the splitting.

33
Example of splitting
34
  • http//cis.poly.edu/hakcan01/projects/kdtree/kdTr
    ee.html
  • http//donar.umiacs.umd.edu/quadtree/points/kdtree
    .html
  • 2 nd one is better
Write a Comment
User Comments (0)
About PowerShow.com