CN101272497B - 一种视频编码方法 - Google Patents
一种视频编码方法 Download PDFInfo
- Publication number
- CN101272497B CN101272497B CN 200810105991 CN200810105991A CN101272497B CN 101272497 B CN101272497 B CN 101272497B CN 200810105991 CN200810105991 CN 200810105991 CN 200810105991 A CN200810105991 A CN 200810105991A CN 101272497 B CN101272497 B CN 101272497B
- Authority
- CN
- China
- Prior art keywords
- band
- data
- image
- transmission
- encoding
- 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
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种视频编码方法,将图像分割为不少于2个条带,将条带的数据发送给相应的条带编码DSP;如果为第一帧图像,按由上到下的顺序延迟相应迟滞时间逐个启动条带编码DSP,条带编码DSP对输入的条带数据进行编码,生成条带级比特流,同时启动下一帧待编码图像对应条带数据的传输,如果存在上相邻条带,在编码到上相邻条带搜索范围以下时启动上相邻条带参考图像数据的传输;条带编码完成,如果存在下相邻条带,启动下相邻条带参考图像数据的传输;根据上一帧图像每个条带的编码时间数据调整下一帧待编码图像条带高度,对所有条带编码DSP的生成码流进行处理。采用了本发明的技术方案,能够提高多DSP编码系统的编码效率和系统性能,有效地解决H.264编码程序在多DSP系统平台上运行的效率问题。
Description
技术领域
本发明涉及多媒体技术领域,尤其涉及一种视频编码方法。
背景技术
随着经济的发展和人民生活水平的提高,以视频为主多媒体技术得到迅猛的发展和普及,数字视频编码系统的需求量越来越大。视频编码标准规定了一套完整的视频压缩编码算法工具集,是视频压缩技术的核心。世界上已经有多家国际组织和公司提出了自己的视频压缩编码算法,其中H.264/AVC(以下简为H.264)是最为先进的视频编码标准之一。它不用众多的选项,获得比H.263、MPEG2好得多的压缩性能;增强了对各种信道的适应能力,采用“网络友好”的结构和语法,有利于对误码和丢包的处理;应用范围较宽,以满足不同速率、不同解析度及不同传输(存储)场合的需求,同时保持良好的主、客观画面质量。
采用数字信号处理器(Digital Signal Processor,DSP)进行视频编码是一种高性价比的视频编码系统实现方案。DSP具有较强的计算能力,尤其适用于数字视频编码等计算密集的实时应用领域,较之芯片等硬件实现具有可升级,易扩展等众多优点。
但是由于H.264算法的复杂性,单个DSP往往不能满足标清、高清环境下H.264视频编码的实时数据处理要求。实际中经常使用两个或者多个DSP进行并行处理,实现标清及至高清的H.264实时编码。在这类系统中若并行处理的调度方法不当,可能会因原始图像数据的传输和重构参考帧数据的同步而消耗大量的DSP的运算资源,而且并行处理的DSP越多,每个DSP的开销也越大,这会降低编码效率,限制系统性能提升,更为严重的可能会使增加DSP的运算与开销相抵,影响系统设计的成败。
发明内容
本发明的目的在于提出一种视频编码方法,适用于采用多DSP方案的
H.264编码系统,能够提高多DSP编码系统的编码效率和系统性能,有效地解决H.264编码程序在多DSP系统平台上运行的效率问题。
为达此目的,本发明采用以下技术方案:
一种视频编码方法,包括以下步骤:
A、确定条带高度,按光栅扫描顺序将图像分割为不少于2个的包含所述图像左右垂直边界的条带,将所述条带的数据按照编号顺序发送给相应的条带编码DSP;
B、如果为第一帧图像,按由上到下的顺序延迟相应迟滞时间逐个启动条带编码DSP,所述条带编码DSP对输入的条带数据进行编码,生成条带级比特流,同时启动下一帧待编码图像对应条带数据的传输,如果存在上相邻条带,在编码到上相邻条带搜索范围以下时启动上相邻条带参考图像数据的传输;
C、所述条带编码完成,如果存在下相邻条带,启动下相邻条带参考图像数据的传输;
D、根据上一帧图像每个条带的编码时间数据调整下一帧待编码图像条带高度,并转至步骤A,直到所有条带完成编码;
E、对所有条带编码DSP的生成码流进行处理。
步骤A中,第一帧图像和第二帧图像的条带高度根据条带编码DSP的个数平均分配,之后图像的条带高度根据以下公式得出:
SHm,n=SHm-1,n+ΔSHm-1,n
ΔSHi,0=0,ΔSHi,l=16,l∈[1,Hmb%N],i∈[0,1]
m∈[0,∞]n∈[0,N-1]
其中SHm,n为第m帧图像第n条带的高度,ΔSHm,n为第m帧图像第n条带的高度调整值,W为图像的宽度,H为图像的高度,并可被16整除,N为条带编码DSP的个数,Hmb为宏块高度。
计算出SHm,n后,对其上下界进行限制,公式如下:
L≤ΔSHm,n≤U
其中L为下界值,U为上界值。
所述迟滞时间由以下公式得出:
n∈[1,N]
其中n为条带序数,TD0,n为第n条带对应的迟滞时间,SH0,n为图像的第n条带的高度,W为图像宽度,B为传输参考图像数据的总线带宽。
步骤B中,如果当前图像用做参考帧,且当前条带存在上相邻条带,在完成上相邻条带参考图像数据的编码后,启动上相邻条带参考图像数据的传输,所述参考图像数据的传输优先级高于原始图像数据的传输。
步骤C中,如果当前图像用做参考帧,且当前条带存在下相邻条带,在完成当前条带数据的编码后,启动下相邻条带参考图像数据的传输,步骤D中,下一帧待编码图像条带高度调整值由以下公式得出:
n∈[0,N-1],m∈[2,∞]
其中TEm,n为第m帧图像第n条带的编码时间,TAm为第m帧图像中所有条带编码时间的平均值,W为图像的宽度,N为条带编码DSP的个数。
所述条带编码DSP由主控CPU进行调度,主控CPU与条带编码DSP采用PCI总线方式连接,进行数据交换和通讯。
所述条带编码DSP采用总分或分立方式采集待编码条带的数据,以保证同一时间内的编码条带属于同一帧图像。
所述条带编码DSP对每个宏块编码的同时,逐个宏块或逐个宏块行进行去块滤块处理,每个条带进行运动估计的范围在初始上下条带高度的一半范围以内。
采用了本发明的技术方案,可以控制两个或者多个DSP联合工作,减少甚至消除多个DSP编码时因数据传输和同步而导致的等待时间开销,能够动态调整每个DSP的负载,确保每个DSP都能发挥其强大的数据处理能力,实时进行H.264编码,提高了多DSP编码系统的性能。
附图说明
图1是本发明具体实施方式中视频编码的流程图。
具体实施方式
下面结合附图并通过具体实施方式来进一步说明本发明的技术方案。
多DSP编码系统包括主控CPU、图像采集DSP和若干个的条带编码DSP,以及PCI总线和图像采集总线等数据通讯通道。
主控CPU控制外设、输出编码数据及完成人机交互功能。图像采集DSP及条带编码DSP组成编码子系统,接受主控CPU的控制,完成原始音视频信号的采集、多DSP调度和编码输出等功能。主控CPU、图像采集DSP和条带编码DSP之间通过PCI总线连接,进行命令和数据的传送,以保证系统内部数据通 信的充足带宽和扩展性。PCI总线上还提供扩展插槽,能过PCI扩展板可以灵活地增减条带编码DSP的数量。
主控CPU和每个DSP都在内存中设消息区和数据共享区,通过PCI可以互相访问,其中消息区又分为命令区和应答区,CPU/DSP定时查询本地的命令区,根据命令的发出者和优先级做出响应,并返回应答到命令发送者的应答区。DSP的数据区有参考图像区和编码图像区,图像采集DSP承担一部分条带编码工作并兼有图像数据采集和分发的功能,条带编码DSP只用做条带编码,主控CPU数据共享区为码流组装区。
每个条带编码DSP上运行相同的编码程序,负责一个条带数据的编码,条带编码参数由第一个条带编码DSP(在本系统中是图像采集DSP)计算后发送给每个DSP,编码数据直接发送到主控CPU的数据共享区中进行组装。
DSP的PCI传输采用DMA方式,可以在编码的同时进行数据传输。
图1是本发明具体实施方式中视频编码的流程图。如图1所示,视频编码流程包括以下步骤:
步骤101、图像采集DSP通过视频输入设备采集一帧待编码的原始图像,按光栅扫描顺序划分若干个的包含图像左右垂直边界的条带并计算条带高度,通过PCI总线开始将各个条带的原始图像数据按照编号顺序发送给相应的条带编码DSP。
初始给每个条带编码DSP分配相同高度条带,之后根据此前编码时间动态调整条带的高度,以平衡每个DSP的负载达到最优的调度效果。因开始第二帧编码时只能得到第一个条带编码时间数据,所以第二帧的和带划分与第一帧相同。
本步骤中图像采集DSP通过PCI总线采用乒乓方式向条带编码DSP的编码图像区中写入原始的条带数据,首先写入1区,开始编码1区条带后,下一帧待编码条带放入2区,如此循环切换,采用乒乓存储方式可以减小等待输入图像的 时间。
步骤102、如果是第一帧图像,图像采集DSP计算每个条带编码DSP启动的迟滞时间,并延迟相应的时间逐个启动条带编码DSP。延迟一定时间是为了在当前条带编码结束前,所需要的上相邻条带参考图像数据传输完毕,无等待地直接开始下一条带数据的编码。只在启动时延迟一定时间,之后编码完毕立即进行下一条带编码,通过调整条带高度自动进行迟滞时间的调整。
迟滞时间由以下公式得出:
n∈[1,N]
其中n为条带序数,TD0,n为第n条带对应的迟滞时间,SH0,n为图像的第n条带的高度,W(以像素为单位)为图像宽度,B为传输参考图像数据的总线带宽。
步骤103、计算下一帧图像的条带高度的调整值。为达到最优的调度效果,需平衡每个DSP的运算负载,使不同的条带编码DSP编码同一帧图像的每个条带的时间基本相同,这里采用调整条带高度的方式调整DSP的运算负载。因在当前条带编码结束前,下一条带原始图像数据已经传送完毕,所以需要使用上一帧图像每个条带的编码时间数据来计算下一帧图像的条带的高度调整值。
图像的条带高度根据以下公式得出:
SHm,n=SHm-1,n+ΔSHm-1,n
ΔSHi,0=0,ΔSHi,l=16,l∈[1,Hmb%N],i∈[0,1]
m∈[0,∞]n∈[0,N-1]
其中SHm,n为第m帧图像第n条带的高度,ΔSHm,n为第m帧图像第n条带的高度调整值,W(以像素为单位)为图像的宽度,H(以像素为单位)为图像的高度,并可被16整除,N为条带编码DSP的个数,Hmb为宏块高度。
计算出SHm,n后,对其上下界进行限制,公式如下:
L≤ΔSHm,n≤U
其中L为下界值,U为上界值。
步骤104、启动下一条带原始图像数据的传输,数据区进行乒乓轮换。
步骤105,当前条带在编码到上相邻条带搜索范围以下后,因上相邻条带搜索范围内的参考图像数据已经生成,立即启动参考图像数据的传输,DSP则继续进行当前条带内数据的编码。
由于整帧图像划分为若干个条带分给不同的DSP进行处理,每个条带编码DSP对应一个条带,在进行运动搜索时需要其他条带的参考图像数据,每个DSP使用不同的内存,无法直接得到其他条带的参考图像数据,若限制条带边缘的宏块搜索范围,会造成码流增大,图像质量下降,甚至解码后会看出条带边界。对不同条带的参考图像数据进行同步后,就能解决这些问题。
步骤106、当前条带编码结束,如果当前图像用做参考帧,且当前条带存在下相邻条带,在完成当前条带数据的编码后,启动下相邻条带参考图像数据的传输,下一帧待编码图像条带高度调整值由以下公式得出:
n∈[0,N-1],m∈[2,∞]
其中TEm,n为第m帧图像第n条带的编码时间,TAm为第m帧图像中所有条带编码时间的平均值,W为图像的宽度,N为条带编码DSP的个数。
同时每个条带编码DSP将各自条带编码生成的比特流,开始写入主控CPU的共享内存区的码流组装区中。主控CPU将收到的所有条带级比特流按照顺序输出。
条带编码DSP采用总分或分立方式采集待编码条带的数据,以保证同一时间内的编码条带属于同一帧图像。
条带编码DSP对每个宏块编码的同时,逐个宏块或逐个宏块行进行去块滤块处理,每个条带进行运动估计的范围在初始上下条带高度的一半范围以内。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (9)
1.一种视频编码方法,其特征在于,包括以下步骤:
A、确定条带高度,按光栅扫描顺序将图像分割为不少于2个的包含所述图像左右垂直边界的条带,将所述条带的数据按照编号顺序发送给相应的条带编码DSP;
B、如果为第一帧图像,按由上到下的顺序延迟相应迟滞时间逐个启动条带编码DSP,所述条带编码DSP对输入的条带数据进行编码,生成条带级比特流,同时启动下一帧待编码图像对应条带数据的传输,如果存在上相邻条带,在编码到上相邻条带搜索范围以下时启动上相邻条带参考图像数据的传输;
C、所述条带编码完成,如果存在下相邻条带,启动下相邻条带参考图像数据的传输;
D、根据上一帧图像每个条带的编码时间数据调整下一帧待编码图像条带高度,并转至步骤A,直到所有条带完成编码;
E、对所有条带编码DSP的生成码流进行处理。
2.根据权利要求1所述的一种视频编码方法,其特征在于,步骤A中,第一帧图像和第二帧图像的条带高度根据条带编码DSP的个数平均分配,之后图像的条带高度根据以下公式得出:
SHm,n=SHm-1,n+ΔSHm-1,n
ΔSHi,0=0,ΔSHi,l=16,l∈[1,Hmb%N],i∈[0,1]
m∈[0,∞]n∈[0,N-1]
其中SHm,n为第m帧图像第n条带的高度,ΔSHm,n为第m帧图像第n条带的高度调整值,W为图像的宽度,H为图像的高度,并可被16整除,N为条带编码DSP的个数,Hmb为宏块高度。
3.根据权利要求2所述的一种视频编码方法,其特征在于,计算出SHm,n后,对其上下界进行限制,公式如下:
L≤ΔSHm,n≤U
其中L为下界值,U为上界值。
4.根据权利要求1所述的一种视频编码方法,其特征在于,所述迟滞时间由以下公式得出:
n∈[1,N]
其中n为条带序数,TD0,n为第n条带对应的迟滞时间,SH0,n为图像的第n条带的高度,W为图像宽度,B为传输参考图像数据的总线带宽。
5.根据权利要求1所述的一种视频编码方法,其特征在于,步骤B中,如果当前图像用做参考帧,且当前条带存在上相邻条带,在完成上相邻条带参考图像数据的编码后,启动上相邻条带参考图像数据的传输,所述参考图像数据的传输优先级高于原始图像数据的传输。
6.根据权利要求1所述的一种视频编码方法,其特征在于,步骤C中,如果当前图像用做参考帧,且当前条带存在下相邻条带,在完成当前条带数据的编码后,启动下相邻条带参考图像数据的传输,步骤D中,下一帧待编码图像条带高度调整值由以下公式得出:
n∈[0,N-1],m∈[2,∞]
其中TEm,n为第m帧图像第n条带的编码时间,TAm为第m帧图像中所有条带编码时间的平均值,W为图像的宽度,N为条带编码DSP的个数。
7.根据权利要求1所述的一种视频编码方法,其特征在于,所述条带编码DSP由主控CPU进行调度,主控CPU与条带编码DSP采用PCI总线方式连接,进行数据交换和通讯。
8.根据权利要求1所述的一种视频编码方法,其特征在于,所述条带编码DSP采用总分或分立方式采集待编码条带的数据,以保证同一时间内的编码条带属于同一帧图像。
9.根据权利要求1所述的一种视频编码方法,其特征在于,所述条带编码DSP对每个宏块编码的同时,逐个宏块或逐个宏块行进行去块滤块处理,每个条带进行运动估计的范围在初始上下条带高度的一半范围以内。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200810105991 CN101272497B (zh) | 2008-05-07 | 2008-05-07 | 一种视频编码方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200810105991 CN101272497B (zh) | 2008-05-07 | 2008-05-07 | 一种视频编码方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101272497A CN101272497A (zh) | 2008-09-24 |
CN101272497B true CN101272497B (zh) | 2011-06-08 |
Family
ID=40006143
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200810105991 Expired - Fee Related CN101272497B (zh) | 2008-05-07 | 2008-05-07 | 一种视频编码方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101272497B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102710940B (zh) * | 2012-06-04 | 2015-06-03 | 公安部第三研究所 | 基于dsp平台利用运动估计算法实现优化视频编码的方法 |
CN108012154B (zh) * | 2016-10-28 | 2020-07-03 | 北京金山云网络技术有限公司 | 一种视频编码方法及装置 |
CN110945872A (zh) * | 2018-08-01 | 2020-03-31 | 深圳市大疆创新科技有限公司 | 视频处理设备和方法 |
CN111316643A (zh) * | 2019-03-29 | 2020-06-19 | 深圳市大疆创新科技有限公司 | 视频编码方法、设备和可移动平台 |
CN111371964A (zh) * | 2020-03-16 | 2020-07-03 | 广东博智林机器人有限公司 | 一种信息传输方法及装置 |
CN111447339A (zh) * | 2020-03-26 | 2020-07-24 | 西安万像电子科技有限公司 | 图像传输方法和系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101126807A (zh) * | 2007-09-20 | 2008-02-20 | 西安电子科技大学 | 遥感图像二倍无损及近无损压缩编码方法 |
-
2008
- 2008-05-07 CN CN 200810105991 patent/CN101272497B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101126807A (zh) * | 2007-09-20 | 2008-02-20 | 西安电子科技大学 | 遥感图像二倍无损及近无损压缩编码方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101272497A (zh) | 2008-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101272497B (zh) | 一种视频编码方法 | |
CN1268130C (zh) | 固定带宽网络中多个压缩视频流的自适应带宽轨迹匹配 | |
CN102640492B (zh) | 对图像边界的编码单元进行编码和解码的方法和设备 | |
US8395634B2 (en) | Method and apparatus for processing information | |
CN1757240A (zh) | 视频编码 | |
CN107580230A (zh) | 视频解码方法和视频编码方法 | |
CN106170093B (zh) | 一种帧内预测性能提升编码方法 | |
CN101014129B (zh) | 一种视频数据压缩方法 | |
CN103152613A (zh) | 基于视频图像组分割的分布式转码任务调度系统及方法 | |
JP2002064827A (ja) | 統計多重システム、統計多重制御装置および統計多重方法 | |
CN102857746A (zh) | 环路滤波编解码方法及装置 | |
CN106993190A (zh) | 软硬件协同编码方法及系统 | |
CN101365138A (zh) | 一种jpeg2000图像压缩处理系统 | |
CN102017636B (zh) | 影像的解码 | |
CN101635849B (zh) | 一种环路滤波方法及环路滤波器 | |
JP2888288B2 (ja) | 画像符号化装置 | |
CN102196253B (zh) | 一种帧类型自适应选择的视频编码方法及装置 | |
CN109218722B (zh) | 一种视频编码方法、装置及设备 | |
US8111753B2 (en) | Video encoding method and video encoder for improving performance | |
CN102123275A (zh) | 一种视频分量数据信息获取及提取的方法 | |
JP2007505545A (ja) | スケーラブル信号処理方法及び装置 | |
JP6206280B2 (ja) | 動画像符号化装置及び動画像符号化器 | |
US7065139B2 (en) | Video encoding method and video encoder for improving performance | |
WO2023065890A1 (zh) | 多媒体数据处理方法、装置、计算机设备、计算机可读存储介质及计算机程序产品 | |
US20240137502A1 (en) | Systems and methods for encoding and decoding video with memory-efficient prediction mode selection |
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 | ||
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: 20110608 Termination date: 20200507 |