Đồ án Xây dựng Media Server ứng dụng trong hội chẩn từ xa

MỤC LỤC

 

MỤC LỤC i

DANH MỤC HÌNH VẼ, BẢNG BIỂU iii

CÁC THUẬT NGỮ VIẾT TẮT vi

CHƯƠNG I: TỔNG QUAN 1

CHƯƠNG II: LÝ THUYẾT 2

2.1. Mô hình hệ thống 2

2.1.1. Mô hình Peer to Peer 2

2.1.2. Mô hình Client – Server 2

2.2. Kiến trúc Server 3

2.3. Giao thức truyền tải dữ liệu thời gian thực 5

2.3.1. Giới thiệu 5

2.3.2. Giao thức RTP (Real Time Transport Protocol) 6

2.3.2.1. Định dạng RTP 6

2.3.2.2. Đóng gói RTP 7

2.3.3. Giao thức RTMP (Real Time Messaging Protocol) 7

2.3.3.1. Giới thiệu 7

2.3.3.2. Các chế độ hoạt động của RTMP 7

2.3.3.3. Quá trình bắt tay 8

2.3.3.4. Tiêu đề RTMP 8

2.3.3.5. Truyền tải nhiều đối tượng AMF trên cùng một kết nối 9

2.3.4. So sánh giữa RTP và RTMP 11

2.4. Chuẩn mã hoá dữ liệu - AMF (Action Message Format) 11

2.4.1. AMF0 12

2.4.1.1. Giới thiệu 12

2.4.1.2. Kiểu dữ liệu AMF0 12

2.4.2. AMF3 13

2.5. Shared Object 15

2.5.1. Giới thiệu 15

2.5.2. Shared Object và Cookie 15

2.5.3. Kiểu thông điệp của Shared Object 15

2.6. Chuẩn nén âm thanh HE-AAC 16

2.6.1. Số hóa âm thanh 16

2.6.2. Chuẩn AAC 16

2.6.2.1. Giới thiệu 16

2.6.2.2. Đặc tính âm học của tai người 17

2.6.2.3. Hoạt động của thuật toán nén âm thanh AAC 18

2.6.2.4. Mô tả chi tiết về AAC 19

2.6.3. Chuẩn HE-AAC 25

2.6.3.1. Giới thiệu 25

2.6.3.2. Spectral Band Replication – SBR 26

2.6.3.3. Parametric Stereo (PS) 27

2.7. Chuẩn nén hình ảnh MPEG-4/H.264 29

2.7.1. Số hoá hình ảnh 29

2.7.2. Nén hình ảnh 29

2.7.3. Phép biến đổi Cosine rời rạc (Discrete Cosine Transform) 30

2.7.4. Mã hóa chiều dài thay đổi VLC (Variable Length Coding) 32

2.7.4.1. Giới thiệu chung 32

2.7.4.2. Mã Huffman 33

2.7.5. Kĩ thuật nén ảnh JPEG 34

2.7.6. Kĩ thuật nén Video H.264 34

2.7.6.1. Bộ mã hóa và giải mã 34

2.7.6.2. Cơ bản về H.264 36

2.8. Chuẩn hình ảnh DICOM và hệ thống PACS dùng trong y tế 39

2.8.1. Hệ thống PACS 39

2.8.1.1. Lịch sử hình thành và phát triển 39

2.8.1.2. Thành phần của hệ thống PACS 40

2.8.1.3. Kiến trúc PACS 43

2.8.1.4. Các yêu cầu trong việc thiết kế hệ thống PACS 47

2.8.2. Hệ thống MyFreePACS 49

2.8.3. Chuẩn hình ảnh DICOM dùng trong y tế 49

2.8.3.1. Tổng quan về DICOM 49

2.8.3.2. Phạm vi và lĩnh vực ứng dụng của DICOM 51

2.8.3.3. Thích nghi DICOM 51

2.8.3.4. Mục tiêu của ảnh DICOM 52

2.8.3.5. Cấu trúc của chuẩn DICOM 52

2.8.3.6. Khuôn dạng file DICOM 57

2.8.4. DICOM Toolkit 58

2.8.4.1. DCMTK 58

2.8.4.2. DCM4CHE 59

2.9. Hệ thống thông tin y tế và chuẩn dữ liệu văn bản HL7 62

2.9.1. Hệ thống thông tin y tế 62

2.9.1.1. Giới thiệu 62

2.9.1.2. Kiến trúc hệ thống 62

2.9.1.3. Các nhiệm vụ của hệ thống HIS 64

2.9.2. Hệ thống FreeMED 64

2.9.3. Chuẩn dữ liệu văn bản HL7 65

2.10. Giải pháp mở rộng 66

2.10.1. Giải pháp 1: sử dụng Cluster Server 66

2.10.2. Giải pháp 2: phát triển thêm tính năng mở rộng cho Server 67

2.10.3. Giải pháp 3: kết hợp giữa hai giải pháp 1 và 2 69

CHƯƠNG III: THỰC HÀNH 70

3.1. Tạo một ứng dụng chạy trên Server WebF 70

3.2. Tính năng chia sẻ và lưu trữ Video 72

3.2.1. Giới thiệu 72

3.2.2. Bắt tay trên giao thức RTMP 73

3.2.3. Thực hiện kết nối 74

3.2.4. Chia sẻ âm thanh, hình ảnh và lưu trữ tại Server 75

3.3. Tính năng Shared Object 78

3.4. Tính năng lấy thông tin của bệnh nhân trong FreeMED 80

3.5. Tính năng lấy ảnh trong MyFreePACS và chuyển thành ảnh JPEG 82

CHƯƠNG IV: THẢO LUẬN 86

CHƯƠNG V: KẾT LUẬN 87

TÀI LIỆU THAM KHẢO 88

 

 

doc96 trang | Chia sẻ: lethao | Lượt xem: 2317 | Lượt tải: 2download
Bạn đang xem trước 20 trang tài liệu Đồ án Xây dựng Media Server ứng dụng trong hội chẩn từ xa, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
him tương tự hay các máy ảnh phim thì chúng ta cần đưa dữ liệu qua các thiết bị chuyển đổi sang tín hiệu số, còn đối với máy quay phim kĩ thuật số hay máy ảnh kĩ thuật số thì tín hiệu đầu ra đã là tín hiệu số nên không cần phải chuyển đổi. Nén hình ảnh Bao gồm nén ảnh và nén nhiều ảnh liên tiếp trong một đoạn Video. Phương pháp nén thường dùng đối với ảnh là JPEG (Joint Photographic Experts Group), đối với nhiều ảnh liên tiếp trong một đoạn Video là MPEG (Moving Picture Experts Group). Hai phương pháp này có đặc điểm chung là sử dụng phép biến đổi Cosine rời rạc DCT (Discrete Cosine Transform) và tiếp theo là một thuật toán mã hóa như RLC (Run Length Coding), VLC (Variable Length Coding),…Đối với nén MPEG thì người ta sử dụng thêm một số kĩ thuật nén chuyển động… Phép biến đổi Cosine rời rạc (Discrete Cosine Transform) Người ta không thực hiện biến đổi Cosine trên toàn bộ vùng ảnh mà người ta chia ảnh thành các khối có kích thước 8x8 (đối với JPEG, MPEG-2) hoặc là 16x16, 8x8, 16x8, 4x4,… (đối với H.264). Hình 2. 38: Minh họa cách chia ảnh thành các khối trước khi biến đổi Cosine Biến đổi Cosine một chiều Phép biến đổi Cosine rời rạc một chiều được cho bởi công thức 2. 39 Trong đó u= 0, 1, 2,…, N-1. Tương tự phép biến đổi ngược được cho bởi công thức 2. 40 Trong đó x= 0, 1, 2,…, N-1. Trong cả hai công thức trên thì α(u) được xác định bởi 2. 41 Rõ ràng với u=0 thì . Do đó hệ số đầu tiên của phép biến đổi là giá trị trung bình của tất cả các mẫu. Người ta gọi hệ số này là hệ số DC, tất cả các hệ số còn lại của phép biến đổi được gọi là hệ số AC. Phép biến đổi Cosine rời rạc hai chiều Phép biến đổi Cosine rời rạc hai chiều là một sự mở rộng trực tiếp của phép biến đổi Cosine rời rạc một chiều và được cho bởi công thức 2. 42 Trong đó u,v = 0, 1, 2,…, N-1. Phép biến đổi ngược được cho bởi công thức 2. 43 Trong đó x,y = 0, 1, 2,…, N-1. Với α(u), α(v) được xác định tương tự như phép biến đổi Cosine rời rạc một chiều. Các tính chất của DCT: Decolleration : Lợi ích chủ yếu của phép biến đổi là loại bỏ sự dư thừa giữa các pixel lân cận. Điều này dẫn đến những hệ số của phép biến đổi không có tương quan có thể được mã hóa một cách độc lập. Energy Compaction : Hiệu quả của phép biến đổi là biến dữ liệu đầu vào thành một số ít các hệ số nhất có thể. Điều này cho phép bộ lượng tử hóa bỏ bớt các hệ số gần bằng nhau mà vẫn không làm giảm nhiều chất lượng của ảnh được tái tạo. Seperability : Công thức biến đổi Cosine rời rạc hai chiều ở phần trên có thể được viết thành 2. 44 Trong đó u,v = 0, 1, 2,…, N-1. Tính chất này cho phép phép biến đổi hai chiều có thể được thực hiện bằng hai phép biến đổi một chiều, một phép biến đổi theo dòng và một phép biến đổi theo cột. Điều này được minh họa trong hình dưới đây Hình 2. 45: Phép biến đổi hai chiều được phân thành bước biến đổi một chiều 2. 46 Symmetry: một cách nhìn khác của công thức biến đổi theo dòng và cột là Trong đó A là ma trận của phép biến đổi kích thước NxN với các phần tử được cho bởi 2. 47 Còn f là ma trận ảnh có kích thước NxN. Lợi ích lớn nhất của tính chất này là ma trận A của phép biến đổi có thể được tính toán trước sau đó áp dụng để tính hệ số của phép biến đổi điều này làm tăng tốc tính toán lên rất nhiều. 2. 48 Orthogonality: Công thức biến đổi ngược có thể viết lại ở dạng Với ma trận ngược của A chính là ma trận chuyển vị của A nghĩa là A-1 = AT. Tính chất này cũng góp phần giảm tính toán khi thực hiện phép biến đổi ngược. Mã hóa chiều dài thay đổi VLC (Variable Length Coding) Giới thiệu chung Theo lý thuyết mã, mã có độ dài thay đổi là một loại mã mà các kí hiệu nguồn được ánh xạ thành các kí hiệu mã có số lượng bit không bằng nhau. Mã có độ dài thay đổi cho phép các kí hiệu nguồn được nén và giải nén mà không bị mất dữ liệu (lossless data compression) và còn có thể giải mã theo từng kí hiệu. Chiến lược mã này liên quan tới lượng tin (entropy) của từng kí hiệu. Một số loại mã được nhiều người biết tới theo chiến lược mã hóa này là: mã Huffman, mã LZ (Lempel-Ziv), mã số học. Kích thước của một từ mã: được ánh xạ từ một chuỗi các bit độ dài xác định ban đầu thành một những cụm các bit có độ dài xác định sau đó. Mã không suy biến là loại mã mà mỗi kí hiệu của từ mã ban đầu được ánh xạ thành một cụm bit không rỗng khác nhau. Ví dụ một ánh xạ M1={(a,0), (b,0), (c,1)} là không loại ánh xạ không suy biến bởi vì nó ánh xạ cả hai kí hiệu “a” và “b” thành một cụm bit giống nhau “0”, bất kì kích thước nào của từ mã loại này đều tạo ra việc mất dữ liệu. loại mã suy biến này vẫn còn hữu dụng khi mã hóa đối với một số nguồn thông tin cho phép tổn thất dữ liệu ( như trong nén audio và video) Tuy nhiên ánh xạ M2={(a,0), (b,1), (c,00), (d,01) là loại một ánh xạ không suy biến, rất phù hợp khi dùng cho truyền dữ liệu. Từ mã có thể giải mã duy nhất: là một từ mã được gọi là có thể giải mã duy nhất nếu kích thước của nó không suy biến. Ví dụ: dối với ánh xạ không suy biến M2 không phải là loại giải mã duy nhất bởi vì chuỗi nguồn “aa” được ánh xạ thành chuỗi bit “00”, khi giải mã có thể lầm lẫn với kí hiệu “c”. với kích thước từ mã của ánh xạ M3={(a,0), (b,01), (c,001)} có thể giải mã duy nhất, bởi vì mỗi cụm bit đều kết thúc ngay khi một bit 0 xuất hiện, nó là dấu hiệu cho thấy một từ mã mới. Mã tức thời (mã có tính prefix) là loại mã trong cùng một ánh xạ, với các kí hiệu khác nhau thì không có chuỗi bit nào sau khi ánh xạ là prefix của một chuỗi bit đã ánh xạ khác. Điều này giúp cho kí hiệu có thể được giải mã tức thời ngay sau khi toàn bộ từ mã đã nhận được. Ánh xạ M3 không phải là loại mã tức thời bởi vì không thể giải mã thành kí tự “a” sau khi nhận chuỗi bit “0”, nó là prefix của kí hiệu “b” và “c” sau khi đã giải mã. Một ví dụ của loại mã tức thời có độ dài thay đổi: Hình 2. 49: Ví dụ về một bảng mã Chuỗi kí hiệu nguồn bao gồm các kí hiệu: a, b, c, d. Từ mã nhị phân được cho như trên. Sau đây là một minh họa cho việc mã hóa và giải mã đối vời loại mã tức thời. Kết quả: aabacda à 001001101110 à |0|0|10|0|110|111|0| à aabacda Thuận lợi: những kí hiệu nguồn ít xuất hiện có thể được gán cho các kí hiệu dài hơn những kí hiệu nguồn xuất hiện nhiều. ví dụ: nếu xác suất xuất hiện của (a, b, c, d) là (1/2, 1/4, 1/8, 1/8), thì entropy của nó là: 1x1/2 + 2x1/4 + 3x1/8 + 3x1/8 = 7/4 = 1,75. Với loại mã này thì kí hiệu nguồn được nén nhiều nhất có thể và giải mã được mà không bị mất dữ liệu. Mã Huffman Trong khoa học máy tính và lý thuyết thông tin, mã Huffman là một thuật toán mã hóa dùng để nén dữ liệu. Nó dựa trên bảng tần suất xuất hiện các kí tự cần mã hóa để xây dựng một bộ mã nhị phân cho các kí tự đó sao cho dung lượng (số bít) sau khi mã hóa là nhỏ nhất. Mã tiền tố (prefix-free binary code) Để mã hóa các kí hiệu (kí tự, chữ số, ...) ta thay chúng bằng các xâu nhị phân, được gọi là từ mã của kí hiệu đó. Chẳng hạn bộ mã ASCII, mã hóa cho 256 kí hiệu là biểu diễn nhị phân của các số từ 0 đến 255, mỗi từ mã gồm 8 bít. Trong ASCII từ mã của kí tự "a" là 1100001, của kí tự "A" là 1000001. Trong cách mã hóa này các từ mã của tất cả 256 kí hiệu có độ dài bằng nhau (mỗi từ mã 8 bít). Nó được gọi là mã hóa với độ dài không đổi. Khi mã hóa một tài liệu có thể không sử dụng đến tất cả 256 kí hiệu. Hơn nữa trong tài liệu chữ cái "a" chỉ có thể xuất hiện 1000000 lần còn chữ cái "A" có thể chỉ xuất hiện 2, 3 lần. Như vậy ta có thể không cần dùng đủ 8 bít để mã hóa cho một ký hiệu, hơn nữa độ dài (số bít) dành cho mỗi kí hiệu có thể khác nhau, kí hiệu nào xuất hiện nhiều lần thì nên dùng số bít ít, ký hiệu nào xuất hiện ít thì có thể mã hóa bằng từ mã dài hơn. Như vậy ta có việc mã hóa với độ dài thay đổi. Tuy nhiên, nếu mã hóa với độ dài thay đổi, khi giải mã ta làm thế nào phân biệt được xâu bít nào là mã hóa của ký hiệu nào. Một trong các giải pháp là dùng các dấu phẩy (",") hoặc một kí hiệu quy ước nào đó để tách từ mã của các kí tự đứng cạnh nhau. Nhưng như thế số các dấu phẩy sẽ chiếm một không gian đáng kể trong bản mã. Một cách giải quyết khác dẫn đến khái niệm mã tiền tố Mã tiền tố là bộ các từ mã của một tập hợp các kí hiệu sao cho từ mã của mỗi ký hiệu không là tiền tố (phần đầu) của từ mã một ký hiệu khác trong bộ mã ấy. Đương nhiên mã hóa với độ dài không đổi là mã tiền tố. Ví dụ: Giả sử mã hóa từ "ARRAY", tập các ký hiệu cần mã hóa gồm 3 chữ cái "A","R","Y". Nếu mã hóa bằng các từ mã có độ dài bằng nhau ta dùng ít nhất 2 bit cho một chữ cái chẳng hạn "A"=00, "R"=01, "Y"=10. Khi đó mã hóa của cả từ là 0001010010. Để giải mã ta đọc hai bit một và đối chiếu với bảng mã. Nếu mã hóa "A"=0, "R"=01, "Y"=11 thì bộ từ mã này không là mã tiền tố ví từ mã của "A" là tiền tố của từ mã của "R". Để mã hóa cả từ ARRAY phải đặt dấu ngăn cách vào giữa các từ mã 0,01,01,0,11 Nếu mã hóa "A"=0, "R"=10, "Y"=11 thì bộ mã này là mã tiền tố. Với bộ mã tiền tố này khi mã hóa xâu "ARRAY" ta có 01010011. Biểu diễn mã tiền tố trên cây nhị phân Nếu có một cây nhị phân n lá ta có thể tạo một bộ mã tiền tố cho n ký hiệu bằng cách đặt mỗi ký hiệu vào một lá. Từ mã của mỗi kí hiệu được được tạo ra khi đi từ gốc tới lá chứa ký hiệu đó, nếu đi qua cạnh trái thì ta thêm số 0, đi qua cạnh phải thì thêm số 1. Ví dụ: Cây 3 lá sau đây biểu diễn bộ mã của A,R,Y trong ví dụ trên * 0/ \1 A * 0/ \1 R Y Từ mã của "A" là 0, của "R" là 10, của "Y" là 11. Kĩ thuật nén ảnh JPEG Sơ đồ nén ảnh như sau Hình 2. 50: Sơ đồ nén ảnh JPEG Người ta chia ảnh gốc thành các khối kích thước 8x8, sau đó thực hiện biến đổi Cosine trên các khối này, sau khi biến đổi Cosine là bước lượng tử hóa. Ở bước này người các hệ số của phép biến đổi có giá trị gần bằng nhau được lược bỏ và chỉ chọn một hệ số duy nhất để biểu diễn. Sau bước lượng tử hóa là đến bước mã hóa, ở bước này người ta sử dụng một thuật toán mã hóa lossless để mã hóa như Huffman, VLC (Variable Length Code),… Sơ đồ giải nén như sau Hình 2. 51: Sơ đồ giải nén ảnh JPEG Đầu tiên là thực hiện giải mã sau đó đảo ngược thao tác lượng tử hóa và cuối cùng là biến đổi ngược để tái tạo ảnh ban đầu. Kĩ thuật nén Video H.264 Bộ mã hóa và giải mã Sơ đồ bộ mã hóa Hình 2. 52: Sơ đồ bộ mã hóa MPEG-4/H.264 Chiều tới (dùng để gửi đi): một frame Fn được mã hóa gồm một tập các khối macroblock. Mỗi khối macroblock được mã hóa theo một trong hai chế độ: dự đoán bên trong hoặc bên ngoài. Trong chế độ dự đoán bên trong, một dự đoán PRED được hình thành từ những mẫu trong lát hiện tại đã được mã hóa , giãi mã trước. Trong chế độ dự đoán bên ngoài, PRED được hình thành bằng một dự đoán bù đắp chuyển động từ một hoặc hai hình tham chiếu được chọn nằm trong danh sách 0 hoặc danh sách 1 của các lát trước hoặc sau lát hiện tại. Trong sơ đồ, hình tham chíếu được chọn để mã hóa cho một khối hiện tại có thể là là khối nằm trong hình đã được mã hóa trước F’n-1 hoặc khối tiếp theo của khối hiện tại. Khối đã được dự đoán PRED sẽ được trừ đi với khối hiện tại để lấy ra khối Dn biểu diễn sự khác nhau của 2 khối trên. Khối Dn này sẽ được chuyển đổi và lượng tử (T, Q) thành những hệ số X mà sau đó được sắp thứ tự. mã hóa entropy và truyền đi trên mạng. Chiều lui (dùng để tái tạo): quá trình cũng giống như phần mã hóa bên trên nhưng dến khi tạo được X thì nó được áp dụng phép tính Q-1, T-1 để tạo thành một khối D’n khác. Một dự đoán PRED được thêm vào để tạo lại khối uF’n (một phiên bản giải mã của khối gốc và chưa được lọc) . Sau đó một bộ lọc được thêm vào để làm mượt ảnh F’n (ảnh này có thể được dủng cho việc dự đoán ảnh trong quá trình mã hóa tiếp theo) Sơ đồ bộ giãi mã Hình 2. 53: Sơ đồ bộ giải mã MPEG-4/H.264 Một giải mã sẽ nhận luồng bit đã được nén trên môi trường mạng và giải mã entropy và sắp thứ tự để thu được tập các hệ số lượng tử X. Sau đó D’n cũng được dựng lại từ X qua Q-1 và T-1. Sau đó bộ giải mã sử thông tin trong header để tạo ra một dự đoán PRED giống với dự đoán gốc khi mã hóa. Ảnh chưa được lọc uF’n được tạo ra từ PRED tiếp tực được đưa qua bộ lọc để tạo ra ảnh trơn mượt F’n có chất lượng tương đương ảnh gốc. Cơ bản về H.264 Quản lý ảnh tham chiếu: Những ảnh đã mã hóa sẽ được lưu trữ trong bộ đệm tham chiếu. Bộ mã hóa và giải mã quản lý danh sách các ảnh được mã hóa (lấy ttrong danh sách 0) để sử dụng vào việc dự đoán bù đắp chuyển động. Danh sách 0 có thể chứa những ảnh trước và sau ảnh hiện tại theo thứ tự hiển thị, và danh sách này có thể chứa cả những ảnh tham chiếu dài hạn và ngắn hạn. Mặc định, một ảnh đã được mã hóa khi được tái tạo lại chính bởi bộ giải mã thì được đánh dấu là ảnh ngắn hạn được dùng cho việc dự đoán. Ảnh dài hạn là những ảnh cũ hơn có thể được sử dụng cho việc dự đoán và còn tồn tại trong bộ đệm tham chiếu cho đến khi nào nó bị xoá hay bị thay thế. Danh sách 1 là danh sách chứa những ảnh trong tương lai, gần với ảnh hiện tại nhất. Lát ảnh: Lát ảnh có hai loại loại I và loại P. Loại I chỉ chứa những khối bên trong (khối ảnh được mã hoá bằng phương pháp dự đoán bên trong). Và loại P chỉ chứa những khối ảnh bên ngoài (khối ảnh được mã hóa bằng phương pháp dự đoán bên ngoài). Dự đoán khối: Một khối ảnh hiện tại trong một lát H.264 được dự đoán từ dữ liệu đã được mã hóa trước. Tuy nhiên thứ tự mã hóa khối có thể như trong ảnh. Hình 2. 54: Thứ tự khối ảnh được mã hóa Dự đoán bên ngoài Dự đoán bên ngoài là một mô hình dự đoán từ một hoặc nhiều khung ảnh đã được mã hóa trước đó dựa trên yếu tố bù chuyển động. Sự khác biệt quan trong so với những phương pháp cũ hơn ở chỗ phương pháp mới này hỗ trợ kích thước khối thay đổi (từ 16x16 xuống 4x4) và còn hỗ trợ cả những vector chuyển động Hình 2. 55 Các cách chia khối ảnh nhỏ hơn Hình 2. 56: Minh họa cách chia các khối ảnh khi mã hóa Vector chuyển động: một khối ảnh được dự đoán từ một vùng của một ảnh khác (ảnh tham chiếu). Phần duy chuyển giữa hai vùng ảnh sẽ được dùng làm thông tin biểu diễn sự sai khác giữa hai ảnh. (a) Khối 4x4 đang mã hóa (b) Khối tham chiếu vector(1,-1) (c) Khối tham chiếu vector(0.75,-0.5) Hình 2. 57: Tinh vector chuyển động Dự đoán bên trong Trong chế độ dự đoán bên trong một khối được hình thành dựa trên những khối đã được mã hóa và dựng lại trước đó. Các mẫu được dùng để dự đoán có 13 mẫu (từ A-M) còn các mẫu được dự đoán có 16 mẫu (từ a-p) Hình 2. 58: Nhãn của các mẫu dự đoán Các chế độ dự đoán: có 9 chế độ: Chế độ 0: các mẫu A, B, C, D được dùng để dự đoán theo chiều dọc Chế độ 1: các mẫu I, J, K, L được dùng để dự đoán theo chiều ngang. Chế độ 2: giá trị trung bình của các mẫu A…D và I…L được dùng để dự đoán. Chế độ 3: các mẫu được dự đoán theo đường chéo trên phải - dưới trái. Chế độ 4: các mẫu được dự đoán theo đường chéo trên trái - dưới phải. Chế độ 5: các mẫu được dự đoán theo đường chéo trên trái - dưới phải. Chế độ 6: các mẫu được dự đoán theo đường xiên đứng từ bên trái sang bên phải góc 26,6o Chế độ 7: các mẫu được dự đoán theo đường xiên đứng từ bên phải sang bên trái góc 26,6o. Chế độ 8: các mẫu được dự đoán theo đường xiên ngang từ dưới lên góc 26,6o Hình 2. 59: Các chế độ mã hóa khối ảnh Ví dụ: Ảnh gốc b) Chế độ 0 (c) Chế độ 1 (d) Chế độ 2 (e) Chế độ 3 (f) Chế độ 4 (g) Chế độ 5 (h) Chế độ 6 (i) Chế độ 7 (j) Chế độ 8 Hình 2. 60: Ví dụ minh họa cho các chế độ mã hóa khối Chuẩn hình ảnh DICOM và hệ thống PACS dùng trong y tế Hệ thống PACS Lịch sử hình thành và phát triển Trong thực tế, quá trình khám bệnh thông qua hình ảnh chỉ cần rất ít các dữ liệu dưới dạng văn bản. Vì thế việc xử lý, lưu trữ, phân phối và hiển thị các dữ liệu dạng hình ảnh đóng vai trò rất quan trọng. Từ các yêu cầu này đã đưa đến sự ra đời của một hệ thống nhằm mục đích thu nhận và lưu trữ ảnh từ các thiết bị tạo ảnh gồm ảnh X-quang, ảnh siêu âm, ảnh chụp cộng hưởng từ…, và thực hiện việc phân phối ảnh thông qua hệ thống truyền thông phục vụ cho việc chẩn đoán, điều trị và chăm sóc bệnh nhân. Hệ thống đó chính là hệ thống lưu trữ và truyền thông ảnh PACS. Khái niệm PACS được thảo luận lần đầu tiên là trong cuộc gặp của các bác sĩ xét nghiệm vào năm 1982. Rất nhiều người đã ghi nhận cho sự ra đời của PACS, như là tiến sĩ Andre Duerinckx, tiến sĩ Samuel Dwyer, hay tiến sĩ Harold Glass… Trong giai đoạn đầu phát triển, do sự hạn chế của công nghệ nên hệ thống PACS bộc lộ nhiều yếu kém trong việc liên kết các thành phần hoạt động chung nhau, định tuyến, quản lý lỗi, mở rộng hệ thống… Từ năm 1990, với sự phát triển mạnh mẽ của khoa học công nghệ, hệ thống PACS đã phát triển rộng khắp và ngày càng trở nên hoàn thiện. Bắt đầu là từ khu vực Bắc Mỹ, PACS được nghiên cứu và phát triển dưới sự hỗ trợ của chính phủ và các nhà sản xuất. Sau đó, PACS đã được đẩy mạnh tại châu Âu và Nhật Bản. Hiện nay, hệ thống PACS đã được ứng dụng rộng rãi. Ví dụ như ở Mỹ, 33% bệnh viện có cài đặt hệ thồng PACS, và 32% khác có kế hoạch triển khai hệ thống PACS trong cơ sở của mình (theo báo cáo thường niên năm 2005 của Healthcare Information and Management Systems Society). Nhiều công ty phần mềm của Trung Quốc cũng đã nghiên cứu triển khai hàng loạt giải pháp nhằm tổ chức hệ thống lưu trữ và truyền ảnh. Việt Nam cũng đã bắt đầu có những nghiên cứu về y tế từ xa (telemedicine) nói chung cũng như hệ thống PACS nói riêng. Rất nhiều dự án liên quan đến lĩnh vực y tế đã được triển khai như là: dự án “Bệnh viện vệ tinh của Bệnh viện Việt Đức” đã được Nhà nước và Bộ Y tế phê duyệt từ năm 2003 đến năm 2007, dự án “Y học từ xa” của Bộ Quốc phòng đang triển khai tại Bệnh viện Trung ương quân đội 108 (Hà Nội) và Quân y viện 175 (TP. Hồ Chí Minh). Nhiều đơn vị, công ty của Việt Nam đang xây dựng các sản phẩm phần mềm trong lĩnh vực chăm sóc y tế. Các kỹ sư phát triển phần mềm SaigonTech đang trong quá trình hoàn tất Hệ thống thông tin và lưu trữ hình ảnh PACS. Hệ thống PACS đã được xây dựng trên kiến trúc 3 lớp (Web, xử lý, dữ liệu), với các thành phần mạng, thử nghiệm và phát triển. Ngoài ra SaigonTech đang trong giai đoạn thiết kế Bệnh án điện tử (Electronic Medical Record - EMR) cho giải pháp bệnh viện điện tử (Hệ thống hông tin bệnh viện - HIS, Hệ thống thông tin X Quang - RIS, Hệ thống thông tin dược phẩm - PhIS, v.v...) Thành phần của hệ thống PACS Hệ thống lưu trữ và truyền ảnh PACS gồm có các thành phần chính: Cổng nhận ảnh và dữ liệu Máy chủ lưu trữ và điều khiển PACS Máy chủ ứng dụng, máy chủ web Máy trạm hiển thị Hệ thống mạng Các bộ phận này được liên kết lại với nhau thông qua mạng. PACS đơn giản có thể là một thiết bị số hóa film được liên kết lại với trạm hiển thị ảnh hoặc phức tạp hơn là hệ thống quản lý ảnh bệnh viện đầy đủ. Vào những năm 1980, PACS được thiết kế chủ yếu nhằm vào việc phục vụ công việc của các khối nhỏ trong khoa X-quang, trong đó mỗi module của PACS độc lập với nhau, không thực hiện trao đổi thông tin với nhau. Yếu kém này bộc lộ rõ khi các module của PACS được liên kết thành mạng. Khi đó việc duy trì, định tuyến, phối hợp hoạt động, quản lý lỗi và mở rộng hệ thống là rất khó khăn. Hệ thống PACS bây giờ đã dần khắc phục được các nhược điểm trên. Đó là mộ hệ thống thể dàng mở rộng, mềm dẻo và linh động. Các bộ phận của hệ thống đã được liên kết với nhau thông qua mạng, và được áp dụng ở rất nhiều bệnh viện trên thế giới. PACS được ứng dụng để xứ lý, lưu trữ, phân phối, hiển thị các dữ liệu dạng hình ảnh. PACS thực hiện nhiệm vụ là thu nhận vào lưu trữ ảnh từ những thiết bị tạo ảnh như ảnh Xquang, ảnh huỳnh quang số, ảnh số C-Arm, ảnh MR, ảnh siêu âm,… Hình 2. 61: Cấu trúc hệ thống PACS Cổng nhận ảnh và dữ liệu Đây là bộ phận rất quan trọng vì: Các thiết bị tạo ảnh không thuộc về hệ thống PACS. Các nhà sản xuất cung cấp các thiết bị khác nhau, tuy phải tuân theo chuẩn DICOM, nhưng có thể sẽ có những phần khác biệt nhau. Cổng nhận ảnh luôn hoạt động chậm hơn so với các bộ phận khác trong hệ thống. Ảnh và dữ liệu bệnh nhân lấy từ thiết bị thỉnh thoảng có chứa những định dạng không được hệ thống PACS hỗ trợ. Vì thế, máy tính cổng nhận ảnh tích hợp nhiều chương trình phần mềm để thực hiện việc thu nhận ảnh từ các thiết bị tạo ảnh hoặc các module PACS khác, chuyển đổi thành chuẩn DICOM sử dụng trong hệ thống PACS và gởi đến máy chủ lưu trữ và điều khiển PACS. Các đặc điểm của máy tính cổng nhận ảnh và dữ liệu: Duy trì toàn vẹn dữ liệu ảnh từ các thiết bị tạo ảnh truyền đến Trong suốt đối với người dùng và tự động hóa việc nhận ảnh và lưu trữ ảnh Phân phối ảnh đến máy chủ lưu trữ. Các khó khăn trong việc xây dựng một cổng thu nhận ảnh và dữ liệu Cổng thu nhận ảnh và dữ liệu phải giao tiếp với nhiều thiết bị tạo ảnh và các module PACS khác nhau. Do đó, giao thức kết nối là rất phức tạp vì các thiết bị, module có định dạng ảnh, giao thức truyền khác nhau và phụ thuộc vào nhà sản xuất. Cần phải có cơ chế kiểm soát lỗi khi các dữ liệu nhập vào trong quá trình tạo ảnh không chính xác. Một cổng thu nhận ảnh và dữ liệu lý tưởng phải tự động hóa hoàn toàn để hệ thống hoạt động tốt và giảm thiểu lỗi. Chi phí thiết kế. Thông thường, cổng thu nhận ảnh và dữ liệu thực hiện qua 4 bước chính: nhận ảnh, định dạng ảnh, gửi ảnh và xóa ảnh. Hình 2. 62: Sơ đồ hoạt động của cổng nhận ảnh Các tiến trình tại máy tính cổng nhận ảnh: Tiến trình 1: kiểm tra xem có lệnh gởi từ cổng DICOM PACS hay không? Tiến trình 2: Nếu nhận được lệnh, nó kích hoạt tiến trình 2 là kiểm tra định dạng DICOM và lưu thông tin vào máy tính cổng nhận ảnh. Tiến trình 3: đưa file nhận được vào hàng đợi để đưa tới bộ điều khiển PACS để lưu trữ. Máy chủ lưu trữ và điều khiển PACS Máy chủ lưu trữ và điều khiển PACS là trung tâm của hệ thống PACS. Bộ phận điều khiển (PACS Controller) bao gồm kiến trúc phần cứng và phần mềm thực hiện quá trình trao đổi thông tin với các bộ phận khác, cụ thể là nhận ảnh từ máy tính cổng nhận ảnh và truyền đến trạm hiển thị ảnh. Còn hệ thống lưu trữ ảnh thực hiện việc lưu trữ thông tin hình ảnh với các mức độ về thời gian (ngắn hạn, trung bình, hay dài hạn). Ảnh và dữ liệu nhận được từ các cổng nhận ảnh và dữ liệu khác nhau sẽ được xếp vào trong đĩa từ của server lưu trữ và được xóa đi khi đã hết mục đích sử dụng (bệnh nhân đã xuất viện hoặc chuyển qua khoa khác) hay ảnh được lưu trữ quá lâu so với khi thực hiện việc chẩn đoán, điều trị. Các nhiệm vụ của bộ điều khiển: Nhận ảnh Sắp xếp và lưu trữ ảnh Định tuyến ảnh Nhóm gộp xét nghiệm Giao diện với HIS và RIS Thao tác trên cơ sở dữ liệu Truy xuất ảnh Nạp trước ảnh Những yêu cầu đối với các thiết bị lưu trữ ảnh: Dữ liệu luôn sẵn sàng Có thể nâng cấp về khả năng lưu trữ và hiệu suất Khả năng bảo mật cao Trạm hiển thị Trạm hiển thị là thành phần cuối cùng trong một hệ thống PACS. Tại đây, các ảnh của bệnh nhân và thông tin liên quan sẽ được hiển thị để thực hiện công việc chẩn đoán và gởi kết quả đến hệ thống HIS/RIS để lưu trữ. Các thành phần cơ bản của trạm hiển thị gồm: máy chủ, bảng mạch video, màn hình hiển thị, và bộ nhớ cục bộ. Ảnh khi được gởi đến sẽ được lưu trong bảng mạch video. Nếu bộ nhớ trong bảng mạch không lưu trữ hết sẽ lưu tạm sang bộ nhớ cục bộ. Sau đó, máy chủ sẽ điều khiển quá trình truyền dữ liệu từ bảng mạch video đến màn hình để hiền thị ảnh. Nhiệm vụ chính của các trạm hiển thị là: Nạp trước ảnh và thông tin cần thiết cho việc chẩn đoán Lựa chọn các xét nghiệm cho bệnh nhân. Sắp xếp và nhóm ảnh để thuận tiện cho việc quan sát. Máy chủ ứng dụng Những máy chủ ứng dụng được kết nối với máy chủ lưu trữ và điều khiển PACS. Thông qua những máy chủ ứng dụng này, dữ liệu PACS có thể được lọc, biến đổi phù hợp cho những ứng dụng khác nhau. Ví dụ như hiển thị hình ảnh trên Web. Hệ thống mạng Giao thức truyền tải trong mạng nên theo đúng chuẩn, ví dụ như TCP/IP hay giao thức truyền thông DICOM (mức cao hơn của TCP/IP). Việc phân bố đường truyền và băng thông trong hệ thống mạng cần được tính toán kỹ lưỡng. Ví dụ như đường truyền kết nối từ cổng nhận ảnh và dữ liệu đến máy chủ lưu trữ không cần tốc độ cao, vì tiến trình thu nhận ảnh không đòi hỏi thời gian truy xuất dữ liệu nhanh. Ngược lại, kết nối từ máy trạm hiển thị đến máy chủ lưu trữ cần phải được ưu tiên tốc độ cao. Kiến trúc PACS Có 3 kiến trúc cơ bản của PACS là : Stand – Alone, Client – Server và Web – based . Stand – Alone PACS Model Ba yếu tố chính: Ảnh được gởi một cách tự động đến máy trạm được thiết kế cho việc đọc và hiển thị lại từ máy server. Máy trạm có thể cũng truy vấn hay truy xuất ảnh từ máy server. Máy trạm có bộ nhớ lưu trữ trong một thời gian gắn. Lưu đồ dữ liệu cho mô hình stand-alone được thể hiện ở hình bên dưới : Hình 2. 63: Luồng dữ liệu khái quát của kiến trúc stand – alone. Mô tả sơ đồ: đặc điểm chính là ảnh được gởi từ server (2) để đọc tại máy trạm một cách tự động cùng với việc nạp lại ảnh (3,4); ảnh cũng có thể được truy vấn/ trích xuất (5,6). Với các bước được giải thích cụ thể như sau: Ảnh từ một cuộc kiểm tra được yêu cầu gởi bởi các máy tạo ảnh được gởi đến server PACS. Máy server PACS lưu trữ kiểm tra đó. Những bản sao của ảnh được phân tán đến một số máy đầu cuối được chọn cho việc đọc và xem xét bệnh án. Server thực thi việc này một cách tự động. Những kiểm tra về tiền sử bệnh được nạp lại từ server, và một bản sao ảnh được gởi đến máy trạm của đầu cuối được lựa chọn. Ad

Các file đính kèm theo tài liệu này:

  • docXây dựng media server ứng dụng trong hội chẩn từ xa.doc