CN103024445A - 云端的视频转码方法和云服务器 - Google Patents

云端的视频转码方法和云服务器 Download PDF

Info

Publication number
CN103024445A
CN103024445A CN2012105414004A CN201210541400A CN103024445A CN 103024445 A CN103024445 A CN 103024445A CN 2012105414004 A CN2012105414004 A CN 2012105414004A CN 201210541400 A CN201210541400 A CN 201210541400A CN 103024445 A CN103024445 A CN 103024445A
Authority
CN
China
Prior art keywords
frame
picture frame
cloud server
image frame
coding
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2012105414004A
Other languages
English (en)
Other versions
CN103024445B (zh
Inventor
张志辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201210541400.4A priority Critical patent/CN103024445B/zh
Publication of CN103024445A publication Critical patent/CN103024445A/zh
Application granted granted Critical
Publication of CN103024445B publication Critical patent/CN103024445B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明提出一种云端的视频转码方法和云服务器,其中所述方法包括以下步骤:云服务器对视频文件进行解码以获取视频文件的多个图像帧;云服务器分别判断多个图像帧的每个是焦点图像帧还是背景图像帧;如果是焦点图像帧,则云服务器获取焦点图像帧的焦点区域和背景区域,并分别进行无损和有损编码,以获得编码后的焦点图像帧;如果是背景图像帧,则对背景图像帧进行有损编码,以获得编码后的背景图像帧;以及将编码后的焦点图像帧与编码后的背景图像帧合成转码视频文件并述转码视频文件发送至移动终端。根据本发明实施例的方法,在高效率转码的同时提高了转码视频文件的图像质量,能够根据不同终端提供不同码率的视频文件,提升用户体验。

Description

云端的视频转码方法和云服务器
技术领域
本发明涉及图像处理技术领域,特别涉及一种云端的视频转码方法和云服务器。
背景技术
通常视频文件只会以一种或几种格式、码率、分辨率和帧频存放,难以满足当前各种不同屏幕尺寸、不同处理器能力以及不同网络制式的终端的不同需求,因此需要根据终端需求对视频文件进行转码。
目前的视频转码方法主要有:全解全编法、部分全解全编法和DCT域转码方法。全解全编法需要将视频文件完全解码重建图像,在根据终端需求重新编码,计算复杂,无法实时转码,并且转码中需要对图像进行两次压缩,降低了图像质量;部分全解全编法将视频文件解码后,根据得到的宏块的宏块信息进行编码,虽然转码效率有所提升,但是在转码过程中的对图像两次压缩降低了图像质量;DCT域转码方法将视频文件解码至DCT域后直接根据终端需求进行编码,效率高,但是无法得到YUV数据,会导致图像漂移,可见,现有的视频转码方法难以高效率的获得高图像质量的转码视频文件,用户体验差。
发明内容
本发明的目的旨在至少解决上述技术缺陷之一。
为此,本发明第一个目的在于提出一种云端的视频转码方法,该方法在高效率转码的同时提高了转码视频文件的图像质量,并且能够根据不同终端提供不同码率的视频文件,提升用户体验。
本发明第二个目的在于提出一种云服务器。
为实现上述目的,根据本发明第一方面的实施例的云端的视频转码方法包括以下步骤:云服务器对视频文件进行解码以获取所述视频文件的多个图像帧;所述云服务器分别判断所述多个图像帧的每个是焦点图像帧还是背景图像帧如果是焦点图像帧,则所述云服务器获取所述焦点图像帧的焦点区域和背景区域,并对所述焦点区域进行无损编码,对所述背景区域进行有损编码,以获得编码后的焦点图像帧;如果是背景图像帧,则所述云服务器对所述背景图像帧进行有损编码,以获得编码后的背景图像帧;以及所述云服务器将所述编码后的焦点图像帧与所述编码后的背景图像帧合成转码视频文件并将所述转码视频文件发送至移动终端。
根据本发明实施例的云端的视频转码方法,云服务器通过对焦点区域进行无损编码以及对背景区域和背景图像帧进行无损编码,来提高用户感兴趣的区域的图像质量,并适当降低用户不感兴趣的区域的图像质量,由此,在高效率转码的同时提高了转码视频文件的图像质量,并且实现了在云端实时转码,从而能够根据不同终端提供不同码率的视频文件,提升用户体验。
为实现上述目的,根据本发明第二方面的实施例的云服务器包括:解码模块,用于视频文件进行解码以获取所述视频文件的多个图像帧;判断模块,用于分别判断所述多个图像帧的每个是焦点图像帧还是背景图像帧;编码模块,用于对所述焦点图像帧中的焦点区域进行无损编码,并对所述焦点图像帧中的背景区域进行有损编码,以获得编码后的焦点图像帧,以及对所述背景图像帧进行有损编码,以获得编码后的背景图像帧;合成模块,将所述编码后的焦点图像帧与所述编码后的背景图像帧合成转码视频文件;以及发送模块,用于将所述转码视频文件发送至移动终端。
根据本发明实施例的云服务器,通过编码模块对焦点区域进行无损编码以及对背景区域和背景图像帧进行无损编码,来提高用户感兴趣的区域的图像质量,并适当降低用户不感兴趣的区域的图像质量,由此,在高效率转码的同时提高了转码视频文件的图像质量,并且实现了在云端实时转码,从而能够根据不同终端提供不同码率的视频文件,提升用户体验。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为根据本发明一个实施例的云端的视频转码方法的流程图;
图2为根据本发明一个具体实施例的云端的视频转码方法的流程图;
图3为根据本发明又一个具体实施例的云端的视频转码方法的流程图;
图4为根据本发明一个实施例的云服务器的结构框图;
图5为根据本发明一个具体实施例的云服务器的结构框图;
图6为根据本发明又一个具体实施例的云服务器的结构框图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。相反,本发明的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。
在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
下面参考附图描述根据本发明实施例的云端的视频转码方法和云服务器。
一种云端的视频转码方法,包括以下步骤:云服务器对视频文件进行解码以获取视频文件的多个图像帧;云服务器分别判断多个图像帧的每个是焦点图像帧还是背景图像帧;如果是焦点图像帧,则云服务器获取焦点图像帧的焦点区域和背景区域,并对焦点区域进行无损编码,对背景区域进行有损编码,以获得编码后的焦点图像帧;如果是背景图像帧,则云服务器对背景图像帧进行有损编码,以获得编码后的背景图像帧;以及云服务器将编码后的焦点图像帧与编码后的背景图像帧合成转码视频文件并述转码视频文件发送至移动终端。
图1为根据本发明一个实施例的云端的视频转码方法的流程图。
如图1所示,根据本发明实施例的云端的视频转码方法包括下述步骤。
步骤S101,云服务器对视频文件进行解码以获取视频文件的多个图像帧。
步骤S102,云服务器分别判断多个图像帧的每个是焦点图像帧还是背景图像帧。
其中,焦点图像帧可以是包含用户感兴趣信息的图像帧,例如运动的图像帧或者包括人物特写的图像帧等,背景图像帧则可以是不包含用户感兴趣信息的图像帧。
步骤S103,如果是焦点图像帧,则云服务器获取焦点图像帧的焦点区域和背景区域,并对焦点区域进行无损编码,对背景区域进行有损编码,以获得编码后的焦点图像帧。
其中,焦点区域可以包括焦点图像帧中运动图像区域和人脸图像区域等用户感兴趣的区域,背景区域为用户不感兴趣的其他区域。由此,提高用户感兴趣的区域的图像质量,并适当降低用户不感兴趣的区域的图像质量。
步骤S104,如果是背景图像帧,则云服务器对背景图像帧进行有损编码,以获得编码后的背景图像帧。
步骤S105,云服务器将编码后的焦点图像帧与编码后的背景图像帧合成转码视频文件并述转码视频文件发送至移动终端。
根据本发明实施例的云端的视频转码方法,云服务器通过对焦点区域进行无损编码以及对背景区域和背景图像帧进行无损编码,来提高用户感兴趣的区域的图像质量,并适当降低用户不感兴趣的区域的图像质量,由此,在高效率转码的同时提高了转码视频文件的图像质量,并且实现了在云端实时转码,从而能够根据不同终端提供不同码率的视频文件,提升用户体验。
图2为根据本发明一个具体实施例的云端的视频转码方法的流程图。
如图2所示,根据本发明实施例的云端的视频转码方法包括下述步骤。
步骤S201,云服务器对视频文件进行解码以获取视频文件的多个图像帧。
步骤S202,云服务器分别判断多个图像帧的每个是否为I帧(Interaframe)帧内编码帧。
步骤S203,如果是,则云服务器将图像帧标记为焦点图像帧。
步骤S204,如果否,则云服务器进一步判断图像帧是否为运动图像帧,如果是,则将图像帧标记为焦点图像帧。
具体地,云服务器首先获取图像帧的所有宏块的宏块信息,其中宏块信息包括宏块类型、运动矢量、量化系数和参考帧索引,并将所有宏块的运动矢量平方和进行累加后,获取平均值,然后将为P帧(Predicted frame,预测帧)的图像帧的平均值按照预定倍数放大,将为B帧(Bi-directionalpredictive frame,双向预测帧)的图像帧的平均值按照预定倍数缩小,得到图像帧的运动特性系数。如果图像帧的运动特性系数大于预定阈值,则图像帧为运动图像帧,并将其标记为焦点图像帧。
例如,如果一个图像帧有n个宏块,第i个宏块的运动矢量为mvi(mvxi,mvyi),i=1…n,其中,
则可按照以下公式计算平均值:
MS mv = Σ i = 1 n ( mv x i 2 + mvy i 2 ) n ,
如果这个图像帧为P帧,则将MSmv放大0.1倍得到运动特性系数为:
1.1 × Σ i = 1 n ( mvx i 2 + mvy i 2 ) n ,
如果这个图像帧为B帧,则将MSmv缩小0.1倍得到运动特性系数为:
0.9 × Σ i = 1 n ( mvx i 2 + mvy i 2 ) n ,
如果这个图像帧的运动特性系数大于预定阈值3,则为运动图像帧,并将其标记为焦点图像帧。
步骤S205,如果否,则云服务器进一步对图像帧进行图像分析以判断图像帧是否为人脸图像帧,如果是,则云服务器将图像帧标记为焦点图像帧。
具体地,如果图像帧的运动特性系数不大于预定阈值,则图像帧不是运动图像帧。使用开源工具OpenCV对图像帧进行人脸检测,如果检测出图像帧的人脸区域的面积占图像帧面积的1/6以上,则所述图像帧为人脸图像帧,并将其标记为焦点图像帧。
步骤S206,如果否,则云服务器将图像帧标记为背景图像帧。
步骤S207,云服务器获取焦点图像帧的焦点区域和背景区域,并对焦点区域进行无损编码,对背景区域进行有损编码,以获得编码后的焦点图像帧。
其中,焦点区域可以包括运动图像帧中的运动图像区域和人脸图像帧中的人脸图像区域等用户感兴趣的区域,背景区域为运动图像帧和人脸图像帧中用户不感兴趣的其他区域。由此,提高用户感兴趣的区域的图像质量,并适当降低用户不感兴趣的区域的图像质量。
步骤S208,云服务器对背景图像帧进行有损编码,以获得编码后的背景图像帧。
步骤S209,云服务器将编码后的焦点图像帧与编码后的背景图像帧合成转码视频文件并述转码视频文件发送至移动终端。
根据本发明实施例的云端的视频转码方法,将运动图像帧和人脸图像帧作为焦点图像帧,并对焦点图像帧中的焦点区域进行无损编码,对焦点图像帧中的背景区域和背景图像帧进行有损编码,提高了用户感兴趣的区域的图像质量,并适当降低了用户不感兴趣的区域的图像质量,进一步提高了视频文件转码的效率和用户感兴趣区域的图像质量,提升用户体验。
图3为根据本发明又一个具体实施例的云端的视频转码方法的流程图。
如图3所示,根据本发明实施例的云端的视频转码方法包括下述步骤。
步骤S301,云服务器对视频文件进行解码以获取视频文件的多个图像帧。
步骤S302,云服务器分别判断多个图像帧的每个是否为I帧。
步骤S303,如果是,则云服务器将图像帧标记为焦点图像帧。
步骤S304,如果否,则云服务器进一步判断图像帧是否为运动图像帧,如果是,则将图像帧标记为焦点图像帧。
具体地,云服务器首先获取图像帧的所有宏块的宏块信息,其中宏块信息包括宏块类型、运动矢量、量化系数和参考帧索引,并将所有宏块的运动矢量平方和进行累加后,获取平均值,然后将为P帧(Predicted frame,预测帧)的图像帧的平均值按照预定倍数放大,将为B帧(Bi-directionalpredictive frame,双向预测帧)的图像帧的平均值按照预定倍数缩小,得到图像帧的运动特性系数。如果图像帧的运动特性系数大于预定阈值,则图像帧为运动图像帧,并将其标记为焦点图像帧。
例如,如果一个图像帧有n个宏块,第i个宏块的运动矢量为mvi(mvxi,mvyi),i=1…n,其中,
Figure BDA00002580653800081
则可按照以下公式计算平均值:
MS mv = Σ i = 1 n ( mv x i 2 + mvy i 2 ) n ,
如果这个图像帧为P帧,则将MSmv放大0.1倍得到运动特性系数为:
1.1 × Σ i = 1 n ( mvx i 2 + mvy i 2 ) n ,
如果这个图像帧为B帧,则将MSmv缩小0.1倍得到运动特性系数为:
0.9 × Σ i = 1 n ( mvx i 2 + mvy i 2 ) n ,
如果这个图像帧的运动特性系数大于预定阈值3,则为运动图像帧,并将其标记为焦点图像帧。
步骤S305,如果否,则云服务器进一步对图像帧进行图像分析以判断图像帧是否为人脸图像帧,如果是,则云服务器将图像帧标记为焦点图像帧。
具体地,如果图像帧的运动特性系数不大于预定阈值,则图像帧不是运动图像帧。使用开源工具OpenCV对图像帧进行人脸检测,如果检测出图像帧的人脸区域的面积占图像帧面积的1/6以上,则所述图像帧为人脸图像帧,并将其标记为焦点图像帧。
步骤S306,如果否,则云服务器将图像帧标记为背景图像帧。
步骤S307,云服务器判断焦点图像帧为运动图像帧还是人脸图像帧。
步骤S308,如果为运动图像帧,则云服务器获取运动图像帧中的多个运动宏块和多个背景宏块,并根据多个运动宏块对焦点区域进行无损编码,以及根据多个背景宏块的宏块信息对背景区域进行有损编码。
具体地,可以将运动矢量大于8的宏块定义为运动宏块,运动矢量不大于8的宏块定义为背景宏块,云服务器搜索运动图像帧中的运动宏块,并在码率控制时将其作为显著宏块,增加码字进行无损编码。对于背景宏块,云服务器根据当前已使用的码率减去目标码率得到当前图像帧的码字进行码率控制计算量化参数,并根据背景宏块的宏块类型、运动矢量和参考帧索引直接进行编码。
步骤S309,如果为人脸图像帧,则云服务器获取人脸图像帧中的多个人脸宏块和多个背景宏块,并根据多个人脸宏块对焦点区域进行无损编码,以及根据多个背景宏块的宏块信息对背景区域进行有损编码。
具体地,可以将开源工具OpenCV检测出的人脸区域内的宏块定义为人脸宏块,云服务器搜索人脸图像帧中的人脸宏块,并在码率控制时将其作为显著宏块,增加码字进行无损编码。按照步骤S308所述的方法对于背景宏块进行有损编码。
步骤S310,云服务器根据背景图像帧的所有宏块的宏块信息对背景图像帧进行有损编码,以获得编码后的背景图像帧。
具体地,云服务器根据当前已使用的码率减去目标码率得到当前图像帧的码字进行码率控制来计算量化参数,并根据背景图像帧的的所有宏块的宏块类型、运动矢量和参考帧索引对背景图像帧直接进行编码。
步骤S311,云服务器将编码后的焦点图像帧与编码后的背景图像帧合成转码视频文件并述转码视频文件发送至移动终端。
根据本发明实施例的云端的视频转码方法,根据焦点图像帧的多个运动宏块或者多个人脸宏块对焦点区域进行无损编码,并根据背景区域中的多个背景宏块的宏块信息以及背景图像帧中的所有宏块的宏块信息对图像帧进行编码,进一步提高了转码视频文件的图像质量和用户体验。
为了实现上述实例,本发明还提出一种云服务器。
一种云服务器,包括:解码模块,用于视频文件进行解码以获取视频文件的多个图像帧;判断模块,用于分别判断多个图像帧的每个是焦点图像帧还是背景图像帧;编码模块,用于获取焦点图像帧的焦点区域和背景区域,并对焦点区域进行无损编码,对背景区域进行有损编码,以获得编码后的焦点图像帧,以及对背景图像帧进行有损编码,以获得编码后的背景图像帧;合成模块,将编码后的焦点图像帧与编码后的背景图像帧合成转码视频文件;以及发送模块,用于将转码视频文件发送至移动终端。
图4为根据本发明一个实施例的云服务器的结构框图。
如图4所示,根据本发明实施例的云服务器包括:解码模块100、判断模块200、编码模块300、合成模块400和发送模块500。
具体地,解码模块100用于视频文件进行解码以获取视频文件的多个图像帧。
判断模块200用于分别判断多个图像帧的每个是焦点图像帧还是背景图像帧。其中,焦点图像帧可以是包含用户感兴趣信息的图像帧,例如运动的图像帧或者包括人物特写的图像帧等,背景图像帧则可以是不包含用户感兴趣信息的图像帧。
编码模块300用于获取焦点图像帧的焦点区域和背景区域,并对焦点区域进行无损编码,对背景区域进行有损编码,以获得编码后的焦点图像帧,以及对背景图像帧进行有损编码,以获得编码后的背景图像帧。其中,焦点区域可以包括焦点图像帧中运动图像区域和人脸图像区域等用户感兴趣的区域,背景区域为用户不感兴趣的其他区域。由此,提高用户感兴趣的区域的图像质量,并适当降低用户不感兴趣的区域的图像质量。
合成模块400将编码后的焦点图像帧与编码后的背景图像帧合成转码视频文件。
发送模块500用于将转码视频文件发送至移动终端。
根据本发明实施例的云服务器,通过编码模块对焦点区域进行无损编码以及对背景区域和背景图像帧进行无损编码,来提高用户感兴趣的区域的图像质量,并适当降低用户不感兴趣的区域的图像质量,由此,在高效率转码的同时提高了转码视频文件的图像质量,并且实现了在云端实时转码,从而能够根据不同终端提供不同码率的视频文件,提升用户体验。
图5为根据本发明一个具体实施例的云服务器的结构框图。
如图5所示,根据本发明实施例的云服务器在图4所述的基础上还包括:标记模块600、存储模块700和获取模块800。
具体地,标记模块600用于当判断模块200判断图像帧为I帧、运动图像帧以及人脸图像帧时将图像帧标记为焦点图像帧,以及将不为焦点图像帧的图像帧标记为背景图像帧。
存储模块700用于存储图像帧的所有宏块的宏块信息,其中宏块信息包括宏块类型、运动矢量、量化系数和参考帧索引。
获取模块800用于将所有宏块的运动矢量平方和进行累加后,获取平均值,并进一步在图像帧为P帧时将平均值按照预定倍数放大,在图像帧为B帧时将平均值按照所述预定倍数缩小,以获取图像帧的运动特性系数。
例如,如果一个图像帧有n个宏块,第i个宏块的运动矢量为mvi(mvxi,mvyi),i=1…n,其中,
Figure BDA00002580653800121
则可按照以下公式计算平均值:
MS mv = Σ i = 1 n ( mv x i 2 + mvy i 2 ) n ,
如果这个图像帧为P帧,则将MSmv放大0.1倍得到运动特性系数为:
1.1 × Σ i = 1 n ( mvx i 2 + mvy i 2 ) n ,
如果这个图像帧为B帧,则将MSmv缩小0.1倍得到运动特性系数为:
0.9 × Σ i = 1 n ( mvx i 2 + mvy i 2 ) n ,
其中,判断模块200还用于判断多个图像帧的每个是否为I帧,并在判断不是I帧时进一步判断图像帧是否为运动图像帧,以及在判断不是运动图像帧时进一步对图像帧进行图像分析判断图像帧是否为人脸图像帧。
具体地,当判断模块200判断在判断图像帧不是I帧时,进一步判断图像帧的运动特性系数是否大于预定阈值,如果是,则图像帧为运动图像帧,如果否,则进一步使用开源工具OpenCV对图像帧进行人脸检测,如果检测出图像帧的人脸区域的面积占图像帧面积的1/6以上,则所述图像帧为人脸图像,如果否,则标记模块600将其标记为背景图像帧。
根据本发明实施例的云服务器,将运动图像帧和人脸图像帧作为焦点图像帧,并对焦点图像帧中的焦点区域进行无损编码,对焦点图像帧中的背景区域和背景图像帧进行有损编码,提高了用户感兴趣的区域的图像质量,并适当降低了用户不感兴趣的区域的图像质量,进一步提高了视频文件转码的效率和用户感兴趣区域的图像质量,提升用户体验。
图6为根据本发明又一个具体实施例的云服务器的结构框图。
如图6所示,根据本发明实施例的云服务器包括:解码模块100、判断模块200、编码模块300、合成模块400、发送模块500、标记模块600、存储模块700、获取模块800、判断单元310、获取单元320和编码单元330,其中编码模块包括判断单元310、获取单元320和编码单元330。
具体地,判断单元310用于判断焦点图像帧为运动图像帧还是人脸图像帧。
获取单元320用于在判断焦点图像帧为运动图像帧时获取运动图像帧中的多个运动宏块和多个背景宏块,以及在判断焦点图像为人脸图像帧时获取人脸图像帧中的多个人脸宏块和多个背景宏块;
具体地,可以将运动矢量大于8的宏块定义为运动宏块,运动矢量不大于8的宏块定义为背景宏块,以及将开源工具OpenCV检测出的人脸区域内的宏块定义为人脸宏块,其他区域的宏块为背景宏块。
编码单元330用于根据多个运动宏块或多个人脸宏块对焦点区域进行无损编码,根据多个背景宏块的宏块信息对背景区域进行有损编码,以及根据背景图像帧的所有宏块的宏块信息对所述背景图像帧进行编码。
具体地,编码单元330搜索运动图像帧中的多个运动宏块和人脸图像帧中的多个人脸宏块,并并在码率控制时将其作为显著宏块,增加码字进行无损编码。对于背景宏块和背景图像帧中的宏块,编码单元330根据当前已使用的码率减去目标码率得到当前图像帧的码字进行码率控制来计算量化参数,并根据背景宏块的宏块类型、运动矢量和参考帧索引对背景区域直接进行编码,以及根据背景图像帧的的所有宏块的宏块类型、运动矢量和参考帧索引对背景图像帧直接进行编码。
根据本发明实施例的云服务器,编码模块根据焦点图像帧的多个运动宏块或者多个人脸宏块对焦点区域进行无损编码,并根据背景区域中的多个背景宏块的宏块信息以及背景图像帧中的所有宏块的宏块信息对图像帧进行编码,进一步提高了转码视频文件的图像质量和用户体验。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对所述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同限定。

Claims (12)

1.一种云端的视频转码方法,其特征在于,包括以下步骤:
a、云服务器对视频文件进行解码以获取所述视频文件的多个图像帧;
b、所述云服务器分别判断所述多个图像帧的每个是焦点图像帧还是背景图像帧;
c、如果是焦点图像帧,则所述云服务器获取所述焦点图像帧的焦点区域和背景区域,并对所述焦点区域进行无损编码,对所述背景区域进行有损编码,以获得编码后的焦点图像帧;
d、如果是背景图像帧,则所述云服务器对所述背景图像帧进行有损编码,以获得编码后的背景图像帧;以及
e、所述云服务器将所述编码后的焦点图像帧与所述编码后的背景图像帧合成转码视频文件并将所述转码视频文件发送至移动终端。
2.根据权利要求1所述的方法,其特征在于,所述步骤b具体包括:
b1、所述云服务器分别判断所述多个图像帧的每个是否为帧内编码帧;
b2、如果是,则所述云服务器将所述图像帧标记为所述焦点图像帧;
b3、如果否,则所述云服务器进一步判断所述图像帧是否为运动图像帧;
b4、如果是,则所述云服务器将所述图像帧标记为所述焦点图像帧;
b5、如果否,则所述云服务器进一步对所述图像帧进行图像分析以判断所述图像帧是否为人脸图像帧;
b6、如果是,则所述云服务器将所述图像帧标记为所述焦点图像帧;以及
b7、如果否,则所述云服务器将所述图像帧标记为所述背景图像帧。
3.根据权利要求2所述的方法,其特征在于,所述步骤b3具体包括:
所述云服务器获取所述图像帧的所有宏块的宏块信息,其中所述宏块信息包括宏块类型、运动矢量、量化系数和参考帧索引;
所述云服务器将所有宏块的运动矢量平方和进行累加后,获取平均值;
所述云服务器判断所述图像帧为预测帧还是双向预测帧;
如果为预测帧,则所述云服务器将所述平均值按照预定倍数放大,以获取所述图像帧的运动特性系数;
如果为双向预测帧,则所述云服务器将所述平均值按照所述预定倍数缩小,以获取所述图像帧的运动特性系数;以及
如果所述图像帧的运动特性系数大于预定阈值,则所述图像帧为运动图像帧。
4.根据权利要求1所述的方法,其特征在于,所述焦点区域包括多个运动宏块或多个人脸宏块,所述背景区域包括多个背景宏块。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述步骤c具体包括:
所述云服务器判断所述焦点图像帧为运动图像帧还是人脸图像帧;
如果为所述运动图像帧,则所述云服务器获取所述运动图像帧中的多个运动宏块和多个背景宏块,并根据所述多个运动宏块对所述焦点区域进行无损编码,以及根据多个背景宏块的宏块信息对背景区域进行有损编码;
如果为所述人脸图像帧,则所述云服务器获取所述人脸图像帧中的多个人脸宏块和多个背景宏块,并根据所述多个人脸宏块对所述焦点区域进行无损编码,以及根据多个背景宏块的宏块信息对背景区域进行有损编码。
6.根据权利要求3所述的方法,其特征在于,所述步骤d具体包括:
所述云服务器根据所述背景图像帧的所有宏块的宏块信息对所述背景图像帧进行有损编码。
7.一种云服务器,其特征在于,包括:
解码模块,用于视频文件进行解码以获取所述视频文件的多个图像帧;
判断模块,用于分别判断所述多个图像帧的每个是焦点图像帧还是背景图像帧;
编码模块,用于获取所述焦点图像帧的焦点区域和背景区域,并对焦点区域进行无损编码,对背景区域进行有损编码,以获得编码后的焦点图像帧,以及对所述背景图像帧进行有损编码,以获得编码后的背景图像帧;
合成模块,将所述编码后的焦点图像帧与所述编码后的背景图像帧合成转码视频文件;以及
发送模块,用于将所述转码视频文件发送至移动终端。
8.根据权利要求8所述的装置,其特征在于,还包括:
标记模块,用于当所述判断模块判断图像帧为帧内编码帧、运动图像帧以及人脸图像帧时将所述图像帧标记为焦点图像帧,以及将不为焦点图像帧的图像帧标记为背景图像帧,
其中,所述判断模块还用于判断所述多个图像帧的每个是否为帧内编码帧,并在判断不是所述帧内编码帧时进一步判断所述图像帧是否为运动图像帧以及在判断不是所述运动图像帧时进一步对所述图像帧进行图像分析判断所述图像帧是否为人脸图像帧。
9.根据权利要求8所述的装置,其特征在于,还包括:
存储模块,用于存储所述图像帧的所有宏块的宏块信息,其中所述宏块信息包括宏块类型、运动矢量、量化系数和参考帧索引;以及
获取模块,用于将所有宏块的运动矢量平方和进行累加后,获取平均值,并进一步在所述图像帧为预测帧时将所述平均值按照预定倍数放大,在所述图像帧为双向预测帧时将所述平均值按照所述预定倍数缩小,以获取所述图像帧的运动特性系数。
10.根据权利要求7所述的装置,其特征在于,所述焦点区域包括多个运动宏块或多个人脸宏块,所述背景区域包括多个背景宏块。
11.根据权利要求7至10所述的装置,其特征在于,所述编码模块具体包括:
判断单元,用于判断所述焦点图像帧为运动图像帧还是人脸图像帧;
获取单元,用于在判断所述焦点图像帧为运动图像帧时获取所述运动图像帧中的多个运动宏块和多个背景宏块,以及在判断所述焦点图像为人脸图像帧时获取所述人脸图像帧中的多个人脸宏块和多个背景宏块;
编码单元,用于根据所述多个运动宏块或多个人脸宏块对所述焦点区域进行无损编码,以及根据多个背景宏块的宏块信息对所述背景区域进行有损编码。
12.根据权利要求9所述的装置,其特征在于,所述编码模块根据所述背景图像帧的所有宏块的宏块信息对所述背景图像帧进行编码。
CN201210541400.4A 2012-12-13 2012-12-13 云端的视频转码方法和云服务器 Active CN103024445B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210541400.4A CN103024445B (zh) 2012-12-13 2012-12-13 云端的视频转码方法和云服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210541400.4A CN103024445B (zh) 2012-12-13 2012-12-13 云端的视频转码方法和云服务器

Publications (2)

Publication Number Publication Date
CN103024445A true CN103024445A (zh) 2013-04-03
CN103024445B CN103024445B (zh) 2016-06-29

Family

ID=47972505

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210541400.4A Active CN103024445B (zh) 2012-12-13 2012-12-13 云端的视频转码方法和云服务器

Country Status (1)

Country Link
CN (1) CN103024445B (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103686182A (zh) * 2013-12-13 2014-03-26 洪雪荣 一种屏幕显示信息的编码方法和编码系统
CN106131670A (zh) * 2016-07-12 2016-11-16 块互动(北京)科技有限公司 一种自适应视频编码方法及终端
CN107332830A (zh) * 2017-06-19 2017-11-07 腾讯科技(深圳)有限公司 视频转码、视频播放方法及装置、计算机设备、存储介质
CN107396081A (zh) * 2017-06-19 2017-11-24 深圳市铂岩科技有限公司 针对全景视频的优化编码方法及装置
CN107454428A (zh) * 2017-09-12 2017-12-08 中广热点云科技有限公司 一种视频数据的编解码预处理方法
CN109168007A (zh) * 2018-09-14 2019-01-08 恒信东方文化股份有限公司 一种标定焦点及其图像传输的方法
CN109168032A (zh) * 2018-11-12 2019-01-08 广州酷狗计算机科技有限公司 视频数据的处理方法、终端、服务器及存储介质
CN109191381A (zh) * 2018-09-14 2019-01-11 恒信东方文化股份有限公司 一种标定焦点处理图像的方法及系统
CN111031032A (zh) * 2019-12-12 2020-04-17 深圳市万佳安物联科技股份有限公司 云端视频转码方法及装置、解码方法及装置、及电子设备
CN111277825A (zh) * 2020-01-19 2020-06-12 浙江工业大学 一种基于海思芯片的码流控制方法
CN111277827A (zh) * 2020-02-24 2020-06-12 腾讯科技(深圳)有限公司 一种视频数据处理方法、装置、设备以及可读存储介质
CN111464812A (zh) * 2020-04-17 2020-07-28 西安万像电子科技有限公司 编码解码的方法、系统、装置、存储介质及处理器
CN116761019A (zh) * 2023-08-24 2023-09-15 瀚博半导体(上海)有限公司 视频处理方法、系统、计算机设备及计算机可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1713729A (zh) * 2004-06-24 2005-12-28 华为技术有限公司 一种视频压缩方法
CN101316366A (zh) * 2008-07-21 2008-12-03 北京中星微电子有限公司 图像编/解码方法和图像编/解码装置
JP2010050911A (ja) * 2008-08-25 2010-03-04 Canon Inc 符号化装置
CN102098505A (zh) * 2009-12-09 2011-06-15 华为软件技术有限公司 监控视频压缩方法及设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1713729A (zh) * 2004-06-24 2005-12-28 华为技术有限公司 一种视频压缩方法
CN101316366A (zh) * 2008-07-21 2008-12-03 北京中星微电子有限公司 图像编/解码方法和图像编/解码装置
JP2010050911A (ja) * 2008-08-25 2010-03-04 Canon Inc 符号化装置
CN102098505A (zh) * 2009-12-09 2011-06-15 华为软件技术有限公司 监控视频压缩方法及设备

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103686182B (zh) * 2013-12-13 2016-12-21 洪雪荣 一种屏幕显示信息的编码方法和编码系统
CN103686182A (zh) * 2013-12-13 2014-03-26 洪雪荣 一种屏幕显示信息的编码方法和编码系统
CN106131670A (zh) * 2016-07-12 2016-11-16 块互动(北京)科技有限公司 一种自适应视频编码方法及终端
CN106131670B (zh) * 2016-07-12 2019-04-05 一块互动(北京)科技有限公司 一种自适应视频编码方法及终端
CN107396081B (zh) * 2017-06-19 2019-04-12 深圳市铂岩科技有限公司 针对全景视频的优化编码方法及装置
CN107332830A (zh) * 2017-06-19 2017-11-07 腾讯科技(深圳)有限公司 视频转码、视频播放方法及装置、计算机设备、存储介质
CN107396081A (zh) * 2017-06-19 2017-11-24 深圳市铂岩科技有限公司 针对全景视频的优化编码方法及装置
US10499082B2 (en) 2017-06-19 2019-12-03 Shenzhen Boyan Technology Ltd. Optimized coding method for omnidirectional video, computer readable storage medium and computer device
CN107332830B (zh) * 2017-06-19 2019-02-12 腾讯科技(深圳)有限公司 视频转码、视频播放方法及装置、计算机设备、存储介质
CN107454428A (zh) * 2017-09-12 2017-12-08 中广热点云科技有限公司 一种视频数据的编解码预处理方法
CN107454428B (zh) * 2017-09-12 2019-08-27 中广热点云科技有限公司 一种视频数据的编解码预处理方法
CN109168007A (zh) * 2018-09-14 2019-01-08 恒信东方文化股份有限公司 一种标定焦点及其图像传输的方法
CN109191381A (zh) * 2018-09-14 2019-01-11 恒信东方文化股份有限公司 一种标定焦点处理图像的方法及系统
CN109191381B (zh) * 2018-09-14 2023-06-23 恒信东方文化股份有限公司 一种标定焦点处理图像的方法及系统
CN109168007B (zh) * 2018-09-14 2021-11-23 恒信东方文化股份有限公司 一种标定焦点及其图像传输的方法
CN109168032B (zh) * 2018-11-12 2021-08-27 广州酷狗计算机科技有限公司 视频数据的处理方法、终端、服务器及存储介质
CN109168032A (zh) * 2018-11-12 2019-01-08 广州酷狗计算机科技有限公司 视频数据的处理方法、终端、服务器及存储介质
CN111031032A (zh) * 2019-12-12 2020-04-17 深圳市万佳安物联科技股份有限公司 云端视频转码方法及装置、解码方法及装置、及电子设备
CN111277825A (zh) * 2020-01-19 2020-06-12 浙江工业大学 一种基于海思芯片的码流控制方法
WO2021169392A1 (zh) * 2020-02-24 2021-09-02 腾讯科技(深圳)有限公司 视频数据处理方法、装置、设备以及可读存储介质
CN111277827B (zh) * 2020-02-24 2022-12-20 腾讯科技(深圳)有限公司 一种视频数据处理方法、装置、设备以及可读存储介质
CN111277827A (zh) * 2020-02-24 2020-06-12 腾讯科技(深圳)有限公司 一种视频数据处理方法、装置、设备以及可读存储介质
US11871017B2 (en) 2020-02-24 2024-01-09 Tencent Technology (Shenzhen) Company Limited Video data processing
CN111464812A (zh) * 2020-04-17 2020-07-28 西安万像电子科技有限公司 编码解码的方法、系统、装置、存储介质及处理器
CN111464812B (zh) * 2020-04-17 2022-06-10 重庆京像微电子有限公司 编码解码的方法、系统、装置、存储介质及处理器
CN116761019A (zh) * 2023-08-24 2023-09-15 瀚博半导体(上海)有限公司 视频处理方法、系统、计算机设备及计算机可读存储介质

Also Published As

Publication number Publication date
CN103024445B (zh) 2016-06-29

Similar Documents

Publication Publication Date Title
CN103024445A (zh) 云端的视频转码方法和云服务器
US9781443B2 (en) Motion vector encoding/decoding method and device and image encoding/decoding method and device using same
EP3550836B1 (en) Decoding method and apparatus
US20150288981A1 (en) Method and apparatus for encoding a motion vector, and method and apparatus for encoding/decoding image using same
EP2262270A1 (en) Method, device and system for interframe prediction encoding and decoding
EP2677753A2 (en) Method and apparatus for encoding/decoding motion vectors
CN103314585A (zh) 错误恢复改进的视频编码和解码
CN102835111A (zh) 使用先前块的运动矢量作为当前块的运动矢量来对图像进行编码/解码的方法和设备
CN102845063A (zh) 用于视频编码的设备、方法和计算机程序
CN105141957A (zh) 图像和视频数据编解码的方法和设备
KR20130051029A (ko) 변환을 이용한 주파수 도메인 상의 적응적 루프 필터를 이용한 영상 부호화/복호화 방법 및 장치
CN101554058A (zh) 基于帧内预测进行编码和解码的方法和装置
KR20180024702A (ko) 영상에 대한 적응적 rdpcm 방법, 적응적 rdpcm에 기반한 인코딩 방법 및 적응적 rdpcm에 기반한 디코딩 방법
US20230144455A1 (en) Method and apparatus for video coding for machine vision
CN104104948A (zh) 视频转码方法及视频转码器
US20100322316A1 (en) Moving-picture encoding apparatus and decoding apparatus
US20110176740A1 (en) Image coding method, image coding apparatus, program, and integrated circuit
CN102685473A (zh) 一种帧内预测方法和装置
AU2014277750B2 (en) Encoding or decoding method and apparatus
CN102577130A (zh) 从第一mpeg流到第二mpeg流的代码转换器
KR20130002871A (ko) 화면내 예측을 수행하는 부호화/복호화 장치 및 화면내 예측 부호화/복호화 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant