资源简介

对任意分辨率的图像进行置乱和还原的分块Arnold变换,既可以按最大公约数来划分方块(可修改为指定块数),也可以按最大分割法来划分方块。

资源截图

代码片段和文件信息

function imgblk1 = BlkAT(imgblkabn)
% 对图像方阵imgblk进行Arnold变换,n为置乱次数
% Code is adapted from the web site: http://www.cnblogs.com/tiandsp/p/3954550.html

[hw]=size(imgblk); blksize=h; 
% 对imgblk置乱,结果放入imgblk1中
imgblk1=zeros(blksizeblksize);
N=blksize;
for i=1:n % 置乱n次
    for y=1:blksize
        for x=1:blksize
            xx=mod((x-1)+b*(y-1)N)+1;
            yy=mod(a*(x-1)+(a*b+1)*(y-1)N)+1;
            imgblk1(yyxx)=imgblk(yx);
        end
    end
    imgblk=imgblk1;
end
end 


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2015-08-07 15:16  Arnold_Transform\
     文件       20342  2015-08-07 15:16  Arnold_Transform\293x220.jpg
     文件         538  2015-08-07 15:16  Arnold_Transform\BlkAT.m
     文件         754  2015-08-07 15:16  Arnold_Transform\EqualBlockArnoldTransform.m
     文件         551  2015-08-07 15:16  Arnold_Transform\InverseBlkAT.m
     文件         748  2015-08-07 15:16  Arnold_Transform\InverseEqualBlockArnoldTransform.m
     文件        1084  2015-08-07 15:16  Arnold_Transform\InverseMaxBlockArnoldTransform.m
     文件        1080  2015-08-07 15:16  Arnold_Transform\MaxBlockArnoldTransform.m
     文件         767  2015-08-07 15:16  Arnold_Transform\Test_of_BlockArnoldTransform.m

评论

共有 条评论

相关资源