DICOM/Value Representation
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
- PS 3.5: Data Structure and Encoding (PDF, 1.43 MiB)
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が示すデータ型に変換して利用する。