400 likes | 511 Views
This study explores various innovative techniques in digital image coding and data retrieval. It covers compression domain data hiding, data hiding using Sudoku, and reversible data hiding for color images, alongside high payload data embedding techniques. The research emphasizes the balance between visual quality and embedding capacity, delving into categories such as spatial, frequency, and compression domains. The work presents experimental results and methodologies for effectively delivering secret data through steganography while addressing issues like indicator elimination and system improvements.
E N D
A Study of Digital Image Coding and Retrieving Techniques 數位影像編碼與擷取技術之研究 指導教授: 張真誠 教授 研究生: 周永振 Dept. of Computer Science and Information Engineering, National Chung Cheng University
Outline • Part 1: Compression domain data hiding • Part 2: Data hiding using Sudoku • Part 3: Reversible data hiding for color image • Part 4: High payload data embedding for color image • Part 5: SOC improvement Yung-Chen Chou
Introduction • Steganography • Secret data delivery • Visual quality vs. embedding capacity • Categories: • Compression domain • Spatial domain • Frequency domain • Grayscale image/color image • SOC improvement • Indicator • Eliminate the indicator Yung-Chen Chou
Information hiding (Data hiding) Introduction (Cont.) Hiding system Stego image Cover image 1 0 1 0 1 0 0 1 0 1 1 1 1 0 0 Secret message Yung-Chen Chou
VQ domain data hiding • Vector quantization Yung-Chen Chou
d16 d12 d15 d14 d13 VQ domain data hiding (Cont.) • Codeword pairing {d12, d13, d14, d15, d16, d23, d24, d25, d26 d34, d35, d36, d45, d46, d56} cw6 cw2 cw5 cw4 cw1 cw3 G0 G1 G-1 d36>TH Yung-Chen Chou
Indicator = ‘0’ Indicator = ‘1’ Encoded by cwi VQ domain data hiding (Cont.) • Data embedding NBVX = {x0, x1, x3, x4, X, X, X, x8, X, X, X, x12, X, X, X} Image If SMD(cwi,NBVX) <SMD(cwj, NBVX) then X is replaceable Else X is non-replaceable If secret bit = ‘0’ then encode X by cwi else encode X by cwj cwi cwj Yung-Chen Chou G0 G1
VQ domain data hiding (Cont.) • Data extracting and restoring If SMD(cwi) < SMD(cwj) and indicator = ‘0’ restore X by cwi If SMD(cwi) < SMD(cwj) and indicator = ‘1’ restore X by cwj If SMD(cwi) SMD(cwj) and indicator = ‘0’ restore X by cwj If SMD(cwi) SMD(cwj) and indicator = ‘1’ restore X by cwi Image If X encoded by cwithen secret bit = ‘0’ If X encoded by cwjthen secret bit = ‘1’ cwi cwj Yung-Chen Chou G0 G1
VQ domain data hiding (Cont.) • Experimental results Yung-Chen Chou
VQ domain data hiding (Cont.) • Experimental results Yung-Chen Chou
Data hiding using Sudoku • Spatial domain data embedding • Sudoku • A logic-based number placement puzzle Yung-Chen Chou
Data hiding using Sudoku (Cont.) • A Sudoku grid contains nine 3 × 3 matrices, each contains different digits from 1 to 9. • Each row and each column of a Sudoku grid also contain different digits from 1 to 9. • Property Possible solutions: 6,670,903,752,021,072,936,960 (i.e. ≈ 6.671×1021) Yung-Chen Chou
Data hiding using Sudoku (Cont.) Review Zhang and Wang’s method(Embedding) Extracting function: Secret data:1000 1011… p2 255 0 1 2 3 4 0 1 2 3 4 0 1 10002 1 35 : : : : : : : : : : : : : … 11 2 3 4 0 1 2 3 4 0 1 2 3 2 … 10 0 1 2 3 4 0 1 2 3 4 0 1 0 Cover image … 9 3 4 0 1 2 3 4 0 1 2 3 4 3 … 8 1 2 3 4 0 1 2 3 4 0 1 2 1 … 2 7 4 0 1 2 3 4 0 1 3 4 0 4 … 6 2 3 4 0 1 2 3 4 0 1 2 3 2 … 5 0 1 2 3 4 0 1 2 3 4 0 1 0 … 4 3 4 0 1 2 3 4 0 2 3 4 3 1 … 3 1 2 3 4 0 1 2 3 4 0 1 2 1 … 2 4 0 1 2 3 4 0 1 2 3 4 0 4 … 1 2 3 4 0 1 2 3 4 0 1 2 3 2 … 0 0 1 2 3 4 0 1 2 3 4 0 1 0 Stego image p1 0 1 2 3 4 5 6 7 8 9 10 11 … 255 Magic Matrix Yung-Chen Chou
135 Extracted secret data: 10002 Data hiding using Sudoku (Cont.) Review Zhang and Wang’s method(Extracting) p2 255 0 1 2 3 4 0 1 2 3 4 0 1 : : : : : : : : : : : : : … 11 2 3 4 0 1 2 3 4 0 1 2 3 2 … 10 0 1 2 3 4 0 1 2 3 4 0 1 0 … 9 3 4 0 1 2 3 4 0 1 2 3 4 3 … 8 1 2 3 4 0 1 2 3 4 0 1 2 1 Stego image … 7 4 0 1 2 3 4 0 1 2 3 4 0 4 … 6 2 3 4 0 1 2 3 4 0 1 2 3 2 … 5 0 1 2 3 4 0 1 2 3 4 0 1 0 … 4 3 4 0 1 2 3 4 0 1 2 3 4 3 … 3 1 2 3 4 0 1 2 3 4 0 1 2 1 … 2 4 0 1 2 3 4 0 1 2 3 4 0 4 … 1 2 3 4 0 1 2 3 4 0 1 2 3 2 … 0 0 1 2 3 4 0 1 2 3 4 0 1 0 p1 0 1 2 3 4 5 6 7 8 9 10 11 … 255 Magic Matrix Yung-Chen Chou
Data hiding using Sudoku (Cont.) - 1 Reference Matrix M Yung-Chen Chou
279 min. d( , ) = ((8-8)2+(4-7)2)1/2=3 d( , ) = ((9-8)2+(7-7)2)1/2=1 d( , ) = ((6-8)2+(8-7)2)1/2=2.24 9 7 Stego Image Data hiding using Sudoku (Embedding) (Cont.) Secret data:011 001 10… Cover Image Yung-Chen Chou
279 d( , ) = ((11-11)2+(15-12)2)1/2=3 d( , ) = ((15-11)2+(12-12)2)1/2=4 d( , ) = ((9-11)2+(14-12)2)1/2=2.83 min. 9 7 9 14 Stego Image Data hiding using Sudoku (Embedding) (Cont.) Secret data:011 001 10… Cover Image Yung-Chen Chou
Data hiding using Sudoku (Extracting) (Cont.) Stego Image Extracted data: 279 = 011 0012 Yung-Chen Chou
Experimental results Yung-Chen Chou
Experimental results (Cont.) Yung-Chen Chou
Data hiding for color images • True color and color palette image • Color pixel (Red, Green, Blue) • Reversibility Yung-Chen Chou
Stego Data hiding for color images (Cont.) • Review Fridrich’s method R+G+B mod 2 = (115 + 216 + 112) mod 2 = 1 R+G+B mod 2 = (105 + 146 + 193) mod 2 = 0 Image Secret: 010… Yung-Chen Chou
( R, G, B) pi = (112, 217, 110) pi+1=(115, 216, 112) (115, 216, 112) (115, 112, 216) (216, 115, 112) (216, 112, 115) (112, 115, 216) (112, 216, 115) d0 = 3.74 d1 = 149.23 d2 = 145.68 d3 = 147.87 d4 = 147.11 d5 = 5.1 Sorting 00 01 10 11 d0 < d5 < d4 < d3 < d2 < d1 log2NG = log26 = 2 Data hiding for color images (Cont.) • Proposed method (Embedding) If d0 is first one then embeddable Else non-embeddable Image If d(pi+1, p’i+1) < TH=50 then embed secret Else non-embeddable require extra information Secret: 011… Stego Yung-Chen Chou
( R, G, B) (112, 217, 110) (112, 216, 115) (112, 216, 115) (112, 115, 216) (216, 112, 115) (216, 115, 112) (115, 112, 216) (115, 216, 112) d0 = 5.1 d1 = 147.11 d2 = 147.87 d3 = 145.68 d4 = 149.23 d5 = 3.74 Sorting 00 01 10 11 d5 < d0 < d3 < d1 < d2 < d4 log2NG = log26 = 2 Extracted data: 01 Data hiding for color images (Cont.) • Proposed method (Extracting and restoring) Stego Restored image Yung-Chen Chou
Data hiding for color images (Cont.) • Experimental results Yung-Chen Chou
Data hiding for color images (Cont.) • Experimental results Yung-Chen Chou
c1 >c2, if (v1>v2) or (v1=v2 and r1>r2) or (v1 = v2 and r1=r2 and g1>g2) c1 = c2, if (r1=r2 and g1=g2 and g1=g2) c1 < c2, otherwise 0 1 0 1 0 c1 c2 c3 c4 c High payload data hiding for color images • Review Tzeng’s method v = 0.3 r + 0.59 g + 0.11 b v1 = 0.3 10+0.59 20+0.11 15 = 16.45 v2 = 8.17 v3 = 10.22 v4 = 15.21 vc = 18.17 Image Secret: 101… Yung-Chen Chou
… 8 6 8 15 6 15 14 16 … 6 8 15 14 16 14+1=15 15 20 16 20 10 10 10+6 =16 Stego High payload data hiding for color images (Cont.) • The proposed (Embedding) log2(8-6)=1 Image log2(20-10)=3 Secret: 11010010100… Yung-Chen Chou
8 15 6 … 16 20 10 6 8 15 14 16 14-15=1=12 log2(20-10)=3 16-10 = 6 = 1102 1 110 Stego High payload data hiding for color images (Cont.) • The proposed (Extracting) log2(8-6)=1 Extracted secret: Yung-Chen Chou
High payload data hiding for color images (Cont.) • Experimental results Yung-Chen Chou
High payload data hiding for color images (Cont.) Yung-Chen Chou
0 0 52 52 1 1 53 53 2 2 49 49 3 3 50 50 4 4 57 57 5 5 55 55 6 6 48 48 7 7 47 47 State codebook Index table State codebook SOC improvement • Scan-order coding (SOC) Indicator Compression code: …1 011… Index table Indicator Compression code: …0 01100010… Yung-Chen Chou
α Secret = 0 If SMD(α, NBVB) <SMD(α, NBVB) Secret = 1 α Secret = 0 000 ||α If SMD(α, NBVB) SMD(α, NBVB) 111 || α Secret = 1 SOC improvement (Cont.) • Review Lin and Chang’s method NBVB = {b0, b1, b3, b4, X, X, X, b8, X, X, X, b12, X, X, X} Yung-Chen Chou
Can be compressed by SOC (i.e. indicator = 1) Sorted SCB Index table For indicator = 1 Sorted SCB For indicator = 0 SOC improvement (Cont.) • The proposed method (Encoding) Index table If SMD(cw50, NBVBi) < SMD(cw55, NBVBi) Compression code: …101 Else Compression code: … 111 010 Yung-Chen Chou
Index table For indicator = 1 For indicator = 0 For indicator = 1 Sorted SCB For indicator = 0 SOC improvement (Cont.) Can be compressed by SOC (i.e. indicator = 1) Index table If SMD(cw130, NBVBi) < SMD(cw3, NBVBi) Compression code: … 10000010 Else Compression code: … 11111111 10000010 Yung-Chen Chou
Using cw50 to decode Bi For indicator = 1 Sorted SCB For indicator = 0 SOC improvement (Cont.) • The proposed method (Decoding) Compression code: …101… The indicator for next block is ‘1’ SMD(cw55, NBVBi) SMD(cw50, NBVBi) Index table Yung-Chen Chou
Using cw50 to decode Bi For indicator = 1 Sorted SCB For indicator = 0 SOC improvement (Cont.) Compression code: …111 010… The indicator for next block is ‘1’ Index table Yung-Chen Chou
SOC improvement (Cont.) Yung-Chen Chou
SOC improvement (Cont.) • Experimental results
Conclusions • Steganography • Achieve high payload data embedding • Reversibility • Achieve high payload data embedding for color images • Success eliminate the indicator of SOC Yung-Chen Chou