一种无存储介质的静止图像帧间无损恢复算法的制作方法

文档序号:23098161发布日期:2020-11-27 13:01阅读:128来源:国知局
本发明涉及固定带宽或有限码流情况下,无损恢复帧间视频图像
技术领域
:,特别涉及一种无存储介质的静止图像帧间无损恢复算法。
背景技术
::随着社会的进步和科技的发展,多媒体技术及其应用有了巨大的发展,已经渗入到人类物质文化生活的方方面面。其中,数字图像和视频的压缩技术是多媒体技术的重要组成部分。早在1992年,由iso/iec和itu-t联合组成的联合图片专家组(jointphotographicexpertsgroup)就正式发布了连续色调的静止图像压缩标准。随着互联网和多媒体技术的迅速发展,人们对于图像压缩技术的要求越来越高,传统的静态图像标准已经难以满足某些方面的需求。视频信号信息量大,对传输带宽要求高,于是必须对原始视频进行压缩,但是视频压缩就造成了细节的损失。随着新的应用需求不断提出,原有的编码标准不能解决所有的问题,尤其是在目前对产品体积、无外在存储介质、码流和带宽受限的情况下,传统模式的帧间编码已经表现出了不适应。传统的h264和h265等编码标准,对于静止的图像可以使用帧间恢复出完全无损的图像,但是一般情况下恢复过程中前几帧的码流会很大,后面几帧的码流会急剧下降。不利于固定带宽和固定码流下编码的应用场景。其次,传统的帧间编解码都需要重建帧和当前帧做残差,然后再dct变换、量化和编码。其一,重建帧需要至少存储一帧的图像,必须借助外挂存储介质如ddr、dram等。其二,其中涉及到的量化,必然会造成损失,无法达到理论意义上的无损帧间恢复。技术实现要素:本发明的主要目的是提出一种不需要任何外界存储介质,在固定带宽或有限码流情况下,可以逐步恢复理论无损的静止帧间编码算法。为实现上述目的,本发明提出的一种无存储介质的静止图像帧间无损恢复算法,包括如下步骤:步骤s1、对原始图像进行图像静止检测单元划分,得到处理单元;步骤s2、对处理单元进行图像静止检测,得到图像静止单元;步骤s3、对图像静止单元进行图像编码;步骤s4、对图像编码进行图像解码,得到dct系数;步骤s5、对dct系数进行反dct变换得到重建像素显示进行恢复显示。优选地,步骤s1的具体步骤为:将原始图像划分成互不重叠的n*m的处理单元,其中k*n1<=n<=k*n2,k*m1<=m<=k*m2。其中n1>0,n2>0,m1>0,m2>0,k=4、8、16。优选地,步骤s2具体步骤为:对所有处理单元进行下采样,即水平和垂直分别执行ratioh和ratiov倍的下采样,得到下采样块,其中,ratioh=k/n,ratiov=k/m,n和m分别代表处理单元的长和宽,k代表下采样图像块的长和宽;对下采样块进行dct变换,对变换后的dct做zigzag扫描排序,对前l个dct系数进行处理组合,并且和buffer存储的信息进行对比,确定该处理单元是否为静止单元。优选地,确定该处理单元是否为静止单元具体步骤为:对前l个dct系数进行处理组合后的比特组与buffer存储的信息相应位置的比特组是否一致,组合后的比特组与buffer存储的信息中相应位置的比特组一致,则为静止单元,静止标记为1;组合后的比特组与buffer存储的信息中相应位置的比特组不一致,则为运动单元,静止标记为0。优选地,步骤s3的具体步骤为:静止单元的编码方式为分次编码,记录当前分次编码的帧数cnt;其记录方式为:(1)若当编码单元每进行一次分次编码即当前编码单元被检测为静止图像块,则cnt=cnt+1,直到当前编码单元的所有dct全部编码传输完。(2)若当前编码单元由静止模式变为运动模式,则cnt=0。优选地,对静止单元进行分次编码具体步骤为:将处理单元分成8*8块进行dct变换,每次编码的内容是dct系数的残差,该残差再经过帧间量化,其中量化参数不断减小,直至量化参数为1;第i次量化的量化参数和初始qp的关系如下:qpi=qp_init/ri,其中0<i<=t,并且qp_init=rt其中,第i次编码的残差的计算公式如下:dct_resi=(dct_coeff-dct_resi-1*qpi-1),1<i<=t上式中,dct_coeff表示相应位置的原始dct系数,dct_resi-1表示相应位置第i-1次编码的dct残差,dct_resi表示相应位置第i次编码的dct残差,t表示dct系数经过编码的次数。优选地,步骤s4具体步骤为:静止标记为1,则d_cnt=d_cnt+1,根据dcnt则得出目前该位置为第i次dct残差的编码,并更新对应位置的dct系数,对应编码位置的第i次dct系数的更新公式如下:dct_coeff_di=dct_coeff_di-1+dct_coeff_res*qpi其中,dct_coeff_di表示该位置第i次dct系数值,dct_coeff_di-1表示该位置第i-1次dct的系数值,即当前buffer中存储的dct系数值。dct_coeff_res表示解码得到的该位置的dct的残差。与现有技术相比,本发明的有益效果是:逐次传输原始像素的dct系数,因此编码端只是存储一些重要的标志信息,这些标志信息数据量较小,因此不需要片外存储,应用中很大程度上节省空间和成本。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。图1为本发明的步骤流程示意图;图2为本发明中图像静止检测单元划分流程示意图;图3为本发明中dct系数重组比特组示意图;图4为本发明中图像编码流程示意图;图5为本发明中图像解码示意图;本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式本实施例提出的一种无存储介质的静止图像帧间无损恢复算法,如图1所示,包括如下步骤:步骤s1、对原始图像进行图像静止检测单元划分,得到处理单元;步骤s2、对处理单元进行图像静止检测,得到图像静止单元;步骤s3、对图像静止单元进行图像编码;步骤s4、对图像编码进行图像解码,得到dct系数;步骤s5、对dct系数进行反dct变换得到重建像素显示进行恢复显示。优选地,步骤s1的具体步骤为:将原始图像划分成互不重叠的n*m的处理单元,其中k*n1<=n<=k*n2,k*m1<=m<=k*m2。其中n1>0,n2>0,m1>0,m2>0,k=4、8、16。优选地,步骤s2具体步骤为:对所有处理单元进行下采样,即水平和垂直分别执行ratioh和ratiov倍的下采样,得到下采样块,其中,ratioh=k/n,ratiov=k/m,n和m分别代表处理单元的长和宽,k代表下采样图像块的长和宽;对下采样块进行dct变换,对变换后的dct做zigzag扫描排序,对前l个dct系数进行处理组合,并且和buffer存储的信息进行对比,确定该处理单元是否为静止单元。优选地,确定该处理单元是否为静止单元具体步骤为:对前l个dct系数进行处理组合后的比特组与buffer存储的信息相应位置的比特组是否一致,组合后的比特组与buffer存储的信息中相应位置的比特组一致,则为静止单元,静止标记为1;组合后的比特组与buffer存储的信息中相应位置的比特组不一致,则为运动单元,静止标记为0。组合后的比特组是将前l个dct系数从不为0的最高位开始的之后共p位比特进行组合,共l*p个比特。优选地,步骤s3的具体步骤为:静止单元的编码方式为分次编码,记录当前分次编码的帧数cnt;其记录方式为:(1)若当编码单元每进行一次分次编码即当前编码单元被检测为静止图像块,则cnt=cnt+1,直到当前编码单元的所有dct全部编码传输完。(2)若当前编码单元由静止模式变为运动模式,则cnt=0。对于非静止块即运动块,采用的是传统的h264的帧内编码。优选地,对静止单元进行分次编码具体步骤为:将处理单元分成8*8块进行dct变换,每次编码的内容是dct系数的残差,该残差再经过帧间量化,其中量化参数不断减小,直至量化参数为1;第i次量化的量化参数和初始qp的关系如下:qpi=qp_init/ri,其中0<i<=t,并且qp_init=rt其中,第i次编码的残差的计算公式如下:dct_resi=(dct_coeff-dct_resi-1*qpi-1),1<i<=t上式中,dct_coeff表示相应位置的原始dct系数,dct_resi-1表示相应位置第i-1次编码的dct残差,dct_resi表示相应位置第i次编码的dct残差,t表示dct系数经过编码的次数。优选地,步骤s4具体步骤为:静止标记为1,则d_cnt=d_cnt+1,根据dcnt则得出目前该位置为第i次dct残差的编码,并更新对应位置的dct系数,对应编码位置的第i次dct系数的更新公式如下:dct_coeff_di=dct_coeff_di-1+dct_coeff_res*qpi其中,dct_coeff_di表示该位置第i次dct系数值,dct_coeff_di-1表示该位置第i-1次dct的系数值,即当前buffer中存储的dct系数值。dct_coeff_res表示解码得到的该位置的dct的残差。解码端恢复显示,对于帧内编码块直接帧内解码输出显示,帧间解码块则按照帧间逆过程解码dct残差,反量化,更新dct系数,dct反变换,输出显示。本发明实施例可以应用于高清视频无线实时传输中以及多媒体视频压缩编解码中,尤其是对编码端无外在传输介质或者对产品成本和体积有严格要求的应用需求,例如无人机、fpv、vr、视频会议等领域。本发明应用系统首先将图像分成n*m大小的处理单元。如图2所示,图像划分处理单元的示意图。其中h表示待编码图像的长,v表示待编码图像的宽,n。实施例中,h=1920,v=1080,n=32,m=16。其中,本发明实施例对划分的处理单元进行横向ratioh的下采样,纵向ratiov的线性下采样,采样成k*k的大小,并且做k*k的dct变换。实施例中,ratioh=1/4,ratiov=1/2,k=8,线性下采样使用的滤波器如下:其中,对于下采样的处理单元进行k*k的dct变换,然后取zigzag扫描后的dct系数的前l个系数的不为0的p位组合成比特组进行静止块的检测。如图3所示,即检测静止块的dct系数重组比特组的过程示意图。实施例中,l=6,p=4。其中,本发明根据传输带宽和码流,帧间传输编码每次传输s个dct系数残差。实施例中,传输带宽为40m,s=8。其中,本发明中,帧间传输,为了以较快的速度达到帧间视觉无损,需要对dct残差进行量化,量化是逐步减小。其中初始化列表为qp_init_table,且table中的qp初始值和逐步减少的步长之间的关系如下:qpi=qp_init/ri,其中0<i<=t,并且qp_init=rt实施例中,qp_init_table={127,64,32,32,16,16,8,8},r=2。其中处理单元的编码过程如图4所示,主要包括传统帧内编码和帧间无损编码两个分支。其中,图像块解码过程如图5所示,帧内解码遵循传统的解码过程。帧间解码过程是原始像素dct系数的更新过程。其中当前位置dct系数的第i次更新如下公式:dct_coeff_di=dct_coeff_di-1+dct_coeff_res*qpi式中,i和帧间计数dcnt的关系如下:i=dcnt*s/64其中,帧间解码重建过程为,每次更新完dct系数,则进行相应的idct变换得到原始像素值。则该原始像素值即为显示输出像素。当dct系数完全恢复无损时,则帧间编码达到理论无损恢复。本发明实例,是利用静止图像帧间dct变换完全相同的特点,而对于图像处理单元利用线性平滑滤波器下采样之后理论上也是相等的,下采样之后的图像进行dct变化,并且将dct系数取相应的比特组合成比特组,很大程度上节省判断帧间静止条件的存储空间,因此只需要片内存储即可完成帧间静止判断信息的存储,节省了外在存储介质。对于对产品面积和成本要求较高的静止视频传输系统或者无外挂存储介质的系统实现帧间无损编码传输提供了可行方案。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的
技术领域
:,均同理包括在本发明的专利保护范围内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1