Skip to content

Instantly share code, notes, and snippets.

View pieper's full-sized avatar

Steve Pieper pieper

View GitHub Profile
@pieper
pieper / fish.py
Last active October 4, 2023 22:48
RGBA volume rendering in 3D Slicer from segmentation
import numpy
dataDir = "/opt/data/SlicerMorph/20231003-ColorizedVR"
segName = "Segmentation"
ctFullName = "deep_snail_2_14.9um_2k__rec1100"
ctName = "deep_snail_2_14"
try:
slicer.util.getNode(segName)
except slicer.util.MRMLNodeNotFoundException:
slicer.util.loadVolume(f"{dataDir}/{ctFullName}.nrrd")
@pieper
pieper / segment-names.py
Created June 13, 2023 16:02
Example of assigning segment names from table
import glob
import numpy
import os
import random
includeEdema = True
exec(open("/opt/data/nac/neurosurgicalatlas/MONAI/labels.py").read())
tureSynthSegGlob = "/opt/data/nac/neurosurgicalatlas/MONAI/Ture-subset-2022-12-03-nii-seg/Ture-*-*.nrrd_synthseg.nii.gz"
@pieper
pieper / guide.py
Last active December 26, 2022 00:16
Slicer CPPYY example
# Copyright Steve Pieper
# https://github.com/Slicer/Slicer/blob/master/License.txt
# Demo video: https://youtu.be/xcQKj4yp2nw
"""
exec(open('/Users/pieper/slicer/latest/SlicerTMSGuide/guide.py', 'r').read())
"""
@pieper
pieper / ss2-Ture-028-registration.py
Created December 8, 2022 18:49
example slicer transforms
"""
exec(open("/opt/data/nac/neurosurgicalatlas/ss2-Ture-028-registration.py").read())
"""
import glob
from math import floor, ceil
import numpy
@pieper
pieper / ngff.py
Last active July 6, 2022 13:14
Display NGFF volume data in 3D Slicer
"""
Display zarr from s3 buckets for example data from here:
https://www.openmicroscopy.org/2020/11/04/zarr-data.html
exec(open("/Users/pieper/idc/ngff.py").read())
see also: /Volumes/GoogleDrive/My\ Drive/hacks/sardana.py
https://gist.github.com/pieper/10ee6add544633f4c75dbb293ef087bc
@pieper
pieper / sardana.py
Created June 27, 2022 16:21
reading multichannel tiff
"""
p = "/Volumes/GoogleDrive/My Drive/hacks/sardana.py"
exec(open(p).read())
Screencapture of result posted here (slide 7): https://docs.google.com/presentation/d/12cDI-HHQ4OhNTN4oqx-yFiyPAqvDB5sxKrimrWgdAOY/edit?usp=sharing
"""
#
@pieper
pieper / loadPointCloud.py
Created June 3, 2022 20:57
Load a ply point cloud in Slicer
"""
filePath = "/Users/pieper/slicer/latest/SlicerMorph/loadPointCloud.py"
modelPath = "/opt/tmp/georeferenced_model.vtk"
exec(open(filePath).read())
"""
modelNode = slicer.util.loadModel(modelPath)
@pieper
pieper / slicer-compute.py
Created May 21, 2022 20:57
Slicer with python WebGPU compute shader
"""
Install wgpu as described here: https://github.com/pygfx/wgpu-py
Tested with Slicer 5.0.2 and wgpu 537c3eab68e9eef77681fc5545532380df26d8cc (basically 0.8.1)
exec(open("./slicer-compute.py").read())
"""
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta
name="description"
content="Open Health Imaging Foundation DICOM Viewer"
/>
<meta
#!/usr/bin/env python
comment = """
You can use this script with either Slicer's python wrapped VTK or with pip installed VTK like this:
~/Downloads/Slicer-4.13.0-2021-06-18-linux-amd64/bin/PythonSlicer vr-depth-crop.py
python vr-depth-crop.py
"""