CN110876082A - 一种视频帧的复杂度的确定方法及装置 - Google Patents

一种视频帧的复杂度的确定方法及装置 Download PDF

Info

Publication number
CN110876082A
CN110876082A CN201811011680.1A CN201811011680A CN110876082A CN 110876082 A CN110876082 A CN 110876082A CN 201811011680 A CN201811011680 A CN 201811011680A CN 110876082 A CN110876082 A CN 110876082A
Authority
CN
China
Prior art keywords
value
complexity
picture block
video frame
frame
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
CN201811011680.1A
Other languages
English (en)
Other versions
CN110876082B (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.)
Wangsu Science and Technology Co Ltd
Original Assignee
Wangsu 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 Wangsu Science and Technology Co Ltd filed Critical Wangsu Science and Technology Co Ltd
Priority to CN201811011680.1A priority Critical patent/CN110876082B/zh
Priority to US16/465,783 priority patent/US20210099712A1/en
Priority to EP18903034.9A priority patent/EP3637769B1/en
Priority to PCT/CN2018/108241 priority patent/WO2020042268A1/zh
Publication of CN110876082A publication Critical patent/CN110876082A/zh
Application granted granted Critical
Publication of CN110876082B publication Critical patent/CN110876082B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • H04N17/004Diagnosis, testing or measuring for television systems or their details for digital television systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/17Methods 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/176Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4621Controlling the complexity of the content stream or additional data, e.g. lowering the resolution or bit-rate of the video stream for a mobile client with a small screen

Abstract

本发明公开了一种视频帧的复杂度的确定方法及装置,其中,所述方法包括:获取待处理的当前视频帧,并将所述当前视频帧划分为指定数量的画面块后,计算所述画面块的帧间预测值和帧内预测值;基于所述画面块的帧间预测值和所述画面块中原始像素值之间的差值,确定所述画面块的时间复杂度,并基于所述画面块的帧内预测值和所述画面块中原始像素值之间的差值,确定所述画面块的空间复杂度;将所述时间复杂度和所述空间复杂度之间的较小者,作为所述画面块的复杂度,并根据所述指定数量的画面块中各个画面块的复杂度,确定所述当前视频帧的复杂度。本申请提供的技术方案,能够提高复杂度的确定精度。

Description

一种视频帧的复杂度的确定方法及装置
技术领域
本发明涉及互联网技术领域,特别涉及一种视频帧的复杂度的确定方法及装置。
背景技术
随着互联网技术的不断发展,涌现出大量的网络直播平台。网络直播平台在给用户带来实时性视频体验的同时,也对用户的网络带宽提出了更高的要求。目前,网络直播平台通常会限制直播视频的码率,从而使得限制之后的码率可以适应用户能够提供的带宽,进而给用户提供流畅的视频体验。
目前,在设置直播视频的码率时,有时需要对直播视频的画面复杂度进行分析。然而,当前还不具备精度较高的复杂度的分析方法。
发明内容
本申请的目的在于提供一种视频帧的复杂度的确定方法及装置,能够提高复杂度的确定精度。
为实现上述目的,本申请一方面提供一种视频帧的复杂度的确定方法,所述方法包括:获取待处理的当前视频帧,并将所述当前视频帧划分为指定数量的画面块后,计算所述画面块的帧间预测值和帧内预测值;基于所述画面块的帧间预测值和所述画面块中原始像素值之间的差值,确定所述画面块的时间复杂度,并基于所述画面块的帧内预测值和所述画面块中原始像素值之间的差值,确定所述画面块的空间复杂度;将所述时间复杂度和所述空间复杂度之间的较小者,作为所述画面块的复杂度,并根据所述指定数量的画面块中各个画面块的复杂度,确定所述当前视频帧的复杂度。
为实现上述目的,本申请另一方面还提供一种视频帧的复杂度的确定装置,所述装置包括:预测值计算单元,用于获取待处理的当前视频帧,并将所述当前视频帧划分为指定数量的画面块后,计算所述画面块的帧间预测值和帧内预测值;时空间复杂度确定单元,用于基于所述画面块的帧间预测值和所述画面块中原始像素值之间的差值,确定所述画面块的时间复杂度,并基于所述画面块的帧内预测值和所述画面块中原始像素值之间的差值,确定所述画面块的空间复杂度;复杂度确定单元,用于将所述时间复杂度和所述空间复杂度之间的较小者,作为所述画面块的复杂度,并根据所述指定数量的画面块中各个画面块的复杂度,确定所述当前视频帧的复杂度。
为实现上述目的,本申请另一方面还提供一种视频帧的复杂度的确定装置,所述装置包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,实现上述的方法。
由上可见,本申请提供的技术方案,在确定视频帧的复杂度时,可以先将视频帧划分为指定数量的画面块,从而减小每次需要处理的数据量。针对每个画面块,可以分别计算画面块的帧间预测值和帧内预测值。然后,可以基于计算出的帧间预测值和帧内预测值,分别确定该画面块的时间复杂度和空间复杂度。其中,该时间复杂度可以体现当前视频帧与前一视频帧之间的画面变化程度,而空间复杂度可以体现当前视频帧内纹理细节的复杂程度。接着,可以将时间复杂度和空间复杂度中的较小者作为画面块的复杂度。由于当前视频帧是由指定数量的画面块构成的,因此,在确定得到各个画面块的复杂度之后,便可以基于确定的这些画面块的复杂度,最终确定当前视频帧的整体复杂度。由上可见,本申请提供的技术方案,将当前视频帧划分为多个画面块,从而保证了每次处理的数据量不会过大,在提高数据处理效率的同时,也能避免由于数据量过大而引起的计算误差,从而提高了最终复杂度的计算精度。此外,基于时间复杂度和空间复杂度这两个维度来确定当前帧的复杂度,也可以适用于不同类型的视频帧,从而进一步地提高了最终复杂度的计算精度。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施方式中视频帧的复杂度的确定方法步骤示意图;
图2是本发明实施方式中视频帧的复杂度的确定装置的功能模块示意图;
图3是本发明实施方式中视频帧的复杂度的确定装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本申请提供一种视频帧的复杂度的确定方法,请参阅图1,所述方法可以包括以下步骤。
S1:获取待处理的当前视频帧,并将所述当前视频帧划分为指定数量的画面块后,计算所述画面块的帧间预测值和帧内预测值。
在本实施方式中,在分析当前视频帧的复杂度时,为了减少每次处理的数据量,可以将该当前视频帧划分为指定数量的画面块。其中,划分后的各个画面块可以具备相同的大小。此外,划分后的画面块的大小,可以按照该当前视频帧对应的视频编码格式来确定。具体地,可以将划分后的画面块的大小与视频编码格式中最大编码单元的大小保持一致。例如,假设该当前视频帧对应的视频编码格式为H.264编码格式,那么划分之后的画面块的大小可以是16*16。又例如,假设该当前视频帧对应的视频编码格式为H.265编码格式,那么划分之后的画面块的大小可以为64*64。其中,画面块的大小可以用像素点作为单位,那么16*16的画面块中,横向和纵向均可以包含16个像素点。
在一个实施方式中,考虑到当前视频帧的实际分辨率可大可小,如果单纯按照编码格式划分画面块,那么划分后的画面块的大小可能不太合适。例如,如果当前视频帧的分辨率较小,那么按照上述的方式划分画面块之后,各个画面块可能会显得较大;又例如,如果当前视频帧的分辨率较大,那么按照上述的方式划分画面块之后,各个画面块可能会显得较小。因此,在实际应用中,按照视频编码格式确定画面块的大小之后,还可以根据当前视频帧的实际分辨率对画面块的大小进行调节。例如,如果划分后的画面块的大小过大,则可以适当减少画面块的大小,从而划分出更多的画面块。相反地,如果划分后的画面块的大小过小,则可以适当增大画面块的大小,从而划分出更少的画面块。
在一个实施方式中,针对分辨率较大的当前视频帧而言,就算将其划分为多个画面块,每个画面块需要处理的数据量可能还比较大。在这种情况下,可以预先对当前视频帧进行下采样,以减少该当前视频帧的分辨率,从而减少后续需要处理的数据量。具体地,在获取待处理的当前视频帧之后,可以识别所述当前视频帧的分辨率,若所述分辨率大于或者等于指定分辨率阈值,则表明该当前视频帧的分辨率过大。此时,可以对所述当前视频帧进行下采样,得到下采样后的视频帧。举例来说,对于分辨率为1280*720的当前视频帧,可以将其下采样至640*360的分辨率。针对原先的当前视频帧而言,可以按照视频编码格式确定出其对应的画面块的大小。例如,分辨率为1280*720的当前视频帧,其对应的画面块的大小为16*16,那么在对该当前视频帧进行下采样之后,可以对应减小画面块的大小。具体地,可以用下采样后的分辨率除以当前视频帧的原始分辨率,得到下采样系数。然后,利用该下采样系数对原始的画面块的大小进行换算,从而得到下采样后的视频帧对应的画面块的大小。例如,将分辨率为1280*720的当前视频帧下采样至640*360的分辨率之后,可以对应地将画面块的大小从16*16更改为8*8。在本实施方式中,在将原始的当前视频帧进行下采样,得到下采样后的视频帧时,便可以将所述下采样后的视频帧的复杂度作为所述当前视频帧的复杂度。
在本实施方式中,在确定当前视频帧或者下采样后的视频帧的复杂度时,可以预先计算划分得到的每个画面块的复杂度,然后可以将各个画面块的复杂度之和作为当前视频帧的复杂度。具体地,在计算各个画面块的复杂度时,首选可以计算各个画面块的帧间预测值和帧内预测值。
在本实施方式中,在计算画面块的帧间预测值时,可以获取所述画面块的指定顶点的坐标值,并确定用于表征运动搜索范围的宽和高。其中,所述指定顶点例如可以是所述画面块的左上角顶点。该指定顶点的坐标值可以表示为(y,x),其中,x表示所述指定顶点的横坐标值,y表示所述指定顶点的纵坐标值。所述运动搜索可以指针对所述画面块,在所述当前视频帧的前一个视频帧中搜索与所述画面块相似的画面块的过程。在实际应用中,通常会给运动搜索限制一个范围,该范围便可以通过上述的表征运动搜索范围的宽和高来表示。
在本实施方式中,可以根据所述指定顶点的坐标值以及所述表征运动搜索范围的宽和高,确定多组不同的搜索值。其中,每组搜索值中可以包括横坐标值和纵坐标值。具体地,在一个实际示例中,可以按照以下公式确定多组搜索值:
|y-y0|≤SH
|x-x0|≤SW
其中,x表示所述指定顶点的横坐标值,y表示所述指定顶点的纵坐标值,y0表示搜索值的纵坐标值,SH为表征运动搜索范围的高,x0表示搜索值的横坐标值,SW为表征运动搜索范围的宽。这样,符合上述条件的(y0,x0)便可以作为一组搜索值。
在本实施方式中,可以分别计算每组搜索值对应的搜索结果,并将最小的搜索结果对应的搜索值作为适配搜索值。具体地,在一个应用示例中,可以按照以下公式确定所述适配搜索值:
Figure BDA0001785254890000051
其中,bh表示所述画面块的高,bw表示所述画面块的宽,s表示从0至bh-1的任意整数,t表示从0至bw-1的任意整数,Pp(y+s,x+t)表示所述当前帧中坐标值为(y+s,x+t)的像素点的像素值,Pp-1(s+y0,t+x0)表示与所述当前视频帧相邻的前一视频帧中坐标值为(s+y0,t+x0)的像素点的像素值。
这样,通过将不同的搜索值代入上述的公式中,便可以得到最终的适配搜索值。
在本实施方式中,在确定出所述适配搜索值之后,便可以根据与所述当前视频帧相邻的前一视频帧中的像素值以及所述适配搜索值,确定所述画面块的帧间预测值。具体地,在一个应用示例中,可以按照以下公式确定所述画面块的帧间预测值:
Binter(i,j)=Pp-1(i+y0,j+x0)
其中,Binter(i,j)表示所述画面块中坐标值为(i,j)的像素点对应的帧间预测值,Pp-1(i+y0,j+x0)表示与所述当前视频帧相邻的前一视频帧中坐标值为(i+y0,j+x0)的像素点的像素值,i表示从0至bh-1的任意整数,j表示从0至bw-1的任意整数。
这样,确定出的画面块的帧间预测值可以是一个矩阵,矩阵中的每个元素可以与画面块中的各个像素点相对应。
在本实施方式中,在计算画面块的帧内预测值时,可以按照当前的帧内预测方法,确定出多个指定方向的候选预测值。具体地,所述当前的帧内预测方法例如可以由H.264、H.265或VP9等编码格式编码过程中的帧内预测模式实现。现有的帧内预测模式可以针对不同的预测方向,得到不同的候选预测值。在本实施方式中,可以仅选用水平方向、45度角方向、垂直方向以及135度角方向这些指定方向的候选预测值。针对每个指定方向的候选预测值,可以分别计算对应的评价值。在一个示例中,可以按照以下公式计算所述多个指定方向的候选预测值中目标指定方向的候选预测值对应的评价值:
Figure BDA0001785254890000061
其中,SAD表示所述目标指定方向的候选预测值对应的评价值,bh表示所述画面块的高,bw表示所述画面块的宽,s表示从0至bh-1的任意整数,t表示从0至bw-1的任意整数,Cintra(s,t)表示坐标值为(s,t)的像素点在所述目标指定方向对应的候选预测值,Pp(y+s,x+t)表示所述当前帧中坐标值为(y+s,x+t)的像素点的像素值。
在本实施方式中,针对各个指定方向的候选预测值,均可以利用上述的公式计算其对应的评价值。然后,可以将最小的评价值对应的候选预测值作为所述画面块的帧内预测值。
S3:基于所述画面块的帧间预测值和所述画面块中原始像素值之间的差值,确定所述画面块的时间复杂度,并基于所述画面块的帧内预测值和所述画面块中原始像素值之间的差值,确定所述画面块的空间复杂度。
在本实施方式中,在计算得到画面块的帧间预测值和帧内预测值之后,可以计算对应的时间复杂度和空间复杂度。其中,所述时间复杂度可以体现当前视频帧与前一视频帧之间的画面变化程度,而空间复杂度可以体现当前视频帧内纹理细节的复杂程度。
在本实施方式中,可以基于所述画面块的帧间预测值和所述画面块中原始像素值之间的差值,确定所述画面块的时间复杂度。具体地,所述画面块的帧间预测值是一个矩阵,该矩阵中的各个元素与画面块的像素点一一对应。因此,在计算所述画面块的帧间预测值和所述画面块中原始像素值之间的差值时,可以将处于相同位置的帧间预测值和像素值相减,从而得到该位置上的差值。这样,最终得到的差值也是一个矩阵。在本实施方式中,在计算得到上述的矩形形式的差值之后,可以对该差值进行离散余弦变换,并可以将离散余弦变换之后的各个系数的绝对值之和作为所述画面块的时间复杂度。
按照类似的方式,在计算空间复杂度时,可以对所述画面块的帧内预测值和所述画面块中原始像素值之间的差值进行离散余弦变换,并将离散余弦变换之后的各个系数的绝对值之和作为所述画面块的空间复杂度。
S4:将所述时间复杂度和所述空间复杂度之间的较小者,作为所述画面块的复杂度,并根据所述指定数量的画面块中各个画面块的复杂度,确定所述当前视频帧的复杂度。
在本实施方式中,得到画面块的时间复杂度和空间复杂度之后,可以将所述时间复杂度和所述空间复杂度之间的较小者,作为所述画面块的复杂度。这样,由于当前视频帧是由指定数量的画面块构成的,因此,可以根据所述指定数量的画面块中各个画面块的复杂度,确定所述当前视频帧的复杂度。具体地,可以将各个画面块的复杂度之和作为所述当前视频帧的复杂度,从而完成当前视频帧的复杂度的确定过程。
在一个实施方式中,分析当前视频帧的复杂度的过程,可以在对当前视频帧进行编码之前进行。具体地,在实际应用中,如果无法使用编码器在编码过程中的内部信息,则对于当前视频帧而言,可以先对该当前视频帧的画面复杂度进行分析,然后再将该当前视频帧输入编码器中进行编码。而如果可以使用编码器在编码过程中的内部信息,则可以直接将该当前视频帧输入编码器,在编码器识别出当前视频帧的帧类型之后,在对该当前视频帧进行画面复杂度的分析过程。其中,所述内部信息可以是编码器对当前视频帧的类型识别结果。如果无法使用该内部信息,则表明在对当前视频帧分析画面复杂度时,无法知晓该当前视频帧的帧类型。而如果可以使用该内容信息,则表明在对当前视频帧分析画面复杂度时,已经确定了该当前视频帧的帧类型。其中,所述当前视频帧的帧类型可以包括B帧、I帧以及P帧。其中,I帧可以称为内部画面帧或者关键帧,I帧可以作为独立帧,不依赖与相邻的其它视频帧。P帧可以称为向前搜索帧,B帧可以称为双向搜索帧,P帧和B帧则需要依赖前一视频帧或者相邻的两个视频帧。
在本实施方式中,若无法识别所述当前视频帧的帧类型,或者识别出所述当前视频帧为非内部画面帧(非I帧),表明该当前视频帧需要依赖其它的视频帧,此时,需要按照上述的方式,计算所述画面块的帧间预测值和帧内预测值,从而即可以确定出体现当前视频帧与前一视频帧之间的画面变化程度的时间复杂度,又可以确定出体现当前视频帧内纹理细节的复杂程度的空间复杂度。而若识别出所述当前视频帧为内部画面帧,则表明该当前视频帧不依赖于其它视频帧,因此,无需确定时间复杂度,而是可以仅计算所述画面块的帧内预测值,并将基于所述画面块的帧内预测值和所述画面块中原始像素值之间的差值确定的空间复杂度作为所述画面块的复杂度。
由上可见,本申请提供的技术方案,无论是否可以使用编码器在编码过程中的内部信息,均能够实现精确的画面复杂度的分析过程,从而可以不依赖于编码器的内部信息。
请参阅图2,本申请还提供一种视频帧的复杂度的确定装置,所述装置包括:
预测值计算单元,用于获取待处理的当前视频帧,并将所述当前视频帧划分为指定数量的画面块后,计算所述画面块的帧间预测值和帧内预测值;
时空间复杂度确定单元,用于基于所述画面块的帧间预测值和所述画面块中原始像素值之间的差值,确定所述画面块的时间复杂度,并基于所述画面块的帧内预测值和所述画面块中原始像素值之间的差值,确定所述画面块的空间复杂度;
复杂度确定单元,用于将所述时间复杂度和所述空间复杂度之间的较小者,作为所述画面块的复杂度,并根据所述指定数量的画面块中各个画面块的复杂度,确定所述当前视频帧的复杂度。
请参阅图3,本申请还提供一种视频帧的复杂度的确定装置,所述装置包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,可以实现上述视频帧的复杂度的确定方法。
由上可见,本申请提供的技术方案,在确定视频帧的复杂度时,可以先将视频帧划分为指定数量的画面块,从而减小每次需要处理的数据量。针对每个画面块,可以分别计算画面块的帧间预测值和帧内预测值。然后,可以基于计算出的帧间预测值和帧内预测值,分别确定该画面块的时间复杂度和空间复杂度。其中,该时间复杂度可以体现当前视频帧与前一视频帧之间的画面变化程度,而空间复杂度可以体现当前视频帧内纹理细节的复杂程度。接着,可以将时间复杂度和空间复杂度中的较小者作为画面块的复杂度。由于当前视频帧是由指定数量的画面块构成的,因此,在确定得到各个画面块的复杂度之后,便可以基于确定的这些画面块的复杂度,最终确定当前视频帧的整体复杂度。由上可见,本申请提供的技术方案,将当前视频帧划分为多个画面块,从而保证了每次处理的数据量不会过大,在提高数据处理效率的同时,也能避免由于数据量过大而引起的计算误差,从而提高了最终复杂度的计算精度。此外,基于时间复杂度和空间复杂度这两个维度来确定当前帧的复杂度,也可以适用于不同类型的视频帧,从而进一步地提高了最终复杂度的计算精度。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (13)

1.一种视频帧的复杂度的确定方法,其特征在于,所述方法包括:
获取待处理的当前视频帧,并将所述当前视频帧划分为指定数量的画面块后,计算所述画面块的帧间预测值和帧内预测值;
基于所述画面块的帧间预测值和所述画面块中原始像素值之间的差值,确定所述画面块的时间复杂度,并基于所述画面块的帧内预测值和所述画面块中原始像素值之间的差值,确定所述画面块的空间复杂度;
将所述时间复杂度和所述空间复杂度之间的较小者,作为所述画面块的复杂度,并根据所述指定数量的画面块中各个画面块的复杂度,确定所述当前视频帧的复杂度。
2.根据权利要求1所述的方法,其特征在于,计算所述画面块的帧间预测值包括:
获取所述画面块的指定顶点的坐标值,并确定用于表征运动搜索范围的宽和高;
根据所述指定顶点的坐标值以及所述表征运动搜索范围的宽和高,确定多组搜索值;其中,每组所述搜索值中包括横坐标值和纵坐标值;
分别计算每组搜索值对应的搜索结果,并将最小的搜索结果对应的搜索值作为适配搜索值;
根据与所述当前视频帧相邻的前一视频帧中的像素值以及所述适配搜索值,确定所述画面块的帧间预测值。
3.根据权利要求2所述的方法,其特征在于,按照以下公式确定多组搜索值:
|y-y0|≤SH
|x-x0|≤SW
其中,x表示所述指定顶点的横坐标值,y表示所述指定顶点的纵坐标值,y0表示搜索值的纵坐标值,SH为表征运动搜索范围的高,x0表示搜索值的横坐标值,SW为表征运动搜索范围的宽。
4.根据权利要求3所述的方法,其特征在于,按照以下公式确定所述适配搜索值:
Figure FDA0001785254880000021
其中,bh表示所述画面块的高,bw表示所述画面块的宽,s表示从0至bh-1的任意整数,t表示从0至bw-1的任意整数,Pp(y+s,x+t)表示所述当前帧中坐标值为(y+s,x+t)的像素点的像素值,Pp-1(s+y0,t+x0)表示与所述当前视频帧相邻的前一视频帧中坐标值为(s+y0,t+x0)的像素点的像素值。
5.根据权利要求4所述的方法,其特征在于,按照以下公式确定所述画面块的帧间预测值:
Binter(i,j)=Pp-1(i+y0,j+x0)
其中,Binter(i,j)表示所述画面块中坐标值为(i,j)的像素点对应的帧间预测值,Pp-1(i+y0,j+x0)表示与所述当前视频帧相邻的前一视频帧中坐标值为(i+y0,j+x0)的像素点的像素值,i表示从0至bh-1的任意整数,j表示从0至bw-1的任意整数。
6.根据权利要求1所述的方法,其特征在于,计算所述画面块的帧内预测值包括:
获取所述画面块在多个指定方向的候选预测值,并计算每个指定方向的候选预测值对应的评价值;
将最小的评价值对应的候选预测值作为所述画面块的帧内预测值。
7.根据权利要求6所述的方法,其特征在于,按照以下公式计算所述多个指定方向的候选预测值中目标指定方向的候选预测值对应的评价值:
Figure FDA0001785254880000022
其中,SAD表示所述目标指定方向的候选预测值对应的评价值,bh表示所述画面块的高,bw表示所述画面块的宽,s表示从0至bh-1的任意整数,t表示从0至bw-1的任意整数,Cintra(s,t)表示坐标值为(s,t)的像素点在所述目标指定方向对应的候选预测值,Pp(y+s,x+t)表示所述当前帧中坐标值为(y+s,x+t)的像素点的像素值。
8.根据权利要求1所述的方法,其特征在于,按照以下方式确定所述画面块的时间复杂度和空间复杂度:
对所述画面块的帧间预测值和所述画面块中原始像素值之间的差值进行离散余弦变换,并将离散余弦变换之后的各个系数的绝对值之和作为所述画面块的时间复杂度;
对所述画面块的帧内预测值和所述画面块中原始像素值之间的差值进行离散余弦变换,并将离散余弦变换之后的各个系数的绝对值之和作为所述画面块的空间复杂度。
9.根据权利要求1所述的方法,其特征在于,确定所述当前视频帧的复杂度包括:
将各个画面块的复杂度之和作为所述当前视频帧的复杂度。
10.根据权利要求1所述的方法,其特征在于,在将所述当前视频帧划分为指定数量的画面块后,所述方法还包括:
若无法识别所述当前视频帧的帧类型,或者识别出所述当前视频帧为非内部画面帧,才计算所述画面块的帧间预测值和帧内预测值;
若识别出所述当前视频帧为内部画面帧,仅计算所述画面块的帧内预测值,并将基于所述画面块的帧内预测值和所述画面块中原始像素值之间的差值确定的空间复杂度作为所述画面块的复杂度。
11.根据权利要求1所述的方法,其特征在于,在获取待处理的当前视频帧之后,所述方法还包括:
识别所述当前视频帧的分辨率,若所述分辨率大于或者等于指定分辨率阈值,对所述当前视频帧进行下采样,得到下采样后的视频帧;其中,所述下采样后的视频帧的复杂度作为所述当前视频帧的复杂度。
12.一种视频帧的复杂度的确定装置,其特征在于,所述装置包括:
预测值计算单元,用于获取待处理的当前视频帧,并将所述当前视频帧划分为指定数量的画面块后,计算所述画面块的帧间预测值和帧内预测值;
时空间复杂度确定单元,用于基于所述画面块的帧间预测值和所述画面块中原始像素值之间的差值,确定所述画面块的时间复杂度,并基于所述画面块的帧内预测值和所述画面块中原始像素值之间的差值,确定所述画面块的空间复杂度;
复杂度确定单元,用于将所述时间复杂度和所述空间复杂度之间的较小者,作为所述画面块的复杂度,并根据所述指定数量的画面块中各个画面块的复杂度,确定所述当前视频帧的复杂度。
13.一种视频帧的复杂度的确定装置,其特征在于,所述装置包括处理器和存储器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,用于实现如权利要求1至11中任一权利要求所述的方法。
CN201811011680.1A 2018-08-31 2018-08-31 一种视频帧的复杂度的确定方法及装置 Active CN110876082B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201811011680.1A CN110876082B (zh) 2018-08-31 2018-08-31 一种视频帧的复杂度的确定方法及装置
US16/465,783 US20210099712A1 (en) 2018-08-31 2018-09-28 Method and apparatus for determining complexity of a video frame
EP18903034.9A EP3637769B1 (en) 2018-08-31 2018-09-28 Method and device for determining video frame complexity measure
PCT/CN2018/108241 WO2020042268A1 (zh) 2018-08-31 2018-09-28 一种视频帧的复杂度的确定方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811011680.1A CN110876082B (zh) 2018-08-31 2018-08-31 一种视频帧的复杂度的确定方法及装置

Publications (2)

Publication Number Publication Date
CN110876082A true CN110876082A (zh) 2020-03-10
CN110876082B CN110876082B (zh) 2020-12-29

Family

ID=67658465

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811011680.1A Active CN110876082B (zh) 2018-08-31 2018-08-31 一种视频帧的复杂度的确定方法及装置

Country Status (4)

Country Link
US (1) US20210099712A1 (zh)
EP (1) EP3637769B1 (zh)
CN (1) CN110876082B (zh)
WO (1) WO2020042268A1 (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101547359A (zh) * 2009-04-17 2009-09-30 西安交通大学 一种基于运动复杂度的快速运动估计自适应选择方法
CN101697591A (zh) * 2005-03-10 2010-04-21 高通股份有限公司 用于多媒体处理的内容分类
CN101926178A (zh) * 2008-01-24 2010-12-22 Sk电信有限公司 基于时间复杂度和空间复杂度来确定编码模式的方法及装置
US20120294355A1 (en) * 2011-05-17 2012-11-22 Microsoft Corporation Video transcoding with dynamically modifiable spatial resolution
CN104038769A (zh) * 2014-06-11 2014-09-10 同济大学 帧内编码的码率控制方法
CN104780369A (zh) * 2012-08-21 2015-07-15 华为技术有限公司 一种获得视频编码压缩质量的方法及装置
CN106170979A (zh) * 2014-04-30 2016-11-30 英特尔公司 恒定质量视频编码
US20180152690A1 (en) * 2016-02-19 2018-05-31 Alcacruz Inc. Systems and method for virtual reality video conversion and streaming

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102984541B (zh) * 2012-12-07 2015-01-14 浙江大学 一种基于像素域失真度估计的视频质量评价方法
FR3040849A1 (fr) * 2015-09-04 2017-03-10 Stmicroelectronics (Grenoble 2) Sas Procede de compression d'un flux de donnees video

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101697591A (zh) * 2005-03-10 2010-04-21 高通股份有限公司 用于多媒体处理的内容分类
CN101926178A (zh) * 2008-01-24 2010-12-22 Sk电信有限公司 基于时间复杂度和空间复杂度来确定编码模式的方法及装置
CN101547359A (zh) * 2009-04-17 2009-09-30 西安交通大学 一种基于运动复杂度的快速运动估计自适应选择方法
US20120294355A1 (en) * 2011-05-17 2012-11-22 Microsoft Corporation Video transcoding with dynamically modifiable spatial resolution
CN104780369A (zh) * 2012-08-21 2015-07-15 华为技术有限公司 一种获得视频编码压缩质量的方法及装置
CN106170979A (zh) * 2014-04-30 2016-11-30 英特尔公司 恒定质量视频编码
CN104038769A (zh) * 2014-06-11 2014-09-10 同济大学 帧内编码的码率控制方法
US20180152690A1 (en) * 2016-02-19 2018-05-31 Alcacruz Inc. Systems and method for virtual reality video conversion and streaming

Also Published As

Publication number Publication date
EP3637769B1 (en) 2022-04-20
EP3637769A1 (en) 2020-04-15
WO2020042268A1 (zh) 2020-03-05
US20210099712A1 (en) 2021-04-01
EP3637769A4 (en) 2020-04-15
CN110876082B (zh) 2020-12-29

Similar Documents

Publication Publication Date Title
KR101342284B1 (ko) 적응적 움직임 검색 범위
CN110876060B (zh) 一种编码过程中的码率调整方法及装置
CN102326391B (zh) 多视点图像编码装置及方法、多视点图像译码装置及方法
JP7100772B2 (ja) 双方向オプティカル・フローに対するビット幅制御方法およびデバイス
CN108848381B (zh) 视频编码方法、解码方法、装置、计算机设备及存储介质
KR20070088322A (ko) 움직임 벡터 산출 장치 및 움직임 벡터 산출 방법
CN110996099B (zh) 一种视频编码方法、系统及设备
JPH08307874A (ja) 映像信号符号化装置
US11310524B2 (en) Method and apparatus for determining motion vector of affine code block
JP2021516928A (ja) ビデオエンコーディング、デコーディング方法、装置、コンピュータ機器及びコンピュータプログラム
KR20180037042A (ko) 모션 벡터 필드 코딩 방법 및 디코딩 방법, 및 코딩 및 디코딩 장치들
EP2362655B1 (en) Motion-vector estimation
TWI510050B (zh) 量化控制裝置及方法,以及量化控制程式
CN110876082B (zh) 一种视频帧的复杂度的确定方法及装置
WO2016179261A1 (en) Methods and apparatus for optical blur modeling for improved video encoding
KR101362545B1 (ko) 비디오 시퀀스에서 가변 외형 움직임 추정
CN112203094A (zh) 编码方法、装置、电子设备及存储介质
CN112235576B (zh) 编码方法、装置、电子设备及存储介质
CN114422803B (zh) 一种视频处理方法、装置及设备
CN116320443A (zh) 视频图像处理方法、装置、计算机设备和存储介质
CN116156186A (zh) 一种视频的时空域协同预处理方法及相关装置
CN116074537A (zh) 编码方法、解码方法、电子设备和计算机可读存储介质
CN116156187A (zh) 图像处理方法、装置、电子设备及存储介质
WO2005006767A1 (en) Simplified motion estimation method
JP2000244926A (ja) 動画像符号化の動きベクトル探索方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant