tìm hiểu các phép biến đổi ma trận svd, qr và ứng dụng để xây dựng lược đồ thủy vân

71 919 5
tìm hiểu các phép biến đổi ma trận svd, qr và ứng dụng để xây dựng lược đồ thủy vân

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

i ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG -    - Học viên thực hiện: Lê Minh Hồi TÊN ĐỀ TÀI LUẬN VĂN: TÌM HIỂU CÁC PHÉP BIẾN ĐỔI MA TRẬN SVD, QR VÀ ỨNG DỤNG ĐỂ XÂY DỰNG LƢỢC ĐỒ THỦY VÂN LUẬN VĂN THẠC SỸ KHOA HỌC MÁY TÍNH Thái Nguyên, tháng 07 năm 2014 Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ ii ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG -    - Học viên thực hiện: Lê Minh Hoài TÊN ĐỀ TÀI LUẬN VĂN: TÌM HIỂU CÁC PHÉP BIẾN ĐỔI MA TRẬN SVD, QR VÀ ỨNG DỤNG ĐỂ XÂY DỰNG LƢỢC ĐỒ THỦY VÂN Chuyên ngành: Mã số: Khoa học máy tính 60 48 01 LUẬN VĂN THẠC SỸ KHOA HỌC MÁY TÍNH NGƢỜI HƢỚNG DẪN KHOA HỌC PGS.TS Nguyễn Bá Tƣờng Thái Nguyên, tháng 07 năm 2014 Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ iii LỜI CAM ĐOAN Tơi xin cam đoan cơng trình nghiên cứu riêng Các số liệu, kết nêu luận văn trung thực chưa cơng bố cơng trình khác Học viên Lê Minh Hồi Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ iv LỜI CẢM ƠN Trước hết chân thành cảm ơn Ban giám hiệu, phòng Đào tạo, thầy cô giáo trường Đại học Công nghệ Thông tin Truyền thông - Đại học Thái Nguyên quan tâm, tạo điều kiện thuận lợi, nhiệt tình giảng dạy hướng dẫn tơi suốt q trình học tập trường Đặc biệt xin gửi lời cảm ơn chân thành tới PGS.TS Nguyễn Bá Tường hướng dẫn, bảo động viên suốt trình thực luận văn Cuối tơi xin cảm ơn giúp đỡ từ người thân, đồng nghiệp người ủng hộ, hỗ trợ suốt trình thực luận văn Mặc dù có nhiều cố gắng, nhiên luận văn tơi khơng thể tránh khỏi thiếu sót, tơi mong nhận ý kiến đánh giá, bổ sung để tơi hồn thiện luận văn mình./ Thái Nguyên, ngày 07 tháng 10 năm 2014 Học viên Lê Minh Hồi Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ v MỤC LỤC LỜI CAM ĐOAN i LỜI CẢM ƠN iv DANH MỤC CÁC HÌNH MINH HỌA ix MỞ ĐẦU CHƢƠNG 1: TỔNG QUAN 1.1 Ảnh số 1.1.1 Khái niệm 1.1.2 Phân loại ảnh 1.1.3 Histogram ảnh 1.1.4 Cấu trúc tệp ảnh Bitmap 1.2 Chất lƣợng ảnh 1.2.1 Hệ số PSNR 1.2.2 Hệ số Diff 1.3 Một số phép biến đổi 1.3.1 Phép biến đổi Cosin rời rạc Phép biến đổi DCT 1-D Phép biến đổi DCT 2-D 1.3.2 Phép biến đổi SVD 10 1.3.3 Phép biến đổi QR .10 1.4 Giấu tin 11 1.4.1 Khái niệm giấu tin 11 1.4.2 Giấu tin miền không gian 14 1.4.3 Giấu tin miền biến đổi 14 1.5 Thủy vân số 15 1.5.1 Khái niệm thủy vân 15 1.5.2 Phân loại thủy vân 16 1.5.3 Một số tính chất thủy vân số .19 1.5.4 Ứng dụng thủy vân 21 CHƢƠNG 2: THỦY VÂN TRÊN MIỀN SVD 23 2.1 Phép biến đổi SVD 23 2.1.1 Khái niệm SVD .23 2.1.2 Phép biến đổi SVD 24 Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ vi 2.1.3 Một số tính chất khai triển SVD 25 2.1.4 Ví dụ minh họa khải triển SVD 25 2.2 Lƣợc đồ thủy vân SVD-1 27 2.2.1 Ý tưởng thuật toán .27 2.2.2 Thuật toán nhúng thủy vân 27 2.2.3 Thuật tốn trích thủy vân 29 2.2.4 Nhận xét lược đồ SVD-1 30 2.3 Lƣợc đồ thủy vân SVD-N 30 2.3.1 Ý tưởng thuật toán .30 2.3.2 Thuật toán nhúng thủy vân 30 2.3.3 Thuật tốn trích thủy vân 32 2.3.4 Nhận xét lược đồ SVD-N 32 2.4 Mã nguồn Chƣơng trình thử nghiệm 33 CHƢƠNG : THỦY VÂN TRÊN MIỀN QR .34 3.1 Phép biến đổi QR 34 3.1.1 Khái niệm QR .34 3.1.2 Phép biến đổi QR .35 3.1.3 Xét ví dụ khai triển SVD 35 3.2 Lƣợc đồ thủy vân QR-1 37 3.2.1 Ý tưởng thuật toán .37 3.2.2 Thuật toán nhúng thủy vân 37 3.2.3 Thuật tốn trích thủy vân 38 3.2.4 Nhận xét lược đồ QR-1 38 3.3 Lƣợc đồ thủy vân QR-N 39 3.3.1 Ý tưởng thuật toán .39 3.3.2 Thuật toán nhúng thủy vân 39 3.3.3 Thuật tốn trích thủy vân 40 3.3.4 Nhận xét lược đồ QR-N 40 3.4 Kết thực nghiệm lƣợc đồ SVD QR 41 3.4.1 Bộ ảnh thử nghiệm .41 3.4.2 So sánh tính bền vững lược đồ thủy vân 41 3.4.3 So sánh SVD-1 QR-1 vị trí nhúng thủy vân khác 42 3.4.5 Khả lựa chọn phần tử nhúng thủy vân 46 3.4.5.1 Chất lƣợng ảnh sau nhúng thủy vân 47 3.4.5.2 So sánh lược đồ SVD-1 QR-1 47 Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ vii 3.4.5.3 So sánh lược đồ SVD-N QR-N 49 3.5 Chƣơng trình thử nghiệm 49 TÀI LIỆU THAM KHẢO 61 Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ viii DANH MỤC CÁC CHỮ VIẾT TẮT Chữ viết tắt Diễn giải Ý nghĩa DCT Discrete Cosine Transform Biến đổi Cosin rời rạc IDCT Invert Discrete Cosine Transform Biến đổi ngược DCT DFT Discrete Fourier Transform Biến đổi Forier rời rạc IDFT Invert Discrete Fourier Transform Biến đổi ngược DFT DWT Discrete Wavelet Transform Biến đổi Wavelet rời rạc IDWT Invert Discrete Wavelet Transform Biến đổi ngược DWT PN Pseudo Noise Giả nhiễu FFT Fast fourier transfer Biến đổi Fourier nhanh GIS Geographic Information System Hệ thống thông tin địa lý PRNS Pseudo random number sequence Dãy số giả ngẫu nhiên Fourier Transfer Biến đổi Fourier FT Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ ix DANH MỤC CÁC HÌNH MINH HỌA Ý nghĩa Tên hình Hình 1.1 Biểu đồ histogram ảnh màu Pepper Hình 1.2 Thứ tự cấu trúc thành phần ảnh Bitmap Hình 1.3 Sơ đồ trình giấu tin 1999) Hình 1.4 Sơ đồ trình giải mã tin giấu Hình 1.5 Phân loại kỹ thuật thủy vân Hình 1.6 Mơ hình q trình nhúng thủy vân Hình 1.7 Mơ hình q trình tách kiểm định thủy vân Số hóa Trung tâm Học liệu http://www.lrc-tnu.edu.vn/ MỞ ĐẦU Ngày nay, mạng Internet trở thành phương tiện truyền tải, chia sẻ thông tin, tài liệu cách thuận tiện, hiệu Thông tin sẵn sàng trực tuyến, người kết nối vào Internet để tìm kiếm cách dễ dàng thông tin cần thiết Bên cạnh đó, cơng ty, nhà cung cấp sản phẩm bán sản phẩm thơng qua mạng Internet cung cấp liệu, thông tin sản phẩm, dịch vụ cho người dùng thông qua hệ thống mạng Internet cách hiệu Với lượng thông tin truyền qua mạng ngày nhiều vấn nạn chép sử dụng không hợp pháp liệu số ngày tăng Tuy nhiên việc quản lý khai thác thông tin lại đơi nằm ngồi tầm kiểm sốt cá nhân, tổ chức nạn chép bất hợp pháp, vi phạm quyền ngày gia tăng Từ cần thiết phải có giải pháp chống chép để hạn chế việc vi phạm quyền sản phẩm liệu số Một giải pháp hữu hiệu để bảo vệ quyền sản phẩm liệu số kỹ thuật thủy vân số xem giải pháp quan trọng Thủy vân số dựa kết nghiên cứu nhiều lĩnh vực khác như: Mật mã học, kỹ thuật giấu tin, lý thuyết thống kê xử lý tín hiệu số Mục đích phương pháp nhúng lượng thơng tin có ích vào sản phẩm số (lượng thông tin gọi thủy vân) Dựa mục đích sử dụng lược đồ thủy vân chia thành hai nhóm gồm thủy vân bền vững thủy vân dễ vỡ Thủy vân dễ vỡ kỹ thuật nhúng thủy vân vào ảnh, có can thiệp hay thay đổi tới ảnh gốc dấu thủy vân khơng cịn ngun vẹn, với kỹ thuật thủy vân ứng dụng tốn xác thực tính tồn vẹn liệu số Trong thủy vân bền vững ứng dụng toán bảo vệ quyền sản phẩm số 48 n B D(i, i) U i ViT Từ suy : U1 V1T D(1,1) d i B A d U1 V1T và: n B A d( n U (i,1))( i n n U (i,1) n d n V (i,1)) i i V (i,1) i Do U V ma trận trực chuẩn |d|≤ q nên : B A (3.7) q n dấu đẳng thức xảy phần tử U(i,1) nhau, phần tử V(i,1) |d| = q Mặt khác từ (5.1) suy : n C A |r| n Q (i, k ) | Q(i, k ) | r n i i Vì Q trực chuẩn nên |r| ≤ q nên: C A q n (3.8) dấu đẳng thức xảy giá trị |Q(i,k)| |r|=q Gọi Ωn tập tất khối ảnh kích thước n×n, từ (3.7) (3.8) suy ra: max B A |A n q n max C A |A n q max B A |A n n Vậy : n max C A |A (5.6) n 49 Từ (2.1) (3.6) kết luận: Giá trị Diff lược đồ SVD-1 lớn giá trị Diff lược đồ QR-1 khoảng n lần Đánh giá hoàn toàn phù hợp với kết thực nghiệm mục 3.4.5.3 So sánh lược đồ SVD-N QR-N Bằng cách lập luận tương tự thấy kết luận 3.4.5.2 lược đồ SVD-1 QR-1 lược đồ SVD-N QR-N Điều kiểm chứng kết thực nghiệm 3.5 Chƣơng trình thử nghiệm Mã nguồn Chương trình thử nghiệm xây dựng ngôn ngữ Matlab 2012 Nội dung phần mềm gồm module ứng với thuật toán nhúng thủy vân thuật tốn trích thủy vân hai lược đồ QR1 QRN Các kết thực nghiệm cho thấy, lược đồ thủy vân miền QR bền vững lược đồ SVD1, SVDN trước phép công: nén JPEG, lọc nhiễu, làm mờ Quy trình phần mềm thử nghiệm nhúng dấu thủy vân vào ảnh: Bước 1: Ta có thơng số đầu vào: anhgoc la ảnh màu; anhthuyvan ảnh đa cấp xám; W liệu thủy vân nhúng, ma trận 0,1; n, m kích thước khối thủy vân; T ngưỡng Bước 2: Chạy chương trình có tên gọi Nhungmain.m Chương trình chạy modul thuyvan.m để thực nhúng dấu thủy vân vào ảnh qua phép biến đổi Bước 3: Kết có ảnh nhúng dấu thủy vân 50 *Quy trình phần mềm thử nghiệm trích dấu thủy vân từ ảnh: Bước 1: Chạy chương trình có tên gọi Khoiphucmain.m Chương trình đọc ảnh nhúng dấu thủy vân thực thuật toán trích dấu thủy vân Bước 2: Kết trích dấu thủy vân nhúng vào ảnh *Mã nguồn chƣơng trình : Thuyvan.m function [anhgoc,anhthuyvan,W ] = thuyvan( anhgoc, m,n ,T,thuattoan ) % anhgoc la anh mau % anhthuyvan la anh da cap xam % W la du lieu thuy van da nhung, la ma tran 0,1 % n, m la kich thuoc khoi thuy van % T nguong anh = imread(anhgoc); temp = rgb2ycbcr(anh); anhgoc = anh; I = temp(:,:,1); I = double(I); [M,N] = size(I); M = floor(M/m); N = floor(N/n); W =0; if m ==4 W = csvread('c:\QR\Watermark.txt'); else 51 W = csvread('C:\QR\Watermark8.txt'); end for i=0:M-1 for j=0:N-1 sub_Block = I(i*m+1:(i+1)*m,j*n+1:(j+1)*n); switch(thuattoan) case 'SHONGWEIT' I(i*m+1:(i+1)*m,j*n+1:(j+1)*n) = SHONGWEIT(sub_Block,W(i+1,j+1),T); case 'SVD1' I(i*m+1:(i+1)*m,j*n+1:(j+1)*n) = SVD1(sub_Block,W(i+1,j+1),T); case 'SVDN' I(i*m+1:(i+1)*m,j*n+1:(j+1)*n) = SVDN(sub_Block,W(i+1,j+1),T); case 'QR1' I(i*m+1:(i+1)*m,j*n+1:(j+1)*n) = QR1(sub_Block,W(i+1,j+1),T); case 'QRN' I(i*m+1:(i+1)*m,j*n+1:(j+1)*n) = QRN(sub_Block,W(i+1,j+1),T); case 'QR1DCT' I(i*m+1:(i+1)*m,j*n+1:(j+1)*n) = QR1DCT(sub_Block,W(i+1,j+1),T); otherwise display('Invalid algorithm'); end end end I = uint8(I); temp(:,:,1) = I; anhthuyvan = ycbcr2rgb(temp); end function [watermark_Block] = QRN(Block,bit,q) [Q,R] = qr(Block); x = sum(R(1,:)); k = floor(x/q); xm = k*q + (bitxor(mod(k,2),bit))*q; n = size(Block,2); for i =1:n R(1,i) = R(1,i) * xm/x; end 52 watermark_Block = Q*R; end function [watermark_Block] = QR1(Block,bit,q) [Q,R] = qr(Block); k = floor(R(1,1)/q); R(1,1) = k*q + (bitxor(mod(k,2),bit))*q; watermark_Block = Q*R; end function [watermark_Block] = QR1DCT(Block,bit,q) [Q,R] = qr(Block); Cm=[0.3536,0.4904,0.4619,0.4157,0.3536,0.2778,0.1913,0.0975 0.3536,0.4157,0.1913,-0.0975,-0.3536,-0.4904,-0.4619,-0.2778; 0.3536,0.2778,-0.1913,-0.4904,-0.3536,0.0975,0.4619,0.4157; 0.3536,0.0975,-0.4619,-0.2778,0.3536,0.4157,-0.1913,-0.4904; 0.3536,-0.0975,-0.4619,0.2778,0.3536,-0.4157,-0.1913,0.4904; 0.3536,-0.2778,-0.1913,0.4904,-0.3536,-0.0975,0.4619,-0.4157; 0.3536,-0.4157,0.1913,0.0975,-0.3536,0.4904,-0.4619,0.2778; 0.3536,-0.4904,0.4619,-0.4157,0.3536,-0.2778,0.1913,-0.0975]; P=R*Cm; k = floor(P(1,1)/q); P(1,1) = k*q + (bitxor(mod(k,2),bit))*q; R=P*Cm'; watermark_Block = Q*R; end function [watermark_Block] = SVDN(Block,bit,q) [U,D,V] = svd(Block); n = size(Block,1); x = sum(sum(abs(D))) +1; % ||D||+1 k = floor(x/q); if bit ==1 if mod(k,2) ==1 k = k+1; end else % bit ==0 if mod(k,2) ==0 k = k+1; end end xm = k*q + q/2; for i =1:n D(i,i) = D(i,i) * xm/x; end watermark_Block = U*D*V'; end 53 function [watermark_Block] = SVD1(Block, bit,q) [U,D,V] = svd(Block); z = mod(D(1,1),q); if bit ==0 if z =T temp = Q(3,1); Q(3,1) = Q(2,1); Q(2,1) = temp; end if delta1 >=0 && delta1 0 && delta2=T temp = Q(2,1); Q(2,1) = Q(3,1); Q(3,1) = temp; end if delta1 >=0 && delta1 =0 && delta2

Ngày đăng: 18/12/2014, 00:10

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan