mcpField
D
dicom-metadata-extract

dicom-metadata-extract

github.com/nvidiaデータ・データベース3.8k1.9k 回インストール今日更新
リポジトリ

dicom-metadata-extract について

単一の DICOM ファイルから選択したメタデータを抽出し、標準タグに PHI が含まれるかを示すスキルです。メタデータ確認用の小規模な Python の例であり、匿名化や臨床用途には使用できません。

主な機能

  1. 01選択した DICOM メタデータの抽出
  2. 02標準タグの PHI 有無を報告
  3. 03JSON 出力
  4. 04指定ラッパースクリプトの使用
  5. 05エビデンス確認の手順

活用シーン

  1. 01単一 DICOM ファイルのメタデータ確認
  2. 02後続ワークフロー用 JSON の生成
  3. 03抽出メタデータのエビデンス確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/nvidia/skills --skill dicom-metadata-extract

インストール後、Claude Code で/dicom-metadata-extractを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

AGENTS.md
BENCHMARK.md
skill_manifest.yaml
skill-card.md
skill.oms.sig
evals/
baseline.yaml
evals.json
fixtures/
generate_sample.py
scripts/
extract_metadata.py
tests/
test_basic.py
validators/
output_schema.json

詳細

DICOM メタデータの抽出

目的

  • 1 つの DICOM ファイルから選択したメタデータを抽出し、標準タグに PHI が含まれているかを確認するために使用します。匿名化や臨床用途には使用しないでください。
  • ラッパーはドキュメントに記載されたとおりに使用してください。アップストリームのエントリーポイントを手書きの実装に置き換えないでください。
  • マニフェストの入出力:入力は dicom_path、出力は metadata_json です。

手順

  • 引数、副作用、検証ゲートを変更する前に、skill_manifest.yaml を読んでください。
  • 以下に記載されたコマンドを使って scripts/extract_metadata.py を実行し、出力は呼び出し元が指定した実行ディレクトリ内に保持してください。
  • ホストエージェントが run_script を公開している場合は、run_script("scripts/extract_metadata.py", args=[...]) を使用してください。それ以外の場合は、以下に示す Bash/Python コマンドを実行してください。
  • 出力された JSON を確認し、エビデンスパックをレビュー済みエビデンスとして扱う前に、medagent.verifiers.dicom_metadata_quality_v1 を実行してください。

利用可能なスクリプト

スクリプト目的引数
scripts/extract_metadata.pyskill_manifest.yaml で宣言されている主要なエントリーポイントです。PATH_TO_DICOM [--output OUT.json]

前提条件

  • 実行時の要件:runtime.side_effects.pip_packages に記載された Python パッケージ。
  • 以下の既存のセクションで別途指定されていない限り、リポジトリのルートからコマンドを実行してください。

制限事項

  • PS3.15 を参考にした標準タグの小規模なサブセットのみを対象とします。Basic Application Confidentiality Profile の完全な実装ではありません。
  • プライベートタグはチェックされません。
  • 画像に焼き込まれたピクセル内の PHI は検出されません。
  • マルチフレームへの対応は最小限です。
  • 臨床展開、規制に準拠した匿名化、自律診断、患者向けの用途には使用しないでください。

トラブルシューティング

エラー原因対処方法
依存関係の不足またはインポートエラーskill_manifest.yaml と実行時パッケージの不一致です。マニフェストで宣言されたパッケージをインストールするか、ドキュメントに記載されたセットアップコマンドを使用してください。
出力が空、またはスキーマが無効入力パスの誤り、未対応のモダリティ、またはアップストリームの障害です。既知のフィクスチャを使って再実行し、ラッパーの JSON と stderr を確認してください。
検証ゲートの失敗出力が宣言されたエンジニアリング上の不変条件に違反しています。失敗したエビデンスパックを保持し、ゲートのメッセージを参考に入力またはラッパーコードを修正してください。

pydicom で 1 つの DICOM ファイルを読み込み、JSON を標準出力に出力します。

python scripts/extract_metadata.py PATH_TO_DICOM
python scripts/extract_metadata.py PATH_TO_DICOM --output result.json

出力には、transfer_syntax、modality、study/series/image に分類されたメタデータ、phi_present、phi_tags_found が含まれます。

Medical AI Skills のスキルの最小限のエンドツーエンド例として使用してください。匿名化、プライベートタグのレビュー、ピクセル内の PHI の検出、または臨床的な解釈には使用しないでください。

2 回目のエビデンスレビューに備えて、信頼できる実行結果を生成してください。

python -m eval_engine.run_trusted skills/dicom-metadata-extract \
  --fixture skills/dicom-metadata-extract/fixtures/sample_ct.dcm \
  --out runs/dicom_metadata_trusted

コメント