(HEVC)Z扫描和光栅扫描

将自己看到的对我帮助很大的文章转载于此,方便下次查阅。

原文链接:http://blog.csdn.net/u010854339/article/details/8994985

本文首先参考了  ① http://blog.csdn.net/hevc_cjl/article/details/8183144   ②http://blog.csdn.net/tianzhaixing/article/details/8694105  两位的帖子,过程会引用作者的原图。知识不深,但刚开始自己也迷糊,所以这里贴出来以便以后碰到这方面基础的时候查证。

首先为了数据处理的方便,HEVC以4x4块为最小单位,对每个CU进行分割;同时,为了简化计算,在初始化时定义了地址映射的数组,g_auiRasterToZscan, g_auiZscanToRaster。

g_auiZscanToRaster[z-scan index ] =raster scan index
g_auiRasterToZscan[raster index ]  =z-scan index

下图一个小方块代表一个4*4块,这里只是显示了部分64*64区域,我们以此为例去理解Raster与Zscan的对应关系:

oK,那么,我们有:
 g_auiZscanToRaster[ 4 ] = 2;                                                                                               g_auiRasterToZscan[ 2 ]=4
g_auiZscanToRaster[ 5 ] = 3;                                                                                                g_auiRasterToZscan[ 10] =6
g_auiZscanToRaster[ 16 ] = 4;           ..........                                                                         g_auiRasterToZscan[ 16]  =8   .........
******************************************************************************************************************************************
回到HM代码中,正如 作者hevc_cjl所贴出来的:(原作者第二图ZscanToRaster第四行第1,2两个数应该为8,9,此处改正过来了)

第一个RasterToZscan我们绝大多数都能理解,那么ZscanToRaster的表格数据是怎么回事?
回到概念                 g_auiZscanToRaster [   z-scan index  ] =  raster scan index 
g_auiZscanToRaster[0] = 0                
g_auiZscanToRaster[1] = 1
g_auiZscanToRaster[16] = 4               
g_auiZscanToRaster[17] = 5
g_auiZscanToRaster[2] = 16
。。。。。。。。。。。
   我们看看到底是不是这样子?以第一张表格为准,我们来验证。
g_auiZscanToRaster[16] = 4             Zscan的16对应于raster的4位置(即     g_auiRasterToZscan[ 4 ]=16 )   
g_auiZscanToRaster[17] = 5              Zscan的17对应于raster的5位置 (即     g_auiRasterToZscan[ 5 ]=17 )   

      周
      20130821
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值