发明名称 JPEG_LS游程编码FPGA实现方法
摘要 本发明公开一种JPEG_LS游程编码FPGA实现方法。本发明在JPEG_LS标准实现方法的基础上,按照索引值建立、存储与查找映射表,获得累加和数组,并且采用二分比较法,将游程长度与累加和数组中的数值进行五次比较,得到循环次数,实现游长编码,同时分两步简单有效地实现索引值更新。本发明解决了索引值更新结构复杂的问题,在短周期内实现游长编码,通过累加运算简化了映射表结构,节省了硬件资源。本发明采用全流水结构,硬件实现资源消耗少,具有实时性,易于现场可编程门阵列实现。
申请公布号 CN102724505A 申请公布日期 2012.10.10
申请号 CN201210198816.0 申请日期 2012.06.06
申请人 西安电子科技大学 发明人 雷杰;王舒瑶;李云松;郭杰;刘凯;魏雯;张毅;贾超群
分类号 H04N7/26(2006.01)I 主分类号 H04N7/26(2006.01)I
代理机构 陕西电子工业专利中心 61205 代理人 田文英;王品华
主权项 一种JPEG_LS游程编码FPGA实现方法,包括以下步骤:(1)输入像素点1a)将需要压缩的图像像素点输入到JPEG_LS编码器中;1b)将当前像素点数值信息传输至下一个像素点编码处;1c)按照当前像素点与其邻近点的相应位置关系,依次从随机存储器中读出当前像素点的上一行邻近点信息;1d)将需要压缩的图像行尾信号输入到JPEG_LS编码器中;1e)将需要压缩的图像初次编码信号输入到JPEG_LS编码器中;(2)判断游程长度2a)比较当前像素点数值与其所有邻近点数值是否相等,若所有邻近点数值均与当前像素点数值相等,则计数器加“1”,返回步骤(1)读取下一个要处理的像素点及其邻近点信息,直至出现任一邻近点数值与当前像素点数值不相等的情形时,停止计数;2b)将停止后的计数器内存储的数值提取出来作为游程长度,存储在移位寄存器内;(3)建立加和表3a)对标准算法中参考数组的每个数值做“2”次幂运算,将幂运算结果组成移位数组;3b)将标准算法中的索引值在取值范围内连续取值,按照索引值的取值大小,依次在移位数组内分别查找出编号对应索引值的数值,将查找出的数值与编号在其后方的数值逐次进行累加运算,将每次累加运算的结果组成编号为索引值的加和数组;3c)将步骤3b)中得到的所有加和数组存入随机存储器中,组成一个加和表,供后续操作进行查找;(4)判断索引值大小判断步骤(1)中的初次编码信号是否有效,若有效,设置索引值为“0”,否则设置索引值为移位寄存器内编码更新的索引值,将索引值存储在移位寄存器内;(5)查找加和表按照索引值大小,查找加和表中编号对应于索引值的加和数组,读取出加和数组中存储的数值信息,将得到的加和数组信息存储在移位寄存器中;(6)二分比较6a)将范围为“0”到“32”的区间作为比较区间;6b)求出当前比较区间两个边界点数值的平均值,将平均值作为中间点,以中间点为界限,将比较区间划分为上、下两部分区间;6c)提取出移位寄存器内的加和数组和游程长度,查找加和数组中编号对应于当前中间点的数值,判断游程长度值是否小于中间点对应的数值:若小于,则在比较信息中记录一比特“0”,选取下半个区间作为比较区间;否则,在比较信息中记录一比特“1”,选取上半个区间作为比较区间,返回步骤6b),重新选取中间点进行比较操作,直到进行五次比较操作,获得五个比特的比较信息后,停止操作;6d)将获得五个比特比较信息的二进制数转化为十进制数,对十进制数进行加“1”操作;将相加后的结果作为循环次数值,存入移位寄存器内;(7)游长编码将从移位寄存器中提取的循环次数值作为度量值,输出以此度量值为长度的全“1”码流到压缩码流缓存器中;(8)更新参数8a)提取移位寄存器中的更新索引值和循环次数值,将更新索引值与循环次数值相加,将相加的结果作为索引值更新的中间结果存入移位寄存器中;8b)将循环次数值减去“1”得到的数值作为查找编号,读出移位寄存器中的游程长度和加和数组,提取加和数组中查找编号对应的数值,用游程长度减去此对应数值,得到更新的游程长度值,将更新的游程长度值存入移位寄存器中;(9)判断步骤(1)中输入的行尾信号是否有效:9a)若有效,输出一比特“1”到压缩码流缓存器中;将从移位寄存器中提取的索引值更新的中间结果作为编码更新的索引值;9b)若无效,输出一比特“0”到压缩码流缓存器中,提取移位寄存器中索引值更新的中间结果和更新的游程长度,将索引值更新的中间结果作为编号,提取参考数组中此编号对应的数值,将此数值作为度量值,输出以度量值为长度,以更新的游程长度值为大小的二进制码流;将索引值更新的中间结果减去“1”得到的数值作为编 码更新的索引值;9c)将编码更新的索引值存储在移位寄存器中,供编码器在判断索引值时使用;(10)码字合成将编码时存入压缩码流缓存器中的码流按照存储顺序连接在一起,输出连接后合成的码流到编码器外部。
地址 710071 陕西省西安市太白南路2号
您可能感兴趣的专利