Professional Documents
Culture Documents
Giấu tin trong ảnh sử dụng phương pháp dwt
Giấu tin trong ảnh sử dụng phương pháp dwt
2
DANH SÁCH HÌNH ẢNH
Hình 2. 1 Các lĩnh vực giấu tin
Hình 2. 2 Quy trình giấu tin trong ảnh sử dụng DWT
Hình 2. 3 Ví dụ biến đổi DWT
Hình 2. 4. Biến đổi theo chiều ngang
Hình 2. 5 Biến đổi theo chiều dọc
Hình 2. 6 Ảnh trước và sau khi biến đổi DWT
Hình 2. 7 Ma trận điểm ảnh I
Hình 2. 8 Ma trận điểm ảnh S
Hình 2. 9 Ma trận điểm ảnh I sau khi biến đổi chiều ngang
Hình 2. 10 Ma trận điểm ảnh I sau khi biến đổi chiều dọc
Hình 2. 11 Ma trận điểm ảnh S sau khi biến đổi chiều ngang
Hình 2. 12 Ma trận điểm ảnh S sau khi biến đổi chiều dọc
Hình 2. 13 Ảnh phụ Sa
Hình 2. 14 Ảnh phụ Ia
Hình 2. 15 Ảnh phụ Ih
Hình 2. 16 Ảnh phụ Iv
Hình 2. 17 Ảnh phụ Id
Hình 2. 18 Khối ảnh phụ Ia
Hình 2. 19 Khối ảnh phụ Ih
Hình 2. 20 Khối ảnh phụ Iv
Hình 2. 21 Khối ảnh phụ Id
Hình 2. 22 Khối ảnh BSA
Hình 2. 23 Công thức RMSE
Hình 2. 24 Tổng quan quy trình biến đổi DWT và biến đổi DWT ngược
Hình 2. 25 Ví dụ biến đổi DWT ngược theo chiều dọc(1)
Hình 2. 26 Ví dụ biến đổi DWT ngược theo chiều dọc(2)
Hình 2. 27 Ví dụ biến đổi DWT ngược theo chiều ngang(1)
Hình 2. 28 Ví dụ biến đổi DWT ngược theo chiều ngang(2)
Hình 2. 28.5 Quy trình tách tin
Hình 2. 29 Ảnh chứa,ảnh cần giấu tin và ảnh chứa đã được giấu tin
Hình 2. 30 Hình a
Hình 2. 31 Biểu đồ Histogram hình a
Hình 2. 32 Ảnh trước khi nhúng
Hình 2. 33 Ảnh sau khi nhúng
Hình 2. 34 Salt & pepper với mật độ 0.01
Hình 2. 35 Gaussian với mật độ 0.01
Hình 2. 36 Speckle với mật độ 0.01
Hình 2. 37 Giao diện chính
Hình 2. 38 Giao diện giấu ảnh trong ảnh
Hình 2. 39 Chọn ảnh chứa
Hình 2. 40 Chọn ảnh nhúng
Hình 2. 41 Biến đổi dwt 3 lần ảnh chứa
Hình 2. 42 Biến đổi dwt 3 lần ảnh nhúng
Hình 2. 43 Ảnh chứa đã được nhúng
Hình 2. 44 Ảnh đã tách tin
Hình 2. 45 Tính chỉ số MSE PSNR của ảnh giấu tin và ảnh tách tin
Hình 2. 46 Bắt lỗi ảnh chứa nhỏ hơn ảnh nhúng(1)
Hình 2. 47 Bắt lỗi ảnh chứa nhỏ hơn ảnh nhúng(2)
3
Hình 2. 48 Bắt lỗi ảnh chứa nhỏ hơn ảnh nhúng(3)
Hình 2. 49 Giao diện giấu text trong ảnh
Hình 2. 50 Giao diện mã hóa text trong ảnh
Hình 2. 51 Giao diện mã hóa text trong ảnh(1)
Hình 2. 52 Giao diện mã hóa text trong ảnh(2)
Hình 2. 53 Giao diện mã hóa text trong ảnh(3)
Hình 2. 54 Giao diện mã hóa text trong ảnh(4)
Hình 2. 55 Giao diện mã hóa text trong ảnh(5)
Hình 2. 56 Giao diện mã hóa text trong ảnh(6)
Hình 2. 57 Giao diện mã hóa text trong ảnh(7)
Hình 2. 58 Giao diện tách text khỏi ảnh(1)
Hình 2. 59 Giao diện tách text khỏi ảnh(2)
Hình 2. 60 Giao diện tách text khỏi ảnh(3)
Hình 2. 61 Giao diện tách text khỏi ảnh(4)
Hình 2. 62 Giao diện tách text khỏi ảnh(5)
Hình 2. 63 Giao diện tách text khỏi ảnh(6)
MỤC LỤC
DANH SÁCH THÀNH VIÊN VÀ ĐÓNG GÓP
DANH SÁCH HÌNH ẢNH
CHƯƠNG 1: TỔNG QUAN VỀ GIẤU TIN TRONG ẢNH DWT
1. Tổng quan giấu tin trong ảnh
2. Tổng quan giấu tin trong ảnh bằng phương pháp DWT
3. Các bước giấu tin
4. Kết luận 18
CHƯƠNG 2: ỨNG DỤNG DEMO
I. Giấu tin trong ảnh bằng phương pháp LWT-DWT-SVD(Đoàn Văn Thìn)
II. Giấu ảnh trong ảnh và giấu text trong ảnh bằng phương pháp DWT(Đoàn Quang Nhân)
4
CHƯƠNG 1: GIẤU TIN TRONG ẢNH BẰNG PHƯƠNG PHÁP DWT
⮚ Kỹ thuật giấu tin mật(Steganography) : Với mục đích đảm bảo an toàn và
bảo mật thông tin được giấu.Các kỹ thuật giấu tin mật tập trung sao cho
thông tin giấu được nhiều và người khác khó phát hiện ra thông tin có được
giấu trong ảnh
⮚ Kỹ thuật thủy vân số(Watermarking) : Với mục đích bảo mật cho chính các
đối tượng giấu tin đánh dấu.Đảm bảo một số các yêu cầu như đảm bảo tính
bền vững,khẳng định bản quyền sở hữu hay phát hiện xuyên tạc thông tin,…
Các yêu cầu cơ bản đối với giấu tin trong ảnh:
● Tính bí mật của giấu tin trong ảnh : Sự hiện diện của giấu tin trong ảnh
không làm ảnh hương tới chất lượng của ảnh đã chèn tin
● Tính bền của giấu tin:Cho phép các tin có thể tồn tại được qua các phép
biến đổi ảnh,biến dạng hình học hay các hình thức tấn công cố ý khác
● Tính an toàn:Không thể xóa được tin ra khỏi ảnh trừ khi ảnh được biến
đổi tới mức không còn mang thông tin
5
2.Tổng quan giấu tin trong ảnh bằng phương pháp DWT
● Kỹ thuật biến đổi Wavelet rời rạc (Discrete Wavelet Transformation -
DWT) là ứng dụng mới trong các ứng dụng của wavelet.
● DWT thực hiện trên miền tần số, mục đích của phép biến đổi nhằm thực
hiện thay đổi hệ số chuyển đổi của ảnh chứa, sau đó thực hiện chuyển đổi
ngược lại để thu được ảnh đã được nhúng tin.
● Phương pháp biến đổi DWT là phương pháp có ưu điểm hơn phương pháp
DCT bởi vì:
● DCT được tính toán một cách độc lập trên các khối pixel nên một lỗi
mã hóa sẽ gây ra sự không liên tục giữa các khối thu được.
● DWT sẽ thao tác trên toàn bộ ảnh. Nó có thể tách ảnh thành các dải
tần số khác nhau mà vẫn giữ được các thông tin về không gian.Việc
cân bằng giữa tính bền vững và tính vô hình có thể được thực hiện
một cách hoàn chỉnh.
6
3.Các bước giấu tin
3.1 Biến đổi DWT
● Việc biến đổi DWT có thể được thực hiện một cách dễ dàng bởi thuật toán
kim tự tháp.
● Bằng cách kết hợp 2 bộ lọc low-pass và high-pass, ảnh sẽ được phân tích
thành các dải: thấp-thấp (low-low LL), thấp-cao (low-high LH), cao thấp
(high- low HL) và cao-cao (high-high HH). Để thu được các hệ số wavelet
nhỏ hơn thì dải LL sẽ được phân tách nhỏ hơn và thu được các mẫu con.
● Quá trình xử lí này được thực hiện lại vài lần tùy theo yêu cầu của người
dùng.
● Hơn nữa, từ các hệ số DWT này, ta có thể xây dựng lại ảnh gốc.
● Quá trình xây dựng này được gọi là đảo ngược DWT (IDWT).
Việc tách wavelet có thể đƣợc thực hiện một cách dễ dàng bởi thuật toán kim tự
tháp. Bằng cách kết hợp 2 bộ lọc low-pass và high-pass, ảnh sẽ đƣợc phân tích
thành các dải: thấp-thấp (low-low LL), thấp-cao (low-high LH), caothấp (high- low
HL) và cao-cao (high-high HH). Để thu đƣợc các hệ số wavelet nhỏ hơn thì dải LL
sẽ được phân tách nhỏ hơn và thu được các mẫu con. Quá trình xử lí này được thực
hiện lại vài lần tùy theo yêu cầu của người dùng. Hơn nữa, từ các hệ số DWT này,
ta có thể xây dựng lại ảnh gốc. Quá trình xây dựng này được gọi là đảo ngược
DWT (IDWT). Nhìn chung, thủy vân được nhúng vào dải LL bền vững trước các
tấn công nhưng sẽ gây ra sự suy giảm về chất lượng ảnh. Ngược lại, sự thay đổi
các hệ số wavelet cụ thể (dải HH), tin giấu dễ bị nhìn thấy và dễ bị tấn công thay
đổi. Thông thường thủy vân số được nhúng vào dải tần số giữa HL hoặc LH bởi
chúng cân đối giữa hai điều trên, nghĩa là vẫn đảm bảo tính bền vững và vô hình
trước mắt người.
7
Bước 1:
● Thực hiện quét các điểm ảnh từ trái sang phải theo chiều ngang. Sau
đó thực hiện phép cộng và phép trừ trên các điểm ảnh lân cận. Sau đó
lặp lại quá trình tới khi tất cả các dòng được xử lý. Điểm ảnh tổng đại
diện cho phần tần số thấp (L) và điểm ảnh hiệu đại diện cho phần tần
số cao (H)Lưu trữ tổng ở bên trái và hiệu ở bên phải, như hình:
● Bước 2:
● Quét các điểm ảnh từ trên xuống dưới theo chiều dọc. Thực hiện phép
cộng và phép trừ trên các điểm ảnh lân cận và lưu trữ tổng phía trên,
hiệu ở phía dưới. Sau đó lặp lại quá trình tới khi tất cả các cột được xử
lý. Như hình:
● Cuối cùng thu được 4 dải tần phụ được biểu hiện là LL, LH, HL, HH tương
ứng. Dải LL là phần tần số thấp và do đó trông rất giống với hình ảnh ban
đầu.
8
● Sau khi thực hiện biến đổi DWT, từ ảnh gốc I thu được 4 ảnh phụ (IA, IH,
Iv, ID) tương ứng:
● IA - hệ số xấp xỉ .
● IH - hệ số chi tiết chiều ngang.
● IV - hệ số chi tiết chiều dọc.
● ID - hệ số chi tiết đường chéo .
Làm tương tự với ảnh bí mật S thu được 4 ảnh phụ (SA, SH, Sv, SD) tương
ứng.
● Đầu ra: Các ảnh phụ IA, IH, IV, ID, SA:
● Biến đổi ảnh chứa I:
● Biến đổi chiều ngang:
Hình 2. 9 Ma trận điểm ảnh I sau khi biến đổi chiều ngang
9
+ Biến đổi chiều dọc:
Hình 2. 10 Ma trận điểm ảnh I sau khi biến đổi chiều dọc
Hình 2. 11 Ma trận điểm ảnh S sau khi biến đổi chiều ngang
Hình 2. 12 Ma trận điểm ảnh S sau khi biến đổi chiều dọc
10
Hình 2. 15 Ảnh phụ Ih
● Ảnh phụ IA được chia thành các khối BIA1, BIA2, BIA3, BIA4:
11
Hình 2. 18 Khối ảnh phụ Ia
● Ảnh phụ IH được chia thành các khối BIH1, BIH2, BIH3, BIH4:
● Ảnh phụ IV được chia thành các khối BIV1, BIV2, BIV3, BIV4:
● Ảnh phụ ID được chia thành các khối BID1, BID2, BID3, BID4:
● Ảnh phụ SA gồm 4x4 điểm ảnh nên không cần thực hiện chia, khối ảnh BSA là
SA
12
• Mục đích: quá trình giấu tin thực hiện thay thế các khối ảnh, vì vậy cần tìm các
khối ảnh có sai khác nhỏ nhất nhằm đảm bảo việc giấu tin không gây thay đổi quá
lớn tới ảnh.
• Với mỗi khối BSAi trong SA, khối BIAj có lỗi nhỏ nhất trong IA được tìm sử
dụng bằng phương pháp Root Mean Square Method (RMSE) được gọi là khối phù
hợp nhất
• Rmse (lỗi trung bình bình phương) là thước đo độ hiểu quả của mô hình, Rmse
càng nhỏ tức là sai số càng ít. Khối có lỗi nhỏ nhất là khối có điểm khác biệt ít
nhất so với các khối còn lại trong ảnh
Khóa bí mật K1 chứa các địa chỉ của các khối BIAi có lỗi nhỏ nhất được lưu lại
- Ví dụ: Với đầu vào là các khối BIA của IA và các khối BSA của SA. Cần tính
toán để có được khóa K1 lưu các vị trí của các khối thích hợp nhất trong các
khối BIA với các khối BSA tương ứng
15
chiều ngang sau) và triển khai bằng cách tìm giá trị 2 số khi biết tổng và hiệu. Ví dụ dưới đây mô
tả quy trình biến đổi DWT ngược:
Hình 2. 24 Tổng quan quy trình biến đổi DWT và biến đổi DWT ngược
Trong phần biến đổi DWT,ta có thể coi quy trình biến đổi là 1 bài toán mà ta có 2 hai số a và
b,việc ta cần làm là tìm tổng và hiệu của sai số đó.Nên ngược lại,trong phần biến đổi DWT
ngược này,quy trình biến đổi ngược cũng có thể coi là 1 bài toán mà ta có tổng và hiệu của 2
số,việc ta cầm làm là tìm ra 2 số chưa biết đó.
● Biến đổi DWT ngược theo chiều dọc
Xét ví dụ cột dọc của một ma trận có 8 phần tử,ta biết được 4 phần tử ở trên là tổng của
các cặp số khác nhau,4 phần tử ở phía dưới là hiệu của các cặp số đó,từ đó ta có thể tìm
ra cặp số cần tìm.
Xét ví dụ hàng dọc đầu tiên của ma trận sau,ta có tổng và hiệu của a và b,từ đó có thể tìm
ra được a và b,sau đó làm tương tự với các cột dọc tiếp theo
16
Hình 2. 26 Ví dụ biến đổi DWT ngược theo chiều dọc (2)
● Biến đổi DWT ngược theo chiều ngang
Tương tự như biến đổi DWT nhưng ta cần xoay ngang 90 độ,xét ví dụ cột ngang của một
ma trận có 8 phần tử,ta biết được 4 phần tử bên trái là tổng của các cặp số khác nhau,4
phần tử bên phải dưới là hiệu của các cặp số đó,từ đó ta có thể tìm ra cặp số cần tìm.
Xét ví dụ hàng ngang đầu tiên của ma trận sau,ta có tổng và hiệu của a và b,từ đó có thể
tìm ra được a và b,sau đó làm tương tự với các hàng ngang tiếp theo
17
Hình 2. 28 Ví dụ biến đổi DWT ngược theo chiều ngang (2)
18
Hình 2. 28.5 Quy trình tách tin
Hình 2. 29 Ảnh chứa,ảnh cần giấu tin và ảnh chứa đã được giấu tin
3.9.2 So sánh
● DWT tỏ ra ưu thế hơn so với dct do đặc tính đa phân giải,dwt là phương pháp biển đổi
sóng nhỏ rời rạc,chuyển miền không gian ảnh thành đa phân giải.Tính đa phân giải của
sóng nhỏ hữu ích trong việc phân phối thông tin vào đối tượng bao phủ trong khi vẫn
đảm bảo tính chất bền vững và chất lượng hiển thị.Thể hiện ở bước:
⮚ Biến đổi DWT
⮚ Chia khối
Hạn chế của DCT là dung lượng nhúng nhỏ và các vấn đề tạo tác.DWT thì có dung lượng
nhúng lớn hơn so với DCT.Chúng chống lại tiếng ồn và các cuộc tấn công xử lý tín hiệu
mạnh hơn
● Các kỹ thuật dựa trên DFT đưa ra các lỗi vòng tròn khiến chúng không phù hợp với kỹ
thuật in mật mã.Ngược lại,DWT cung cấp thông tin về không gian cũng như thời
gian.Thể hiện ở:
⮚ Bước kết hợp khôi(Lưu vị trí khối phù hợp tại khóa K1)
⮚ Bước thay thế khối(Lưu vị trí các khối phù hợp tại khóa K2,K3,K4)
19
=> Do đó,DWT đã được sử dụng rộng rai trong việc ghi chép hình ảnh
● Tuy nhiên,kĩ thuật này kém hiệu quả nhất trong việc chống lại các cuộc tấn công xử lý
hình ảnh.Để giải quyết vấn đề này,thì cần tìm ra phương pháp thay thế khối tối ưu để ẩn
dữ liệu vào hệ số chuyển đổi của ảnh chứa có khả năng chống lại các cuộc tấn công mạnh
mẽ
Biểu đồ Histogram thể hiện độ phân cường độ mức xám trong ảnh
20
Hình 2. 30 Hình a
21
Hình 2. 32 Ảnh trước khi nhúng
Khi trích xuất ảnh cũng sẽ thu được bức ảnh giống ảnh gốc
Nhưng khi truyền ảnh nhúng sẽ bị tấn công. Sau đây là một vài vd về phương thức tấn công như
salt & pepper, Gaussian, speckie.
22
Hình 2. 34 Salt & pepper với mật độ 0.01
II.Giấu ảnh trong ảnh và giấu text trong ảnh bằng phương pháp DWT(Đoàn
Quang Nhân)
24
Hình 2. 38 Giao diện giấu ảnh trong ảnh
Nhấn nút “Chon Anh Chua”
26
Hình 2. 42 Biến đổi dwt 3 lần ảnh nhúng
27
Hình 2. 43 Ảnh chứa đã được nhúng
28
Hình 2. 44 Ảnh đã tách tin
Nhấn nút “MSE Giau Tin”,”PSNR Giau Tin”,”MSE Tach Tin”,”PSNR Tach Tin”
Hình 2. 45 Tính chỉ số MSE,PSNR của ảnh giấu tin và ảnh tách tin
Nhấn nút “Chon Anh Chua”
29
Hình 2. 46 Bắt lỗi ảnh chứa nhỏ hơn ảnh nhúng(1)
Nhấn nút “Anh Nhung”
Hệ thống thấy kích thước ảnh nhúng nhỏ hơn kích thước ảnh chứa,hiện lên thông báo như ảnh
30
Hình 2. 48 Bắt lỗi ảnh chứa nhỏ hơn ảnh nhúng(3)
31
Hình 2. 50 Giao diện mã hóa text trong ảnh
Nhập text cần giấu vào ô đầu tiên,và nhấn nút “Đổi Text Sang Mã Nhị Phân”
32
ấn nút “Mã Hóa AES Mã Nhị Phân”
33
Hình 2. 55 Giao diện mã hóa text trong ảnh(5)
Ấn nút “Histogram ảnh chứa”,”Histogram Ảnh Đã Nhúng”,”PSNR”,”MSE”
34
Hình 2. 57 Giao diện mã hóa text trong ảnh(7)
35
Hình 2. 59 Giao diện tách text khỏi ảnh(2)
36
Hình 2. 61 Giao diện tách text khỏi ảnh(4)
Ấn nút “giải mã AES sang mã nhị phân”
38