BranchNet: Tree Modeling with Hierarchical Graph Networks

Research on modeling trees and plants has attracted a great deal of attention in recent years. Early procedural tree modeling can be divided into four main categories: rule-based algorithms, repetitive patterns, cellular automata, and particle systems. These methods offer a very high level of rea...

Full description

Bibliographic Details
Main Author: Zhang, Jiayao
Other Authors: Michels, Dominik L.
Language:en
Published: 2021
Subjects:
Online Access:Zhang, J. (2021). BranchNet: Tree Modeling with Hierarchical Graph Networks. KAUST Research Repository. https://doi.org/10.25781/KAUST-OFB09
http://hdl.handle.net/10754/670111
Description
Summary:Research on modeling trees and plants has attracted a great deal of attention in recent years. Early procedural tree modeling can be divided into four main categories: rule-based algorithms, repetitive patterns, cellular automata, and particle systems. These methods offer a very high level of realism; however, creating millions of varied tree datasets manually is not logistically possible, even for professional 3D modeling artists. Trees created using these previous methods are typically static and the controllability of these procedural tree models is low. Deep generative models are capable of generating any type of shape automatically, making it possible to create 3D models at large scale. In this paper, we introduce a novel deep generative model that generates 3D (botanical) tree models, which are not only edible, but also have diverse shapes. Our proposed network, denoted BranchNet, trains the tree branch structures on a hierarchical Variational Autoencoder (VAE) that learns new generative model structures. By directly encoding shapes into a hierarchy graph, BranchNet can generate diverse, novel, and realistic tree structures. To assist the creation of tree models, we create a domain-specific language with a GUI for modeling 3D shape structures, in which the continuous parameters can be manually edited in order to produce new tree shapes. The trees are interpretable and the GUI can be edited to capture the subset of shape variability.