Cơ chế hiện thời định nghĩa trong DICOM với hệ thống mạng đƣợc dựa trên sự lƣu trữ của các SOP Cụ thể (SOP Instance), Lớp Dịch vụ Lƣu trữ, cho phép SCU chuyển hình ảnh và các thơng tin khác (ví dụ: Overlay hay Đƣờng cong) tới SCP. Tuy nhiên, Lớp Dịch vụ Lƣu trữ khơng qui định SCP phải hồn tồn chịu trách nhiệm cho việc lƣu trữ thông tin an toàn vào một Account. Vì thế SCP khơng đảm bảo gì hơn ngồi việc chấp nhận một Trƣờng hợp SOP đƣợc truyền. Nhƣ vậy, cần thiết có một Lớp Dịch vụ trong DICOM đảm bảo rằng có một sự cam kết đƣợc định nghĩa để lƣu trữ SOP Cụ thể.
Lớp Dịch vụ Giao Lƣu trữ (Media Commiment Service Class) định nghĩa một lớp dịch vụ tầng ứng tạo thuận lợi cho sự giao lƣu trữ. Lớp Dịch vụ Giao Lƣu trữ làm cho một Thực thể ứng dụng đóng vai trò là một SCU có thể yêu cầu một Thực thể ứng dụng khác với vai trò SCP thực hiện việc đảm bảo cho lƣu trữ an tồn một SOP cụ thể (Ví dụ: SOP Cụ thể đó sẽ đƣợc lƣu trữ trong một khoảng thời gian cụ thể và có thể bị truy vấn).
Một số SCP lƣu trữ SOP Cụ thể dài (ví dụ: hệ thống lƣu trữ) trong khi một số SOP khác lại lƣu trữ trong một thời gian ngắn. SCP cần đƣợc yêu cầu đƣa ra các thuộc tính lƣu trữ an tồn của nó trong Báo cáo Thích nghi (về thời gian lƣu trữ, khả năng truy vấn, dung lƣợng..).
Minh hoạ: Sau khi gửi một bộ hình ảnh tới thiết bị lƣu trữ, ngƣời điều khiển máy
CT scanner gửi một bản tin Yêu cầu Giao Lƣu trữ tới thiết bị lƣu trữ. Mục đích của nó là:
- Yêu cầu thiết bị lƣu trữ xác nhận rằng mọi hình ảnh đã đƣợc nhận
Lưu trữ được đảm bảo Yêu cầu Chuyển lưu trữ
Hình ảnh Lưu trữ
62
- Yêu cầu thiết bị lƣu trữ nhận trách nhiệm lƣu trữ an tồn các hình ảnh. Vì thế CT Scanner có thể xố hình ảnh gốc tại nó
Nếu mọi việc đều diễn ra đúng, thiết bị lƣu trữ sẽ gửi một bản tin xác nhận với CT Scanner. Nếu có vấn đề với một hay một số hình ảnh trong quá trình, thiết bị lƣu trữ sẽ trả về một bản tin báo lỗi tƣơng ứng với CT Scanner
II.3.11. Lớp Dịch vụ Quản lí Danh sách Cơng việc Căn bản Khái niệm
Lớp Dịch vụ Quản lí Danh sách Cơng việc Căn bản (Basic Worklist Management Service Class) định nghĩa một lớp dịch vụ tầng ứng dụng làm tiện hoá việc truy nhập các danh sách công việc.
Một danh sách công việc là một cấu trúc thể hiện các thông tin liên quan đến một bộ các nhiệm vụ (task) cụ thể. Nó định ra chi tiết cụ thể cho từng nhiệm vụ đó.
Lớp Dịch vụ Quản lí Danh sách Cơng việc Căn bản xác định một một dịch vụ truyền thông các danh sách công việc này. Sau đây là các đặc trƣng của lớp dịch vụ này:
- Danh sách công việc phải đƣợc chất vấn bởi Thực thể ứng dụng liên quan với ứng dụng trên nó, hay bởi nó, các nhiệm vụ chứa danh sách công việc phải đƣợc thực hiện. Trong chất vấn này, một số khóa truy tìm (search key) đƣợc sử dụng, định nghĩa cho mỗi Lớp SOP danh sách công việc cụ thể.
Danh sách công việc bao gồm các mục công việc (worklist item), mỗi mục liên quan đến một công việc cụ thể. Một mục cơng việc sẽ mang các Thuộc tính từ nhiều đối tƣợng khác nhau liên quan đến nhiệm vụ.
Định nghĩa dịnh vụ
Hai Thực thể ứng dụng DICOM thực hiện một Lớp SOP của Lớp Dịch vụ Danh sách Cơng việc Căn bản với một đóng vai trị SCU, và một đóng vai trị SCP. Các Lớp SOP này đƣợc thực hiện sử dụng dịch vụ DIMSE-C C-FIND.
CT Scanner Ứng dụng Lịch trình
Hệ thống Thông tin
Gửi Worklist Yêu cầu Worklist
Minh hoạ: CT Scanner nhận một Danh sách công việc.
Các yêu cầu ban đầu cho thủ tục thu nhận hình ảnh đƣợc nhận và xử lí bởi một hệ thống thông tin. Các mục thứ thự và/ hoặc các ứng dụng lịch trình của hệ thống thơng tin sẽ lịch trình hố các thủ tục và chuẩn bị các danh sách công việc cho thiết bị thu nhận hình ảnh tƣơng ứng. Sau mỗi khoảng thời gian đều đặn (phụ thuộc vào qui định riêng), CT Scanner sẽ thu nhận danh sách công việc đƣợc cập nhật từ hệ thống thông tin. Trong lúc nhận một yêu cầu danh sách công việc, hệ thống thông tin gửi danh sách công việc hiện thời cho CT Scanner. Lớp Dịch vụ Quản lí Danh sách Cơng việc khơng xác định cách hệ thống thông tin đƣợc thông báo về việc các mục của danh sách cơng việc đƣợc hồn thành. Điều này đƣợc thực hiện bởi một dịch vụ khác của DICOM.
II.3.12. Lớp Dịch vụ Quản lí Hàng đợi
Lớp Dịch vụ Quản lí Hàng đợi (Queue Management Service Class) định nghĩa một lớp dịch vụ tầng ứng dụng làm thuận tiện hoá sự quản lí hàng đợi trên một mạng. Nó bao gồm các chức năng sau:
- Yêu cầu và hiển thị nội dung hàng đợi
- Điều khiển nội dung hàng đợi (ví dụ: ƣu tiên cơng việc, xố mục hàng đợi). Lớp Dịch vụ Quản lí Hàng đợi bao hàm một bộ các hàng đợi ứng dụng cụ thể (ví dụ: hàng đợi in) mà chúng đều có cách ứng xử tƣơng tự.
II.3.13 Lớp SOP Lưu trữ Trạng thái Hiển thị Softcopy Mức Xám
Lớp SOP Lƣu giữ Trạng thái Hiển thị Softcopy Mức Xám (Grayscale Softcopy Presentation State Storage SOP Class) mở rộng chức năng của Lớp Dịch vụ Lƣu trữ để thêm vào khả năng tạo trạng thái hiển thị theo ý muốn hay ghi một trạng thái hiển thị đang tồn tại. Lớp SOP định ra thông tin và cách ứng xử đƣợc sử dụng để hiển thị hình ảnh đƣợc tham chiếu.
Nó định rõ:
64
- Chuyển đổi độ tƣơng phản mức xám bao gồm Thiết bị và VOI LUT (Bảng tra Giá trị quan tâm).
- Sự che mặt nạ (mask subtraction) cho hình ảnh đa khung. - Lựa chọn khu vực của hình ảnh để hiển thị và quay hay giãn.
- Hình ảnh và sự hiển thị chú thích liên quan, bao gồm hình đồ hoạ, văn bản, và Overlay.
Trạng thái hiển thị softcopy liên quan đến sự chuyển đổi hình ảnh mức xám để chuyển các giá trị dữ liệu hình ảnh đƣợc lƣu trữ trong một Lƣu trữ Hình ảnh Phức Cụ thể (Composite Image Storage Instance) thành các Giá trị Hiển thị (P-Values) khi một hình ảnh đƣợc hiển thị trên một thiết bị softcopy.
Lớp SOP Lƣu trữ Hình ảnh Trạng thái Hiển thị Softcopy có thể đƣợc sử dụng để lƣu trữ một trạng thái đơn trên một hình ảnh, hoặc một trạng thái chung đƣợc chia sẻ bởi nhiều hình ảnh đa khung đƣợc chọn. Mọi hình ảnh đó phải là thành phần của của cùng một Nghiên cứu mà trạng thái đƣợc lƣu trữ cũng là một phần của nó, và cùng thuộc một Lớp SOP Lƣu trữ Hình ảnh Phức.
CHƢƠNG III
MÃ HOÁ VÀ CẤU TRÚC DỮ LIỆU DICOM
66
III.1. Mã hố giá trị III.1.1. Các Bộ Kí tự
Các giá trị là văn bản hay chuỗi kí tự đƣợc tạo bởi các Kí tự Điều khiển (Control Character) và Kí tự Đồ hoạ (Graphic Character). Bộ Kí tự Đồ hoạ đƣợc đƣa ra độc lập với cách mã hóa của nó. Phụ thuộc vào mơi trƣờng ngơn ngữ địa phƣơng mà các Thực thể ứng dụng DICOM trao đổi thơng tin với nhau, các Bộ Kí tự phù hợp đƣợc sử dụng. Các Bộ Kí tự đƣợc DICOM hỗ trợ đƣợc định nghĩa trong ISO 8859.
DICOM cũng cung cấp một số Bộ Kí tự cho các ngơn ngữ khơng theo nhóm kí tự Latinh nhƣ Nhật Bản Bảng III.1.1a: Cách mã hố bộ kí tự mặc định DICOM b8 0 0 0 0 0 0 0 0 b7 0 0 0 0 1 1 1 1 b6 0 0 1 1 0 0 1 1 bb 0 1 0 1 0 1 0 1 b4 b3 b2 b1 00 01 02 03 04 05 06 07 0 0 0 0 00 SP 0 @ P ` p 0 0 0 1 01 ! 1 A Q a q 0 0 1 0 02 “ 2 B R b r 0 0 1 1 03 # 3 C S c s 0 1 0 0 04 $ 4 D T d t 0 1 0 1 05 % 5 E U e u 0 1 1 0 06 & 6 F V f v 0 1 1 1 07 „ 7 G W g w 1 0 0 0 08 ( 8 H X h x 1 0 0 1 09 ) 9 I Y i y 1 0 1 0 10 LF * : J Z j z 1 0 1 1 11 ESC + : K [ k { 1 1 0 0 12 FF , < L \ l | 1 1 0 1 13 CR - = M ] m } 1 1 1 0 14 . > N ^ n _ 1 1 1 1 15 / ? O - o
Sự thể hiện các giá trị kí tự được mã hố
Nhƣ đƣợc định nghĩa trong Chuẩn ISO đƣợc tham chiếu, các giá trị byte đƣợc sử dụng cho mã hố các kí tự trong phần này đƣợc thể hiện dƣới dạng hai số thập phân theo dạng hàng, cột. Nhƣ vậy, việc tham chiếu đến giá trị rất dễ dàng và thuận tiện khi đối chiếu với các chuẩn ISO .
Nhƣ vậy, giá trị có thể đƣợc tính nhƣ sau: (cột*16) +hàng.
Ví dụ: 01/11 cho ta giá trị tƣơng ứng 27 (1BH).
Kí tự Đồ họa
Bộ kí tự, là tập hợp các Kí tự Đồ hoạ đƣợc xác định độc lập với cách mã hóa của chúng. Trong DICOM, mọi tham chiếu đến bộ kí tự đều đƣợc thực hiện theo số đăng kí ISO đƣợc định nghĩa trong ISO 2375 dƣới dạng „ISO-IR xxx.‟.
Có nhiều chuẩn, bao gồm cả ISO 8859 (Part 1-9), qui định các Bộ Kí tự Mã hố. Bột Kí tự Mã hố là bộ Kí tự đồ hoạ với quan hệ một- một giữa một kí tự trong bộ và một thể hiện mã hố, ví dụ: „D‟- 04/04.
Bộ kí tự mặc định của DICOM là Basic G0 Set của ISO 646:1990 (ISO- IR6) (xem Bảng IV.1.1). Basic G0 Set đƣợc xác định với các bộ kí tự chung của ISO 8859.
Các Thực thể ứng dụng DICOM có thể mở rộng hay thay thế bộ kí tự mặc định, điều này đƣợc thể hiện trong thành phần dữ liệu Bộ Kí tự Cụ thể (0008, 0005).
Kí tự Điều khiển
Dữ liệu văn bản khi trao đổi cần một số thông tin định dạng. Các Kí tự Điều khiển đƣợc sử dụng cho mục đích đó. Tuy nhiên, việc sử dụng này trong DICOM là hạn chế đến mức tối thiểu do một số máy vận dụng chúng khơng chính xác.
Bảng IV.1.1b: Các Kí tự Điều khiển DICOM
Kí hiệu Tên Giá trị mã hoá LF Line Feed 00/10 FF Form Feed 00/12 CR Carriage Return 00/13 ESC Escape 00/11
III.1.2. Giá trị Thể hiện VR
Giá trị Thể hiện (Value Representation-VR) của một Thành phần Dữ liệu (Data Element) miêu tả loại và khuôn dạng dữ liệu của trƣờng Giá trị (Value) trong Thành phần Dữ liệu.
68
Tên VR Định nghĩa Bộ Kí tự Chiều dài Gíá trị
AS
(String Age)
Chuỗi kí tự chỉ tuổi tuân theo theo một trong các dạng sau: nnnD, nnnW, nnnM, nnnY. Trong đó nnn chứa số Ngày, Tuần, Tháng, Năm. “0”-“9”, “D”, “W”, “Y” trong Bộ Kí tự mặc định. Cố định 4 byte AT (Attibute Tag)
Cặp số nguyên không dấu 16 bit là giá trị của Nhãn Thành phần Dữ liệu.
Không 4 byte cố định
CS
(Code String)
Chuỗi kí tự, dấu cách đầu và cuối (20H) khơng được tính
Kí tự in hoa,”0”-“9”, kí tự SPACE, “_” trong Bộ kí tự mặc định DA (Date) Chuỗi kí tự theo khn dạng yyymmdd. Trong đó yyy, mmm, ddd tương ứng chứa giá trị Năm, Tháng, Ngày. VD: “1980097” thể hiện Ngày 7 tháng 9 năm 1980. “0”-“9” trong Lựa chọn Kí tự mặc định. Có thể hỗ trợ “.” Cố định 8 byte DS (Decimal String) Chuỗi kí tự thể hiện số có dấu cố định hay khơng cố định. Số có dấu cố định được tạo bởi các kí tự “0”-“9”, “+”, “-“ và “.” để thể hiện dấu thập phân. Số có dấu khơng cố định dùng “e” hay “E” để thể hiện số mũ. Lớn nhất 16 byte FL (Floating Point Single) Số có dấu bất định được thể hiện trong Khuôn dạng Số Dấu Bất định IEEE 754:1985 32-bit Không Cố định 4 byte IS (String Integer) Chuỗi kí tự thể hiện một số nguyên hệ số 10, đứng đầu bởi “+” hay “-“
Số nguyên n được thể hiện nằn trong dải: -231 <= n <=(231-1) “0”, ”9”, ”+”, “-“ thuộc bộ kí tự mặc định Lớn nhất 12 byte LO (Long String)
Chuỗi kí tự có thể có với dấu cách ở đầu hay cuối. Kí tự ”\” được dùng để phân biệt các giá trị trong thành phần dữ liệu nhiều giá trị “0”-“9”, “+”, “-“ của bộ kí tự mặc định Lớn nhất 64 byte
LT Chuỗi kí tự bao gơm một hay Bộ kí tự Lớn nhất
(Long Text) nhiều đoạn. Sử dụng cả Kí tự Đồ hoạ và điều khiển. Dấu cách đứng sau không được tính, dấu cách đứng đầu được tính. Kí tự “\” không được sử dụng mặc định và/ hoặc theo định nghĩa bởi (0008,0005) 10240 kí tự OB (Other Byte String) Chuỗi các byte mà sự mã hoá được xác định trong Cú pháp Chuyển đổi được thỏa thuận. OB là một VR khơng tn theo luật mã hố thứ tự byte Little/Big Edian. Có thể thêm một byte NULL (00H) nếu cần để đạt được số byte chẵn Không Xem định nghĩa Cú pháp Chuyển đổi OW (Other Word String) Chuỗi các từ 16 bit mà sự mã hoá được xác định bởi Cú pháp Chuyển đổi được thoả thuận. OW cần thiết phải chuyển đổi byte của mỗi từ khi thay đổi thứ tự mã hoá byte giữa kiểu Little Edian và Big Endian.
Không Xem định nghĩa Cú Pháp Chuyển đổi. PN (Person Name)
Chuỗi kí tự chỉ tên bệnh nhân gồm có 5 thành phần. Các thành phần có thể trống. Các thành phần được phân giới bởi kí tự “^” VD:”Adams^John RobertQincy^^Rev.^B.A.M.Div Bộ Kí tự mặc định khơng bao gồm các Kí tự Điều khiển LF, FF, và CR (trừ ESC) Nhiều nhất 64 kí tự trên một nhóm thành phần (component group). SL (Signed Long)
Số 32 bit có dấu nhị phân dưới dạng mã bù 2
Thể hiện giá trị nguyên, n, trong dải: -231 <= n <=(231-1) Không Cố định 4 byte SQ (Sequense of Items) Chỉ số Mục trong Chuỗi, có
thể là khơng hoặc nhiều. Khơng Khơng UI
(Unique Identifier)
Chuỗi kí chứa một UID để xác định duy nhất một đối tượng trong một dải rộng các thành phần. UID là một chuỗi các thành phần số được ngăn cách bởi kí tự cách ”.” “0”-“9”, “.” Trong Bộ Kí tự mặc định Nhiều nhất 64 byte UN (Unknown) Chuỗi các byte mà sự mã hố khơng xác định Không Bất cứ chiều dài nào hợp lệ với các VR
70 UT
(Unlimited Text)
Một chuỗi kí tự có thể chứa một hay nhiều đoạn. Nó có thể chứa bộ Kí tự Đồ hoạ và các Kí tự Điều khiển. Bộ Kí tự mặc định 2 32 -2 III.2. Bộ Dữ liệu III.2.1. Khái niệm
Một Bộ Dữ liệu thể hiện một trƣờng hợp cụ thể Đối tƣợng Thông tin thế giới thực. Một bộ Dữ liệu đƣợc cấu tạo bởi các Thành phần Dữ liệu chứa các Giá trị đƣợc mã hoá của đối tƣợng đó.
III.2.2. Thành phần Dữ liệu a. Khái niệm a. Khái niệm
Thành phần Dữ liệu đƣợc xác định duy nhất bởi một Nhãn Thành phần Dữ liệu. Các Thành phần dữ liệu trong một Bộ Dữ liệu đƣợc xếp theo thứ tự bởi việc tăng số hiệu Nhãn Thành phần Dữ liệu và chúng chỉ xuất hiện nhiều nhất là một lần trong một Bộ Dữ liệu.
Có hai loại Thành phần Dữ liệu đƣợc định nghĩa:
-Thành phần Dữ liệu Chuẩn có số Nhóm (Group number) là số chẵn và không phải là (0000, eeee), (0002, eeee), (0004, eeee), (0006, eeee).
-Thành phần Dữ liệu Riêng có số Nhóm là lẻ và không phải là (0001, eeee), (0003, eeee), (0005, eeee), (0007, eeee), (FFFF, eeee).
eeee: số Thành phần bất kì.
Một Thành phần Dữ liệu rơi vào một trong ba cấu trúc. Hai cấu trúc trong đó có chứa VR (VR hiện), chúng khác nhau về chiều dài và cách thể hiện. Cấu trúc thứ ba không chứa VR (VR ẩn). Cả ba cấu trúc đều phải bắt buộc chứa Nhãn Thành phần Dữ liệu, Chiều dài Giá trị, và Giá trị .
Hình III.2.2.1. Cấu trúc Thành phần Dữ liệu và Bộ Dữ liệu b. Các trường của Thành phần Dữ liệu
Thành phần Dữ liệu đƣợc cấu tạo bởi các trƣờng. Có ba trƣờng bắt buộc cho mọi cấu trúc Thành phần Dữ liệu: Nhãn, Chiều dài Giá trị, Trƣờng Giá trị. Trƣờng VR chỉ xuất hiện trong cấu trúc Thành phần Dữ liệu VR hiện.
- Nhãn Thành phần Dữ liệu: Là một cặp thứ tự số nguyên không dấu 16-bit thể hiện số Nhóm và số Thành phần.
- VR: Chuỗi kí tự hai byte chứa VR (Giá trị thể hiện) của Thành phần Dữ liệu.