⚠️ これは 非公式の翻訳サイトです。DCMTK / OFFIS とは無関係です。正確な情報は 原文(https://support.dcmtk.org/docs/dcmcrle.html) を参照してください。

dcmcrle: DICOMファイルをRLE転送構文にエンコードする

書式

dcmcrle [options] dcmfile-in dcmfile-out

説明

dcmcrle は、非圧縮のDICOM画像(dcmfile-in)を読み込んでRLE圧縮(すなわちカプセル化されたDICOM転送構文への変換)を行い、変換後の画像を出力ファイル(dcmfile-out)へ書き出すユーティリティです。

引数

dcmfile-in   DICOM input filename to be converted ("-" for stdin)

dcmfile-out  DICOM output filename ("-" for stdout)

オプション

全般オプション

-h --help
このヘルプを表示して終了します
--version
バージョン情報を表示して終了します
--arguments
展開後のコマンドライン引数を表示します
-q --quiet
クワイエットモード。警告やエラーを表示しません
-v --verbose
詳細表示モード。処理の詳細を表示します
-d --debug
デバッグモード。デバッグ情報を表示します
-ll --log-level [l]evel: string constant
(fatal, error, warn, info, debug, trace)ロガーにレベル l を使用します
-lc --log-config [f]ilename: string
ロガーに設定ファイル f を使用します

入力オプション

+f --read-file
ファイル形式またはデータセットを読み込みます(既定値)
+fo --read-file-only
ファイル形式のみを読み込みます
-f --read-dataset
ファイルメタ情報なしでデータセットを読み込みます。入力転送構文:
-t= --read-xfer-auto
転送構文の自動認識を使用します(既定値)
-td --read-xfer-detect
ファイルメタヘッダーで指定された転送構文を無視します
-te --read-xfer-little
explicit VR little endian の転送構文で読み込みます
-tb --read-xfer-big
explicit VR big endian の転送構文で読み込みます
-ti --read-xfer-implicit
implicit VR little endian の転送構文で読み込みます

カプセル化ピクセルデータのエンコードオプション

+ff --fragment-per-frame
各フレームを1つのフラグメントとしてエンコードします(既定値)
+fs --fragment-size [s]ize: integer
フラグメントサイズを s キロバイトに制限します(非標準)。基本オフセットテーブルのエンコード:
+ot --offset-table-create
オフセットテーブルを作成します(既定値)
-ot --offset-table-empty
オフセットテーブルを空のままにします。SOP Class UID:
+cd --class-default
SOP Class UID を維持します(既定値)
+cs --class-sc
Secondary Capture Image に変換します(--uid-always を含意します)。SOP Instance UID:
+un --uid-never
新しいUIDを割り当てません(既定値)
+ua --uid-always
常に新しいUIDを割り当てます

出力オプション

+u --enable-new-vr
新しいVR(UN/UT)のサポートを有効にします(既定値)
-u --disable-new-vr
新しいVRのサポートを無効にし、OBに変換します。グループ長のエンコード:
+g= --group-length-recalc
グループ長が存在する場合に再計算します(既定値)
+g --group-length-create
常にグループ長要素を付けて書き出します
-g --group-length-remove
常にグループ長要素を付けずに書き出します。シーケンスとアイテムにおける長さのエンコード:
+e --length-explicit
明示的な長さで書き出します(既定値)
-e --length-undefined
未定義の長さで書き出します。データセット末尾のパディング:
-p= --padding-retain
パディングを変更しません(既定値)
-p --padding-off
パディングしません
+p --padding-create [f]ile-pad [i]tem-pad: integer
ファイルを f バイトの倍数に、アイテムを i バイトの倍数に揃えます

注記

dcmcrle ユーティリティは、すべてのSOPクラスのDICOM画像を圧縮します。データセット内のすべてのPixel Data(7fe0,0010)要素を処理します。すなわち、アイコン画像に対しても圧縮が行われます。

DICOM規格では、(RLE圧縮を使用する場合に)1フレームあたり複数のフラグメントでピクセルデータを格納することは認められていない点に注意してください。そのため、オプション –fragment-size(または +fs)でフラグメントサイズを制限すると、規格に準拠しないDICOM画像になる場合があります。

転送構文

dcmcrle は入力(dcmfile-in)に対して次の転送構文をサポートします:

LittleEndianImplicitTransferSyntax             1.2.840.10008.1.2
LittleEndianExplicitTransferSyntax             1.2.840.10008.1.2.1
DeflatedExplicitVRLittleEndianTransferSyntax   1.2.840.10008.1.2.1.99 (*)
BigEndianExplicitTransferSyntax                1.2.840.10008.1.2.2

(*) zlib サポートを有効にしてコンパイルした場合

dcmcrle は出力(dcmfile-out)に対して次の転送構文をサポートします:

RLELosslessTransferSyntax                      1.2.840.10008.1.2.5

ロギング

各コマンドラインツールおよび基盤となるライブラリのロギング出力のレベルは、ユーザーが指定できます。既定では、エラーと警告のみが標準エラー出力に書き出されます。オプション –verbose を使うと、処理の詳細といった情報メッセージも報告されます。オプション –debug は、内部動作の詳細を得るために使用できます(デバッグ用途など)。その他のロギングレベルはオプション –log-level で選択できます。–quiet モードでは致命的なエラーのみが報告されます。このような非常に重大なエラーが発生した場合、アプリケーションは通常終了します。各ロギングレベルの詳細については、モジュール "oflog" のドキュメントを参照してください。

ロギング出力をファイルへ書き出す場合(必要に応じてログファイルのローテーションを伴う)、syslog(Unix)や イベントログ(Windows)へ書き出す場合は、オプション –log-config が使用できます。この設定ファイルでは、特定のメッセージだけを特定の出力ストリームへ振り分けたり、メッセージを生成したモジュールやアプリケーションに基づいてフィルタリングしたりすることもできます。設定ファイルの例は < etcdir>/logger.cfg に用意されています。

コマンドライン

すべてのコマンドラインツールは、引数に対して次の表記を用います。角括弧は省略可能な値(0〜1個)を囲みます。末尾の3つのドットは複数の値(1〜n個)が許されることを示します。両者の組み合わせは0〜n個の値を意味します。

コマンドラインオプションは、先頭の '+' または '-' 記号によって引数と区別されます。通常、コマンドラインオプションの順序や位置は任意です(つまりどこに現れてもよい)。ただし、オプションが相互排他的な場合は、最も右に現れたものが使用されます。この挙動は一般的なUnixシェルの標準的な評価規則に従っています。

さらに、ファイル名の前に '@' 記号を付けることで、1つ以上のコマンドファイルを指定できます(例: @command.txt)。このようなコマンド引数は、その後の評価に先立って、対応するテキストファイルの内容に置き換えられます(複数の空白は、引用符で囲まれた間にある場合を除き、単一の区切りとして扱われます)。コマンドファイルが別のコマンドファイルを含むことはできない点に注意してください。この単純ながら効果的な方法により、よく使うオプションや引数の組み合わせをまとめられ、長く分かりにくいコマンドラインを避けられます(例は < datadir>/dumppat.txt に用意されています)。

環境変数

dcmcrle ユーティリティは、DCMDICTPATH 環境変数で指定されたDICOMデータ辞書を読み込もうとします。既定では、つまり DCMDICTPATH 環境変数が設定されていない場合、データ辞書がアプリケーションに組み込まれていない限り(Windowsでは既定で組み込まれる)、ファイル < datadir>/dicom.dic が読み込まれます。

既定の動作を優先すべきであり、DCMDICTPATH 環境変数は代替のデータ辞書が必要な場合にのみ使用してください。DCMDICTPATH 環境変数は、エントリをコロン(":")で区切るという点でUnixシェルの PATH 変数と同じ形式です。Windowsシステムでは、区切り文字としてセミコロン(";")を用います。データ辞書のコードは、DCMDICTPATH 環境変数で指定された各ファイルを読み込もうとします。データ辞書を1つも読み込めない場合はエラーとなります。

関連項目

dcmdrle(1)

Copyright (C) 2002-2025 by OFFIS e.V., Escherweg 2, 26121 Oldenburg, Germany.