CHƯƠNG 1: GIẤU TIN TRONG ẢNH BẰNG PHƯƠNG PHÁP DWT1.Tổng quan về phép biến đổi DWT Giấu tin trong ảnh là một kỹ thuật giấunhúng một lượng thông tin số nào đó vào trong một ảnh số.Có 2 mục
Trang 1HỌ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
Trang 2DANH SÁCH THÀNH VIÊN VÀ ĐÓNG GÓP
● 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
Trang 3DANH 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
Trang 4Hì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
4 Kết luận
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)
4TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Trang 5CHƯƠ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 :
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ínhbề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
Trang 62.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
Hình 2 2 Quy trình giấu tin trong ảnh sử dụng DWT
6TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Trang 73.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
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- lowHL) 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ựchiệ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
Trang 8Bướ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ácdò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
● 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
8TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Trang 9● 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:
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
Hình 2 8 Ma trận điểm ảnh S
● Đầu ra: Các ảnh phụ IA, IH, IV, ID, SA:
Hình 2 9 Ma trận điểm ảnh I sau khi biến đổi chiều ngang
9
Trang 10+ 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
Trang 11Vớ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
Trang 13• 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
BIAj theo công thức sau:
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 ứngthu đượ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
13TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Trang 14ứng các cặp BSAi BIAj này Do BSA thu được ở trên chỉ có duy nhất một khốinên chỉ cần thực hiện tính toán cho một khối đó:
DB = BSA - BIA4 = [ 445548 636643 ] -[ 554505680 492 ] = [ −109043−44151 ]
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 quathay 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 đổisau 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
BtCV = ≤ ≤ (RMSE (DBi, BIVl))
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.756RMSE (DB, BIH4) = 94.211Vậ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
Trang 15TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Trang 16RMSE (DB, BIV3) = 123.586RMSE (DB, BIV4) = 79.251Vậ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.525RMSE (DB, BID3) = 130.398RMSE (DB, BID4) =120.361Vậ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 [ −109043−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,
15TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Trang 17chiề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
Trang 18Hì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
17TIEU LUAN MOI download : skknchat123@gmail.com moi nhat
Trang 19Hì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 trinh tach tin
Tư so đô tach tin đuơc mo ta trong hinh 2.6 co thê thây đuơc cac buơc chinh cua qua trinh tach tin trong ky thuạt biên đôi DWT nhu sau [15]:
- Thưc hiẹn biên đôi DWT chia anh chưa tin I’ thanh 4 anh phu I’ A , I’ H , I’ V , I’ D - Chia cac anh I’ A , I’ H , I’ V , I’ D thanh cac khôi 4x4 điêm anh (thưc hiẹn qua trinh Blocking) B I’Ai , B I’Hk , B I’Vl , B I’Dp tuong ưng.
- Lây cac khôi phu hơp nhât B I’Ai tư anh phu I’ A sư dung khoa K 1.
- Lây cac khôi chenh lẹch DB i tư cac anh phu I’ H , I’ V , I’ D sư dung khoa K 2 , K 3 , K 4
tuong ưng.
- Tinh toan khôi bi ∀mạt B SA qua cong thưc:
B SAi = B IA’j - DB’ i , i = 1, , S An va j = 1, , I’ An
- Sư dung khoa K 1 đê săp xêp lai thư tư cua cac khôi bi mạt nhăm khoi phuc anh phu chưa
hẹ sô xâp xi cua anh bi mạt S’ A
- Phan bô cac anh phu S’ H , S’ V , S’ D la khong, sau đo thưc hiẹn DWT nguơc tren ca S’ H , S’ V , S’ D va S’ A đê thu đuơc anh bi mạt đuơc giâu.
18