DICOM ファイルからのメタデータの読み取り
DICOM ファイルには、サイズ、次元、ビット深度、データの作成に使用したモダリティ、およびイメージのキャプチャに使用した装置の設定など、イメージ データに関する情報を提供するメタデータが含まれます。DICOM ファイルからメタデータを読み取るには、関数 dicominfo
を使用します。dicominfo
は、各フィールドに DICOM メタデータの特定部分が含まれる MATLAB® 構造体で情報を返します。dicominfo
で返されたメタデータ構造体は、関数 dicomread
を使用して読み取る DICOM ファイルの指定に使用できます。DICOM ファイルからのイメージ データの読み取りを参照してください。デバッグのために DICOM ファイルのメタデータを表示するだけの場合、関数 dicomdisp
を使用できます。
以下の例では、ツールボックスに含まれるサンプルの DICOM ファイルからメタデータを読み取ります。
info = dicominfo("CT-MONO2-16-ankle.dcm")
info = Filename: [1x89 char] FileModDate: '18-Dec-2000 11:06:43' FileSize: 525436 Format: 'DICOM' FormatVersion: 3 Width: 512 Height: 512 BitDepth: 16 ColorType: 'grayscale' FileMetaInformationGroupLength: 192 FileMetaInformationVersion: [2x1 uint8] MediaStorageSOPClassUID: '1.2.840.10008.5.1.4.1.1.7' MediaStorageSOPInstanceUID: [1x50 char] TransferSyntaxUID: '1.2.840.10008.1.2' ImplementationClassUID: '1.2.840.113619.6.5' . . .
DICOM プライベート メタデータ
DICOM 仕様では、これらのメタデータ フィールドの多くを定義していますが、ファイルにはプライベート メタデータと呼ばれる追加のフィールドが含まれる場合があります。このプライベート メタデータは、通常、装置のベンダーがデータの詳細を提供するために定義します。
dicominfo
は、DICOM ファイルでプライベート メタデータ フィールドが検出されると、そのメタデータのグループ タグと要素タグに基づきそのフィールドに対して一般的な名前を作成し、メタデータを返します。たとえば、グループ 0009、要素 0006 の位置にプライベート メタデータが含まれるファイルの場合、dicominfo
は Private_0009_0006
という名前を作成します。dicominfo
は、可能であればプライベート メタデータの解釈を試みます。たとえば、メタデータに文字が含まれる場合、dicominfo
はデータを処理します。データを解釈できない場合は、dicominfo
は一連のバイトを返します。
プライベート メタデータを使用するメーカーによって作成された DICOM ファイルを処理する必要があり、フィールドの正しい名前とデータの両方を表示したい場合、DICOM データ ディクショナリの独自のコピーを作成し、プライベート メタデータの定義が含まれるようにそれを更新します。通常、ベンダーによって DICOM 準拠のステートメントで提供されるプライベート メタデータに関する情報が必要になります。DICOM ディクショナリの更新の詳細については、DICOM ディクショナリの独自のコピーの作成を参照してください。
DICOM ディクショナリの独自のコピーの作成
MathWorks® では、数千の標準 DICOM メタデータ フィールドの定義を含む DICOM ディクショナリを使用します。DICOM ファイルに、このディクショナリに定義されていないメタデータが含まれる場合、それらのプライベート メタデータ フィールドを含む独自のコピーを作成し、ディクショナリを更新できます。
独自のディクショナリを作成するには、以下の手順に従います。
MATLAB に含まれる DICOM ディクショナリのテキスト バージョンのコピーを作成します。
dicom-dict.txt
と呼ばれるこのファイルは、使用している Image Processing Toolbox ソフトウェアのバージョンにより、
またはmatlabroot
/toolbox/images/medformats
にあります。ディクショナリの MAT ファイル バージョンmatlabroot
/toolbox/images/iptformatsdicom-dict.mat
の編集はしないでください。DICOM ディクショナリのコピーを編集し、メタデータのエントリを追加します。グループおよび要素タグ、型、およびその他の情報を使用して新しいメタデータ フィールドを挿入します。ファイル内の他のエントリの形式に従います。メタデータの作成者 (装置のベンダーなど) は、この情報をユーザーに提供しなければなりません。
ディクショナリのコピーを保存します。
ユーザーの DICOM ディクショナリのコピーである関数
dicomdict
を使用するように MATLAB を設定します。