CN111800636A - 一种基于卷积自动编码算法的图像压缩硬件加速器装置 - Google Patents
一种基于卷积自动编码算法的图像压缩硬件加速器装置 Download PDFInfo
- Publication number
- CN111800636A CN111800636A CN202010660030.0A CN202010660030A CN111800636A CN 111800636 A CN111800636 A CN 111800636A CN 202010660030 A CN202010660030 A CN 202010660030A CN 111800636 A CN111800636 A CN 111800636A
- Authority
- CN
- China
- Prior art keywords
- convolution
- calculation
- unit
- memory
- image
- 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
Links
- 238000007906 compression Methods 0.000 title claims abstract description 39
- 230000006835 compression Effects 0.000 title claims abstract description 38
- 238000004364 calculation method Methods 0.000 claims abstract description 70
- 230000001133 acceleration Effects 0.000 claims abstract description 21
- 230000000737 periodic effect Effects 0.000 claims abstract description 18
- 238000012545 processing Methods 0.000 claims abstract description 10
- 238000000034 method Methods 0.000 claims description 26
- 230000008569 process Effects 0.000 claims description 15
- 230000006870 function Effects 0.000 claims description 8
- 238000011176 pooling Methods 0.000 claims description 7
- 230000004913 activation Effects 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 6
- 230000006837 decompression Effects 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 210000002569 neuron Anatomy 0.000 description 3
- 210000004027 cell Anatomy 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000013139 quantization Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
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 Of Band Width Or Redundancy In Fax (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Complex Calculations (AREA)
Abstract
本发明公开了一种基于卷积自动编码算法的图像压缩硬件加速器装置。本装置主要由控制单元,逻辑计算加速单元和存储单元三大部分组成。控制单元主要包含对逻辑计算加速单元的控制和对存储单元的控制;逻辑计算加速单元包含复用处理器、周期并行卷积计算单元和计算单元组成的卷积计算阵列;存储单元包括像素存储器、权值存储器、结果存储器和片外动态存储器。本装置对于图像压缩的加速主要为:针对图像特点做出的卷积拆分;增加计算并行度;周期性的卷积控制。由于本装置的周期性卷积拆分和高并行度的工作特点,可以非常有效地利用卷积自动编码算法,针对图像进行压缩处理加速,避免过多的硬件资源消耗,具有一定创新性。
Description
技术领域
本发明涉及计算机及电子信息技术领域,特别是涉及一种基于卷积自动编码算法的图像压缩硬件加速器装置。
背景技术
图像作为人类感知世界的视觉基础,其压缩技术一直是数字信号处理的重要问题。图像压缩的目的是在保证准确性的前提下,通过对图像的压缩来减少表示数字图像需要的数据量。图像压缩的本质是在像素层面上以更少的编码比特率实现更高质量的图片重建任务。图像压缩按照压缩方式可分为有损压缩和无损压缩两大类技术。无损图像压缩技术因为在解压之后能够保证图像的完整性,故在对图像精度要求高的领域有着广泛的使用。有损图像压缩技术在保证图像重要信息完整性的前提下通过舍弃不必要信息实现图像压缩目标。有损压缩相对于无损压缩具有更高的压缩比例,而在一般对精度要求不高领域显然无损压缩更受欢迎,在日常生活中的使用也更加广泛。传统的有损图像压缩存在着如下缺点:1)压缩比例较低,无法满足部分严苛场景下的图像压缩需求以及传输、储存等应用目的;2)压缩方式单一,通常是依靠变换、量化和熵编码方法,无法将图像内容作为影响因素离列入压缩任务中,导致解压后图像重建质量无法达到最大程度的提高。
近年来,深度学习方法在图像处理领域大放异彩。在图像压缩方面,利用深度学习网络替代传统的变换、量化和熵编码过程,可以构建出端到端的压缩方案。自动编码算法作为处理高维数据的非监督深度学习算法,应用到图像压缩领域时能够将图片内容作为压缩过程中的影响因素,实现更高的压缩比和更好的解压重建效果。由于受到计算复杂度的影响,现阶段应用于图像压缩方法中的自动编码算法,特别是结合了卷积神经网络的自动编码算法,在推广和应用上面临着算力约束和资源约束等一系列挑战。
鉴于自编码算法应用于图像压缩的优点和缺点,本发明创作者通过研究解决算法的硬件实现中的资源耗用过多的问题,设计出了本发明的加速器装置。
发明内容
为了克服上述现有技术的不足,本发明提供了一种基于卷积自动编码算法的图像压缩硬件加速器装置。本发明针对图像压缩特别是高分辨图像压缩的卷积自动编码算法的硬件实现,提出了一种并行化处理和卷积拆分的周期性加速方案,将传统的依赖移位寄存器构建卷积窗口的方案转换为周期性执行的拆分卷积子窗口方案,能够降低内存资源的占用,同时迎合图片按行读取的数据特性。本发明的特点是并行度高、资源占用低,特别是相比采用移位寄存器卷积窗口方案能够最大程度地降低资源占用。同时由于摒弃了移位寄存器方案,在降低处理延时方面具有了一定的优势,并且针对不同的自动编码算法具有较好的通用性和可实施性。
本发明所采用的技术方案是:
1.独立的控制单元,主要包含存储单元控制模块和逻辑计算加速单元的控制模块;
2.逻辑计算加速单元,主要包含复用处理器、周期并行卷积计算单元和计算加速单元组成的卷积计算阵列。复用处理器,用以执行对输入像素神经元的接受和最终结果的打包输出,完成卷积结果的激活函数和池化操作等。周期性并行卷积单元和计算单元组成的卷积计算整列通过增加并行度和周期性的卷积拆分计算策略完成卷积操作和加法树操作等;
3.存储单元,主要包括像素存储器、权值存储器、结果存储器和片外动态存储。像素存储器用以储存部分输入的待压缩图像和特征图像。权值存储器用以储存需要的卷积核的部分权值。结果存储器用于存储卷积计算的部分结果。片外动态存储用于储存全部的卷积核权值和需要处理的完整图像以及最终的计算结果,并在控制单元的控制下将所需部分图像和部分权值读入到片上存储,并且把计算结果从片上读出到片外动态存储。
与现有技术相比,本发明的有益效果是在对自动编码算法压缩图像实施硬件加速的同时,相比传统的使用移位寄存器构建卷积窗口,拆分卷积方法的周期性并行卷积计算单元,能够在使用更少的内存下实现更良好的加速效果。特别是针对高分辨的图片,例如4K图片(分辨率为3840*2160),过大的横向像素数导致使用传统的移位寄存器方法将导致耗费大量的片上内存来存储图像数据,影响资源利用和处理延迟,甚至导致设计方案不可行。采用周期性并行卷积计算单元,可以实现针对单行数据进行卷积操作。通过对卷积过程的拆分,降低了资源占用和处理延时。
附图说明
图1为本装置的顶层硬件架构图;
图2为控制单元的运行程序流程图;
图3为逻辑计算加速单元的架构图;
图4为周期性并行卷积单元的卷积窗口和卷积拆分的周期性工作原理示意图;
图5为存储单元的架构图。
具体实施方式
下面结合附图和对本发明的具体实施作更进一步说明。其中自始至终使用相同的名称表示相同或有类似功能的模块。下面通过参考附图描述的实施示例来具体地说明本装置。实施示例选取了分辨率为4K(3840*2160)的图像并且利用了本装置的周期性并行卷积加速能力处理压缩任务,旨在解释本发明,而不能理解为对本发明的限制。
如图1所示为本发明装置的顶层硬件架构图。该种基于卷积自动编码算法的图像压缩硬件加速器装置包含了:
1.控制单元:负责针对存储和计算单元之间的数据交互进行控制;负责对计算单元计算过程进行控制;
2.逻辑计算加速单元:负责完成输入像素神经元的接受、完成卷积操作、加法树操作、激活操作和池化操作等;
3.存储单元:负责存储逻辑计算加速单元需要的部分待压缩的图片、特征图片以及部分权值;负责存储逻辑计算加速单元的部分结果;负责存储计算需要的全部卷积核权值和待处理的完整图像。
如图2所示是控制单元的运行程序流程图,完整的4K图像和卷积核权值存储在片外动态存储上,整个控制流程包括:
1.控制单元控制存储单元将部分图像和部分权值从片外动态存储读取到像素存储器和权值存储器;
2.逻辑计算加速单元的卷积计算加速阵列从像素存储器和权值存储器读取需要的图片数据和权值数据,其中图片数据读取的时候按照逐行读取的方式读入;
3.由于涉及到周期性计算和卷积拆分策略,逻辑计算加速单元需要判断读取的数据是否是原始图片上同一行像素的数据。若返回值为否,则需要执行第2步继续读取需要的图片数据和权值数据;若返回值为是,则计算阵列开始执行计算过程;
4.完成计算过程后,逻辑计算加速单元需要判断是否完成了对应卷积核的卷积窗口数据计算。若返回值为否,则返回第2步直至完成对应的卷积窗口;若返回值为是,则将对应卷积窗口的计算结果送至复用处理器进行激活函数操作和池化操作等;
5.判断是否完成了全部的图像处理任务。若返回值为否,则返回第1步继续执行计算加速任务;若返回值为是,则完成了所有的计算加速任务,整个计算过程结束。
如图3所示是逻辑计算加速单元的架构图,是本加速器装置的计算核心,其工作流程包括:
1.输入待处理的像素数据和权值数据到卷积计算阵列;
2.卷积计算阵列对输入的像素和权值进行周期性的高并行度的计算,其中通过部署多个周期并行卷积计算单元(图中的PE)来提高并行度;通过卷积拆分的方式实现周期性卷积,具体细节在图4中做出详细的解释;
3.卷积计算加速阵列完成计算后将卷积结果输出到复用处理器;
4.复用处理器接受卷积结果并通过内部的激活函数模块和池化模块完成激活操作和池化操作;
5.复用处理器完成计算任务后将最终结果输出。
如图4所示是逻辑计算加速单元中的周期性并行卷积方法中的一个计算单元对应的卷积过程(以8*8维度的卷积核为例),其具体过程包括:
1.将待压缩的图像数据按照逐行形式读入,如图中所示的步骤0至7是分别对应8行像素数据;
2.以步骤0为例,将8*8维度的二维卷积核拆分为8个8*1的子卷积核,每个子卷积核的计算对象对应着待处理图像中的一整行像素;
3.执行步骤0时,首先读取子卷积核0和步骤0对应的行像素数据,在对应位置执行卷积操作,并将卷积过程的结果作为中间结果进行缓存。针对原始图像的3840个像素,在non-overlap的模式下,随着像素数据沿着位移方向移动,对应8*1维度的子卷积核计算会产生480个中间结果,记作中间结果0;
4.完成步骤0之后,继续执行步骤1。首先读取步骤1像素行数据和对应的子卷积1,然后经过卷积计算产生480个中间结果,记作中间结果1;
5.完成步骤1之后需要将中间结果0和1相加记作缓存结果;
6.继续重复上述过程执行步骤2到步骤7,逐步骤缓存中间结果2到7,并与上一步中的缓存结果执行相加操作直到加和完中间结果7,此时获得卷积窗口对应8行数据计算的最终结果,表示一个计算周期结束,获得了3840*8个像素针对8*8卷积核的480个卷积计算结果;
7.继续读取下一个周期需要的数据完成下一个执行周期,重复执行周期性卷积计算过程,直到完成所有的计算任务,获得480*270个卷积计算结果。这就是周期性执行计算加速的计算策略。
如图5所示,为存储单元的架构图,其结构和工作流程包括:
1.所有的待压缩的图像数据和权值数据都存储在片外动态存储上;
2.片外动态存储通过动态存储通信接口与片上存储相连接;
3.片上存储包括权值存储器、图像存储器和结果存储器,分别对应存储待处理的部分权值数据、部分图像数据和经过逻辑计算加速单元计算所得结果;
4.逻辑计算加速单元通过计算权值存储器所输入的权值数据和图像存储器所输入的图像数据,将最终的计算结果输出到结果存储器。
以上所述内容仅为本发明装置的较佳实施例,对本发明而言仅仅是说明性的。本专业技术人员理解,在本发明权利要求所限定的范围内可对其进行诸多变化、修改乃至等效,但都应视为本发明的保护范围。
Claims (9)
1.一种基于卷积自动编码算法的图像压缩硬件加速器装置,其特征在于:由控制单元,逻辑计算加速单元和存储单元三大部分组成。
2.根据权利要求1所述的控制单元,其特征在于:包含数据控制模块和计算操作控制模块。
3.根据权利要求2所述的数据控制模块和计算操作控制模块,其特征在于:数据控制模用于实现如下功能:(a)控制逻辑计算加速单元需要的像素数据和权值从存储单元到逻辑计算加速单元的传输功能;(b)逻辑计算加速单元的处理结果向存储单元的传输功能。
4.根据权利要求1所述的逻辑计算加速单元,其特征在于包括:复用处理器、周期并行卷积计算单元和计算单元组成的卷积计算阵列。
5.根据权利要求4所述的复用处理器,其特征在于:用以执行对输入像素神经元的接受和最终结果的打包输出,包含的激活函数单元和池化单元用于完成卷积结果的激活函数和池化操作等。
6.根据权利要求4所述的周期并行卷积计算单元,其特征在于:通过对高维卷积核的拆分构建出低维度下的周期性的卷积计算操作来适应更高分辨率的图片,降低资源占用,用以执行图像的二维卷积。
7.根据权利要求4所述的计算单元组成的卷积计算阵列,其特征在于:通过计算单元组成的卷积计算阵列,提高了计算的并行度,用于完成单张图像的完整卷积过程。
8.根据权利要求1所述的存储单元,其特征在于:包括像素存储器、权值存储器、结果存储器和片外动态存储器。
9.根据权利要求8所述的像素存储器、权值存储器、结果存储器和片外动态存储器,其特征在于:(a)像素存储器用于存储来自片外动态存储器的部分待压缩的图像以及特征图像;(b)权值存储器用于存储来自片外动态存储器的部分卷积核的权值数据;(c)结果存储器用于存储卷积计算结果经过复用处理器处理后的结果数据,并将结果数据写入到片外动态存储中;(d)片外动态存储用于存储全部的待压缩的图像数据和权值数据,通过动态存储接口与权利要求8中剩余存储器连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010660030.0A CN111800636A (zh) | 2020-07-06 | 2020-07-06 | 一种基于卷积自动编码算法的图像压缩硬件加速器装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010660030.0A CN111800636A (zh) | 2020-07-06 | 2020-07-06 | 一种基于卷积自动编码算法的图像压缩硬件加速器装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111800636A true CN111800636A (zh) | 2020-10-20 |
Family
ID=72810681
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010660030.0A Pending CN111800636A (zh) | 2020-07-06 | 2020-07-06 | 一种基于卷积自动编码算法的图像压缩硬件加速器装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111800636A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107633297A (zh) * | 2017-03-10 | 2018-01-26 | 南京大学 | 一种基于并行快速fir滤波器算法的卷积神经网络硬件加速器 |
CN108665063A (zh) * | 2018-05-18 | 2018-10-16 | 南京大学 | 用于bnn硬件加速器的双向并行处理卷积加速系统 |
CN109886400A (zh) * | 2019-02-19 | 2019-06-14 | 合肥工业大学 | 基于卷积核拆分的卷积神经网络硬件加速器系统及其计算方法 |
CN110543934A (zh) * | 2019-08-14 | 2019-12-06 | 北京航空航天大学 | 一种用于卷积神经网络的脉动阵列计算结构及方法 |
US20200097728A1 (en) * | 2018-09-24 | 2020-03-26 | Apical Ltd | Video data processing |
-
2020
- 2020-07-06 CN CN202010660030.0A patent/CN111800636A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107633297A (zh) * | 2017-03-10 | 2018-01-26 | 南京大学 | 一种基于并行快速fir滤波器算法的卷积神经网络硬件加速器 |
CN108665063A (zh) * | 2018-05-18 | 2018-10-16 | 南京大学 | 用于bnn硬件加速器的双向并行处理卷积加速系统 |
US20200097728A1 (en) * | 2018-09-24 | 2020-03-26 | Apical Ltd | Video data processing |
CN109886400A (zh) * | 2019-02-19 | 2019-06-14 | 合肥工业大学 | 基于卷积核拆分的卷积神经网络硬件加速器系统及其计算方法 |
CN110543934A (zh) * | 2019-08-14 | 2019-12-06 | 北京航空航天大学 | 一种用于卷积神经网络的脉动阵列计算结构及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107609641B (zh) | 稀疏神经网络架构及其实现方法 | |
US20210224125A1 (en) | Operation Accelerator, Processing Method, and Related Device | |
CN110413255B (zh) | 人工神经网络调整方法和装置 | |
CN113326930B (zh) | 数据处理方法、神经网络的训练方法及相关装置、设备 | |
CN111897579A (zh) | 图像数据处理方法、装置、计算机设备和存储介质 | |
CN110880038A (zh) | 基于fpga的加速卷积计算的系统、卷积神经网络 | |
CN111986278B (zh) | 图像编码装置、概率模型生成装置和图像压缩系统 | |
CN107256424B (zh) | 三值权重卷积网络处理系统及方法 | |
CN109993293B (zh) | 一种适用于堆叠式沙漏网络的深度学习加速器 | |
Chang et al. | Reducing MAC operation in convolutional neural network with sign prediction | |
CN113066018A (zh) | 一种图像增强方法及相关装置 | |
CN115423081A (zh) | 一种基于fpga的cnn_lstm算法的神经网络加速器 | |
Ko et al. | Design and analysis of a neural network inference engine based on adaptive weight compression | |
CN113792621B (zh) | 一种基于fpga的目标检测加速器设计方法 | |
WO2022179588A1 (zh) | 一种数据编码方法以及相关设备 | |
US20220103831A1 (en) | Intelligent computing resources allocation for feature network based on feature propagation | |
CN113630375A (zh) | 使用四叉树方法的参数的压缩设备及方法 | |
CN116051356A (zh) | 一种基于图像快速风格迁移方法及fpga系统 | |
CN113240101B (zh) | 卷积神经网络软硬件协同加速的异构SoC实现方法 | |
CN111800636A (zh) | 一种基于卷积自动编码算法的图像压缩硬件加速器装置 | |
CN116095183A (zh) | 一种数据压缩方法以及相关设备 | |
WO2022022176A1 (zh) | 一种图像处理方法以及相关设备 | |
CN115409150A (zh) | 一种数据压缩方法、数据解压方法及相关设备 | |
CN115409697A (zh) | 一种图像处理方法及相关装置 | |
CN114118415A (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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20201020 |
|
WD01 | Invention patent application deemed withdrawn after publication |