DICOM/SOP Class

提供:メディカルウェア
2017年8月14日 (月) 10:15時点における172.68.254.178 (トーク)による版 (→‎プログラミング言語を用いた例)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

DICOMにおけるSOP Classとは、「保存」や「検索」などのサービス(DIMSE)と、それらで使われる値(IOD)を規定したもののことである。 なにを言ってるか分からないと思うが、DICOMプロトコルの内部で使われる「コマンド」と「データ」の定義のことである。

プログラミング言語を用いた例

SOPは「Service Object Pair」の略称であり、サービス(メソッド)とオブジェクト(プロパティ)のペアを指す。

ここを読んでいる人の多くは何らかのプログラム言語をかじった事がある人だと思うのでプログラミング言語に例えるが、SOP Classは、C#やJavaなどのオブジェクト指向言語のクラス(のソースコード)に相当するものである。DIMSEがメソッドで、IODがメンバ変数(どっちかというと構造体)みたいなものと覚えておけばok。

なお、プログラミング言語なんて知らないよという人は「http://monobook.org」でも見ておこう。

// プログラム言語に例えると、
// HogeHogeSOPがSOPクラス
class HogeHogeSOP 
{
    // IOD(メンバ変数)
    public int HogeIOD1;
    public int HageIOD2;

    // サービス(メソッド)
    public void HogeDIMSE()
    {
    }
}


SOP Classに基づいて実際に生成したデータを「SOP Instance」という。

// プログラム言語に例えると、
class Program 
{
    public static void Main() 
    {
        // newして出来た「hage」がSOPインスタンス
        var hage = new HogeHogeSOP();
    }
}


SOP Classを1つ以上使って実際に使えるサービス(機能化)したものをService Classという。こちらも同様にプログラミング言語に例えると、いくつかのクラスを組み合わせて使えるプログラム化したもののことである。

主なSOP Class

DICOMにおけるSOP Classの定義はいっぱいある。 そのうち主要な物を列挙しておく。

それぞれのSOPクラスには名前およびUIDが割り当てられている。 プログラムの内部的にはUIDが使われるが、デバッグなどは名前を使うと捗る。

SOP Class Name SOP Class UID このSOPクラスを使っている
主なサービスクラス
Verification SOP Class 1.2.840.10008.1.1 Verification Service Class
Computed Radiography Image Storage 1.2.840.10008.5.1.4.1.1.1
CT Image Storage 1.2.840.10008.5.1.4.1.1.2
Enhanced CT Image Storage 1.2.840.10008.5.1.4.1.1.2.1
MR Image Storage 1.2.840.10008.5.1.4.1.1.4
Enhanced MR Image Storage 1.2.840.10008.5.1.4.1.1.4.1
Nuclear Medicine Image Storage 1.2.840.10008.5.1.4.1.1.20
Retired Nuclear Medicine Image Storage 1.2.840.10008.5.1.4.1.1.5
Ultrasound Image Storage 1.2.840.10008.5.1.4.1.1.6.1
Ultrasound MultiFrame Image Storage 1.2.840.10008.5.1.4.1.1.3.1
Retired Ultrasound MultiFrame Image Storage 1.2.840.10008.5.1.4.1.1.3
Secondary Capture Image Storage 1.2.840.10008.5.1.4.1.1.7
Multi-frame Grayscale Byte Secondary Capture Image Storage 1.2.840.10008.5.1.4.1.1.7.2
Multi-frame Grayscale Word Secondary Capture Image Storage 1.2.840.10008.5.1.4.1.1.7.3
Multi-frame True Color Secondary Capture Image Storage 1.2.840.10008.5.1.4.1.1.7.4
X-Ray Angiographic Image Storage 1.2.840.10008.5.1.4.1.1.12.1
Enhanced XA Image Storage 1.2.840.10008.5.1.4.1.1.12.1.1
X-Ray Radiofluoroscopic Image Storage 1.2.840.10008.5.1.4.1.1.12.2
Retired X-Ray Angiographic Bi-Plane Image Storage 1.2.840.10008.5.1.4.1.1.12.3
RT Image Storage 1.2.840.10008.5.1.4.1.1.481.1
Digital X-Ray Image Storage - For Presentation 1.2.840.10008.5.1.4.1.1.1.1
Digital X-Ray Image Storage - For Processing 1.2.840.10008.5.1.4.1.1.1.1.1
Digital Mammography Image Storage - For Presentation 1.2.840.10008.5.1.4.1.1.1.2
Digital Mammography Image Storage - For Processing 1.2.840.10008.5.1.4.1.1.1.2.1
Digital Intra Oral X-Ray Image Storage - For Presentation 1.2.840.10008.5.1.4.1.1.1.3
Digital Intra Oral X-Ray Image Storage - For Processing 1.2.840.10008.5.1.4.1.1.1.3.1
Segmentation Storage 1.2.840.10008.5.1.4.1.1.66.4
VL Endoscopic Image Storage 1.2.840.10008.5.1.4.1.1.77.1.1
VL Photographic Image Storage 1.2.840.10008.5.1.4.1.1.77.1.4
VL Microscopic Image Storage 1.2.840.10008.5.1.4.1.1.77.1.2
VL Slide Coordinates Microscopic Image Storage 1.2.840.10008.5.1.4.1.1.77.1.3
Ophthalmic Photography 8-Bit Image Storage 1.2.840.10008.5.1.4.1.1.77.1.5.1
Ophthalmic Photography 16-Bit Image Storage 1.2.840.10008.5.1.4.1.1.77.1.5.2
Positron Emission Tomography Image Storage 1.2.840.10008.5.1.4.1.1.128
Hard Copy Grayscale Image Storage 1.2.840.10008.5.1.1.30
Hard Copy Color Image Storage 1.2.840.10008.5.1.1.29
Encapsulated PDF Storage 1.2.840.10008.5.1.4.1.1.104.1
Storage Commitment Push Model 1.2.840.10008.1.20.1
Patient Root Query/Retrieve Information Model - FIND 1.2.840.10008.5.1.4.1.2.1.1
Patient Root Query/Retrieve Information Model - MOVE 1.2.840.10008.5.1.4.1.2.1.2
Patient Root Query/Retrieve Information Model - GET 1.2.840.10008.5.1.4.1.2.1.3
Study Root Query/Retrieve Information Model - FIND 1.2.840.10008.5.1.4.1.2.2.1
Study Root Query/Retrieve Information Model - MOVE 1.2.840.10008.5.1.4.1.2.2.2
Study Root Query/Retrieve Information Model - GET 1.2.840.10008.5.1.4.1.2.2.3
Patient/Study Only Query/Retrieve Information Model - FIND 1.2.840.10008.5.1.4.1.2.3.1
Patient/Study Only Query/Retrieve Information Model - MOVE 1.2.840.10008.5.1.4.1.2.3.2
Patient/Study Only Query/Retrieve Information Model - GET 1.2.840.10008.5.1.4.1.2.3.3
Hanging Protocol Storage 1.2.840.10008.5.1.4.38.1
Hanging Protocol Information Model - FIND 1.2.840.10008.5.1.4.38.2
Hanging Protocol Information Model - MOVE 1.2.840.10008.5.1.4.38.3
Modality Worklist Information Model - FIND 1.2.840.10008.5.1.4.31
General Purpose Information Model - FIND 1.2.840.10008.5.1.4.32.1
Enhanced US Volume Storage 1.2.840.10008.5.1.4.1.1.6.2
Arterial Pulse Waveform Storage 1.2.840.10008.5.1.4.1.1.9.5.1
Respiratory Waveform Storage 1.2.840.10008.5.1.4.1.1.9.6.1
General Audio Waveform Storage 1.2.840.10008.5.1.4.1.1.9.4.2

関連項目