CN102281441B - 一种并行滤波的方法和装置 - Google Patents
一种并行滤波的方法和装置 Download PDFInfo
- Publication number
- CN102281441B CN102281441B CN201110164459.1A CN201110164459A CN102281441B CN 102281441 B CN102281441 B CN 102281441B CN 201110164459 A CN201110164459 A CN 201110164459A CN 102281441 B CN102281441 B CN 102281441B
- Authority
- CN
- China
- Prior art keywords
- processing module
- image processing
- image
- filtering
- picture
- 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.)
- Expired - Fee Related
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/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/436—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
-
- 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/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Image Processing (AREA)
Abstract
本发明提供了一种并行滤波方法,包括:编码I帧时,图像处理模块i对待编码图像水平分割而成的N片图像的第i片图像进行除滤波外的核心编码处理,i=0..N‑1,图像处理模块0还对第0片图像进行滤波;图像处理模块0和图像处理模块1交换数据;编码除I帧外的其他帧时,当N=2时,图像处理模块0对当前帧的第0片图像进行核心编码处理和滤波,图像处理模块1对上一帧的第1片图像进行滤波处理,对当前帧的第1片图像进行核心编码处理,图像处理模块0和图像处理模块1交换数据。本发明还提供一种并行滤波装置。本发明调整编码次序从而实现多核并行滤波,且达到多核能负载平衡。
Description
技术领域
本发明涉及视频通信,尤其涉及一种并行滤波的方法和装置。
背景技术
目前,高清视频已经成为市场的热点,较之标清,高清图像的优势是显而易见的,但随之而来的问题是,高清图像所带来的处理资源的消耗与标清相比也是指数上升。就720P来说,分辨率是4cif的2倍多,1080I/P是4cif的5倍多,这么高的分辨率意味着高密度的数据处理,这对于DSP(Digital Signal Processing,数字信号处理)处理能力来说,是个极大的挑战。当前市场来看,最强的处理器,也只能单个芯片内核处理1路720P编码,而对于1080I/P则没有哪款芯片能独立完成1路编码任务。而目前市场上最受热捧的视频编码标准H.264,是一种高复杂的协议,这更使本来不足的DSP处理能力捉襟见肘。
所以,当单个DSP芯片的处理能力不足以独立完成高清图像(特别是1080I/P)任务时,众厂家纷纷采用多DSP芯片共同完成高清图像编码。下面多DSP芯片编码没作特殊说明,都指双片编码。
对于H.264协议,编码一帧图像的主要过程有:预测(包括帧内预测和帧间预测)、DCT变换、量化、熵编码、反量化、反DCT变换、滤波。滤波之后的图像作为后续图像的预测图像。这些过程,除了滤波,都是在slice(片)内部,比如帧内预测所需的参考值不会超越slice边界。所以,当将图像划分成两半时,双片可以独立处理,因为所需的数据均在当前slice内部,也就是当前DSP芯片的工作数据集中,不会存在第二片DSP需要的数据要等待第一片DSP处理完才能开始。
但是,H.264的滤波过程是个例外,其滤波是整帧进行滤波,而且严格按照宏块的光栅扫描顺序进行,对某个特定宏块来说,其可以滤波的必要条件是:当前宏块的左相邻宏块和上相邻宏块均已经完成滤波,H.264环路滤波的顺序见图1。高清图像通常都由多核dsp芯片协同完成编码,对于H.264协议,环路滤波需要按严格的顺序从左至右从上至下完成,这对于多核编码如何并行滤波带来了麻烦。
双片编码时,为了让DSP负载均衡,通常进行水平分割图像,因为视频通常水平运动比垂直运动更剧烈,将图像水平分割成上下两半,更能顺应图像的这个特性,使得分割后图像有更好的视觉效果。这样分割后,一片DSP芯片处理一半图像,比如DSP0处理上半部分,DSP1处理下半部分图像。对于H.264除了滤波的其他过程来说,双片DSP处理能非常高效并行处理,而滤波时,DSP1不能独立滤波,而需要等待DSP0滤完上半部分图像,才能开始滤其负责的下半部分图像。这使DSP之间串行执行,其对宝贵的DSP资源是个极大的浪费,据试验可知,TI C6455芯片滤完一帧1080I/P需要8-10毫秒(ms),如果双片完全并行滤波,将使处理时间减半,也就是4-5毫秒(ms),而不并行处理,双片串行等待实际上相当于单芯片滤波效果,其耗时仍为8-10毫秒(ms)。这样,串行处理将比并行处理浪费4-5毫秒/帧,而1080P30要求每帧处理时间不超过33毫秒(ms)。可见,这个浪费不是一个小数目。
所以,对于H.264多片解决方案,如何并行滤波是一个难题,而又是一个必须解决的难题。
目前已有的解决方案中,有的是并行度不高,有的有失谐,虽然有时肉眼看不出来。有的实现很复杂,技术难度大,实际应用过程中很不方便。
发明内容
本发明要解决的技术问题是提供一种并行滤波方法和装置,实现并行滤波,降低实现复杂度。
为了解决上述问题,本发明提供了一种并行滤波方法,包括:
编码I帧时,图像处理模块i对待编码图像水平分割而成的N片图像的第i片图像进行除滤波外的核心编码处理,i=0..N-1,得到未滤波的重建图像;图像处理模块0还对第0片未滤波的重建图像进行滤波;图像处理模块0和图像处理模块1交换数据;其中,该N片图像从上到下依次编号为0至N-1;
编码除I帧外的其他帧时,当N=2时,图像处理模块0对当前帧的第0片图像进行核心编码处理和滤波,图像处理模块1对上一帧的第1片图像进行滤波处理,对当前帧的第1片图像进行核心编码处理,图像处理模块0和图像处理模块1交换数据;
其中,图像处理模块i和图像处理模块i+1交换数据包括:图像处理模块i将第i片图像最底下不少于一个宏块行数的多行图像的已滤波重建图像及滤波相关信息发送给图像处理模块i+1。
进一步的,上述方法还可具有以下特点,所述方法还包括,编码除I帧外的其他帧,当N>2时,包括:
图像处理模块0对当前帧的第0片图像进行核心编码处理和滤波;
图像处理模块1对上一帧的第1片图像进行滤波处理,图像处理模块1和图像处理模块2交换数据;图像处理模块1对当前帧的第1片图像进行核心编码处理,图像处理模块0和图像处理模块1交换数据;
图像处理模块k,1<k<N,接收到图像处理模块k-1交换过来的数据后,对上一帧的第k片图像进行滤波处理,图像处理模块k和图像处理模块k+1交换数据,图像处理模块k对当前帧的第k片图像进行核心编码处理。
进一步的,上述方法还可具有以下特点,图像处理模块i和图像处理模块i+1交换数据还包括:图像处理模块i+1将第i+1片图像的最上面不少于一个宏块行数的多行图像的未滤波重建图像及滤波相关信息发送给图像处理模块i。
进一步的,上述方法还可具有以下特点,所述图像处理模块之间交换数据时,交换的是16行或32行图像的相关信息。
进一步的,上述方法还可具有以下特点,所述N片图像大小相同。
本发明还提供一种并行滤波装置,包括相连的图像处理模块0和图像处理模块1,其中:
所述图像处理模块0用于:编码I帧时,对待编码图像水平分割而成的2片图像中第0片图像进行除滤波外的核心编码处理后再进行滤波,与图像处理模块1交换数据;其中,该2片图像从上到下依次编号为0和1;编码除I帧外的其他帧时,对当前帧的第0片图像进行核心编码处理和滤波,与图像处理模块1交换数据;
所述图像处理模块1用于:编码I帧时,对待编码图像水平分割而成N片图像的第1片图像进行除滤波外的核心编码处理,与图像处理模块0交换数据;编码除I帧外的其他帧时,对上一帧的第1片图像进行滤波处理,对当前帧的第1片图像进行核心编码处理,与图像处理模块0交换数据;
其中,图像处理模块0和图像处理模块1交换数据包括:图像处理模块0将第0片图像最底下不少于一个宏块行数的多行图像的已滤波重建图像及滤波相关信息发送给图像处理模块1。
进一步的,上述装置还可具有以下特点,所述图像处理模块1和图像处理模块0交换数据包括:将第1片图像的最上面不少于一个宏块行数的多行图像的未滤波重建图像及滤波相关信息发送给图像处理模块0。
进一步的,上述装置还可具有以下特点,所述2片图像大小相同。
本发明还提供一种并行滤波装置,包括依次相连的N个图像处理模块,分别为图像处理模块i,i=0...N-1,N>2,其中:
所述图像处理模块0用于:编码I帧时,对待编码图像水平分割而成N片图像的第0片图像进行除滤波外的核心编码处理,得到未滤波的重建图像;对第0片未滤波的重建图像进行滤波;与图像处理模块1交换数据;其中,该N片图像从上到下依次编号为0至N-1;编码除I帧外的其他帧时,对当前帧的第0片图像进行核心编码处理和滤波;
图像处理模块1用于:编码I帧时,对待编码图像水平分割而成N片图像的第1片图像进行除滤波外的核心编码处理,得到未滤波的重建图像;与图像处理模块0交换数据;编码除I帧外的其他帧时,对上一帧的第1片图像进行滤波处理,和图像处理模块2交换数据;对当前帧的第1片图像进行核心编码处理,和图像处理模块0交换数据;
图像处理模块k,1<k<N用于:编码I帧时,对第k片图像进行除滤波外的核心编码处理,得到未滤波的重建图像,接收到图像处理模块k-1交换过来的数据后,对上一帧的第k片图像进行滤波处理,在K<N-1时和图像处理模块k+1交换数据,对当前帧的第k片图像进行核心编码处理;
其中,图像处理模块i和图像处理模块i+1交换数据包括:图像处理模块i将第i片图像最底下不少于一个宏块行数的多行图像的已滤波重建图像及滤波相关信息发送给图像处理模块i+1。
进一步的,上述装置还可具有以下特点,所述图像处理模块i+1和图像处理模块i交换数据包括:所述图像处理模块i+1将第i+1片图像的最上面不少于一个宏块行数的多行图像的未滤波重建图像及滤波相关信息发送给图像处理模块i。
本发明通过调整编码次序从而实现多核并行滤波,且达到多核能负载平衡。
附图说明
图1是滤波宏块顺序示意图;
图2是图像分割方式示意图;
图3是双芯片并行滤波过程示意图;
图4是多芯片并行滤波过程示意图;
图5是本发明并行滤波装置示意图;
图6是本发明另一并行滤波装置示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
本发明针对多核编码的情况,提出了一种通过调整编码次序从而实现多核并行滤波的方法,且达到多核能负载平衡。
对于2片dsp(分别标识为dsp0和dsp1)协同完成高清图像的编码,dsp0负责上半部分图像的编码,dsp1完成下半部分图像的编码(图像分割见图2),根据H.264协议,只有环路滤波过程需要整帧滤波,其他过程都限定在slice内部,所以除滤波外的编码过程可以独立进行,这个过程本发明中称为核心编码过程,滤波过程称为环路滤波过程。编码一帧图像由核心编码过程和环路滤波组成。核心编码过程可以在slice内部独立进行,对于dsp0、dsp1完成可以将自身负责的图像认为是一个或几个独立的slice,而不必芯片间相互依赖。所以,dsp0和dsp1可以独立进行核心编码过程的处理。而环路滤波过程,由于需要整帧一起滤波,且按照宏块从左到右、从上至下的严格顺序进行,这个过程并行处理,在本发明中采用调整处理次序来达到双核协同处理。过程如下:
在编码I帧时,负责上半部分编码的dsp0(第一个dsp)在编码完成之后,对重建数据进行滤波,负责下半部分的dsp1(第二个dsp)在编码完成之后不对重建数据进行滤波。
接下来编码I帧之后的第一待编码帧,编码前,dsp0将最底下32行已经滤波的重建帧数据,及滤波相关信息传递给dsp1,dsp1将最上面32行重建帧数据(未滤波)及滤波相关信息传送给dsp0。Dsp0由于在上一帧已经完成了上半部分的滤波,所以仅需要对dsp1传过来的32行进行滤波。Dsp1上一帧没有对重建数据进行滤波,所以在编码前,首先进行滤波,由于Dsp0完成了上半部分的重建,所以只需要接着往下滤波就行。这样,就使得2片滤波能独立进行了,只不过两片芯片的滤波时间点有不同。一个是在编码后,直接滤波,一个是先滤波再编码。所以对于I帧外的其他帧,dsp0编码完,也对其负责的图像部分进行滤波,而dsp1不需要对当前帧进行滤波。
后续的各帧图像的编码都采用上面的编码次序,即dsp0完成核心编码过程的处理后对当前重建帧进行环路滤波,而dsp1在进行核心编码过程的处理前对上一帧的重建图像进行环路滤波,可以看到双芯片的编码次序是不同的。调整次序后的编码过程如图3所示。
本发明提供一种并行滤波方法,包括:
编码I帧时,图像处理模块i对待编码图像水平分割而成N片图像的第i片图像进行除滤波外的核心编码处理,i=0..N-1,得到未滤波的重建图像;图像处理模块0还对第0片未滤波的重建图像进行滤波;图像处理模块0和图像处理模块1交换数据;其中,该N片图像从上到下依次编号为0至N-1;
编码除I帧外的其他帧时,当N=2时,图像处理模块0对当前帧的第0片图像进行核心编码处理和滤波,图像处理模块1对上一帧的第1片图像进行滤波处理,对当前帧的第1片图像进行核心编码处理,图像处理模块0和图像处理模块1交换数据;
其中,图像处理模块i和图像处理模块i+1交换数据包括:图像处理模块i将第i片图像最底下不少于一个宏块行数的多行图像的已滤波重建图像及滤波相关信息发送给图像处理模块i+1。
其中,编码除I帧外的其他帧,当N>2时,包括:
图像处理模块0对当前帧的第0片图像进行核心编码处理和环路滤波;
图像处理模块1对上一帧的第1片图像进行滤波处理,图像处理模块1和图像处理模块2交换数据;图像处理模块1对当前帧的第1片图像进行核心编码处理,图像处理模块0和图像处理模块1交换数据;
图像处理模块k,1<k<N,接收到图像处理模块k-1交换过来的数据后,对上一帧的第k片图像进行滤波处理,图像处理模块k和图像处理模块k+1交换数据,图像处理模块k对当前帧的第k片图像进行核心编码处理。
其中,图像处理模块i和图像处理模块i+1交换数据还包括:图像处理模块i+1将第i+1片图像的最上面不少于一个宏块行数的多行图像的未滤波重建图像及滤波相关信息发送给图像处理模块i。
其中,所述图像处理模块之间交换数据时,交换的是16行或32行图像的相关信息,具体可以根据需要而定,也可以是其他值。
其中,所述N片图像大小相同,也可以不全相同,和全不相同,可根据DSP的处理能力而定。
下面通过实施例进一步说明本发明。以2片dsp并行滤波为例:
1)将图像分为上下两等份,由dsp0负责上部分图像编码,dsp1负责下半部分图像编码。如图2所示。
2)对序列第一帧图像,即I帧进行如下处理:
i)dsp0和dsp1相互独立完成核心编码处理过程,包括运动估计、模式选择、量化、变换、熵编码等,得到未滤波的重建图像。见图3中步骤301和步骤302,分别为dsp0和dsp1的核心编码过程。
ii)dsp0对当前未滤波的重建图像进行环路滤波,dsp1不对当前未滤波的重建图像进行滤波。见图3步骤303。
iii)dsp0和dsp1交换中间数据,中间数据包括分割线附近32行重建图像、滤波相关数据,即dsp0需要传上半部分重建图像最下32行给dsp1,dsp1需要传下半部分重建图像的最上32行给dsp0。见图3步骤304。
3)序列其他图像帧
i)dsp0完成核心编码处理过程,见图3步骤305。dsp1首先根据接收到的dsp0的上一帧滤波数据,对上一帧进行滤波,滤波完成后开始当前帧的核心编码处理过程。见图3步骤306。
ii)dsp0对当前未滤波的重建图像进行环路滤波,见步骤307。dsp1不对当前未滤波的重建图像进行滤波。见图3步骤308。
iii)dsp0和dsp1交换中间数据,中间数据包括分割线附近32行重建图像、滤波相关数据,即dsp0需要将上半部分重建图像最底下32行传给dsp1,dsp1需要将下半部分重建图像的最上面32行传给dsp0。见图3步骤309。
对于N片(N>=3)片以上dsp协同处理的情况,dsp0采用编码->滤波->编码->滤波的流程,而dsp1~dspN采用滤波->编码->滤波->编码的流程。Dsp2~DspN需要等待dsp1滤波完成。3片以上dsp并行滤波过程如图4所示,包括:
将图像水平分割成N片,从上到下依次编号为0至N-1;
对于I帧,dspi对第i片图像进行除环路滤波外的核心编码处理,i=0..N-1,得到未滤波的重建图像;dsp0还对未滤波的重建图像进行环路滤波;dsp0和dsp1交换数据,其中,dsp0将第0片图像最底下不少于一个宏块行数的多行图像的已滤波重建图像及滤波相关信息发送给dsp1,dsp1将第1片图像的最上面不少于一个宏块行数的多行图像的未滤波重建图像及滤波相关信息发送给dsp0;dsp2至dspN进行核心编码处理;
对除I帧外其他帧:
dsp0对当前帧的第0片图像进行核心编码处理以及进行环路滤波;
dsp1对上一帧的第1片图像进行滤波处理,dsp1和dsp2交换数据,dsp1将第1片图像最底下不少于一个宏块行数的多行图像的已滤波重建图像及滤波相关信息发送给dsp2,dsp2将第2片图像的最上面不少于一个宏块行数的多行图像的未滤波重建图像及滤波相关信息发送给dsp1;dsp1对当前帧的第1片图像进行核心编码处理;dsp1和dsp0交换数据;
dsp2接收到dsp1传输过来的数据后,对上一帧的第2片图像进行滤波处理,dsp2和dsp3交换数据,交换内容和其他dsp间交换内容类似,dsp2对当前帧的第2片图像进行核心编码处理;dsp3至dspN的处理与dsp2类似;
其中,dspi和dsp(i+1)交换数据包括:dspi将第i片图像最底下不少于一个宏块行数的多行图像的已滤波重建图像及滤波相关信息发送给dsp(i+1)。dsp(i+1)将第i+1片图像的最上面不少于一个宏块行数的多行图像的未滤波重建图像及滤波相关信息发送给dspi。
本发明还提供一种并行滤波装置,如图5所示,包括相连的图像处理模块0和图像处理模块1,其中:
所述图像处理模块0用于:编码I帧时,对待编码图像水平分割而成的2片图像中第0片图像进行除滤波外的核心编码处理后再进行滤波,与图像处理模块1交换数据;其中,该2片图像从上到下依次编号为0和1;编码除I帧外的其他帧时,对当前帧的第0片图像进行核心编码处理和滤波,与图像处理模块1交换数据;
所述图像处理模块1用于:编码I帧时,对待编码图像水平分割而成N片图像的第1片图像进行除滤波外的核心编码处理,与图像处理模块0交换数据;编码除I帧外的其他帧时,对上一帧的第1片图像进行滤波处理,对当前帧的第1片图像进行核心编码处理,与图像处理模块0交换数据;
其中,图像处理模块0和图像处理模块1交换数据包括:图像处理模块0将第0片图像最底下不少于一个宏块行数的多行图像的已滤波重建图像及滤波相关信息发送给图像处理模块1。
其中,所述图像处理模块1和图像处理模块0交换数据包括:将第1片图像的最上面不少于一个宏块行数的多行图像的未滤波重建图像及滤波相关信息发送给图像处理模块0。
其中,所述2片图像大小相同。
本发明还提供一种并行滤波装置,如图6所示,包括依次相连的N个图像处理模块,分别为图像处理模块i,i=0...N-1,N>2,其中:
所述图像处理模块0用于:编码I帧时,对待编码图像水平分割而成N片图像的第0片图像进行除滤波外的核心编码处理,得到未滤波的重建图像;对第0片未滤波的重建图像进行滤波;与图像处理模块1交换数据;其中,该N片图像从上到下依次编号为0至N-1;编码除I帧外的其他帧时,对当前帧的第0片图像进行核心编码处理和环路滤波;
图像处理模块1用于:编码I帧时,对待编码图像水平分割而成N片图像的第1片图像进行除滤波外的核心编码处理,得到未滤波的重建图像;与图像处理模块0交换数据;编码除I帧外的其他帧时,对上一帧的第1片图像进行滤波处理,和图像处理模块2交换数据;对当前帧的第1片图像进行核心编码处理,和图像处理模块0交换数据;
图像处理模块k,1<k<N用于:编码I帧时,对第k片图像进行除滤波外的核心编码处理,得到未滤波的重建图像,接收到图像处理模块k-1交换过来的数据后,对上一帧的第k片图像进行滤波处理,在K<N-1时和图像处理模块k+1交换数据,对当前帧的第k片图像进行核心编码处理;
其中,图像处理模块i和图像处理模块i+1交换数据包括:图像处理模块i将第i片图像最底下不少于一个宏块行数的多行图像的已滤波重建图像及滤波相关信息发送给图像处理模块i+1。
其中,所述图像处理模块i+1和图像处理模块i交换数据包括:所述图像处理模块i+1将第i+1片图像的最上面不少于一个宏块行数的多行图像的未滤波重建图像及滤波相关信息发送给图像处理模块i。
本发明可以应用于H.264中,也可以应用于与其类似的其他协议中。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
Claims (7)
1.一种并行滤波方法,其特征在于,包括:
编码I帧时,图像处理模块i对待编码图像水平分割而成的N片图像的第i片图像进行除滤波外的核心编码处理,i=0..N-1,得到未滤波的重建图像;图像处理模块0还对第0片未滤波的重建图像进行滤波;图像处理模块0和图像处理模块1交换数据;其中,该N片图像从上到下依次编号为0至N-1;
编码除I帧外的其他帧时,当N=2时,图像处理模块0对当前帧的第0片图像进行核心编码处理和滤波,图像处理模块1对上一帧的第1片图像进行滤波处理,对当前帧的第1片图像进行核心编码处理,图像处理模块0和图像处理模块1交换数据;
其中,图像处理模块0和图像处理模块1交换数据包括:图像处理模块0将第0片图像最底下不少于一个宏块行数的多行图像的已滤波重建图像及滤波相关信息发送给图像处理模块1;图像处理模块1将第1片图像的最上面不少于一个宏块行数的多行图像的未滤波重建图像及滤波相关信息发送给图像处理模块0。
2.如权利要求1所述的方法,其特征在于,所述方法还包括,编码除I帧外的其他帧,当N>2时,包括:
图像处理模块0对当前帧的第0片图像进行核心编码处理和滤波;
图像处理模块1对上一帧的第1片图像进行滤波处理,图像处理模块1和图像处理模块2交换数据;图像处理模块1对当前帧的第1片图像进行核心编码处理,图像处理模块0和图像处理模块1交换数据;
图像处理模块k,1<k<N,接收到图像处理模块k-1交换过来的数据后,对上一帧的第k片图像进行滤波处理,图像处理模块k和图像处理模块k+1交换数据,图像处理模块k对当前帧的第k片图像进行核心编码处理。
3.如权利要求1或2所述的方法,其特征在于,所述图像处理模块之间交换数据时,交换的是16行或32行图像的相关信息。
4.如权利要求1或2所述的方法,其特征在于,所述N片图像大小相同。
5.一种并行滤波装置,其特征在于,包括相连的图像处理模块0和图像处理模块1,其中:
所述图像处理模块0用于:编码I帧时,对待编码图像水平分割而成的2片图像中第0片图像进行除滤波外的核心编码处理后再进行滤波,与图像处理模块1交换数据;其中,该2片图像从上到下依次编号为0和1;编码除I帧外的其他帧时,对当前帧的第0片图像进行核心编码处理和滤波,与图像处理模块1交换数据;
所述图像处理模块1用于:编码I帧时,对待编码图像水平分割而成N片图像的第1片图像进行除滤波外的核心编码处理,与图像处理模块0交换数据;编码除I帧外的其他帧时,对上一帧的第1片图像进行滤波处理,对当前帧的第1片图像进行核心编码处理,与图像处理模块0交换数据;
其中,图像处理模块0和图像处理模块1交换数据包括:图像处理模块0将第0片图像最底下不少于一个宏块行数的多行图像的已滤波重建图像及滤波相关信息发送给图像处理模块1;图像处理模块1将第1片图像的最上面不少于一个宏块行数的多行图像的未滤波重建图像及滤波相关信息发送给图像处理模块0。
6.如权利要求5所述的装置,其特征在于,所述2片图像大小相同。
7.一种并行滤波装置,其特征在于,包括依次相连的N个图像处理模块,分别为图像处理模块i,i=0…N-1,N>2,其中:
所述图像处理模块0用于:编码I帧时,对待编码图像水平分割而成的N片图像的第0片图像进行除滤波外的核心编码处理,得到未滤波的重建图像;对第0片未滤波的重建图像进行滤波;与图像处理模块1交换数据;其中,该N片图像从上到下依次编号为0至N-1;编码除I帧外的其他帧时,对当前帧的第0片图像进行核心编码处理和滤波;
图像处理模块1用于:编码I帧时,对待编码图像水平分割而成N片图像的第1片图像进行除滤波外的核心编码处理,得到未滤波的重建图像;与图像处理模块0交换数据;编码除I帧外的其他帧时,对上一帧的第1片图像进行滤波处理,和图像处理模块2交换数据;对当前帧的第1片图像进行核心编码处理,和图像处理模块0交换数据;
图像处理模块k,1<k<N用于:编码I帧时,对第k片图像进行除滤波外的核心编码处理,得到未滤波的重建图像,接收到图像处理模块k-1交换过来的数据后,对上一帧的第k片图像进行滤波处理,在K<N-1时和图像处理模块k+1交换数据,对当前帧的第k片图像进行核心编码处理;
其中,图像处理模块i和图像处理模块i+1交换数据包括:图像处理模块i将第i片图像最底下不少于一个宏块行数的多行图像的已滤波重建图像及滤波相关信息发送给图像处理模块i+1;所述图像处理模块i+1将第i+1片图像的最上面不少于一个宏块行数的多行图像的未滤波重建图像及滤波相关信息发送给图像处理模块i。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110164459.1A CN102281441B (zh) | 2011-06-17 | 2011-06-17 | 一种并行滤波的方法和装置 |
PCT/CN2012/073772 WO2012171400A1 (zh) | 2011-06-17 | 2012-04-11 | 一种并行滤波的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110164459.1A CN102281441B (zh) | 2011-06-17 | 2011-06-17 | 一种并行滤波的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102281441A CN102281441A (zh) | 2011-12-14 |
CN102281441B true CN102281441B (zh) | 2017-05-24 |
Family
ID=45106578
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110164459.1A Expired - Fee Related CN102281441B (zh) | 2011-06-17 | 2011-06-17 | 一种并行滤波的方法和装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN102281441B (zh) |
WO (1) | WO2012171400A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021138137A1 (en) * | 2019-12-30 | 2021-07-08 | Texas Instruments Incorporated | Alternating frame processing operation with predicted frame comparisons |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102281441B (zh) * | 2011-06-17 | 2017-05-24 | 中兴通讯股份有限公司 | 一种并行滤波的方法和装置 |
CN103379318B (zh) * | 2012-04-12 | 2018-01-19 | 中兴通讯股份有限公司 | 一种视频码流编码方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101106719A (zh) * | 2006-07-14 | 2008-01-16 | 索尼株式会社 | 小波变换设备、小波逆变换设备和方法、程序和记录介质 |
CN101150719A (zh) * | 2006-09-20 | 2008-03-26 | 华为技术有限公司 | 并行视频编码的方法及装置 |
CN101252691A (zh) * | 2008-03-12 | 2008-08-27 | 中兴通讯股份有限公司 | 一种多处理器并行实现高分辨率图像滤波的方法 |
CN101656885A (zh) * | 2009-09-17 | 2010-02-24 | 中兴通讯股份有限公司 | 多核处理器中并行解码的方法和装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4471017B2 (ja) * | 2008-04-10 | 2010-06-02 | ソニー株式会社 | 信号処理装置、及び、信号処理装置の制御方法 |
CN102098503B (zh) * | 2009-12-14 | 2012-11-28 | 中兴通讯股份有限公司 | 一种多核处理器并行解码图像的方法和装置 |
CN102281441B (zh) * | 2011-06-17 | 2017-05-24 | 中兴通讯股份有限公司 | 一种并行滤波的方法和装置 |
-
2011
- 2011-06-17 CN CN201110164459.1A patent/CN102281441B/zh not_active Expired - Fee Related
-
2012
- 2012-04-11 WO PCT/CN2012/073772 patent/WO2012171400A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101106719A (zh) * | 2006-07-14 | 2008-01-16 | 索尼株式会社 | 小波变换设备、小波逆变换设备和方法、程序和记录介质 |
CN101150719A (zh) * | 2006-09-20 | 2008-03-26 | 华为技术有限公司 | 并行视频编码的方法及装置 |
CN101252691A (zh) * | 2008-03-12 | 2008-08-27 | 中兴通讯股份有限公司 | 一种多处理器并行实现高分辨率图像滤波的方法 |
CN101656885A (zh) * | 2009-09-17 | 2010-02-24 | 中兴通讯股份有限公司 | 多核处理器中并行解码的方法和装置 |
Non-Patent Citations (1)
Title |
---|
基于片上多核的H.264编码的并行加速性研究;宋阳 等;《计算机时代》;20110430;第1-3页 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021138137A1 (en) * | 2019-12-30 | 2021-07-08 | Texas Instruments Incorporated | Alternating frame processing operation with predicted frame comparisons |
CN114788268B (zh) * | 2019-12-30 | 2024-08-02 | 德州仪器公司 | 带有经预测帧比较的交替帧处理操作 |
Also Published As
Publication number | Publication date |
---|---|
CN102281441A (zh) | 2011-12-14 |
WO2012171400A1 (zh) | 2012-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106464894B (zh) | 视频处理方法及装置 | |
CN101583041B (zh) | 多核图像编码处理设备的图像滤波方法及设备 | |
CN103155557B (zh) | 基于分区基础的自适应环路滤波方法和装置 | |
CN104935942B (zh) | 对帧内预测模式进行解码的方法 | |
CN103460699B (zh) | 环路滤波方法及其设备 | |
CN105981383B (zh) | 视频处理方法及装置 | |
CN107071417B (zh) | 一种用于视频编码的帧内预测方法 | |
CN107241598B (zh) | 一种针对多路h.264视频会议的GPU解码方法 | |
CN106464866A (zh) | 用于对视频样本的块进行去块的方法、设备和系统 | |
CN1981533A (zh) | 用于进行解块滤波的方法和系统 | |
CN110337002B (zh) | 一种在多核处理器平台上hevc多层次并行解码方法 | |
CN102065298B (zh) | 高性能宏块编码实现方法 | |
CN102098503A (zh) | 一种多核处理器并行解码图像的方法和装置 | |
CN106464870A (zh) | 用于对帧内画面进行编码和解码的基于模板匹配的方法和装置 | |
CN102281441B (zh) | 一种并行滤波的方法和装置 | |
CN109495743A (zh) | 一种基于异构多处理平台的并行化视频编码方法 | |
CN103222266A (zh) | 图像处理装置以及图像处理方法 | |
CN101115207B (zh) | 基于预测点间相关性的帧内预测实现的方法及装置 | |
CN101252691B (zh) | 一种多处理器并行实现高分辨率图像滤波的方法 | |
CN109391816B (zh) | 基于cpu+gpu异构平台实现hevc中熵编码环节的并行处理方法 | |
CN101841722B (zh) | 滤波边界强度的检测装置的检测方法 | |
CN105100799B (zh) | 一种减少hevc编码器中帧内编码时延的方法 | |
CN105227959B (zh) | 用于视频编码的多编码点混编流水方法及其装置 | |
CN104780377B (zh) | 一种基于分布式计算机系统的并行hevc编码系统及方法 | |
CN102223538A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170524 Termination date: 20200617 |