1.一种基于扫描线并行熵编码二值化优化的硬件流水实现方法,其特征在于包括如下步骤:
步骤S1:获取单帧图像的系数数据,基于多个通道的扫描区域,对系数数据分块,用于多通道间并行执行分块的遍历;
步骤S2:构建扩展数组和二维数组用于分块内的系数遍历,扩展数组中,存储上一分块的参考编码系数信息及当前分块的编码系数信息,二维数组中,第一维数组存储当前分块各编码系数信息,第二维数组存储各当前分块编码系数信息对应的在前参考编码系数信息;分块遍历时,根据上一次循环结束后数组的结果,预处理当前分块每个编码系数及其对应的在前参考编码系数,第二维数组用于计算标志位;
步骤S3:遍历多个通道的所有分块,计算当前编码系数的标志位的上下文索引增量,将结果顺序输出。
2.根据权利要求1所述的基于扫描线并行熵编码二值化优化的硬件流水实现方法,其特征在于:所述步骤S1中,增加存储各通道分量参数与起始分块信息的数组,扩展存放通道系数数组为存放多通道的结构体类型,用于多通道间并行执行分块的遍历。
3.根据权利要求1所述的基于扫描线并行熵编码二值化优化的硬件流水实现方法,其特征在于:所述步骤S1中,分别获取每个通道的扫描区域的原点,以若干系数位一个分块,计算每个通道的分块数,通道的分块依次进行遍历,每个通道内的遍历从最后一个分块开始向前遍历到第一个分块,在分块内也是从后往前遍历。
4.根据权利要求1所述的基于扫描线并行熵编码二值化优化的硬件流水实现方法,其特征在于:所述步骤S2中的扩展数组,共21个元素,前5个元素存储上一循环的五个编码系数信息,后16个元素存储当前循环16个编码系数信息,在循环结束时,将最后5个元素移至前5个。
5.根据权利要求1所述的基于扫描线并行熵编码二值化优化的硬件流水实现方法,其特征在于:所述步骤S2中的二维数组,第一维的16个元素对应当前循环扫描的16个编码系数信息,根据当前循环的扩展数组,将每个编码系数信息对应的前5个编码系数信息存入第二维,计算标志位时直接将对应的第二维数组元素传入。
6.根据权利要求1所述的基于扫描线并行熵编码二值化优化的硬件流水实现方法,其特征在于:所述步骤S2中的标志位,包括重要性标志位,重要性标志位的扩展数组存储上一分块的参考编码系数非零性及当前分块的编码系数非零性数据,重要性标志位的二维数组中,第一维数组根据当前重要性标志位的扩展数组元素,存储其对应的在前参考编码系数的非零性数据;所述步骤S3中,基于编码系数非零性遍历分块,以计算当前编码系数的重要性标志位的上下文索引增量,得到重要性标志位的编码系数数组,将数组顺序输出。
7.根据权利要求6所述的基于扫描线并行熵编码二值化优化的硬件流水实现方法,其特征在于:所述步骤S2中的标志位,还包括GT1,GT1的扩展数组存储上一分块的参考编码系数是否大于1及当前分块的编码系数是否大于1的数据,GT1的二维数组中,第一维数组根据当前重要性标志位的扩展数组元素,存储其对应的在前参考编码系数是否大于1的数据;所述步骤S3中,基于编码系数是否大于1遍历分块,以计算当前编码系数大于1的上下文索引增量,得到重要性标志位和GT1的编码系数数组,将数组顺序输出。
8.根据权利要求7所述的基于扫描线并行熵编码二值化优化的硬件流水实现方法,其特征在于:所述步骤S2中的标志位,还包括GT2,GT2的扩展数组存储上一分块的参考编码系数是否大于2及当前分块的编码系数是否大于2的数据,GT2的二维数组中,第一维数组根据当前重要性标志位的扩展数组元素,存储其对应的在前参考编码系数是否大于2的数据;所述步骤S3中,基于编码系数是否大于2遍历分块,以计算当前编码系数大于2的上下文索引增量,得到重要性标志位、GT1和GT2的编码系数数组,将数组顺序输出。
9.根据权利要求8所述的基于扫描线并行熵编码二值化优化的硬件流水实现方法,其特征在于:所述步骤S3中,对大于2的编码系数的多余部分做指数哥伦布编码输出。
10.根据权利要求1所述的基于扫描线并行熵编码二值化优化的硬件流水实现方法,其特征在于:所述步骤S3中,将块非零系数的符号位变量以bypass方法编码输出。