CN105898308A - 变分辨率的编码模式预测方法及装置 - Google Patents
变分辨率的编码模式预测方法及装置 Download PDFInfo
- Publication number
- CN105898308A CN105898308A CN201510959338.4A CN201510959338A CN105898308A CN 105898308 A CN105898308 A CN 105898308A CN 201510959338 A CN201510959338 A CN 201510959338A CN 105898308 A CN105898308 A CN 105898308A
- Authority
- CN
- China
- Prior art keywords
- frame
- block
- coding
- transcoding
- resolution
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/107—Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/154—Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/172—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/40—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/184—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明实施例提供一种变分辨率的编码模式预测方法及装置。对当前输入码流进行解码,并在解码过程中获取码流信息,其中所述码流信息包括当前解码帧的帧类型以及宏块编码信息;根据所述码流信息预测所述输入码流对应的转码帧的帧类型,并根据所述输入码流的分辨率与转码目标分辨率的映射关系对所述转码帧的编码信息进行预测。在节省转码时间的同时,保证了转码的质量。
Description
技术领域
本发明实施例涉及视频技术领域,尤其涉及一种变分辨率的编码模式预测方法及装置。
背景技术
随着4K电视的普及以及家庭带宽的增加,人们对高质量视频直播的需求也越来越多。4K电视指屏幕显示采用4K分辨率的电视机。4K分辨率是一种新兴的数字电影及数字内容的解析度标准,得名于其横向解析度约为4000像素(pixel),根据不同的应用领域而存在细微差距。4K级别的分辨率可提供880多万像素,至少能提供近千万像素的显示品质,实现电影级的画质,相当于当前顶级的1080p分辨率的四倍还多,显示细腻度为1080p的4倍以上。
当然超高清的代价也是不菲的,4K显示中,每一帧的数据量都达到了50MB,因此无论解码播放还是编辑都需要顶级配置的机器。为了兼顾不同带宽观众的直播体验,现有技术中,通常会将视频转码为不同质量、不同档次的几档码流来满足不同带宽下的流畅播放。但实时转码对转码器的资源消耗是巨大的。
因此,在有效地减少编码复杂度的情况下,一种高质量的视频变分辨率实时转码方法亟待提出。
发明内容
本发明实施例提供一种变分辨率的编码模式预测方法及装置,用以解决现有技术中实时转码对转码器的资源消耗巨大的缺陷,在有效的减少编码复杂度的情况下,实现了高质量的变分辨率实时转码。
本发明实施例提供一种变分辨率的编码模式预测方法,包括:
对当前输入码流进行解码,并在解码过程中获取码流信息,其中所述码流信息包括当前解码帧的帧类型以及宏块编码信息;
根据所述码流信息预测所述输入码流对应的转码帧的帧类型,并根据所述输入码流的分辨率与转码目标分辨率的映射关系对所述转码帧的编码信息进行预测。
本发明实施例提供一种变分辨率的编码模式预测装置,包括:
信息获取模块,用于对当前输入码流进行解码,并在解码过程中获取码流信息,其中所述码流信息包括当前解码帧的帧类型以及宏块编码信息;
转码模块,用于根据所述码流信息预测所述输入码流对应的转码帧的帧类型,并根据所述输入码流的分辨率与转码目标分辨率的映射关系对所述转码帧的编码信息进行预测。
本发明实施例提供的变分辨率的编码模式预测方法及装置,通过对待编码的编码模式进行预测,可以一定程度上节省编码时间;与此同时,本发明实施例对预测模式进行简单的再优化,可以保持与完全编码模式相同的视频质量。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一的技术流程图;
图2为本发明实施例二的技术流程图;
图3为本发明实施例三的技术流程图;
图4为本发明实施例三的又一技术流程图;
图5为本发明实施例三的候选参考块运动矢量方向的示意图;
图6为本发明实施例四的装置结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例应用于变分辨率4K实时转码系统,相对于现有技术转码过程中,将解码得到的宏块直接根据目标转码分辨率进行编码,本发明实施例的技术核心在于,在转码过程中,将输入的原始码流进行解码之后,首先获取输入码流的码流信息,并根据所述码流信息对不同分辨率输出码流的编码信息进行预测,从而实现快速高效编码。
实施例一
图1是本发明实施例1的技术流程图,结合图1,本发明实施例一种变分辨率的编码模式预测方法主要包括两个大的步骤:
步骤110:对当前输入码流进行解码,并在解码过程中获取码流信息,其中所述码流信息包括当前解码帧的帧类型以及宏块编码信息;
转码系统在工作时,首先将输入的4K码流进行解码,再将解码后的视频帧进行编码。本发明实施例的核心在于,将解码后的帧进行编码之前,获取输入码流的原编码信息,并根据所述原编码信息进行编码信息继承,从而实现编码信息预测用以进行后续高质量的编码。
本发明实施例中,编码默认采用H264视频编码。输入码流的帧类型包括帧内预测编码帧(I_FRAME)、前向预测编码帧(P_FRAME)以及双向预测编码帧(B_FRAME)。
数据在网络上是以很小的称为帧(Frame)的单位传输的,帧由几部分组成,不同的部分执行不同的功能。一帧就是一副静止的画面,连续的帧就形成动画,如电视图像等。
在实际压缩时,会采取各种算法减少数据的容量,其中IPB就是最常见的。I帧是帧内预测编码帧,属于帧内压缩,I解码时只需要本帧数据就可以完成(因为只依赖于相邻位置的宏块编码信息)。
P帧为向前预测编码帧,属于帧间编码。P帧表示的是这一帧跟之前一个参考帧的差别,残差数据加上通过前向运动补偿得到的预测数据来重构当前P帧。
B帧是双向差别帧,也就是B帧记录的是本帧与前后参考帧的差别,解码时既需要前向参考帧又需要后向参考帧,通过残差数据加上通过前-后向运动补偿得到的预测数据来重构当前B帧。
本发明实施例中,所述宏块编码信息包括原始输入码流中每一宏块的编码模式,参考帧以及运动矢量,以使后续编码根据这些编码信息,结合变分辨率转码时,原分辨率与目标转码的分辨率之间的映射关系,实现高效的编码预测。
步骤120:根据所述码流信息预测所述输入码流对应的转码帧的帧类型,并根据所述输入码流的分辨率与转码目标分辨率的映射关系对所述转码帧的编码信息进行预测。
本发明实施例中的所述目标分辨率可以是1080P,720P等,二者的预测方式相同。在实际的编码模式预测中,首先根据所述输入码流的分辨率与所述转码目标分辨率的映射关系选择当前编码宏块在所述输入码流中对应的候选参考块,并根据所述候选参考块的原编码模式预测所述当前编码宏块的编码模式。
若当前编码帧为帧内预测编码帧,对所述帧内预测编码帧的帧内宏块进行编码时,首先遍历每一个所述候选参考块,根据所述候选参考块的原分割模式判断所述候选参考块是否为细节块;统计所述细节块的数量并根据所述数量预测所述当前编码宏块的编码模式。
若所述当前编码帧为双向预测编码帧,对所述双向预测编码帧进行编码时,遍历每一个所述候选参考块,判断所述候选参考块是否为帧间预测块或帧内预测块;
若为所述帧内预测块,则判断所述帧内预测块是否为细节块并统计所述细节块的数量;若为所述帧间预测块,则统计所述帧间预测块的数量,并根据所述细节块的数量以及所述帧内预测块的数量预测所述当前编码宏块的编码模式。
本实施例中,通过在转码过程中获取源码流的编码信息,从而对待编码的编码模式进行预测,在一定程度上节省了编码时间,提高了编码的效率,降低了转码的技术成本,与此同时,保证了与完全编码模式相同的视频质量。
实施例二
图2是本发明实施例二的技术流程图,实施例二是本发明实施例中,帧内编码信息预测的一种实施方式,主要包括以下的几个步骤:
步骤210:根据所述输入码流的分辨率与所述转码目标分辨率的映射关系选择当前编码宏块在所述输入码流中对应的候选参考块;
4K电视的物理分辨率达到3840*2160,是全高清(FHD.1920*1080)的4倍,是高清(HD.1280*720)的9倍。对于实时转码而言,相同的内容在不同码率或分辨率的编码情况下,有很多的相似之处,故源码流的编码信息是可以复用的,因此,将4K码流从2160P转码为1080P和720P时,当前编码宏块在2160P中对应的参考块的利用价值很大。
以1080P编码为例,4K到1080P分辨率映射为1:2,即当前1080P(0,0)块对应的块由4K(0,0),(0,1),(1,0),(1,1)组成。因此所述当前编码宏块的预测模式需要从上述4个候选参考块中进行选择。本发明实施例中,降分辨率转码时,如果分辨率映射为非整数,则通过对应的分辨率映射关系,取整选取4个候选参考块。步骤220:遍历每一个所述候选参考块,根据所述候选参考块的原分割模式判断所述候选参考块是否为细节块;
如果所述候选参考块的分割模式为I_8x8或I_4x4,则将此所述候选参考块标记为细节块。
步骤230:统计所述细节块的数量并根据所述数量预测所述当前编码宏块的编码模式。
若所述细节块的数量小于等于1,将所述当前编码宏块的预测编码模式标记为I_16x16;
若所述细节块的数量大于等于2,将所述当前编码宏块的预测编码模式标记为I_4x4;
若所述细节块的数量不满足上述两种情况,则将所述当前编码宏块的预测编码模式标记为I_8x8。
本实施例中,通过复用源码流的编码信息对转码的编码信息进行预测,合理利用了源码流的编码信息,提高了转码的效率;与此同时,按照输入码流与输出码流的映射关系,为当前编码宏块选择候选参考块,并判断所述候选参考块是否为细节块,极大程度地保护了视频转码后图像细节,提高了转码的质量,为用户带来更优的视觉体验。
实施例三
图3是本发明实施例三的技术流程图,实施例三所示例的是本发明实施例中双向预测编码帧的编码信息预测的一种实施方式。图4是图3的进一步细化示意,结合图3与图4,本发明实施例三主要包括以下的几个步骤:
步骤310:根据所述输入码流的分辨率与所述转码目标分辨率的映射关系选择当前编码宏块在所述输入码流中对应的候选参考块;
本步骤同步骤210的执行过程相同,由2160P分辨率的输入码流转码至1080P的输出码流时,为当前编码宏块选取4个候选参考块,同样地,由2160P分辨率的输入码流转码至720P的输出码流时,为当前编码宏块就近选取4个候选参考块,以下部分,均以4个候选参考块对本发明实施例进行说明。
步骤320:遍历每一个所述候选参考块,判断所述候选参考块是否为帧间预测块或帧内预测块;若为所述帧内预测块,执行步骤330;若为帧间预测块,执行步骤340。
步骤330:判断所述帧内预测块是否为细节块并统计所述细节块的数量;
如果为帧内预测块,参数i_intra++,遍历所有候选参考块后,根据参数i_intra的值得到所述intra的数量。
步骤340:计算所述候选参考块的平均MV值、判断所述帧间预测块是
否为细节块并预测所述帧间预测块的参考帧;
由于P帧采用前向参考帧编码和帧内编码的混合模式,在帧间预测编码中,由于活动图像邻近帧中的景物存在着一定的相关性。因此,可将活动图像分成若干块或宏块,并设法搜索出每个块或宏块在邻近帧图像中的位置,并得出两者之间的空间位置的相对偏移量,得到的相对偏移量就是通常所指的运动矢量,得到运动矢量的过程被称为运动估计。运动矢量和经过运动匹配后得到的预测误差共同发送到解码端,在解码端按照运动矢量指明的位置,从已经解码的邻近参考帧图像中找到相应的块或宏块,和预测误差相加后就得到了块或宏块在当前帧中的位置。
因原始输入码流对应位置宏块的运动向量有很高的可利用性,因此,本发明实施例中,所以将所述输入码流的MV(Motion Vector,即运动矢量)作为后续运动估计的参考。
如图5,以输出1080P为例,判断选候选参考块MV的方向。图中,0~8是9个参考MV的方向,1080P中,对于MV(0,0),MV方向为0,对于MV(-1,1),MV方向为8。标记当前候选参考块的方向为mb_candinate[i]->direction(i为候选参考块的序号,1080P中,i的取值范围0-3)。得到每一个候选参考块的MV之后,累加所述MV的值并计算平均MV用以进行后续MV的预测。得到平均MV之后,判断所述候选参考块的原分割模式,若分割块的数量小于等于8×8,则将所述候选参考块标记为细节块。
本步骤中,还需判断所述当前编码宏块是否为B_SKIP或B_DIRECT,若是,则标记所述当前编码宏块为非细节块,参数i_fast_block++。
本发明实施例中,根据每个候选参考块使用的前向参考帧与后向参考帧来预测所述当前编码宏块使用前向参考帧还是后向参考帧。记前向参考帧为参数i_ref0,后向参考帧为参数i_ref1,若所述候选参考块的前向参考帧个数大于1,记i_ref0++,若所述候选参考块的后向参考帧个数大于1,记i_ref1++。当遍历判断完四个候选参考块,根据统计得到的i_ref0和i_ref1的大小预测所述当前编码宏块使用前向参考帧还是后向参考帧。
步骤350:预测所述当前编码宏块的编码模式并预测相应的MV。
本步骤中,首先针对当前候选参考块的方向,定义如下三种条件,Condition1、Condition2、Condition3,分别描述如下:
Condition1:
(mb_candinate[1]->direction-mb_candinate[0]->direction)<=1&&(mb_candinate[2]->direction-mb_candinate[0]->direction)<=1&&(mb_candinate[3]->direction-mb_candinate[0]->direction)<=1
Condition2:
(mb_candinate[1]->direction-mb_candinate[0]->direction)<=1&&(mb_candinate[3]->direction-mb_candinate[2]->direction)<=1&&(mb_candinate[3]->direction-mb_candinate[1]->direction)>1||(mb_candinate[3]->direction-mb_candinate[1]->direction)>1
Condition3:
(mb_candinate[2]->direction-mb_candinate[0]->direction)<=1&&(mb_candinate[3]->direction-mb_candinate[1]->direction)<=1&&(mb_candinate[3]->direction-mb_candinate[2]->direction)>1
其中,当前候选参考块的方向为mb_candinate[i]->direction,i为候选参考块的序号,i的取值范围0-3,&&表示逻辑运算中的“与”,||表示逻辑运算中的“或”。
当所有候选参考块结束步骤320中的所述遍历后,做如下五种判断:
判断A:帧内预测块的个数大于两个,则当前编码宏块按帧内预测块进行编码,根据统计得到的细节块的数量,执行实施例二所述的编码信息预测。
判断B:所述非细节块的数量大于2,则预测所述当前编码宏块的编码模式为B_DIRECT模式;
判断C:若所述当前候选参考块的MV满足Condition1,则预测所述当前编码宏块的编码模式为B_16×16;
判断D:若所述当前候选参考块的MV满足Condition2,则预测所述当前编码宏块的编码模式为B_16×8;
判断E:若所述当前候选参考块的MV满足Condition3,则预测所述当前编码宏块的编码模式为B_8×16;
判断F:若所述当前候选参考块不满足上述A~E所有的判断,则预测所述当前编码宏块的编码模式为B_8×8。
当判出所述当前编码宏块的可能编码模式后,分别计算每一种模式对应的参考MV。
对于B_16×16编码模式,采取如下公式1(Equation1)计算运动矢量MV:
Equation1
Mv[x]=(mvc[0].x+mvc[1].x+mvc[2].x+mvc[3].x)>>2)/scale_x
Mv[y]=(mvc[0].y+mvc[1].y+mvc[2].y+mvc[3].y)>>2)/scale_y
Scale_x=round(source_x/dest_x);
Scale_y=round(source_y/dest_y);
Equation1中,Mv[x]为x方向的运动向量;Mv[y]为y方向的运动向量;
mvc[0]至mvc[3]为4个候选参考块对应的MV;mvc[0].x~mvc[3].x为4个候选参考块对应的x方向的MV;mvc[0].y~mvc[3].y为4个候选参考块对应的y方向的MV;
(mvc[0].x+mvc[1].x+mvc[2].x+mvc[3].x)>>2为步骤340中计算所得的所述平均MV的x方向运动向量;
(mvc[0].y+mvc[1].y+mvc[2].y+mvc[3].y)>>2为步骤340中计算所得的所述平均MV的y方向运动向量;
source_x,source_y分别为输入码流的x,y方向分辨率;
dest_x,dest_y分别为目标x,y方向分辨率;Scale_x,Scale_y为x,y方向的过渡参数,用于后续计算;round()函数返回按指定位数进行四舍五入数值;>>代表右移运算符。
对于B_16×8编码模式,采取如下公式2(Equation2)计算运动矢量MV:
Equation2
Mv[0][x]=(mvc[0].x+mvc[1].x)>>1)/scale_x
Mv[0][y]=(mvc[1].y+mvc[1].y)>>1)/scale_y
Mv[1][x]=(mvc[2].x+mvc[3].x)>>1)/scale_x
Mv[1][y]=(mvc[2].y+mvc[3].y)>>1)/scale_y
对于B_8×16编码模式,采取如下公式3(Equation3)计算运动矢量MV:
Equation3
Mv[0][x]=(mvc[2].x+mvc[0].x)>>1)/scale_x
Mv[0][y]=(mvc[2].y+mvc[0].y)>>1)/scale_y
Mv[1][x]=(mvc[1].x+mvc[3].x)>>1)/scale_x
Mv[1][y]=(mvc[1].y+mvc[3].y)>>1)/scale_y
一个16x16宏块由两个16x8块组成,Mv[0]和Mv[1]分别为两个16x8的运动向量;Mv[0][x]即Mv[0]的x方向的MV;Mv[0][y]即Mv[0]的的y方向的MV。
本发明实施例中,P帧不存在后向预测块,其预测模式与B帧类似,此处不再赘述。
本实施例中,通过对输入码流的编码信息进,通过复用源码流的编码信息对待编码的编码模式进行预测,在一定程度节省了编码时间;与此同时,本实施例对预测模式进行简单地再优化,保证了与完全编码模式相同的视频质量。
实施例四
图6是本发明实施例四的装置结构示意图,结合图6,本发明实施例一种变分辨率的编码模式预测装置,包括如下模块:信息获取模块610、转码模块620。
信息获取模块610,用于对当前输入码流进行解码,并在解码过程中获取码流信息,其中所述码流信息包括当前解码帧的帧类型以及宏块编码信息;
转码模块620,用于根据所述码流信息预测所述输入码流对应的转码帧的帧类型,并根据所述输入码流的分辨率与转码目标分辨率的映射关系对所述转码帧的编码信息进行预测。
具体地,所述转码模块620进一步用于:当采用H264作为视频编码格式时,将所述输入码流对应的帧类型作为所述转码帧的帧类型,其中所述帧类型包括帧内预测编码帧、前向预测编码帧以及双向预测编码帧。
具体地,所述转码模块620进一步用于:根据所述输入码流的分辨率与所述转码目标分辨率的映射关系选择当前编码宏块在所述输入码流中对应的候选参考块,并根据所述候选参考块的原编码模式预测所述当前编码宏块的编码模式。
具体地,所述转码模块620进一步用于:对所述帧内预测编码帧的帧内宏块进行编码时,遍历每一个所述候选参考块,根据所述候选参考块的原分割模式判断所述候选参考块是否为细节块;统计所述细节块的数量并根据所述数量预测所述当前编码宏块的编码模式。
具体地,所述转码模块620进一步用于:对所述双向预测编码帧进行编码时,遍历每一个所述候选参考块,判断所述候选参考块是否为帧间预测块或帧内预测块;若为所述帧内预测块,则判断所述帧内预测块是否为细节块并统计所述细节块的数量;若为所述帧间预测块,则统计所述帧间预测块的数量,并根据所述细节块的数量以及所述帧内预测块的数量预测所述当前编码宏块的编码模式。
图6对应装置执行图1~图5所示实施例,其执行步骤与技术效果如图1~图5所示实施例所述,此处不再赘述。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种变分辨率的编码模式预测方法,其特征在于,包括如下的步骤:
对当前输入码流进行解码,并在解码过程中获取码流信息,其中所述码流信息包括当前解码帧的帧类型以及宏块编码信息;
根据所述码流信息预测所述输入码流对应的转码帧的帧类型,并根据所述输入码流的分辨率与转码目标分辨率的映射关系对所述转码帧的编码信息进行预测。
2.根据权利要求1所述的方法,其特征在于,根据所述码流信息预测所述输入码流对应的转码帧的帧类型,进一步包括:
当采用H264作为视频编码格式时,将所述输入码流对应的帧类型作为所述转码帧的帧类型,其中所述帧类型包括帧内预测编码帧、前向预测编码帧以及双向预测编码帧。
3.根据权利要求1或2所述的方法,其特征在于,根据所述输入码流的分辨率与转码目标分辨率的映射关系对所述转码帧的编码信息进行预测,进一步包括:
根据所述输入码流的分辨率与所述转码目标分辨率的映射关系选择当前编码宏块在所述输入码流中对应的候选参考块,并根据所述候选参考块的原编码模式预测所述当前编码宏块的编码模式。
4.根据权利要求3所述的方法,其特征在于,根据所述候选参考块的原编码模式预测所述当前编码宏块的编码模式,进一步包括:
对所述帧内预测编码帧的帧内宏块进行编码时,遍历每一个所述候选参考块,根据所述候选参考块的原分割模式判断所述候选参考块是否为细节块;
统计所述细节块的数量并根据所述数量预测所述当前编码宏块的编码模式。
5.根据权利要求3所述的方法,其特征在于,根据所述候选参考块的原编码模式预测所述当前编码宏块的编码模式,进一步包括:
对所述双向预测编码帧进行编码时,遍历每一个所述候选参考块,判断所述候选参考块是否为帧间预测块或帧内预测块;
若为所述帧内预测块,则判断所述帧内预测块是否为细节块并统计所述细节块的数量;若为所述帧间预测块,则统计所述帧间预测块的数量,并根据所述细节块的数量以及所述帧内预测块的数量预测所述当前编码宏块的编码模式。
6.一种变分辨率的编码模式预测装置,其特征在于,包括如下模块:
信息获取模块,用于对当前输入码流进行解码,并在解码过程中获取码流信息,其中所述码流信息包括当前解码帧的帧类型以及宏块编码信息;
转码模块,用于根据所述码流信息预测所述输入码流对应的转码帧的帧类型,并根据所述输入码流的分辨率与转码目标分辨率的映射关系对所述转码帧的编码信息进行预测。
7.根据权利要求5所述的装置,其特征在于,所述转码模块进一步用于:
当采用H264作为视频编码格式时,将所述输入码流对应的帧类型作为所述转码帧的帧类型,其中所述帧类型包括帧内预测编码帧、前向预测编码帧以及双向预测编码帧。
8.根据权利要求6或7所述的装置,其特征在于,所述转码模块进一步用于:
根据所述输入码流的分辨率与所述转码目标分辨率的映射关系选择当前编码宏块在所述输入码流中对应的候选参考块,并根据所述候选参考块的原编码模式预测所述当前编码宏块的编码模式。
9.根据权利要求8所述的装置,其特征在于,所述转码模块进一步用于:
对所述帧内预测编码帧的帧内宏块进行编码时,遍历每一个所述候选参考块,根据所述候选参考块的原分割模式判断所述候选参考块是否为细节块;
统计所述细节块的数量并根据所述数量预测所述当前编码宏块的编码模式。
10.根据权利要求8所述的装置,其特征在于,所述转码模块进一步用于:
对所述双向预测编码帧进行编码时,遍历每一个所述候选参考块,判断所述候选参考块是否为帧间预测块或帧内预测块;
若为所述帧内预测块,则判断所述帧内预测块是否为细节块并统计所述细节块的数量;若为所述帧间预测块,则统计所述帧间预测块的数量,并根据所述细节块的数量以及所述帧内预测块的数量预测所述当前编码宏块的编码模式。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510959338.4A CN105898308A (zh) | 2015-12-18 | 2015-12-18 | 变分辨率的编码模式预测方法及装置 |
PCT/CN2016/088715 WO2017101350A1 (zh) | 2015-12-18 | 2016-07-05 | 变分辨率的编码模式预测方法及装置 |
US15/246,684 US20170180745A1 (en) | 2015-12-18 | 2016-08-25 | Prediction method and Electronic Apparatus of encoding mode of variable resolution |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510959338.4A CN105898308A (zh) | 2015-12-18 | 2015-12-18 | 变分辨率的编码模式预测方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105898308A true CN105898308A (zh) | 2016-08-24 |
Family
ID=57002254
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510959338.4A Pending CN105898308A (zh) | 2015-12-18 | 2015-12-18 | 变分辨率的编码模式预测方法及装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20170180745A1 (zh) |
CN (1) | CN105898308A (zh) |
WO (1) | WO2017101350A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107016353A (zh) * | 2017-03-13 | 2017-08-04 | 北京理工大学 | 一种变分辨率目标探测与识别一体化的方法与系统 |
CN108848377A (zh) * | 2018-06-20 | 2018-11-20 | 腾讯科技(深圳)有限公司 | 视频编码、解码方法、装置、计算机设备和存储介质 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108848376B (zh) * | 2018-06-20 | 2022-03-01 | 腾讯科技(深圳)有限公司 | 视频编码、解码方法、装置和计算机设备 |
US11368692B2 (en) * | 2018-10-31 | 2022-06-21 | Ati Technologies Ulc | Content adaptive quantization strength and bitrate modeling |
CN110636293B (zh) * | 2019-09-27 | 2024-03-15 | 腾讯科技(深圳)有限公司 | 视频编码、解码方法和装置、存储介质及电子装置 |
CN110662071B (zh) * | 2019-09-27 | 2023-10-24 | 腾讯科技(深圳)有限公司 | 视频解码方法和装置、存储介质及电子装置 |
CN112235576B (zh) * | 2020-11-16 | 2024-04-30 | 北京世纪好未来教育科技有限公司 | 编码方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101035284A (zh) * | 2007-02-12 | 2007-09-12 | 清华大学 | 一种流式视频像素域转码的方法 |
CN101600109A (zh) * | 2009-07-13 | 2009-12-09 | 北京工业大学 | 基于纹理和运动特征的h.264降尺寸转码方法 |
CN103546754A (zh) * | 2012-07-16 | 2014-01-29 | 中国科学院声学研究所 | 从h.264/avc到svc空间可分级的转码方法及系统 |
CN104581170A (zh) * | 2015-01-23 | 2015-04-29 | 四川大学 | 基于hevc降视频分辨率的快速帧间转码的方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050175099A1 (en) * | 2004-02-06 | 2005-08-11 | Nokia Corporation | Transcoder and associated system, method and computer program product for low-complexity reduced resolution transcoding |
CN100586185C (zh) * | 2008-04-10 | 2010-01-27 | 清华大学 | 一种h.264视频降低分辨率转码的模式选择方法 |
CN104618734B (zh) * | 2015-01-29 | 2019-02-01 | 华为技术有限公司 | 相同协议类型下视频码流的转码方法和装置 |
-
2015
- 2015-12-18 CN CN201510959338.4A patent/CN105898308A/zh active Pending
-
2016
- 2016-07-05 WO PCT/CN2016/088715 patent/WO2017101350A1/zh active Application Filing
- 2016-08-25 US US15/246,684 patent/US20170180745A1/en not_active Abandoned
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101035284A (zh) * | 2007-02-12 | 2007-09-12 | 清华大学 | 一种流式视频像素域转码的方法 |
CN101600109A (zh) * | 2009-07-13 | 2009-12-09 | 北京工业大学 | 基于纹理和运动特征的h.264降尺寸转码方法 |
CN103546754A (zh) * | 2012-07-16 | 2014-01-29 | 中国科学院声学研究所 | 从h.264/avc到svc空间可分级的转码方法及系统 |
CN104581170A (zh) * | 2015-01-23 | 2015-04-29 | 四川大学 | 基于hevc降视频分辨率的快速帧间转码的方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107016353A (zh) * | 2017-03-13 | 2017-08-04 | 北京理工大学 | 一种变分辨率目标探测与识别一体化的方法与系统 |
CN107016353B (zh) * | 2017-03-13 | 2019-08-23 | 北京理工大学 | 一种变分辨率目标探测与识别一体化的方法与系统 |
CN108848377A (zh) * | 2018-06-20 | 2018-11-20 | 腾讯科技(深圳)有限公司 | 视频编码、解码方法、装置、计算机设备和存储介质 |
WO2019242408A1 (zh) * | 2018-06-20 | 2019-12-26 | 腾讯科技(深圳)有限公司 | 视频编码方法、视频解码方法、装置、计算机设备和存储介质 |
CN108848377B (zh) * | 2018-06-20 | 2022-03-01 | 腾讯科技(深圳)有限公司 | 视频编码、解码方法、装置、计算机设备和存储介质 |
US11330254B2 (en) | 2018-06-20 | 2022-05-10 | Tencent Technology (Shenzhen) Company Limited | Video encoding method and apparatus, video decoding method and apparatus, computer device, and storage medium |
Also Published As
Publication number | Publication date |
---|---|
WO2017101350A1 (zh) | 2017-06-22 |
US20170180745A1 (en) | 2017-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105898308A (zh) | 变分辨率的编码模式预测方法及装置 | |
CN100459707C (zh) | 用于隔行形状编码器的模式编码方法及装置 | |
CN110519600B (zh) | 帧内帧间联合预测方法、装置、编解码器及存储装置 | |
CN102301716B (zh) | 解码代表画面序列的流的方法,编码画面序列的方法以及编码的数据结构 | |
CN109845254A (zh) | 影像编码/解码方法及装置 | |
CN103959774B (zh) | 用于高效视频编码的运动信息的有效存储 | |
TWI722842B (zh) | 影像預測解碼方法 | |
CN106170092A (zh) | 用于无损编码的快速编码方法 | |
CN102740071B (zh) | 可分级视频编解码器的编码设备及其方法 | |
CN102077599B (zh) | 用于视频编码器中的高质量帧内模式预测的设备和方法 | |
CN101014132B (zh) | 编码数据选定设定、再编码数据生成和再编码方法及装置 | |
CN102025995B (zh) | 一种可伸缩视频编码的空间增强层快速模式选择方法 | |
CN103227923A (zh) | 图像解码方法以及图像解码装置 | |
CN106031177A (zh) | 用于硬件加速的视频编码的主编码器 | |
CN101022555B (zh) | 帧间预测编码的模式快速选择方法 | |
CN101888546B (zh) | 一种运动估计的方法及装置 | |
CN103329534A (zh) | 图像编码装置及图像解码装置 | |
US11206418B2 (en) | Method of image encoding and facility for the implementation of the method | |
CN105933717A (zh) | 一种编码单元的模式决策方法和装置 | |
CN102484711B9 (zh) | 指向覆盖多个参考图像分区的参考区域的当前图像分区的移动向量的预测、以及使用一个这种预测的编码和解码 | |
CN104811729B (zh) | 一种视频多参考帧编码方法 | |
CN102187668A (zh) | 消除一个或多个预定预测器的编码和解码 | |
CN102265615B (zh) | 使用参考因果区的重新分区的图像预测、以及使用这样的预测的编码和解码 | |
CN102823247B (zh) | 图像处理装置和图像处理方法 | |
CN113366831B (zh) | 重叠块运动补偿和其他工具之间的协调 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160824 |