Đàm Thanh Phương và Đtg<br />
<br />
Tạp chí KHOA HỌC & CÔNG NGHỆ<br />
<br />
106(06): 111 - 117<br />
<br />
THUẬT TOÁN MÃ HOÁ ẢNH DỰA TRÊN ĐỒNG BỘ THÍCH NGHI<br />
HAI HỆ HỖN LOẠN KHÁC NHAU<br />
Đàm Thanh Phương*, Ngô Mạnh Tưởng<br />
Trường Đại học Công nghệ Thông tin và Truyền thông – ĐH Thái Nguyên<br />
<br />
TÓM TẮT<br />
Bài báo giải quyết bài toán đồng bộ thích nghi trạng thái giữa hệ hỗn loạn Chen và mạng nơron tế<br />
bào CNN (Cellular Neural Network) với nhiều tham số bất định. Kết quả về điều khiển đồng bộ<br />
thích nghi được chứng minh chặt chẽ dựa trên lý thuyết ổn định Lyapunov. Sau đó kết quả này<br />
được sử dụng để xây dựng thuật toán mã hoá ảnh số. Hiệu quả của thuật toán mã hoá ảnh đề xuất<br />
được phân tích trên cơ sở một số độ đo phổ biến. Các ví dụ mô phỏng được thực hiện trên môi<br />
trường Matlab.<br />
Từ khoá: Hệ hỗn loạn, mạng nơron tế bào, đồng bộ hỗn loạn, điều khiển thích nghi, mã hoá ảnh.<br />
<br />
GIỚI THIỆU *<br />
Sau khi Pecora và Carroll đề xuất khái niệm<br />
đồng bộ driver – response [1] để điều khiển<br />
đồng bộ giữa hai hệ hỗn loạn, đã có rất nhiều<br />
các phương pháp tiếp cận đồng bộ hóa hỗn<br />
loạn được phát triển như đồng bộ phản hồi<br />
tuyến tính và phi tuyến, điều khiển xung,<br />
đồng bộ thích nghi [2-6].v.v. Những kết quả<br />
này chủ yếu được áp dụng để đồng bộ hóa<br />
giữa hai hệ hỗn loạn có cùng cấu trúc. Tuy<br />
nhiên, trong thực tế hệ driver và response<br />
thường không có cấu trúc giống nhau do các<br />
hạn chế vật lý. Hơn nữa, để tăng cường an<br />
ninh trong truyền thông khi áp dụng hỗn loạn<br />
trong bảo mật, một phần hoặc tất cả các tham<br />
số của hệ driver là bất định. Vì vậy vấn đề<br />
đồng bộ driver - response hai hệ hỗn loạn có<br />
cấu trúc khác nhau và có các tham số bất định<br />
đang rất được quan tâm [7-12]. Đóng góp vào<br />
việc giải quyết vấn đề trên, bài báo này đưa ra<br />
phương pháp sử dụng thuật điều khiển thích<br />
nghi để đồng bộ giữa hệ hỗn loạn Chen với<br />
nhiều tham số bất định và hệ hỗn loạn CNN.<br />
Sau đó xây dựng thuật toán mã hoá ảnh số<br />
dựa trên kết quả đồng bộ.<br />
Cấu trúc của bài báo gồm 5 phần như sau:<br />
Sau phần giới thiệu; Phần 2 trình bày vắn tắt<br />
về hệ hỗn loạn Chen và khảo sát đặc tính hỗn<br />
loạn của CNN; Phần 3 giải quyết bài toán<br />
đồng bộ giữa hai hệ hỗn loạn với các tham số<br />
*<br />
<br />
Tel: 0912998749, Email: dtphuong@ictu.edu.vn<br />
<br />
bất định. Thuật toán mã hoá ảnh dựa trên kết<br />
quả đồng bộ thích nghi hai hệ hỗn loạn được<br />
trình bày chi tiết trong phần 4. Cuối cùng là<br />
phần kết luận.<br />
MỘT SỐ NÉT VỀ HỆ CHEN VÀ CNN<br />
Hệ Chen<br />
Hệ động học Chen được xây dựng bởi Chen<br />
và Ueta năm 1999 [13], với mô hình toán học<br />
là hệ phương trình vi phân sau:<br />
xɺ1 = a ( x 2 − x1 )<br />
<br />
xɺ = (c − a ) x − x x + cx<br />
1<br />
1 3<br />
2<br />
2<br />
xɺ 3 = x1 x 2 − bx 3<br />
<br />
<br />
(1)<br />
<br />
Trong đó x1 , x2 , x3 là các biến trạng thái và<br />
a, b, c là các tham số. Hình 1 thể hiện vùng<br />
thu hút hỗn loạn của hệ (1) khi<br />
a = 35, b = 3, c = 28 .<br />
60<br />
50<br />
40<br />
30<br />
20<br />
10<br />
0<br />
40<br />
20<br />
<br />
40<br />
20<br />
<br />
0<br />
<br />
0<br />
<br />
-20<br />
<br />
-20<br />
-40<br />
<br />
-40<br />
<br />
Hình 1. Vùng thu hút hỗn loạn của hệ Chen trong<br />
không gian pha ( x1 , x2 , x3 ) .<br />
<br />
Mạng nơron tế bào<br />
CNN được đề xuất bởi Leon Chua và<br />
LingYang năm 1988 [14]. CNN có khả năng<br />
111<br />
<br />
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên<br />
<br />
http://www.lrc-tnu.edu.vn<br />
<br />
Đàm Thanh Phương và Đtg<br />
<br />
Tạp chí KHOA HỌC & CÔNG NGHỆ<br />
<br />
xử lý song song với tốc độ cao và có nhiều<br />
ứng dụng trong xử lý ảnh, nhận dạng mẫu<br />
cũng như bảo mật truyền thông. Trong bài<br />
báo này, ta xét CNN 3 tế bào kết nối toàn bộ<br />
có phương trình trạng thái:<br />
<br />
Trong cả bốn trường hợp, số mũ lyapunov lớn<br />
nhất đều lớn hơn không. Do đó với các tham<br />
số này, (4) có hành vi hỗn loạn. Hình 2 thể<br />
hiện vùng thu hút hỗn loạn của (4) trong các<br />
trường hợp trên tương ứng.<br />
<br />
3<br />
<br />
yɺ j = − y j + a j f ( y j ) +<br />
<br />
∑<br />
<br />
a jk f ( yk ) +<br />
<br />
k =1, k ≠ j<br />
<br />
a<br />
<br />
5<br />
<br />
+∑ S jk yk + I j ( j = 1, 2, 3)<br />
k =1<br />
<br />
0<br />
<br />
-5<br />
<br />
-0.2<br />
-0.4<br />
-50<br />
<br />
0<br />
<br />
50<br />
<br />
-2<br />
<br />
-1<br />
<br />
c<br />
<br />
và hàm đầu ra của cell thứ j ; a j , a jk , S jk là<br />
các tham số thực và I j là giá trị ngưỡng.<br />
<br />
0<br />
<br />
1<br />
<br />
2<br />
<br />
d<br />
0.5<br />
<br />
0.2<br />
0<br />
<br />
0<br />
<br />
Hàm f ( y j ) được định nghĩa là:<br />
<br />
-0.2<br />
<br />
-0.5<br />
-2<br />
<br />
-1.5<br />
<br />
-1<br />
<br />
-0.5<br />
<br />
0<br />
<br />
-2<br />
<br />
0<br />
<br />
2<br />
<br />
(3)<br />
<br />
Đặt giá trị các tham số:<br />
a12 = a13 = a2 = a23 = a32 = a3 = a21 = a31 = 0;<br />
s13 = s31 = s22 = s21 = s23 = s33 = I1 = I 2 = I3 = 0;<br />
s21 = s23 = s33 = 1;<br />
<br />
Khi đó mô hình CNN 3 cell như sau:<br />
yɺ 1 = − y1 + a1 f ( y1 ) + s11 y1 + s12 y 2<br />
<br />
yɺ = − y + y + y<br />
2<br />
1<br />
3<br />
2<br />
yɺ 3 = s32 y 2<br />
<br />
<br />
1<br />
2<br />
<br />
0.2<br />
<br />
0<br />
<br />
Với y j và f ( y j ) tương ứng là biến trạng thái<br />
<br />
1<br />
(| y j +1 | − | y j −1|)<br />
2<br />
<br />
b<br />
0.4<br />
<br />
(2)<br />
<br />
3<br />
<br />
f (yj )=<br />
<br />
106(06): 111 - 117<br />
<br />
Với f ( y1 ) = (| y1 + 1 | − | y1 −1|) .<br />
<br />
(4)<br />
<br />
(5)<br />
<br />
Ở đây chúng tôi chỉ giải quyết bài toán đồng<br />
bộ và ứng dụng nên không nói lại quá trình<br />
khảo sát đặc tính hỗn loạn của hệ (4) mà chỉ<br />
đưa ra kết quả một số bộ tham số thoả mãn<br />
(4) là hệ hỗn loạn:<br />
(a) a1 =−7.717, s11 =1.3443, s12 =−4.925, s32 = 3.649<br />
(b) a1 = 3.86, s11 =−1.55, s12 = 0.98, s32 =−14.26<br />
(c) a1 = 4.0279, s11 =−1.6856, s12 = 9.4, s32 =−16<br />
(d ) a1 =−3.6805, s11 = 2.2179, s12 = 8.342, s32 =−11.925<br />
<br />
Số mũ lyapunov của hệ (4) tương ứng vơí<br />
các trường hợp trên lần lượt là:<br />
( a ) λ1 = 0.1345, λ 2 = − 0.0017, λ 3 = − 1.058<br />
( b ) λ1 = 0.3203, λ 2 = − 0.0018, λ 3 = − 2.6167<br />
( c )λ1 = 0.2472, λ 2 = − 0.0018, λ 3 = − 2.4525<br />
( d )λ1 = 0.2985, λ 2 = − 0.0011, λ 3 = − 1.401<br />
<br />
Hình 2. Vùng thu hút hỗn loạn của CNN trong các<br />
trường hợp tham số a,b,c,d tương ứng.<br />
<br />
BÀI TOÁN ĐỒNG BỘ HAI HỆ HỖN<br />
LOẠN CHEN VÀ CNN<br />
Mô tả và giải quyết bài toán.<br />
Bài toán đồng bộ driver – response được<br />
Pecora và Carroll đề xuất năm 1990 [1]. Mục<br />
đích của bài toán là điều khiển hệ response<br />
sao cho tín hiệu (trạng thái hoặc đầu ra) của<br />
hệ response đồng bộ với tín hiệu tương ứng<br />
của hệ driver. Trong phần này, chúng tôi sẽ<br />
giải quyết bài toán đồng bộ driver – response<br />
hai hệ hỗn loạn Chen (1) và hệ CNN 3 cell (4)<br />
có cấu trúc khác nhau bằng thuật điều khiển<br />
thích nghi. Với giả thiết tất cả các tham số của<br />
hệ driver không được biết đối với hệ response<br />
và các giá trị ban đầu của hai hệ hoàn toàn<br />
khác nhau. Chúng ta biết rằng, với đặc tính<br />
nhạy cảm với giá trị ban đầu và tham số hệ<br />
thống, hệ hỗn loạn sẽ có trạng thái thay đổi<br />
rất lớn dẫu cho những thay đổi của tham số<br />
và giá trị ban đầu rất nhỏ. Vì vậy việc xác<br />
định trạng thái khi không biết chính xác<br />
tham số và giá trị ban đầu là rất khó khăn.<br />
Tuy nhiên, thông qua việc thiết kế luật điều<br />
khiển thích nghi đảm bảo hai hệ đồng bộ<br />
tiệm cận toàn cục và xác định được tham số<br />
thực của hệ response, chúng ta sẽ giải quyết<br />
được vấn đề này.<br />
<br />
112<br />
<br />
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên<br />
<br />
http://www.lrc-tnu.edu.vn<br />
<br />
Đàm Thanh Phương và Đtg<br />
<br />
Tạp chí KHOA HỌC & CÔNG NGHỆ<br />
<br />
Xét hệ hỗn loạn driver Chen (1). Với giả thiết<br />
a, b, c là các tham số hoàn toàn chưa biết đối<br />
với hệ response. Hệ response CNN được xác<br />
định như sau:<br />
yɺ1 = − y1 + a1 f ( y1 ) + s11 y1 + s12 y2 + u1<br />
<br />
yɺ = − y + y + y + u<br />
(6)<br />
2<br />
1<br />
3<br />
2<br />
2<br />
yɺ 3 = s32 y2 + u3<br />
<br />
<br />
Trong đó véc tơ lỗi trạng thái tương ứng giữa<br />
hai hệ driver và response được định nghĩa là:<br />
T<br />
<br />
e = (e1 , e2 , e3 ) = ( y1 − x1 , y2 − x2 , y3 − x3 )<br />
<br />
Gọi véc tơ các tham số ước lượng và véc tơ<br />
sai số giữa tham số ước lượng và tham số thật<br />
lần lượt là:<br />
<br />
(<br />
<br />
)<br />
<br />
T<br />
<br />
(<br />
<br />
)<br />
<br />
ɶ = ( aɶ, bɶ, cɶ) = aˆ − a, bˆ − b, cˆ − c .<br />
θˆ = aˆ , bˆ, cˆ , θ<br />
<br />
Mục tiêu của chúng ta là tìm được bộ điều<br />
khiển u và luật cập nhật tham số θˆ sao cho<br />
hệ (1), (6) đồng bộ tiệm cận toàn cục với mọi<br />
giá trị ban đầu, nghĩa là lim e = 0 .<br />
t→∞<br />
<br />
Xây dựng bộ điều khiển u :<br />
u = ɵ<br />
1 a( x2 −x1 ) +(1−s11 ) y1 −s12 y2 −a1 f ( y1 ) −e1<br />
<br />
c −ɵ<br />
a x1 +ɵ<br />
cx2 + y2 − y1 − y3 −x1x3 −e2<br />
(8)<br />
u2 = ɵ<br />
<br />
<br />
ɵ<br />
u3 =−bx3 −s32 y2 + x1x2 −e3<br />
<br />
( )<br />
<br />
Và luật update tham số tương ứng:<br />
ɺ<br />
aˆ = e1 ( x1 − x2 ) + e2 x1<br />
ɺ<br />
bˆ = e x<br />
3 3<br />
<br />
cˆɺ = −e ( x + x )<br />
2<br />
1<br />
2<br />
<br />
<br />
1 T<br />
(e e + θɶTθɶ)<br />
2<br />
<br />
(10)<br />
<br />
Ta có:<br />
ɶɶɺ + cc<br />
ɺ (t ) = eTeɺ + θ<br />
ɶTθɶɺ = e eɺ + e eɺ + e eɺ + aa<br />
ɶɶɺ + bb<br />
ɶɶɺ<br />
V<br />
1 1<br />
2 2<br />
3 3<br />
<br />
(<br />
<br />
eɺ1 =−y1 +a1 f ( y1 ) + s11 y1 + s12 y2 −a( x2 − x1 ) +u1<br />
<br />
eɺ =−y + y + y −(c −a) x + x x −cx +u<br />
(7)<br />
2<br />
1<br />
3<br />
1<br />
1 3<br />
2<br />
2<br />
2<br />
eɺ3 = s32 y2 − x1x2 +bx3 +u3<br />
<br />
<br />
T<br />
<br />
V (t ) =<br />
<br />
( )<br />
<br />
ɺ<br />
ɺ<br />
ɺ<br />
aɶɺ = aˆɺ − aɺ = aˆɺ , bɶ = bˆ − bɺ = bˆ, cɶɺ = cˆɺ − cɺ = cˆɺ<br />
<br />
Trừ (6) cho (1) ta có hệ động học lỗi:<br />
<br />
T<br />
<br />
Chứng minh<br />
Thật vậy, chọn hàm Lyapunov cho hệ (7) như<br />
sau:<br />
<br />
Dễ thấy<br />
<br />
T<br />
<br />
Với u = (u1 , u2 , u3 ) là véc tơ điều khiển.<br />
<br />
T<br />
<br />
106(06): 111 - 117<br />
<br />
(9)<br />
<br />
Ta có:<br />
Định lý 1: Hệ CNN (6) đồng bộ tiệm cận toàn<br />
cục với hệ Chen (1) khi sử dụng bộ điều khiển<br />
thích nghi (8) và luật cập nhật tham số tương<br />
ứng (9).<br />
<br />
)<br />
<br />
(<br />
<br />
)<br />
<br />
Do đó<br />
ɶ ˆɺ + cc<br />
ɶ ˆɺ + bb<br />
ɶˆɺ<br />
Vɺ (t ) = e1eɺ1 + e2 eɺ2 + e3 eɺ3 + aa<br />
<br />
(11)<br />
<br />
Thay (8) vào (7) ta được:<br />
eɺ1 = aɶ( x2 − x1 ) − e1<br />
<br />
eɺ = (cɶ − aɶ) x + cx<br />
ɶ 2 − e2<br />
1<br />
2<br />
eɺ = −bx<br />
ɶ −e<br />
3<br />
3<br />
3<br />
<br />
(12)<br />
<br />
Thay (12) và (9) vào (11) ta được:<br />
ɺ (t ) = e (aɶ( x − x ) − e ) + e ((cɶ − aɶ) x + cx<br />
ɶ 2 − e2 )<br />
V<br />
1<br />
2<br />
1<br />
1<br />
2<br />
1<br />
ɶ − e ) + aɶ(e ( x − x ) + e x ) + bɶ(e x )<br />
+e3 (−bx<br />
3<br />
3<br />
1<br />
1<br />
2<br />
2 1<br />
3 3<br />
+cɶ(−e2 ( x1 + x2 )) = −e12 − e22 − e32 ≤ 0<br />
<br />
Theo lý thuyết ổn định Lyapunov [15], từ<br />
Vɺ (t )≤ 0 ta có lim ei = 0; i = 1,2,3 hay hệ (6)<br />
t →∞<br />
<br />
đồng bộ tiệm cận toàn cục với hệ (1).ٱ<br />
Mô phỏng quá trình đồng bộ<br />
Giả sử tham số hệ thống của hệ driver (1)<br />
được chọn là (a, b, c)T = (35,3,28)T ; Các<br />
tham số của hệ response (6) được chọn theo<br />
trường hợp (b). Sử dụng hàm ODE45 trong<br />
môi trường Matlab R2012a để giải hệ 9<br />
phương trình vi phân nhận được từ (1), (6),<br />
(8), (9) và (12), bước lưới ∆t = 0.001 , thời<br />
gian t = 0.001× 256 × 256 = 65.54 ; Các giá<br />
trị ban đầu của (1), (6) và (9) lần lượt là :<br />
T<br />
<br />
x 0 = (0.9532, -0.2137, 0.6092)<br />
<br />
T<br />
<br />
y 0 = (-0.2248, 0.5121, -0.7321)<br />
T<br />
θˆ 0 = (8.8145, 0.5315, 3.2306)<br />
<br />
113<br />
<br />
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên<br />
<br />
http://www.lrc-tnu.edu.vn<br />
<br />
Đàm Thanh Phương và Đtg<br />
<br />
Tạp chí KHOA HỌC & CÔNG NGHỆ<br />
<br />
Hình 3 cho thấy các giá trị sai số trạng thái<br />
hội tụ về không; Hình 4 thể hiện quá trình các<br />
tham số ước lượng hội tụ về tham số thật.<br />
40<br />
<br />
e1<br />
<br />
20<br />
0<br />
<br />
e2<br />
<br />
-20<br />
<br />
0<br />
<br />
10<br />
<br />
20<br />
<br />
30<br />
<br />
40<br />
<br />
50<br />
<br />
60<br />
<br />
70<br />
<br />
- Sắp xếp chuỗi x1 và lấy vị trí thứ tự chuỗi<br />
mới:<br />
<br />
[u, ind] = sort( x1 );<br />
<br />
- Theo hướng hàng, tiến hành tách ma trận 2<br />
chiều A thành mảng 1 chiều y theo thứ tự từ<br />
trái sang phải, từ trên xuống dưới; Đồng thời<br />
thực hiện thủ tục hoán vị:<br />
<br />
50<br />
<br />
f1 (i ) = ceil(in d(i ) / n );<br />
<br />
0<br />
<br />
f 2 ( i ) = mod(in d(i ), n );<br />
<br />
-50<br />
<br />
0<br />
<br />
10<br />
<br />
20<br />
<br />
30<br />
<br />
40<br />
<br />
50<br />
<br />
60<br />
<br />
70<br />
<br />
y (i ) = A ( f1 (i ), f 2 (i ) ); i = 1, 2,..., m × n<br />
<br />
70<br />
<br />
Trong đó ceil(u) là hàm làm tròn u về số<br />
nguyên gần u nhất về phía dương vô cùng.<br />
Hàm mod (u,v) trả về phần dư của phép chia<br />
số nguyên u cho v.<br />
<br />
5<br />
<br />
e3<br />
<br />
106(06): 111 - 117<br />
<br />
0<br />
<br />
-5<br />
<br />
0<br />
<br />
10<br />
<br />
20<br />
<br />
30<br />
<br />
40<br />
<br />
50<br />
<br />
60<br />
<br />
t<br />
<br />
Hình 3. Giá trị sai số đồng bộ theo thời gian t<br />
<br />
Bước 2: Quá trình mã hoá<br />
60<br />
<br />
a<br />
<br />
40<br />
20<br />
0<br />
<br />
0<br />
<br />
10<br />
<br />
20<br />
<br />
30<br />
<br />
40<br />
<br />
50<br />
<br />
60<br />
<br />
70<br />
<br />
0<br />
<br />
10<br />
<br />
20<br />
<br />
30<br />
<br />
40<br />
<br />
50<br />
<br />
60<br />
<br />
70<br />
<br />
0<br />
<br />
10<br />
<br />
20<br />
<br />
30<br />
<br />
40<br />
<br />
50<br />
<br />
60<br />
<br />
70<br />
<br />
6<br />
<br />
b<br />
<br />
4<br />
2<br />
0<br />
60<br />
<br />
c<br />
<br />
40<br />
20<br />
0<br />
<br />
t<br />
<br />
Hình 4. Giá trị tham số ước lượng theo thời gian t<br />
<br />
THUẬT TOÁN MÃ HOÁ ẢNH DỰA TRÊN<br />
ĐỒNG BỘ THÍCH NGHI<br />
Xây dựng thuật toán<br />
Thuật toán mã hoá ảnh sử dụng tín hiệu hỗn<br />
loạn và quá trình đồng bộ thích nghi bao gồm<br />
các bước:<br />
Bước 1: Quá trình hoán vị<br />
Ma trận điểm ảnh gốc A được hoán vị các<br />
điểm ảnh để trở thành ảnh hoán vị P . Quá<br />
trình này nhằm giảm thiểu sự tương quan cao<br />
giữa các điểm ảnh lân cận. Giả sử kính thước<br />
của ma trận ảnh là m × n . Dùng chuỗi tín hiệu<br />
hỗn loạn x1 (i ); i = 1, 2,..., m × n của hệ driver<br />
(1) để hoán vị A theo thuật toán sau:<br />
<br />
Quá trình hoán vị vẫn giữa nguyên giá trị mức<br />
xám của mỗi điểm ảnh. Biểu đồ Histogram<br />
của ảnh P vẫn không thay đổi so với ảnh gốc.<br />
Điều này khiến cho ảnh gốc có thể bị tấn công<br />
bởi phương pháp tấn công thống kê hoặc biết<br />
bản rõ. Vì vậy, quá trình mã hoá phải tiến<br />
hành hoà trộn giá trị các điểm ảnh sao cho<br />
ảnh mã trở thành một nguồn ngẫu nhiên và có<br />
rất ít thông tin để giải mã trái phép. Việc hoà<br />
trộn giá trị điểm ảnh sử dụng tín hiệu hỗn<br />
loạn của hệ driver (1) được tiến hành như sau:<br />
- Hai hệ thống nhất một thời gian trễ τ đảm<br />
bảo hai hệ đồng bộ. Thời gian giải hai hệ sẽ<br />
được tính là t = (τ + m × n)×∆t trong đó<br />
m × n là size của ảnh và ∆t là bước lưới, để<br />
đảm bảo tạo ra chuỗi tín hiệu hỗn loạn có số<br />
phần tử sau khi đồng bộ bằng số điểm ảnh.<br />
- Tín hiệu của hệ driver được tổ hợp thành<br />
chuỗi khoá:<br />
<br />
( (<br />
<br />
) )<br />
<br />
ki = mod floor 1014 abc x1 j 2 + x2 j 2 + x3 j 2 ,256<br />
j = τ , τ +1,..., t; i = 1,2,.., m×n<br />
- Chuyển chuỗi giá trị điểm ảnh đã hoán vị y<br />
và chuỗi khoá ki sang dạng nhị phân:<br />
ki = de 2 bi (k j ,8); y (i ) = de 2 bi ( y (i ),8);<br />
<br />
114<br />
<br />
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên<br />
<br />
http://www.lrc-tnu.edu.vn<br />
<br />
Đàm Thanh Phương và Đtg<br />
<br />
Tạp chí KHOA HỌC & CÔNG NGHỆ<br />
<br />
Ảnh rõ<br />
<br />
106(06): 111 - 117<br />
<br />
Driver Chen system<br />
<br />
x1<br />
Bên<br />
gửi<br />
<br />
k<br />
<br />
y<br />
<br />
Hoán vị<br />
<br />
( x1,x2,x3)<br />
<br />
Mã hoá<br />
<br />
c<br />
Điều khiển đồng bộ<br />
<br />
Giải mã<br />
<br />
kˆ<br />
<br />
yˆ<br />
<br />
Bên<br />
nhận<br />
<br />
( y1, y2 , y3 )<br />
u<br />
<br />
Ảnh giải mã<br />
<br />
Response CNN<br />
<br />
Hình 5. Mô hình thuật toán mã hoá ảnh sử dụng đồng bộ hỗn loạn<br />
<br />
- Ảnh rõ được chọn là ảnh đa mức xám 8 bit<br />
kích thước 256 x 256.<br />
<br />
- Tiến hành mã hoá:<br />
ci = bitxor ( y (i ), ki ); i = 1, 2,..., m × n;<br />
Bước 3: Quá trình giải mã:<br />
<br />
- Các giá trị ban đầu của quá trình tạo tín hiệu<br />
hỗn loạn và đồng bộ tương tự mục 3.2.<br />
<br />
Ảnh sau khi được mã hoá thành chuỗi tín hiệu<br />
ci , được gửi đi cho bên nhận cùng với các tín<br />
<br />
- Thời gian đồng bộ ước lượng τ = 2s.<br />
<br />
hiệu điều khiển. Tại bên nhận, quá trình đồng<br />
bộ được thực hiện. nhằm khôi phục lại các tín<br />
hiệu của hệ driver và các tham số aˆ , bˆ, cˆ .<br />
Chuỗi giải mã được tổ hợp từ hệ response:<br />
<br />
(<br />
<br />
(<br />
<br />
)<br />
<br />
)<br />
<br />
ˆ ˆ ˆ y1 j 2 + y2 j 2 + y3 j 2 , 256<br />
kˆi = mod floor 1014 abc<br />
<br />
Kết quả mã hoã và giải mã được thể hiện<br />
trong hình 6. Trong đó a. là ảnh rõ, b. là biểu<br />
đồ histogram của ảnh rõ, c. là ảnh mã, d. là<br />
biểu đồ histogram của ảnh mã; e. là ảnh giải<br />
mã đúng và f. là ảnh giải mã với thay đổi nhỏ<br />
của tham số khoá.<br />
b<br />
<br />
a<br />
<br />
j = τ , τ + 1,..., t ; i = 1, 2,.., m × n<br />
<br />
Như đã chứng minh ở phần trên, khi t dần tới<br />
vô cùng ta có:<br />
<br />
500<br />
<br />
0<br />
T<br />
<br />
T<br />
<br />
( y1 , y2 , y3 ) → ( x1 , x2 , x3 )<br />
<br />
(<br />
<br />
)<br />
<br />
; aˆ , bˆ, cˆ → (a, b, c )<br />
<br />
100<br />
<br />
0<br />
<br />
100<br />
<br />
d<br />
<br />
200<br />
<br />
500<br />
<br />
nên kˆi → ki . Từ đó có thể giải mã được khi sử<br />
dụng chuỗi kˆi , với thứ tự ngược lại quá trình<br />
mã hoá đã trình bày ở bước trên. Hình 5 mô tả<br />
ý tưởng thuật toán mã hoá ảnh sử dụng đổng<br />
bộ thích nghi hai hệ hỗn loạn Chen và CNN.<br />
<br />
0<br />
c<br />
<br />
0<br />
e<br />
<br />
200<br />
f<br />
<br />
Mô phỏng và phân tích bảo mật<br />
Các giá trị chuẩn bị cho mô phỏng như sau:<br />
<br />
Hình 6. Kết quả mã hoá và giải mã<br />
<br />
115<br />
<br />
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên<br />
<br />
http://www.lrc-tnu.edu.vn<br />
<br />