[发明专利]一种基于3D HuntKill迷宫的数字置乱方法有效
申请号: | 201410745865.0 | 申请日: | 2014-12-08 |
公开(公告)号: | CN104394298B | 公开(公告)日: | 2019-03-05 |
发明(设计)人: | 邵利平 | 申请(专利权)人: | 陕西师范大学 |
主分类号: | H04N1/32 | 分类号: | H04N1/32 |
代理公司: | 西安通大专利代理有限责任公司 61200 | 代理人: | 陆万寿 |
地址: | 710062 陕*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 huntkill 迷宫 数字 方法 | ||
1.一种基于3D HuntKill迷宫的数字置乱方法,其特征在于包括以下步骤:
第1步:设定迷宫初始范围为Sinit=()m×n×l和迷宫有效区域Smaze=(si,j,k)m×n×l且Smaze=(si,j,k)m×n×l为图像上3D局部不规则封闭连通区域,对于i=0,…,m-1,j=0,…,n-1,k=0,…,l-1,若则标记si,j,k=-1,反之则标记si,j,k=0表示节点si,j,k未访问,若si,j,k>0表示节点si,j,k已访问,统计有效区域范围内的节点数量Nummaze=count(Smaze);
第2步:对于i=0,…,m-1,j=0,…,n-1,k=0,…,l-1,记si,j,k.0,si,j,k.1,si,j,k.2,si,j,k.3,si,j,k.4,si,j,k.5依次为节点si,j,k的下方墙、右方墙、上方墙、左方墙、底部墙和顶部墙,初始化si,j,k.d=-1,d=0,1,2,3,4,5,si,j,k.d=-1表示有墙,si,j,k.d=0表示无墙;
第3步:选择随机数发生器y=RG(x),设定随机数发生器初始值RG.init=seed,记已访问节点数量为Numvisited,Numvisited=0,初始化迷宫节点更新序列Aupdate=Φ;
第4步:随机选取x=x0,y=y0,z=z0,标记sx,y,z=1,将(x,y,z)加入到节点更新序列Aupdate=Aupdate.add((x,y,z)),Numvisited=Numvisited+1;
第5步:若Numvisited<Nummaze,则循环执行第6步和第7步:
第6步:若sx,y,z的周围相邻节点sx+1,y,z,sx,y+1,z,sx-1,y,z,sx,y-1,z,sx,y,z-1,sx,y,z+1存在Smaze范围内未访问的节点,则按随机数发生器随机选择1个未访问节点,记为sx′,y′,z′,将sx,y,z和sx′,y′,z′之间的分割墙标记为0,更新x=x′,y=y′,z=z′,标记sx,y,z=1,Aupdate=Aupdate.add((x,y,z)),Numvisited=Numvisited+1;
第7步:反之则从Aupdate随机选择1个节点坐标作为当前节点sx,y,z的坐标(x,y,z)并且满足sx+1,y,z,sx,y+1,z,sx-1,y,z,sx,y-1,z,sx,y,z-1,sx,y,z+1存在未访问的Smaze范围内节点;
第8步:利用步骤7最终得到的Aupdate构造Smaze=(si,j,k)m×n×l范围内所有节点间的节点位置映射关系,用于改变图像上的3D局部不规则区域Smaze=(si,j,k)m×n×l范围内的像素位置;从而将图像上3D局部不规则封闭连通区域Smaze=(si,j,k)m×n×l范围内所有节点进行整体置乱。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于陕西师范大学,未经陕西师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410745865.0/1.html,转载请声明来源钻瓜专利网。