You are on page 1of 38

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

KHOA CÔNG NGHỆ THÔNG TIN I


-----🕮🕮&🕮🕮-----

BÁO CÁO BÀI TẬP LỚN

HỌC PHẦN : CÁC KỸ THUẬT GIẤU TIN


CHỦ ĐỀ : TỔNG QUAN VỀ ÂM THANH VÀ KỸ THUẬT GIẤU TIN
TRÊN MIỀN TẦN SỐ DWT

GIẢNG VIÊN: Đỗ Xuân Chợ


NHÓM LỚP: D18-017
NHÓM BÀI TẬP 09
LỚN:

THÀNH VIÊN MÃ SINH VIÊN


Nguyễn Hoàng Anh B18DCAT006
Đoàn Quang Nhân B18DCAT177
Đoàn Văn Thìn B18DCAT241
Nguyễn Thanh Tùng B18DCAT225
Vũ Ngọc Cường B18DCAT025
Đào Xuân Phong B18DCAT182
DANH SÁCH THÀNH VIÊN VÀ ĐÓNG GÓP

Thành viên Đóng góp


Nguyễn Hoàng Anh ● Quy trình tách tin

Đoàn Quang Nhân ● Tổng hợp và làm báo cáo


● Sắp xếp các khối hệ số
● Biến đổi DWT ngược
● Kết luận
● Nghiên cưu và báo cáo demo

Đoàn Văn Thìn ● Nghiên cứu và báo cáo demo

Nguyễn Thanh Tùng ● Tính chênh lệch khối


● Thay thế khối
Vũ Ngọc Cường ● Chia khối
● Kết hợp khối
Đào Xuân Phong ● Tổng quan về phương pháp biến đổi DWT
● Biến đổi 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

1.Tổng quan về phép biến đổi DWT


Giấu tin trong ảnh là một kỹ thuật giấu(nhúng) một lượng thông tin số nào đó vào
trong một ảnh số.Có 2 mục đích chính của việc giấu thông tin bao gồm :
● Bảo mật cho những thông tind được giấu
● Bảo mật cho chính các đối tượng giấu tin
Có thể nhận thấy rằng sự khác biệt giữa hai mục đích.Trong thực tế,hai mục đích
này đã phát triển thành hai lĩnh vực với những yêu cầu và tính chất khác nhau.

Hình 2. 1 Các lĩnh vực giấu tin

⮚ 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.

● Sơ đồ quy trình giấu tin trong ảnh sử dụng DWT:

Hình 2. 2 Quy trình giấu tin trong ảnh sử dụng DWT

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.

Hình 2. 3 Ví dụ biến đổi DWT

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:

Hình 2. 4 Biến đổi theo chiều ngang

● 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:

Hình 2. 5 Biến đổi theo chiều dọc

● 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.

Hình 2. 6 Ví dụ ảnh trước và sau khi biến đổi DWT

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.

● Để hiểu rõ hơn về quá trình biến đổi DWT xét ví dụ sau:


● Đầu vào: Với ảnh chứa I dưới dạng ma trận điểm ảnh 8x8 như sau:

Hình 2. 7 Ma trận điểm ảnh I

● Ảnh bí mật S dưới dạng ma trận 4x4 như sau:

Hình 2. 8 Ma trận điểm ảnh S

● Đầ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

● Biến đổi ảnh bí mật S:


● Biến đổi chiều ngang:

Hình 2. 11 Ma trận điểm ảnh S sau khi biến đổi chiều ngang

● Biến đổi chiều dọc:

Hình 2. 12 Ma trận điểm ảnh S sau khi biến đổi chiều dọc

● Thu được ảnh phụ SA:

Hình 2. 13 Ảnh phụ Sa

● Thu được ảnh phụ IA:

Hình 2. 14 Ảnh phụ Ia

● Ảnh phụ IH:

10
Hình 2. 15 Ảnh phụ Ih

● Ảnh phụ IV:

Hình 2. 16 Ảnh phụ Iv

● Ảnh phụ ID:

Hình 2. 17 Ảnh phụ Id

3.2 Chia Khối


- Mục đích củc chia khối: thuật toán thực hiện thay đổi và biến đổi theo đơn vị từng khối
ảnh vậy nên cần thực hiện chia ảnh theo từng khối.
● Các ảnh phụ SA, IA, IH, Iv, ID, thành các khối 4x4 điểm ảnh như sau:
SA = {BSAi, 1 ≤ i ≤ SAn}
IA = {BIAj, 1 ≤ j ≤ IAn}
IH = {BIHk, 1 ≤ k ≤ IHn}
IV = {BIVl, 1 ≤ l ≤ IVn}
ID = {BIDp, 1 ≤ p ≤ IDn}
Với SAn, IAn, IHn, Ivn, IDn lần lượt là tổng số khối mà các ảnh SA, IA, IH, Iv, ID được
chia tương ứng. BSAi, BIAj, BIhk, BIVl, BIdp lần lượt là các khối thứ i, j, k, l, p tương
ứng của các ảnh phụ SA, IA, IH, Iv, ID.
Với đầu vào là các ảnh phụ SA, IA, IH, IV, ID thu được ở bước biến đối DWT. Đầu ra:
các khối ảnh của từng ảnh phụ. Quá trình biến đổi như sau:

● Ả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:

Hình 2. 19 Khối ảnh phụ Ih

● Ảnh phụ IV được chia thành các khối BIV1, BIV2, BIV3, BIV4:

Hình 2. 20 Khối ảnh phụ Iv

● Ảnh phụ ID được chia thành các khối BID1, BID2, BID3, BID4:

Hình 2. 21 Khối ảnh phụ Id

● Ả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

Hình 2. 22 Khối ảnh BSA

3.3 Kết hợp khối

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

Hình 2. 23 Công thức RMSE

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

- RMSE (BSA, BIA1) = = 156.002


RMSE (BSA, BIA2) = 131.237
RMSE (BSA, BIA3) = 120.898
RMSE (BSA, BIA4) = 98.065
- RMSE (BSA, BIA4) có giá trị thấp nhất, vậy nên khối BIA4 là khối phù hợp
nhất với BSA. Khóa K1 lưu giá trị 4 - vị trí khối BIA4
3.4 Tính chênh lệch khối
Thực hiện tính giá trị chênh lệch khối DBi giữa khối BSAi và khối phù hợp nhất
BIAj theo công thức sau:
DBi = BSAi - ( 𝐦𝐢𝐧 𝟏 ≤𝒋 ≤ 𝑰𝑨𝒏 BIAj)
Mục đích của tính chênh lệnh khối: thực hiện tính toán được khối chênh lệch DBi
để sử dụng thay thế vào vị trí các khối phù hợp nhất nằm trong các ảnh phụ IV, IH,
ID. Ví dụ với đầu vào là các khối BSAi và các khối BIAj phù hợp nhất tương ứng
thu được ở bước kết hợp khối thì đầu ra cần tính độ chênh lệch khối DBi tương
13
ứng các cặp BSAi BIAj này. Do BSA thu được ở trên chỉ có duy nhất một khối nên
chỉ cần thực hiện tính toán cho một khối đó:
DB = BSA - BIA4 = [ 445 548 636 643 ] -[ 554 505 680 492 ] =[ −109 043−44 151 ]

3.5 Thay thế khối


Mục đích của thay thế khối: thuật toán thực hiện giấu tin vào trong ảnh thông qua
thay thế các khối chênh lệch với các khối được lựa chọn nhằm đảm bảo thay đổi
sau khi giấu tin là thấp nhất. Với mỗi khối chênh lệch DBi, thực hiện tìm khối phù
hợp nhất BIHk trong IH bằng thuật toán RMSE. Tương tự thực hiện tìm khối phù
hợp nhất BIVl trong IH, tìm khối phù hợp
nhất BIDp bằng thuật toán RMSE. Quá trình thực hiện được mô tả qua công thức
sau:
BtCH = 𝐦𝐢𝐧 𝟏 ≤𝒌 ≤ 𝑰𝑯𝒏 (RMSE (DBi, BIHk))
BtCV = 𝐦𝐢𝐧 𝟏 ≤𝒍 ≤ 𝑰𝑽𝒏 (RMSE (DBi, BIVl))
BtCD = 𝐦𝐢𝐧 𝟏 ≤𝒑 ≤ 𝑰𝑫𝒏 (RMSE (DBi, BIDp))
Thay thế DBi vào khối thích hợp nhất trong các khối BtCH, BtCV, BtCD. Các
khóa K2, K3, K4 chứa các địa chỉ k, l, p tương ứng với các khối BtCH, BtCV,
BtCD
DBi ← min { BtCH, BtCV, BtCD }
Để hiểu rõ hơn về các phép tính toán và biến đổi trong bước thay thế khối. Hãy
xem
xét ví dụ dưới đây.
Đầu vào: Các khối chênh lệch DBi, các khối của ảnh phụ IH, IV, ID
Đầu ra: Khóa K2, K3, K4 lưu vị trí các khối phù hợp nhất với DBi tương ứng trong
các
khối BIHk, BIVl, BIDp của ảnh phụ IH, IV, ID.
Các bước tiến hành như sau:
- Thực hiện tính khối phù hợp nhất với khối DB trong các khối BIH:
RMSE (DB, BIH1) = 98.710
RMSE (DB, BIH2) = 82.058
RMSE (DB, BIH3) = 113.756
RMSE (DB, BIH4) = 94.211
Vậy: Khối BIH2 phù hợp với DB nhất trong các khối của IH.
- Thực hiện tính khối phù hợp nhất với khối DB trong các khối BIV
RMSE (DB, BIV1) = 150.109
RMSE (DB, BIV2) = 103.245
14
RMSE (DB, BIV3) = 123.586
RMSE (DB, BIV4) = 79.251
Vậy: Khối BIV4 phù hợp với DB nhất trong các khối của IV
- Thực hiện tính khối phù hợp nhất với khối DB trong các khối BID
RMSE (DB, BID1) = 86.803
RMSE (DB, BID2) = 105.525
RMSE (DB, BID3) = 130.398
RMSE (DB, BID4) =120.361
Vậy: Khối BID1 phù hợp với DB nhất trong các khối của ID
-Tìm khối phù hợp nhất với khối DB trong 3 khối BIH2, BIV4, BID1 vừa tìm
được. Từ các kết quả trên thấy rằng: Khối BIV4 phù hợp nhất với RMSE (DB,
BIV4) = 79.251 vì kết quả thấp nhất.
Kết luận: khóa K3 lưu cặp giá trị (1, 4) tương ứng i=1 và k=4.
Thực hiện thay thế DB vào vị trí BIV4, BIV4 thu được [ −109 043−44 151 ]

3.6 Sắp xếp các khối hệ số


Sau khi thực hiện thay thế các khối,ta:
▪ Sắp xếp lại các khối lại theo đúng thứ tự như cũ trở lại thành các ảnh phụ Ia,Ih,Iv,Id
▪ Sau đó,đó sắp xếp lại 4 ảnh Ia,Ih,Iv,Id lại thành ma trận điểm ảnh hoàn chỉnh
=> Ma trận điểm ảnh đã được nhúng khối ảnh bí mật
=> Thông qua ma trận điểm ảnh trên,thực hiện khôi phục lại ảnh qua phép biến đổi DWT ngược

3.7 Biến đổi DWT ngược


Mục đích của quá trình DWT ngược là đưa ảnh từ các ảnh phụ trở về ảnh toàn vẹn chứa tin đã
giấu. Cách thức thực hiện DWT có trình tự ngược với DWT (thực hiện theo chiều dọc trước,

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.

Hình 2. 25 Ví dụ biến đổi DWT ngược theo chiều dọc (1)

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.

Hình 2. 27 Ví dụ biến đổi DWT ngược theo chiều ngang (1)

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)

3.8 Quy trình tách tin


Quy trình tách tin
Từ sơ đồ tách tin được mô tả trong hình 2.6 có thể thấy được các bước chính của quá
trình tách tin trong kỹ thuật biến đổi DWT như sau [15]:
- Thực hiện biến đổi DWT chia ảnh chứa tin I’ thành 4 ảnh phụ I’A, I’H, I’V, I’D.
- Chia các ảnh I’A, I’H, I’V, I’D thành các khối 4x4 điểm ảnh (thực hiện quá trình
Blocking) BI’Ai, BI’Hk, BI’Vl, BI’Dp tương ứng.
- Lấy các khối phù hợp nhất BI’Ai từ ảnh phụ I’A sử dụng khóa K1.
- Lấy các khối chênh lệch DBi từ các ảnh phụ I’H, I’V, I’D sử dụng khóa K2, K3, K4 tương
ứng.
- Tính toán khối bí mật BSA qua công thức:
BSAi = BIA’j - DB’i, ∀i = 1, ..., SAn và j = 1, ..., I’An
- Sử dụng khóa K1 để sắp xếp lại thứ tự của các khối bí mật nhằm khôi phục ảnh phụ
chứa hệ số xấp xỉ của ảnh bí mật S’A
- Phân bổ các ảnh phụ S’H, S’V, S’D là không, sau đó thực hiện DWT ngược trên cả S’H,
S’V, S’D và S’A để thu được ảnh bí mật được giấu.

18
Hình 2. 28.5 Quy trình tách tin

3.9 Kết luận


3.9.1 Tổng kết
Phương pháp biến đổi DWT bao gồm tất cả 7 bước :
Bước 01: Biến đổi DWT
Bước 02: Chia khối(Blocking)
Bước 03: Kết hợp khối(Matching)
Bước 04: Tính chênh lệch khối(Difference Blocks Computation)
Bước 05: Thay thế khối(Block Replacement)
Bước 06: Sắp xếp các khối hệ số(Rearrangment of Coeficients Blocks)
Bước 07: Biến đổi DWT ngược

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ẽ

CHƯƠNG 2: DEMO GIẤU TIN TRONG ẢNH BẰNG PHƯƠNG PHÁP


DWT
I.Giấu tin trong ảnh bằng phương LWT-DWT-SVD(Đoàn Văn Thìn)
Ứng dụng demo sử dụng 3 phương pháp để giấu tin trong ảnh :
● LWT lifling waveet transform biến đổi sóng wavelet động
● DWT discrete wavelet transform biến đổi sóng wavelet rời rạc
● SVD singular value decomposition

Ưu điểm dùng 3 phương pháp :


● Làm ảnh khó bị tấn công khi dung ảnh để truyền dữ liệu đi kể cả khi bị tấn công cũng có
thể được đảm bảo

Biểu đồ Histogram thể hiện độ phân cường độ mức xám trong ảnh

20
Hình 2. 30 Hình a

Hình 2. 31 Biểu đồ Histogram của hình a


Khi nhúng ảnh sẽ thu được bước ảnh mới có biều đồ Histogram gần như không thay đổi với bức
ảnh gốc

21
Hình 2. 32 Ảnh trước khi nhúng

Hình 2. 33 Ảnh sau 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.

TH salt & pepper với mật độ 0.01

22
Hình 2. 34 Salt & pepper với mật độ 0.01

TH Gaussian với mật độ 0.01

Hình 2. 35 Gaussian với mật độ 0.01

TH speckie với mật độ 0.01


23
Hình 2. 36 Speckle 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)

Hình 2. 37 Giao diện chính

1.Giấu ảnh trong ảnh bằng phương pháp DWT

24
Hình 2. 38 Giao diện giấu ảnh trong ảnh
Nhấn nút “Chon Anh Chua”

Hình 2. 39 Chọn ảnh chứa

Nhấn nút “Chon Anh Nhung”


25
Hình 2. 40 Chọn ảnh nhúng
Nhấn nút “Bien Doi DWT 3 Lan Anh Chua”

Hình 2. 41 Biến đổi dwt 3 lần ảnh chứa


Nhấn nút “Bien Doi DWT 3 Lan Anh Nhung”

26
Hình 2. 42 Biến đổi dwt 3 lần ảnh nhúng

Nhấn nút “Anh Giau Tin”

27
Hình 2. 43 Ảnh chứa đã được nhúng

Nhấn nút “Anh Tach Tin”

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ình 2. 47 Bắt lỗi ảnh chứa nhỏ hơn ảnh nhúng(2)

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)

2.Giấu text trong ảnh bằng phương pháp DWT

Hình 2. 49 Giao diện giấu text trong ảnh

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”

Hình 2. 51 Giao diện mã hóa text trong ảnh(1)

32
ấn nút “Mã Hóa AES Mã Nhị Phân”

Hình 2. 52 Giao diện mã hóa text trong ảnh(2)


File AES_encrypted.txt được sinh ra

Hình 2. 53 Giao diện mã hóa text trong ảnh(3)


Chọn ảnh chứa để giấu text trong ảnh,ấn nút”Chọn Ảnh Chứa”

Hình 2. 54 Giao diện mã hóa text trong ảnh(4)

Ấn nút “giấu tin trong ảnh chứa”

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”

Hình 2. 56 Giao diện mã hóa text trong ảnh(6)

File ảnh stego_image.png được sinh ra

34
Hình 2. 57 Giao diện mã hóa text trong ảnh(7)

Giao diện giải mã ảnh đã nhúng

Hình 2. 58 Giao diện tách text khỏi ảnh(1)

Ấn nút chọn ảnh đã nhúng

35
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)

Ấn nút “Tách Tin”

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”

Hình 2. 62 Giao diện tách text khỏi ảnh(5)

Ấn nút “Giải mã nhị phân sang text”


37
Hình 2. 63 Giao diện tách text khỏi ảnh(6)

38

You might also like