DCMTKを学ぶ - [dcmdump] dcmdata: a data encoding/decoding library and utility apps -
dcmdumpユーティリティは、DICOMファイル(ファイル形式または生データセット)の内容をテキスト形式でstdoutにダンプします。つまり、コマンドプロンプトの場合は、コマンドプロンプト画面上に、DICOMファイルの内容がテキストで羅列されます。説明を飛ばしてやり方だけ知りたい方は、ページ最後を参照ください。
説明
dcmdumpユーティリティは、DICOMファイル(ファイル形式または生データセット)の内容をテキスト形式でstdoutにダンプします。 非常に大きな値フィールド(例えば、ピクセルデータ)を有する属性は、「(not loaded)」とされます。文字列値のフィールドは角括弧([])で区切られます。このマッピングが明示的にオフにされない限り、既知のUIDは、等号(例えば、「= MRImageStorage」)を前に付けた名前によって表示されます。空の値フィールドは、 "no value available(使用可能な値はありません)"と記述されます。dcmdumpが生データセット(ファイル形式メタヘッダーなしのDICOMデータ)を読み取る場合、ファイルの最初の数バイトを調べて転送構文を推測しようとします。 転送構文を正しく推測することは必ずしも可能ではないため、可能な限りデータ・セットをファイル・フォーマットに変換する方がよいです(dcmconvユーティリティを使用して下さい)。また、-fおよび-t [ieb]オプションを使用して、dcmdumpに特定の転送構文を持つデータセットを強制的に読み取らせることもできます。
コマンドラインインターフェースからの基本的な使い方
>dcmdump [options] dcmfile-in...- dcmdump :コマンド
- [options] :オプションを指定するデフォルト位置
- dcmfile-in:入力されるdcmファイルのURI/URL (複数のDICOMファイルを保持するディレクトリでも可)
一般的なオプション
(左:省略記載、右:略なし記載)
-h --help
この機能のヘルプを表示します
--version
この機能に必要なライブラリを含めてバージョンを表示します
--arguments
コマンドライン引数を拡張します
-q --quiet
クワイエットモード。エラーやワーニングを表示しません
-v --verbose
詳細モード。詳細ログを表示します
-d --debug
デバッグモード。デバッグ情報を表示します
-ll --log-level [l]evel: string constant (fatal, error, warn, info, debug, trace)
ロガーレベルを指定します
-lc --log-config [f]ilename: string
ロガーにコンフィグファイルを指定します。
インプットオプション
input file format:
+f --read-file
ファイルフォーマットまたはデータセットを読み取る(default)
+fo --read-file-only
ファイルフォーマットのみ読み取る
-f --read-dataset
ファイルメタ情報を除くデータセットを読み取る
input transfer syntax:
-t= --read-xfer-auto
転送構文を認識する (デフォルト)
-td --read-xfer-detect
ファイルメタヘッダーで指定された転送構文を無視する
-te --read-xfer-little
明示的なVRリトルエンディアンで読み取る
-tb --read-xfer-big
明示的なVRビッグエンディアンで読み込み
-ti --read-xfer-implicit
暗黙VRリトルエンディアンで読み込み
input files:
+sd --scan-directories
入力ファイルのディレクトリをスキャンする(dcmfile-in)
+sp --scan-pattern [p]attern: string (--scan-directoriesを利用時のみ)
ファイル名の一致のためのパターン(ワイルドカード)
#すべてのシステムで利用可能ではありません
-r --no-recurse
ディレクトリ内で再帰しない(デフォルト)
+r --recurse
指定したディレクトリ内で再帰する
long tag values:
+M --load-all
非常に長いタグ値を読み込む(デフォルト)
-M --load-short
非常に長い値(例えばピクセルデータ)をロードしない
+R --max-read-length [k]bytes: integer (4..4194302, default: 4)
long値のしきい値をk kbytesに設定する
parsing of file meta information(ファイルメタ情報の解析):
+ml --use-meta-length
ファイルメタ情報グループ長を使用する(デフォルト)
-ml --ignore-meta-length
ファイルメタ情報グループ長を無視する
parsing of odd-length attributes:
+ao --accept-odd-length
奇数長の属性を受け入れる(デフォルト)
+ae --assume-even-length
実際の長さを1バイト大きくする(偶数長にする)
handling of explicit VR:
+ev --use-explicit-vr
データセットから明示的なVRを使用する(デフォルト)
-ev --ignore-explicit-vr
明示的なVRを無視する(データ辞書を優先する)
handling of non-standard VR:
+vr --treat-as-unknown
非標準VRを未知(UN)として扱う(デフォルト)
-vr --assume-implicit
暗黙のVRリトルエンディアンでの読み込みをトライする
handling of undefined length UN elements:
+ui --enable-cp246
暗黙のVRとして未定義のlen UNを読み込み(デフォルト)
-ui --disable-cp246
明示的なVRとして未定義のlen UNを読み込み
定義された長さのUN(Unknown)要素の処理:
-uc --retain-un
要素をUNとして保持する(デフォルト)
+uc --convert-un
既知の場合は真のVRに変換する
プライベート最大長要素の処理(暗黙的VR):
-sq --maxlength-dict
辞書に定義されているように読む(デフォルト)
+sq --maxlength-seq
定義されていない長さのシーケンスとして読み取る
間違った区切りアイテムの処理:
-rd --use-delim-items
データセットからの区切りアイテムを使用する(デフォルト)
+rd --replace-wrong-delim
間違ったシーケンス/アイテム区切りアイテムを置き換える
不正な未定義の長さのOB/OW要素の処理:
-oi --illegal-obow-rej
不正な要素を含むデータセットを拒否する(デフォルト)
+oi --illegal-obow-conv
定義されていない長さのOB / OW要素をSQに変換する
OW VRと明示的な長さのVOI LUTシーケンスの処理:
-vi --illegal-voi-rej
不正なVOI LUTのデータセットを拒否する(デフォルト)
+vi --illegal-voi-conv
不正なVOI LUTをSQに変換する
カプセル化のための明示的な長さのピクセルデータの処理、転送構文:
-pe --abort-expl-pixdata
明示的な長さのピクセルデータで中断する(デフォルト)
+pe --use-expl-pixdata
明示的な長さのピクセルデータを使用する
general handling of parser errors(解析エラー処理):
+Ep --ignore-parse-errors
解析エラーから回復しようとする
-Ep --handle-parse-errors
解析エラーを処理し、解析を停止する(デフォルト)
その他の解析オプション:
+st --stop-after-elem [t]ag: "gggg,eeee" or dictionary name
tで指定された要素の後に解析を停止する
+sb --stop-before-elem [t]ag: "gggg,eeee" or dictionary name
tで指定された要素の前に解析を停止する
- メインデータセットレベルの要素のみを考慮し、指定されたタグがファイルに存在しない場合にも機能します
自動データ補正:
+dc --enable-correction
自動データ補正を有効にする(デフォルト)
-dc --disable-correction
自動データ補正を無効にする
bitstream format of deflated input(収縮した入力のビットストリーム形式):
+bd --bitstream-deflated
収縮したビットストリームを利用する(デフォルト)
+bz --bitstream-zlib
収縮したzlibビットストリームを利用する
処理オプション
特定の文字セット:
+ U8 --convert-to-utf8
特定の文字セット(0008,0005)の影響を受けるすべての要素値をUTF-8に変換する
- 基礎となる文字エンコーディングライブラリからのサポートが必要(使用できる--versionの出力を参照)例えば、libiconvなど
アウトプットオプション
printing(出力の表示):
+L --print-all
長いタグ値を完全に表示する
-L --print-short
長いタグ値を短く表示する(デフォルト)
+T --print-tree
単純なツリーとして階層構造を表示する
-T --print-indented
インデントによる階層構造を表示する(デフォルト)
+F --print-filename
各入力ファイルのファイル名を含むヘッダを出力する
+Fs --print-file-search
検索するタグ1つを含むこれらの入力ファイルのファイル名のみを含むヘッダを出力する
mapping:
+Un --map-uid-names
既知のUID番号を名前にマップする(デフォルト)
-Un --no-uid-names
UID番号を名前にマップしない
quoting(引用):
+Qn --quote-nonascii
ASCII以外の文字を引用し、XMLマークアップとして文字を制御する
+Qo --quote-as-octal
非ASCIIを引用し、8進数として制御文字を引用する
-Qn --print-nonascii
非ASCII文字と制御文字を出力する(デフォルト)
color:
+C --print-color
カラー出力にANSIエスケープコードを使用する
# Windows systemsでは利用不可
-C --no-color
ANSIエスケープコードを使用しない(デフォルト)
# Windows systemsでは利用不可
error handling:
-E --stop-on-error
ファイルが破損している場合は表示しない(デフォルト)
+E --ignore-errors
ファイルが破損しても表示しようとする
searching:
+P --search [t]ag: "gggg,eeee" or dictionary name
タグtのテキストダンプを出力する
このオプションは複数回指定できます
(デフォルト:完全なファイルが表示されます)
+s --search-all
検索されたタグのすべてのインスタンスを表示する(デフォルト)
-s --search-first
検索されたタグの最初のインスタンスのみを表示する
+p --prepend
シーケンス階層を表示タグに付加
:(gggg、eeee).(gggg、eeee).*と続けて表示されます
(--searchとともに使用する場合のみ)
-p --no-prepend
タグに階層を追加しない(デフォルト)
writing:
+W --write-pixel [d]irectory: string
dに格納された.rawファイルにピクセルデータを書き込む
(リトルエンディアンでの書き込み、自動的にファイル名作成)
補足
コマンドラインにパラメータとしてディレクトリを追加することは、オプション-scan-directoriesも指定した場合にのみ有効です。指定されたディレクトリ内のファイルを特定の名前パターン(ワイルドカードマッチングなど)に従って選択する必要がある場合は、オプション-scan-patternを使用する必要があります。
このファイルパターンは、スキャンされたディレクトリ内のファイルにのみ適用され、-scan-patternオプション以外のコマンドラインで他のパターンが指定されている場合(たとえば、さらにファイルを選択する場合など)、これらは指定されたディレクトリには適用されません。
使用例
サンプルDICOMデータ:http://www.jira-net.or.jp/dicom/dicom_data_01_03.htmlNM_LEE_IR6.dcm
サンプルデータをデスクトップに移動しておきます。
コマンドプロンプトで、次のように入力しました。
>dcmdump +T C:\Users\tatsu\Desktop\NM_LEE_IR6.dcm
(コマンドの意味)
dcmdrle :コマンド
+T :階層構造ツリー表示オプション
dcmfile-in:C:\Users\tatsu\Desktop\NM_LEE_IR6.dcm
※コマンドとオプションの間、もしコマンドがあれば、オプションとdcmfile-inの間には半角スペースを入れてください。
入力後、Enterで実行します。入力されたDICOMファイルの詳細な情報が表示されます。
CMD画面
以上
Visionary Imaging Services, Inc.
Tatsuaki Kobayashi
コメント
コメントを投稿