「DICOM/Value Representation」の版間の差分
編集の要約なし |
|||
(3人の利用者による、間の6版が非表示) | |||
1行目: | 1行目: | ||
'''Value Representation'''(ばりゅー・りぷれぜんてーしょん)とは、[[DICOMファイル]]/[[DICOMデータ]] | '''Value Representation'''(ばりゅー・りぷれぜんてーしょん)とは、[[DICOMファイル]]/[[DICOMデータ]]に格納されている個々のデータの[[DICOM/メタデータ]](データ本体部分がどのようなデータであるかを示す情報)のひとつで、データ本体がどのような「データ型」であるかを示す情報である。 | ||
あまりに長い名称なので通常は'''VR'''(読み:ぶいあーる)とアルファベット2文字に略されて記述や呼称されているのが一般的である。強引に日本語にすると'''値表現'''などといった感じになる。 | |||
== 概要 == | |||
VRはデータ本体の「型」を表す2バイトの値でありデータ本体が文字列なのか、数値なのか、日付なのか、などという情報を格納している。 | |||
VRはC言語やJava,C#などと言ったプログラミング言語でいう組込型(プリミティブ型)に相当するものであり、C言語のint型やchar型などと似たようなものと思って間違いない。ただし、DICOMのVRは少し高水準なデータ型であり、「YYYYMMDD形式の日付」や「半角英数字とアンダースコアとスペースが使える最大16バイトの文字列」などといったような感じになっている。 | |||
== 暗黙的VRと明示的VR == | == 暗黙的VRと明示的VR == | ||
なお、[[DICOM]]では[[暗黙的VR]]([[Implicit VR]])と[[明示的VR]]([[Explicit VR]])という規定があり、暗黙的VRの場合はメタデータ内にVRの値が存在しない。 | なお、[[DICOM]]では[[暗黙的VR]]([[Implicit VR]])と[[明示的VR]]([[Explicit VR]])という規定があり、暗黙的VRの場合はメタデータ内にVRの値が存在しない。 | ||
その場合は[[ | その場合は[[DICOMタグ]]からVRを適宜判断する必要がある。 | ||
たとえば患者名であれば文字列などと判断することができる。 | たとえば患者名であれば文字列などと判断することができる。 | ||
つまりデータ型は基本的にDICOM/ | つまりデータ型は基本的にDICOM/タグから判断できる項目でありVRは不要な存在であると言える。自ら[[DICOMファイル]]を生成する際には親切丁寧に書いても良いが、第三者が生成した[[DICOMファイル]]を読み込む際にはぶっちゃけVRは書いてあっても信用ならんので無視して[[DICOMタグ]]から推定するくらいが丁度良い。 | ||
== DICOM value representation 一覧== | == DICOM value representation 一覧== | ||
20行目: | 26行目: | ||
|- | |- | ||
! Value Representation | ! Value Representation | ||
! | ! 概要 | ||
|- | |- | ||
| AE | | [[DICOM/Value Representation/AE|AE]] | ||
| Application Entity | | Application Entity | ||
|- | |- | ||
| AS | | [[DICOM/Value Representation/AS|AS]] | ||
| Age String | | Age String | ||
|- | |- | ||
| AT | | [[DICOM/Value Representation/AT|AT]] | ||
| Attribute Tag | | Attribute Tag | ||
|- | |- | ||
| CS | | [[DICOM/Value Representation/CS|CS]] | ||
| Code String | | Code String | ||
|- | |- | ||
| DA | | [[DICOM/Value Representation/DA|DA]] | ||
| Date | | Date | ||
|- | |- | ||
| DS | | [[DICOM/Value Representation/DS|DS]] | ||
| Decimal String | | Decimal String | ||
|- | |- | ||
| DT | | [[DICOM/Value Representation/DT|DT]] | ||
| Date/Time | | Date/Time | ||
|- | |- | ||
| FL | | [[DICOM/Value Representation/FL|FL]] | ||
| Floating Point Single (4 bytes) | | Floating Point Single (4 bytes) | ||
|- | |- | ||
| FD | | [[DICOM/Value Representation/FD|FD]] | ||
| Floating Point Double (8 bytes) | | Floating Point Double (8 bytes) | ||
|- | |- | ||
| IS | | [[DICOM/Value Representation/IS|IS]] | ||
| Integer String | | Integer String | ||
|- | |- | ||
| LO | | [[DICOM/Value Representation/LO|LO]] | ||
| Long String | | Long String | ||
|- | |- | ||
| LT | | [[DICOM/Value Representation/LT|LT]] | ||
| Long Text | | Long Text | ||
|- | |- | ||
| OB | | [[DICOM/Value Representation/OB|OB]] | ||
| Other Byte | | Other Byte | ||
|- | |- | ||
| OF | | [[DICOM/Value Representation/OF|OF]] | ||
| Other Float | | Other Float | ||
|- | |- | ||
| OW | | [[DICOM/Value Representation/OW|OW]] | ||
| Other Word | | Other Word | ||
|- | |- | ||
| PN | | [[DICOM/Value Representation/PN|PN]] | ||
| Person Name | | Person Name | ||
|- | |- | ||
| SH | | [[DICOM/Value Representation/SH|SH]] | ||
| Short String | | Short String | ||
|- | |- | ||
| SL | | [[DICOM/Value Representation/SL|SL]] | ||
| Signed Long | | Signed Long | ||
|- | |- | ||
| SQ | | [[DICOM/Value Representation/SQ|SQ]] | ||
| Sequence of Items | | Sequence of Items | ||
|- | |- | ||
| SS | | [[DICOM/Value Representation/SS|SS]] | ||
| Signed Short | | Signed Short | ||
|- | |- | ||
| ST | | [[DICOM/Value Representation/ST|ST]] | ||
| Short Text | | Short Text | ||
|- | |- | ||
| TM | | [[DICOM/Value Representation/TM|TM]] | ||
| Time | | Time | ||
|- | |- | ||
| UI | | [[DICOM/Value Representation/UI|UI]] | ||
| Unique Identifier | | Unique Identifier | ||
|- | |- | ||
| UL | | [[DICOM/Value Representation/UL|UL]] | ||
| Unsigned Long | | Unsigned Long | ||
|- | |- | ||
| UN | | [[DICOM/Value Representation/UN|UN]] | ||
| Unknown | | Unknown | ||
|- | |- | ||
| US | | [[DICOM/Value Representation/US|US]] | ||
| Unsigned Short | | Unsigned Short | ||
|- | |- | ||
| UT | | [[DICOM/Value Representation/UT|UT]] | ||
| Unlimited Text | | Unlimited Text | ||
|} | |} | ||
=== 注意事項:配列表現について === | |||
なお、データ本体に格納されている値は1つとは限らず、連続したデータ(プログラミングの世界でいう配列など)の場合もある。そのような場合はVRが示すデータ型に関係なくデータ本体には文字列型として格納されており、個々の値の区切り文字として半角バックスラッシュ(日本語フォントだと半角の「\」マーク)が用いられているので、適切に文字列分割をして、個々の文字列をVRが示すデータ型に変換して利用する。 | なお、データ本体に格納されている値は1つとは限らず、連続したデータ(プログラミングの世界でいう配列など)の場合もある。そのような場合はVRが示すデータ型に関係なくデータ本体には文字列型として格納されており、個々の値の区切り文字として半角バックスラッシュ(日本語フォントだと半角の「\」マーク)が用いられているので、適切に文字列分割をして、個々の文字列をVRが示すデータ型に変換して利用する。 | ||
* [[DICOM/Value Multiplicity]]も参照 | |||
== 関連項目 == | == 関連項目 == |
2015年4月3日 (金) 16:10時点における最新版
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が示すデータ型に変換して利用する。