dicom-metadata-extract
NVIDIA/skills
Extrahiert ausgewählte Metadaten aus einer DICOM-Datei und kennzeichnet das Vorhandensein von PHI in Standard-Tags. Nicht zur Anonymisierung oder für klinische Zwecke bestimmt.
...Alle erweiternDICOM-Metadaten-Extrakt
Zweck
- Dient zum Extrahieren ausgewählter Metadaten aus einer DICOM-Datei und zum Markieren des Vorhandenseins von PHI im Standard-Tag. Nicht zur Anonymisierung oder für klinische Zwecke bestimmt.
- Verwenden Sie den Wrapper genau wie dokumentiert; ersetzen Sie den vorgelagerten Einstiegspunkt nicht durch eine selbst geschriebene Implementierung.
- Manifest-E/A: Eingaben sind
dicom_path; die Ausgänge sindmetadata_json.
Anleitung
- Lesen Sie
skill_manifest.yaml, bevor Sie Argumente, Nebenwirkungen oder Validierungsprüfungen ändern. - Führen Sie
scripts/extract_metadata.pyden unten dokumentierten Befehl aus; speichern Sie die Ausgaben in einem vom Aufrufer bereitgestellten Ausführungsverzeichnis. - Wenn ein Host-Agent
run_script, verwenden Sierun_script("scripts/extract_metadata.py", args=[...]); andernfalls führen Sie den unten gezeigten Bash-/Python-Befehl aus. - Überprüfen Sie die ausgegebene JSON-Datei und führen Sie
medagent.verifiers.dicom_metadata_quality_v1auf Beweismaterialpaketen aus, bevor Sie den Lauf als geprüfte Beweismittel behandeln.
Verfügbare Skripte
| Skript | Zweck | Argumente |
|---|---|---|
scripts/extract_metadata.py |
Primärer Einstiegspunkt, der in „skill_manifest.yaml“ deklariert ist. | PATH_TO_DICOM [--output OUT.json] |
Voraussetzungen
- Laufzeitanforderungen: Die in
runtime.side_effects.pip_packages. - Führen Sie Befehle aus dem Stammverzeichnis des Repositorys aus, sofern in einem der folgenden Abschnitte nichts anderes angegeben ist.
Einschränkungen
- Nur eine kleine, von PS3.15 inspirierte Teilmenge der Standard-Tags; keine vollständige Implementierung des „Basic Application Confidentiality Profile“.
- Private Tags werden nicht geprüft
- Eingebrannte Pixel (PHI) werden nicht erkannt
- Minimale Verarbeitung mehrerer Bilder
- Nicht für den klinischen Einsatz, die behördlich vorgeschriebene Anonymisierung, die autonome Diagnose oder den patientennahen Einsatz geeignet.
Fehlerbehebung
| Fehler | Ursache | Behebung |
|---|---|---|
| Fehlende Abhängigkeit oder Importfehler | Abweichung des Laufzeitpakets von skill_manifest.yaml. |
Installieren Sie die im Manifest angegebenen Pakete oder verwenden Sie den dokumentierten Setup-Befehl. |
| Leere oder schemaungültige Ausgabe | Falscher Eingabepfad, nicht unterstützte Modalität oder Fehler in der vorgelagerten Verarbeitung. | Führen Sie den Vorgang mit einem bekannten Testfall erneut aus und überprüfen Sie die JSON-Datei des Wrappers sowie die stderr-Ausgabe. |
| Fehler beim Validierungs-Gate | Die Ausgabe verstößt gegen eine deklarierte technische Invariante. | Bewahren Sie das fehlgeschlagene Evidenzpaket auf und nutzen Sie die Gate-Meldung, um Eingaben oder den Wrapper-Code zu korrigieren. |
Liest eine DICOM-Datei mit pydicom ein und gibt JSON über stdout aus.
python scripts/extract_metadata.py PATH_TO_DICOM
python scripts/extract_metadata.py PATH_TO_DICOM --output result.json
Die Ausgabe enthält transfer_syntax, modality, gruppierte Metadaten zu Studie/Serie/Bild
sowie phi_presentsowie phi_tags_found.
Verwenden Sie dies als kleinstes End-to-End-Beispiel für einen „Medical AI Skills“-Skill. Verwenden Sie es nicht zur Anonymisierung, zur Überprüfung von „private“-Tags, zur Erkennung von PHI in Pixeln oder zur klinischen Interpretation.
Erstellen Sie für die Überprüfung der Evidenz im zweiten Durchgang einen vertrauenswürdigen Lauf:
python -m eval_engine.run_trusted skills/dicom-metadata-extract \
--fixture skills/dicom-metadata-extract/fixtures/sample_ct.dcm \
--out runs/dicom_metadata_trusted
---
name: dicom-metadata-extract
description: Extracts selected metadata from a DICOM file and flags standard-tag PHI presence. Not for anonymization or clinical use.
license: Apache-2.0
---
# DICOM Metadata Extract
## Purpose
- Used for extracting selected metadata from one DICOM file and flagging standard-tag PHI presence. Not for anonymization or clinical use.
- Use the wrapper exactly as documented; do not replace the upstream entrypoint with a handwritten implementation.
- Manifest I/O: inputs are `dicom_path`; outputs are `metadata_json`.
## Instructions
- Read `skill_manifest.yaml` before changing arguments, side effects, or validation gates.
- Run `scripts/extract_metadata.py` through the documented command below; keep outputs under a caller-provided run directory.
- If a host agent exposes `run_script`, use `run_script("scripts/extract_metadata.py", args=[...])`; otherwise run the Bash/Python command shown below.
- Check the emitted JSON and run `medagent.verifiers.dicom_metadata_quality_v1` on evidence packs before treating the run as reviewed evidence.
## Available Scripts
| Script | Purpose | Arguments |
|---|---|---|
| `scripts/extract_metadata.py` | Primary entrypoint declared by skill_manifest.yaml. | `PATH_TO_DICOM [--output OUT.json]` |
## Prerequisites
- Runtime requirements: Python packages listed in `runtime.side_effects.pip_packages`.
- Run commands from the repository root unless an existing section below says otherwise.
## Limitations
- Small PS3.15-inspired standard-tag subset only; not a complete Basic Application Confidentiality Profile implementation.
- Private tags not checked
- Burnt-in pixel PHI not detected
- Multi-frame handling minimal
- Not for clinical deployment, regulatory de-identification, autonomous diagnosis, patient-facing use.
## Troubleshooting
| Error | Cause | Fix |
|---|---|---|
| Missing dependency or import error | Runtime package drift from `skill_manifest.yaml`. | Install the packages declared in the manifest or use the documented setup command. |
| Empty or schema-invalid output | Wrong input path, unsupported modality, or upstream failure. | Re-run with a known fixture and inspect the wrapper JSON plus stderr. |
| Validation gate failure | Output violated a declared engineering invariant. | Keep the failed evidence pack and use the gate message to repair inputs or wrapper code. |
Reads one DICOM file with pydicom and emits JSON on stdout.
```bash
python scripts/extract_metadata.py PATH_TO_DICOM
python scripts/extract_metadata.py PATH_TO_DICOM --output result.json
```
Output includes `transfer_syntax`, `modality`, grouped study/series/image
metadata, `phi_present`, and `phi_tags_found`.
Use this as the smallest end-to-end example of a Medical AI Skills skill. Do not use
it for anonymization, private-tag review, pixel PHI detection, or clinical
interpretation.
For second-pass evidence review, generate a trusted run:
```bash
python -m eval_engine.run_trusted skills/dicom-metadata-extract \
--fixture skills/dicom-metadata-extract/fixtures/sample_ct.dcm \
--out runs/dicom_metadata_trusted
```
Alle Dateien
12 Dateiendicom-metadata-extract installieren
Laden Sie die Skill-Dateien herunter und entpacken Sie sie in Ihr Verzeichnis „.claude/skills/“.
ZIP herunterladenKlonen Sie das Repository und kopieren Sie die Skill-Dateien in Ihr Projekt.
git clone https://github.com/NVIDIA/skills/tree/main/skills/dicom-metadata-extract # Copy SKILL.md to your .claude/skills/ directory
Kopieren





Heim
