[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN111818339A - 基于FPGA的Webp图像压缩算法的多核处理方法 - Google Patents

基于FPGA的Webp图像压缩算法的多核处理方法 Download PDF

Info

Publication number
CN111818339A
CN111818339A CN202010664400.8A CN202010664400A CN111818339A CN 111818339 A CN111818339 A CN 111818339A CN 202010664400 A CN202010664400 A CN 202010664400A CN 111818339 A CN111818339 A CN 111818339A
Authority
CN
China
Prior art keywords
fpga
webp
processing method
compression algorithm
image compression
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.)
Pending
Application number
CN202010664400.8A
Other languages
English (en)
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.)
Fengyi Technology Shanghai Co ltd
Original Assignee
Fengyi Technology Shanghai 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 Fengyi Technology Shanghai Co ltd filed Critical Fengyi Technology Shanghai Co ltd
Priority to CN202010664400.8A priority Critical patent/CN111818339A/zh
Publication of CN111818339A publication Critical patent/CN111818339A/zh
Pending legal-status Critical Current

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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0842Multiuser, multiprocessor or multiprocessing cache systems for multiprocessing or multitasking
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/67Circuits for processing colour signals for matrixing

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Discrete Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明涉及到图像处理技术领域,尤其涉及到一种基于FPGA的Webp图像压缩算法的多核处理方法,包括DDR片上缓存将图像送至颜色空间转换环节,进行按照RGB三通道转换成对应分析的YUV宏块,然后对YUV宏块进行分析、预测量化得到参数矩阵,最终将参数矩阵写回DDR片上缓存。本发明是将WebP在FPGA上实现,采用CPU式的多核心设计思想,让多核共同工作,速率提高到极限,同时实现了图片之间的流水处理。

Description

基于FPGA的Webp图像压缩算法的多核处理方法
技术领域
本发明涉及到图像处理技术领域,尤其涉及到一种基于FPGA的Webp图像压缩算法的多核处理方法。
背景技术
在众多压缩算法中,WebP压缩算法脱颖而出,那么什么是WebP格式图片?它是由谷歌(Google)开发的一种旨在加快图片加载速度的图片格式,并能节省大量的服务器带宽资源和数据空间,在压缩率上比JPEG格式更优越,同时提供了有损压缩和无损压缩的图片文件格式,在质量相同的情况下,WebP格式图像的体积要比JPEG格式图像小40%,既然是一个相对较新的计数,所以对于目前市面上能否完美的兼容,其可用和实用性就变得很现实了,再好的东西如果没有好的兼容性,也是非常难以普及和被广泛使用的,同时也可能会增加实用和操作的难度。根据对目前国内浏览器占比与WebP的兼容性分析,大约有50%以上的国内用户可以直接体验到WebP。
现在市场上的图片压缩效率不高,精度不够,体积太大,导致的网络传输速度慢,存储压力大,而大多数WebP压缩算法的实现都是基于CPU的,这样成本就比较高,还不能将CPU的垃圾时间利用起来,而基于FPGA实现的处理速度比较慢,架构不够优美,没有将FPGA的异构计算,计算速度快的特点发挥完全,从而导致压缩效率不高,而且市场上的实现都没有带量化,所以导致预测的结果不够精准。
发明内容
鉴于上述技术问题,本发明提供了一种基于FPGA的Webp图像压缩算法的多核处理方法,本发明是将WebP在FPGA上实现,采用CPU式的多核心设计思想,让多核共同工作,速率提高到极限,同时实现了图片之间的流水处理。
一种基于FPGA的Webp图像压缩算法的多核处理方法,其特征在于,所述方法包括:
DDR片上缓存将图像送至颜色空间转换环节,进行按照RGB三通道转换成对应分析的YUV宏块,然后对YUV宏块进行分析、预测量化得到参数矩阵,最终将参数矩阵写回DDR片上缓存。
上述的基于FPGA的Webp图像压缩算法的多核处理方法,其特征在于,对YUV宏块进行分析、预测量化得到参数矩阵,还包括分析参数、分析中心点。
上述的基于FPGA的Webp图像压缩算法的多核处理方法,其特征在于,所述参数矩阵、分析参数、分析中心点会被用到量化的计算中,最后会将量化后的结果进行打分,最后再进行编码写文件。
上述的基于FPGA的Webp图像压缩算法的多核处理方法,其特征在于,编码写文件之后写回至DDR片上缓存。
上述的基于FPGA的Webp图像压缩算法的多核处理方法,其特征在于,预测量化步骤主要包括有:预测,DCT,量化,反量化,IDCT。
上述的基于FPGA的Webp图像压缩算法的多核处理方法,其特征在于,待IDCT变换处理结束之后,进行打分,之后返回至预测步骤,形成闭环。
上述技术方案具有如下优点或有益效果:
1)优美的多核心架构,灵活调配处理速度,可以按需配比;
2)完美的流水结构,让DSP处于满负荷的工作状态,高吞吐量,低时延,最大的利用了FPGA的异构计算的特点;
3)可以部署在CPU的垃圾时间内,极大的利用了CPU的闲余时间,而不影响正常工作。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明及其特征、外形和优点将会变得更加明显。在全部附图中相同的标记指示相同的部分。并未可以按照比例绘制附图,重点在于示出本发明的主旨。
图1是本发明核心构架图;
图2是预测量化的FPGA实现流程图;
图3是颜色空间转换计算过程和评估图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
FPGA可编程现场门阵列,具有高速计算和低功耗的特性,价格便宜,很适合处理大的流水式计算量,属于异构计算,将CPU和FPGA联合工作,已经是一种趋势。如图1和图2所示,本发明提供的是一种基于FPGA的Webp图像压缩算法的多核处理方法,主要概括为:DDR片上缓存将图像送至颜色空间转换环节,进行按照RGB三通道转换成对应分析的YUV宏块(Y表示亮度,UV表示色度),然后对YUV宏块进行分析、预测量化得到参数矩阵,最终将参数矩阵写回DDR片上缓存。
本发明技术方案中,对YUV宏块进行分析、预测量化得到参数矩阵、分析参数、分析中心点。所述参数矩阵、分析参数、分析中心点会被用到量化的计算中,最后会将量化后的结果进行打分,最后再进行编码写文件;编码写文件之后写回至DDR片上缓存。
优选的,预测量化步骤主要包括有:预测,DCT,量化,反量化,IDCT,待IDCT变换处理结束之后,进行打分,之后返回至预测步骤,形成闭环。
在本发明详细介绍方案中,WebP压缩主要有以下几个步骤:颜色空间转换,该阶段主要是将传统的RGB颜色空间,转换成亮度的颜色空空间(即YUV)。接下来是分析阶段,主要是将图片转换后的颜色空间,进行分析,对每个分量进行不同的预测方式(DC TM等)进行分析,然后对分析结果进行统计分析,最终得到对于一张图片的分析矩阵即参数矩阵、分析参数、分析中心点。后面这些参数会被用到量化的计算中,最后会将量化后的结果进行打分,最后再进行编码写文件。
如附图1,本发明技术方案将整个算法划分为3条主线,第一条主线包括从DDR到片上缓存,然后进行颜色空间转换,同时将转换后的结果写回DDR,同时将转换后的数据进行预分析,得到参数矩阵,最终将参数矩阵写回DDR,这样一条线,没有依赖其他线,数据来自DDR,又写回DDR,其设计思想是解耦,第一根线和第二根线之间的解耦合,用DDR来进行数据隔断,这样有两个好处,在开发时可以并行开发,同时还解决了两根线的处理速度不匹配的问题,同时在进行板上验证时也能并行进行,大大的缩短了开发和测试周期。附图3是颜色空间转换的计算过程,和具体资源周期的详细评估,因为这是关键的一步,这里跟第一条线的吞吐量有关。附图2是第二条主线的整体架构,其设计核心思想也是流水,时分复用,解耦,这里的流水设计保证了整个框架的高吞吐量,而其解耦设计保证了,整个设计多核心的思想,第二根线决定了整体的处理速度,如果需求是高速压缩,就可以将第二条线复制多份,这样就相当于多个线程同时工作,互不干扰,这样就极大的提高了并行度,如果在资源充足的情况下,可以复制任意份,处理速度以可见的形式倍数递增。最后一条线就是最终的编码写文件,这也是符合整体框架的设计思想,解耦合和多核心,也是可以按需复制,然后在CPU的闲余时间与FPGA进行联合工作。
综述,因为三条主线的解耦和多核心设计思想,使从每条主线,到整个框架都是极其灵活的,都是可以任意配置,最终实现高吞吐量,多核心,低延时的高标准,也是由此为WebP在FPGA上的实现提供了一种最优美,最合适的设计方案,最终来解决图片传输和存储所面临的巨大问题,使图片体积变小,图片质量提高,又因为其可配置性,所以可以应对未来日益增长的图片数据压缩需求,是最合适的WebP压缩架构。
本领域技术人员应该理解,本领域技术人员在结合现有技术以及上述实施例可以实现所述变化例,在此不做赘述。这样的变化例并不影响本发明的实质内容,在此不予赘述。
以上对本发明的较佳实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,其中未尽详细描述的设备和结构应该理解为用本领域中的普通方式予以实施;任何熟悉本领域的技术人员,在不脱离本发明技术方案范围情况下,都可利用上述揭示的方法和技术内容对本发明技术方案作出许多可能的变动和修饰,或修改为等同变化的等效实施例,这并不影响本发明的实质内容。因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均仍属于本发明技术方案保护的范围内。

Claims (6)

1.一种基于FPGA的Webp图像压缩算法的多核处理方法,其特征在于,所述方法包括:
DDR片上缓存将图像送至颜色空间转换环节,进行按照RGB三通道转换成对应分析的YUV宏块,然后对YUV宏块进行分析、预测量化得到参数矩阵,最终将参数矩阵写回DDR片上缓存。
2.根据权利要求1所述的基于FPGA的Webp图像压缩算法的多核处理方法,其特征在于,对YUV宏块进行分析、预测量化得到参数矩阵,还包括分析参数、分析中心点。
3.根据权利要求2所述的基于FPGA的Webp图像压缩算法的多核处理方法,其特征在于,所述参数矩阵、分析参数、分析中心点会被用到量化的计算中,最后会将量化后的结果进行打分,最后再进行编码写文件。
4.根据权利要求3所述的基于FPGA的Webp图像压缩算法的多核处理方法,其特征在于,编码写文件之后写回至DDR片上缓存。
5.根据权利要求1所述的基于FPGA的Webp图像压缩算法的多核处理方法,其特征在于,预测量化步骤主要包括有:预测,DCT,量化,反量化,IDCT。
6.根据权利要求5所述的基于FPGA的Webp图像压缩算法的多核处理方法,其特征在于,待IDCT变换处理结束之后,进行打分,之后返回至预测步骤,形成闭环。
CN202010664400.8A 2020-07-10 2020-07-10 基于FPGA的Webp图像压缩算法的多核处理方法 Pending CN111818339A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010664400.8A CN111818339A (zh) 2020-07-10 2020-07-10 基于FPGA的Webp图像压缩算法的多核处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010664400.8A CN111818339A (zh) 2020-07-10 2020-07-10 基于FPGA的Webp图像压缩算法的多核处理方法

Publications (1)

Publication Number Publication Date
CN111818339A true CN111818339A (zh) 2020-10-23

Family

ID=72843270

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010664400.8A Pending CN111818339A (zh) 2020-07-10 2020-07-10 基于FPGA的Webp图像压缩算法的多核处理方法

Country Status (1)

Country Link
CN (1) CN111818339A (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101668207A (zh) * 2009-09-25 2010-03-10 天津大学 Mpeg到avs视频编码转换系统
US20160321218A1 (en) * 2015-04-27 2016-11-03 Neatly Co. System and method for transforming image information for a target system interface
CN107680144A (zh) * 2017-10-16 2018-02-09 郑州云海信息技术有限公司 一种WebP文件转换的方法及装置
CN108156457A (zh) * 2017-12-27 2018-06-12 郑州云海信息技术有限公司 一种JPEG转WebP的图像编码方法及装置
CN108900842A (zh) * 2018-07-27 2018-11-27 郑州云海信息技术有限公司 Y数据压缩处理方法、装置、设备及WebP压缩系统
CN108932129A (zh) * 2018-06-26 2018-12-04 郑州云海信息技术有限公司 一种WebP编码过程中熵编码算法的加速系统及方法
CN109862361A (zh) * 2019-02-03 2019-06-07 北京深维科技有限公司 一种webp图像编码方法、装置及电子设备
CN110298896A (zh) * 2019-06-27 2019-10-01 北京奇艺世纪科技有限公司 图片转码方法、装置及电子设备
CN110913225A (zh) * 2019-11-19 2020-03-24 北京奇艺世纪科技有限公司 图像编码方法、装置、电子设备和计算机可读存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101668207A (zh) * 2009-09-25 2010-03-10 天津大学 Mpeg到avs视频编码转换系统
US20160321218A1 (en) * 2015-04-27 2016-11-03 Neatly Co. System and method for transforming image information for a target system interface
CN107680144A (zh) * 2017-10-16 2018-02-09 郑州云海信息技术有限公司 一种WebP文件转换的方法及装置
CN108156457A (zh) * 2017-12-27 2018-06-12 郑州云海信息技术有限公司 一种JPEG转WebP的图像编码方法及装置
CN108932129A (zh) * 2018-06-26 2018-12-04 郑州云海信息技术有限公司 一种WebP编码过程中熵编码算法的加速系统及方法
CN108900842A (zh) * 2018-07-27 2018-11-27 郑州云海信息技术有限公司 Y数据压缩处理方法、装置、设备及WebP压缩系统
CN109862361A (zh) * 2019-02-03 2019-06-07 北京深维科技有限公司 一种webp图像编码方法、装置及电子设备
CN110298896A (zh) * 2019-06-27 2019-10-01 北京奇艺世纪科技有限公司 图片转码方法、装置及电子设备
CN110913225A (zh) * 2019-11-19 2020-03-24 北京奇艺世纪科技有限公司 图像编码方法、装置、电子设备和计算机可读存储介质

Similar Documents

Publication Publication Date Title
CN101908035B (zh) 视频编解码方法、gpu及其与cpu的交互方法及系统
US10187639B2 (en) Encoding method, decoding method, encoding/decoding system, encoder, and decoder
CN105120293B (zh) 基于cpu和gpu的图像协同解码方法及装置
WO2015120818A1 (zh) 图像编码、解码方法及装置
CN115086668B (zh) 一种视频压缩方法、系统、设备及计算机可读存储介质
CN101404767A (zh) 一种基于图像分析及人工智能的可变参数的自动化视频转码方法
CN104349171A (zh) 一种视觉无损的图像压缩编、解码装置及编、解码方法
US10110896B2 (en) Adaptive motion JPEG encoding method and system
CN107820095A (zh) 一种长期参考图像选择方法及装置
CN103313055A (zh) 一种基于分割的色度帧内预测方法、及视频编码解码方法
US11438594B2 (en) Block-based picture fusion for contextual segmentation and processing
US20140009563A1 (en) Non-video codecs with video conferencing
CN106817584A (zh) 一种基于fpga的mjpeg压缩实现方法和fpga
CN111818339A (zh) 基于FPGA的Webp图像压缩算法的多核处理方法
CN108881915A (zh) 基于dsc编码技术视频播放的装置和方法
US20200359030A1 (en) Video compression for video games
WO2023193701A1 (zh) 图像编码方法及装置
CN111815502B (zh) 基于WebP压缩算法的多图处理的FPGA加速方法
US20230232002A1 (en) Point cloud coding method, point cloud decoding method, and relevant apparatuses
CN110418141A (zh) 一种jpg格式图片高性能优化方法
WO2023185806A9 (zh) 一种图像编解码方法、装置、电子设备及存储介质
RU2782583C1 (ru) Слияние изображений на блочной основе для контекстной сегментации и обработки
TWI832661B (zh) 圖像編解碼的方法、裝置及存儲介質
US11546597B2 (en) Block-based spatial activity measures for pictures
CN113115050B (zh) 一种Webp图像压缩系统、压缩方法以及可读存储介质

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20201023