Tìm hiểu mã hóa ảnh sử dụng thuật toán logic mờ, An toàn cơ sở dữ liệu - Học Viên Kỹ Thuật Mật Mã
GIỚI THIỆU VỀ LOGIC MỜ. Sự ra đời. Logic mờ, hay còn gọi là Fuzzy Logic, được giới thiệu bởi giáo sư Lotfi A. Zadeh vào năm 1965 tại Đại học California, Berkeley.
Preview text:
Mục Lục
LỜI MỞ ĐẦU. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 4 -
Phần 1: GIỚI THIỆU VỀ LOGIC MỜ. . . . . . . . . . . . . . . . . . . . . . . . . . - 5 -
1. Sự ra đời. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - 5 - •
Động lực Phát Triển. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - 5 - •
Khái Niệm Cơ Bản. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - 5 -
2. Ứng dụng logic mờ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 5 - •
Ứng Dụng Ban Đầu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 5 - •
Tác Động và Phát Triển Sau Này. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - 6 -
Phần 2: TÌM HIỂU VỀ MÃ HÓA ẢNH. . . . . . . . . . . . . . . . . . . . . . . . . - 7 -
1. Mã Hóa Ảnh Sử Dụng Biến Đổi Giá Trị. . . . . . . . . . . . . . . . . . . - 7 -
2. Mã Hóa Ảnh Sử Dụng Hoán Vị Pixel. . . . . . . . . . . . . . . . . . . . . .- 7 -
3. Mã Hóa Ảnh Sử Dụng Hệ Thống Hỗn Loạn. . . . . . . . . . . . . . . .- 8 -
Phần 3: MÃ HÓA HÌNH ẢNH SỬ DỤNG LOGIC MỜ. . . . . . . . . . . . - 9 -
1. Giới thiệu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - 9 -
2. Cách để mã hóa một hình ảnh sử dụng logic mờ. . . . . . . . . . . . - 9 -
3. Quá trình giải mã. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 11 -
4. Phân tích đánh giá kết quả. . . . . . . . . . . . . . . . . . . . . . . . . . . . . - 14 - •
Phân tích tính bảo mật. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - 14 - •
Phân tích thống kê. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 14 - •
Phân tích biểu đồ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 14 - 2 •
Phân tích PSNR và MSE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 15 - •
Phân tích theo size. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 16 -
Phần 4: THỰC NGHIỆM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 16 -
1. Giới thiệu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - 16 -
2. Phương Pháp. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - 17 -
2.1. Hàm làm mờ ảnh (Fuzzy Image Function). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - 17 -
2.2. Hàm mã hóa ảnh (Encrypt Image Function). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 17 -
2.3. Hàm giải mã ảnh (Decrypt Image Function). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 18 -
2.4. Hàm khôi phục ảnh (Restore Image Function). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 19 -
3. Các bước thực hiện. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - 20 - •
Đọc ảnh: Đọc ảnh màu fuzzy.jpg và chuyển đổi sang ảnh grayscale. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 20 - •
Tạo ảnh mờ hóa: Sử dụng hàm fuzzyimg để làm mờ ảnh. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 20 - •
Mã hóa ảnh: Sử dụng hàm encrypt_image để mã hóa ảnh đã mờ hóa với một khóa ngẫu nhiên. . . . . . . . .- 20 - •
Giải mã ảnh: Sử dụng hàm decrypt_image để giải mã ảnh đã mã hóa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . - 20 -
4. Kết quả. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 20 - •
Ảnh gốc (Original Image): Đây là ảnh ban đầu được đọc từ tệp fuzzy.jpg. . . . . . . . . . . . . . . . . . . . . . . . . - 20 - •
Ảnh mờ hóa (Fuzzi昀椀ed Image): Đây là ảnh sau khi được chuyển đổi sang grayscale và làm mờ. . . . . . . . .- 21 - •
Ảnh đã mã hóa (Encrypted Image): Đây là ảnh đã mờ hóa được mã hóa bằng phép XOR với khóa ngẫu nhiên. - 21 - •
Ảnh đã giải mã (Decrypted Image): Đây là ảnh sau khi giải mã từ ảnh đã mã hóa. . . . . . . . . . . . . . . . . . . .- 22 - •
Ảnh đã khôi phục (Restored Image): Đây là ảnh sau khi khôi phục lại từ ảnh đã mờ hóa. . . . . . . . . . . . . . - 22 -
Phần 5: ĐƯA RA KẾT LUẬN ĐỊNH HƯỚNG. . . . . . . . . . . . . . . . . . - 23 -
1. Đưa ra kết luận. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 23 -
2. Định hướng. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 24 - 3 LỜI MỞ ĐẦU.
Trong thời đại kỹ thuật số hiện nay, sự bùng nổ của công nghệ thông tin và
truyền thông đã mang lại nhiều tiện ích vượt bậc, đồng thời cũng đặt ra nhiều thách
thức mới về bảo mật và an toàn thông tin. Một trong những thách thức lớn nhất là bảo
vệ dữ liệu hình ảnh kỹ thuật số trước các nguy cơ xâm nhập và tấn công mạng. Với sự
phát triển của các ứng dụng công nghệ trong mọi lĩnh vực, từ y tế, tài chính đến giải
trí, việc đảm bảo an toàn cho các hình ảnh kỹ thuật số trở nên cấp thiết hơn bao giờ hết.
Mã hóa ảnh là một phương pháp quan trọng để bảo vệ hình ảnh khỏi các hành
vi truy cập trái phép và đảm bảo tính toàn vẹn của dữ liệu. Tuy nhiên, các phương
pháp mã hóa truyền thống thường gặp phải nhiều hạn chế khi phải đối mặt với các
dạng tấn công ngày càng phức tạp. Để khắc phục điều này, logic mờ (Fuzzy Logic) đã
được nghiên cứu và ứng dụng như một giải pháp tiềm năng nhằm nâng cao hiệu quả của việc mã hóa ảnh.
Logic mờ, được giới thiệu bởi giáo sư Lotfi A. Zadeh vào những năm 1960,
cung cấp một cách tiếp cận mới để xử lý các thông tin không chính xác hoặc không rõ
ràng. Thay vì chỉ sử dụng các giá trị đúng hoặc sai tuyệt đối, logic mờ cho phép sử
dụng một dải giá trị liên tục, từ đó mô hình hóa tốt hơn các tình huống thực tế phức
tạp. Áp dụng logic mờ vào mã hóa ảnh không chỉ giúp cải thiện độ an toàn mà còn
tăng cường khả năng chống lại các phương pháp tấn công tiên tiến.
Bài báo cáo này sẽ đi sâu vào việc tìm hiểu phương pháp mã hóa ảnh sử dụng
logic mờ. Chúng ta sẽ khám phá các nguyên lý cơ bản của logic mờ, cách thức tích
hợp vào quá trình mã hóa ảnh và những lợi ích nổi bật mà phương pháp này mang lại.
Đồng thời, báo cáo cũng sẽ trình bày các ứng dụng thực tiễn và tiềm năng phát triển
của mã hóa ảnh sử dụng logic mờ trong tương lai. Qua đó, hy vọng mang lại cho
người đọc một cái nhìn toàn diện về sự kết hợp giữa mã hóa ảnh và logic mờ, mở ra
hướng đi mới cho việc bảo vệ thông tin trong thời đại số. 4
Phần 1: GIỚI THIỆU VỀ LOGIC MỜ. 1. Sự ra đời.
Logic mờ, hay còn gọi là Fuzzy Logic, được giới thiệu bởi giáo sư Lotfi A.
Zadeh vào năm 1965 tại Đại học California, Berkeley. Sự ra đời của logic mờ xuất
phát từ nhu cầu giải quyết các vấn đề mà logic cổ điển (Boolean logic) không thể đáp
ứng được do tính chất mơ hồ và không chắc chắn của chúng. Logic cổ điển chỉ cho
phép các giá trị đúng hoặc sai tuyệt đối, trong khi nhiều hiện tượng trong thế giới thực
lại không thể được mô tả một cách chính xác bằng hai trạng thái này.
• Động lực Phát Triển
Trong quá trình nghiên cứu, giáo sư Zadeh nhận thấy rằng nhiều hệ thống thực tế
hoạt động dựa trên các quy tắc không rõ ràng và không chính xác, chẳng hạn như
ngôn ngữ tự nhiên của con người. Để mô hình hóa và xử lý những hệ thống này, cần
có một phương pháp tiếp cận mới cho phép làm việc với các giá trị không chắc chắn và mơ hồ. • Khái Niệm Cơ Bản
Logic mờ mở rộng các khái niệm của logic cổ điển bằng cách giới thiệu các giá trị
mờ. Thay vì chỉ có hai giá trị 0 và 1, logic mờ cho phép các giá trị nằm trong khoảng
từ 0 đến 1, biểu thị mức độ đúng của một khẳng định. Điều này được thực hiện thông
qua các hàm thành viên (membership functions), xác định mức độ thuộc về của một
phần tử đối với một tập mờ. 2. Ứng dụng logic mờ.
• Ứng Dụng Ban Đầu
Ban đầu, logic mờ được áp dụng chủ yếu trong các lĩnh vực như điều khiển học và
hệ thống điều khiển. Ví dụ điển hình là hệ thống điều khiển nhiệt độ, nơi các quyết
định được đưa ra dựa trên các quy tắc mờ thay vì các ngưỡng cố định. Điều này giúp
các hệ thống trở nên linh hoạt và hiệu quả hơn trong việc xử lý các biến đổi không lường trước. 5
• Tác Động và Phát Triển Sau Này
Sau khi được giới thiệu, logic mờ nhanh chóng thu hút sự quan tâm của cộng đồng
nghiên cứu và ứng dụng rộng rãi trong nhiều lĩnh vực khác nhau, bao gồm trí tuệ nhân
tạo, nhận dạng mẫu, xử lý ngôn ngữ tự nhiên và cả trong các hệ thống tài chính và y
tế. Sự ra đời của logic mờ đã mở ra một hướng nghiên cứu mới, cho phép các nhà
khoa học và kỹ sư tiếp cận và giải quyết các vấn đề phức tạp mà trước đây khó có thể xử lý được.
Qua nhiều thập kỷ phát triển, logic mờ đã chứng minh được vai trò quan trọng và tiềm
năng to lớn trong việc giải quyết các vấn đề thực tiễn. Các nguyên lý của logic mờ
không chỉ giúp cải thiện hiệu quả của các hệ thống hiện tại mà còn mở ra nhiều cơ hội
mới cho các nghiên cứu và ứng dụng trong tương lai. 6
Phần 2: TÌM HIỂU VỀ MÃ HÓA ẢNH
Mật mã bao gồm hai quá trình chính: mã hóa và phân tích tiền kỹ thuật số. Mã hóa
là quá trình chuyển đổi một thông điệp dễ đọc thành một định dạng không thể đọc
được, dựa trên một bộ quy tắc gọi là thuật toán mã hóa. Hiện nay, các thuật toán mã
hóa chủ yếu tập trung vào việc đảm bảo bảo mật, nhưng cũng cần cân nhắc đến khả
năng xử lý và băng thông. Đối với người dùng có kết nối băng thông thấp, cần có các
thuật toán mã hóa sử dụng công suất xử lý thấp. Mặc dù các thuật toán bảo mật cao
thường yêu cầu ít sức mạnh xử lý hơn các thuật toán bảo mật thấp, một thuật toán mã
hóa mới có thể kiểm soát cả mức bảo mật và mức xử lý mong muốn sẽ là một cải tiến
lớn cho các ứng dụng thực tế.
Các phương pháp mã hóa ảnh kỹ thuật số có thể được phân thành ba loại chính: • Biến đổi giá trị • Hoán vị vị trí pixel • Hệ thống hỗn loạn
1. Mã Hóa Ảnh Sử Dụng Biến Đổi Giá Trị
Phương pháp mã hóa và giải mã hình ảnh lượng tử đề xuất việc bảo vệ thông
tin liên lạc bằng cách mã hóa thông tin ban đầu thành biểu thức hình ảnh thang độ
xám lượng tử. Các phép biến đổi hình ảnh lượng tử được thiết kế để lưu trữ hình ảnh
thang độ xám ở trạng thái lượng tử, dựa trên giá trị và vị trí thang màu xám cho mỗi pixel.
Các phép biến đổi hình học lượng tử được thực hiện thông qua các mạch lượng
tử, cho phép duy trì tính toàn vẹn và bảo mật của thông tin mà không bị nghe trộm
nếu không có khóa riêng. Điều này giúp đảm bảo rằng thông tin sẽ không bị xâm phạm.
2. Mã Hóa Ảnh Sử Dụng Hoán Vị Pixel
Kỹ thuật mã hóa này kết hợp các hệ thống hỗn loạn để hoán vị pixel, do hệ
thống hỗn loạn rất nhạy cảm với giá trị ban đầu và các tham số hệ thống. Phương
pháp này tạo ra một không gian khóa rất lớn, giúp loại bỏ hoàn toàn các đặc điểm của
hình ảnh gốc, làm rối loạn phân phối các mức RGB và giảm đáng kể khả năng bị tấn công.
Kỹ thuật FIPS PUB 140-1, hệ số tương quan, NPCR và UACI được sử dụng để
kiểm tra phân tích bảo mật và phân phối các yếu tố khác biệt của các biến trong hình 7
ảnh được mã hóa. Kết quả cho thấy các hình ảnh được mã hóa có tính bảo mật cao và
tiềm năng ứng dụng mạnh mẽ trong mã hóa hình ảnh màu kỹ thuật số.
3. Mã Hóa Ảnh Sử Dụng Hệ Thống Hỗn Loạn
Một phương pháp mã hóa hình ảnh mới kết hợp việc định vị các vị trí pixel và thay
đổi giá trị xám của các pixel hình ảnh để đảm bảo an toàn. Thuật toán này có ba ưu điểm chính:
• Không gian khóa đủ lớn để chống lại tất cả các loại tấn công brute-force.
• Hình ảnh mã hóa có thuộc tính thống kê tốt.
• Thuật toán rất nhạy cảm với các khóa bí mật.
Một thuật toán mã hóa hình ảnh mới dựa trên siêu hỗn loạn sử dụng ma trận tổng
thể để định vị các vị trí pixel của hình ảnh và sau đó thay đổi các giá trị màu xám của
hình ảnh xáo trộn. Phân tích bảo mật cho thấy rằng không gian chính của thuật toán
đủ lớn để ngăn chặn các cuộc tấn công brute-force.
Các phương pháp mã hóa ảnh sử dụng logic mờ mang lại nhiều lợi ích, bao gồm
bảo mật cao và khả năng ứng dụng rộng rãi trong việc bảo vệ hình ảnh kỹ thuật số.
Những phương pháp này không chỉ giúp đảm bảo an toàn cho thông tin mà còn nâng
cao hiệu quả xử lý và tiết kiệm tài nguyên. 8
Phần 3: MÃ HÓA HÌNH ẢNH SỬ DỤNG LOGIC MỜ. 1. Giới thiệu
Logic mờ cung cấp một cách đơn giản để đi đến một kết luận chắc chắn dựa trên
thông tin đầu vào mơ hồ, không chính xác, ồn ào hoặc bị thiếu. Trong các quy tắc
logic mờ và các bộ thành viên được sử dụng để đưa ra quyết định.
Để đạt được bảo mật và xử lý thấp, thuật toán sử dụng các khóa biến. Vị trí số 0
cho thuật toán xử lý hoàn toàn thấp và vị trí số 1 cho thuật toán được bảo mật hoàn
toàn. Độ mờ thay đổi tùy thuộc vào kích thước khóa và số lượng bảng ánh xạ của
thuật toán mã hóa. Người dùng có thể nhập khóa mong muốn. Một ký tự sẽ dài 8 bit.
Cấu trúc thuật toán chính xác định các kích thước khóa khác nhau lên tới 128 bit.
Người dùng có thể nhập khóa mong muốn và cũng tùy thuộc vào số lượng bảng ánh
xạ thuật toán sẽ phân bổ trọng số một cách linh hoạt. Phân bổ trọng lượng sẽ khác
nhau từ phạm vi 0,0 đến 1,0, và số lượng mức bảo mật sẽ thay đổi từ 1-16. Số lượng
vòng sẽ được xác định bởi các bảng ánh xạ được xác định trước và đầu vào ban đầu
của người dùng. Các bảng ánh xạ được xác định trước trong thuật toán và bao gồm
các giá trị được xác định theo toán học, và sau đó các giá trị đó sẽ tự động chọn thủ
tục thuật toán có liên quan khi người dùng nhập khóa để mã hóa.
2. Cách để mã hóa một hình ảnh sử dụng logic mờ. x
B1. Chọn hình ảnh cần mã hóa.
B2. Xử lý ảnh bằng cách sử dụng fuzzy set.
B3. Tạo số nguyên tố ngẫu nhiên trong khoảng (1 - 256).
B4. Lưu trữ 7 khóa ngẫu nhiên trong một ma trận (A).
B5. Lấy chiều rộng hình ảnh và chiều cao hình ảnh
B6. Chia hình ảnh thành một tập hợp các khối.
B7. Mã hóa mỗi 7bit bằng 7 khóa được lưu trữ trong ma trận (A)
B8. Lặp lại bước số (7) trong mỗi 7 bit trong cùng một khối.
B9. Lặp lại các bước số (7) và (8) trong tất cả các khối.
B10. Thay thế từng khối trong ảnh bằng cách chuyển đổi hàng sang cột. 9
B11. Lấy mỗi 2 bit liền kề theo chiều dọc từ dưới cùng của hình ảnh (b1, b2) và
thực hiện XOR giữa (b1 và b2).
B12. Thực hiện XOR giữa (b và 256).
Hình 1: Sơ đồ quá trình mã hóa ảnh 10
Hình 2: Kết quả quá trình mã hóa
3. Quá trình giải mã
Các bước của thuật toán giải mã:
B1. Lấy mỗi 2 bit liền kề theo chiều dọc từ đầu hình ảnh (b1, b2) và thực hiện XOR giữa (b1 và b2).
B2. Thực hiện XOR giữa (b và 256).
B3. Thực hiện thay thế đường cho mỗi khối trong ảnh bằng cách chuyển đổi hàng thành cột.
B4. Lấy các khóa được lưu trong tiêu đề của hình ảnh
B5. Tìm nghịch đảo của từng khóa từ các khóa được lưu trong ma trận ngược dòng (A).
B6. Chia hình ảnh thành một tập hợp các khối.
B7. Giải mã mỗi 7 bit của khối kèm theo nghịch đảo của các khóa được lưu trữ trong ma trận (A).
B8. Lặp lại cùng một bước số (7) cho mỗi 7 bit trong cùng một khối.
B11. Lặp lại các bước số (7) và (8) cho tất cả các khối. 11 Hình 3: Sơ đồ giải mã 12
Hình 4: Kết quả quá trình giải mã.(Number 1)
Hình 5: Mã hóa ảnh dùng fuzzy logic và fuzzy graph (Number 2) 13
4. Phân tích đánh giá kết quả
• Phân tích tính bảo mật
Bảo mật là tính năng thiết yếu nhất mà một thuật toán mã hóa chất lượng tốt
nên sở hữu. Nếu thuật toán mã hóa không thể ngăn chặn tất cả các loại tấn công bao
gồm các cuộc tấn công thống kê và brute force, thì nó sẽ không đủ để bảo vệ dữ liệu.
• Phân tích thống kê
Các hình ảnh được mã hóa phải giữ các thuộc tính ngẫu nhiên nhất định để
ngăn chặn các cuộc tấn công thống kê. Một phân tích thống kê đã được thực hiện
bằng cách tính toán biểu đồ, entropy, phân tích tương quan và phân tích khác biệt cho
hình ảnh đơn giản và hình ảnh được mã hóa cho chứng minh sức mạnh của thuật toán
đề xuất. Sau khi các hình ảnh khác nhau được kiểm tra ta thu được các giá trị cường độ là tốt.
• Phân tích biểu đồ
Biểu đồ hình ảnh là một phương pháp phân tích thường được sử dụng trong các
ứng dụng xử lý hình ảnh và khai thác dữ liệu. Một trong những lợi ích khác nhau của
biểu đồ là nó cho thấy hình dạng phân phối cho một tập hợp dữ liệu lớn. Do đó, biểu
đồ hình ảnh cung cấp một minh họa rõ ràng về cách các pixel trong ảnh được phân
phối bằng cách vẽ đồ thị số pixel ở mỗi mức cường độ màu. Điều cần thiết là đảm bảo
rằng các hình ảnh được mã hóa và nguyên bản có các số liệu thống kê khác nhau.
Phân tích biểu đồ cho thấy các pixel trong ảnh được phân phối bằng cách vẽ số pixel
ở mỗi mức cường độ. Biểu đồ RGB
Hình 6: Biểu đồ của ảnh gốc 14
Hình 7: Biểu đồ của ảnh sau khi mã hóa
Hình 8: Biểu đồ hình ảnh sau khi giải mã lại
Hình 6, 7, 8 cho thấy kết quả thí nghiệm trên hình ảnh đơn giản, hình ảnh mật
mã tương ứng và biểu đồ của chúng. Biểu đồ của mỗi hình ảnh đơn giản giải thích
cách các pixel được phân phối bằng cách vẽ đồ thị số lượng pixel ở mọi cấp độ màu
xám. Kết quả cho thấy biểu đồ của hình ảnh được mã hóa được phân phối đồng đều
và khác biệt đáng kể so với biểu đồ tương ứng của hình ảnh gốc.
• Phân tích PSNR và MSE
- PSNR: Tỷ lệ tín hiệu cực đại nhiễu 15
Công thức tính PSNR và MSE
Khối PSNR tính tỷ lệ nhiễu tín hiệu cực đại, tính bằng db, giữa hai hình ảnh. Tỷ lệ
này được sử dụng như một phép đo chất lượng giữa ảnh gốc và ảnh nén. PSNR
càng cao, chất lượng của hình ảnh được nén hoặc tái tạo càng tốt.
- MSE: Lỗi bình phương trung bình.
Giá trị của MSE càng thấp, lỗi càng thấp
PSNR và MSE được sử dụng để so sánh chất lượng nén hình ảnh.
Hình 13: Phân tích theo PSNR và MSE.
• Phân tích theo size
Hình 14: Kích thước hình ảnh thay đổi trước và sau khi mã hóa Phần 4: THỰC NGHIỆM 1. Giới thiệu
Trong thực nghiệm này, chúng ta sẽ khám phá quy trình mã hóa và giải mã ảnh
sử dụng lý thuyết Fuzzy Logic. Mục tiêu chính của thực nghiệm là làm mờ một ảnh, 16
mã hóa ảnh đã mờ hóa, sau đó giải mã và khôi phục lại ảnh gốc. Chúng ta sử dụng các
hàm Gaussian để tạo không gian mờ và sử dụng phép XOR để mã hóa và giải mã ảnh.
Ngôn ngữ sử dụng: Python 2. Phương Pháp
2.1. Hàm làm mờ ảnh (Fuzzy Image Function)
Hàm fuzzyimg chuyển ảnh màu sang ảnh grayscale, chuẩn hóa giá trị pixel và
tạo không gian mờ (fuzzy space) cho ảnh. Sau đó, nó sử dụng hàm mật độ xác suất
Gaussian để làm mờ ảnh. Hình 15: Hàm làm mờ ảnh
2.2. Hàm mã hóa ảnh (Encrypt Image Function)
Hàm encrypt_image chuyển đổi ảnh mờ hóa thành số nguyên 8-bit, tạo khóa
mã hóa ngẫu nhiên và sử dụng phép XOR để mã hóa từng khối 8x8 của ảnh. 17 Hình 16: Hàm mã hóa ảnh
2.3. Hàm giải mã ảnh (Decrypt Image Function)
Hàm decrypt_image sử dụng phép XOR với khóa tương ứng để giải mã từng
khối 8x8 của ảnh đã mã hóa và chuyển đổi ảnh đã giải mã trở lại khoảng [0, 1]. 18
Hình 17: Hàm giải mã ảnh
2.4. Hàm khôi phục ảnh (Restore Image Function)
Hàm restore_image khôi phục lại ảnh gốc từ ảnh đã mờ hóa và hàm thành viên mờ mfx.
Hình 18: Hàm khôi phục ảnh 19
3. Các bước thực hiện
• Đọc ảnh: Đọc ảnh màu fuzzy.jpg và chuyển đổi sang ảnh grayscale.
• Tạo ảnh mờ hóa: Sử dụng hàm fuzzyimg để làm mờ ảnh.
• Mã hóa ảnh: Sử dụng hàm encrypt_image để mã hóa ảnh đã mờ hóa với một khóa ngẫu nhiên.
• Giải mã ảnh: Sử dụng hàm decrypt_image để giải mã ảnh đã mã hóa. 4. Kết quả
Kết quả của các bước thực hiện được hiển thị trong các hình dưới đây: •
Ảnh gốc (Original Image): Đây là ảnh ban đầu được đọc từ tệp fuzzy.jpg. Hình 18: Ảnh gốc 20 •
Ảnh mờ hóa (Fuzzed Image): Đây là ảnh sau khi được chuyển đổi sang grayscale và làm mờ. Hình 19: Ảnh mờ hóa •
Ảnh đã mã hóa (Encrypted Image): Đây là ảnh đã mờ hóa được mã
hóa bằng phép XOR với khóa ngẫu nhiên.
Hình 20: Ảnh sau khi mã hóa 21