  Dormant pruning for fresh market fruit trees is a relatively unexplored
application of agricultural robotics for which few end-to-end systems exist.
One of the biggest challenges in creating an autonomous pruning system is the
need to reconstruct a model of a tree which is accurate and informative enough
to be useful for deciding where to cut. One useful structure for modeling a
tree is a skeleton: a 1D, lightweight representation of the geometry and the
topology of a tree. This skeletonization problem is an important one within the
field of computer graphics, and a number of algorithms have been specifically
developed for the task of modeling trees. These skeletonization algorithms have
largely addressed the problem as a geometric one. In agricultural contexts,
however, the parts of the tree have distinct labels, such as the trunk,
supporting branches, etc. This labeled structure is important for understanding
where to prune. We introduce an algorithm which produces such a labeled
skeleton, using the topological and geometric priors associated with these
labels to improve our skeletons. We test our skeletonization algorithm on point
clouds from 29 upright fruiting offshoot (UFO) trees and demonstrate a median
accuracy of 70% with respect to a human-evaluated gold standard. We also make
point cloud scans of 82 UFO trees open-source to other researchers. Our work
represents a significant first step towards a robust tree modeling framework
which can be used in an autonomous pruning system.
