simpleitk

$npx mdskill add mkurman/zorai/simpleitk

Process medical images with segmentation, registration, and filtering.

  • Enables segmentation, registration, and morphological operations on medical data.
  • Integrates with DICOM, NIfTI, and NRRD file formats for diverse inputs.
  • Executes algorithms via Python SimpleITK API calls.
  • Outputs processed image arrays and statistical metrics for analysis.

SKILL.md

.github/skills/simpleitkView on GitHub ↗
---
name: simpleitk
description: "Simplified interface to the Insight Toolkit (ITK) for medical image processing. Segmentation, registration, filtering, resampling, morphological operations. Supports DICOM, NIfTI, NRRD, dozens of formats."
tags: [medical-image-processing, registration, dicom-workflows, itk-wrappers, simpleitk]
---
## Overview

SimpleITK simplifies the Insight Toolkit (ITK) for medical image processing: segmentation, registration, filtering, resampling, and morphological operations. Supports DICOM, NIfTI, NRRD, and 50+ file formats.

## Installation

```bash
uv pip install SimpleITK
```

## Basic Image Operations

```python
import SimpleITK as sitk
import numpy as np

image = sitk.ReadImage("ct_scan.nii.gz")
print(image.GetSize(), image.GetSpacing(), image.GetOrigin())

array = sitk.GetArrayFromImage(image)
print(array.shape)  # (z, y, x)
```

## Segmentation

```python
binary = sitk.BinaryThreshold(image, lower=200, upper=500, insideValue=1, outsideValue=0)
cc = sitk.ConnectedComponent(binary)
stats = sitk.LabelIntensityStatisticsImageFilter()
stats.Execute(cc, image)

for label in stats.GetLabels():
    print(f"Label {label}: mean={stats.GetMean(label):.1f}")
```

## Registration

```python
fixed = sitk.ReadImage("template.nii.gz")
moving = sitk.ReadImage("moving.nii.gz")

R = sitk.ImageRegistrationMethod()
R.SetMetricAsMattesMutualInformation(numberOfHistogramBins=50)
R.SetOptimizerAsGradientDescent(learningRate=1.0, numberOfIterations=100)
R.SetInitialTransform(sitk.CenteredTransformInitializer(fixed, moving, sitk.Euler3DTransform()))
final_transform = R.Execute(fixed, moving)
resampled = sitk.Resample(moving, fixed, final_transform, sitk.sitkLinear)
```

## Workflow

1. Read images with `sitk.ReadImage()` (auto-detects format)
2. Preprocess: `BinaryThreshold`, `MedianFilter`, `ResampleImageFilter`
3. Segment with thresholding, watershed, or connected components
4. Register with `ImageRegistrationMethod` + transform
5. Measure volumes with `LabelStatisticsImageFilter`
6. Write results with `sitk.WriteImage()`

More from mkurman/zorai

SkillDescription
account-management>
agile-scrum>
albumentationsFast image augmentation library (Albumentations). 70+ transforms for classification, segmentation, object detection, keypoints, and pose estimation. Optimized OpenCV-based pipeline with unified API across all CV tasks. Supports images, masks, bounding boxes, and keypoints simultaneously. Note: classic Albumentations (MIT) is no longer maintained; successor AlbumentationsX uses AGPL-3.0. For torchvision-native augmentations, use torchvision.transforms.v2.
aml-complianceAnti-Money Laundering (AML) and Know Your Customer (KYC) compliance workflow. Sanctions screening, PEP detection, transaction monitoring, suspicious activity reporting (SAR), and OFAC compliance.
anki-connectThis skill is for interacting with Anki through AnkiConnect, and should be used whenever a user asks to interact with Anki, including to read or modify decks, notes, cards, models, media, or sync operations.
approval-checkpoint-long-taskCanonical long-task pack for daemon-managed work with deliberate approval checkpoints, status summaries, rollback notes, and mobile-safe governance-aware updates.
auditing-goal-artifactsUse when reviewing recent zorai goal run outputs, closure markers, ledgers, or evidence bundles to judge whether completion is credible or to identify remaining uncertainty.
autogenAutoGen (Microsoft) — multi-agent conversation framework. Agent-to-agent chat, code generation & execution, tool use, group chat, and human-in-the-loop. Build collaborative AI systems with specialized agents.
backtraderPython backtesting framework for trading strategies. Data feeds, brokers, analyzers, and live trading support. Strategy development with commission models, slippage, and signal-based execution.
beautiful-mermaidRender Mermaid diagrams as SVG and PNG using the Beautiful Mermaid library. Use when the user asks to render a Mermaid diagram.