一种编码方法、编码装置及服务器制造方法及图纸

技术编号:11408114 阅读:145 留言:0更新日期:2015-05-06 07:25
本发明专利技术提供了一种编码方法、编码装置及服务器,以解决编码效率低的问题。其中一种编码方法包括:将视频帧/图像划分为编码块;提取所述编码块的特征向量作为当前特征向量;在服务器以特征向量为索引的编码参数集中查询所述当前特征向量是否存在;当所述当前特征向量存在时,接收服务器返回的当前特征向量对应的编码参数集合;当所述当前特征向量不存在时,上传所述编码块至服务器进行编码;若上传成功,则接收所述服务器编码后得到的编码参数集合;若上传失败,则接收服务器返回的与所述当前特征向量距离最近的一个或多个特征向量对应的编码参数集合;根据所述编码参数集合进行编码。本发明专利技术提供的编码方法可以提高编码效率。

【技术实现步骤摘要】
一种编码方法、编码装置及服务器
本专利技术涉及编码
,特别是涉及一种编码方法、编码装置及服务器。
技术介绍
随着多媒体技术的发展,视频/图像成为多媒体内容的主要的承载媒质,因为其数据量普遍比较大,在给用户带来丰富视觉体验的同时也要求较大的存储量以及较高的传输带宽资源,因此视频/图像的压缩效率对多媒体的推广应用很重要。随着互联网以及未来物联网的广泛应用,当有海量的视频图像需要即时编码,计算资源和编码速度也是一个很严峻的问题,尤其是目前的移动互联网中涉及大量移动终端,其计算能力和电池容量都很有限。随着无线网络的推广和普及,无线智能终端可以很方便的接入互联网和云端。并且几乎所有的移动终端都自带图像视频拍摄功能,但是移动终端设备的计算资源和电池容量很大地制约了移动终端的视频图像编码能力。目前很多无线智能终端都有上行的带宽和网速较低,而下行的带宽和网速相对较高的特点。目前基于服务器的编码方法需要用户先上传整个视频图像,然后在服务器进行编码,服务器返回最终编码码流给用户。这种编码方法上传整个视频图像给服务器,需要上传的数据量很大,受到上行带宽和网速的限制;而且用户上传至服务器的视频中有大部分视频内容都是重复或者类似的,服务器重复计算量很大,造成很大的资源浪费以及编码的效率低下。
技术实现思路
本专利技术提供了一种编码方法、编码装置及服务器,以解决编码效率低的问题。为了解决上述问题,本专利技术公开了一种编码方法,包括:将视频帧/图像划分为编码块;提取所述编码块的特征向量作为当前特征向量;在服务器以特征向量为索引的编码参数集中查询所述当前特征向量是否存在;当所述当前特征向量存在时,接收服务器返回的当前特征向量对应的编码参数集合;当所述当前特征向量不存在时,上传所述编码块至服务器进行编码;若上传成功,则接收所述服务器编码后得到的编码参数集合;若上传失败,则接收服务器返回的与所述当前特征向量距离最近的一个或多个特征向量对应的编码参数集合;根据所述编码参数集合进行编码。可选地,所述提取所述编码块的特征向量,包括:步骤1,将所述编码块划分为多个编码单元,并将所述多个编码单元依次作为当前编码单元;步骤2,判断所述当前编码单元是否平坦;步骤3,当所述当前编码单元平坦时,将所述当前编码单元的编码划分信息标记为不再划分,计算所述当前编码单元的平均值,并对所述平均值按照量化参数进行量化得到量化平均值;步骤4,当所述当前编码单元不平坦时,将所述当前编码单元的编码划分信息标记为继续划分,对继续划分后的编码单元重复执行步骤2;步骤5,将各编码单元的编码划分信息、量化平均值按照顺序组合成所述编码块的特征向量。可选地,所述判断所述当前编码单元是否平坦,包括:计算当前编码单元的水平垂直方向梯度绝对值之和;判断所述当前编码单元的水平垂直方向梯度绝对值之和是否小于第一阈值;当所述当前编码单元的水平垂直方向梯度绝对值之和小于第一阈值时,将所述当前编码单元判定为平坦;当所述当前编码单元的水平垂直方向梯度绝对值之和大于等于第一阈值时,将所述当前编码单元判定为不平坦。可选地,所述判断所述当前编码单元是否平坦,还包括:当所述当前编码单元的水平垂直方向梯度绝对值之和大于等于第一阈值时,判断当前编码单元的尺寸是否大于等于最小编码单元尺寸;当所述当前编码单元的尺寸大于等于最小编码单元尺寸时,将所述当前编码单元判定为不平坦;当所述当前编码单元的尺寸小于最小编码单元尺寸时,将所述当前编码单元判定为平坦。可选地,所述判断所述当前编码单元是否平坦,还包括:当所述当前编码单元的尺寸小于最小编码单元尺寸时,对所述当前编码单元进行二维离散变换,计算所述编码单元的像素值与所述编码单元的平均值的残差绝对值之和;判断所述残差绝对值之和是否小于第二阈值;当所述残差绝对值之和小于第二阈值时,将所述当前编码单元判定为平坦;当所述残差绝对值之和大于等于第二阈值时,对所述二维离散变换后的系数按照量化参数进行量化,提取前c1个非零系数,所述c1≥1。可选地,所述提取所述编码块的特征向量,还包括:提取所述编码块的编码环境,所述编码环境包括:所述编码块上边和左边的参考像素、上边和左边的预测模式以及量化参数;分别对所述编码块上边和左边的参考像素进行一维离散变换,按照所述量化参数对变换后的参考像素进行量化后提取前c个非零系数,所述c≥1;将所述编码块的编码环境、各编码单元的编码划分信息、量化平均值以及提取的非零系数按照顺序组合成所述编码块的特征向量。可选地,所述编码方法还包括:对所述当前特征向量进行地址映射得到当前特征向量地址;在服务器的初始特征向量-地址映射表中查询所述当前特征向量地址是否存在;当所述当前特征向量地址存在时,接收服务器返回的当前特征向量对应的编码参数集合;当所述当前特征向量地址不存在时,上传所述编码块至服务器进行编码;若上传成功,则接收所述服务器编码后得到的编码参数集合;若上传失败,则接收服务器返回的与所述当前特征向量距离最近的一个或多个特征向量对应的编码参数集合。本专利技术还公开了一种编码方法,包括:进行初始化,建立以特征向量为索引的编码参数集;接收编码装置发送的编码块的当前特征向量;在所述以特征向量为索引的编码参数集中查询所述当前特征向量是否存在;当所述当前特征向量存在时,发送所述当前特征向量对应的编码参数集合给所述编码装置;当所述当前特征向量不存在时,请求所述编码装置上传所述编码块;若接收成功,则对所述编码块进行编码,将编码所得的编码参数集合发送给所述编码装置,并将所述编码参数集合以当前特征向量为索引存储在所述编码参数集中;若接收失败,则将所述当前特征向量距离最近的一个或多个特征向量对应的编码参数集合发送给所述编码装置。可选地,所述进行初始化,建立以特征向量为索引的编码参数集,包括:按照存储阈值选取多个视频帧/图像;将所述视频帧/图像划分为编码块;在所述编码块中选择出现频率最高的若干编码块作为初始编码块;对所述初始编码块进行编码,得到编码结果;从所述编码结果中提取编码参数集合;提取所述初始编码块的特征向量作为初始特征向量;以所述初始特征向量为索引存储所述编码参数集合,建立以特征向量为索引的编码参数集。可选地,所述进行初始化,建立以特征向量为索引的编码参数集,还包括:建立初始特征向量-地址映射表,所述初始特征向量-地址映射表包括初始特征向量与其索引地址之间的一一对应关系。可选地,所述编码方法还包括:当所述当前特征向量不存在时,判断服务器的累计存储量是否小于存储阈值;当服务器的累计存储量小于存储阈值时,请求所述编码装置上传所述编码块;当服务器的累计存储量大于等于存储阈值时,将所述当前特征向量距离最近的一个或多个特征向量对应的编码参数集合发送给所述编码装置。可选地,所述编码方法还包括:当所述当前特征向量存在时,判断所述特征向量对应的编码参数集合数目是否大于等于数目阈值;当所述编码参数集合数目大于等于数目阈值时,发送所述当前特征向量对应的编码参数集合给所述编码装置;当所述编码参数集合数目小于数目阈值时,请求所述编码装置上传所述编码块。本专利技术还公开了一种编码装置,其特征在于,包括:划分模块,用于将视频帧/图像划分为编码块;提取模块,与所述划分模块相连,用于提取所述编码块的特征向量作为当前特征本文档来自技高网...
一种编码方法、编码装置及服务器

【技术保护点】
一种编码方法,其特征在于,包括:将视频帧/图像划分为编码块;提取所述编码块的特征向量作为当前特征向量;在服务器以特征向量为索引的编码参数集中查询所述当前特征向量是否存在;当所述当前特征向量存在时,接收服务器返回的当前特征向量对应的编码参数集合;当所述当前特征向量不存在时,上传所述编码块至服务器进行编码;若上传成功,则接收所述服务器编码后得到的编码参数集合;若上传失败,则接收服务器返回的与所述当前特征向量距离最近的一个或多个特征向量对应的编码参数集合;根据所述编码参数集合进行编码。

【技术特征摘要】
1.一种编码方法,其特征在于,包括:将视频帧/图像划分为编码块;提取所述编码块的特征向量作为当前特征向量,其中,所述提取所述编码块的特征向量包括:将所述编码块划分为多个编码单元;获取各编码单元的编码划分信息、量化平均值并按照顺序组合成所述编码块的特征向量;在服务器以特征向量为索引的编码参数集中查询所述当前特征向量是否存在;当所述当前特征向量存在时,接收服务器返回的当前特征向量对应的编码参数集合;当所述当前特征向量不存在时,上传所述编码块至服务器进行编码;若上传成功,则接收所述服务器编码后得到的编码参数集合;若上传失败,则接收服务器返回的与所述当前特征向量距离最近的一个或多个特征向量对应的编码参数集合;根据所述编码参数集合进行编码。2.根据权利要求1所述的方法,其特征在于,所述获取各编码单元的编码划分信息、量化平均值具体包括:步骤1,将所述多个编码单元依次作为当前编码单元;步骤2,判断所述当前编码单元是否平坦;步骤3,当所述当前编码单元平坦时,将所述当前编码单元的编码划分信息标记为不再划分,计算所述当前编码单元的平均值,并对所述平均值按照量化参数进行量化得到量化平均值;步骤4,当所述当前编码单元不平坦时,将所述当前编码单元的编码划分信息标记为继续划分,对继续划分后的编码单元重复执行步骤2。3.根据权利要求2所述的方法,其特征在于,所述判断所述当前编码单元是否平坦,包括:计算当前编码单元的水平垂直方向梯度绝对值之和;判断所述当前编码单元的水平垂直方向梯度绝对值之和是否小于第一阈值;当所述当前编码单元的水平垂直方向梯度绝对值之和小于第一阈值时,将所述当前编码单元判定为平坦;当所述当前编码单元的水平垂直方向梯度绝对值之和大于等于第一阈值时,将所述当前编码单元判定为不平坦。4.根据权利要求3所述的方法,其特征在于,所述判断所述当前编码单元是否平坦,还包括:当所述当前编码单元的水平垂直方向梯度绝对值之和大于等于第一阈值时,判断当前编码单元的尺寸是否大于等于最小编码单元尺寸;当所述当前编码单元的尺寸大于等于最小编码单元尺寸时,将所述当前编码单元判定为不平坦;当所述当前编码单元的尺寸小于最小编码单元尺寸时,将所述当前编码单元判定为平坦。5.根据权利要求4所述的方法,其特征在于,所述判断所述当前编码单元是否平坦,还包括:当所述当前编码单元的尺寸小于最小编码单元尺寸时,对所述当前编码单元进行二维离散变换,计算所述编码单元的像素值与所述编码单元的平均值的残差绝对值之和;判断所述残差绝对值之和是否小于第二阈值;当所述残差绝对值之和小于第二阈值时,将所述当前编码单元判定为平坦;当所述残差绝对值之和大于等于第二阈值时,对所述二维离散变换后的系数按照量化参数进行量化,提取前c1个非零系数,所述c1≥1。6.根据权利要求2-5任一所述的方法,其特征在于,所述提取所述编码块的特征向量,还包括:提取所述编码块的编码环境,所述编码环境包括:所述编码块上边和左边的参考像素、上边和左边的预测模式以及量化参数;分别对所述编码块上边和左边的参考像素进行一维离散变换,按照所述量化参数对变换后的参考像素进行量化后提取前c个非零系数,所述c≥1;将所述编码块的编码环境、各编码单元的编码划分信息、量化平均值以及提取的非零系数按照顺序组合成所述编码块的特征向量。7.根据权利要求1所述的方法,其特征在于,还包括:对所述当前特征向量进行地址映射得到当前特征向量地址;在服务器的初始特征向量-地址映射表中查询所述当前特征向量地址是否存在;当所述当前特征向量地址存在时,接收服务器返回的当前特征向量对应的编码参数集合;当所述当前特征向量地址不存在时,上传所述编码块至服务器进行编码;若上传成功,则接收所述服务器编码后得到的编码参数集合;若上传失败,则接收服务器返回的与所述当前特征向量距离最近的一个或多个特征向量对应的编码参数集合。8.一种编码方法,其特征在于,包括:进行初始化,建立以特征向量为索引的编码参数集,其中,所述特征向量具体包括:将编码块划分为多个编码单元,并将所述多个编码单元依次作为当前编码单元,获取各编码单元的编码划分信息、量化平均值并按照顺序组合成编码块的特征向量;接收编码装置发送的编码块的当前特征向量;在所述以特征向量为索引的编码参数集中查询所述当前特征向量是否存在;当所述当前特征向量存在时,发送所述当前特征向量对应的编码参数集合给所述编码装置;当所述当前特征向量不存在时,请求所述编码装置上传所述编码块;若接收成功,则对所述编码块进行编码,将编码所得的编码参数集合发送给所述编码装置,并将所述编码参数集合以当前特征向量为索引存储在所述编码参数集中;若接收失败,则将所述当前特征向量距离最近的一个或多个特征向量对应的编码参数集合发送给所述编码装置。9.根据权利要求8所述的方法,其特征在于,所述进行初始化,建立以特征向量为索引的编码参数集,包括:按照存储阈值选取多个视频帧/图像;将所述视频帧/图像划分为编码块;在所述编码块中选择出现频率最高的若干编码块作为初始编码块;对所述初始编码块进行编码,得到编码结果;从所述编码结果中提取编码参数集合;提取所述初始编码块的特征向量作为初始特征向量;以所述初始特征向量为索引存储所述编码参数集合,建立以特征向量为索引的编码参数集。10.根据权利要求9所述的方法,其特征在于,所述进行初始化,建立以特征向量为索引的编码参数集,还包括:建立初始特征向量-地址映射表,所述初始特征向量-地址映射表包括初始特征向量与其索引地址之间的一一对应关系。11.根据权利要求8所述的方法,其特征在于,还包括:当所述当前特征向量不存在时,判断服务器的累计存储量是否小于存储阈值;当服务器的累计存储量小于存储阈值时,请求所述编码装置上传所述编码块;当服务器的累计存储量大于等于存储阈值时,将所述当前特征向量距离最近的一个或多个特征向量对应的编码参数集合发送给所述编码装置。12.根据权利要求8所述的方法,其特征在于,还包括:当所述当前特征向量存在时,判断所述特征向量对应的编码参数集合数目是否大于等于数目阈值;当所述编码参数集合数目大于等于数目阈值时,发送所述当前特征向量对应的编码参数集合给所述编码装置;当所述编码参数集合数目小于数目阈值时,请求所述编码装置上传所述编码块。13.一种编码装置,其特征在于,包括:划分模块,用于将视频帧/图像划分为编码块;提取模块,与所述划分模块相连,用于提取所述编码块的特征向量作为当前特征向量,其中,所述提取模块包括:划分子模块,用于将所述编码块划分为多个编码单元;组合子模块,用于将各编码单元的编码划分信息、量化平均值按照顺序组合成所述编码块的特征向量;查询模块,与所述提取模块相连,用于在服务器以特征向量为索引的编码参数集中查询所述当前特征向量是否存在;第一接收模块,与所述查询模块相连,用于当所述查询模块查询到所述当前特征向量存在时,接收服务器返回的当前特征向量对应的编码参数集合;第二接收模块,与所述查询模块相连,用于当所述查询模块查询到所述当前特征向量不存在时,上传所述编码块至服务器进行编码;若上传成功,则接收所述服务器编码后得到的编码参数集合;若上传失败,则接收服务器返回的与所述当前特征向量距离最近的一个或多个特征向量对应的编码参数集合;编码模块,分别与所述第一接收模块和所述第二接收模块相连,用于根据所述编码参数集合进行编码。14.根据权利要求13所述的编码装置,其特征在于,所述提取模块还包括:划分子模块,还用于将所述多个编码单元依次作为当前编码单元;第一判断子模块,与所述划分子模块相连,用于判...

【专利技术属性】
技术研发人员:贺坚强
申请(专利权)人:北京奇艺世纪科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1