基于DCT变换的图象伪装及水印算法
设CI是M×N大小的载体图象,SI为要想隐藏的P×Q大小的秘密图象,P=M/2,Q=N/2。
通过本算法,我们要把图象SI隐藏到图象CI中。算法分以下几步进行:
1.压缩:为了将上述的图象SI隐藏到载体图象CI中,首先利用二维小波变换对SI进行变换,
为了达到图象压缩的效果,我们只保留SILL。
[SILL,SIHL,SILH,SIHH]=DWT(SI)
2.随机置换:由事先选定的口令K控制生成两个分别从1到P/2和从1到Q/2的随机置换RProw
和RPcol,并按照下式对SILL进行变换:
SILL(i,j)=SILL(RProw(i),RPcol(j))
3.分块:将CI分解为(M/8)´(N/8)个8´8大小的分块BCIm,n;同时,将SILL也分解为(M/8)
´(N/8)个2´2大小的分块BSIm,n。
4.DCT变换:对每一个BCIm,n,进行DCT变换:
DBCIm,n=DCT(BCIm,n)