视频编码装置及方法

文档序号:9528009阅读:402来源:国知局
视频编码装置及方法
【技术领域】
[0001]本发明涉及视频传输领域,尤其涉及一种视频编码装置及方法。
【背景技术】
[0002]如今随着信息技术的不断发展以及网络带宽的进一步提升,在视频会议、视频监控等视频传输领域,对视频的画质需求也越来越高。当前普遍常用H.264格式进行视频传输,在H.264格式中,包括巾贞内编码以及巾贞间编码,巾贞内编码是指完整的编码,而巾贞间编码则指编解码时需要参考其他帧的数据。一般的,一个影像帧序列被分为I帧、P帧以及B帧,其中I帧是指需要完整编码的,在编解码时不需要参考其他帧的数据,属于帧内编码;P帧指在编解码时可以参考当前帧之前的数据,属于帧间编码帧则指在编解码时可以参考当前帧之前或之后的数据,也属于帧间编码。
[0003]在图像传输过程中,由于I帧包含的数据量最多,容易产生I帧大小超过了网络允许传输的最大范围,导致出现图像失真、资料遗失等问题。现有技术往往采用对所有影像增加I巾贞的QP值(Quantify Parameter,量化参数)或者增加压缩率的方式来减小I巾贞大小,或者是通过将I帧内的数据平均分为多个P帧传输的方式,然而,增加QP值或增加压缩率会导致视频画质下降,不便于观看;将I帧数据平均分为多个P帧则会因为缺少I帧而与当前普遍采用的H.264编码制式不兼容,导致不能被顺利解码。

【发明内容】

[0004]有鉴于此,有必要提供一种视频编码装置,不仅能够减少I帧的大小,而且也能够保证I帧的画面质量。
[0005]同时,还需要提供一种视频编码方法,不仅能够减少I帧的大小,而且也能够保证I帧的画面质量。
[0006]本发明实施方式中的视频编码装置,包括判断模块、计算模块、划分模块、标记模块以及编码模块,其中,判断模块用于判断是否需要对当前影像采用I帧传输;计算模块用于在所述当前影像需要采用I帧传输时计算需要分散为N帧,其中N为整数;划分模块用于将当前影像划分为Μ个宏块,识别所述当前影像的内容并根据内容划分所述Μ个宏块的重要性,其中Μ为整数;标记模块用于将所述Μ个宏块按照重要性由高到低排序,依顺序将所述Μ个宏块加上宏块标记η,其中η为属于1到Ν之间的整数;编码模块用于依次读取所有宏块,对宏块标记η为1的宏块米用低QP值巾贞内编码,对宏块标记η大于1的宏块米取高QP值帧内编码,以编码为第一帧传输;重新依次读取所有宏块以编码为第i帧传输,其中对宏块标记η小于i的宏块采用帧间编码,i为属于2到N之间的整数。
[0007]优选地,所述计算模块根据网络传输通道最大可允许的瞬时传输阈值S_ frane计算所述当前影像帧需要分散为N帧。
[0008]优选地,所述划分模块按照8X8或者16X 16的方式划分宏块。
[0009]优选地,标记模块将所述Μ个宏块按照按照重要性由高到低排序之后,依序平均分配至N帧中,其中,每一帧对应的宏块数为Μ/Ν,所述Μ个宏块的宏块标记η分别为对应分配的帧的序号。
[0010]优选地,所述标记模块依序依次选取宏块加入到宏块列表中,计算所述宏块列表中的宏块编码后的总大小sTcital,其中
Slotal — [l_(Cmb list/Cmb total) ] *SHQp+SINTRA,Cmb list 为宏块列表内的宏块个数,cnb total为所有宏块的个数,Sw为当前影像采用高QP值编码时的大小,SINTRA为所述宏块列表采用帧内编码后的大小,直至所述总大小sTcital大于s_ frane,并添加所述宏块列表中宏块的宏块标记为1;清空宏块列表,继续依次将剩余的宏块加入到宏块列表中,计算所述列表中的宏块编码后的总大小sTc]tal,其中
^Total Sfotal [1 (Cmb list/
Cmb total) ] *SpsKIp+SINTRA,其中 SpsKIp 为当前影像米用巾贞间编码时的大小,直至所述总大小STcital大于Smax frallie,并添加所述宏块列表中宏块的宏块标记为η。
[0011]优选地,所述编码模块在编码第η帧时,对宏块标记η等于i的宏块采取低QP值帧内编码,对宏块标记η大于i的宏块采取高QP值帧间编码。
[0012]本发明实施方式中的视频编码方法,包括以下步骤:判断是否需要对当前影像采用I帧传输;在所述当前影像需要采用I帧传输时计算需要分散为N帧,其中N为整数;将当前影像划分为Μ个宏块,识别所述当前影像的内容并根据内容划分所述Μ个宏块的重要性,其中Μ为整数;将所述Μ个宏块按照重要性由高到低排序,依顺序将所述Μ个宏块加上宏块标记η,其中η为属于1到Ν之间的整数;及依次读取所有宏块,对宏块标记η为1的宏块采用低QP值帧内编码,对宏块标记η大于1的宏块采取高QP值帧内编码,以编码为第一中贞传输;重新依次读取所有宏块以编码为第i巾贞传输,其中对宏块标记η小于i的宏块米用帧间编码,i为属于2到N之间的整数。
[0013]优选地,根据网络传输通道最大可允许的瞬时传输阈值S_ fraBe计算所述当前影像帧需要分散为N帧。
[0014]优选地,按照8X8或者16X 16的方式将当前影像划分为Μ个宏块。
[0015]优选地,所述将所述Μ个宏块按照重要性由高到低排序,依顺序将所述Μ个宏块加上宏块标记η的步骤还包括:将所述Μ个宏块依序平均分配至Ν帧中,其中,每一帧对应的宏块数为Μ/Ν,所述Μ个宏块的宏块标记η分别为对应分配的帧的序号。
[0016]优选地,所述将所述Μ个宏块按照重要性由高到低排序,依顺序将所述Μ个宏块加上宏块标记η的步骤还包括:依序依次选取宏块加入到宏块列表中,计算所述宏块列表中的宏块编码后的总大小STcital,其中
Slotal — [l_(Cmb list/Cmb total) ] *SHQp+SINTRA,Cmb list 为宏块列表内的宏块个数,cnb total为所有宏块的个数,Sw为当前影像采用高QP值编码时的大小,SINTRA为所述宏块列表采用帧内编码后的大小,直至所述总大小sTcital大于s_ frane,并添加所述宏块列表中宏块的宏块标记为1;清空宏块列表,继续依次将剩余的宏块加入到宏块列表中,计算所述列表中的宏块编码后的总大小sTc]tal,其中
^Total Sfotal [1 (Cmb list/
Cmb total) ] *SpsKIp+SINTRA,其中 SpsKIp 为当前影像米用巾贞间编码时的大小,直至所述总大小STcital大于Smax frallie,并添加所述宏块列表中宏块的宏块标记为η。
[0017]优选地,在编码第η帧时,对宏块标记η等于i的宏块采取低QP值帧内编码,对宏块标记η大于i的宏块采取高QP值帧间编码。
[0018]相较于现有技术,本发明通过根据当前网络传输环境计算需要将当前影像分散至多少帧传输,并通过影像识别对影像按照重要性进行区域划分,对不同区域采取不同的编码方式,不仅能够减少帧的大小,而且也能够保证画面质量。
【附图说明】
[0019]图1为本发明视频编码装置的应用环境图。
[0020]图2为本发明视频编码装置一实施方式的功能模块图。
[0021]图3为本发明视频编码方法一实施方式的流程图。
[0022]图4为本发明视频编码方法中添加宏块标记的方法流程图。
[0023]图5为本发明视频编码方法中对每个宏块进行编码的方法流程图。
[0024]主要元件符号说明
[0025]视频编码装置 10
[0026]发送端 30
[0027]接收端60
[0028]网络传输通道 40
[0029]解码装置 50
[0030]判断模块 101
[0031]计算模块 103
[0032]划分模块 105
[0033]标记模块 107
[0034]编码模块 109
【具体实施方式】
[0035]为使本发明目的、技术方案、及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明。
[0036]图1所示为本发明视频编码装置的应用环境图。如图所示,发送端30发出的视频信息首先进行视频编码装置10进行编码,再通过网络传输通道40传输至解码装置50及接收端60处,发送端30可以为个人计算机、监控设备、或摄像设备,本领域技术人员可以理解的是,视频编码装置10可以位于发送端30上,也可以是单独的组件,网络传输通道40最大可允许的传输阈值为S_ frane,接收端60可以为个人计算机、智能手机、或显示设备,接收端60的数量可以为多个,本发明并不以此为限。
[0037]图2所示为本发明影像编码装置一实施方式的功能模块图。在本实施方式中,视频编码装置10包括判断模块101、计算模块103、划分模块105、标记模块107以及编码模块109。
[0038]下面结合图3-图5对本发明影像编码装置各模块功能进行详细介绍。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1