CN113436286B - 一种邻居感知Hilbert曲线编解码方法 - Google Patents

一种邻居感知Hilbert曲线编解码方法 Download PDF

Info

Publication number
CN113436286B
CN113436286B CN202110644811.5A CN202110644811A CN113436286B CN 113436286 B CN113436286 B CN 113436286B CN 202110644811 A CN202110644811 A CN 202110644811A CN 113436286 B CN113436286 B CN 113436286B
Authority
CN
China
Prior art keywords
order
state
point
neighbor
curr
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110644811.5A
Other languages
English (en)
Other versions
CN113436286A (zh
Inventor
李孟娟
王炳月
贾连印
丁家满
卫守林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yunnan Normal University
Original Assignee
Yunnan Normal University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yunnan Normal University filed Critical Yunnan Normal University
Priority to CN202110644811.5A priority Critical patent/CN113436286B/zh
Publication of CN113436286A publication Critical patent/CN113436286A/zh
Application granted granted Critical
Publication of CN113436286B publication Critical patent/CN113436286B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/001Model-based coding, e.g. wire frame
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明涉及一种邻居感知Hilbert曲线编解码方法,属于图像处理、空间数据处理、Web服务等技术领域。本发明包括初始化阶段和编解码阶段,初始化阶段构建Hilbert状态视图和记忆数组(memory)。编解码阶段,对当前点与前邻点前部重复的阶直接生成编码值或坐标,无需迭代编解码,同时当前点可为后邻点提供服务,从而可提高编解码效率。本发明在Hilbert曲线编解码算法中引入邻居感知,可有效利用前后邻信息、避免重复编码、降低需迭代编码的阶数,从而显著提高对一个窗口内所有点进行Hilbert编解码的效率。

Description

一种邻居感知Hilbert曲线编解码方法
技术领域
本发明涉及一种邻居感知Hilbert曲线编解码方法,属于图像处理、空间数据处理、Web服务等技术领域。
背景技术
空间填充曲线广泛应用于图像处理、空间数据处理等领域。目前提出了多种空间填充曲线,例如Morton编码、Gray码和Hilbert曲线等,其中Hilbert曲线具有较好的局部性和空间连续性,在多个领域有重要的应用价值。
Hilbert编解码是基于Hilbert空间填充曲线的基础,研究高效的编解码算法具有较为重要的意义。早期的Hilbert编解码算法多为基于递归的算法,花费大量的时间用于映射关系的计算,算法效率低。目前高效编解码算法多为基于迭代的算法,如李邵俊等基于状态转移矩阵的迭代编码算法、moore等基于位操作的算法、贾连印等免计前0的编解码算法;但现有算法未考虑相邻点之间的数据联系对编解码效率的影响,因此编解码效率不高。
发明内容
本发明要解决的技术问题是提供一种邻居感知Hilbert曲线编解码方法,解决上述问题。
本发明的技术方案是:一种邻居感知Hilbert曲线编解码方法,包括Hilbert状态视图构建阶段、记忆数组构建阶段、编码阶段和解码阶段,具体步骤为:
Step1、Hilbert状态视图构建阶段:
构建编码状态视图PCM存储一阶物理坐标到一阶编码值的映射、PSM存储一阶物理坐标到下一阶状态的映射。构建解码状态视图CPM存储一阶编码值到一阶物理坐标的映射、SPM存储一阶编码值到下一阶的状态的映射。
Step2、记忆数组构建阶段:
创建长度为K(K为阶数)的字符记忆数组memory用于存储前邻点与当前点前部重复的阶(即可跳过的阶)对应的下一阶状态,memory[i]存储第i+1阶状态。
Step3、编码阶段:
给定当前位置点Acurr及其前邻点Aprev和后邻点Anext,利用前邻点Aprev的信息计算当前点Acurr的编码Zcurr,并为后邻点Anext编码提供支持。
Step4、解码阶段:
给定当前编码值Zcurr及其前邻点Zprev和后邻点Znext,利用前邻点Zprev的信息计算当前点Zcurr的坐标值Acurr,并为后邻点Znext解码提供支持。
所述Hilbert状态视图构建阶段,具体包括如下步骤:
Step1.1:1阶的Hilbert曲线,将数据空间等分成4个小网格,根据左下、左上、右下、右上的顺序将4个小网格依次定义为I、II、III、IV象限,对应的物理坐标分别为(0,0)、(0,1)、(1,0)、(1,1)。第N阶的Hilbert曲线可由第N-1阶曲线旋转并翻转填充得到,1阶Hilbert曲线有状态4种开口方向,对应4种基本状态:状态0、状态1、状态2、状态3。
状态0对应开口向下、状态1对应开口向左、状态2对应开口向上、状态3对应开口向右。
Step1.2:给定1阶物理坐标(0,0)、(0,1)、(1,0)、(1,1)和4种状态,分别在PCM和PSM中存储其对应的编码值和下一阶状态,对应关系如下:
状态0:编码值:00、01、11、10;下一阶状态:1、0、3、0;
状态1:编码值:00、11、01、10;下一阶状态:0、2、1、1;
状态2:编码值:10、11、01、00;下一阶状态:2、1、2、3;
状态3:编码值:10、01、11、00;下一阶状态:3、3、0、2;
Step1.3:给定1阶编码值00、01、10、11和4种状态,分别在CPM和SPM中存储其对应的坐标值和下一阶状态,对应关系如下:
状态0:物理坐标:(0,0)、(0,1)、(1,1)、(1,0);下一阶状态:1、0、0、3;
状态1:物理坐标:(0,0)、(1,0)、(1,1)、(0,1);下一阶状态:0、1、1、2;
状态2:物理坐标:(1,1)、(1,0)、(0,0)、(0,1);下一阶状态:3、2、2、1;
状态3:物理坐标:(1,1)、(0,1)、(0,0)、(1,0);下一阶状态:2、3、3、0;
所述编码算法,具体包括如下步骤:
Step3.1:给定长宽分别为m和n的窗口,窗口内(含边框上)共有m*n个位置点。可从任意一点开始对窗口进行扫描,逐点进行编码,不失一般性,扫描方式为S形扫描,即从左下角沿横坐标方向向右编码,到达最右侧点之后,转到上一行从右向左继续编码,周而复始,直至编码结束。
Step3.2、前邻信息获取:
读取前邻点Aprev为当前点Acurr提供的可跳阶数SkippedOrders,SkippedOrders表示无需迭代编码的阶数,当Acurr为窗口中第一个点时,该值为0,并查询记忆数组,获取迭代起始阶的状态T=memory[SkippedOrders]。
Step3.3、后邻信息计算:
对当前点Acurr和后邻点Anext相应的横纵坐标分量执行异或操作计算当前点与后邻点重复的阶数NewSkippedOrders,即后邻可跳过的阶数。
Step3.4、可跳阶编码:
因当前点和前邻点的前SkippedOrders阶相同,故前邻点的前SkippedOrders阶编码值Ztemp即为当前点的前SkippedOrders阶编码值Ztemp
Step3.5、迭代编码:
从SkippedOrders+1阶开始,迭代查询编码状态视图,分别获得当前阶的编码值Zi=PCM[Xi][Yi][T]和下一阶状态T=PSM[Xi][Yi][T],并通过Ztemp=Ztemp<<2|Zi计算编码值,迭代上述过程直至所有阶计算完毕,所得Ztemp即为所求编码Zcurr
Step3.7、更新memory数组:
若NewSkippedOrders>SkippedOrders,更新memory中从SkippedOrders+1至NewSkippedOrders的段,存储对应阶的状态,为计算后邻点编码值做准备。
Step3.8、后邻信息传递:
传递NewSkippedOrders到后邻点,作为后邻点输入的SkippedOrders,转到Step3.2,编码下一点。
所述解码算法,具体包括如下步骤:
Step4.1、前邻信息获取:
读取前邻点Zprev为当前点Zcurr提供的可跳阶数SkippedOrders,SkippedOrders表示无需迭代解码的阶数,当Zcurr为窗口中第一个点时,该值为0,并查询记忆数组,获取迭代起始阶的状态T=memory[SkippedOrders]。
Step4.2、后邻信息计算:
对当前点Zcurr和后邻点Znext的对应编码执行异或操作计算当前点与后邻点重复的阶数NewSkippedOrders,即后邻可跳过的阶数。
Step4.3、可跳阶解码:
因当前点和前邻点的前SkippedOrders阶相同,故其前邻点对应的前SkippedOrders阶坐标Atemp即为当前点的前SkippedOrders阶物理坐标Atemp
Step4.4、迭代解码:
从SkippedOrders+1阶开始,迭代查询解码状态视图,分别获取当前阶的坐标值和下一阶状态/>并通过Atemp=Atemp<<1|Ai计算相应坐标分量,迭代上述过程直至所有阶计算完毕,所得Atemp即为所求坐标Acurr
Step4.5、更新memory数组:
若NewSkippedOrders>SkippedOrders,更新从SkippedOrders+1至NewSkippedOrders的memory段,存储对应阶的状态,为计算后邻点解码值做准备。
Step4.6、后邻信息传递:
传递NewSkippedOrders到后邻点,作为后邻点输入的SkippedOrders,转到Step4.1,解码下一点。
本发明的有益效果是:首次引入前邻点和后邻点可重用阶的概念,设计记忆数组存储可重用阶的状态,有效利用前后邻信息、避免重复编码、降低需迭代编码的阶数,从而显著提高Hilbert编码效率。
附图说明
图1是本发明1阶Hilbert曲线物理坐标和编码值之间的映射关系图;
图2是本发明1阶、2阶和3阶Hilbert曲线图;
图3是本发明邻居感知算法示意图;
图4是本发明编码算法的效率对照图;
图5是本发明解码算法的效率对照图;
图6是本发明的步骤流程图。
具体实施方式
下面结合附图和具体实施方式,对本发明作进一步说明。
实施例1:如图6、1-3所示,一种邻居感知Hilbert曲线编解码方法,包括Hilbert状态视图构建阶段、记忆数组构建阶段、编码阶段和解码阶段,具体步骤为:
Step1、Hilbert状态视图构建阶段:
构建编码状态视图PCM存储一阶物理坐标到一阶编码值的映射、PSM存储一阶物理坐标到下一阶状态的映射。构建解码状态视图CPM存储一阶编码值到一阶物理坐标的映射、SPM存储一阶编码值到下一阶的状态的映射。
Step2、记忆数组构建阶段:
创建长度为K(K为阶数)的字符记忆数组memory用于存储前邻点与当前点前部重复的阶(即可跳过的阶)对应的下一阶状态,memory[i]存储第i+1阶状态。
Step3、编码阶段:
给定当前位置点Acurr及其前邻点Aprev和后邻点Anext,利用前邻点Aprev的信息计算当前点Acurr的编码Zcurr,并为后邻点Anext编码提供支持。
Step4、解码阶段:
给定当前编码值Zcurr及其前邻点Zprev和后邻点Znext,利用前邻点Zprev的信息计算当前点Zcurr的坐标值Acurr,并为后邻点Znext解码提供支持。
所述Hilbert状态视图构建阶段,具体包括如下步骤:
Step1.1:1阶的Hilbert曲线,将数据空间等分成4个小网格,根据左下、左上、右下、右上的顺序将4个小网格依次定义为I、II、III、IV象限,对应的物理坐标分别为(0,0)、(0,1)、(1,0)、(1,1)。第N阶的Hilbert曲线可由第N-1阶曲线旋转并翻转填充得到,1阶Hilbert曲线有状态4种开口方向,对应4种基本状态:状态0、状态1、状态2、状态3。
状态0对应开口向下、状态1对应开口向左、状态2对应开口向上、状态3对应开口向右。
Step1.2:给定1阶物理坐标(0,0)、(0,1)、(1,0)、(1,1)和4种状态,分别在PCM和PSM中存储其对应的编码值和下一阶状态,对应关系如下:
状态0:编码值:00、01、11、10;下一阶状态:1、0、3、0;
状态1:编码值:00、11、01、10;下一阶状态:0、2、1、1;
状态2:编码值:10、11、01、00;下一阶状态:2、1、2、3;
状态3:编码值:10、01、11、00;下一阶状态:3、3、0、2;
Step1.3:给定1阶编码值00、01、10、11和4种状态,分别在CPM和SPM中存储其对应的坐标值和下一阶状态,对应关系如下:
状态0:物理坐标:(0,0)、(0,1)、(1,1)、(1,0);下一阶状态:1、0、0、3;
状态1:物理坐标:(0,0)、(1,0)、(1,1)、(0,1);下一阶状态:0、1、1、2;
状态2:物理坐标:(1,1)、(1,0)、(0,0)、(0,1);下一阶状态:3、2、2、1;
状态3:物理坐标:(1,1)、(0,1)、(0,0)、(1,0);下一阶状态:2、3、3、0。
所述编码算法,具体包括如下步骤:
Step3.1:给定长宽分别为m和n的窗口,窗口内(含边框上)共有m*n个位置点。可从任意一点开始对窗口进行扫描,逐点进行编码,不失一般性,扫描方式为S形扫描,即从左下角沿横坐标方向向右编码,到达最右侧点之后,转到上一行从右向左继续编码,周而复始,直至编码结束。
Step3.2、前邻信息获取:
假定阶数k=6,当前点Acurr(X,Y)=(6,6)=(000110,000110),其前邻点Aprev(X,Y)=(5,6)=(000101,000110),其后邻点Anext(X,Y)=(7,6)=(000111,000110);Acurr.X和Acurr.Y分别表示当前点的横、纵坐标;
假定前邻点已正确编码并已更新memory数组,已计算的前邻点的编码值为000000101101=45,已计算的前邻点横坐标Aprev.X可为当前点Acurr.X提供的可跳阶数SkippedOrders=4,memory数组的前5个位置存储的状态分别为[0,1,0,1,1],分别对应Acurr的第1至5阶的状态;根据SkippedOrders=4查询获得迭代起始阶(即第5阶)状态T=memory[4]=1;
Step3.3、后邻信息计算:
因当前点Acurr和后邻点Anext的纵坐标相同,故仅需对横坐标进行异或运算Acurr.X^Anext.X=000110^000111=000001,得当前点与后邻点重复的阶数NewSkippedOrders=5;
Step3.4、可跳阶编码:
因前邻点与当前点重复的阶数SkippedOrders为4,故当前点Acurr的前4阶编码为前邻点Aprev的前4阶编码值Ztemp=00000010;
Step3.5、迭代编码:
查询编码状态视图,Z5=PCM[X5][Y5][T]=PCM[1][1][1]=10;T=PSM[1][1][1]=1,Z6=PCM[X6][Y6][T]=PCM[0][0][1]=00;Ztemp=Ztemp<<2|PCM[Xi][Yi][T]=000000101000,Zcurr=000000101000;
Step3.6、更新memory数组:
NewSkippedOrders>SkippedOrders,更新从SkippedOrders+1至NewSkippedOrders的下一阶状态,当i=5时T=PSM[X5][Y5][T]=1;数组更新后memory存储的状态分别为[0,1,0,1,1]+[1]=[0,1,0,1,1,1];
Step3.7、后邻信息传递:
传递NewSkippedOrders=5到后邻点,后邻点输入的SkippedOrders为5,转到步骤320,编码下一点。
所述解码算法,具体包括如下步骤:
Step4.1、前邻信息获取:
K=6,给定点:Zprev=000000101101=45;Zcurr=000000101000=40;Znext=000000101001=41。前邻点已编码并已更新memory数组,已计算的前邻点编码值Zprev可为当前点Zcurr提供的可跳阶数SkippedOrders=4,memory数组的前5个位置存储的状态分别为[0,1,0,1,1];根据SkippedOrders=4查询获得迭代起始阶(即第5阶)状态T=memory[4]=1;
Step4.2、后邻信息计算:
当前点Zcurr和后邻点Zprev编码值进行异或运算Zcurr^Znext=000000101000^000000101001=000000000001,得当前点与后邻点重复的阶数NewSkippedOrders=5;
Step4.3、可跳阶解码:
因当前点Acurr和后邻点Anext的纵坐标相同,前邻点与当前点重复的阶数SkippedOrders为4,故当前点Acurr的坐标X前4阶物理坐标为Acurr.X=Atemp.X=0001;
Step4.4、迭代解码:
查询解码状态视图,A5=CPM[Z9][Z10][T]=CPM[1][0][1]=(1,1);T=SPM[1][0][1]=1,A6=CPM[Z11][Z12][T]=CPM[0][0][1]=(0,0);Acurr.Y相同,为000110,所以Acurr=(000110,000110);
Step4.5、更新memory数组:
NewSkippedOrders>SkippedOrders,更新从SkippedOrders+1至NewSkippedOrders的下一阶状态,当i=5时,数组更新后memory存储的状态分别为[0,1,0,1,1]+[1]=[0,1,0,1,1,1];
Step4.6、后邻信息传递:
传递NewSkippedOrders=5到后邻点,后邻点输入的SkippedOrders为5,转到步骤410,解码下一点。
本发明可通过以下实验结果进一步说明。
实验环境:CPU为Intel(R)Core(TM)i7-7500U CPU@2.7GHz,内存为8GB,操作系统为windows 10,编译环境为Microsoft Visual Studio 2015。
实验数据:本发明给定阶数k,横纵坐标取值范围均为[0,2k-1]。编码时,通过循环对大小为2k*2k的坐标在[0,22k-1]范围中共22k个二维空间中的每个位置点进行编码,解码时,循环对[0,22k-1]范围中共22k个编码值依次进行解码。
实验结果分析:
实验是本发明方法neibourAware、基于李邵俊等的qhc方法、moore等的方法随阶数变化的编码和解码时间对比,对比结果如图4和5所示。从图中可见,neibourAware效率优于其它方法,且随着阶数增加,neibourAware的优势越来越明显。例如,在14阶时,neibourAware编码时间仅为7.57s,比起Moore的算法编码效率提升近4.9倍。
以上结合附图对本发明的具体实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。

Claims (4)

1.一种邻居感知Hilbert曲线编解码方法,其特征在于:
Step1:构建编码状态视图PCM存储一阶物理坐标到一阶编码值的映射、PSM存储一阶物理坐标到下一阶状态的映射;构建解码状态视图CPM存储一阶编码值到一阶物理坐标的映射、SPM存储一阶编码值到下一阶的状态的映射;
Step2:创建长度为K的字符记忆数组memory用于存储前邻点与当前点前部重复的阶对应的下一阶状态,memory[i]存储第i+1阶状态,K为阶数;
Step3:给定当前位置点Acurr及其前邻点Aprev和后邻点Anext,利用前邻点Aprev的信息计算当前点Acurr的编码Zcurr,并为后邻点Anext编码提供支持;
Step4:给定当前编码值Zcurr及其前邻点Zprev和后邻点Znext,利用前邻点Zprev的信息计算当前点Zcurr的坐标值Acurr,并为后邻点Znext解码提供支持。
2.根据权利要求1所述的邻居感知Hilbert曲线编解码方法,其特征在于所述Step1具体步骤为:
Step1.1:1阶的Hilbert曲线,将数据空间等分成4个小网格,根据左下、左上、右下、右上的顺序将4个小网格依次定义为I、II、III、IV象限,对应的物理坐标分别为(0,0)、(0,1)、(1,0)、(1,1);第N阶的Hilbert曲线可由第N-1阶曲线旋转并翻转填充得到,1阶Hilbert曲线有状态4种开口方向,对应4种基本状态:状态0、状态1、状态2、状态3;
状态0对应开口向下、状态1对应开口向左、状态2对应开口向上、状态3对应开口向右;
Step1.2:给定1阶物理坐标(0,0)、(0,1)、(1,0)、(1,1)和4种状态,分别在PCM和PSM中存储其对应的编码值和下一阶状态,对应关系如下:
状态0:编码值:00、01、11、10;下一阶状态:1、0、3、0;
状态1:编码值:00、11、01、10;下一阶状态:0、2、1、1;
状态2:编码值:10、11、01、00;下一阶状态:2、1、2、3;
状态3:编码值:10、01、11、00;下一阶状态:3、3、0、2;
Step1.3:给定1阶编码值00、01、10、11和4种状态,分别在CPM和SPM中存储其对应的坐标值和下一阶状态,对应关系如下:
状态0:物理坐标:(0,0)、(0,1)、(1,1)、(1,0);下一阶状态:1、0、0、3;
状态1:物理坐标:(0,0)、(1,0)、(1,1)、(0,1);下一阶状态:0、1、1、2;
状态2:物理坐标:(1,1)、(1,0)、(0,0)、(0,1);下一阶状态:3、2、2、1;
状态3:物理坐标:(1,1)、(0,1)、(0,0)、(1,0);下一阶状态:2、3、3、0。
3.根据权利要求1所述的邻居感知Hilbert曲线编解码方法,其特征在于Step3具体步骤为:
Step3.1:给定长宽分别为m和n的窗口,窗口内共有m*n个位置点;从任意一点开始对窗口进行扫描,逐点进行编码,扫描方式为S形扫描,即从左下角沿横坐标方向向右编码,到达最右侧点之后,转到上一行从右向左继续编码,周而复始,直至编码结束;
Step3.2:读取前邻点Aprev为当前点Acurr提供的可跳阶数SkippedOrders,SkippedOrders表示无需迭代编码的阶数,当Acurr为窗口中第一个点时,该值为0,并查询记忆数组,获取迭代起始阶的状态T=memory[SkippedOrders];
Step3.3:对当前点Acurr和后邻点Anext相应的横纵坐标分量执行异或操作计算当前点与后邻点重复的阶数NewSkippedOrders,即后邻可跳过的阶数;
Step3.4:因当前点和前邻点的前SkippedOrders阶相同,故前邻点的前SkippedOrders阶编码值Ztemp即为当前点的前SkippedOrders阶编码值Ztemp
Step3.5:从SkippedOrders+1阶开始,迭代查询编码状态视图,分别获得当前阶的编码值Zi=PCM[Xi][Yi][T]和下一阶状态T=PSM[Xi][Yi][T],并通过Ztemp=Ztemp<<2|Zi计算编码值,迭代上述过程直至所有阶计算完毕,所得Ztemp即为所求编码Zcurr
Step3.6:若NewSkippedOrders>SkippedOrders,更新memory中从SkippedOrders+1至NewSkippedOrders的段,存储对应阶的状态,为计算后邻点编码值做准备;
Step3.7:传递NewSkippedOrders到后邻点,作为后邻点输入的SkippedOrders,转到Step3.2,编码下一点。
4.根据权利要求1所述的邻居感知Hilbert曲线编解码方法,其特征在于Step4具体步骤为:
Step4.1:读取前邻点Zprev为当前点Zcurr提供的可跳阶数SkippedOrders,SkippedOrders表示无需迭代解码的阶数,当Zcurr为窗口中第一个点时,该值为0,并查询记忆数组,获取迭代起始阶的状态T=memory[SkippedOrders];
Step4.2:对当前点Zcurr和后邻点Znext的对应编码执行异或操作计算当前点与后邻点重复的阶数NewSkippedOrders,即后邻可跳过的阶数;
Step4.3:因当前点和前邻点的前SkippedOrders阶相同,故其前邻点对应的前SkippedOrders阶坐标Atemp即为当前点的前SkippedOrders阶物理坐标Atemp
Step4.4:从SkippedOrders+1阶开始,迭代查询解码状态视图,分别获取当前阶的坐标值Ai=CPM[Z2i-1][Zi][T]和下一阶状态T=SPM[Z2i-1][Zi][T],并通过Atemp=Atemp<<1|Ai计算相应坐标分量,迭代上述过程直至所有阶计算完毕,所得Atemp即为所求坐标Acurr
Step4.5:若NewSkippedOrders>SkippedOrders,更新从SkippedOrders+1至NewSkippedOrders的memory段,存储对应阶的状态,为计算后邻点解码值做准备;
Step4.6:传递NewSkippedOrders到后邻点,作为后邻点输入的SkippedOrders,转到Step4.1,解码下一点。
CN202110644811.5A 2021-06-09 2021-06-09 一种邻居感知Hilbert曲线编解码方法 Active CN113436286B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110644811.5A CN113436286B (zh) 2021-06-09 2021-06-09 一种邻居感知Hilbert曲线编解码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110644811.5A CN113436286B (zh) 2021-06-09 2021-06-09 一种邻居感知Hilbert曲线编解码方法

Publications (2)

Publication Number Publication Date
CN113436286A CN113436286A (zh) 2021-09-24
CN113436286B true CN113436286B (zh) 2023-07-25

Family

ID=77755527

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110644811.5A Active CN113436286B (zh) 2021-06-09 2021-06-09 一种邻居感知Hilbert曲线编解码方法

Country Status (1)

Country Link
CN (1) CN113436286B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105357247A (zh) * 2015-09-22 2016-02-24 上海理工大学 基于分层云对等网络的多维属性云资源区间查找方法
CN110457317A (zh) * 2019-07-23 2019-11-15 昆明理工大学 一种基于状态视图的Hilbert曲线编码和解码方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8340192B2 (en) * 2007-05-25 2012-12-25 Microsoft Corporation Wyner-Ziv coding with multiple side information

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105357247A (zh) * 2015-09-22 2016-02-24 上海理工大学 基于分层云对等网络的多维属性云资源区间查找方法
CN110457317A (zh) * 2019-07-23 2019-11-15 昆明理工大学 一种基于状态视图的Hilbert曲线编码和解码方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于状态视图的高效Hilbert编码和解码算法;贾连印;陈明鲜;李孟娟;游进国;丁家满;;电子与信息学报(06);全文 *

Also Published As

Publication number Publication date
CN113436286A (zh) 2021-09-24

Similar Documents

Publication Publication Date Title
JP4579987B2 (ja) 時間的に変わるグラフィックモデルを表すデータストリームの符号化方法
JP5936687B2 (ja) ツリー構造の適応的エントロピー符号化方法
US20120082233A1 (en) Method and apparatus for diagonal scan and simplified context selection for parallel entropy coding of significance map of transform coefficients
US20100027903A1 (en) Image signal encoding method and decoding method, information source encoding method and decoding method, apparatuses therefor, programs therefor, and storage media which store the programs
CN103248367B (zh) 码流数据的编码、解码方法和装置
CN103067022A (zh) 一种整型数据无损压缩方法、解压缩方法及装置
CN110021369B (zh) 基因测序数据压缩解压方法、系统及计算机可读介质
CN110457317B (zh) 一种基于状态视图的Hilbert曲线编码和解码方法
US7612694B1 (en) Efficient coding of small integer sets
Liu et al. Directional difference chain codes with quasi-lossless compression and run-length encoding
CN103929642A (zh) 一种hevc变换系数的熵编码上下文模型偏移值快速计算方法
CN104268077A (zh) 基于混沌遗传算法的测试用例集约简算法
CN113436286B (zh) 一种邻居感知Hilbert曲线编解码方法
CN100546207C (zh) 一种基于DVB-RCS标准的双二元Turbo码译码方法
CN110489606B (zh) 一种分组Hilbert编码和解码方法
Zheng et al. High net information density DNA data storage by the MOPE encoding algorithm
JP2016535382A (ja) 元の画像の低品質バージョン及びエピトミから元の画像の推定を構築する方法及び装置
EP4083924A1 (en) Nearest neighbor search method, apparatus, device, and storage medium
CN1941910B (zh) 编码坐标内插符、解码比特数据流的装置及方法
CN114095735A (zh) 一种基于块运动估计和运动补偿的点云几何帧间预测方法
Lei et al. A scale-elastic discrete grid structure for voxel-based modeling and management of 3D data
CN110489605A (zh) 一种数据偏斜分布下的Hilbert编码和解码方法
CN116128985A (zh) 基于双分支神经网络的大规模点云几何压缩方法
CN113886607B (zh) 基于图神经网络的哈希检索方法、装置、终端及存储介质
CN104679775B (zh) 一种基于Huffman表的数据处理方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant