CN110381323B - 基于帧间预测协助帧运动矢量信息无损压缩系统及方法 - Google Patents

基于帧间预测协助帧运动矢量信息无损压缩系统及方法 Download PDF

Info

Publication number
CN110381323B
CN110381323B CN201810326862.1A CN201810326862A CN110381323B CN 110381323 B CN110381323 B CN 110381323B CN 201810326862 A CN201810326862 A CN 201810326862A CN 110381323 B CN110381323 B CN 110381323B
Authority
CN
China
Prior art keywords
motion vector
vector data
code stream
decoding
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.)
Active
Application number
CN201810326862.1A
Other languages
English (en)
Other versions
CN110381323A (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.)
Rockchip Electronics Co Ltd
Original Assignee
Fuzhou Rockchip Electronics 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 Fuzhou Rockchip Electronics Co Ltd filed Critical Fuzhou Rockchip Electronics Co Ltd
Priority to CN201810326862.1A priority Critical patent/CN110381323B/zh
Publication of CN110381323A publication Critical patent/CN110381323A/zh
Application granted granted Critical
Publication of CN110381323B publication Critical patent/CN110381323B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/174Methods 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 slice, e.g. a line of blocks or a group of 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/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明提供一种基于帧间预测协助帧运动矢量信息无损压缩系统及方法,所述方法包括:从帧间预测模块接收运动矢量数据作为当前图像编/解码的后续帧的协助帧数据;通过无损压缩编码算法对所述运动矢量数据进行压缩和编码形成压缩码流并将所述压缩码流存储至内存;在所述帧间预测模块的编解码帧处理接收到新的图像slice和/或图像tile时,从所述内存预取所述压缩码流,根据无损压缩解码算法对预取的所述压缩码流进行解码获取所述运动矢量数据,并在所述帧间预测模块需要所述运动矢量数据时将所述运动矢量数据传输至所述帧间预测模块。本发明可以减少总线带宽的同时也降低了总线的整体功耗,节省每个帧间预测模块的处理时间,提高硬件编解码器的编解码性能。

Description

基于帧间预测协助帧运动矢量信息无损压缩系统及方法
技术领域
本发明视频技术领域,特别是涉及视频编解码技术领域,具体为一种基于帧间预测协助帧运动矢量信息无损压缩系统及方法。
背景技术
视频编解码协议规定,帧间预测,读取参考帧数据之外,还需要同时访问协助帧的运动矢量信息(这里的协助帧运动矢量数据统一称为colmv数据),来解析当前解码的预测模块运动矢量。
现有硬件结构帧间预测读写colmv数据时,没有经过压缩处理,协助帧(colmv)数据是直接存储到DDR内,那么会额外消耗DDR的访问带宽。
由下表1可以看出,colmv占用内存带宽是挺大的,尤其是h264的占比更大。
表1
视频格式 Colmv单位尺寸 Colmv比特数 以420为例求占比(读写双路)
HEVC 16x16 128 128*2/(16*16*8*1.5)=8.33%
H264 4x4 64 64*2/(4*4*8*1.5)=66.67%
VP9 8x8 128 128*2/(8*8*8*1.5)=33.33%
面对市场现有的产品支持图像分辨率不断提高,芯片的数据吞吐率不断加大,也就加剧了DDR的访问带宽的不断提高。为了满足市场和消费者的体验,需要支持更多的功能,并且保持不错的电子产品电池续航能力,在芯片级SOC规模的不断扩大的现状下对减少DDR的访问效率,以及减少总线带宽和功耗的SOC设计至关重要。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种基于帧间预测协助帧运动矢量信息无损压缩系统及方法,用于解决现有技术中帧间预测读写协助帧运动矢量数据时,没有经过压缩处理产生的占用内存带宽大的问题。
为实现上述目的及其他相关目的,本发明提供一种基于帧间预测协助帧运动矢量信息无损压缩系统,所述基于帧间预测协助帧运动矢量信息无损压缩系统包括:编解码控制模块,运动矢量数据编码模块和运动矢量数据解码模块;所述编解码控制模块与帧间预测模块相连,从所述帧间预测模块接收运动矢量数据作为当前图像编/解码的后续帧的协助帧数据;所述运动矢量数据编码模块与所述编解码控制模块相连,从所述编解码控制模块接收所述运动矢量数据并通过无损压缩编码算法对所述运动矢量数据进行压缩和编码形成压缩码流并将所述压缩码流存储至内存;所述编解码控制模块在所述帧间预测模块的编解码帧处理接收到新的图像slice和/或图像tile时,从所述内存预取所述压缩码流,所述运动矢量数据解码模块根据无损压缩解码算法对预取的所述压缩码流进行解码获取所述运动矢量数据,并在所述帧间预测模块需要所述运动矢量数据时将所述运动矢量数据传输至所述帧间预测模块。
于本发明的一实施例中,所述编解码控制模块包括:取数地址确定单元,用于根据所述压缩码流的码流头信息确定码流长度,根据所述码流长度和新的图像slice和/或图像tile的当前坐标确定所述压缩码流在所述内存的取数地址;数据预取单元,根据所述取数地址向所述内存发起读数据请求,从所述内存获取对应的所述压缩码流。
于本发明的一实施例中,所述编解码控制模块还包括:运动矢量数据第一存储单元,分别与所述帧间预测模块和所述运动矢量数据编码模块相连,用于从所述帧间预测模块接收、存储所述运动矢量数据并供所述运动矢量数据编码模块读取所述运动矢量数据;第一码流存储单元,分别与所述运动矢量数据编码模块和所述内存相连,用于存储所述压缩码流并在所述压缩码流达到预设条件时将所述压缩码流存储至内存;第二码流存储单元,分别与所述运动矢量数据解码模块和所述内存相连,用于存储所述数据预取单元从所述内存获取的压缩码流并在所述压缩码流达到预设条件时供所述运动矢量数据解码模块读取所述压缩码流;运动矢量数据第二存储单元,分别与所述帧间预测模块和所述运动矢量数据解码模块相连,用于从所述运动矢量数据解码模块接收、存储所述运动矢量数据并供所述所述帧间预测模块读取所述运动矢量数据。
于本发明的一实施例中,所述编解码控制模块还包括:分类输入控制单元,连接于所述运动矢量数据第一存储单元和所述运动矢量数据编码模块之间,用于根据从所述运动矢量数据第一存储单元读取的所述运动矢量数据的数据格式对所述运动矢量数据进行分类,将分类后的所述运动矢量数据传输至所述运动矢量数据编码模块;分类输出控制单元,连接于所述运动矢量数据第二存储单元和所述运动矢量数据解码模块之间,用于对从所述运动矢量数据解码模块读取的所述运动矢量数据的数据格式对所述运动矢量数据进行分类还原,将分类还原后的所述运动矢量数据传输至所述运动矢量数据第二存储单元。
于本发明的一实施例中,所述运动矢量数据的数据格式包括H264,HEVC和VP9。
于本发明的一实施例中,所述分类输入控制单元按蛇形饶序或光栅顺序对分类后的所述运动矢量数据编码进行排序;所述分类输出控制单元按蛇形饶序或者光栅顺序对解码后的所述运动矢量数据先还原顺序,再分类还原输出。
于本发明的一实施例中,所述编解码控制模块还包括:刷新单元,用于在所述帧间预测模块的编解码帧处理接收到新的图像slice和/或图像tile时,刷新清除所述第二码流存储单元和所述运动矢量数据第二存储单元中的数据。
于本发明的一实施例中,所述无损压缩编码算法包括变长码无损压缩编码算法和差分分段无损压缩编码算法;所述无损压缩解码算法包括变长码无损压缩解码算法和差分分段无损压缩解码算法。
本发明的实施例还提供一种基于帧间预测协助帧运动矢量信息无损压缩方法,所述基于帧间预测协助帧运动矢量信息无损压缩方法包括:从帧间预测模块接收运动矢量数据作为当前图像编/解码的后续帧的协助帧数据;通过无损压缩编码算法对所述运动矢量数据进行压缩和编码形成压缩码流并将所述压缩码流存储至内存;在所述帧间预测模块的编解码帧处理接收到新的图像slice和/或图像tile时,从所述内存预取所述压缩码流,根据无损压缩解码算法对预取的所述压缩码流进行解码获取所述运动矢量数据,并在所述帧间预测模块需要所述运动矢量数据时将所述运动矢量数据传输至所述帧间预测模块。
于本发明的一实施例中,从所述内存预取所述压缩码流包括:根据所述压缩码流的码流头信息确定码流长度,根据所述码流长度和新的图像slice和/或图像tile的当前坐标确定所述压缩码流在所述内存的取数地址;根据所述取数地址向所述内存发起读数据请求,从所述内存获取对应的所述压缩码流。
于本发明的一实施例中,所述基于帧间预测协助帧运动矢量信息无损压缩方法还包括:在对所述运动矢量数据进行压缩和编码之前,根据所述运动矢量数据的数据格式对所述运动矢量数据进行分类;在对所述码流数据进行解码获取所述运动矢量数据之后,根据所述运动矢量数据的数据格式对所述运动矢量数据进行分类还原。
于本发明的一实施例中,按蛇形饶序或光栅顺序对分类后的所述运动矢量数据编码进行排序;按蛇形饶序或者光栅顺序对解码后的所述运动矢量数据先还原顺序,再分类还原输出。
于本发明的一实施例中,所述运动矢量数据的数据格式包括H264,HEVC和VP9。
于本发明的一实施例中,在所述帧间预测模块的编解码帧处理接收到新的图像slice和/或图像tile时,刷新清除上一次处理的所述运动矢量数据。
于本发明的一实施例中,所述无损压缩编码算法包括变长码无损压缩编码算法和差分分段无损压缩编码算法;所述无损压缩解码算法包括变长码无损压缩解码算法和差分分段无损压缩解码算法。
如上所述,本发明的基于帧间预测协助帧运动矢量信息无损压缩系统及方法,具有以下
有益效果:
1、本发明中视频编解码基于帧间预测,协助帧信息无损压缩,可以减少总线带宽的同时也降低了总线的整体功耗。
2、本发明中采用colmv头数据和码流提前向总线发起预取的实现方式,提前取到当前编解码帧间预测模块或者将来要处理的帧间预测模块的colmv数据,从而可以大大节省每个帧间预测模块的处理时间,提高硬件编解码器的编解码性能。
3、本发明中通过对colmv压缩的分类控制,有效提高colmv的数据压缩率。
附图说明
图1显示为本发明的基于帧间预测协助帧运动矢量信息无损压缩方法的流程示意图。
图2显示为本发明的基于帧间预测协助帧运动矢量信息无损压缩方法中从内存预取压缩码流的流程示意图。
图3显示为本发明的基于帧间预测协助帧运动矢量信息无损压缩系统的架构示意图。
图4显示为本发明的基于帧间预测协助帧运动矢量信息无损压缩系统的原理结构示意图。
图5显示为本发明的基于帧间预测协助帧运动矢量信息无损压缩系统的实例图。
图6显示为本发明的基于帧间预测协助帧运动矢量信息无损压缩系统中预取和刷新控制过程示意图。
图7显示为本发明的基于帧间预测协助帧运动矢量信息无损压缩系统中预取和刷新控制流程示意图。
图8显示为本发明的基于帧间预测协助帧运动矢量信息无损压缩系统中分类排序示意图。
图9显示为本发明的基于帧间预测协助帧运动矢量信息无损压缩系统中分类处理示例图。
图10显示为本发明的基于帧间预测协助帧运动矢量信息无损压缩系统中蛇形饶序示意图。
图11显示为本发明的基于帧间预测协助帧运动矢量信息无损压缩系统中蛇形饶序示意图。
图12显示为本发明的基于帧间预测协助帧运动矢量信息无损压缩系统中压缩率示意图。
元件标号说明
100 基于帧间预测协助帧运动矢量信息无损压缩系统
110 编解码控制模块
111 取数地址确定单元
112 数据预取单元
113 运动矢量数据第一存储单元
114 第一码流存储单元
115 第二码流存储单元
116 运动矢量数据第二存储单元
117 分类输入控制单元
118 分类输出控制单元
120 运动矢量数据编码模块
130 运动矢量数据解码模块
200 帧间预测模块
300 内存
S110~S130 步骤
S131~S132 步骤
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
请参阅图1至图12,需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
本实施例的目的在于提供一种基于帧间预测协助帧运动矢量信息无损压缩系统及方法,用于解决现有技术中帧间预测读写协助帧运动矢量数据时,没有经过压缩处理产生的占用内存带宽大的问题。
以下将详细阐述本发明的基于帧间预测协助帧运动矢量信息无损压缩系统及方法的原理及实施方式,使本领域技术人员不需要创造性劳动即可理解本发明的基于帧间预测协助帧运动矢量信息无损压缩系统及方法。
如图1所示,本发明的实施例提供一种基于帧间预测协助帧运动矢量信息无损压缩方法,所述基于帧间预测协助帧运动矢量信息无损压缩方法包括:
步骤S110,从帧间预测模块接收运动矢量数据作为当前图像编/解码的后续帧的协助帧数据;
步骤S120,通过无损压缩编码算法对所述运动矢量数据进行压缩和编码形成压缩码流并将所述压缩码流存储至内存;
步骤S130,在所述帧间预测模块的编解码帧处理接收到新的图像slice和/或图像tile时,从所述内存预取所述压缩码流,根据无损压缩解码算法对预取的所述压缩码流进行解码获取所述运动矢量数据,并在所述帧间预测模块需要所述运动矢量数据时将所述运动矢量数据传输至所述帧间预测模块。
以下对本实施例中的步骤S110至步骤S130进行详细说明。
步骤S110,从帧间预测模块接收运动矢量数据作为当前图像编/解码的后续帧的协助帧数据。
当前编解码帧帧间预测模块处理完之后会输入运动矢量数据(colmv数据)给后面的帧当做协助帧使用,这些运动矢量数据(colmv数据)需要存储到内存(DDR)中。
于本实施例中,所述运动矢量数据的数据格式包括H264,HEVC和VP9。融合HEVC/H264/VP9三种视频格式的硬件实现,可以极大节省硬件实现的面积开销,以及最大可能的降低功耗。
步骤S120,通过无损压缩编码算法对所述运动矢量数据进行压缩和编码形成压缩码流并将所述压缩码流存储至内存。
于本实施例中,所述无损压缩编码算法包括但不限于变长码无损压缩编码算法和差分分段无损压缩编码算法。
运动矢量数据(colmv数据)通过无损压缩编码算法实现压缩,从而实现对DDR写总线带宽的减少。
其中,于本实施例中,所述基于帧间预测协助帧运动矢量信息无损压缩方法还包括:在对所述运动矢量数据进行压缩和编码之前,根据所述运动矢量数据的数据格式对所述运动矢量数据进行分类。
colmv压缩率在一定程度上跟colmv本身的数据类型和数据分部形式有很大的关联。帧间预测模块,运动估计的数据存储结构以及运动估计输出顺序和colmv压缩本身不一定有很好的匹配关系,所以需要在中间加入colmv压缩的分类控制,目的是提高colmv的数据压缩率。
分类控制主要处理H264/HEVC/VP9三种colmv数据格式的数据结构,根据不同的数据归类处理,可以提高colmv的数据压缩率。其中,通过调整colmv数据编码顺序,来提高colmv的数据压缩率,分为蛇形饶序和光栅顺序两种方式进行选择。即于本实施例中,按蛇形饶序或光栅顺序对分类后的所述运动矢量数据编码进行排序。
步骤S130,在所述帧间预测模块的编解码帧处理接收到新的图像slice和/或图像tile时,从所述内存预取所述压缩码流,根据无损压缩解码算法对预取的所述压缩码流进行解码获取所述运动矢量数据,并在所述帧间预测模块需要所述运动矢量数据时将所述运动矢量数据传输至所述帧间预测模块。
于本实施例中,所述无损压缩解码算法包括但不限于变长码无损压缩解码算法和差分分段无损压缩解码算法。
对于当前编解码帧处理新的slice或者新的tile时,继续解析的块,参考帧或者协助帧的数据可能需要重新获取,那么这时候已向总线读入的colmv数据需要及时清理,并且开始重新预取新的协助帧colmv数据。
所以于本实施例中,在所述帧间预测模块的编解码帧处理接收到新的图像slice和/或图像tile时,刷新清除上一次处理的所述运动矢量数据。
于本实施例中,如图2所示,从所述内存预取所述压缩码流具体包括:
步骤S131,根据所述压缩码流的码流头信息确定码流长度,根据所述码流长度和新的图像slice和/或图像tile的当前坐标确定所述压缩码流在所述内存的取数地址;
步骤S132,根据所述取数地址向所述内存发起读数据请求,从所述内存获取对应的所述压缩码流。
对于帧间预测的帧间预测模块在处理每个解码块时才会使用到colmv数据,但是处理当前块需要使用时再向总线发起读colmv数据,再从DDR搬运数据回来,整个总线链路至少几十个时钟周期的延迟,严重影响了帧间预测的处理时间。
所以本实施例中,采用预取的方式,在一个slice/tile的开始阶段,提前计算好colmv的取数地址,从DDR对应位置发起读数据请求,并且提前做解码操作;这样每个colmv编解码控制的处理时间都提前于帧间预测模块的处理时间,保证了帧间预测开始使用colmv数据时不受总线延迟的影响,极大提升了编解码器的整体处理性能。
采用colmv头数据和码流提前向总线发起预取的实现方式,提前取到当前编解码帧间预测模块或者将来要处理的帧间预测模块的colmv数据,从而可以大大节省每个帧间预测模块的处理时间,提高了硬件编解码器的编解码性能,实现colmv数据的无损压缩编码算法自编自解的闭环设计,能够增加硬件耦合,简化码流构成,加速硬件自测试以及加快硬件的验证收敛时间。
其中,在对所述码流数据进行解码获取所述运动矢量数据之后,根据所述运动矢量数据的数据格式对所述运动矢量数据进行分类还原,按蛇形饶序或者光栅顺序对解码后的所述运动矢量数据先还原顺序,再分类还原输出。在对所述运动矢量数据进行压缩和编码之前,根据所述运动矢量数据的数据格式对所述运动矢量数据进行分类,同样在对所述码流数据进行解码获取所述运动矢量数据之后,根据所述运动矢量数据的数据格式对所述运动矢量数据进行分类还原,两者是逆过程,保证了帧间预测模块能够正常使用colmv数据。
为实现上述基于帧间预测协助帧运动矢量信息无损压缩方法,本实施例还对应提供一种基于帧间预测协助帧运动矢量信息无损压缩系统,如图3所示,所述基于帧间预测协助帧运动矢量信息无损压缩系统100包括:编解码控制模块110,运动矢量数据编码模块120和运动矢量数据解码模块130。
以下对本实施例中的所述基于帧间预测协助帧运动矢量信息无损压缩系统100进行详细说明。
于本实施例中,所述编解码控制模块110与帧间预测模块200相连,从所述帧间预测模块200接收运动矢量数据作为当前图像编/解码的后续帧的协助帧数据。
当前编解码帧帧间预测模块200处理完之后会输入运动矢量数据(colmv数据)给后面的帧当做协助帧使用,这些运动矢量数据(colmv数据)需要存储到内存300(DDR)中。
于本实施例中,所述运动矢量数据的数据格式包括H264,HEVC和VP9。融合HEVC/H264/VP9三种视频格式的硬件实现,可以极大节省硬件实现的面积开销,以及最大可能的降低功耗。
于本实施例中,所述运动矢量数据编码模块120与所述编解码控制模块110相连,从所述编解码控制模块110接收所述运动矢量数据并通过无损压缩编码算法对所述运动矢量数据进行压缩和编码形成压缩码流并将所述压缩码流存储至内存300。
于本实施例中,所述无损压缩编码算法包括但不限于变长码无损压缩编码算法和差分分段无损压缩编码算法。
运动矢量数据(colmv数据)通过无损压缩编码算法实现压缩,从而实现对DDR写总线带宽的减少。
于本实施例中,所述编解码控制模块110在所述帧间预测模块200的编解码帧处理接收到新的图像slice和/或图像tile时,从所述内存300预取所述压缩码流,所述运动矢量数据解码模块130根据无损压缩解码算法对预取的所述压缩码流进行解码获取所述运动矢量数据,并在所述帧间预测模块200需要所述运动矢量数据时将所述运动矢量数据传输至所述帧间预测模块200。
其中,于本实施例中,所述无损压缩编码算法包括变长码无损压缩编码算法和差分分段无损压缩编码算法;所述无损压缩解码算法包括变长码无损压缩解码算法和差分分段无损压缩解码算法。
于本实施例中,如图4和图5所示,所述编解码控制模块110包括:取数地址确定单元111和数据预取单元112。
所述取数地址确定单元111用于根据所述压缩码流的码流头信息确定码流长度,根据所述码流长度和新的图像slice和/或图像tile的当前坐标确定所述压缩码流在所述内存300的取数地址;所述数据预取单元112根据所述取数地址向所述内存300发起读数据请求,从所述内存300获取对应的所述压缩码流。
对于帧间预测的帧间预测模块200在处理每个解码块时才会使用到colmv数据,但是处理当前块需要使用时再向总线发起读colmv数据,再从DDR搬运数据回来,整个总线链路至少几十个时钟周期的延迟,严重影响了帧间预测的处理时间。
所以本实施例中,如图6和图7所示,采用预取的方式,在一个slice/tile的开始阶段,提前计算好colmv的取数地址,从DDR对应位置发起读数据请求,并且提前做解码操作;这样每个colmv编解码控制的处理时间都提前于帧间预测模块200的处理时间,保证了帧间预测开始使用colmv数据时不受总线延迟的影响,极大提升了编解码器的整体处理性能。
采用colmv头数据和码流提前向总线发起预取的实现方式,提前取到当前编解码帧间预测模块200或者将来要处理的帧间预测模块200的colmv数据,从而可以大大节省每个帧间预测模块200的处理时间,提高了硬件编解码器的编解码性能,实现colmv数据的无损压缩编码算法自编自解的闭环设计,能够增加硬件耦合,简化码流构成,加速硬件自测试以及加快硬件的验证收敛时间。
于本实施例中,所述编解码控制模块110还包括:运动矢量数据第一存储单元113,第一码流存储单元114,第二码流存储单元115以及运动矢量数据第二存储单元116。
所述运动矢量数据第一存储单元113分别与所述帧间预测模块200和所述运动矢量数据编码模块120相连,用于从所述帧间预测模块200接收、存储所述运动矢量数据并供所述运动矢量数据编码模块120读取所述运动矢量数据。
所述第一码流存储单元114分别与所述运动矢量数据编码模块120和所述内存300相连,用于存储所述压缩码流并在所述压缩码流达到预设条件时将所述压缩码流存储至内存300。
所述第二码流存储单元115分别与所述运动矢量数据解码模块130和所述内存300相连,用于存储所述数据预取单元112从所述内存300获取的压缩码流并在所述压缩码流达到预设条件时供所述运动矢量数据解码模块130读取所述压缩码流。
所述运动矢量数据第二存储单元116分别与所述帧间预测模块200和所述运动矢量数据解码模块130相连,用于从所述运动矢量数据解码模块130接收、存储所述运动矢量数据并供所述所述帧间预测模块200读取所述运动矢量数据。
对于当前编解码帧处理新的slice或者新的tile时,继续解析的块,参考帧或者协助帧的数据可能需要重新获取,那么这时候已向总线读入的colmv数据需要及时清理,并且开始重新预取新的协助帧colmv数据。所以于本实施例中,所述编解码控制模块110还包括:刷新单元,用于在所述帧间预测模块200的编解码帧处理接收到新的图像slice和/或图像tile时,刷新清除所述第二码流存储单元115和所述运动矢量数据第二存储单元116中的数据。
colmv压缩率在一定程度上跟colmv本身的数据类型和数据分部形式有很大的关联。帧间预测模块200,运动估计的数据存储结构以及运动估计输出顺序和colmv压缩模块本身不一定有很好的匹配关系,所以需要在中间加入colmv压缩的分类控制,目的是提高colmv的数据压缩率。
所以于本实施例中,所述编解码控制模块110还包括:分类输入控制单元117和分类输出控制单元118。
其中,所述分类输入控制单元117连接于所述运动矢量数据第一存储单元113和所述运动矢量数据编码模块120之间,用于根据从所述运动矢量数据第一存储单元113读取的所述运动矢量数据的数据格式对所述运动矢量数据进行分类,将分类后的所述运动矢量数据传输至所述运动矢量数据编码模块120。
如图8所示,分类控制主要处理H264/HEVC/VP9三种colmv数据格式的数据结构,根据不同的数据归类处理,可以提高colmv的数据压缩率。其中,通过调整colmv数据编码顺序,来提高colmv的数据压缩率,分为蛇形饶序和光栅顺序两种方式进行选择,具体的分类处理过程如图9所示。于本实施例中,按蛇形饶序(如图10所示)或光栅顺序(如图11所示)对分类后的所述运动矢量数据编码进行排序。
于本实施例中,所述运动矢量数据第一存储单元113接收帧间预测模块200的colmv数据,经过分类控制传给所述运动矢量数据编码模块120,例如,使用变长码无损压缩算法压缩后,将码流存储到临时的所述第一码流存储单元114,达到一定条件后再写入到DDR中。
所述分类输入控制单元117按蛇形饶序或光栅顺序对分类后的所述运动矢量数据编码进行排序。
所述分类输出控制单元118连接于所述运动矢量数据第二存储单元116和所述运动矢量数据解码模块130之间,用于对从所述运动矢量数据解码模块130读取的所述运动矢量数据的数据格式对所述运动矢量数据进行分类还原,将分类还原后的所述运动矢量数据传输至所述运动矢量数据第二存储单元116。具体地,所述分类输出控制单元118按蛇形饶序或者光栅顺序对解码后的所述运动矢量数据先还原顺序,再分类还原输出。
当前编解码帧帧间预测块需要使用到协助帧的运动估计信息,即colmv数据,数据预取单元112预先从DDR读出码流放在临时的所述第二码流存储单元115中,再发送给所述运动矢量数据解码模块130进行解码,解码后的数据经过所述分类输入控制单元117输出给帧间预测模块200使用。
运动矢量数据编码模块120的前级加入所述分类输入控制单元117,同样在运动矢量数据解码模块130的后级需要加入所述分类输出控制单元118,进行分类还原,所述分类输入控制单元117和所述分类输出控制单元118两者是逆过程,保证了帧间预测模块200能够正常使用colmv数据。
视频编解码器,帧间预测加入通过本实施例中基于帧间预测协助帧运动矢量信息无损压缩系统100中的协助帧数据压缩后得到的码流数据,能够控制在原来未压缩协助帧数据的30%以内,在很大程度上缓解了内存300读取带宽的压力。
如图12所示,显示为压缩前数据源和压缩后的码流占比的对比示意图。
综上所述,本发明中视频编解码基于帧间预测,协助帧信息无损压缩,可以减少总线带宽的同时也降低了总线的整体功耗;本发明中采用colmv头数据和码流提前向总线发起预取的实现方式,提前取到当前编解码帧间预测模块200或者将来要处理的帧间预测模块200的colmv数据,从而可以大大节省每个帧间预测模块200的处理时间,提高硬件编解码器的编解码性能;本发明中通过对colmv压缩的分类控制,有效提高colmv的数据压缩率。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。

Claims (13)

1.一种基于帧间预测协助帧运动矢量信息无损压缩系统,其特征在于,所述基于帧间预测协助帧运动矢量信息无损压缩系统包括:编解码控制模块,运动矢量数据编码模块和运动矢量数据解码模块;
所述编解码控制模块与帧间预测模块相连,从所述帧间预测模块接收运动矢量数据作为当前图像编/解码的后续帧的协助帧数据;
所述运动矢量数据编码模块与所述编解码控制模块相连,从所述编解码控制模块接收所述运动矢量数据并通过无损压缩编码算法对所述运动矢量数据进行压缩和编码形成压缩码流并将所述压缩码流存储至内存;
所述编解码控制模块在所述帧间预测模块的编解码帧处理接收到新的图像slice和/或图像tile时,从所述内存预取所述压缩码流,所述运动矢量数据解码模块根据无损压缩解码算法对预取的所述压缩码流进行解码获取所述运动矢量数据,并在所述帧间预测模块需要所述运动矢量数据时将所述运动矢量数据传输至所述帧间预测模块;
所述编解码控制模块包括:
取数地址确定单元,用于根据所述压缩码流的码流头信息确定码流长度,根据所述码流长度和新的图像slice和/或图像tile的当前坐标确定所述压缩码流在所述内存的取数地址;
数据预取单元,根据所述取数地址向所述内存发起读数据请求,从所述内存获取对应的所述压缩码流。
2.根据权利要求1所述的基于帧间预测协助帧运动矢量信息无损压缩系统,其特征在于,所述编解码控制模块还包括:
运动矢量数据第一存储单元,分别与所述帧间预测模块和所述运动矢量数据编码模块相连,用于从所述帧间预测模块接收、存储所述运动矢量数据并供所述运动矢量数据编码模块读取所述运动矢量数据;
第一码流存储单元,分别与所述运动矢量数据编码模块和所述内存相连,用于存储所述压缩码流并在所述压缩码流达到预设条件时将所述压缩码流存储至内存;
第二码流存储单元,分别与所述运动矢量数据解码模块和所述内存相连,用于存储所述数据预取单元从所述内存获取的压缩码流并在所述压缩码流达到预设条件时供所述运动矢量数据解码模块读取所述压缩码流;
运动矢量数据第二存储单元,分别与所述帧间预测模块和所述运动矢量数据解码模块相连,用于从所述运动矢量数据解码模块接收、存储所述运动矢量数据并供所述帧间预测模块读取所述运动矢量数据。
3.根据权利要求2所述的基于帧间预测协助帧运动矢量信息无损压缩系统,其特征在于,所述编解码控制模块还包括:
分类输入控制单元,连接于所述运动矢量数据第一存储单元和所述运动矢量数据编码模块之间,用于根据从所述运动矢量数据第一存储单元读取的所述运动矢量数据的数据格式对所述运动矢量数据进行分类,将分类后的所述运动矢量数据传输至所述运动矢量数据编码模块;
分类输出控制单元,连接于所述运动矢量数据第二存储单元和所述运动矢量数据解码模块之间,用于对从所述运动矢量数据解码模块读取的所述运动矢量数据的数据格式对所述运动矢量数据进行分类还原,将分类还原后的所述运动矢量数据传输至所述运动矢量数据第二存储单元。
4.根据权利要求3所述的基于帧间预测协助帧运动矢量信息无损压缩系统,其特征在于,所述运动矢量数据的数据格式包括H264,HEVC和VP9。
5.根据权利要求3所述的基于帧间预测协助帧运动矢量信息无损压缩系统,其特征在于,所述分类输入控制单元按蛇形饶序或光栅顺序对分类后的所述运动矢量数据编码进行排序;所述分类输出控制单元按蛇形饶序或者光栅顺序对解码后的所述运动矢量数据先还原顺序,再分类还原输出。
6.根据权利要求2所述的基于帧间预测协助帧运动矢量信息无损压缩系统,其特征在于,所述编解码控制模块还包括:
刷新单元,用于在所述帧间预测模块的编解码帧处理接收到新的图像slice和/或图像tile时,刷新清除所述第二码流存储单元和所述运动矢量数据第二存储单元中的数据。
7.根据权利要求1所述的基于帧间预测协助帧运动矢量信息无损压缩系统,其特征在于,所述无损压缩编码算法包括变长码无损压缩编码算法和差分分段无损压缩编码算法;所述无损压缩解码算法包括变长码无损压缩解码算法和差分分段无损压缩解码算法。
8.一种基于帧间预测协助帧运动矢量信息无损压缩方法,其特征在于,所述基于帧间预测协助帧运动矢量信息无损压缩方法包括:
从帧间预测模块接收运动矢量数据作为当前图像编/解码的后续帧的协助帧数据;
通过无损压缩编码算法对所述运动矢量数据进行压缩和编码形成压缩码流并将所述压缩码流存储至内存;
在所述帧间预测模块的编解码帧处理接收到新的图像slice和/或图像tile时,从所述内存预取所述压缩码流,根据无损压缩解码算法对预取的所述压缩码流进行解码获取所述运动矢量数据,并在所述帧间预测模块需要所述运动矢量数据时将所述运动矢量数据传输至所述帧间预测模块;从所述内存预取所述压缩码流包括:
根据所述压缩码流的码流头信息确定码流长度,根据所述码流长度和新的图像slice和/或图像tile的当前坐标确定所述压缩码流在所述内存的取数地址;
根据所述取数地址向所述内存发起读数据请求,从所述内存获取对应的所述压缩码流。
9.根据权利要求8所述的基于帧间预测协助帧运动矢量信息无损压缩方法,其特征在于,所述基于帧间预测协助帧运动矢量信息无损压缩方法还包括:
在对所述运动矢量数据进行压缩和编码之前, 根据所述运动矢量数据的数据格式对所述运动矢量数据进行分类;
在对所述压缩码流进行解码获取所述运动矢量数据之后,根据所述运动矢量数据的数据格式对所述运动矢量数据进行分类还原。
10.根据权利要求9所述的基于帧间预测协助帧运动矢量信息无损压缩方法,其特征在于,按蛇形饶序或光栅顺序对分类后的所述运动矢量数据编码进行排序;按蛇形饶序或者光栅顺序对解码后的所述运动矢量数据先还原顺序,再分类还原输出。
11.根据权利要求8所述的基于帧间预测协助帧运动矢量信息无损压缩方法,其特征在于,所述运动矢量数据的数据格式包括H264,HEVC和VP9。
12.根据权利要求8所述的基于帧间预测协助帧运动矢量信息无损压缩方法,其特征在于,在所述帧间预测模块的编解码帧处理接收到新的图像slice和/或图像tile时,刷新清除上一次处理的所述运动矢量数据。
13.根据权利要求8所述的基于帧间预测协助帧运动矢量信息无损压缩方法,其特征在于,所述无损压缩编码算法包括变长码无损压缩编码算法和差分分段无损压缩编码算法;所述无损压缩解码算法包括变长码无损压缩解码算法和差分分段无损压缩解码算法。
CN201810326862.1A 2018-04-12 2018-04-12 基于帧间预测协助帧运动矢量信息无损压缩系统及方法 Active CN110381323B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810326862.1A CN110381323B (zh) 2018-04-12 2018-04-12 基于帧间预测协助帧运动矢量信息无损压缩系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810326862.1A CN110381323B (zh) 2018-04-12 2018-04-12 基于帧间预测协助帧运动矢量信息无损压缩系统及方法

Publications (2)

Publication Number Publication Date
CN110381323A CN110381323A (zh) 2019-10-25
CN110381323B true CN110381323B (zh) 2021-10-26

Family

ID=68243252

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810326862.1A Active CN110381323B (zh) 2018-04-12 2018-04-12 基于帧间预测协助帧运动矢量信息无损压缩系统及方法

Country Status (1)

Country Link
CN (1) CN110381323B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113905230B (zh) * 2021-12-09 2022-03-29 深圳比特微电子科技有限公司 一种图像处理的调试码流导出和导入的方法与装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103024397A (zh) * 2013-01-07 2013-04-03 华为技术有限公司 确定时域运动矢量预测值的方法和装置
CN104320657A (zh) * 2014-10-31 2015-01-28 中国科学技术大学 Hevc无损视频编码的预测模式选择方法及相应的编码方法
CN105163126A (zh) * 2015-09-06 2015-12-16 福州瑞芯微电子股份有限公司 一种基于hevc协议的硬件解码方法和装置
CN105430414A (zh) * 2015-12-03 2016-03-23 福州瑞芯微电子股份有限公司 一种帧间预测解码方法和装置
CN106231214A (zh) * 2016-08-11 2016-12-14 复旦大学 基于可调宏块的高速cmos传感器图像近似无损压缩方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8743967B2 (en) * 2011-03-09 2014-06-03 Vixs Systems, Inc. Multi-format video decoder with vector processing instructions and methods for use therewith

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103024397A (zh) * 2013-01-07 2013-04-03 华为技术有限公司 确定时域运动矢量预测值的方法和装置
CN104320657A (zh) * 2014-10-31 2015-01-28 中国科学技术大学 Hevc无损视频编码的预测模式选择方法及相应的编码方法
CN105163126A (zh) * 2015-09-06 2015-12-16 福州瑞芯微电子股份有限公司 一种基于hevc协议的硬件解码方法和装置
CN105430414A (zh) * 2015-12-03 2016-03-23 福州瑞芯微电子股份有限公司 一种帧间预测解码方法和装置
CN106231214A (zh) * 2016-08-11 2016-12-14 复旦大学 基于可调宏块的高速cmos传感器图像近似无损压缩方法

Also Published As

Publication number Publication date
CN110381323A (zh) 2019-10-25

Similar Documents

Publication Publication Date Title
CN107113432B (zh) 用于并行视频编码的码率控制
CN102547283B (zh) 动态视频数据压缩的设备和方法
US10681363B2 (en) Lossless compression method and system applied to hardware video decoding
CN1937773B (zh) 外部存储装置、存储图像数据的方法及图像处理器
Gupte et al. Memory bandwidth and power reduction using lossy reference frame compression in video encoding
US9948934B2 (en) Estimating rate costs in video encoding operations using entropy encoding statistics
US20140086309A1 (en) Method and device for encoding and decoding an image
CN105472389B (zh) 一种用于超高清视频处理系统的片外缓存压缩方法
Bao et al. A lossless frame recompression scheme for reducing DRAM power in video encoding
US20060133512A1 (en) Video decoder and associated methods of operation
CN103814573A (zh) 使用系数压缩进行解码的装置和方法
CN101616318A (zh) 用于渲染或译码已压缩多媒体数据的方法及相关的装置
US11483585B2 (en) Electronic apparatus and controlling method thereof
CN100493193C (zh) 对实时数码视频影流进行缓存控制的方法和装置
CN110381323B (zh) 基于帧间预测协助帧运动矢量信息无损压缩系统及方法
CN103109535B (zh) 图像再生方法、图像再生装置、摄像系统及再生系统
US20120147023A1 (en) Caching apparatus and method for video motion estimation and compensation
CN111432213A (zh) 用于视频和图像压缩的自适应贴片数据大小编码
US20080056381A1 (en) Image compression and decompression with fast storage device accessing
CN101448160B (zh) 带重建数据反馈的像素重建方法及解码器
US7330595B2 (en) System and method for video data compression
JP3322233B2 (ja) 動画像伸長方法及びそれを実行するプログラムを記録した記録媒体
CN108668170B (zh) 图像信息处理方法及装置、存储介质
CN111355962A (zh) 适用于多参考帧的视频解码高速缓存方法、计算机装置及计算机可读存储介质
Yang et al. An effective dictionary-based display frame compressor

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
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 350003 building 18, No.89, software Avenue, Gulou District, Fuzhou City, Fujian Province

Patentee after: Ruixin Microelectronics Co., Ltd

Address before: 350003 building 18, No. 89, software Avenue, Gulou District, Fuzhou City, Fujian Province

Patentee before: FUZHOU ROCKCHIP ELECTRONICS Co.,Ltd.