dicom-series-preflight について
dicom-series-preflightは、変換や推論の前に単一のDICOMシリーズディレクトリを確認するスキルです。ヘッダーのみを走査し、インベントリ、方向、PHIフラグ、所見と、合格・警告・失敗の判定を出力します。匿名化や臨床的な承認には使用しません。
主な機能
- 01DICOMシリーズのヘッダー走査
- 02インベントリと方向の報告
- 03PHIフラグと所見の提示
- 04合格・警告・失敗の判定
活用シーン
- 01変換前のシリーズ確認
- 02推論前のシリーズ確認
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ nvidia/ skills --skill dicom-series-preflightインストール後、Claude Code で/dicom-series-preflightを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
BENCHMARK.mdskill_manifest.yamlskill-card.mdskill.oms.sigevals/evals.jsonfixtures/generate_fixtures.pyscripts/preflight_series.pytests/test_preflight_series.pyvalidators/output_schema.json詳細
DICOM Series Preflight
目的
- 変換または推論の前に、1つの DICOM シリーズフォルダーをヘッダーのみで事前チェックするために使用します。匿名化や臨床上の適格性確認には使用しません。
- ラッパーはドキュメントのとおりに使用してください。上流のエントリーポイントを手書きの実装に置き換えないでください。
- マニフェストの入出力:入力は
dicom_dir、出力はpreflight_jsonです。
手順
- 引数、副作用、検証ゲートを変更する前に、
skill_manifest.yamlを確認してください。 - 以下に記載されたコマンドを使って
scripts/preflight_series.pyを実行してください。出力は呼び出し元が指定した実行ディレクトリー内に保持してください。 - ホストエージェントが
run_scriptを提供している場合は、run_script("scripts/preflight_series.py", args=[...])を使用してください。それ以外の場合は、以下に示す Bash/Python コマンドを実行してください。 - 実行結果を証拠として扱う前に、出力された JSON と対応する検証ガイダンスを確認してください。
利用可能なスクリプト
| スクリプト | 目的 | 引数 |
|---|---|---|
scripts/preflight_series.py | skill_manifest.yaml で宣言されている主要なエントリーポイントです。 | PATH_TO_DICOM_DIR |
前提条件
- ランタイム要件:
runtime.side_effects.pip_packagesに記載された Python パッケージ。 - 再配向後も極端な斜位軸のラベルを一貫して保持するには、NiBabel 5.4 以降が必要です。
- 以下のセクションで別途指定されていない限り、コマンドはリポジトリーのルートから実行してください。
制限事項
- ヘッダーのみを対象とします。ピクセルデータのデコードや、焼き込み済み PHI の検出は行いません。
- 標準方向のゲートでは、LPS 由来の CT axcodes が L,P,S であることを前提とします。
- 圧縮転送構文とマルチフレームインスタンスは警告されますが、デコードされません。
- 単一ディレクトリーをスキャンします。1つのツリー内の複数の検査の整合性は確認しません。
- 臨床導入、規制対応の匿名化、自律診断、または検証済みコンバーターを使用しない本番環境への取り込みには使用しないでください。
トラブルシューティング
| エラー | 原因 | 修正方法 |
|---|---|---|
| 依存関係の不足またはインポートエラー | skill_manifest.yaml のランタイムパッケージとの不一致です。 | マニフェストで宣言されたパッケージをインストールするか、ドキュメントに記載されたセットアップコマンドを使用してください。 |
| 出力が空、またはスキーマが無効 | 入力パスが誤っている、モダリティがサポートされていない、または上流でエラーが発生しています。 | 既知のフィクスチャーを使って再実行し、ラッパーの JSON と stderr を確認してください。 |
| 検証ゲートの失敗 | 出力が宣言されたエンジニアリング上の不変条件に違反しています。 | 失敗した証拠パックを保持し、ゲートのメッセージに従って入力またはラッパーコードを修正してください。 |
ピクセルをデコードせずに、DICOM のディレクトリー(フォルダーごとに1シリーズ)をスキャンします。
インベントリー、方向 axcodes、PHI フラグ、検出事項、および
preflight.verdict が pass、warn、fail のいずれかとなる JSON を出力します。
python scripts/preflight_series.py PATH_TO_DICOM_DIR
信頼できる事前チェックパックを作成するには、verifiers/dicom_preflight_quality_v1 と組み合わせてください。
make run-trusted SKILL=dicom_series_preflight \
FIXTURE=skills/dicom-series-preflight/fixtures/clean_no_phi \
OUT=runs/dicom_preflight_demo
主要なワークフロー:
make run-workflow \
WORKFLOW=examples/workflows/dicom_preflight_gate.yaml \
WORKFLOW_INPUT=skills/dicom-series-preflight/fixtures/clean_no_phi \
WORKFLOW_OUT=runs/dicom_preflight_gate
匿名化、プライベートタグの確認、または臨床上の適格性確認には使用しないでください。
コメント
Markdown 対応