dicom-metadata-extract
NVIDIA/skills
Extrae metadatos seleccionados de un archivo DICOM y señala la presencia de información médica protegida (PHI) en las etiquetas estándar. No está destinado a la anonimización ni al uso clínico.
...Expandir todoExtracción de metadatos DICOM
Finalidad
- Se utiliza para extraer metadatos seleccionados de un archivo DICOM y señalar la presencia de información de salud protegida (PHI) en etiquetas estándar. No está destinado a la anonimización ni al uso clínico.
- Utiliza el envoltorio tal y como se describe en la documentación; no sustituyas el punto de entrada ascendente por una implementación propia.
- Manifiesto de E/S: las entradas son
dicom_path; las salidas sonmetadata_json.
Instrucciones
- Lee
skill_manifest.yamlantes de modificar los argumentos, los efectos secundarios o las condiciones de validación. - Ejecuta
scripts/extract_metadata.pyel comando documentado a continuación; guarda los resultados en un directorio de ejecución proporcionado por el autor de la llamada. - Si un agente de host expone
run_script, utilicerun_script("scripts/extract_metadata.py", args=[...]); de lo contrario, ejecuta el comando de Bash/Python que se muestra a continuación. - Comprueba el JSON generado y ejecuta
medagent.verifiers.dicom_metadata_quality_v1en los paquetes de pruebas antes de considerar la ejecución como pruebas revisadas.
Scripts disponibles
| Script | Finalidad | Argumentos |
|---|---|---|
scripts/extract_metadata.py |
Punto de entrada principal declarado por skill_manifest.yaml. | PATH_TO_DICOM [--output OUT.json] |
Requisitos previos
- Requisitos de ejecución: paquetes de Python enumerados en
runtime.side_effects.pip_packages. - Ejecuta los comandos desde la raíz del repositorio, salvo que se indique lo contrario en alguna de las secciones siguientes.
Limitaciones
- Solo un pequeño subconjunto de etiquetas estándar inspirado en PS3.15; no es una implementación completa del Perfil Básico de Confidencialidad de Aplicaciones.
- No se comprueban las etiquetas privadas
- No se detecta la información de carácter personal (PHI) en píxeles quemados
- Manejo mínimo de fotogramas múltiples
- No apto para uso clínico, desidentificación reglamentaria, diagnóstico autónomo ni uso directo con pacientes.
Solución de problemas
| Error | Causa | Solución |
|---|---|---|
| Falta una dependencia o error de importación | Desviación del paquete de tiempo de ejecución respecto a skill_manifest.yaml. |
Instala los paquetes declarados en el manifiesto o utiliza el comando de configuración documentado. |
| Salida vacía o con esquema no válido | Ruta de entrada incorrecta, modalidad no compatible o fallo en la fase anterior. | Vuelve a ejecutar la prueba con un fixture conocido e inspecciona el JSON del envoltorio y el stderr. |
| Fallo en la puerta de validación | La salida ha infringido una invariante de ingeniería declarada. | Conserva el paquete de pruebas fallido y utiliza el mensaje de la puerta de validación para corregir las entradas o el código del contenedor. |
Lee un archivo DICOM con pydicom y emite JSON en stdout.
python scripts/extract_metadata.py PATH_TO_DICOM
python scripts/extract_metadata.py PATH_TO_DICOM --output result.json
La salida incluye transfer_syntax, modalitymetadatos agrupados de estudio/serie/imagen
, phi_present, y phi_tags_found.
Utiliza esto como el ejemplo más sencillo de principio a fin de una habilidad de IA médica. No lo utilices para la anonimización, la revisión de etiquetas privadas, la detección de información médica protegida (PHI) en píxeles ni la interpretación clínica.
Para una revisión de la evidencia en una segunda ronda, genera una ejecución fiable:
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
```
Todos los archivos
12 archivosInstalar dicom-metadata-extract
Descarga y descomprime los archivos de habilidades en tu directorio .claude/skills/.
Descargar ZIPClona el repositorio y copia los archivos de la habilidad a tu proyecto.
git clone https://github.com/NVIDIA/skills/tree/main/skills/dicom-metadata-extract # Copy SKILL.md to your .claude/skills/ directory
Copiar





Hogar
