GraphTrace is a Python library that utilizes machine learning to perform automated reconstruction of a fragmented neuron segmentation from whole brain images. For a demo, we provide a Jupyter notebook that loads fragments from a predicted segmentation and automatically merges them by running GraphTrace. You can use our github code to train a deep learning model and test with a ground-truth.
- Graph Construction: Reads neuron fragments stored as swc files and loads them into a Networkx graph
- Proposals: Generates potential connections between nearby fragments to correct false splits in the segmentation
- Feature Generation: Extracts geometric and image-based features from the graph to be utilized by a machine learning model that classifies the proposals.
- Graph Neural Network (GNN) Inference: Predicts whether to accept or reject proposals based on the generated features and graphical structure.
- Graph Update: Integrates inference results by merging fragments corresponding to an accepted proposal.
To use the software, in the root directory, run
pip install -e .
To develop the code, run
git clone
pip install -e .[dev]
We welcome contributions from the community! If you have suggestions, improvements, or bug reports, please open an issue or submit a pull request.
GraphTrace is licensed under the MIT License.