CN108156457B - 一种JPEG转WebP的图像编码方法及装置 - Google Patents

一种JPEG转WebP的图像编码方法及装置 Download PDF

Info

Publication number
CN108156457B
CN108156457B CN201711448630.5A CN201711448630A CN108156457B CN 108156457 B CN108156457 B CN 108156457B CN 201711448630 A CN201711448630 A CN 201711448630A CN 108156457 B CN108156457 B CN 108156457B
Authority
CN
China
Prior art keywords
data
webp
jpeg
macro block
frequency domain
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
CN201711448630.5A
Other languages
English (en)
Other versions
CN108156457A (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.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information Technology 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 Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201711448630.5A priority Critical patent/CN108156457B/zh
Publication of CN108156457A publication Critical patent/CN108156457A/zh
Application granted granted Critical
Publication of CN108156457B publication Critical patent/CN108156457B/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/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/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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/587Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明公开了一种JPEG转WebP的图像编码方法,获取待转换JPEG文件,通过解析待转换JPEG文件得到JPEG图像文件数据;对JPEG图像文件数据进行Huffman解码,得到频域空间的宏块数据;对频域数据进行宏块预测,选择宏块的最优预测模式;根据选择的最优预测模式,对频域空间的宏块数据进行残差数据计算,得到宏块残差系数数据;对频域数据空间的宏块残差系数数据进行熵编码,得到WebP图像文件数据,将WebP图像文件数据封装成WebP图像文件格式。本申请减少JPEG转WebP图像编码算法的复杂度,提高了转换的性能。此外,本申请还提供了具有上述技术优点的JPEG转WebP的图像编码装置。

Description

一种JPEG转WebP的图像编码方法及装置
技术领域
本发明涉及数据处理技术领域,特别是涉及一种JPEG转WebP的图像编码方法及装置。
背景技术
在大数据时代,由于图像数据规模的增长,给数据中心的存储成本和网络带宽带来了严重的挑战。为了降低图像存储的大小,往往会采用具有较高压缩率的图像文件格式WebP来替代现有的JPEG图像文件。与JPEG有损压缩算法相比,WebP图像有损压缩算法能够降低30%左右的文件大小。在数据中心服务器上采用WebP图像压缩算法对JPEG文件进行编码转换,能够有效的缓解图片规模增长所带来的数据中心存储和网络带宽访问的压力。
将JPEG图片文件转换成WebP文件格式时,首先需要对JPEG文件进行解码,包含哈夫曼解码、反量化、DCT逆变换、YCbCr转RGB等过程,其次,需要完成RGB转YUV、宏块预测、对残差数据进行DCT变换和量化、反量化和DCT逆变换、熵编码等过程。鉴于现有JPEG转WebP图像编码算法过程的复杂性,提供一种减少复杂度、提升转换性能的JPEG转WebP的图像编码方法及装置是本领域技术人员亟待解决的技术问题。
发明内容
本发明的目的是提供一种JPEG转WebP的图像编码方法及装置,以解决现有技术中编码算法复杂度较高、转换性能过低的问题。
为解决上述技术问题,本发明提供一种JPEG转WebP的图像编码方法,包括:
获取待转换JPEG文件,通过解析所述待转换JPEG文件得到JPEG图像文件数据;
对所述JPEG图像文件数据进行Huffman解码,得到频域空间的宏块数据;
对频域数据进行宏块预测,选择宏块的最优预测模式;
根据选择的最优预测模式,对所述频域空间的宏块数据进行残差数据计算,得到宏块残差系数数据;
对频域数据空间的所述宏块残差系数数据进行熵编码,得到WebP图像文件数据,将所述WebP图像文件数据封装成WebP图像文件格式。
可选地,所述获取待转换JPEG文件包括:
在Host主机端获取待转换JPEG文件的源数据;
在所述获取待转换JPEG文件之后还包括:
通过OpenCL的写Buffer方式将所述JPEG文件的源数据写至FPGA板卡上的DDR内存中。
可选地,所述对所述JPEG图像文件数据进行Huffman解码,得到频域空间的宏块数据包括:
使用OpenCL语言描述实现的Huffman解码Kernel,对所述JPEG图像文件数据进行解码,得到频域空间的宏块数据。
可选地,所述对频域数据进行宏块预测,选择宏块的最优预测模式包括:
使用OpenCL语言描述实现的频域数据宏块预测Kernel,对频域数据空间的宏块进行分析,得到宏块的最优预测模式。
可选地,所述根据选择的最优预测模式,对所述频域空间的宏块数据进行残差数据计算,得到宏块残差系数数据包括:
使用OpenCL语言实现的宏块残差计算kernel,基于频域数据宏块和宏块最优预测模式,计算得到宏块残差系数数据。
可选地,所述对频域数据空间的所述宏块残差系数数据进行熵编码,得到WebP图像文件数据包括:
采用OpenCl实现的熵编码Kernel对所述宏块残差系数数据进行熵编码,得到WebP图像文件的二进制数据流。
可选地,在所述将所述WebP图像文件数据封装成WebP图像文件格式之后还包括:
通过OpenCL的读Buffer方式,将编码后的图像数据从FPGA板卡上的DDR内存读取至host主机端。
可选地,Huffman解码kernel、频域数据宏块预测kernel、宏块残差计算kernel之间采用channel方式进行宏块数据传输,kernel之间依靠数据流驱动方式进行流水线方式执行,且所有的Kernel均采用Intel FPGA SDK for OpenCL工具进行综合,自动生成可在Intel的FPGA平台执行的硬件比特流文件。
可选地,Huffman解码kernel、频域数据宏块预测kernel、宏块残差计算kernel,采用OpenCL语言进行描述实现时,通过制导语句#pragma unroll进行循环展开优化控制,并消除循环相关的访存依赖关系。
本发明还提供了一种JPEG转WebP的图像编码装置,包括:
数据获取模块,用于获取待转换JPEG文件,通过解析所述待转换JPEG文件得到JPEG图像文件数据;
解码模块,用于对所述JPEG图像文件数据进行Huffman解码,得到频域空间的宏块数据;
宏块预测模块,用于对频域数据进行宏块预测,选择宏块的最优预测模式;
残差数据计算模块,用于根据选择的最优预测模式,对所述频域空间的宏块数据进行残差数据计算,得到宏块残差系数数据;
熵编码模块,用于对频域数据空间的所述宏块残差系数数据进行熵编码,最终得到WebP图像文件的数据,将WebP图像文件数据封装成WebP图像文件格式。
本发明所提供的JPEG转WebP的图像编码方法,获取待转换JPEG文件,通过解析待转换JPEG文件得到JPEG图像文件数据;对JPEG图像文件数据进行Huffman解码,得到频域空间的宏块数据;对频域数据进行宏块预测,选择宏块的最优预测模式;根据选择的最优预测模式,对频域空间的宏块数据进行残差数据计算,得到宏块残差系数数据;对频域数据空间的宏块残差系数数据进行熵编码,得到WebP图像文件数据,将WebP图像文件数据封装成WebP图像文件格式。本申请基于OpenCL的JPEG转WebP图像编码方法,与传统的JPEG转WebP图像编码算法流程相比,简化了DCT变换/逆变换、量化/反量化步骤,能够有效减少JPEG转WebP图像编码算法的复杂度,简化其实现流程,提高了JPEG转WebP的图像编码算法性能。此外,本申请还提供了一种具有上述技术优点的JPEG转WebP的图像编码装置。
附图说明
为了更清楚的说明本发明实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明所提供的JPEG转WebP的图像编码方法的一种具体实施方式的流程图;
图2为本发明所提供的JPEG转WebP的图像编码方法的另一种具体实施方式流程图;
图3为本发明实施例提供的JPEG转WebP的图像编码装置的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明所提供的JPEG转WebP的图像编码方法的一种具体实施方式的流程图如图1所示,该方法包括:
步骤S101:获取待转换JPEG文件,通过解析所述待转换JPEG文件得到JPEG图像文件数据;
根据JPEG图像文件压缩方法,直接读取出来的图像源数据是采用Huffman编码后的二进制数据流。
步骤S102:对所述JPEG图像文件数据进行Huffman解码,得到频域空间的宏块数据;
频域空间的宏块数据是DCT变换及量化后的图像宏块系数,JPEG图像压缩算法中规定的图像宏块大小可以为8x8、16x16格式,本发明实施例采用的是16x16大小的宏块数据,因为DCT变换是将正常的RGB图像像素,在宏块的大小空间内,变换成频率域的数据,因此这里称作是频域空间的宏块数据。
步骤S103:对频域数据进行宏块预测,选择宏块的最优预测模式;
直接在频域数据空间,对比预测后的宏块频域数据和原始宏块频域数据,来选择最优的预测模式。
步骤S104:根据选择的最优预测模式,对所述频域空间的宏块数据进行残差数据计算,得到宏块残差系数数据;
将DCT变换、宏块残差计算、DCT逆变换、量化的计算公式进行合并化简,得到一种直接输入是频域数据的宏块残差计算方法。
步骤S105:对频域数据空间的所述宏块残差系数数据进行熵编码,得到WebP图像文件数据,将所述WebP图像文件数据封装成WebP图像文件格式。
本步骤中熵编码与WebP图像有损压缩算法中的熵编码方式相同。
JPEG图像有损压缩算法与WebP有损压缩算法采用相同的DCT变换与量化方式,在进行JPEG转WebP的图像编码转换过程中,实现了一次DCT变换/量化和两次DCT逆变换/反量化,可以通过直接对哈夫曼解码后的图像频域数据进行预测,在频域数据基础上完成残差数据的计算,因此可以优化去掉DCT变换和量化的步骤,提升JPEG转WebP编码的性能。
本发明所提供的JPEG转WebP的图像编码方法,获取待转换JPEG文件,通过解析待转换JPEG文件得到JPEG图像文件数据;对JPEG图像文件数据进行Huffman解码,得到频域空间的宏块数据;对频域数据进行宏块预测,选择宏块的最优预测模式;根据选择的最优预测模式,对频域空间的宏块数据进行残差数据计算,得到宏块残差系数数据;对频域数据空间的宏块残差系数数据进行熵编码,得到WebP图像文件数据,将WebP图像文件数据封装成WebP图像文件格式。本申请基于OpenCL的JPEG转WebP图像编码方法,与传统的JPEG转WebP图像编码算法流程相比,简化了传统上JPEG转WebP算法实现时需要反复进行DCT变换、DCT逆变换、量化/反量化的步骤,能够有效减少JPEG转WebP图像编码算法的复杂度,简化其实现流程,提高了JPEG转WebP的图像编码算法性能。
为了进一步提高JPEG转WebP编码过程给数据中心服务器带来的性能开销,本发明基于具备可编程、高度并行化、低功耗等特性的FPGA异构平台,采用OpenCL开放式计算高级编程语言实现优化后的JPEG转WebP图像编码算法,然后通过高层次综合实现JPEG转WebP算法到FPGA异构加速平台上的自动部署。与通用的采用VHDL/Verilog等RTL硬件描述语言设计FPGA电路方式相比,采用OpenCL语言进行设计具有更加简单的设计难度,且往往需要更少的开发周期。近年来,OpenCL作为一种开放式计算高级编程语言,开始逐步对FPGA硬件电路设计进行支持,有效的解决了传统上FPGA硬件电路设计过程中所存在的问题。如图2本发明所提供的JPEG转WebP的图像编码方法的另一种具体实施方式流程图所示,该方法具体包括:
步骤S200:在Host主机端获取JPEG图像文件的源数据;
步骤S201:在Host端利用OpenCL框架的写Buffer方式将解析后得到的JPEG图像源数据传送到FPGA板卡上的Global内存中;
步骤S202:利用OpenCL语言实现的Huffman解码kernel,对图像源数据进行顺序解码,依次得到每个16x16宏块大小的图像频域数据;
步骤S203:利用OpenCL语言实现的频域数据宏块预测Kernel,基于每个宏块的频域数据分析得到宏块数据对应的最优预测模式;该预测模式类型与WebP有损压缩算法中所使用的预测模式相同。
步骤S204:通过基于频域数据的宏块残差计算kernel,根据最优预测模式和图像宏块频域数据进行残差系数的计算,得到频域空间的宏块系数;
步骤S205:采用熵编码kernel对频域空间的宏块系数进行编码,完成WebP文件数据的生成,通过OpenCL的读Buffer方式,将编码后数据从FPGA异构加速板卡上的DDR内存中读取至Host主机端。至此完成JPEG转WebP图像编码过程的FPGA硬件加速过程。
其中,上述Huffman解码kernel、频域数据宏块预测kernel、基于频域数据的宏块残差计算kernel之间,采用channel方式进行宏块数据传输,kernel之间依靠数据流驱动方式进行流水线方式执行,实现宏块间并行流水优化。并且所有的Kernel均采用Intel FPGASDK for OpenCL工具进行综合,自动生成可在Intel的FPGA平台执行的硬件比特流文件。
此外,基于OpenCL语言的JPEG转WebP图像编码算法到FPGA硬件加速过程中,上述Huffman解码kernel、频域数据宏块预测kernel、基于频域数据的宏块残差计算kernel,在采用OpenCL语言进行描述实现时,通过制导语句#pragma unroll进行循环展开优化控制,同时消除循环相关的访存依赖关系。这样能够提高kernel中循环程序流水执行的效率,降低自动生成的FPGA硬件电路所占用的硬件资源开销。
相较于现有技术,本发明提供的基于OpenCL的JPEG转WebP图像编码方法,简化了传统上JPEG至WebP图像格式变换时需要反复执行的DCT变换、DCT逆变换、量化/反量化的步骤,因为JPEG图像压缩算法与WebP图像有损压缩算法在实现时,采用了相同的DCT变换和量化步骤,所以可以通过公式的合并与化简,简化JPEG转WebP图像编码的流程。同时,充分利用了OpenCL所提供的循环展开、循环流水等优化技术,通过并行流水的执行方式,提高了JPEG转WebP图像编码算法的吞吐率性能,与RTL硬件编程语言实现方式相比,本发明的技术方案能够明显降低FPGA硬件加速单元的开发复杂度,提高开发效率。
下面对本发明实施例提供的JPEG转WebP的图像编码装置进行介绍,下文描述的JPEG转WebP的图像编码装置与上文描述的JPEG转WebP的图像编码方法可相互对应参照。
图3为本发明实施例提供的JPEG转WebP的图像编码装置的结构框图,参照图3JPEG转WebP的图像编码装置可以包括:
数据获取模块100,用于获取待转换JPEG文件,通过解析所述待转换JPEG文件得到JPEG图像文件数据;
解码模块200,用于对所述JPEG图像文件数据进行Huffman解码,得到频域空间的宏块数据;
宏块预测模块300,用于对频域数据进行宏块预测,选择宏块的最优预测模式;
残差数据计算模块400,用于根据选择的最优预测模式,对所述频域空间的宏块数据进行残差数据计算,得到宏块残差系数数据;
熵编码模块500,用于对频域数据空间的所述宏块残差系数数据进行熵编码,最终得到WebP图像文件的数据,将WebP图像文件数据封装成WebP图像文件格式。
本实施例的JPEG转WebP的图像编码装置用于实现前述的JPEG转WebP的图像编码方法,因此JPEG转WebP的图像编码装置中的具体实施方式可见前文中的JPEG转WebP的图像编码方法的实施例部分,例如,数据获取模块100,解码模块200,宏块预测模块300,残差数据计算模块400,熵编码模块500,分别用于实现上述JPEG转WebP的图像编码方法中步骤S101,S102,S103,S104和S105,所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再赘述。
本发明所提供的JPEG转WebP的图像编码装置,获取待转换JPEG文件,通过解析待转换JPEG文件得到JPEG图像文件数据;对JPEG图像文件数据进行Huffman解码,得到频域空间的宏块数据;对频域数据进行宏块预测,选择宏块的最优预测模式;根据选择的最优预测模式,对频域空间的宏块数据进行残差数据计算,得到宏块残差系数数据;对频域数据空间的宏块残差系数数据进行熵编码,得到WebP图像文件数据,将WebP图像文件数据封装成WebP图像文件格式。本申请基于OpenCL的JPEG转WebP图像编码方法,与传统的JPEG转WebP图像编码算法流程相比,简化了DCT变换/逆变换、量化/反量化步骤,能够有效减少JPEG转WebP图像编码算法的复杂度,简化其实现流程,提高了JPEG转WebP的图像编码算法性能。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本发明所提供的JPEG转WebP的图像编码方法以及装置进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

Claims (10)

1.一种JPEG转WebP的图像编码方法,其特征在于,包括:
获取待转换JPEG文件,通过解析所述待转换JPEG文件得到JPEG图像文件数据;
对所述JPEG图像文件数据进行Huffman解码,得到频域空间的宏块数据;
对频域数据进行宏块预测,选择宏块的最优预测模式;
根据选择的最优预测模式,对所述频域空间的宏块数据进行残差数据计算,得到宏块残差系数数据;
对频域数据空间的所述宏块残差系数数据进行熵编码,得到WebP图像文件数据,将所述WebP图像文件数据封装成WebP图像文件格式;
所述对所述频域空间的宏块数据进行残差数据计算,得到宏块残差系数数据,包括:根据DCT变换、宏块残差计算、DCT逆变换、量化的计算公式进行合并化简,得到一种直接输入是频域数据的宏块残差计算方法;采用所述宏块残差计算方法,对所述频域空间的宏块数据进行残差数据计算,得到宏块残差系数数据。
2.如权利要求1所述的JPEG转WebP的图像编码方法,其特征在于,所述获取待转换JPEG文件包括:
在Host主机端获取待转换JPEG文件的源数据;
在所述获取待转换JPEG文件之后还包括:
通过OpenCL的写Buffer方式将所述待转换JPEG文件的源数据写至FPGA板卡上的DDR内存中。
3.如权利要求2所述的JPEG转WebP的图像编码方法,其特征在于,所述对所述JPEG图像文件数据进行Huffman解码,得到频域空间的宏块数据包括:
使用OpenCL语言描述实现的Huffman解码Kernel,对所述JPEG图像文件数据进行解码,得到频域空间的宏块数据。
4.如权利要求3所述的JPEG转WebP的图像编码方法,其特征在于,所述对频域数据进行宏块预测,选择宏块的最优预测模式包括:
使用OpenCL语言描述实现的频域数据宏块预测Kernel,对频域数据空间的宏块进行分析,得到宏块的最优预测模式。
5.如权利要求4所述的JPEG转WebP的图像编码方法,其特征在于,所述根据选择的最优预测模式,对所述频域空间的宏块数据进行残差数据计算,得到宏块残差系数数据包括:
使用OpenCL语言实现的宏块残差计算kernel,基于频域数据宏块和宏块最优预测模式,计算得到宏块残差系数数据。
6.如权利要求5所述的JPEG转WebP的图像编码方法,其特征在于,所述对频域数据空间的所述宏块残差系数数据进行熵编码,得到WebP图像文件数据包括:
采用OpenCl实现的熵编码Kernel对所述宏块残差系数数据进行熵编码,得到WebP图像文件的二进制数据流。
7.如权利要求6所述的JPEG转WebP的图像编码方法,其特征在于,在所述将所述WebP图像文件数据封装成WebP图像文件格式之后还包括:
通过OpenCL的读Buffer方式,将编码后的图像数据从FPGA板卡上的DDR内存读取至host主机端。
8.如权利要求7所述的JPEG转WebP的图像编码方法,其特征在于,Huffman解码kernel、频域数据宏块预测kernel、宏块残差计算kernel之间采用channel方式进行宏块数据传输,kernel之间依靠数据流驱动方式进行流水线方式执行,且所有的Kernel均采用Intel FPGASDK for OpenCL工具进行综合,自动生成可在Intel的FPGA平台执行的硬件比特流文件。
9.如权利要求7所述的JPEG转WebP的图像编码方法,其特征在于,Huffman解码kernel、频域数据宏块预测kernel、宏块残差计算kernel,采用OpenCL语言进行描述实现时,通过制导语句#pragma unroll进行循环展开优化控制,并消除循环相关的访存依赖关系。
10.一种JPEG转WebP的图像编码装置,其特征在于,包括:
数据获取模块,用于获取待转换JPEG文件,通过解析所述待转换JPEG文件得到JPEG图像文件数据;
解码模块,用于对所述JPEG图像文件数据进行Huffman解码,得到频域空间的宏块数据;
宏块预测模块,用于对频域数据进行宏块预测,选择宏块的最优预测模式;
残差数据计算模块,用于根据选择的最优预测模式,对所述频域空间的宏块数据进行残差数据计算,得到宏块残差系数数据;
熵编码模块,用于对频域数据空间的所述宏块残差系数数据进行熵编码,最终得到WebP图像文件的数据,将WebP图像文件数据封装成WebP图像文件格式;
所述残差数据计算模块用于:根据DCT变换、宏块残差计算、DCT逆变换、量化的计算公式进行合并化简,得到一种直接输入是频域数据的宏块残差计算方法;采用所述宏块残差计算方法,对所述频域空间的宏块数据进行残差数据计算,得到宏块残差系数数据。
CN201711448630.5A 2017-12-27 2017-12-27 一种JPEG转WebP的图像编码方法及装置 Active CN108156457B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711448630.5A CN108156457B (zh) 2017-12-27 2017-12-27 一种JPEG转WebP的图像编码方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711448630.5A CN108156457B (zh) 2017-12-27 2017-12-27 一种JPEG转WebP的图像编码方法及装置

Publications (2)

Publication Number Publication Date
CN108156457A CN108156457A (zh) 2018-06-12
CN108156457B true CN108156457B (zh) 2021-10-15

Family

ID=62463225

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711448630.5A Active CN108156457B (zh) 2017-12-27 2017-12-27 一种JPEG转WebP的图像编码方法及装置

Country Status (1)

Country Link
CN (1) CN108156457B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111818339A (zh) * 2020-07-10 2020-10-23 逢亿科技(上海)有限公司 基于FPGA的Webp图像压缩算法的多核处理方法

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1489391A (zh) * 2002-10-09 2004-04-14 中国科学院计算技术研究所 用于视频编码的新型空间预测方法及其装置
CN101222635A (zh) * 2008-01-24 2008-07-16 北京工业大学 帧内预测方法
CN101573985A (zh) * 2006-11-03 2009-11-04 三星电子株式会社 用于视频预测编码的方法和装置以及用于视频预测解码的方法和装置
CN104683801A (zh) * 2013-11-29 2015-06-03 华为技术有限公司 图像压缩方法和装置
CN105447285A (zh) * 2016-01-20 2016-03-30 杭州菲数科技有限公司 一种提高OpenCL硬件执行效率的方法
CN105992001A (zh) * 2015-03-02 2016-10-05 深圳市腾讯计算机系统有限公司 一种对图片进行量化处理的方法及装置
CN106034238A (zh) * 2015-03-11 2016-10-19 杭州海康威视数字技术股份有限公司 计算编码失真度和编码模式控制的方法及其系统
CN106558083A (zh) * 2016-11-30 2017-04-05 郑州云海信息技术有限公司 一种webp压缩算法帧内预测阶段的加速方法、装置及系统
CN107105266A (zh) * 2017-05-22 2017-08-29 郑州云海信息技术有限公司 一种png图像的解码方法、装置及系统
CN107154062A (zh) * 2017-05-12 2017-09-12 郑州云海信息技术有限公司 一种WebP有损压缩算法的实现方法、装置及系统
CN107404654A (zh) * 2017-08-23 2017-11-28 郑州云海信息技术有限公司 一种jpeg图像解压缩方法、装置及平台

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1489391A (zh) * 2002-10-09 2004-04-14 中国科学院计算技术研究所 用于视频编码的新型空间预测方法及其装置
CN101573985A (zh) * 2006-11-03 2009-11-04 三星电子株式会社 用于视频预测编码的方法和装置以及用于视频预测解码的方法和装置
CN101222635A (zh) * 2008-01-24 2008-07-16 北京工业大学 帧内预测方法
CN104683801A (zh) * 2013-11-29 2015-06-03 华为技术有限公司 图像压缩方法和装置
CN105992001A (zh) * 2015-03-02 2016-10-05 深圳市腾讯计算机系统有限公司 一种对图片进行量化处理的方法及装置
CN106034238A (zh) * 2015-03-11 2016-10-19 杭州海康威视数字技术股份有限公司 计算编码失真度和编码模式控制的方法及其系统
CN105447285A (zh) * 2016-01-20 2016-03-30 杭州菲数科技有限公司 一种提高OpenCL硬件执行效率的方法
CN106558083A (zh) * 2016-11-30 2017-04-05 郑州云海信息技术有限公司 一种webp压缩算法帧内预测阶段的加速方法、装置及系统
CN107154062A (zh) * 2017-05-12 2017-09-12 郑州云海信息技术有限公司 一种WebP有损压缩算法的实现方法、装置及系统
CN107105266A (zh) * 2017-05-22 2017-08-29 郑州云海信息技术有限公司 一种png图像的解码方法、装置及系统
CN107404654A (zh) * 2017-08-23 2017-11-28 郑州云海信息技术有限公司 一种jpeg图像解压缩方法、装置及平台

Also Published As

Publication number Publication date
CN108156457A (zh) 2018-06-12

Similar Documents

Publication Publication Date Title
US9948934B2 (en) Estimating rate costs in video encoding operations using entropy encoding statistics
US9392292B2 (en) Parallel encoding of bypass binary symbols in CABAC encoder
JP6423061B2 (ja) ビデオデコーダを実装するコンピューティングデバイス及びその方法
US9351003B2 (en) Context re-mapping in CABAC encoder
JP4920034B2 (ja) マルチスレッドsimd処理を利用したメディア符号化の並列実行
US9807410B2 (en) Late-stage mode conversions in pipelined video encoders
TW201830972A (zh) 用於視訊寫碼之低複雜度符號預測
US8483496B2 (en) Image encoding/decoding system
CN111988609A (zh) 图像编码装置、概率模型生成装置和图像解码装置
CN102238386B (zh) 画面序列编码与重构方法、序列的编码数据流
JP2023543985A (ja) 多用途ビデオコーディングのためのテンプレートマッチング予測
CN116018757A (zh) 用于对深度神经网络进行编码/解码的系统和方法
CN108156457B (zh) 一种JPEG转WebP的图像编码方法及装置
JP2014146988A (ja) 動画像符号化装置
EP3151559A1 (en) Method for coding and decoding a plurality of picture blocks and corresponding devices
CN103581676A (zh) 视频编码变换系数的解码方法及装置
JP6553920B2 (ja) ピクチャを符号化および復号するための方法ならびに対応するデバイス
CN116866591A (zh) 一种图像编码方法、装置及计算机设备、介质
JP2015076765A (ja) 画像処理装置及びその制御方法、並びに、コンピュータプログラム
US10764607B2 (en) Data processing systems for encoding video data
Atitallah et al. High-level design of HEVC intra prediction algorithm
EP3046326A1 (en) Method and device of construction of an epitome, coding and decoding methods and coding and decoding devices
EP2903276A1 (en) Method for encoding and decoding a picture comprising inpainting of the picture epitome and corresponding devices
JP4234018B2 (ja) デジタル映像音声信号可逆符号化復号方法、装置およびこの方法を実行するためのコンピュータプログラムを記録した記録媒体
KR100706962B1 (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