Extraction de métadonnées DICOM
Objectif
- Utilisé pour extraire des métadonnées sélectionnées d'un fichier DICOM et signaler la présence de PHI de balises standard. Ne convient pas pour l'anonymisation ou l'usage clinique.
- Utilisez le wrapper exactement comme documenté ; ne remplacez pas le point d'entrée en amont par une implémentation manuscrite.
- Manifest I/O : les entrées sont
dicom_path; les sorties sontmetadata_json.
Instructions
- Consultez
skill_manifest.yamlavant de modifier les arguments, les effets secondaires ou les portes de validation. - Exécutez
scripts/extract_metadata.pyvia la commande documentée ci-dessous ; gardez les sorties sous un répertoire d'exécution fourni par l'appelant. - Si un agent hôte expose
run_script, utilisezrun_script("scripts/extract_metadata.py", args=[...]); sinon, exécutez la commande Bash/Python affichée ci-dessous. - Vérifiez le JSON émis et exécutez
medagent.verifiers.dicom_metadata_quality_v1sur les packs de preuves avant de traiter l'exécution comme une preuve examinée.
Scripts disponibles
| Script | Objectif | Arguments |
|---|---|---|
scripts/extract_metadata.py |
Point d'entrée principal déclaré par skill_manifest.yaml. | PATH_TO_DICOM [--output OUT.json] |
Prérequis
- Exigences d'exécution : packages Python listés dans
runtime.side_effects.pip_packages. - Exécutez les commandes depuis la racine du dépôt sauf indication contraire dans une section existante ci-dessous.
Limitations
- Petit sous-ensemble de balises standard inspiré par PS3.15 uniquement ; pas une implémentation complète du profil de confidentialité des applications de base.
- Balises privées non vérifiées
- PHI incrustée dans les pixels non détectée
- Gestion multi-image minimale
- Non destiné au déploiement clinique, à la dé-identification réglementaire, au diagnostic autonome, à l'usage face aux patients.
Dépannage
| Erreur | Cause | Solution |
|---|---|---|
| Dépendance manquante ou erreur d'import | Dérive des packages d'exécution par rapport à skill_manifest.yaml. |
Installez les packages déclarés dans le manifest ou utilisez la commande de configuration documentée. |
| Sortie vide ou non valide selon le schéma | Mauvais chemin d'entrée, modalité non prise en charge, ou défaillance en amont. | Réexécutez avec un fixture connu et inspectez le JSON du wrapper plus stderr. |
| Défaillance de la porte de validation | La sortie a violé un invariant d'ingénierie déclaré. | Conservez le pack de preuves échoué et utilisez le message de la porte pour réparer les entrées ou le code du wrapper. |
Lit un fichier DICOM avec pydicom et émet du JSON sur stdout.
python scripts/extract_metadata.py PATH_TO_DICOM
python scripts/extract_metadata.py PATH_TO_DICOM --output result.json
La sortie inclut transfer_syntax, modality, les métadonnées groupées étude/série/image, phi_present et phi_tags_found.
Utilisez ceci comme le plus petit exemple de bout en bout d'une skill Medical AI Skills. Ne l'utilisez pas pour l'anonymisation, la revue de balises privées, la détection de PHI en pixels ou l'interprétation clinique.
Pour une revue de preuves en deuxième passe, générez une exécution de confiance :
python -m eval_engine.run_trusted skills/dicom-metadata-extract \
--fixture skills/dicom-metadata-extract/fixtures/sample_ct.dcm \
--out runs/dicom_metadata_trusted