ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA
PHẠM NGỌC MỸ
NGHIÊN CỨU VÀ ỨNG DỤNG WATERMARKING
TRONG XÁC THỰC ẢNH Y TẾ
LUẬN VĂN THẠC SĨ KỸ THUẬT
Đà Nẵng - Năm 2017
ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA
PHẠM NGỌC MỸ
NGHIÊN CỨU VÀ ỨNG DỤNG WATERMARKING
TRONG XÁC THỰC ẢNH Y TẾ
Chuyên ngành : Khoa học máy tính
Mã số : 60.48.01.01
LUẬN VĂN THẠC SĨ KỸ THUẬT
Người hướng dẫn khoa học: TS. HUỲNH HỮU HƯNG
Đà Nẵng - Năm 2017
là cung cấp số liệu hiệu suất MSE và PSNR có giá trị tốt hơn so với các phương pháp
hiện có. Trên đây là tóm tắt các kết quả đạt được của luận văn và hướng phát triển tiếp
theo.
Từ khóa – Hình ảnh watermarking, Discrete Wavelet Transform (DWT),
MATLAB, PSNR, MSE.
Abstract - Watermarking techniques describe methods and technologies for
hiding information in digital media. Watermarking techniques are effectively applied
to medical images and are used to embed information. Patients into the medical image
and get the effect is to extract medical image information, avoid unnecessary
modifications by unauthorized people. These problems are addressed through
watermarking, so that the doctor can diagnose medical imaging and be safer. Patient
information will be embedded into the medical image without compromising the
quality or original content of the medical image. The watermarking program is based
on the Discrete Wavelet Transform (DWT) platform used for medical imaging and is
simulated by MATLAB software. The proposed method is to provide better MSE and
PSNR performance data than existing methods. Above is a summary of the results of
the thesis and the direction of the next development.
Keywords - Image watermarking, Discrete Wavelet Transform (DWT),
MATLAB, PSNR, MSE.
iii
MỤC LỤC
LỜI CAM ĐOAN .............................................................................................................i
TÓM TẮT....................................................................................................................... ii
MỤC LỤC ..................................................................................................................... iii
DANH MỤC CÁC TỪ VIẾT TẮT ................................................................................. v
DANH MỤC CÁC BẢNG .............................................................................................vi
DANH MỤC CÁC HÌNH ............................................................................................ vii
............................................................................................................................ 18
2.1.1. Kỹ thuật thủy vân trên miền không gian ảnh ................................................... 18
iv
2.1.2. Quá trình chèn thủy vân vào ảnh ..................................................................... 19
2.1.3. Quá trình phát hiện watermark ........................................................................ 19
2.1.4. Kỹ thuật thủy vân dùng phép biến đổi DCT .................................................... 19
2.1.5. Kỹ thuật thủy vân dùng biến đổi DWT ........................................................... 22
2.1.5.1. Quá trình nhúng ........................................................................................ 23
2.1.5.2.Quá trình trích............................................................................................ 24
2.1.6. Kỹ thuật thủy vân dùng biến đổi DWT .......................................................... 25
2.2. KỸ THUẬT THỦY VÂN DÙNG BIẾN ĐỔI DWT TRONG XÁC THỰC ẢNH
Y TẾ .............................................................................................................................. 25
2.2.1. Nhúng Thuật toán: ........................................................................................... 25
2.2.2. Khai thác thuật toán ......................................................................................... 28
2.3. KỸ THUẬT THỦY VÂN DÙNG BIẾN ĐỔI DWPT TRONG HỒ SƠ BỆNH
NHÂN ĐIỆN TỬ........................................................................................................... 28
2.3.1. Tạo hình mờ ..................................................................................................... 29
2.3.2. Phương pháp nhúng Watermark ...................................................................... 29
2.3.3. Phương pháp trích xuất bằng watermark ......................................................... 31
2.4. ĐÁNH GIÁ NHẬN XÉT ....................................................................................... 32
2.5. TẤN CÔNG THỦY VÂN ...................................................................................... 34
2.5.1. Khái quát tấn công thủy vân ............................................................................ 34
2.5.2. Vấn đề bảo mật ................................................................................................ 36
2.5.3. Tấn công cố ý ................................................................................................... 36
2.5.3.1. Tấn công loại bỏ........................................................................................ 36
2.5.3.2. Tấn công hình học ..................................................................................... 37
2.5.3.3. Tấn công mã hóa ....................................................................................... 37
2.5.3.4. Tấn công giao thức.................................................................................... 38
HVS
Human Visual System
Hệ thống thị giác ở người
IDWT
Inverse Discrete Wavelet
Transform
Biến đổi wavelet rời rạc nghịch
MSE
Mean Square Error
Sai lệch trung bình bình phương
PSNR
Peak Signal to Noise Ratio
Tỷ số tín hiệu đỉnh trên nhiễu
SVD
Singular Value Decomposition
Bit error rate
Tốc độ bit lỗi
QF
Quality factors
Chất lượng các yếu tố
vi
DANH MỤC CÁC BẢNG
Số hiệu
bảng
1.1.
2.1.
2.2.
2.3.
3.1.
Tên bảng
Trang
So sánh giữa giấu tin mật và thủy vân số
Đánh giá chất lượng ITU-R BT.500-13 theo cấp độ từ 1
2.4.
2.5.
2.6.
2.7.
2.8.
3.1.
3.2.
3.3.
3.4.
3.5.
3.6.
3.7.
3.8.
3.9.
3.10.
3.11.
3.12.
3.13.
Tên hình
(a) Hình ảnh XQ (b) Hình ảnh CT Scan (c) Hình ảnh CT Scan (d)
Hình ảnh MRI
Sơ đồ phân loại các kỹ thuật giấu tin
Lược đồ chung cho quá trình giấu tin
Lược đồ chung cho quá trình tách thông tin
Lược đồ chung cho quá trình thủy vân
Mô hình tổng quát của giai đoạn nhúng dữ liệu vào ảnh số
Mô hình phân phối ảnh sau khi được nhúng thông tin thủy vân
Mô hình trích ảnh thủy vân
Giai đoạn phát hiện thủy vân.
7
9
10
11
12
13
20
20
23
23
26
29
30
31
39
40
40
41
42
44
45
46
47
48
48
49
49
1
2. MỤC ĐÍCH NGHIÊN CỨU
Nghiên cứu và ứng dụng watermarking trong xác thực ảnh y tế.
3. ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU
3.1. Đối tượng nghiên cứu
Nghiên cứu áp dụng các kỹ thuật watermarking cho ảnh y tế.
2
3.2. Phạm vi nghiên cứu
Dữ liệu được xử lý là file ảnh tĩnh (CT scan, MRI Scan ảnh…).
4. PHƯƠNG PHÁP NGHIÊN CỨU
4.1. Phương pháp lý thuyết
Nghiên cứu các tài liệu, bài báo, kỹ thuật liên quan nhằm đề xuất các phương
pháp xác thực ảnh y tế.
4.2. Phương pháp thực nghiệm
Cài đặt và nghiên cứu.
5. Ý NGHĨA KHOA HỌC VÀ THỰC TIỄN
5.1. Về mặt khoa học
Nghiên cứu các phương pháp phù hợp để xác thực ảnh y tế.
5.2. Về mặt thực tiễn
Xác thực bảo vệ tính riêng tư, bản quyền của ảnh y tế.
6. BỐ CỤC CỦA LUẬN VĂN
Cấu trúc luận văn chia thành 3 chương:
Chương 1: Tổng quan về kỹ thuật watermarking trình bày cơ bản các khái
niệm liên quan đến watermark, watermarking, phân loại watermarking, mô hình
watermarking và các ứng dụng của watermarking.
1.1.2. Phân loại giấu tin
Có nhiều cách phân loại khác nhau dựa trên các tiêu chí khác nhau:
4
Steganography
Giấu tin mật
Theo khuynh
hướng
Thủy vân
Thủy vân số
Information hiding
Giấu tin
Giấu tin trong ảnh
Theo môi
trường giấu tin
Giấu tin trong audio
Giấu tin trong video
Hình 1.2. Sơ đồ phân loại các kỹ thuật giấu tin
- Phân loại theo khuynh hướng giấu tin [15]
Kỹ thuật giấu tin nhằm mục đích an toàn và bảo mật thông tin ở hai khía cạnh:
bảo mật dữ liệu đem giấu và bảo mật cho chính đối tượng được dùng để giấu tin.
Từ hai khía cạnh trên dần dần hình thành hai khuynh hướng chủ yếu của giấu tin:
+ Giấu tin mật (Steganography): Từ “Steganography” bắt nguồn từ tiếng Hi Lạp,
- Chỉ tiêu quan trọng nhất là tính bền
vững của tin được giấu.
- Phân loại theo môi trường giấu tin
Kỹ thuật giấu tin đang được áp dụng cho nhiều loại đối tượng, nhưng phổ biến ở
ba dạng dữ liệu đa phương tiện như ảnh, audio, video.
+ Giấu tin trong ảnh: kỹ thuật giấu tin trong ảnh hiện nay chiếm tỷ lệ lớn nhất
trong các chương trình ứng dụng, các phần mềm và hệ thống giấu tin trong đa phương
tiện, bởi lượng thông tin được trao đổi bằng ảnh là rất lớn. Hơn nữa giấu tin trong ảnh
cũng đóng vai trò hết sức quan trọng đối với hầu hết các ứng dụng bảo vệ an toàn
thông tin như nhận thực thông tin, xác định xuyên tạc thông tin, bảo vệ bản quyền tác
giả, điều khiển truy cập, giấu thông tin mật… Chính vì thế mà vấn đề này đã nhận
được sự quan tâm rất lớn của các cá nhân, tổ chức, trường đại học, và các viện nghiên
cứu trên thế giới.
Thông tin sẽ được giấu cùng với dữ liệu ảnh nhưng chất lượng ảnh ít thay đổi và
chẳng ai biết được đằng sau ảnh đó mang những thông tin có ý nghĩa. Ngày nay, khi
ảnh số đã được sử dụng rất phổ biến, thì giấu thông tin trong ảnh đã đem lại rất nhiều
những lợi ích quan trọng trên nhiều lĩnh vực của đời sống xã hội. Chẳng hạn như:
Chữ kí tay đã được số hoá và lưu trữ sử dụng như là hồ sơ cá nhân của các dịch
vụ ngân hàng và tài chính, nó được dùng để nhận thực trong các thẻ tín dụng của
người tiêu dùng.
Phần mềm MS Word của MicroSoft cũng cho phép người dùng lưu trữ chữ kí
trong ảnh nhị phân rồi gắn vào vị trí nào đó trong file văn bản để đảm bảo tính an toàn
của thông tin.
6
+ Giấu tin trong audio: kỹ thuật giấu thông tin trong audio phụ thuộc vào hệ
thống thính giác của con người (HAS – Human Auditory System). HAS cảm nhận
được tín hiệu ở dải tần rộng và công suất thay đổi lớn, nhưng lại kém trong việc phát
Khóa giấu
Phân phối
Hình 1.3. Lược đồ chung cho quá trình giấu tin
Thông tin cần giấu: tuỳ theo mục đích của người sử dụng, nó có thể là thông điệp
(với các tin bí mật) hay các logo, hình ảnh bản quyền.
Phương tiện chứa: các file audio, video, ảnh,… là môi trường để nhúng tin.
7
Bộ nhúng thông tin: là những chương trình thực hiện việc giấu tin.
Khóa dấu tin: khóa dùng để xác thực thông tin.
Đầu ra: là các phương tiện chứa đã có tin giấu trong đó. Phương tiện chứa sau khi
giấu thông tin có thể được sử dụng, quản lý theo những yêu cầu khác nhau.
- Tách thông tin
Tách thông tin từ các phương tiện chứa diễn ra theo quy trình ngược lại, với đầu
ra là các thông tin đã được giấu vào phương tiện chứa và được mô tả như sau:
Khóa giấu tin
Phương tiện chứa
đã được giấu tin
Bộ giải mã tin
Phương tiện chứa
(audio, ảnh,
video)
Thông tin giấu
đổi khác nhau như lọc (tuyến tính, phi tuyến tính), thêm nhiễu, làm sắc nét, mờ nhạt,
quay, nén mất dữ liệu,… tính bền vững là thước đo sự nguyên vẹn của tin mật sau
những biến đổi như vậy.
+ Độ phức tạp tính toán
Độ phức tạp của thuật toán giấu tin và giải tin (tách tin) cũng là một chỉ tiêu quan
trọng, chỉ tiêu này cho chúng ta biết tài nguyên (thời gian và bộ nhớ) dùng cho một
phương pháp giấu tin.
Với chủ nhân giấu tin thì thời gian thực hiện phải nhanh, nhưng với kẻ thám tin
thì tách tin phải là bài toán khó. Ví dụ bài toán tách tin từ thủy ấn để đánh dấu bản
quyền cần phải là bài toán khó, thì mới bền vững trước sự tấn công của tin tặc nhằm
phá hủy thủy vân.
1.2. TỔNG QUAN VỀ WATERMARKING
1.2.1. Khái niệm
Watermarking (thủy vân) là kỹ thuật nhúng “dấu ấn số” (watermark – tin giấu)
vào một sản phẩm số (audio, video, ảnh), mà tin giấu này có thể được phát hiện và
tách ra sau đó, nhằm chứng thực (đánh dấu, xác thực) nguồn gốc hay chủ sở hữu của
sản phẩm số này.
1.2.2. Phân loại
Có nhiều cách phân loại khác nhau dựa trên những tiêu chí khác nhau:
- Phân loại theo khả năng cảm nhận: Thủy vân ẩn là các thủy vân không thể
nhìn thấy được bằng mắt thường. Thủy vân hiện là thủy vân có thể nhìn thấy được
bằng mắt thường.
- Phân loại theo tính bền vững: Thủy vân bền vững là loại thủy vân nhúng theo
phương pháp rất khó phá hủy. Việc tấn công thủy vân số trong trường hợp này sẽ làm
giảm chất lượng của thông tin. Nói cách khác thì nếu phá hủy thủy vân thì đồng thời sẽ
phá hủy đối tượng mang. Thủy vân dễ vỡ là loại thủy vân đảm bảo tính toàn vẹn cho
nội dung thông tin nên bất kỳ sự thay đổi nào cũng có thể làm cho thủy vân bị hỏng.
tấn công
Bộ trích
Ảnh gốc
Hình 1.5. Lược đồ chung cho quá trình thủy vân
Để thấy những khía cạnh khác nhau trong kỹ thuật thủy vân, tùy thuộc vào những
ứng dụng riêng biệt và những điều kiện cần của ứng dụng, ta phải cải tiến mô hình
thủy vân tổng quát và có cái nhìn về những giai đoạn liên tiếp của quá trình xử lý thủy
vân bao gồm những giai đoạn như sau:
- Giai đoạn nhúng (embedding).
- Giai đoạn phân bố (distribution).
- Giai đoạn trích (extraction).
- Giai đoạn quyết định (decision).
1.2.3.1. Giai đoạn nhúng
Trong giai đoạn nhúng, ảnh chủ được biến đổi đến miền thuận tiện cho việc
nhúng dữ liệu. Một số phương pháp khác cũng có thể thực hiện được như DCT
(Discrete Cosine Transform) hoặc là DFT (Discrete Fourier Transform).
10
Dữ liệu ký số (còn gọi là thông điệp) có thể là dữ liệu nhị phân, một ảnh nhỏ
(logo) hoặc là một giá trị khởi đầu cho một bộ sinh số ngẫu nhiên giả để tạo ra một
chuỗi số cùng với phân bố xác định (ví dụ là phân bố Gaussian hoặc phân bố đều).
Các hệ số biến đổi được biến đổi sao cho phù hợp với dữ liệu của thông điệp. Tốt
hơn là phép biến đổi ảnh phải phù hợp với đặc tính cảm nhận về thị giác của người
HVS, như vậy sẽ dễ dàng hơn khi gắn vào tín hiệu được nhúng mà không gây ra méo
dạng cảm nhận. Lưu ý phải lựa chọn miền biến đổi tần số và các hệ số phù hợp với
nhu cầu gắn.
Cuối cùng, phép biến đổi ngược dựa trên các hệ số đã được sửa đổi để hồi phục
lại ảnh được nhúng.
Hình 1.6. Mô hình tổng quát của giai đoạn nhúng dữ liệu vào ảnh số
1.2.3.2. Giai đoạn phân bố
Ảnh được nhúng thủy vân sau đó sẽ được đem phân bố, ví dụ như đưa lên một
trang web hoặc bán cho khách hàng. Trong quá trình truyền và phân bố ảnh, không chỉ
có méo dạng do nén tác động vào ảnh gốc, mà còn do lỗi trong quá trình truyền và
trong quá trình xử lý ảnh. Đặc biệt là những phép biến đổi hình học như là phép xoay,
chỉnh kích thước, cắt bỏ thì thật sự là gây hại cho ảnh nhúng. Tất cả các thao tác tác
động lên dữ liệu ảnh nhúng thủy vân được xem như là thao tác tấn công lên thông tin
nhúng.
Những sự thay đổi xảy ra trong suốt quá trình xử lý ảnh thông thường được gọi là
tấn công trùng khớp ngẫu nhiên, trong khi các loại tấn công nhằm làm yếu, loại bỏ hay
thay đổi thủy vân thì được gọi là tấn công cố ý.
11
Ảnh
sau khi
nhúng
Nén có
tổn hao
Truyền
ảnh,
nhiễu, xử
lý ảnh
Các tấn
Blind hoặc obvilious, Semi-blind và non-blind hoặc non-oblivious.
Ngoài ra, dựa vào sự cần thiết của loại khóa dùng trong quá trình thủy vân ta
phân biệt theo: Khóa cá nhân, khóa công khai và các mô hình thủy vân bất đối xứng
khác.
12
Ảnh gốc
Biến đổi thuận
(DCT, DWT..)
Các hệ số
biến đổi
(ảnh gốc)
Hệ thống
nhìn (HVS)
Ảnh bị
tấn công
Trích dữ liệu
Biến đổi thuận
(DCT, DWT..)
Ký số
13
Ký số trích
Lấy ngưỡng
Ký số
Quyết định tính tương
quan, so sánh
Ký số trích
Hình 1.9. Giai đoạn phát hiện thủy vân.
Các ứng dụng giấu thông tin và nhãn ảnh thì cố trích thông điệp gốc được nhúng.
Do không cho phép thay đổi thông điệp, vì thế việc sử dụng mã sửa đổi bắt buộc dùng
cho loại ứng dụng này khi có sự tác động hay méo dạng thông tin nhúng.
1.2.4. Một số ứng dụng [12]
Trong lĩnh vực thủy vân, các điều kiện cần thỏa mãn của một hệ thống thủy vân
luôn tùy thuộc vào ứng dụng của nó. Vì vậy, trước khi xét đến các điều kiện, cũng như
cách thiết kế hệ thống thủy vân cần xét đến các ứng dụng của kỹ thuật thủy vân. Ngoài
ra ta còn thấy rằng hiện không có một giải thuật thủy vân nào là hoàn hảo và mọi giải
thuật thủy vân đều phải chú trọng đến mức độ bền vững của dữ liệu sao cho phù hợp
với từng ứng dụng.
1.2.4.1. Bảo vệ quyền sở hữu
Đây là ứng dụng cơ bản nhất của kỹ thuật thủy vân. Mục đích của thủy vân cho
bảo vệ quyền tác giả là nhúng thông tin xác nhận bản quyền vào dữ liệu ảnh số để có
Vì thủy vân là một dạng đặc biệt của kỹ thuật che giấu dữ liệu nên người ta có
thể dùng để truyền các thông tin bí mật.
1.2.5. Một số yêu cầu của thủy vân
Tùy theo ứng dụng và mục đích thủy vân, những điều kiện cần khác nhau phát
sinh những vấn đề thiết kế khác nhau bao gồm những điều kiện sau:
- Tính bảo mật
Trong hầu hết các ứng dụng, chẳng hạn như bảo vệ bản quyền, tính bảo mật của
thông tin nhúng cần phải được bảo đảm. Với một ứng dụng thủy vân, một khi biết
được cách làm việc của bộ nhúng và bộ dò, kẻ tấn công sẽ dễ dàng loại bỏ ký số. Đối
với các hệ thống đòi hỏi tính an toàn, thì một khóa bảo mật có thể được sử dụng trong
quá trình nhúng và trích. Với mức độ bảo mật cao nhất, những người sử dụng không
được phép không thể đọc, giải mã ký số nhúng cũng như không thể phát hiện dữ liệu
có chứa đựng ký số hay không, và thông tin nhúng không thể đọc được nếu không có
khóa bí mật.
- Tính không nhìn thấy
Một trong những điều kiện quan trọng là tính trong suốt hay không nhìn thấy của
thủy vân và đặc tính này độc lập với các mục đích và các ứng dụng khác nhau. Thành
phần lạ xuất hiện trong quá trình xử lý thủy vân không những gây phiền phức không
mong muốn mà còn làm suy giảm hay phá hủy các giá trị thương mại của dữ liệu. Vì
vậy, một điều quan trọng là thiết kế thủy vân phải khai thác các hiệu quả cảm nhận của
mắt người cũng như của tai người để cực đại hóa năng lượng thủy vân mà vẫn không
vượt quá mức ngưỡng cảm nhận được.
15
+ Vô hình đối với mắt: những nhà nghiên cứu gần đây đã cố gắng giấu thủy sao
cho nó khó bị phát hiện (không hiển thị trên nền ảnh) và không ảnh hưởng nhiều đến
chất lượng mắt cũng như nội dung dữ liệu chứa. Tuy nhiên, yêu cầu này mâu thuẫn với
một số yêu cầu khác, chẳng hạn như tính bền vững là một yêu cầu quan trọng khi đối
thủy vân vào dữ liệu trước tiên trong trường hợp có nhiều thủy vân được nhúng. Điều
16
này có thể thực hiện thông qua việc đặt ra các trở ngại thiết kế như tính khả đảo của
thủy vân,...
- Tính linh hoạt
Trong các ứng dụng thương mại, chi phí tính toán cho việc nhúng và trích rất
quan trọng. Tuy nhiên, trong một số ứng dụng, việc chèn thủy vân chỉ có thể thực hiện
một lần và offline. Do đó, chi phí nhúng có thể không quan trọng bằng chi phí dò, vốn
thường phải xảy ra theo thời gian thực. Hơn nữa, chúng ta biết rằng tốc độ máy tính
tăng xấp xỉ gấp đôi sau 18 tháng, những gì được tính toán không thỏa đáng ngày nay
có thể nhanh chóng trở thành hiện thực.
- Khôi phục thủy vân cần hay không cần dữ liệu gốc
Kỹ thuật thủy vân sử dụng dữ liệu gốc trong quá trình khôi phục làm tăng tính
bền vững hơn không chỉ với các loại méo dạng như nhiễu mà còn với các loại méo
dạng trong các thao tác xử lý hình học vì nó cho phép phát hiện và đảo ngược những
méo dạng này. Trong nhiều ứng dụng, như giám sát hoặc theo dõi dữ liệu, thì việc truy
xuất dữ liệu gốc là không thể. Trong những ứng dụng khác như ứng dụng thủy vân
trong video, không thực tế khi dùng dữ liệu gốc bởi vì phải xử lý một lượng dữ liệu
lớn.
Trong khi những kỹ thuật thủy vân ở những giai đoạn đầu cần dùng dữ liệu gốc
trong quá trình khôi phục thì ngày nay có khuynh hướng xây dựng các kỹ thuật thủy
vân không cần dữ liệu gốc khi khôi phục (sử dụng khóa hoặc chỉ một phần đặc trưng
của dữ liệu gốc). Và kỹ thuật này có thể được sử dụng trong nhiều ứng dụng.
- Tính phổ thông
Thủy vân số nên áp dụng cho cả ba phương tiện truyền thông đang được chú ý là
âm thanh, hình ảnh, video. Điều này có khả năng giúp ích trong vấn đề thủy vân cho
những sản phẩm truyền thông đa phương tiện. Đặc tính này cũng dẫn tới sự thực thi
toàn bộ thuật toán thủy vân cho cả âm thanh, hình ảnh, video trên cùng một phần cứng.