Skip to content

Commit 9f494e1

Browse files
benzwicksjh26
authored andcommitted
PW44_2026_GranCanaria: Add project SlicerAdaptiveBrush
1 parent ab1771f commit 9f494e1

1 file changed

Lines changed: 99 additions & 0 deletions

File tree

  • PW44_2026_GranCanaria/Projects/SlicerAdaptiveBrush
Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
---
2+
layout: pw44-project
3+
4+
permalink: /:path/
5+
6+
project_title: SlicerAdaptiveBrush - Adaptive Brush Segment Editor Effect
7+
category: Segmentation / Classification / Landmarking
8+
presenter_location: In-person
9+
10+
key_investigators:
11+
12+
- name: Ben Zwick
13+
affiliation: The University of Western Australia and Talk2View
14+
country: Australia
15+
16+
- name: Andy Huynh
17+
affiliation: Talk2View
18+
country: Australia
19+
20+
---
21+
22+
# Project Description
23+
24+
<!-- Add a short paragraph describing the project. -->
25+
26+
SlicerAdaptiveBrush is a segment editor effect extension for 3D Slicer that provides an adaptive brush tool for semi-automatic segmentation. The brush automatically segments regions based on image intensity similarity within the brush area, adapting to image features (edges, boundaries) rather than using a fixed geometric shape.
27+
28+
## Objective
29+
30+
<!-- Describe here WHAT you would like to achieve (what you will have as end result). -->
31+
32+
1. Submit to Extension Index
33+
2. Improve documentation and tutorials
34+
3. Optimize performance for real-time interaction
35+
4. Add GPU acceleration for Level Set algorithm
36+
37+
## Approach and Plan
38+
39+
<!-- Describe here HOW you would like to achieve the objectives stated above. -->
40+
41+
### 1. Submit to Extension Index
42+
43+
- Complete submission requirements
44+
- Test on all platforms (Linux, macOS, Windows)
45+
- Create extension icon and screenshots
46+
47+
### 2. Improve documentation
48+
49+
- Write user tutorial with example workflows
50+
- Document algorithm selection guide
51+
- Add parameter tuning recommendations
52+
53+
### 3. Optimize performance
54+
55+
- Profile and optimize critical paths
56+
- Implement ROI result caching for nearby brush positions
57+
- Add slice-by-slice preview mode
58+
59+
### 4. GPU acceleration
60+
61+
- Implement OpenCL/CUDA backend for Level Set
62+
- Benchmark CPU vs GPU performance
63+
64+
## Progress and Next Steps
65+
66+
<!-- Update this section as you make progress, describing of what you have ACTUALLY DONE.
67+
If there are specific steps that you could not complete then you can describe them here, too. -->
68+
69+
1. ...
70+
71+
# Illustrations
72+
73+
<!-- Add pictures and links to videos that demonstrate what has been accomplished.
74+
![Description of picture](Example2.jpg)
75+
![Some more images](Example2.jpg)
76+
-->
77+
78+
# Background and References
79+
80+
<!-- If you developed any software, include link to the source code repository.
81+
If possible, also add links to sample data, and to any relevant publications. -->
82+
83+
Code repository:
84+
85+
- <https://github.com/benzwick/SlicerAdaptiveBrush>
86+
87+
## Features
88+
89+
- **Multiple algorithm choices** - Geodesic Distance, Watershed, Random Walker, Level Set, Connected Threshold, Region Growing, Threshold Brush
90+
- **Auto-threshold methods** - Otsu, Huang, Triangle, Maximum Entropy, IsoData, Li
91+
- **Automatic intensity analysis** - GMM-based threshold estimation adapts to image content
92+
- **Edge-aware boundaries** - Respects anatomical boundaries automatically
93+
- **2D and 3D modes** - Works on single slices or volumetrically (sphere mode)
94+
95+
## References
96+
97+
- [ITK-SNAP Adaptive Brush](https://www.itksnap.org/) - Original inspiration
98+
- [3D Slicer Segment Editor](https://slicer.readthedocs.io/en/latest/user_guide/modules/segmenteditor.html)
99+
- [SlicerSegmentEditorExtraEffects](https://github.com/lassoan/SlicerSegmentEditorExtraEffects)

0 commit comments

Comments
 (0)