CN117319676B - 一种视频压缩装置、芯片、系统及方法 - Google Patents
一种视频压缩装置、芯片、系统及方法 Download PDFInfo
- Publication number
- CN117319676B CN117319676B CN202311605328.1A CN202311605328A CN117319676B CN 117319676 B CN117319676 B CN 117319676B CN 202311605328 A CN202311605328 A CN 202311605328A CN 117319676 B CN117319676 B CN 117319676B
- Authority
- CN
- China
- Prior art keywords
- comparison
- data
- compression
- compared
- data block
- 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
Links
- 238000007906 compression Methods 0.000 title claims abstract description 377
- 230000006835 compression Effects 0.000 title claims abstract description 377
- 238000000034 method Methods 0.000 title claims abstract description 21
- 238000003491 array Methods 0.000 claims abstract description 4
- 230000005540 biological transmission Effects 0.000 claims description 37
- 230000004044 response Effects 0.000 claims description 27
- 238000006243 chemical reaction Methods 0.000 claims description 16
- 239000011159 matrix material Substances 0.000 claims description 11
- 230000008859 change Effects 0.000 claims description 10
- 238000010586 diagram Methods 0.000 description 14
- 230000009286 beneficial effect Effects 0.000 description 5
- 238000007726 management method Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000006872 improvement Effects 0.000 description 3
- 238000013144 data compression Methods 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
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
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
本发明涉及通信技术领域,尤其涉及一种视频压缩装置、芯片、系统及方法,该装置包括:RAM阵列;写入模块,用于从原始视频数据中接收当前帧数据并将其分别写入DDR和RAM阵列;读出模块,用于从RAM阵列的当前帧数据中和从DDR缓存的前一帧数据中读取对应于若干预设尺寸的若干待比较数据块和若干参考数据块;比较模块,用于计算第一比较模式、第二比较模式以及第三比较模式分别对应的最优比较尺寸并基于其计算对应压缩结果并分别输出;输出模块,接收压缩结果并基于预设比较规则进行比较,得到最优压缩结果并发送给DDR的输出缓冲区以输出。通过该视频压缩方案可以满足远程端对视频高清显示需求并减少对网络带宽的占用。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种视频压缩装置、芯片、系统及方法。
背景技术
视频数据流的传输过程,一般有两种传输方式:有失真压缩传输方式和无失真传输方式。其中,有失真传输方式极大降低了视频的数据量,比如JPEG格式的压缩,可以对数据量达到10倍甚至几十倍的压缩,但是压缩后的视频不清晰,无法满足远程端高清显示视频的需求;无失真传输方式可以满足远程端高清显示视频的需求,传输的数据一般为YUV格式的数据,导致传输的数据量巨大,对网络带宽占用过大,影响其它数据的传输,不利于提高网络传输的效率。
因而亟需对现有的视频压缩装置进行改进,既可以保证视频数据无失真传输,又不会对网络带宽占用过大而造成对网络带宽的压力。
发明内容
有鉴于此,有必要针对以上技术问题,提供一种视频压缩装置、芯片、系统及方法。
根据本发明的第一方面,提供了一种视频压缩装置,所述视频压缩装置包括:
RAM阵列;
写入模块,用于从原始视频数据中接收当前帧数据并将其分别写入DDR和所述RAM阵列;
读出模块,用于基于读取指示从所述RAM阵列的所述当前帧数据中读取对应于若干预设尺寸的若干待比较数据块,以及从DDR缓存的前一帧数据中读取对应于若干预设尺寸的若干参考数据块;
比较模块,用于根据配置参数向所述读出模块发送所述读取指示,并从所述读出模块接收所述若干待比较数据块和所述若干参考数据块,基于所述若干待比较数据块和/或所述若干参考数据块计算第一比较模式、第二比较模式以及第三比较模式分别对应的最优比较尺寸并基于其计算所述若干待比较数据块对应于所述第一比较模式、第二比较模式以及第三比较模式的第一压缩结果、第二压缩结果以及第三压缩结果并分别输出;
输出模块,用于接收所述第一压缩结果、所述第二压缩结果以及所述第三压缩结果并基于预设比较规则进行比较,得到其中的最优压缩结果并基于所述最优压缩结果对应的比较模式的传输格式发送给所述DDR的输出缓冲区以输出。
在一些实施例中,所述视频压缩装置还包括:
配置模块,用于为所述比较模块配置当前比较模式、预设比较尺寸以及比较增量。
在一些实施例中,所述比较模块进一步用于:
基于所述当前比较模式、所述预设比较尺寸以及比较增量向所述读出模块发送所述读取指示。
在一些实施例中,所述读出模块进一步用于:
基于所述读取指示从所述RAM阵列的所述当前帧数据中读取所述预设比较尺寸的第一待比较数据块,以及读取对所述第一待比较数据块的行数和列数分别增加/减少所述比较增量的第二待比较数据块和第三待比较数据块;
基于所述读取指示从所述DDR缓存的所述前一帧数据中读取所述预设比较尺寸的第一参考数据块,以及读取对所述第一参考数据块的行数和列数分别增加/减少所述比较增量的第二参考数据块和第三参考数据块。
在一些实施例中,所述比较模块进一步用于:
响应于所述比较模块的所述当前比较模式为第一比较模式,从所述读出模块读取所述第一待比较数据块,所述第二待比较数据块和所述第三待比较数据块,以及所述第一参考数据块、所述第二参考数据块和所述第三参考数据块;
按组分别计算所述第一待比较数据块和所述第一参考数据块、所述第二待比较数据块和所述第二参考数据块以及所述第三待比较数据块和所述第三参考数据块二者之间的差异值并进行比较,基于比较的结果得到其中差异值最小的一组的尺寸作为所述最优比较尺寸;
基于所述最优比较尺寸的一组中的若干参考数据块的数据计算所述若干待比较数据块对应于所述第一比较模式的第一压缩结果并输出。
在一些实施例中,所述比较模块进一步用于:
按组分别计算所述第一待比较数据块和所述第一参考数据块、所述第二待比较数据块和所述第二参考数据块以及所述第三待比较数据块和所述第三参考数据块二者之间对应位置的差值的绝对值之和的平均值并进行比较,基于比较的结果得到其中差异值最小的一组。
在一些实施例中,所述比较模块进一步用于:
响应于所述比较模块的当前比较模式为第二比较模式,从所述读出模块读取所述第一待比较数据块,所述第二待比较数据块以及所述第三待比较数据块;
分别计算所述第一待比较数据块、所述第二待比较数据块以及所述第三待比较数据块的数据块内各个位置的数据之间的差异值并进行比较,基于比较的结果得到其中差异值最小的数据块的尺寸作为所述最优比较尺寸;
基于所述最优比较尺寸的数据块的数据计算所述若干待比较数据块对应于所述第二比较模式的第二压缩结果并输出。
在一些实施例中,所述比较模块进一步用于:
分别计算所述第一待比较数据块、所述第二待比较数据块以及所述第三待比较数据块的数据块内各个位置的数据之间的差值的绝对值之和的平均值并进行比较,基于比较的结果得到其中差异值最小的数据块。
在一些实施例中,所述比较模块进一步用于:
响应于所述比较模块配置的当前比较模式为第三比较模式,将所述预设比较尺寸作为所述最优比较尺寸并从所述读出模块读取所述第一待比较数据块;
将所述第一待比较数据块中的色度分量数据与亮度分量数据按照预设比例进行截取,得到所述色度分量数据小于所述亮度分量数据的所述第一待比较数据块;
基于所述色度分量数据小于所述亮度分量数据的所述第一待比较数据块的数据计算对应于所述第三比较模式的第三压缩结果并输出。
在一些实施例中,所述输出模块包括:
压缩结果比较模块,用于接收所述比较模块输出的所述第一压缩结果、所述第二压缩结果以及所述第三压缩结果并基于预设比较规则进行比较,得到其中最优压缩结果及其对应的比较模式并输出;
最优压缩结果输出模块,用于接收所述最优压缩结果及其对应的比较模式,基于所述最优压缩结果对应的比较模式和对应的待比较矩阵的比较尺寸分别为所述最优压缩结果设置对应的标识符后发送给所述DDR的输出缓冲区以输出。
在一些实施例中,所述压缩结果比较模块进一步用于:
分别比较所述第一压缩结果与第一阈值之间的大小以及所述第二压缩结果与第二阈值之间的大小;
根据比较的结果从所述第一压缩结果、所述第二压缩结果以及所述第三压缩结果中确认最优压缩结果及其对应的比较模式并输出。
在一些实施例中,所述压缩结果比较模块进一步用于:
响应于所述第一压缩结果小于所述第一阈值且所述第二压缩结果小于所述第二阈值,确认所述第一压缩结果为所述最优压缩结果并将所述第一压缩结果及其对应的比较模式输出。
在一些实施例中,所述压缩结果比较模块进一步用于:
响应于所述第一压缩结果大于所述第一阈值且所述第二压缩结果大于所述第二阈值,确认所述第三压缩结果为所述最优压缩结果并将所述第三压缩结果及其对应的比较模式输出。
在一些实施例中,所述压缩结果比较模块进一步用于:
响应于所述第一压缩结果小于所述第一阈值且所述第二压缩结果大于所述第二阈值,确认所述第一压缩结果为所述最优压缩结果并将所述第一压缩结果及其对应的比较模式输出。
在一些实施例中,所述压缩结果比较模块进一步用于:
响应于所述第一压缩结果大于所述第一阈值且所述第二压缩结果小于所述第二阈值,确认所述第二压缩结果为所述最优压缩结果并将所述第二压缩结果及其对应的比较模式输出。
在一些实施例中,所述配置模块进一步用于:
根据所述原始视频数据中的场景变化快慢以及所述RAM阵列的深度配置所述比较模块的所述预设比较尺寸。
在一些实施例中,所述配置模块进一步用于:
响应于所述原始视频数据中的场景变化越快,配置所述比较模块的所述预设比较尺寸越小且不超过所述RAM阵列的深度。
根据本发明的第二方面,提供了一种视频压缩芯片,所视频压缩芯片包括:
上述任一项所述的视频压缩装置;以及
数据格式转换模块,用于将输入的RGB格式的原始视频数据转换为YUV格式的原始视频数据并将其逐帧发送到所述视频压缩装置中。
根据本发明的第三方面,还提供了一种视频压缩系统,该视频压缩系统包括:
上述视频压缩芯片;以及
DDR,所述DDR包括互为乒乓存储的第一缓冲区和第二缓冲区,以及所述输出缓冲区,所述第一缓冲区存储所述视频压缩芯片发送的所述当前帧数据,所述第二缓冲区存储所述视频压缩芯片发送的所述前一帧数据。
根据本发明的第四方面,还提供了一种视频压缩方法,该视频压缩方法的步骤,包括:
从原始视频数据中接收当前帧数据并将其分别写入DDR和RAM阵列中;
响应于接收到读取指示,基于读取指示从所述RAM阵列的所述当前帧数据中读取对应于若干预设尺寸的若干待比较数据块,以及从DDR缓存的前一帧数据中读取对应于若干预设尺寸的若干参考数据块;
基于所述若干待比较数据块和/或所述若干参考数据块计算第一比较模式、第二比较模式以及第三比较模式分别对应的最优比较尺寸并基于其计算所述若干待比较数据块对应于所述第一比较模式、第二比较模式以及第三比较模式的第一压缩结果、第二压缩结果以及第三压缩结果并分别输出;
基于预设比较规则对所述第一压缩结果、所述第二压缩结果以及所述第三压缩结果进行比较,得到其中的最优压缩结果并基于所述最优压缩结果对应的比较模式的传输格式发送给所述DDR的输出缓冲区以输出。
上述一种视频压缩装置,包括RAM阵列、写入模块、读出模块、比较模块以及输出模块,其中,写入模块用于从原始视频数据中接收当前帧数据并将其分别写入DDR和所述RAM阵列,读出模块用于基于读取指示从RAM阵列的所述当前帧数据中和从DDR缓存的前一帧数据中读取若干待比较数据块和若干参考数据块,比较模块用于接收读取指示反馈的若干待比较数据块和若干参考数据块,基于若干待比较数据块和/或若干参考数据块计算待比较矩阵对应于若干比较模式的若干压缩结果并输出,输出模块用于接收若干压缩结果并基于预设比较规则进行比较,得到其中的最优压缩结果并基于最优压缩结果对应的比较模式的传输格式发送给DDR的输出缓冲区以输出。通过该视频压缩装置可以满足远程端对视频高清显示的需求,并减少视频传输过程的数据量,减少对网络带宽的占用,降低对网络带宽的压力。
此外,本发明还提供了一种视频压缩芯片、系统及方法,同样能实现上述技术效果,这里不再赘述。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1示出的为现有技术的视频压缩传输的架构示意图;
图2示出的为本发明的一个实施例提供的视频压缩装置100的示意图;
图3示出的为本发明的一个实施例提供的视频压缩装置100的另一示意图;
图4示出的为本发明的一个实施例提供的视频压缩装置100的另一示意图;
图5示出的为本发明的一个实施例提供的视频压缩装置的另一示意图;
图6示出的为本发明的一个实施例提供的RAM阵列11的示意图;
图7示出的为本发明的一个实施例提供的一种视频压缩芯片200的示意图;
图8示出的为本发明的一个实施例提供的一种视频压缩系统300的示意图;
图9示出的为本发明的一个实施例提供的一种视频压缩方法400的示意图。
具体实施方式
为使本发明的目标、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
为便于理解本发明的方案,基于片上系统详细阐述现有技术视频压缩传输过程。请参考图1,图1示出的为现有技术的视频压缩传输的架构示意图,在基板管理控制芯片中集成视频压缩传输的相关模块,包括:VGA(Video Graphics Array,视频图形阵列)模块、数据格式转换模块、数据压缩子模块、视频传输控制模块以及EMAC(Ethernet Media AccessController,以太网媒体访问控制)网络模块。基于该架构,基板管理控制芯片可以输出压缩视频数据以及原始视频数据。
具体地,压缩视频数据的压缩传输过程包括:主机端的视频数据经由PCIe(Peripheral Component Interconnect express,高速串行计算机扩展总线标准)总线传输到基板管理控制芯片的VGA模块,通过VGA模块将视频数据转换为可以显示的视频图像,即转换为RGB格式的数据,经由VGA模块的DVI接口发送给数据格式转换模块,根据远程端所需的视频数据的格式可选地将RGB格式的数据转换/不转换为YUV格式的数据。其中,RGB格式的数据经过数据格式转换模块转换为YUV格式的数据,RGB格式的数据通过矩阵转换公式转换为YUV格式的数据,其中,该矩阵转换公式如下公式1至公式3所示:
Y=(0.257*R)+(0.504*G)+(0.098*B)+16;(公式1)
U=0.148*R-0.291*G+0.439*B+128;(公式2)
V=0.439*R-0.368*G-0.071*B+128;(公式3)
如果远程端所需的为RGB格式的数据,数据格式转换模块无需对送入的RGB格式的数据进行转换,而是直接输出到视频压缩子模块进行压缩;如果远程端所需的为YUV格式的数据,数据格式转换模块对送入的RGB格式的数据转换为YUV格式的数据并发送给视频压缩子模块进行压缩。压缩的RGB格式/YUV格式的视频数据先写入DDR,EMAC模块将其网络传输至远程端,远程端的软件对压缩的RGB格式/YUV格式的视频数据进行解压缩后显示。
具体地,原始视频数据的输出过程包括:VGA模块的DVI接口输出RGB格式的数据,经过数据格式转换模块转换为YUV格式的数据,之后写入片外DDR中,由EMAC模块将其网络传输至远程端,远程端的软件对视频数据直接显示而无需进行解压缩操作。
上述压缩视频数据的压缩传输过程可以极大降低视频数据的数据量,比如JPEG格式的压缩,可以达到10倍甚至几十倍的压缩,但是压缩后的视频不清晰,不满足远程端对视频高清显示的需求。
上述原始视频数据的传输过程可以在远程端对视频进行高清显示,但是YUV原始视频的数据量巨大,造成对网络带宽的巨大挑战,对网络带宽是一个巨大的挑战,比如1920*120分辨率、60帧/s的视频数据,占用的网络带宽为1920*1200*3*8*60=395MB/s,即3164Mbps,而传统的基板管理控制芯片的网卡的网络带宽理论上最大带宽为1000Mbps,因此无法传输1920*1200分辨率下的YUV原始数据。其实际可以传输的最大分辨率为800*600,实际占用的带宽为800*600*3*8*60=659Mbps,而这也已占用网络带宽的70%。
由上述现有技术视频压缩传输过程可知,亟需对现有的视频压缩装置进行改进,既可以保证视频数据无失真传输,又不会对网络带宽占用过大而造成对网络带宽的压力。
基于此,在本发明的一个实施例中,请参照图2所示,本发明提供了一种视频压缩装置,该视频压缩装置100,包括:
RAM(Random Access Memory,随机存取存储器)阵列11;
写入模块10,用于从原始视频数据中接收当前帧数据并将其分别写入DDR(DoubleData Rate,双倍速率同步动态随机存储器)101和RAM阵列11;
读出模块12,用于基于读取指示从RAM阵列11的当前帧数据中读取对应于若干预设尺寸的若干待比较数据块,以及从DDR101缓存的前一帧数据中读取对应于若干预设尺寸的若干参考数据块;
比较模块13,用于根据配置参数向读出模块12发送读取指示,从读出模块12接收若干待比较数据块和若干参考数据块,基于若干待比较数据块和/或所述若干参考数据块计算第一比较模式、第二比较模式以及第三比较模式分别对应的最优比较尺寸并基于其计算所述若干待比较数据块对应于所述第一比较模式、第二比较模式以及第三比较模式的第一压缩结果、第二压缩结果以及第三压缩结果并分别输出;
输出模块14,用于接收第一压缩结果、所述第二压缩结果以及所述第三压缩结果并基于预设比较规则进行比较,得到其中的最优压缩结果并基于最优压缩结果对应的比较模式的传输格式发送给DDR101的输出缓冲区以输出。
本公开的一种视频压缩装置,写入模块用于从原始视频数据中接收当前帧数据并将其分别写入DDR和所述RAM阵列,读出模块用于基于读取指示从RAM阵列的所述当前帧数据中和从DDR缓存的前一帧数据中读取若干待比较数据块和若干参考数据块,比较模块用于接收读取指示反馈的若干待比较数据块和若干参考数据块,基于若干待比较数据块和/或若干参考数据块计算待比较矩阵对应于若干比较模式的若干压缩结果并输出,输出模块用于接收若干压缩结果并基于预设比较规则进行比较,得到其中的最优压缩结果并基于最优压缩结果对应的比较模式的传输格式发送给DDR的输出缓冲区以输出。通过该视频压缩装置可以满足远程端对视频高清显示的需求,并减少视频传输过程的数据量,减少对网络带宽的占用,降低对网络带宽的压力。
根据本发明的若干实施例,请参照图3,图3示出的为本发明的一个实施例提供的视频压缩装置100的另一示意图,所述视频压缩装置100还包括:
配置模块15,用于为所述比较模块13配置当前比较模式、所述预设比较尺寸以及比较增量。
通过配置模块15可以实现基于用户需求对比较尺寸以及比较增量进行自定义配置。
根据本发明的若干实施例,所述比较模块13进一步用于:
基于所述当前比较模式、所述预设比较尺寸以及比较增量向所述读出模块12发送所述读取指示。
比较模块13可以基于用户自定义的比较尺寸以及比较增量向读出模块12发送对应的读取指示,以使读出模块12读取基于用户自定义的比较尺寸以及比较增量的若干待比较数据块。
根据本发明的若干实施例,所述读出模块12进一步用于:
基于所述读取指示从所述RAM阵列11的所述当前帧数据中读取所述预设比较尺寸的第一待比较数据块,以及读取对所述第一待比较数据块的行数和列数分别增加/减少所述比较增量的第二待比较数据块和第三待比较数据块;
基于所述读取指示从所述DDR101缓存的所述前一帧数据中读取预设比较尺寸的第一参考数据块,以及读取对所述第一参考数据块的行数和列数分别增加/减少所述比较增量的第二参考数据块和第三参考数据块。
读出模块12可以基于用户自定义的比较尺寸以及比较增量读出若干待比较数据块,从多个比较数据块中选择最优比较尺寸进行压缩,有利于降低视频数据压缩后的数据量。
根据本发明的若干实施例,所述比较模块13进一步用于:
响应于所述比较模块13的所述当前比较模式为第一比较模式,从所述读出模块12读取所述第一待比较数据块,所述第二待比较数据块和所述第三待比较数据块,以及所述第一参考数据块、所述第二参考数据块和所述第三参考数据块;
按组分别计算所述第一待比较数据块和所述第一参考数据块、所述第二待比较数据块和所述第二参考数据块以及所述第三待比较数据块和所述第三参考数据块二者之间的差异值并进行比较,基于比较的结果得到其中差异值最小的一组的尺寸作为所述最优比较尺寸;
基于所述最优比较尺寸的一组中的若干参考数据块的数据计算所述若干待比较数据块对应于所述第一比较模式的第一压缩结果并输出。
在第一比较模式下,比较模块13可以对若干待比较数据块和若干参考数据块进行比较,利用该模式下的最优比较尺寸对应的参考矩阵的数据进行计算,得到压缩结果。通过数据块之间进行比较得到压缩结果可以最大程度减少压缩后的数据量,有利于在保证传输的视频数据不失真的条件下最大程度减小对网络带宽的占用。
根据本发明的若干实施例,所述比较模块13进一步用于:
按组分别计算所述第一待比较数据块和所述第一参考数据块、所述第二待比较数据块和所述第二参考数据块以及所述第三待比较数据块和所述第三参考数据块二者之间对应位置的差值的绝对值之和的平均值并进行比较,基于比较的结果得到其中差异值最小的一组。
其中,通过计算若干待比较数据块和若干参考数据块之间对应位置的差值的绝对值之和的平均值来计算二者之间差异值的方式,减少了计算差异值的复杂度,有利于提高视频压缩装置100对视频数据的处理效率。
根据本发明的若干实施例,所述比较模块13进一步用于:
响应于所述比较模块13的当前比较模式为第二比较模式,从所述读出模块读取所述第一待比较数据块,所述第二待比较数据块以及所述第三待比较数据块;
分别计算所述第一待比较数据块、所述第二待比较数据块以及所述第三待比较数据块的数据块内各个位置的数据之间的差异值并进行比较,基于比较的结果得到其中差异值最小的数据块的尺寸作为所述最优比较尺寸;
基于所述最优比较尺寸的数据块的数据计算所述若干待比较数据块对应于所述第二比较模式的第二压缩结果并输出。
在第二比较模式下,比较模块13可以对若干待比较数据块内各个位置的数据行比较,利用该模式下的最优比较尺寸对应的数据块的数据进行计算,得到压缩结果。实现了同一帧数据可以在多种比较模式下并行处理,不局限于一种比较模式,一定程度上减少了压缩后的数据量,有利于在保证传输的视频数据不失真的条件下减小对网络带宽的占用。
根据本发明的若干实施例,所述比较模块13进一步用于:
分别计算所述第一待比较数据块、所述第二待比较数据块以及所述第三待比较数据块的数据块内各个位置的数据之间的差值的绝对值之和的平均值并进行比较,基于比较的结果得到其中差异值最小的数据块。
其中,通过计算若干待比较数据块内各个位置的数据之间的差值的绝对值之和的平均值来计算二者之间差异值的方式,减少了计算差异值的复杂度,有利于提高视频压缩装置100对视频数据的处理效率。
根据本发明的若干实施例,所述比较模块13进一步用于:
响应于所述比较模块13配置的当前比较模式为第三比较模式,将所述预设比较尺寸作为所述最优比较尺寸并从所述读出模块12读取所述第一待比较数据块;
将所述第一待比较数据块中的色度分量数据与亮度分量数据按照预设比例进行截取,得到所述色度分量数据小于所述亮度分量数据的所述第一待比较数据块;
基于所述色度分量数据小于所述亮度分量数据的所述第一待比较数据块的数据计算对应于所述第三比较模式的第三压缩结果并输出。
在第三比较模式下,比较模块13可以基于人眼对亮度变化的敏感性高于对颜色变化的敏感性来分别将亮度分量和色度分量的数据按照一定比例进行截取,实现了对第一比较模式、第二比较模式的补充,即使无法通过前两种比较模式进行比较压缩,也可以通过数据格式转换的方式进行比较压缩,以减少视频传输过程的数据量。
上述三种比较模式的配合,保证了输入视频压缩装置100的视频数据至少可以选择一种无失真压缩方式进行压缩,具有极强的灵活性,避免了传统方案中同一帧内必须使用同一种压缩方式的弊端,实现了在同一帧数据内可以多种比较模式并行处理,有利于提高视频压缩装置对视频数据的处理效率。并且输出无失真压缩数据,最大程度减少对网络带宽的占用,降低网络带宽的压力。
根据本发明的若干实施例,请参考图4,图4示出的为本发明的一个实施例提供的视频压缩装置100的另一示意图,所述输出模块14包括:
压缩结果比较模块141,用于接收所述比较模块13输出的所述第一压缩结果、所述第二压缩结果以及所述第三压缩结果并基于预设比较规则进行比较,得到其中最优压缩结果及其对应的比较模式并输出;
最优压缩结果输出模块142,用于接收所述最优压缩结果及其对应的比较模式,基于所述最优压缩结果对应的比较模式和对应的待比较矩阵的比较尺寸分别为所述最优压缩结果设置对应的标识符后发送给所述DDR101的输出缓冲区以输出。
压缩结果比较模块141可以实现对三种压缩模式对应的压缩结果按照预设比较规则进行比较,以得到最优压缩结果并输出,可以在保证输出视频数据不失真的条件下最大程度降低数据量。
通过最优压缩结果输出模块142对最优压缩结果进行标识后输出,可以保证远程端根据对应标识符进行无损解压。
根据本发明的若干实施例,请继续参考图4,所述压缩结果比较模块141进一步用于:
分别比较所述第一压缩结果与第一阈值之间的大小以及所述第二压缩结果与第二阈值之间的大小;
根据比较的结果从所述第一压缩结果、所述第二压缩结果以及所述第三压缩结果中确认最优压缩结果及其对应的比较模式并输出。
当第一比较模式对应的压缩结果和第二比较模式对应的压缩结果分别小于对应的阈值,优先选择数据块之间进行比较得到压缩结果,即第一压缩结果,以最大程度减少压缩后的数据量,最大程度减小对网络带宽的占用。
根据本发明的若干实施例,请继续参考图3,所述压缩结果比较模块141进一步用于:
响应于所述第一压缩结果小于所述第一阈值且所述第二压缩结果小于所述第二阈值,确认所述第一压缩结果为所述最优压缩结果并将所述第一压缩结果及其对应的比较模式输出。
当第一比较模式对应的压缩结果和第二比较模式对应的压缩结果分别大于对应的阈值,选择通过数据格式转换的方式进行比较得到的压缩结果,保证了若若干待比较数据块即使无法通过数据块进行比较压缩,也可以通过数据格式转换的方式在一定程度上减少视频传输的数据量。
根据本发明的若干实施例,所述压缩结果比较模块141进一步用于:
响应于所述第一压缩结果大于所述第一阈值且所述第二压缩结果大于所述第二阈值,确认所述第三压缩结果为所述最优压缩结果并将所述第三压缩结果及其对应的比较模式输出。
根据本发明的若干实施例,所述压缩结果比较模块141进一步用于:
响应于所述第一压缩结果小于所述第一阈值且所述第二压缩结果大于所述第二阈值,确认所述第一压缩结果为所述最优压缩结果并将所述第一压缩结果及其对应的比较模式输出。
根据本发明的若干实施例,所述压缩结果比较模块141进一步用于:
响应于所述第一压缩结果大于所述第一阈值且所述第二压缩结果小于所述第二阈值,确认所述第二压缩结果为所述最优压缩结果并将所述第二压缩结果及其对应的比较模式输出。
若第一比较模式对应的压缩结果和第二比较模式对应的压缩结果其中一个小于对应的阈值,另一个大于对应的阈值,则直接选择小于对应阈值的比较模式的压缩结果即可,保证了对于输入到视频压缩装置100的视频数据都有与之匹配的一个比较模式进行比较,可以得到其对应的最优比较模式及其对应的最优压缩结果。
根据本发明的若干实施例,所述配置模块15进一步用于:
根据所述原始视频数据中的场景变化快慢以及所述RAM阵列11的深度配置所述比较模块13的所述预设比较尺寸。
根据主机端实时显示的场景RAM阵列11的深度确定比较尺寸可以最大程度上结合当前场景的变化情况,以选择最适合当前场景的比较尺寸,并且可以根据场景变换在进行自定义配置,有利于提高视频压缩装置100的灵活性。
根据本发明的若干实施例,所述配置模块15进一步用于:
响应于所述原始视频数据中的场景变化越快,配置所述比较模块13的所述预设比较尺寸越小且不超过所述RAM阵列101的深度。
场景变换越快表示相同时间内所包含的数据量越多,因此应该设置更小的比较尺寸,以保证远程端可以无失真显示。
在本发明的一些实施例中,假设远程端需要的数据格式为YUV格式的视频数据,请参考图5,图5示出的为本发明的一个实施例提供的视频压缩装置100的另一示意图,写入模块10用于将数据格式转换模块102输出的原始视频数据的当前帧数据写入DDR101的存储空间第一缓存区或者第二缓存区,其中,第一缓存区或者第二缓存区互为乒乓存储模式,即对第一缓存区或者第二缓存区按照第一缓存区、第二缓存区、第一缓存区、第二缓存区的顺序往复写入,同理,读取顺序也类似。同时将当前帧数据写入RAM阵列11,请参考图6,图6示出的为本发明的一个实施例提供的RAM阵列11的示意图,RAM阵列11包括三组RAM,用于存储YUV数据的Y分量、U分量以及V分量的数据,即Y_RAM,U_RAM以及V_RAM,在本实施例中,设置每组RAM由8个组成,表示8个为组进行处理,即Y_RAM_0,Y_RAM_1…Y_RAM_7,U_RAM_0,U_RAM_1…U_RAM_7,V_RAM_0,V_RAM_1…V_RAM_7。可以理解的是,每组RAM由几个组成可以根据芯片的具体场景进行设置,比如设置每组RAM由16个组成。其中,请继续参考图6,将当前帧数据写入RAM阵列11的顺序为按照Y分量、U分量以及V分量进行按行分开存储。比如,
将第0/8/16…行的Y分量数据写进Y_RAM_0,将第1/9/17…行的Y分量数据写进Y_RAM_1……,将第7/15/23…行的Y分量数据写进Y_RAM_7;
将第0/8/16…行的U分量数据写进U_RAM_0,将第1/9/17…行的U分量数据写进U_RAM_1……,将第7/15/23…行的U分量数据写进U_RAM_7;
将第0/8/16…行的V分量数据写进V_RAM_0,将第1/9/17…行的V分量数据写进V_RAM_1……,将第7/15/23…行的V分量数据写进V_RAM_7。
在本发明的一些实施例中,基于上述对RAM阵列11的设置,配置模块15用于根据原始视频数据中的场景变化快慢以及RAM阵列11的深度配置比较模块13的所述预设比较尺寸,即比较尺寸的最大限度为8,同时进行比较时以8行的空间依次进行比较,限制了处理的范围,在画面大概率相似的区域内进行比较,避免了大量的无效比较,支持用户通过寄存器进行自定义配置。同时,配置模块15还用于对比较模块13配置比较尺寸对应的增量,可以根据实际比较需求进行设置,增量为一个较小值,用于实现在画面大概率相似的区域内进行比较,配置模块15还用于对比较模块13配置当前比较模式。
在本发明的一些实施例中,比较模块13可以进行的比较模式包括但不限于第一比较模式,即相邻的数据块(前后级矩阵块)之间的比较,需要引入对应位置的参考数据块进行比较,第二比较模式,即数据块内的比较,无需引入对应位置的参考数据块,第三比较模式,即将YUV数据基于色度分量和亮度分量进行转换,比如由YUV888格式转换为YUV633。配置模块15可以从第一比较模式、第二比较模式以及第三比较模式中任一个比较模式为比较模块13配置当前比较模式。
在本发明的一些实施例中,比较模块13基于配置模块15配置的配置参数向读出模块12发送读取指示,即按照当前比较模式(第一比较模式或第二比较模式或第三比较模式)、预设比较尺寸N以及比较增量进行读取操作。读出模块12具有根据分辨率信息来计算DDR101的对应地址和RAM阵列11的对应地址的功能,因此可以根据预设比较尺寸N以及比较增量,比如3*2或者3*3,以判断要读取的数据对应的DDR101的地址和RAM阵列11的地址。读出模块12根据读取指示从DDR101的第一缓存区或者第二缓存区的前一帧数据中读取若干参考数据块,以及从RAM阵列11的当前帧数据中读取若干待比较数据块并将其发送给比较模块13,其中,读出模块12按行读取,可选择地按照长条形,竖条形,方形和正常顺序读取。比较模块13基于若干待比较数据块和/或若干参考数据块计算待比较矩阵对应于若干比较模式的若干压缩结果并输出。同时,比较模块13按照比较尺寸的最大限度为8进行处理,即以8行为一组,依次进行比较,比如0-7行采用第一比较模式进行比较,8-15行采用第一比较模式进行比较,16-23行采用第一比较模式进行比较,实现了在同一帧数据中可以同时采用多种比较模式并行比较。
在一些实施例中,若比较模块13配置的当前比较模式为第一比较模式,比较模块13接收读出模块12的读取指示反馈的若干待比较数据块和若干参考数据块,由于数据格式为YUV格式的数据,可以选择以Y分量的数据为例进行说明。假设比较尺寸N为3,增量为1,则比较模块13依次接收3*3、4*3以及3*4尺寸的待比较数据块,对应于第一待比较数据块、第二若待比较数据块和第三待比较数据块,以及3*3、4*3以及3*4尺寸的参考数据块,对应于第一参考数据块、第二参考数据块和第三参考数据块,按组分别计算二者之间的差异值并进行比较,基于比较的结果得到其中差异值最小的一组。比如,Y分量的3*3尺寸的第一待比较数据块为:
{ 8 7 8
9 7 6
8 7 8 };
Y分量的3*3尺寸的第一参考数据块为:
{7 7 8
8 8 7
6 7 8
};
优选地,可以通过计算二者之间对应位置的差值的绝对值之和的平均值来计算二者之间的差异值,二者之间的差值的绝对值为:
{1 0 0
1 1 1
2 0 0
};
得到差值绝对值的总和的平均值为0.67,按照上述方法计算剩余第二待比较数据块和第二参考数据块之间的差异值、第三待比较数据块和第三参考数据块之间的差异值,得到差异值最小的一组,利用差异值最小的一组中的参考数据块的对应位置的数据代替对应的待比较数据块的对应位置的数据,得到若干待比较数据块对应于第一比较模式的第一压缩结果并输出。并且对于比较次数可以根据实际需求进行设置,假设在第一比较模式下,差异值最小的为3*3尺寸对应的一组,则表示第一比较模式下的当前8行中最优比较尺寸为3*3,用第一参考数据块的数据代替对应待比较数据块的对应位置的数据。
剩余U分量和V分量数据的比较过程与上述类似,不再赘述。
在一些实施例中,若比较模块13配置的当前比较模式为第二比较模式,比较模块13接收读出模块12的读取指示反馈的若干待比较数据块,由于数据格式为YUV格式的数据,可以选择以Y分量的数据为例进行说明。假设比较尺寸N为3,比较增量为1,则比较模块13依次接收3*3、4*3以及3*4尺寸的待比较数据块,对应于第一待比较数据块、第二待比较数据块和第三待比较数据块,分别计算数据块内各数据之间的差异值并进行比较,基于比较的结果得到其中差异值最小的一个数据块。比如,Y分量的3*3尺寸的第一待比较数据块为:
{8 7 8
9 7 6
8 7 8 };
优选地,可以通过计算各数据的差值的绝对值之和的平均值来计算差异值,上述计算得到的中位数为8,与中位数的差值分别是0,1,0,1,1,2,0,1,0,差值的总和是6,差值的平均值是6/8=0.75;
Y分量的4*3尺寸的第二待比较数据块为:
{8 7 8 8
9 7 6 7
8 7 8 7};
上述计算得到的中位数为7.5,与中位数的差值分别是0.5,0.5,0.5,0.5,1.5,0.5,1.5,0.5,0.5,0.5,0.5,0.5,差值的总和是8,差值的均值为8/12=0.67;
Y分量的3*4尺寸的第三待比较数据块为:
{8 6 8
8 7 7
6 7 10
7 8 8};
中位数是7.5,其与中位数的差值分别为0.5,1.5,0.5,0.5,0.5,0.5,1.5,0.5,2.5,0.5,0.5,0.5,差值的总和是11,差值的平均值是11/12=0.9。
对于比较次数可以根据实际需求进行设置,上述4*3尺寸对应的第二待比较数据块尺寸的差异值最小,表示第二比较模式下的当前8行中最优比较尺寸为4*3,优选地,可以利用第二待比较数据块内的中位数作为对应待比较数据块对应于第二比较模式的第二压缩结果并输出。
剩余U分量和V分量数据的比较过程与上述类似,不再赘述。
在一些实施例中,若比较模块13配置的当前比较模式为第三比较模式,由于人眼对亮度变化的敏感性高于对颜色变化的敏感性,因此可以对色度分量U/V和亮度分量Y进行转换,将第一待比较数据块、第二待比较数据块和第三待比较数据块中的色度分量数据与亮度分量数据按照预设比例进行截取,得到色度分量数据小于亮度分量数据的第一待比较数据块、第二待比较数据块和第三待比较数据块,根据色度分量数据小于亮度分量数据的第一待比较数据块、第二待比较数据块以及第三待比较数据块的数据进行计算,得到若干待比较数据块对应于第三比较模式的第三压缩结果并输出。比如将YUV888转换为YUV633格式,YUV888格式表示每个分量都有8bits,将其转换为YUV633,即Y分量有6bits,截取原始8bits中的高6bits,U分量有3bit,截取的是原始U分量的高3bits,V分量有3bits,截取的是V分量的高3bits。
在本发明的一些实施例中,压缩结果比较模块141的预设比较规则为第一比较模式、第二比较模式分别与对应的阈值进行比较。当第一比较结果、第二比较结果均大于各自对应的阈值时,选择第三压缩结果输出;当第一比较结果、第二比较结果均小于各自对应的阈值时,则按照第一比较模式优先原则选择第一比较模式对应的第一压缩结果输出;当第一比较结果大于对应的阈值而第二比较结果小于对应阈值,选择第二压缩结果输出;当第一比较结果小于对应的阈值而第二比较结果大于对应阈值,选择第一压缩结果输出。
在本发明的一些实施例中,最优压缩结果输出模块142接收最优压缩结果及其对应的比较模式,并按照其对应的比较模式的目标传输格式对最优压缩结果进行传输。第一比较模式、第二比较模式以及第三比较模式各自对应的目标传输格式不同,基于最优压缩结果对应的比较模式和对应的待比较矩阵的比较尺寸分别为最优压缩结果设置对应的标识符。
在一些实施例中,若最优压缩结果对应的比较模式为第一比较模式或者第二比较模式,则目标传输格式对应于{8’hFF,A,B,B}。其中,8’hFF为标志位,其中A为1bit,其值=1‘b0表示第二比较模式,其值=1‘b1表示第一比较模式;B为2bits,表示比较的数据块的行数,比如4*3尺寸的数据块的B=4;C为2bits,表示比较的数据块的列数,比如4*3尺寸的数据块的C=3。第一比较模式和第二比较模式条件下,YUV格式的数据三个分量Y分量、U分量以及V分量分开计算,用一组{8’hFF,A,B,B}进行表示。进一步,在第二比较模式下需要同步传输比较数据块的中位数,所以第二比较模式对应的目标传输格式对应于{8’hFF,A,B,B,DATA},其中,DATA为8bits,表示当前比较数据块中的中位数。
在一些实施例中,若最优压缩结果对应的比较模式为第三比较模式,则目标传输格式对应于{8’hEE,Y_DATA,U_DATA,V_DATA},比如将YUV888转换为YUV633,其中,EE为8bits,表示的是指示位,Y_DATA为6bits,U_DATA为3bits,V_DATA为3bits,YUV633表示的为YUV格式转换之后的数据,从YUV888转换为YUV633并且将上述无损压缩之后的YUV数据写进DDR101的输出缓冲区以输出。
在一些实施例中,在远程端可以根据接收的目标传输数据格式对数据进行无损恢复,以达到远程端对视频数据高清显示的需求,又不会对网络带宽产生较大压力。比如,若接收的目标传输数据格式中没有检测到FF或者EE,表示当前接收到数据为原始未压缩数据;若检测到FF,表示当前接收的压缩结果对应于第一比较模式或第二比较模式,继续检测A字段,若A字段=1,表示当前待恢复的压缩结果对应于第一比较模式,继续根据B字段和C字段得到比较矩阵的尺寸,从当前待恢复数据块对应的若干参考数据块的数据进行无损恢复;若检测到FF,继续检测A字段,若A字段=0,表示当前待恢复的压缩结果对应于第二比较模式,则利用DATA字段进行数据无损修复;若检测到EE,表示待恢复的压缩结果对应于第三比较模式,则将Y_DATA字段左移2b,即Y_DATA_restore=Y_DATA<<2,将U_DATA字段左移5,将V_DATA字段左移5,即U_DATA_restore=U_DATA<<2,V_DATA_restore=V_DATA<<2,即可恢复YUV888={Y_DATA_restore,U_DATA_restore,U_DATA_restore}。
在一些实施例中,请参照图7所示,本发明还提供了一种视频压缩芯片200,所述视频压缩芯片200包括:上述任一项所述的视频压缩装置100;以及数据格式转换模块102,用于将输入的RGB格式的原始视频数据转换为YUV格式的原始视频数据并将其逐帧发送到所述视频压缩装置100中。
在一些实施例中,请参照图8所示,本发明还提供了一种视频压缩系统300,所述视频压缩系统300包括:视频压缩芯片200;以及DDR101,所述DDR101包括互为乒乓存储的第一缓冲区和第二缓冲区,以及所述输出缓冲区,所述第一缓冲区存储所述视频压缩芯片200发送的所述当前帧数据,所述第二缓冲区存储所述视频压缩芯片200发送的所述前一帧数据。
其中,其中第一缓冲区和第二缓冲区属于乒乓存取操作,可以设置每5帧数据为1组并支持寄存器配置,默认值为5。可以设置每组的第0帧为原始参考帧数据,将第0帧数据不与任何帧数据比较,直接传输至输出缓存区,第1帧数据进行三种比较模式的比较压缩处理后,输出无损压缩处理后的数据到输出缓存区。在处理第1帧数据的同时,要将第1帧的原始数据同步写入第二缓存区。在将第2帧数据输入时,从第二缓存区中读回第1帧的原始数据,进行第2帧的比较压缩处理后,将第2帧的处理结果写入输出缓存区,同时将第2帧的原始YUV数据写入第一缓存区,依次实现乒乓操作。
在一些实施例中,请参照图9所示,本发明还提供了一种视频压缩方法400,该视频压缩方法400的步骤,包括:
步骤401:从原始视频数据中接收当前帧数据并将其分别写入DDR和RAM阵列中;
步骤402:响应于接收到读取指示,基于读取指示从所述RAM阵列的所述当前帧数据中读取对应于若干预设尺寸的若干待比较数据块,以及从DDR缓存的前一帧数据中读取对应于若干预设尺寸的若干参考数据块;
步骤403:基于所述若干待比较数据块和/或所述若干参考数据块计算第一比较模式、第二比较模式以及第三比较模式分别对应的最优比较尺寸并基于其计算所述若干待比较数据块对应于所述第一比较模式、第二比较模式以及第三比较模式的第一压缩结果、第二压缩结果以及第三压缩结果并分别输出;
步骤404:基于预设比较规则对所述第一压缩结果、所述第二压缩结果以及所述第三压缩结果进行比较,得到其中的最优压缩结果并基于所述最优压缩结果对应的比较模式的传输格式发送给所述DDR的输出缓冲区以输出。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (17)
1.一种视频压缩装置,其特征在于,所述视频压缩装置包括:
RAM阵列;
写入模块,用于从原始视频数据中接收当前帧数据并将其分别写入DDR和所述RAM阵列;
读出模块,用于基于读取指示从所述RAM阵列的所述当前帧数据中读取对应于若干预设尺寸的若干待比较数据块,以及从DDR缓存的前一帧数据中读取对应于若干预设尺寸的若干参考数据块;
比较模块,用于根据配置参数向所述读出模块发送所述读取指示,并从所述读出模块接收所述若干待比较数据块和所述若干参考数据块,基于所述若干待比较数据块和/或所述若干参考数据块计算第一比较模式、第二比较模式以及第三比较模式分别对应的最优比较尺寸并基于其计算所述若干待比较数据块对应于所述第一比较模式、第二比较模式以及第三比较模式的第一压缩结果、第二压缩结果以及第三压缩结果并分别输出;
输出模块,用于接收所述第一压缩结果、所述第二压缩结果以及所述第三压缩结果并基于预设比较规则进行比较,得到其中的最优压缩结果并基于所述最优压缩结果对应的比较模式的传输格式发送给所述DDR的输出缓冲区以输出;
其中,所述比较模块进一步用于:
响应于所述比较模块的当前比较模式为第一比较模式,从所述读出模块读取第一待比较数据块,第二待比较数据块和第三待比较数据块,以及第一参考数据块、第二参考数据块和第三参考数据块;
按组分别计算所述第一待比较数据块和所述第一参考数据块、所述第二待比较数据块和所述第二参考数据块以及所述第三待比较数据块和所述第三参考数据块二者之间的差异值并进行比较,基于比较的结果得到其中差异值最小的一组的尺寸作为所述最优比较尺寸;
基于所述最优比较尺寸的一组中的若干参考数据块的数据计算所述若干待比较数据块对应于所述第一比较模式的第一压缩结果并输出;
所述比较模块进一步用于:
响应于所述比较模块的当前比较模式为第二比较模式,从所述读出模块读取所述第一待比较数据块,所述第二待比较数据块以及所述第三待比较数据块;
分别计算所述第一待比较数据块、所述第二待比较数据块以及所述第三待比较数据块的数据块内各个位置的数据之间的差异值并进行比较,基于比较的结果得到其中差异值最小的数据块的尺寸作为所述最优比较尺寸;
基于所述最优比较尺寸的数据块的数据计算所述若干待比较数据块对应于所述第二比较模式的第二压缩结果并输出;
所述比较模块进一步用于:
响应于所述比较模块配置的当前比较模式为第三比较模式,将预设比较尺寸作为所述最优比较尺寸并从所述读出模块读取所述第一待比较数据块;
将所述第一待比较数据块中的色度分量数据与亮度分量数据按照预设比例进行截取,得到所述色度分量数据小于所述亮度分量数据的所述第一待比较数据块;
基于所述色度分量数据小于所述亮度分量数据的所述第一待比较数据块的数据计算对应于所述第三比较模式的第三压缩结果并输出。
2.根据权利要求1所述的视频压缩装置,其特征在于,所述视频压缩装置还包括:
配置模块,用于为所述比较模块配置所述当前比较模式、预设比较尺寸以及比较增量。
3.根据权利要求2所述的视频压缩装置,其特征在于,所述比较模块进一步用于:
基于所述当前比较模式、所述预设比较尺寸以及比较增量向所述读出模块发送所述读取指示。
4.根据权利要求3所述的视频压缩装置,其特征在于,所述读出模块进一步用于:
基于所述读取指示从所述RAM阵列的所述当前帧数据中读取所述预设比较尺寸的所述第一待比较数据块,以及读取对所述第一待比较数据块的行数和列数分别增加/减少所述比较增量的所述第二待比较数据块和所述第三待比较数据块;
基于所述读取指示从所述DDR缓存的所述前一帧数据中读取所述预设比较尺寸的所述第一参考数据块,以及读取对所述第一参考数据块的行数和列数分别增加/减少所述比较增量的所述第二参考数据块和所述第三参考数据块。
5.根据权利要求1所述的视频压缩装置,其特征在于,所述比较模块进一步用于:
按组分别计算所述第一待比较数据块和所述第一参考数据块、所述第二待比较数据块和所述第二参考数据块以及所述第三待比较数据块和所述第三参考数据块二者之间对应位置的差值的绝对值之和的平均值并进行比较,基于比较的结果得到其中差异值最小的一组。
6.根据权利要求1所述的视频压缩装置,其特征在于,所述比较模块进一步用于:
分别计算所述第一待比较数据块、所述第二待比较数据块以及所述第三待比较数据块的数据块内各个位置的数据之间的差值的绝对值之和的平均值并进行比较,基于比较的结果得到其中差异值最小的数据块。
7.根据权利要求1所述的视频压缩装置,其特征在于,所述输出模块包括:
压缩结果比较模块,用于接收所述比较模块输出的所述第一压缩结果、所述第二压缩结果以及所述第三压缩结果并基于预设比较规则进行比较,得到其中最优压缩结果及其对应的比较模式并输出;
最优压缩结果输出模块,用于接收所述最优压缩结果及其对应的比较模式,基于所述最优压缩结果对应的比较模式和对应的待比较矩阵的比较尺寸分别为所述最优压缩结果设置对应的标识符后发送给所述DDR的输出缓冲区以输出。
8.根据权利要求7所述的视频压缩装置,其特征在于,所述压缩结果比较模块进一步用于:
分别比较所述第一压缩结果与第一阈值之间的大小以及所述第二压缩结果与第二阈值之间的大小;
根据比较的结果从所述第一压缩结果、所述第二压缩结果以及所述第三压缩结果中确认最优压缩结果及其对应的比较模式并输出。
9.根据权利要求8所述的视频压缩装置,其特征在于,所述压缩结果比较模块进一步用于:
响应于所述第一压缩结果小于所述第一阈值且所述第二压缩结果小于所述第二阈值,确认所述第一压缩结果为所述最优压缩结果并将所述第一压缩结果及其对应的比较模式输出。
10.根据权利要求8所述的视频压缩装置,其特征在于,所述压缩结果比较模块进一步用于:
响应于所述第一压缩结果大于所述第一阈值且所述第二压缩结果大于所述第二阈值,确认所述第三压缩结果为所述最优压缩结果并将所述第三压缩结果及其对应的比较模式输出。
11.根据权利要求8所述的视频压缩装置,其特征在于,所述压缩结果比较模块进一步用于:
响应于所述第一压缩结果小于所述第一阈值且所述第二压缩结果大于所述第二阈值,确认所述第一压缩结果为所述最优压缩结果并将所述第一压缩结果及其对应的比较模式输出。
12.根据权利要求8所述的视频压缩装置,其特征在于,所述压缩结果比较模块进一步用于:
响应于所述第一压缩结果大于所述第一阈值且所述第二压缩结果小于所述第二阈值,确认所述第二压缩结果为所述最优压缩结果并将所述第二压缩结果及其对应的比较模式输出。
13.根据权利要求2所述的视频压缩装置,其特征在于,所述配置模块进一步用于:
根据所述原始视频数据中的场景变化快慢以及所述RAM阵列的深度配置所述比较模块的所述预设比较尺寸。
14.根据权利要求13所述的视频压缩装置,其特征在于,所述配置模块进一步用于:
响应于所述原始视频数据中的场景变化越快,配置所述比较模块的所述预设比较尺寸越小且不超过所述RAM阵列的深度。
15.一种视频压缩芯片,其特征在于,所述视频压缩芯片包括:
权利要求1-14任一项所述的视频压缩装置;以及
数据格式转换模块,用于将输入的RGB格式的原始视频数据转换为YUV格式的原始视频数据并将其逐帧发送到所述视频压缩装置中。
16.一种视频压缩系统,其特征在于,所述视频压缩系统包括:
如权利要求15所述的视频压缩芯片;以及
DDR,所述DDR包括互为乒乓存储的第一缓冲区和第二缓冲区,以及所述输出缓冲区,所述第一缓冲区存储所述视频压缩芯片发送的所述当前帧数据,所述第二缓冲区存储所述视频压缩芯片发送的所述前一帧数据。
17.一种视频压缩方法,其特征在于,所述视频压缩方法包括:
从原始视频数据中接收当前帧数据并将其分别写入DDR和RAM阵列中;
响应于接收到读取指示,基于读取指示从所述RAM阵列的所述当前帧数据中读取对应于若干预设尺寸的若干待比较数据块,以及从DDR缓存的前一帧数据中读取对应于若干预设尺寸的若干参考数据块;
基于所述若干待比较数据块和/或所述若干参考数据块计算第一比较模式、第二比较模式以及第三比较模式分别对应的最优比较尺寸并基于其计算所述若干待比较数据块对应于所述第一比较模式、第二比较模式以及第三比较模式的第一压缩结果、第二压缩结果以及第三压缩结果并分别输出,其中,
响应于当前比较模式为第一比较模式,读取第一待比较数据块,第二待比较数据块和第三待比较数据块,以及第一参考数据块、第二参考数据块和第三参考数据块;
按组分别计算所述第一待比较数据块和所述第一参考数据块、所述第二待比较数据块和所述第二参考数据块以及所述第三待比较数据块和所述第三参考数据块二者之间的差异值并进行比较,基于比较的结果得到其中差异值最小的一组的尺寸作为所述最优比较尺寸;
基于所述最优比较尺寸的一组中的若干参考数据块的数据计算所述若干待比较数据块对应于所述第一比较模式的第一压缩结果并输出;
响应于当前比较模式为第二比较模式,读取所述第一待比较数据块,所述第二待比较数据块以及所述第三待比较数据块;
分别计算所述第一待比较数据块、所述第二待比较数据块以及所述第三待比较数据块的数据块内各个位置的数据之间的差异值并进行比较,基于比较的结果得到其中差异值最小的数据块的尺寸作为所述最优比较尺寸;
基于所述最优比较尺寸的数据块的数据计算所述若干待比较数据块对应于所述第二比较模式的第二压缩结果并输出;
响应于当前比较模式为第三比较模式,将预设比较尺寸作为所述最优比较尺寸并读取所述第一待比较数据块;
将所述第一待比较数据块中的色度分量数据与亮度分量数据按照预设比例进行截取,得到所述色度分量数据小于所述亮度分量数据的所述第一待比较数据块;
基于所述色度分量数据小于所述亮度分量数据的所述第一待比较数据块的数据计算对应于所述第三比较模式的第三压缩结果并输出;
基于预设比较规则对所述第一压缩结果、所述第二压缩结果以及所述第三压缩结果进行比较,得到其中的最优压缩结果并基于所述最优压缩结果对应的比较模式的传输格式发送给所述DDR的输出缓冲区以输出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311605328.1A CN117319676B (zh) | 2023-11-28 | 2023-11-28 | 一种视频压缩装置、芯片、系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311605328.1A CN117319676B (zh) | 2023-11-28 | 2023-11-28 | 一种视频压缩装置、芯片、系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117319676A CN117319676A (zh) | 2023-12-29 |
CN117319676B true CN117319676B (zh) | 2024-02-23 |
Family
ID=89286926
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311605328.1A Active CN117319676B (zh) | 2023-11-28 | 2023-11-28 | 一种视频压缩装置、芯片、系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117319676B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102857727A (zh) * | 2012-10-11 | 2013-01-02 | 南京莱斯信息技术股份有限公司 | 一种视频数据的无损压缩与解压缩处理方法 |
CN106331712A (zh) * | 2015-06-30 | 2017-01-11 | 展讯通信(上海)有限公司 | 一种视频图像压缩方法 |
CN115460414A (zh) * | 2022-11-11 | 2022-12-09 | 苏州浪潮智能科技有限公司 | 一种基板管理控制芯片的视频压缩方法、系统及相关组件 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113744114A (zh) * | 2020-05-27 | 2021-12-03 | 京东方科技集团股份有限公司 | 基于8k视频系统的矢量图绘制方法及装置、存储介质 |
-
2023
- 2023-11-28 CN CN202311605328.1A patent/CN117319676B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102857727A (zh) * | 2012-10-11 | 2013-01-02 | 南京莱斯信息技术股份有限公司 | 一种视频数据的无损压缩与解压缩处理方法 |
CN106331712A (zh) * | 2015-06-30 | 2017-01-11 | 展讯通信(上海)有限公司 | 一种视频图像压缩方法 |
CN115460414A (zh) * | 2022-11-11 | 2022-12-09 | 苏州浪潮智能科技有限公司 | 一种基板管理控制芯片的视频压缩方法、系统及相关组件 |
Also Published As
Publication number | Publication date |
---|---|
CN117319676A (zh) | 2023-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10089710B2 (en) | Image capture accelerator | |
CN107967677B (zh) | 图像处理方法、装置、计算机可读存储介质和计算机设备 | |
US11445201B2 (en) | Video encoding and decoding method, device, and system, and storage medium | |
CN111726634B (zh) | 基于fpga的高分辨率视频图像压缩传输方法及系统 | |
US20160234514A1 (en) | Data processing apparatus for transmitting/receiving compressed pixel data groups of picture and indication information of pixel data grouping setting and related data processing method | |
JP2018014707A (ja) | 高ダイナミックレンジピクチャをコード化されたビットストリームに符号化/復号する方法および装置 | |
US11800248B2 (en) | Apparatus for encoding image, apparatus for decoding image and image sensor | |
CN111918065A (zh) | 一种信息压缩/解压缩方法及装置 | |
US20230325987A1 (en) | Tone mapping method and apparatus | |
US10573279B2 (en) | Systems and methods for combining video and graphic sources for display | |
CN115209145A (zh) | 一种视频压缩方法、系统、装置及可读存储介质 | |
KR100834439B1 (ko) | 그래픽 데이터 압축 및 복원 장치와 그 방법 | |
US10304213B2 (en) | Near lossless compression scheme and system for processing high dynamic range (HDR) images | |
US20190289300A1 (en) | Image compression system and image compression method using image compression system | |
CN117319676B (zh) | 一种视频压缩装置、芯片、系统及方法 | |
US10497093B2 (en) | Image processing apparatus for minimizing deterioration of image quality of a raw image | |
CN110619667B (zh) | 一种png图片的压缩方法及其系统 | |
CN108521535A (zh) | 一种基于图像混合处理的信息隐藏传输方法 | |
US8655064B2 (en) | Image compression circuit for compressing pieces of image data of four adjacent pixels, image compression method, semiconductor device, and smartphone | |
US20190079930A1 (en) | Systems and methods for rendering graphical assets | |
CN111105356A (zh) | 图像处理方法、装置及计算机可读存储介质 | |
CN114554126B (zh) | 一种基板管理控制芯片、视频数据传输方法及服务器 | |
US20150189288A1 (en) | Image processor | |
CN116993597A (zh) | 一种图像校正方法、装置及计算机可读存储介质 | |
KR102666666B1 (ko) | 이미지 부호화 장치 및 이미지 복호화 장치 |
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 |