DICOM/Value Representation

提供:メディカルウェア
2015年4月3日 (金) 16:10時点における153.220.119.198 (トーク)による版 (→‎注意事項:配列表現について)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

Value Representation(ばりゅー・りぷれぜんてーしょん)とは、DICOMファイルDICOMデータに格納されている個々のデータのDICOM/メタデータ(データ本体部分がどのようなデータであるかを示す情報)のひとつで、データ本体がどのような「データ型」であるかを示す情報である。

あまりに長い名称なので通常はVR(読み:ぶいあーる)とアルファベット2文字に略されて記述や呼称されているのが一般的である。強引に日本語にすると値表現などといった感じになる。

概要

VRはデータ本体の「型」を表す2バイトの値でありデータ本体が文字列なのか、数値なのか、日付なのか、などという情報を格納している。

VRはC言語やJava,C#などと言ったプログラミング言語でいう組込型(プリミティブ型)に相当するものであり、C言語のint型やchar型などと似たようなものと思って間違いない。ただし、DICOMのVRは少し高水準なデータ型であり、「YYYYMMDD形式の日付」や「半角英数字とアンダースコアとスペースが使える最大16バイトの文字列」などといったような感じになっている。

暗黙的VRと明示的VR

なお、DICOMでは暗黙的VR(Implicit VR)と明示的VR(Explicit VR)という規定があり、暗黙的VRの場合はメタデータ内にVRの値が存在しない。

その場合はDICOMタグからVRを適宜判断する必要がある。 たとえば患者名であれば文字列などと判断することができる。

つまりデータ型は基本的にDICOM/タグから判断できる項目でありVRは不要な存在であると言える。自らDICOMファイルを生成する際には親切丁寧に書いても良いが、第三者が生成したDICOMファイルを読み込む際にはぶっちゃけVRは書いてあっても信用ならんので無視してDICOMタグから推定するくらいが丁度良い。

DICOM value representation 一覧

Extracted from Chapter 6.2 of

Value Representation 概要
AE Application Entity
AS Age String
AT Attribute Tag
CS Code String
DA Date
DS Decimal String
DT Date/Time
FL Floating Point Single (4 bytes)
FD Floating Point Double (8 bytes)
IS Integer String
LO Long String
LT Long Text
OB Other Byte
OF Other Float
OW Other Word
PN Person Name
SH Short String
SL Signed Long
SQ Sequence of Items
SS Signed Short
ST Short Text
TM Time
UI Unique Identifier
UL Unsigned Long
UN Unknown
US Unsigned Short
UT Unlimited Text

注意事項:配列表現について

なお、データ本体に格納されている値は1つとは限らず、連続したデータ(プログラミングの世界でいう配列など)の場合もある。そのような場合はVRが示すデータ型に関係なくデータ本体には文字列型として格納されており、個々の値の区切り文字として半角バックスラッシュ(日本語フォントだと半角の「\」マーク)が用いられているので、適切に文字列分割をして、個々の文字列をVRが示すデータ型に変換して利用する。

関連項目

参考文献