地理首页
地理教学
地理科普
地理试题
地理课件
地理教案
地理学案
地理复习
地理图片
地理课本
地理书库
中国地图
世界地图
地理新闻
行政区划
小故事
作文素材
作文大全
范文大全
黑板报
手抄报
地理资料
中国旅游
世界各地

自适应二维行程编码-自适应二维行程编码

时间:2013-07-22  归属:地理信息系统导论
第三章 空间数据处理
第二节 空间数据压缩编码
二、自适应二维行程编码
 1.基于线性四叉树的二维Morton行程编码

     

    在线性四叉树的构造中,一种高效的算法是按Morton扫描顺序检查每个像元,并依Morton地址递增的顺序产生四叉树的结点。若按Morton扫描顺序将二维影像变成一维线性表,然后进行行程编码,便得到所谓的二维Morton行程编码。这种行程码突破了四叉树以方块为单元的限制(但失去了四叉树的性质),因而比四叉树具有更大的压缩比。形成这种码和解这种码的关键是了解Morton地址与对应的二维影像地址之间的关系。

    设影像大小为2n×2n,y为行号,x为列号,Morton地址为morton,二维影像地址为offset=y·2n+x。

     

    1)由Morton地址求对应的二维影像地址

     

    int power2[]={1,2,4,8,16,32,64,128,256,512,1024};

    long offset(int n,long morton)

    int x,y,1;

X=y=0;

for(i=0;i<n;i++){

if(morton &1)!=0 x+=power2[i];

if(morton &2)!=0 y+=power2[i];

morton>>=2;

    return((long)(y<<n)+x);

    }

     

    2)由二维影像的行号和列号求对应的Morton地址

     

    long power4[]={1L,4L,16L,64L,256L,1024L,4096L,16384L,65536L,262144L,1048576L};

    long morton(int n,int y,int x)

    {

intk;

long i,j;

i=j=OL;

for(k=0;k<n;k++){

j+=(y%2)* power4[k];

y>>=1;

i+=(x%2)* power4[k];

    X>>=1;

return(2*j+i);

     

    2.n-Morton行程编码

     

    将大小为2m×2m的影像划分成大小为2n×2n(1≤n≤m)的子块,依Morton扫描顺序取各子块,各子块按行列顺序计算二维行程,子块(末子块除外)的最后一行程延续到下一子块,这样便得到整块影像的行程编码。我们将这种编码定义为n-Morton行程编码。当n=1时,1-Morton行程编码就是通常的二维Morton行程编码。当n=m时,m-Morton行程编码就是对整块影像按行列顺序扫描的二维行程编码。可见,n-Morton行程编码扩展了基于线性四叉树的二维Morton行程编码。

     

    3.自适应二维行程编码

     

    二维行程编码的效率取决于形成行程的顺序。不同的影像可能信息量变化很大,每块影像的局部也可能变化很大。由此,产生了随影像局部活动性变化而变化的自适应二维行程编码。其基本思想是:首先将影像分成较大的子块(假设大小为2m×2m),然后对各子块进行分析,计算子块的n-Morton(n=1,2,…,m)行程数,取其最小者为此子块的行程编码,各子块按各自最合适的顺序编码,最后形成整块影像的编码顺序,按此顺序计算行程,便可得到行程数较少、压缩比较大的行程编码。若对行程进行MHC编码,则又可进一步提高压缩比。

    这种编码的效率比任何一种单一的Morton行程编码都高。对密集图形影像来说,若采用准等长编码,则行程编码的效率不一定高于按位面存贮的效率。对稀疏图形影像来说,无论采用何种行程编码,其效率都远高于按位面存贮的效率。一种较实用的存贮策略是,直接按位面存贮较密集的图形影像,而用自适应Morton行程编码存贮较稀疏的图形影像。

    加载更多内容...
  • 关键词:自适应二维行程编码
  • 上一篇:数字高程模型数据和多灰度影像的压
  • 下一篇:影像压缩编码-空间数据压缩编码
  • 猜你喜欢()