CN109451317A - A kind of image compression system and method based on FPGA - Google Patents

A kind of image compression system and method based on FPGA Download PDF

Info

Publication number
CN109451317A
CN109451317A CN201811610954.9A CN201811610954A CN109451317A CN 109451317 A CN109451317 A CN 109451317A CN 201811610954 A CN201811610954 A CN 201811610954A CN 109451317 A CN109451317 A CN 109451317A
Authority
CN
China
Prior art keywords
module
image
compressed
image data
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
CN201811610954.9A
Other languages
Chinese (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 CN201811610954.9A priority Critical patent/CN109451317A/en
Publication of CN109451317A publication Critical patent/CN109451317A/en
Pending legal-status Critical Current

Links

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/42Methods 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)

Abstract

The invention belongs to field of image processings, are related to a kind of image compression system and method based on FPGA, which includes: interactive module, for receiving compression of images request, obtain the image data that image data and output to be compressed have been compressed;Image Acquisition scheduler module is split image data to be compressed, sorts;First cache module, for the image data after the sequence of cache image collection scheduling module segmentation;Compression algorithm module, for being compressed to the image data after segmentation sequence;Second cache module, for caching block of pixels and compressed image data to be compressed.Image compression system based on FPGA of the invention is set in FPGA, and all processes such as segmentation, sequence and compression of image data are completed in FPGA, is realized image compression system using FPGA, is greatly improved compression speed;Compression algorithm is optimized, reduction degree is improved.

Description

A kind of image compression system and method based on FPGA
Technical field
The invention belongs to field of image processings, are related to a kind of image compression system and method based on FPGA.
Background technique
In recent years, constantly advancing with network technology, network information resource has become extremely abundant, various each The information of sample is full of around people, announces the arriving of big data era.In order to meet user under limited conditions to net The demand of network data resource, storing and transmitting again after being compressed to data just becomes to be highly desirable.Data are pressed When the load of processor can not only be reduced by, which storing and transmitting again after contracting, can also save bandwidth and reduce the transmission of data Between, improve the surfing of network.
Now, substantially Gzip algorithm used in server is all software realization, and software realization will necessarily occupy one Partial cpu resource causes the waste of cpu resource unavoidably.Present FPGA (field programmable gate array) technology is sent out rapidly Exhibition needs the process run on CPU that can be transferred to FPGA originally to realize identical effect, reduces system power dissipation.It is existing 1) technology, which has the following deficiencies:, can not fully rely on FPGA to realize image compression system, other chips is needed to participate in;2) algorithm Compression ratio is high, but is distorted serious;3) general sram cache is used, memory rate is slower;4) need caching in FPGA multiple whole Picture causes FPGA resource insufficient.
Summary of the invention
The present invention proposes a kind of image compression system and method based on FPGA to solve the above-mentioned problems, uses FPGA reality Existing image compression system, greatly improves compression speed, optimizes compression algorithm, improve reduction degree.
To achieve the goals above, the technical scheme is that
A kind of image compression system based on FPGA, including interactive module, Image Acquisition scheduler module, the first caching mould Block, compression algorithm module and the second cache module,
The interactive module obtains what image data and output to be compressed had been compressed for receiving compression of images request Image data;
Described image collection scheduling module is for being split image data to be compressed, sorting;
First cache module is for the image data after the sequence of cache image collection scheduling module segmentation;
The compression algorithm module is used to compress the image data after segmentation sequence;
Second cache module is for caching compressed image data.
A kind of image compression system based on FPGA as described above, described image collection scheduling module is by figure to be compressed As data are divided into multiple block of pixels of 8*8,16*16 or 32*32 pixel, and the pixel arrays A0, A1 that resequences, A2, A3……An。
A kind of image compression system based on FPGA as described above, the compression algorithm module includes algorithm logic list Member, read-write cell and format conversion unit, the arithmetic logic unit is for being arranged sample frequency, and the read-write cell is for reading Image data to be compressed is write, the format conversion unit is used for compressing image data.
A kind of image compression system based on FPGA as described above, the compression algorithm module are adopted again using multiresolution Sample compression algorithm compresses block of pixels.
A kind of image compression system based on FPGA as described above, first cache module and the second cache module are equal It is stored using DDR.
A kind of image compression system based on FPGA as described above, described image collection scheduling module every time only segmentation, Sort an image data, when the image data by compression complete when, then divide, sort next image data.
The invention also discloses a kind of method for compressing image based on FPGA, comprising the following steps:
Interactive module obtains image data to be compressed;
First image data to be compressed is divided, is sorted by Image Acquisition scheduler module;
Block of pixels after the compression segmentation sequence of compression algorithm module;
Second image data that Image Acquisition scheduler module is divided, sorts to be compressed, the compression segmentation of compression algorithm module The n-th image data that block of pixels ... ... Image Acquisition scheduler module after sequence is divided, sorts to be compressed, compression algorithm mould Block of pixels after block compression segmentation sequence, until all image datas to be compressed are completed in compression.
A kind of method for compressing image based on FPGA as described above, the interactive module directly interacts with DMA, acquisition to The image data of compression
A kind of method for compressing image based on FPGA as described above, described image collection scheduling module is by be compressed the The specific steps that one image data is split, sorts are as follows: Image Acquisition scheduler module is by first picture number to be compressed According to being divided into multiple block of pixels of 8*8 or 16*16 pixel, and pixel arrays A0, A1, A2, A3 ... An caching of resequencing In the first cache module, block of pixels A0, A1 of pixel array is read, is cached in the second cache module.
A kind of as described above method for compressing image based on FPGA, the compression algorithm module successively packed pixel block Specific steps are as follows: compression algorithm module reads block of pixels A0, A1 being cached in the second cache module, is adopted again using multiresolution Sample compression algorithm carries out packed pixel block, and the second cache module reads the block of pixels of pixel array in the first cache module at this time A2, A3, and be cached in the second cache module;After compression algorithm module, which is compressed, completes block of pixels A0, A1, by compressed picture Plain block A0, A1 caching and the second memory module, then read block of pixels A2, A3 being cached in the second cache module and are pressed Contracting, the second cache module reads the block of pixels ... of pixel array in the first cache module in order at this time, until compression is completed Whole block of pixels of the image data.
The invention has the benefit that
The present invention solves the case where compression of images occupies excess CPU resources, by the way of directly interacting with DMA, mentions High transmission rate;Image compression system based on FPGA of the invention is set in FPGA, the segmentation of image data, sequence and The all processes such as compression are completed in FPGA, are realized image compression system using FPGA, are greatly improved compression speed;It is excellent Change compression algorithm, improves reduction degree.The present invention also uses pipeline processing mode, keeps whole system work more smooth, Improve compression speed.
Detailed description of the invention
Fig. 1 is the structural schematic diagram of the image compression system of the invention based on FPGA.
Fig. 2 is the flow diagram of the method for compressing image of the invention based on FPGA.
Specific embodiment
In order to clarify the technical characteristics of the invention, below by specific embodiment, and its attached drawing is combined, to this hair It is bright to be described in detail.According to following embodiments, the present invention may be better understood.However, those skilled in the art is easy Understand, the following examples are only intended to illustrate the technical solution of the present invention more clearly, and it is of the invention to cannot be used as a limitation limitation Protection scope.
Fig. 1 is a kind of structural schematic diagram of image compression system based on FPGA.As shown in Figure 1, a kind of based on FPGA's Image compression system, including interactive module, Image Acquisition scheduler module, the first cache module, compression algorithm module and second are slow Storing module.
The interactive module is interacted by AXI interface with DMA, for receiving compression of images request, obtains figure to be compressed The image data compressed as data and output.When needing compressing image data, CPU sends compression of images to interactive module Request, and image data to be compressed is stored to external DDR, after interactive module receives compression of images request, connection is generated with DMA System, DMA read image data to be compressed from external DDR, are sent to the compression of images the present invention is based on FPGA by AXI interface The AXI interface of system, interactive module obtain image data to be compressed.
Described image collection scheduling module is for being split image data to be compressed, sorting.Image Acquisition scheduling Module calculates image data size to be compressed, and image data to be compressed is divided into the more of 8*8,16*16 or 32*32 pixel A block of pixels, and pixel arrays A0, A1, A2, A3 ... An that resequences.The quantity of block of pixels are as follows: pixel/(2n*2n).Figure As only one segmentation, sequence image data every time of collection scheduling module, when the image data is completed by compression, then divides, arranges The next image data of sequence.
First cache module is for the image data after the sequence of cache image collection scheduling module segmentation.First caching Module only caches the image data after a segmentation sequence every time.
The compression algorithm module is used to compress the image data after segmentation sequence.Compression algorithm module includes calculating Method logic unit, read-write cell and format conversion unit, the arithmetic logic unit are used to that sampling number and sample frequency to be arranged, The read-write cell is used for compressing image data for reading and writing image data to be compressed, the format conversion unit.Compression is calculated Method module compresses block of pixels using RBC Algorithm compression algorithm.Sample frequency can be total in fpga chip Line frequency is determined by the hardware and PLL of FPGA board, is arranged by PLL.Sampling number is sampled block of pixels Number.
Second cache module is for caching image block to be compressed, and the compressed image data of caching.Second Compressed image data is sent to external DDR by interactive module by cache module.
First cache module and the second cache module are all made of DDR storage, and memory rate is fast.
The image compression system based on FPGA further includes interrupt location, and interrupt location generates interruption before being compressed It to CPU, notifies when CPU starts compressing image data, obtains the operating rights of DMA, when an image data is completed in compression Afterwards, it generates and interrupts to CPU, notify there is compressed image data in external DDR in CPU.
The image compression system is realized that general a large amount of image data is stored in external DDR or hard disk by FPGA In, in FPGA, one or two image data of one acquisition is split, and is divided to image data substep, is entirely being compressed In the process, primary in image compression system only to cache one or two pictures, FPGA cost is saved, and three-level DDR is divided to store, The entire image data compression procedure that splits uses multilevel pipelining.
Fig. 2 is a kind of flow diagram of method for compressing image based on FPGA.As shown in Fig. 2, a kind of based on FPGA's Method for compressing image, comprising the following steps:
S1: interactive module receives compression of images request, obtains image data to be compressed:
The interactive module is interacted by AXI interface with DMA, for receiving compression of images request, obtains figure to be compressed The image data compressed as data and output.When needing compressing image data, CPU sends compression of images to interactive module Request, and image data to be compressed is stored to external DDR, after interactive module receives compression of images request, interrupt module to CPU sends signal, and notice CPU starts compressing image data, obtains the operating rights of DMA, contacts with DMA generation, DMA is from outside Image data to be compressed is read in DDR, is connect by the AXI that AXI interface is sent to the image compression system the present invention is based on FPGA Mouthful, interactive module obtains image data to be compressed.
S2: first image data to be compressed is divided, is sorted by Image Acquisition scheduler module:
First image data to be compressed is divided into 8*8,16*16 or 32*32 pixel by Image Acquisition scheduler module Multiple block of pixels, and pixel arrays A0, A1, A2, A3 ... An that resequences are cached in the first cache module, read pixel Block of pixels A0, A1 of array is cached in the second cache module.
S3: the block of pixels after the compression segmentation sequence of compression algorithm module:
Compression algorithm module reads block of pixels A0, A1 being cached in the second cache module, using RBC Algorithm Compression algorithm carry out packed pixel block, at this time the second cache module read the first cache module in pixel array block of pixels A2, A3, and be cached in the second cache module;After compression algorithm module, which is compressed, completes block of pixels A0, A1, by compressed pixel Then block A0, A1 caching and the second memory module read block of pixels A2, A3 being cached in the second cache module and are compressed, The second cache module reads the block of pixels ... of pixel array in the first cache module in order at this time, until the figure is completed in compression As whole block of pixels of data.Compressed image data is sent to external DDR by interactive module by the second cache module.
It after the image data is completed in compression, generates and interrupts to CPU, notify there is compressed figure in external DDR in CPU As data.
S4: second image data that Image Acquisition scheduler module is divided, sorts to be compressed, the compression point of compression algorithm module The n-th image data that block of pixels ... ... Image Acquisition scheduler module after cutting sequence is divided, sorts to be compressed, compression algorithm Block of pixels after module compression segmentation sequence, until all image datas to be compressed are completed in compression.
Image data after the completion of all compressions is deposited in external DDR, waiting for CPU operation.
The above is only the specific embodiment of the application, is made skilled artisans appreciate that or realizing this Shen Please, the protection scope of the application can not be limited with this.All equivalent change or modifications done according to the application Spirit Essence, all It should contain in the protection scope of lid the application.

Claims (10)

1. a kind of image compression system based on FPGA, which is characterized in that including interactive module, Image Acquisition scheduler module, One cache module, compression algorithm module and the second cache module,
The interactive module obtains the image that image data and output to be compressed have been compressed for receiving compression of images request Data;
Described image collection scheduling module is for being split image data to be compressed, sorting;
First cache module is for the image data after the sequence of cache image collection scheduling module segmentation;
The compression algorithm module is used to compress the image data after segmentation sequence;
Second cache module is for caching compressed image data.
2. a kind of image compression system based on FPGA as described in claim 1, which is characterized in that described image collection scheduling Image data to be compressed is divided into multiple block of pixels of 8*8,16*16 or 32*32 pixel, and pixel of resequencing by module Array A0, A1, A2, A3 ... An.
3. a kind of image compression system based on FPGA as described in claim 1, which is characterized in that the compression algorithm module Including arithmetic logic unit, read-write cell and format conversion unit, the arithmetic logic unit is described for sample frequency to be arranged Read-write cell is used for compressing image data for reading and writing image data to be compressed, the format conversion unit.
4. a kind of image compression system based on FPGA as claimed in claim 3, which is characterized in that the compression algorithm module Block of pixels is compressed using RBC Algorithm compression algorithm.
5. a kind of image compression system based on FPGA as described in claim 1, which is characterized in that first cache module DDR storage is all made of with the second cache module.
6. a kind of image compression system based on FPGA as described in claim 1, which is characterized in that described image collection scheduling Module every time only divide, sort an image data, when the image data by compression complete when, then divide, sort next figure As data.
7. a kind of method for compressing image based on FPGA, which comprises the following steps:
Interactive module obtains image data to be compressed;
First image data to be compressed is divided, is sorted by Image Acquisition scheduler module;
Block of pixels after the compression segmentation sequence of compression algorithm module;
Second image data that Image Acquisition scheduler module is divided, sorts to be compressed, the compression segmentation sequence of compression algorithm module The n-th image data that block of pixels ... ... Image Acquisition scheduler module afterwards is divided, sorts to be compressed, compression algorithm module pressure The block of pixels after sequence is cut in division, until all image datas to be compressed are completed in compression.
8. a kind of method for compressing image based on FPGA as claimed in claim 7, which is characterized in that the interactive module is direct It is interacted with DMA, obtains image data to be compressed.
9. a kind of method for compressing image based on FPGA as claimed in claim 7, which is characterized in that described image collection scheduling The specific steps that first image data to be compressed is split, is sorted by module are as follows: Image Acquisition scheduler module will be wait press First image data of contracting is divided into multiple block of pixels of 8*8 or 16*16 pixel, and the pixel arrays A0, A1 that resequences, A2, A3 ... An are cached in the first cache module, read block of pixels A0, A1 of pixel array, are cached in the second cache module In.
10. a kind of method for compressing image based on FPGA as claimed in claim 9, which is characterized in that the compression algorithm mould The specific steps of block successively packed pixel block are as follows: compression algorithm module read the block of pixels A0 being cached in the second cache module, A1 carries out packed pixel block using RBC Algorithm compression algorithm, and the second cache module reads the first cache module at this time Block of pixels A2, A3 of middle pixel array, and be cached in the second cache module;It is compressed when compression algorithm module and completes block of pixels After A0, A1, by compressed block of pixels A0, A1 caching and the second memory module, then reads and be cached in the second cache module Block of pixels A2, A3 compressed, the second cache module reads the pixel of pixel array in the first cache module in order at this time Block ..., until whole block of pixels of the image data are completed in compression.
CN201811610954.9A 2018-12-27 2018-12-27 A kind of image compression system and method based on FPGA Pending CN109451317A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811610954.9A CN109451317A (en) 2018-12-27 2018-12-27 A kind of image compression system and method based on FPGA

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811610954.9A CN109451317A (en) 2018-12-27 2018-12-27 A kind of image compression system and method based on FPGA

Publications (1)

Publication Number Publication Date
CN109451317A true CN109451317A (en) 2019-03-08

Family

ID=65538320

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811610954.9A Pending CN109451317A (en) 2018-12-27 2018-12-27 A kind of image compression system and method based on FPGA

Country Status (1)

Country Link
CN (1) CN109451317A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110913225A (en) * 2019-11-19 2020-03-24 北京奇艺世纪科技有限公司 Image encoding method, image encoding device, electronic device, and computer-readable storage medium
CN111193948A (en) * 2020-01-07 2020-05-22 上海步频电子科技有限公司 Picture transmission and display method and system of display terminal
CN111556322A (en) * 2020-06-01 2020-08-18 哈尔滨理工大学 FPGA-based rapid image compression and transmission system
CN111665756A (en) * 2020-06-11 2020-09-15 合肥悦芯半导体科技有限公司 Method and device for realizing sampling of asynchronous signals based on FPGA (field programmable Gate array), electronic equipment and readable storage medium
JP2022525911A (en) * 2019-03-18 2022-05-20 芯原微電子(成都)有限公司 Cooperative access method and system of external memory, coordinating access architecture

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107347158A (en) * 2017-06-01 2017-11-14 西南电子技术研究所(中国电子科技集团公司第十研究所) Aircraft load terminal image compression method

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107347158A (en) * 2017-06-01 2017-11-14 西南电子技术研究所(中国电子科技集团公司第十研究所) Aircraft load terminal image compression method

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
程子敬,周孝宽: "多分辨率重采样压缩算法硬件系统体系结构研究", 《中国空间科学技术》 *
程子敬,姜宏旭,周孝宽: "多分辨率重采样实时解压缩硬件系统研制", 《中国空间科学技术》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022525911A (en) * 2019-03-18 2022-05-20 芯原微電子(成都)有限公司 Cooperative access method and system of external memory, coordinating access architecture
CN110913225A (en) * 2019-11-19 2020-03-24 北京奇艺世纪科技有限公司 Image encoding method, image encoding device, electronic device, and computer-readable storage medium
CN110913225B (en) * 2019-11-19 2022-03-08 北京奇艺世纪科技有限公司 Image encoding method, image encoding device, electronic device, and computer-readable storage medium
CN111193948A (en) * 2020-01-07 2020-05-22 上海步频电子科技有限公司 Picture transmission and display method and system of display terminal
CN111556322A (en) * 2020-06-01 2020-08-18 哈尔滨理工大学 FPGA-based rapid image compression and transmission system
CN111665756A (en) * 2020-06-11 2020-09-15 合肥悦芯半导体科技有限公司 Method and device for realizing sampling of asynchronous signals based on FPGA (field programmable Gate array), electronic equipment and readable storage medium

Similar Documents

Publication Publication Date Title
CN109451317A (en) A kind of image compression system and method based on FPGA
CN110147251B (en) System, chip and calculation method for calculating neural network model
CN101882302B (en) Motion blur image restoration system based on multi-core
US20140086309A1 (en) Method and device for encoding and decoding an image
CN106453572B (en) Method and system based on Cloud Server synchronous images
CN112235579B (en) Video processing method, computer-readable storage medium and electronic device
CN105700821B (en) Semiconductor device and compression/decompression method thereof
CN102724499B (en) Variable-compression ratio image compression system and method based on FPGA
WO2023124428A1 (en) Chip, accelerator card, electronic device and data processing method
CN113918356B (en) Method and device for quickly synchronizing data based on CUDA (compute unified device architecture), computer equipment and storage medium
CN109089120B (en) Analysis-aided encoding
De Cea-Dominguez et al. GPU-oriented architecture for an end-to-end image/video codec based on JPEG2000
CN111083408B (en) Method, system and equipment for processing video storage service
CN103975583A (en) Capturing multiple video channels for video analytics and encoding
CN112068965A (en) Data processing method and device, electronic equipment and readable storage medium
CN116188241A (en) Graphics processor, method of operation, and machine-readable storage medium
CN202679478U (en) Digital image acquisition and processing platform
CN116561202A (en) Method and device for serializing object
KR102642744B1 (en) Cooperative access method and system for external memory, cooperative access architecture
CN103747253B (en) A kind of video data encoder transmission method based on FIFO
KR20090124177A (en) Device for processing image of large size into scaled image tiles and the method therefor
US7292729B2 (en) Device, system, and method for contiguous compressed data
CN212873459U (en) System for data compression storage
CN103918002B (en) Memory Controller for video analysis and coding
CN112232498B (en) Data processing device, integrated circuit chip, electronic equipment, board card and method

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: 20190308