CN109862361B - 一种webp图像编码方法、装置、计算机可读存储介质及电子设备 - Google Patents
一种webp图像编码方法、装置、计算机可读存储介质及电子设备 Download PDFInfo
- Publication number
- CN109862361B CN109862361B CN201910108721.7A CN201910108721A CN109862361B CN 109862361 B CN109862361 B CN 109862361B CN 201910108721 A CN201910108721 A CN 201910108721A CN 109862361 B CN109862361 B CN 109862361B
- Authority
- CN
- China
- Prior art keywords
- component
- coding
- fpga
- time length
- coded
- 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
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种webp图像编码方法、装置及电子设备,所述方法包括:获取Webp格式的图像数据,对所述图像数据进行分割,获得Y分量、U分量和V分量,通过FPGA分别对Y分量、U分量和V分量进行并行编码处理,获得编码Y分量、编码U分量和编码V分量,根据编码Y分量、编码U分量和编码V分量获得图像编码数据。通过FPGA采用并行的方式分别对Y分量、U分量和V分量进行处理,编码效果好,提高了对webp格式的图像的编码的实时性。解决了现有技术问题中存在的对webp格式的图像的编码速度慢,难以满足实时性及带宽需求的技术问题,达到了编码效果好,提高了对webp格式的图像的编码的实时性的技术效果。
Description
技术领域
本发明涉及图像编码技术领域,尤其涉及一种webp图像编码方法、装置及电子设备。
背景技术
Webp是由Google推出的新一代图像格式。与传统的jpeg图像格式相比,在质量相同的情况下,webp格式的图像比jpeg格式所占内存平均小30%~40%。因此在网络中使用webp格式的图像可以大大减少传输带宽。然而与对jpeg格式的图像的编码相比,对webp格式的图像的编码更为复杂,对webp格式的图像的计算复杂度是jpeg格式的图像的计算复杂度的10倍以上。然而,传统的CPU服务器对webp格式的图像的编码速度慢,难以满足实时性及带宽需求,因此对webp格式的图像的编码进行加速是亟待解决的问题。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的webp图像编码方法、装置及电子设备。
第一方面,本发明实施例提供了一种webp图像编码方法,包括:
获取Webp格式的图像数据;
对所述图像数据进行分割,获得Y分量、U分量和V分量;
通过FPGA分别对所述Y分量、所述U分量和所述V分量进行并行编码处理,获得编码Y分量、编码U分量和编码V分量;
根据所述编码Y分量、所述编码U分量和所述编码V分量获得图像编码数据。
可选的,所述通过FPGA分别对所述Y分量、所述U分量和所述V分量进行并行编码处理,获得编码Y分量、编码U分量和编码V分量,包括:
将所述FPGA对所述U分量进行编码的算力从A增强到B,将所述FPGA 对所述V分量进行编码的算力从C增强到D,其中,所述A为所述FPGA对所述U分量进行编码的预设算力,所述C为所述FPGA对所述V分量进行编码的预设算力,所述B介于所述A和F之间,所述D介于所述C和所述F,所述F 为所述FPGA对所述Y分量进行编码的预设算力,所述F大于所述A和所述C;
通过所述FPGA对Y分量以所述F进行编码获得编码Y分量,以及通过所述FPGA对所述U分量以所述B进行编码获得编码U分量,通过所述FPGA对所述V分量以所述D进行编码获得编码V分量。
可选的,所述将所述FPGA对所述U分量进行编码的算力从A增强到B,将所述FPGA对所述V分量进行编码的算力从C增强到D,包括:
获取第一时间长度、第二时间长度和第三时间长度,所述第一时间长度是所述FPGA对所述Y分量进行编码的预设时间长度,所述第二时间长度是所述 FPGA对所述U分量进行编码的预设时间长度,所述第三时间长度是所述FPGA 对所述V分量进行编码的预设时间长度;
设置介于所述第一时间长度和所述第二时间长度之间的第四时间长度,以及介于所述第一时间长度和所述第三时间长度之间的第五时间长度;
所述通过所述FPGA对Y分量以所述F进行编码获得编码Y分量,以及通过所述FPGA对所述U分量以所述B进行编码获得编码U分量,通过所述FPGA 对所述V分量以所述D进行编码获得编码V分量,包括:
以预设起始时刻为编码起始时间点,通过所述FPGA在所述第一时间长度内对Y分量进行编码,获得编码Y分量;
以所述预设起始时刻为编码起始时间点,通过所述FPGA在所述第四时间长度内对U分量进行编码,获得编码U分量;
以所述预设起始时刻为编码起始时间点,通过所述FPGA在所述第五时间长度内对V分量进行编码,获得编码V分量。
可选的,所述根据所述编码Y分量、所述编码U分量和所述编码V分量获得图像编码数据,包括:
将所述编码Y分量、所述编码U分量和所述编码V分量进行编码,获得 Webp码流;
根据所述Webp码流获得图像编码数据。
可选的,所述编码是图像压缩编码;
在所述根据所述编码Y分量、所述编码U分量和所述编码V分量获得图像编码数据之后,所述方法还包括:
根据所述图像编码数据获得压缩图像。
第二方面,本发明实施例提供了一种webp图像编码装置,包括:
获取模块,用于获取Webp格式的图像数据;
分割模块,用于对所述图像数据进行分割,获得Y分量、U分量和V分量;
处理模块,用于通过FPGA分别对所述Y分量、所述U分量和所述V分量进行并行编码处理,获得编码Y分量、编码U分量和编码V分量;
获得模块,用于根据所述编码Y分量、所述编码U分量和所述编码V分量获得图像编码数据。
可选的,所述处理模块还用于:
将所述FPGA对所述U分量进行编码的算力从A增强到B,将所述FPGA 对所述V分量进行编码的算力从C增强到D,其中,所述A为所述FPGA对所述U分量进行编码的预设算力,所述C为所述FPGA对所述V分量进行编码的预设算力,所述B介于所述A和F之间,所述D介于所述C和所述F,所述F 为所述FPGA对所述Y分量进行编码的预设算力,所述F大于所述A和所述C;
通过所述FPGA对Y分量以所述F进行编码获得编码Y分量,以及通过所述FPGA对所述U分量以所述B进行编码获得编码U分量,通过所述FPGA对所述V分量以所述D进行编码获得编码V分量。
可选的,所述处理模块还用于:
获取第一时间长度、第二时间长度和第三时间长度,所述第一时间长度是所述FPGA对所述Y分量进行编码的预设时间长度,所述第二时间长度是所述 FPGA对所述U分量进行编码的预设时间长度,所述第三时间长度是所述FPGA 对所述V分量进行编码的预设时间长度;
设置介于所述第一时间长度和所述第二时间长度之间的第四时间长度,以及介于所述第一时间长度和所述第三时间长度之间的第五时间长度;
以预设起始时刻为编码起始时间点,通过所述FPGA在所述第一时间长度内对Y分量进行编码,获得编码Y分量;
以所述预设起始时刻为编码起始时间点,通过所述FPGA在所述第四时间长度内对U分量进行编码,获得编码U分量;
以所述预设起始时刻为编码起始时间点,通过所述FPGA在所述第五时间长度内对V分量进行编码,获得编码V分量。
第三方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一项所述方法的步骤。
第四方面,本发明实施例提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任一项所述方法的步骤。
本申请实施例中提供的技术方案,至少具有如下技术效果或优点:
本发明实施例提供了一种webp图像编码方法、装置及电子设备,所述方法包括:获取Webp格式的图像数据,对所述图像数据进行分割,获得Y分量、 U分量和V分量,通过FPGA分别对Y分量、U分量和V分量进行并行编码处理,获得编码Y分量、编码U分量和编码V分量,根据编码Y分量、编码U 分量和编码V分量获得图像编码数据。通过FPGA采用并行的方式分别对Y分量、U分量和V分量进行编码处理,编码效果好,占内存小,提高了对webp 格式的图像的编码速度,减小了对webp格式的图像的编码时间,提高了对webp 格式的图像的编码的实时性。解决了现有技术问题中存在的对webp格式的图像的编码速度慢,难以满足实时性及带宽需求的技术问题,达到了编码效果好,占内存小,提高了对webp格式的图像的编码速度,减小了对webp格式的图像的编码时间,提高了对webp格式的图像的编码的实时性的技术效果。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的一种webp图像编码方法流程图;
图2示出了本发明实施例提供的一种webp图像编码装置200的方框结构示意图;
图3示出了本发明实施例提供的一种电子设备的方框结构示意图;
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明实施例提供了本发明实施例提供了一种webp图像编码方法、装置及电子设备,解决了现有技术问题中存在的对webp格式的图像的编码速度慢,难以满足实时性及带宽需求的技术问题。
作为一种可选的实施例,本发明提供的一种webp图像编码方法,包括如图1所述的步骤S100~步骤S400,以下结合图1对步骤S100~步骤S400进行阐述。
步骤S100:获取Webp格式的图像数据。
作为一种实施例,在获取Webp格式的图像数据之前,webp图像编码方法还包括:获取图像;判断所述图像的格式是否是Webp格式;若是,则将所述图像转换成Webp格式的图像;将Webp格式的图像进行编码,获得Webp 格式的图像数据。
在本发明实施例中,Webp格式的图像数据是YUV420数据格式的图像数据,即每4个Y分量对应同一组UV分量。因为Y分量指的是亮度信号,U分量和V分量指的是色度信号,人眼对亮度比色度更敏感,出于人眼对亮度比色度更为敏感的考虑,Webp格式的图像数据中Y分量、U分量和V分量的数据量的比例为4:1:1(Y:U:V)。
YUV是被欧洲电视系统所采用的一种颜色编码方法,是帕尔制(Phase AlterationLine,PAL)和塞康制(Sequentiel Couleur A Memoire,SECAM)模拟彩色电视制式采用的颜色空间。在现代彩色电视系统中,通常采用三管彩色摄影机或彩色CCD摄影机进行取像,然后把取得的彩色图像信号经分色、分别放大校正后得到RGB,再经过矩阵变换电路得到亮度信号Y和两个色差信号 B-Y(即U)、R-Y(即V),最后发送端将亮度和色差三个信号分别进行编码,用同一信道发送出去。这种色彩的表示方法就是所谓的YUV色彩空间表示。采用 YUV色彩空间的重要性是它的亮度信号Y和色度信号U、V是分离的。
步骤S200:对所述图像数据进行分割,获得Y分量、U分量和V分量。
在Google开源的webp格式的图像编码算法中,是采用CPU系统对YUV 三个通道的数据(分别是Y分量、U分量和V分量)进行串行处理,即对YUV 三个通道的数据(分别是Y分量、U分量和V分量)处理的动作串行执行。因此,对webp格式的图像数据进行编码的时间长度是对Y分量进行处理的时间、对U分量进行处理的时间以及对V分量进行处理的时间之和。其中,因为Y 分量指的是亮度信号,U分量和V分量指的是色度信号,人眼对亮度比色度更敏感,则UV通道对图像质量的影响较小,因此,出于平衡计算性能的考虑, U通道和V通道采用了算力较低的编码算法,同时由于U通道和V通道本身的数据量也比Y通道低,因此对webp格式的图像数据进行编码的大部分算力都集中在Y通道上,即对Y分量进行处理的时间占对webp格式的图像数据进行编码的时间长度的比例较大,对U分量进行处理的时间以及对V分量进行处理的时间占对webp格式的图像进行编码的时间长度的比例小。例如,Webp格式的图像数据中Y分量、U分量和V分量的数据量的比例为4:1:1(Y:U:V),则对 Webp格式的图像数据中Y分量、U分量和V分量进行处理所需要的算力的比例可以是4:1:1,或者5:1:1等,可以理解为,处理Y分量、U分量和V分量中的数据所需要的时间的比例是4:1:1,或者5:1:1等。例如,处理Y分量、U分量和V分量中的数据所需要的时间分别是4秒、1秒和1秒,则采用CPU系统对YUV三个通道的数据(分别是Y分量、U分量和V分量)进行串行处理所花费的时间是4+1+1=6秒。
因为,Y分量、U分量和V分量是相互独立的,对Y分量、U分量和V分量的计算是相互无数据依赖的。因此,将webp格式的图像数据进行分割,获得Y分量、U分量和V分量。然后通过下述步骤S300对Y分量、U分量和V 分量进行并行编码处理。
步骤S300:通过FPGA分别对所述Y分量、所述U分量和所述V分量进行并行编码处理,获得编码Y分量、编码U分量和编码V分量。
在本发明实施例中,现场可编程门阵列(Field-Programmable Gate Array,FPGA)是在帕尔制(Phase Alteration Line,PAL)、复杂可编程逻辑器件(ComplexProgrammable Logic Device,CPLD)等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(Application Specific Integrated Circuit,ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
通过FPGA分别对所述Y分量、所述U分量和所述V分量进行并行编码处理,获得编码Y分量、编码U分量和编码V分量,是通过所述FPGA对Y分量进行编码获得编码Y分量,以及增强所述FPGA对所述U分量和所述V分量进行编码的算力,分别获得编码U分量和编码V分量。具体的,增强所述FPGA 对所述U分量进行编码的算力获得编码U分量,增强所述FPGA对所述V分量进行编码的算力获得编码V分量。通过所述FPGA对Y分量进行编码获得编码 Y分量、增强所述FPGA对所述U分量进行编码的算力获得编码U分量和增强所述FPGA对所述V分量进行编码的算力获得编码V分量的动作是同时、并行执行的。
通过FPGA分别对所述Y分量、所述U分量和所述V分量进行并行编码处理,获得编码Y分量、编码U分量和编码V分量具体的实施方式是:将所述 FPGA对所述U分量进行编码的算力从A增强到B,将所述FPGA对所述V分量进行编码的算力从C增强到D,其中,所述A为所述FPGA对所述U分量进行编码的预设算力,所述C为所述FPGA对所述V分量进行编码的预设算力,所述B介于所述A和F之间,所述D介于所述C和所述F,所述F为所述FPGA 对所述Y分量进行编码的预设算力,所述F大于所述A和所述C;通过所述FPGA 对Y分量以所述F进行编码获得编码Y分量,以及通过所述FPGA对所述U分量以所述B进行编码获得编码U分量,通过所述FPGA对所述V分量以所述D 进行编码获得编码V分量。
在本发明实施例中,将所述FPGA对所述U分量进行编码的算力从A增强到B,将所述FPGA对所述V分量进行编码的算力从C增强到D的实施方式有多种,例如,通过延长FPGA对V分量和U分量进行编码的时间以增强FPGA 对V分量和U分量进行编码的算力,或者,通过用具有更强算力的算法替换 FPGA对V分量和U分量进行编码的算法,以增强FPGA对V分量和U分量进行编码的算力,例如,原来FPGA分别采用算力为A的算法和算力为C的算法对V分量和U分量进行编码,采用算力为C的算法和算力为D的算法分别替换算力为A的算法和算力为C的算法,则FPGA分别采用算力为C的算法和算力为D的算法对V分量和U分量进行编码,或者通过增加延长FPGA对V分量和U分量进行编码的尝试次数(循环次数)以增强FPGA对V分量和U分量进行编码的算力。作为一种实施方式,所述将所述FPGA对所述U分量进行编码的算力从A增强到B,将所述FPGA对所述V分量进行编码的算力从C增强到 D具体为:获取第一时间长度、第二时间长度和第三时间长度,所述第一时间长度是所述FPGA对所述Y分量进行编码的预设时间长度,所述第二时间长度是所述FPGA对所述U分量进行编码的预设时间长度,所述第三时间长度是所述FPGA对所述V分量进行编码的预设时间长度;设置介于所述第一时间长度和所述第二时间长度之间的第四时间长度,以及介于所述第一时间长度和所述第三时间长度之间的第五时间长度;所述通过所述FPGA对Y分量以所述F进行编码获得编码Y分量,以及通过所述FPGA对所述U分量以所述B进行编码获得编码U分量,通过所述FPGA对所述V分量以所述D进行编码获得编码V 分量,包括:以预设起始时刻为编码起始时间点,通过所述FPGA在所述第一时间长度内对Y分量进行编码,获得编码Y分量;以所述预设起始时刻为编码起始时间点,通过所述FPGA在所述第四时间长度内对U分量进行编码,获得编码U分量;以所述预设起始时刻为编码起始时间点,通过所述FPGA在所述第五时间长度内对V分量进行编码,获得编码V分量。如此,通过延长FPGA 对U分量和V分量进行编码的时间以达到增强FPGA对U分量和V分量进行编码的算力,通过延长FPGA对U分量和V分量进行编码的时间以增大FPGA对 U分量和V分量进行编码的精度,如此,FPGA对Y分量、U分量和V分量进行处理的精度高,提高了FPGA对图像数据处理的精度。在图像压缩操作中,通过延长FPGA对U分量和V分量进行压缩编码的时间以增大FPGA对U分量和V分量进行颜色编码的精度,提升了图像的压缩比。采用FPGA对Webp格式的图像数据中的YUV三个通道的数据(分别是Y分量、U分量和V分量)进行并行编码处理,即对YUV三个通道的数据(分别是Y分量、U分量和V分量) 的处理的动作并行执行。由于Webp格式的图像数据中Y分量、U分量和V分量的数据量的比例为4:1:1(Y:U:V),则对webp格式的图像数据进行编码的大部分算力都集中在Y通道上,即对Y分量进行处理的时间占对webp格式的图像数据进行编码的时间长度的比例较大,对U分量进行处理的时间以及对V分量进行处理的时间占对webp格式的图像数据进行编码的时间长度的比例小,对 U分量和V分量进行编码所需的时间比对V分量进行编码的时间短,因此实际 FPGA对webp格式的图像数据进行编码时,由于是并行执行编码操作的,因此, FPGA对webp格式的图像数据进行编码的中的时间长度是对Y分量进行处理所消耗的时间长度。例如,如此,Webp格式的图像数据中Y分量、U分量和V 分量的数据量的比例为4:1:1(Y:U:V),则对Webp格式的图像数据中Y分量、U 分量和V分量进行处理所需要的算力的比例可以是4:1:1,或者5:1:1等,可以理解为,处理Y分量、U分量和V分量中的数据所需要的时间的比例是4:1:1,或者5:1:1等。例如,处理Y分量、U分量和V分量中的数据所需要的时间分别是4秒、1秒和1秒,则采用FPGA对YUV三个通道的数据(分别是Y分量、 U分量和V分量)进行并行编码处理所花费的时间是处理Y分量所需要的时间,即采用FPGA对YUV三个通道的数据(分别是Y分量、U分量和V分量)进行并行编码处理所花费的时间是4秒。
因此,FPGA对webp格式的图像数据进行并行编码时,先完成对U分量和V分量进行编码,后完成对Y分量进行编码,则负责处理U分量和V分量这两个通道的处理工作的硬件模块大部分时间是空闲的,因此并没有完全发挥出 FPGA的算力。本发明实施例基于这样的特点,通过适当增强U分量和V分量这两个通道的算力(对U分量和V分量的计算时间不超过Y分量的计算时间),从而可以在不影响图片质量的情况下,对U分量和V分量这两个通道的数据压缩取得更好的压缩效果。
在本发明实施例中,可以通过增加对U分量和V分量这两个通道的数据压缩的执行次数,以增强U分量和V分量这两个通道的数据压缩的算力,进而获得更好的压缩效果。
如此,在不影响整体运行时间与图像质量的情况下,如此,FPGA对图像的压缩精度高,压缩效果好。
步骤S400:根据所述编码Y分量、所述编码U分量和所述编码V分量获得图像编码数据。
在本发明实施例中,根据所述编码Y分量、所述编码U分量和所述编码V 分量获得图像编码数据具体的实施方式可以是:将所述编码Y分量、所述编码 U分量和所述编码V分量进行编码,获得Webp码流,根据所述Webp码流获得图像编码数据。
作为一种实施例,所述编码是图像压缩编码,在所述根据所述编码Y分量、所述编码U分量和所述编码V分量获得图像编码数据之后,webp图像编码方法还包括:根据所述图像编码数据获得压缩图像。
综上所述,通过FPGA采用并行的方式分别对Y分量、U分量和V分量进行处理,编码效果好,占内存小,提高了对webp格式的图像的编码速度,减小了对webp格式的图像的编码时间,提高了对webp格式的图像的编码的实时性。
针对上述实施例提供一种webp图像编码方法,本申请实施例还对应提供一种webp图像编码装置200。请参考图2,该装置包括:
获取模块210,用于获取Webp格式的图像数据。
分割模块220,用于对所述图像数据进行分割,获得Y分量、U分量和V 分量。
处理模块230,用于通过FPGA分别对所述Y分量、所述U分量和所述V 分量进行并行编码处理,获得编码Y分量、编码U分量和编码V分量。
获得模块240,用于根据所述编码Y分量、所述编码U分量和所述编码V 分量获得图像编码数据。
获取模块210、分割模块220、处理模块230和获得模块240之间通过总线连接。
作为一种可选的实施例,所述处理模块230还用于:
将所述FPGA对所述U分量进行编码的算力从A增强到B,将所述FPGA 对所述V分量进行编码的算力从C增强到D,其中,所述A为所述FPGA对所述U分量进行编码的预设算力,所述C为所述FPGA对所述V分量进行编码的预设算力,所述B介于所述A和F之间,所述D介于所述C和所述F,所述F 为所述FPGA对所述Y分量进行编码的预设算力,所述F大于所述A和所述C;
通过所述FPGA对Y分量以所述F进行编码获得编码Y分量,以及通过所述FPGA对所述U分量以所述B进行编码获得编码U分量,通过所述FPGA对所述V分量以所述D进行编码获得编码V分量。作为一种可选的实施例,所述处理模块230还用于:
获取第一时间长度、第二时间长度和第三时间长度,所述第一时间长度是所述FPGA对所述Y分量进行编码的预设时间长度,所述第二时间长度是所述 FPGA对所述U分量进行编码的预设时间长度,所述第三时间长度是所述FPGA 对所述V分量进行编码的预设时间长度;
设置介于所述第一时间长度和所述第二时间长度之间的第四时间长度,以及介于所述第一时间长度和所述第三时间长度之间的第五时间长度;
以预设起始时刻为编码起始时间点,通过所述FPGA在所述第一时间长度内对Y分量进行编码,获得编码Y分量;
以所述预设起始时刻为编码起始时间点,通过所述FPGA在所述第四时间长度内对U分量进行编码,获得编码U分量;
以所述预设起始时刻为编码起始时间点,通过所述FPGA在所述第五时间长度内对V分量进行编码,获得编码V分量。
作为一种可选的实施例,所述获得模块240还用于:
将所述编码Y分量、所述编码U分量和所述编码V分量进行编码,获得 Webp码流;
根据所述Webp码流获得图像编码数据。
作为一种可选的实施例,所述编码是图像压缩编码,所述装置还包括:
获得图像模块,用于根据所述图像编码数据获得压缩图像。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本发明实施例还提供了一种电子设备,如图3所示,包括存储器504、处理器502及存储在存储器504上并可在处理器502上运行的计算机程序,所述处理器502执行所述程序时实现前文所述webp图像编码方法的任一方法的步骤。
其中,在图3中,总线架构(用总线500来代表),总线500可以包括任意数量的互联的总线和桥,总线500将包括由处理器502代表的一个或多个处理器和存储器504代表的存储器的各种电路链接在一起。总线500还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进进一步描述。总线接口505在总线500和接收器501和发送器503之间提供接口。接收器501和发送器503可以是同一个元件,即收发机,提供用于在传输介质上与各种其他装置通信的单元。处理器502负责管理总线500和通常的处理,而存储器504可以被用于存储处理器502在执行操作时所使用的数据。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前文所述webp图像编码方法的任一方法的步骤。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
Claims (6)
1.一种webp图像编码方法,其特征在于,包括:
获取Webp格式的图像数据;
对所述图像数据进行分割,获得Y分量、U分量和V分量;
通过FPGA分别对所述Y分量、所述U分量和所述V分量进行并行编码处理,获得编码Y分量、编码U分量和编码V分量,包括:将所述FPGA对所述U分量进行编码的算力从A增强到B,将所述FPGA对所述V分量进行编码的算力从C增强到D,其中,所述A为所述FPGA对所述U分量进行编码的预设算力,所述C为所述FPGA对所述V分量进行编码的预设算力,所述B介于所述A和F之间,所述D介于所述C和所述F,所述F为所述FPGA对所述Y分量进行编码的预设算力,所述F大于所述A和所述C;通过所述FPGA对Y分量以所述F进行编码获得编码Y分量,以及通过所述FPGA对所述U分量以所述B进行编码获得编码U分量,通过所述FPGA对所述V分量以所述D进行编码获得编码V分量;
根据所述编码Y分量、所述编码U分量和所述编码V分量获得图像编码数据;
所述将所述FPGA对所述U分量进行编码的算力从A增强到B,将所述FPGA对所述V分量进行编码的算力从C增强到D,包括:
获取第一时间长度、第二时间长度和第三时间长度,所述第一时间长度是所述FPGA对所述Y分量进行编码的预设时间长度,所述第二时间长度是所述FPGA对所述U分量进行编码的预设时间长度,所述第三时间长度是所述FPGA对所述V分量进行编码的预设时间长度;
设置介于所述第一时间长度和所述第二时间长度之间的第四时间长度,以及介于所述第一时间长度和所述第三时间长度之间的第五时间长度;
所述通过所述FPGA对Y分量以所述F进行编码获得编码Y分量,以及通过所述FPGA对所述U分量以所述B进行编码获得编码U分量,通过所述FPGA对所述V分量以所述D进行编码获得编码V分量,包括:
以预设起始时刻为编码起始时间点,通过所述FPGA在所述第一时间长度内对Y分量进行编码,获得编码Y分量;
以所述预设起始时刻为编码起始时间点,通过所述FPGA在所述第四时间长度内对U分量进行编码,获得编码U分量;
以所述预设起始时刻为编码起始时间点,通过所述FPGA在所述第五时间长度内对V分量进行编码,获得编码V分量。
2.如权利要求1所述的方法,其特征在于,所述根据所述编码Y分量、所述编码U分量和所述编码V分量获得图像编码数据,包括:
将所述编码Y分量、所述编码U分量和所述编码V分量进行编码,获得Webp码流;
根据所述Webp码流获得图像编码数据。
3.如权利要求1或2所述的方法,其特征在于,所述编码是图像压缩编码;
在所述根据所述编码Y分量、所述编码U分量和所述编码V分量获得图像编码数据之后,所述方法还包括:
根据所述图像编码数据获得压缩图像。
4.一种webp图像编码装置,其特征在于,包括:
获取模块,用于获取Webp格式的图像数据;
分割模块,用于对所述图像数据进行分割,获得Y分量、U分量和V分量;
处理模块,用于通过FPGA分别对所述Y分量、所述U分量和所述V分量进行并行编码处理,获得编码Y分量、编码U分量和编码V分量;
所述处理模块还用于:
将所述FPGA对所述U分量进行编码的算力从A增强到B,将所述FPGA对所述V分量进行编码的算力从C增强到D,其中,所述A为所述FPGA对所述U分量进行编码的预设算力,所述C为所述FPGA对所述V分量进行编码的预设算力,所述B介于所述A和F之间,所述D介于所述C和所述F,所述F为所述FPGA对所述Y分量进行编码的预设算力,所述F大于所述A和所述C;
通过所述FPGA对Y分量以所述F进行编码获得编码Y分量,以及通过所述FPGA对所述U分量以所述B进行编码获得编码U分量,通过所述FPGA对所述V分量以所述D进行编码获得编码V分量;
所述处理模块还用于:
获取第一时间长度、第二时间长度和第三时间长度,所述第一时间长度是所述FPGA对所述Y分量进行编码的预设时间长度,所述第二时间长度是所述FPGA对所述U分量进行编码的预设时间长度,所述第三时间长度是所述FPGA对所述V分量进行编码的预设时间长度;
设置介于所述第一时间长度和所述第二时间长度之间的第四时间长度,以及介于所述第一时间长度和所述第三时间长度之间的第五时间长度;
以预设起始时刻为编码起始时间点,通过所述FPGA在所述第一时间长度内对Y分量进行编码,获得编码Y分量;
以所述预设起始时刻为编码起始时间点,通过所述FPGA在所述第四时间长度内对U分量进行编码,获得编码U分量;
以所述预设起始时刻为编码起始时间点,通过所述FPGA在所述第五时间长度内对V分量进行编码,获得编码V分量;
获得模块,用于根据所述编码Y分量、所述编码U分量和所述编码V分量获得图像编码数据。
5.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-3任一项所述方法的步骤。
6.一种电子设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现权利要求1-3任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910108721.7A CN109862361B (zh) | 2019-02-03 | 2019-02-03 | 一种webp图像编码方法、装置、计算机可读存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910108721.7A CN109862361B (zh) | 2019-02-03 | 2019-02-03 | 一种webp图像编码方法、装置、计算机可读存储介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109862361A CN109862361A (zh) | 2019-06-07 |
CN109862361B true CN109862361B (zh) | 2020-09-29 |
Family
ID=66897631
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910108721.7A Active CN109862361B (zh) | 2019-02-03 | 2019-02-03 | 一种webp图像编码方法、装置、计算机可读存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109862361B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113329269A (zh) * | 2020-02-28 | 2021-08-31 | 杭州海康威视数字技术股份有限公司 | 视频编码、解码方法、装置、电子设备及存储介质 |
CN111818339A (zh) * | 2020-07-10 | 2020-10-23 | 逢亿科技(上海)有限公司 | 基于FPGA的Webp图像压缩算法的多核处理方法 |
CN112150567B (zh) * | 2020-11-06 | 2023-07-18 | 北京深维科技有限公司 | 一种heif图像编码方法及相关设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101711495B1 (ko) * | 2014-11-19 | 2017-03-02 | 인하대학교 산학협력단 | 에이치이브이씨에서 y, u 및 v 변환의 병렬 처리를 위한 재사용 디씨티 아키텍처 |
CN107820091B (zh) * | 2017-11-23 | 2020-05-26 | 苏州浪潮智能科技有限公司 | 一种图片处理方法、系统及一种图片处理设备 |
CN108769684B (zh) * | 2018-06-06 | 2022-03-22 | 郑州云海信息技术有限公司 | 基于WebP图像压缩算法的图像处理方法以及装置 |
-
2019
- 2019-02-03 CN CN201910108721.7A patent/CN109862361B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109862361A (zh) | 2019-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109862361B (zh) | 一种webp图像编码方法、装置、计算机可读存储介质及电子设备 | |
CN111681167A (zh) | 画质调整方法和装置、存储介质及电子设备 | |
CN111491167B (zh) | 图像编码方法、转码方法、装置、设备以及存储介质 | |
CN109587491A (zh) | 一种帧内预测方法、装置及存储介质 | |
CN111510739A (zh) | 一种视频传输方法及装置 | |
CN110766637A (zh) | 一种视频处理方法、处理装置、电子设备及存储介质 | |
CN110717864B (zh) | 一种图像增强方法、装置、终端设备及计算机可读介质 | |
CN115314617A (zh) | 图像处理系统及方法、计算机可读介质和电子设备 | |
CN114040246A (zh) | 图形处理器的图像格式转换方法、装置、设备及存储介质 | |
JP4241774B2 (ja) | 画像処理装置、画像処理方法及びプログラム | |
CN108174084A (zh) | 全景视频处理方法及终端设备 | |
EP3180910A1 (en) | System and method for optimized chroma subsampling | |
CN113613024B (zh) | 视频预处理方法及设备 | |
CN112261417A (zh) | 视频推送方法及系统、设备及可读存储介质 | |
JP3924420B2 (ja) | 画像圧縮装置及びその方法 | |
CN110648297A (zh) | 图像去雾方法、系统、电子设备和存储介质 | |
CN112150567B (zh) | 一种heif图像编码方法及相关设备 | |
US8750648B2 (en) | Image processing apparatus and method of processing image | |
CN114584781A (zh) | 视频压缩方法及装置、计算机可读存储介质 | |
CN114390307A (zh) | 图像画质增强方法、装置、终端及可读存储介质 | |
US20210112283A1 (en) | Encoding apparatus, image interpolating apparatus and encoding program | |
CN116977191A (zh) | 画质提升模型的训练方法和视频会议系统画质的提升方法 | |
CN113365016A (zh) | 一种地图影像数据实时获取系统及方法 | |
US20210150265A1 (en) | Techniques for determining importance of encoded image components for artificial intelligence tasks | |
CN111586309A (zh) | 一种水下自动补光的图像采集方法及装置 |
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 |