Skip to main content
letter
. 2020 Dec 11;20(24):7117. doi: 10.3390/s20247117

Table 5.

Octree spatial division and node displacement algorithm.

Input Laser scan binary file
(index, value (point, depth, height, width))
Input Node displacement check
(Ref.octree model, Src.octree model)
Step 1 Step 2
1: resolution R = Space segmentation level
2: generate new octree (R)
3:    while (index! = end)
4:        read Binary data → value
5:        mark value → empty or full
6:          if (value == full)
7:              octree → Insert Node(value)
8:          else octree → Delete Node(value)
9:          end if
10:        next index
11:    end while
12:    write octree → Complete Binary()
13: end octree
14: return octree storage file
1: lookup Ref.model containing Src.model
2: while (index! = end)
3:    get next closest child (Ref, Src)
4:    Node C = Src.index
5:    if C == outside of Node
6:      return 0
7:    else
8:      if C == inside of Node
9:        return Distance Calculate (Ref, Src)
10:      else
11:      find closet node (Ref)
12:      return Distance Calculate (Ref, Src)
13:      end if
14:    end if
15:    end while
16: return Distance result file