CN116055725A - Satellite image lossless compression system and method based on JPEG2000 - Google Patents
Satellite image lossless compression system and method based on JPEG2000 Download PDFInfo
- Publication number
- CN116055725A CN116055725A CN202211700315.8A CN202211700315A CN116055725A CN 116055725 A CN116055725 A CN 116055725A CN 202211700315 A CN202211700315 A CN 202211700315A CN 116055725 A CN116055725 A CN 116055725A
- Authority
- CN
- China
- Prior art keywords
- data
- module
- transformation
- coding
- bit
- 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.)
- Withdrawn
Links
- 238000007906 compression Methods 0.000 title claims abstract description 51
- 230000006835 compression Effects 0.000 title claims abstract description 48
- 238000000034 method Methods 0.000 title claims abstract description 47
- 230000009466 transformation Effects 0.000 claims abstract description 61
- 238000012545 processing Methods 0.000 claims abstract description 27
- 238000007781 pre-processing Methods 0.000 claims abstract description 21
- 239000000872 buffer Substances 0.000 claims abstract description 18
- 230000000903 blocking effect Effects 0.000 claims abstract description 8
- 230000008569 process Effects 0.000 claims description 18
- 238000006243 chemical reaction Methods 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 claims description 9
- 238000003860 storage Methods 0.000 claims description 9
- 238000013507 mapping Methods 0.000 claims description 7
- 238000005457 optimization Methods 0.000 claims description 7
- 230000008520 organization Effects 0.000 claims description 6
- 238000013508 migration Methods 0.000 claims description 5
- 230000005012 migration Effects 0.000 claims description 5
- 238000013461 design Methods 0.000 claims description 4
- 230000003139 buffering effect Effects 0.000 claims description 3
- 238000009826 distribution Methods 0.000 claims description 2
- 230000009191 jumping Effects 0.000 claims description 2
- 238000012216 screening Methods 0.000 claims description 2
- 238000004140 cleaning Methods 0.000 claims 2
- 238000007670 refining Methods 0.000 claims 2
- 238000012790 confirmation Methods 0.000 claims 1
- 238000000926 separation method Methods 0.000 claims 1
- 230000017105 transposition Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012360 testing method Methods 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- 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
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/63—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
-
- 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/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
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)
Abstract
The invention discloses a satellite image lossless compression system and a satellite image lossless compression method based on JPEG2000, wherein the system comprises an image preprocessing module, a discrete wavelet transformation module, a bit plane coding module, an MQ arithmetic coding module and a rate distortion optimizing module; the invention realizes the integral hardware scheme of the JPEG2000 compression system aiming at the requirements of satellite images on quality and compression speed. Wavelet transformation is realized by adopting a blocking processing mode, and MQ arithmetic coding is realized by adopting a four-stage pipeline. Aiming at the problem that the rate distortion module is complex to realize, a bit stream file with a final correct format is output by controlling a code rate information table, an address information unit and a compressed data buffer unit through a state machine.
Description
Technical Field
The invention relates to the technical field of image compression processing, in particular to a satellite image lossless compression system and method based on JPEG 2000.
Background
Image compression has received widespread attention since the popularity of computers as part of the widespread use of image processing. Today, due to the development of mobile communication and the internet, the demand for images is increasing, and accordingly, a huge pressure is put on a limited transmission bandwidth and storage space. The classical image compression scheme is JPEG, and a lossy compression image can be obtained by discarding non-sensitive information, so that the method is suitable for daily life and under the condition of low requirement on image precision, but the JPEG static compression algorithm has serious distortion under low code rate, so that the method is not suitable for the fields of satellite image transmission, medical image, monitoring video and the like which are sensitive to image distortion. In addition, especially in satellite systems and monitoring systems, the real-time performance of the compression process is also under test while the image accuracy requirements are improved. Therefore, the lossless image compression encoder based on JPEG2000 can operate on an embedded development platform FPGA, and the compression rate of equipment is improved while lossless compression is ensured.
Disclosure of Invention
Aiming at the defects existing in the prior art, the invention provides a satellite image lossless compression system and method based on JPEG 2000.
The invention aims to provide a satellite image lossless compression encoder with high compression rate and good compression instantaneity.
The satellite image lossless compression system based on JPEG2000 comprises an image preprocessing module, a discrete wavelet transformation module, a bit plane coding module, an MQ arithmetic coding module and a rate distortion optimizing module.
The image preprocessing module is used for preprocessing the acquired satellite image data, providing a uniform format for different types of images and facilitating subsequent processing. The image preprocessing module comprises three links: image blocking, DC level shifting, and component transformation.
The discrete wavelet transformation module comprises a 5/3 filter and a de-interleaving unit. The 5/3 filter performs discrete wavelet transform on the image data after component transformation by a 5/3 wavelet transform algorithm. The so-called 5/3 wavelet transform algorithm, i.e. the calculation process, comprises 5 high-pass filter coefficients and 3 low-pass filter coefficients. The 5/3 filter buffers the received image data, and the input image is subjected to row transformation and then column transformation so as to complete two-dimensional wavelet transformation.
The wavelet coefficients obtained by the row-column transformation of the de-interleaving unit are arranged according to the sequence of the original data, so that the high-frequency coefficients and the low-frequency coefficients in the wavelet coefficients obtained by the row-column transformation are required to be separated through de-interleaving treatment and finally divided into four sub-band matrixes of LL, LH, HL and HH, and the sub-band matrixes are respectively stored in four RAMs with continuous addresses. Wherein LL is a low-frequency component in the horizontal direction and the vertical direction, LH is a low-frequency component in the horizontal direction and a high-frequency component in the vertical direction, HL is a high-frequency component in the horizontal direction and a low-frequency component in the vertical direction, and HH is a high-frequency component in the horizontal direction and the vertical direction.
The bit plane coding module is used for coding the wavelet coefficients of the four sub-bands after de-interleaving by taking the bit as the minimum unit. The data is divided into bit planes of different levels, L bit planes according to the significant bit length L of the wavelet coefficients, the encoding ending from the most significant bit plane (MSB) with non-zero elements to the least significant bit plane (LSB). Each bit plane can be broken down into three channels: an importance propagation path (SSP), an amplitude refinement path (MRP), and a clean-up path (CUP). The data is divided into three different channels by the global control unit via the enable signals of the three channels. The data of different channels are respectively encoded to obtain decision bit information D and context information CX (context).
The MQ arithmetic coding module is configured to receive the decision bit information D and the context information CX transmitted from the bit plane coding module, and obtain the compressed data CD by sequence mapping. In the hardware implementation, a register A and a register C are set, and the probability interval width a and the lower limit C of the probability interval are respectively stored, wherein Qe represents the probability of the current probability interval. And during processing, the MQ arithmetic coding module is realized by adopting a four-stage pipeline, and a lossless compressed code stream B is generated.
The rate distortion optimization module is used for adjusting, adjusting and arranging the inside of each code stream and then outputting the code streams. After bit plane coding and MQ arithmetic coding, the generated code stream is embedded, and the code stream B needs to be recombined and code rate controlled to be integrated into the code stream conforming to the JPEG2000 standard, so that the compressed data can be conveniently decoded.
In particular, since the JPEG compression standard commonly used in life adopts a lossy compression method in low bit rate encoding, the distortion of the decoded image block is obvious. The main reason is that the core of the JPEG compression algorithm is the discrete cosine transform and discards the high frequency part with less information energy. The invention focuses on satellite image compression technology with higher requirement on image precision, researches JPEG2000 processing standard, and designs a hardware structure suitable for acceleration with FPGA.
JPEG2000 is divided into lossy compression and lossless compression, and the lossless compression technique is adopted in the present invention, and for brevity, the JPEG2000 mentioned below refers to lossless compression. In hardware design, the whole system is divided into five modules according to functions: the device comprises an image preprocessing module, a discrete wavelet transformation module, a bit plane coding module, an MQ arithmetic coding module and a rate distortion optimizing module. During processing, the system firstly carries out preprocessing on the acquired image data, then carries out discrete wavelet transformation on the obtained preprocessed data, and then carries out three-stage encoding on the transformed wavelet coefficients, thus generating the corresponding compressed bit stream file.
The satellite image lossless compression method based on JPEG2000 comprises the following steps:
the method comprises the steps of firstly, preprocessing acquired satellite image data through an image preprocessing module, and providing a unified format for different types of images so as to facilitate the subsequent processing by using an encoder. The image preprocessing comprises three links: image blocking, DC level shifting, and component transformation.
And step two, performing 5/3 wavelet transformation algorithm processing on the image data after component transformation through a 5/3 filter in the discrete wavelet transformation module.
And thirdly, separating high-frequency coefficients from low-frequency coefficients in the wavelet coefficients by a de-interleaving unit in the two-dimensional discrete wavelet transform module.
And fourthly, coding wavelet coefficients of the four deinterleaved subbands by using a bit plane coding module by taking bits as a minimum unit so as to further eliminate related information among the coefficients, reduce redundant information, and then outputting the redundant information and performing MQ arithmetic coding based on probability interval coding.
And fifthly, receiving D and CX transmitted by the bit plane coding code block through the MQ arithmetic coding module, and obtaining compressed data CD through sequence mapping.
Step six, through the rate distortion optimizing module, the inside of each code stream is adjusted and arranged, and then the code streams are output.
The invention has the following beneficial effects:
the satellite image lossless compression system and the satellite image lossless compression method based on JPEG2000, provided by the invention, aim at the requirements of satellite images on quality and compression speed, and realize the integral hardware scheme of the JPEG2000 compression system. Wavelet transformation is realized by adopting a blocking processing mode, and MQ arithmetic coding is realized by adopting a four-stage pipeline. Aiming at the problem that the rate distortion module is complex to realize, a bit stream file with a final correct format is output by controlling a code rate information table, an address information unit and a compressed data buffer unit through a state machine.
Drawings
Fig. 1: the embodiment of the invention discloses an integral structure diagram of an image compression system;
fig. 2: the hardware structure diagram of the filter of the embodiment 5/3 of the invention;
fig. 3: the bit plane coding module of the embodiment of the invention forms a diagram;
fig. 4: the MQ arithmetic coding module of the embodiment of the invention inputs and outputs;
fig. 5: the embodiment of the invention relates to an internal structure diagram of a rate distortion optimization module.
Detailed Description
The technical scheme of the invention is further described below with reference to the accompanying drawings.
FIG. 1 is a block diagram of an image compression system according to an embodiment of the present invention;
the satellite image lossless compression method based on JPEG2000 comprises the following specific steps:
the method comprises the steps of firstly, preprocessing acquired satellite image data through an image preprocessing module, and providing a unified format for different types of images so as to facilitate the subsequent processing by using an encoder. The image preprocessing comprises three links: image blocking, DC level shifting, and component transformation.
Firstly, dividing an image into blocks, and dividing acquired satellite image data into rectangular blocks which are not overlapped with each other and have the same size. Each block is regarded as a separate image, and is independently encoded in units of blocks, so that memory capacity pressure can be reduced and parallel processing is facilitated. On the other hand, decoding processing of a partial image may be selected at the time of decoding.
Then DC level shifting, eliminating the DC offset component in the signal. The original satellite image data is input with unsigned numbers, the compression process uses signed numbers, and the low-frequency information energy in the satellite image data is larger than the high-frequency information energy, so that the direct-current component in the image needs to be removed, the data range is symmetrical about the zero point, and the energy is concentrated at the low frequency.
And finally a component transformation. For color or multi-component images, a point-by-point component transformation is also necessary prior to wavelet transformation to convert satellite image data from RGB space to YUV space, suitable for lossless compression. The formula for the component transformation required for lossless compression is as follows:
and step two, performing 5/3 wavelet transformation algorithm processing on the image data after component transformation through a 5/3 filter in the discrete wavelet transformation module, wherein the algorithm comprises 5 high-pass filter coefficients and 3 low-pass filter coefficients. The hardware structure of the 5/3 filter comprises a row transformation unit, a column transformation unit and an intermediate transpose buffer unit, and also comprises necessary registers and counters for buffering intermediate data and counts. The 5/3 filter structure is shown in figure 2. The one-dimensional discrete wavelet transformation is divided into row transformation and column transformation, and image data is sequentially subjected to row transformation and column transformation, so that coefficients after the two-dimensional wavelet transformation are obtained.
Specifically, the implementation of the 5/3 wavelet transform algorithm is divided into three steps: splitting process, high frequency coefficient calculation process and low frequency coefficient calculation process. Both the row transform unit and the column transform unit need to go through these three processes.
The splitting process divides image data into an odd sequence and an even sequence, wherein x (2n+1) represents the odd sequence, x (2 n) represents the even sequence, and parity data is alternately transmitted, and the method comprises the following steps:
wherein d (n) is a high frequency coefficient, s (n) is a low frequency coefficient,representing rounding down N. As can be seen from the formula, when calculating the high frequency coefficient d (n), it is necessary to obtain the values of the odd sequence x (2n+1) and the two even sequences before and after it. In calculating the low frequency coefficient s (n), it is necessary to obtain the even sequence x (2 n) and the values of the two high frequency coefficients d (n) before and after the even sequence x (2 n). In the high-frequency coefficient calculation process, two-beat caching is carried out on even data by using two registers. When an odd sequence data x (2n+1) is input, the buffered data and x (2n+1) are calculated by the formula (3), and d (n) is obtained. In calculating the low frequency coefficient, two registers are used for buffering two high frequency coefficient data in the same way, and when the even sequence x (2 n) is detected, the low frequency coefficient s (n) is calculated by the formula (4).
Specifically, taking a row conversion unit as an example, during hardware design, a 1-bit counter is set in the splitting process, and is initialized to 0; when the image data input is valid, the counter starts to increment by 1. When the counter is 0, the output is even sequence, and when the counter is 1, the output is odd sequence. When the high-frequency coefficient is calculated, an input odd-even sequence is received firstly, two registers are used for carrying out two-beat buffer storage on the even sequence, and the high-frequency coefficient d (n) is finally output through two adders and a multiplier; when the low-frequency coefficient is calculated, an even sequence and d (n) are received, two beats of buffer storage are carried out on the d (n) by using two registers, and the low-frequency coefficient s (n) is finally output by two adders and one multiplier; the register is used for caching intermediate data, so that multiplexing of the data is facilitated, repeated reading of the data from the RAM is not needed, and therefore operation efficiency is improved. The column conversion unit and the row conversion unit have the same structure, and the result of the row conversion is transposed by the intermediate transpose buffer unit before the column conversion.
And thirdly, separating high-frequency coefficients from low-frequency coefficients in the wavelet coefficients by a de-interleaving unit in the two-dimensional discrete wavelet transform module.
The wavelet coefficients obtained after the row-column transformation are arranged in the order of the original data, so that the high-frequency coefficients and the low-frequency coefficients are required to be separated through the de-interleaving treatment and finally divided into four sub-band matrixes of LL, LH, HL and HH, and the sub-band matrixes are respectively stored in four RAMs with continuous addresses. The meaning of the four subband matrices is shown in the table below:
table 1 four subband matrices of deinterleaved units
Name of the name | Meaning of |
LL | Low frequency components in horizontal and vertical directions |
HL | High-frequency component in horizontal direction and low-frequency component in vertical direction |
LH | Low frequency component in horizontal direction and high frequency component in vertical direction |
HH | High frequency component in horizontal and vertical directions |
Since the wavelet coefficient distribution is regular, i.e. the high frequency coefficient and the low frequency coefficient are always crossed in the row direction, the column direction and the diagonal line, the output of the 5/3 filter can be classified into four sub-band matrixes by a 2bit counter on hardware and stored in four RAM with continuous addresses. The de-interleaving unit and the 5/3 filter together form a discrete wavelet transform module.
And fourthly, coding wavelet coefficients of the four deinterleaved subbands by using a bit plane coding module by taking bits as a minimum unit so as to further eliminate related information among the coefficients, reduce redundant information, and then outputting the redundant information and performing MQ arithmetic coding based on probability interval coding.
In the bit plane coding, data is divided into bit planes of different levels according to the significant bit length L of the wavelet coefficients, and coding ends from the most significant bit plane (MSB) having non-zero elements to the least significant bit plane (LSB). For each plane, the three channels can be decomposed: an importance propagation path (SSP), an amplitude refinement path (MRP), and a clean-up path (CUP). In processing order, the bit plane coding is processed for different subbands, in order LL, HL, LH, HH. And after the coding of each level of wavelet coefficient is finished, jumping to the next level of sub-band for continuous processing, and sequentially until all wavelet coefficients are coded. During processing, each plane needs to be traversed for 3 times, and each traversal corresponds to a screening condition of one channel, so that all coding bits of the bit plane are respectively distributed to 3 coding channels for classified coding. As shown in fig. 3, for a group of subband wavelet coefficient data that is transferred in, its block and bit plane information is transferred to bpc_fifo (fig. 3) for temporary storage. The amplitude and the sign bit of the data are respectively transmitted to a wavelet coefficient buffer RAM (figure 3) and a sign bit RAM (figure 3) for temporary storage, then transmitted to a data organization unit (figure 3), and a state variable RAM (figure 3) directly interacts with the data organization unit to record the state information of the data which is currently transmitted. The bpc_fifo transfers the data to the global control unit (fig. 3), and the global control unit determines which channel the data belongs to, and after confirming, sends a corresponding spp_en, mrp_en, or cup_en (fig. 3) enabling signal to control the data organization unit to transfer the data into a corresponding SSP, MRP, CUP unit for encoding. Each channel outputs corresponding CX (context) and D (decision bit) information.
And fifthly, receiving D and CX transmitted by the bit plane coding code block through the MQ arithmetic coding module, and obtaining compressed data CD through sequence mapping.
FIG. 4 illustrates the input and output of the MQ arithmetic coding module according to an embodiment of the present invention; in order to obtain the corresponding probabilities through mapping, the required probability maps are stored in a probability estimation migration table in the JPEG2000 document, 47 probability estimation migration tables are obtained in total, wherein the decimal fraction of each probability value Qe corresponds to one hexadecimal number.
In hardware implementation, a register A and a register C are required to be introduced, and the probability interval width a and the lower limit C of the probability interval are respectively stored; qe is the probability of the current probability interval. The invention adopts a four-stage pipeline to realize the MQ arithmetic coding module. Specifically, the first stage of the pipeline reads in the data incoming from the bit plane encoding module and sorts it. Before the second stage pipeline, the probability estimation migration table is firstly stored in a memory, and after the data of the first stage pipeline is received, the probability value Qe is obtained in a lookup table mode and updated, so that interference to the next lookup table is prevented. And the third-stage pipeline calculates the width and lower limits a and c of a probability interval according to the obtained probability Qe, and the fourth-stage pipeline shifts the upper 12 bits in c to the left, wherein the left shift number is the same as the invalid 0 number of the upper bits of a. And finally, superposing the probabilities a and c into the code string to obtain the compressed code stream.
Step six, through the rate distortion optimizing module, the inside of each code stream is adjusted and arranged, and then the code streams are output.
After bit plane coding and MQ arithmetic coding, the generated code stream is embedded, and the end point of each coding channel may be the interception point of the coding block. That is, the current code stream cannot find the correct output format, and the rate distortion optimization module adjusts and arranges the inside of each code block, and then outputs the code stream.
Specifically, as shown in fig. 5, the rate distortion optimization module is composed of a FIFO control state machine, a code rate information table, an address information unit, a compressed data buffer and a code stream output buffer unit. The module receives the data CD in the MQ arithmetic coding module and classifies the data CD into four types:
(1) The data with the upper 2 bits "00" indicates that such data is compressed data itself.
(2) The data with the upper 2 bits of "01" indicates that such data is encoded block information.
(3) The upper 2 bits are "10" of data, indicating that such data is encoded channel information.
(4) The data with the upper 2 bits of "11" indicates that such data is code rate information.
The FIFO control state machine performs different processing according to different categories of read data. Transmitting the compressed data to a compressed data buffer unit; transmitting the code block information and the coding channel information to an address information unit; and transmitting the code rate information to a code rate information table unit, obtaining interception point information according to data in the three units, rearranging the input CD, and finally outputting a compressed code stream according to a time sequence.
The foregoing is a further detailed description of the invention in connection with specific/preferred embodiments, and it is not intended that the invention be limited to such description. It will be apparent to those skilled in the art that several alternatives or modifications can be made to the described embodiments without departing from the spirit of the invention, and these alternatives or modifications should be considered to be within the scope of the invention.
The invention, in part not described in detail, is within the skill of those skilled in the art.
Claims (9)
1. The satellite image lossless compression system based on JPEG2000 is characterized by comprising an image preprocessing module, a discrete wavelet transform module, a bit plane coding module, an MQ arithmetic coding module and a rate distortion optimizing module;
the image preprocessing module is used for preprocessing the acquired satellite image data, providing a uniform format for different types of images and facilitating subsequent processing; the image preprocessing module comprises three links: image blocking, DC level shifting and component transformation;
the discrete wavelet transformation module comprises a 5/3 filter and a de-interleaving unit; the 5/3 filter performs discrete wavelet transform on the image data after component transformation through a 5/3 wavelet transform algorithm; the so-called 5/3 wavelet transform algorithm, i.e. the calculation process comprises 5 high-pass filter coefficients and 3 low-pass filter coefficients; the 5/3 filter caches the received image data, and the input image is subjected to line transformation and then column transformation so as to complete two-dimensional wavelet transformation;
the de-interleaving unit is used for separating high-frequency coefficients and low-frequency coefficients in the wavelet coefficients obtained after the line-column transformation by de-interleaving treatment, and finally dividing the wavelet coefficients into four subband matrixes, namely LL, LH, HL and HH, which are respectively stored in four RAMs with continuous addresses; wherein LL is a low frequency component in the horizontal direction and the vertical direction, LH is a low frequency component in the horizontal direction and a high frequency component in the vertical direction, HL is a high frequency component in the horizontal direction and a low frequency component in the vertical direction, and HH is a high frequency component in the horizontal direction and the vertical direction;
the bit plane coding module is used for coding the wavelet coefficients of the four deinterleaved subbands by taking the bit as the minimum unit; the data is divided into bit planes of different levels, the bit planes are divided into L bit planes according to the effective bit length L of the wavelet coefficient, and the coding is finished from the highest bit plane with non-zero elements to the least important bit plane; each bit plane can be broken down into three channels: an importance propagation channel, an amplitude refining channel and a cleaning channel; dividing data into three different channels by a global control unit through enabling signals of the three channels; the data of different channels are respectively encoded to obtain decision bit information D and context information CX;
the MQ arithmetic coding module is used for receiving the judgment bit information D and the context information CX transmitted by the bit plane coding module and obtaining compressed data CD through sequence mapping; on hardware implementation, setting a register A and a register C, and respectively storing a probability interval width a and a lower limit C of a probability interval, wherein Qe represents the probability of a current probability interval; the four-stage pipeline is adopted to realize an MQ arithmetic coding module during processing, and a lossless compressed code stream B is generated;
the rate distortion optimization module is used for adjusting, adjusting and arranging the inside of each code stream and then outputting the code streams; after bit plane coding and MQ arithmetic coding, the generated code stream is embedded, and the code stream B needs to be recombined and code rate controlled to be integrated into the code stream conforming to the JPEG2000 standard, so that the compressed data can be conveniently decoded.
2. The satellite image lossless compression method based on JPEG2000 is characterized by comprising the following steps:
preprocessing acquired satellite image data through an image preprocessing module, and providing a unified format for different types of images so as to facilitate the subsequent processing by using an encoder; the image preprocessing comprises three links: image blocking, DC level shifting and component transformation;
step two, performing 5/3 wavelet transform algorithm processing on the image data after component transformation through a 5/3 filter in a discrete wavelet transform module;
step three, realizing the separation of high-frequency coefficients and low-frequency coefficients in wavelet coefficients through a de-interleaving unit in a two-dimensional discrete wavelet transform module;
step four, the wavelet coefficients of the four sub-bands after de-interleaving are encoded by a bit plane encoding module by taking bits as the minimum unit, so that the related information among the coefficients is further eliminated, redundant information is reduced, and then the MQ arithmetic encoding based on probability interval encoding is output and carried out;
step five, receiving D and CX transmitted by a bit plane coding code block through an MQ arithmetic coding module, and obtaining compressed data CD through sequence mapping;
step six, through the rate distortion optimizing module, the inside of each code stream is adjusted and arranged, and then the code streams are output.
3. The method of claim 2, wherein the step one image preprocessing includes three steps: image blocking, DC level shifting and component transformation;
firstly, dividing an image into blocks, and dividing acquired satellite image data into rectangular blocks which are not overlapped with each other and have the same size;
then DC level shifting, eliminating DC offset component in the signal; the original satellite image data is input with unsigned numbers, the compression process uses signed numbers, and the low-frequency information energy in the satellite image data is larger than the high-frequency information energy, so that the direct-current component in the image needs to be removed, the data range is symmetrical about the zero point, and the energy is concentrated at the low frequency;
finally, component transformation; for color or multi-component images, component transformation must also be performed point by point before wavelet transformation, and satellite image data is converted from RGB space to YUV space, which is suitable for lossless compression; the formula for the component transformation required for lossless compression is as follows:
4. the satellite image lossless compression method based on JPEG2000 according to claim 3, wherein the specific method in the second step is as follows:
performing 5/3 wavelet transformation algorithm processing on the image data after component transformation through a 5/3 filter in a discrete wavelet transformation module, wherein the algorithm comprises 5 high-pass filter coefficients and 3 low-pass filter coefficients; the hardware structure of the 5/3 filter comprises a row conversion unit, a column conversion unit, an intermediate transposition buffer unit, necessary registers and counters for buffering intermediate data and counts; the one-dimensional discrete wavelet transformation is divided into row transformation and column transformation, and image data is sequentially subjected to row transformation and column transformation, so that coefficients after the two-dimensional wavelet transformation are obtained.
5. The satellite image lossless compression method based on JPEG2000 according to claim 4, wherein the implementation of the 5/3 wavelet transform algorithm is specifically divided into three steps: a splitting process, a high-frequency coefficient calculation process, and a low-frequency coefficient calculation process; the row transformation unit and the column transformation unit are subjected to the three processes;
the splitting process divides image data into an odd sequence and an even sequence, wherein x (2n+1) represents the odd sequence, x (2 n) represents the even sequence, and parity data is alternately transmitted, and the method comprises the following steps:
wherein d (n) is a high frequency coefficient, s (n) is a low frequency coefficient,representing rounding down N; as can be seen from the formula, when calculating the high frequency coefficient d (n), the values of the odd sequence x (2n+1) and the two even sequences before and after the odd sequence x (2n+1) need to be obtained simultaneously; when calculating the low frequency coefficient s (n), the even sequence x (2 n) and the front and back high frequency coefficients d (n) thereof need to be obtained; in the high-frequency coefficient calculation process, two registers are used for caching even data in two beats; when an odd sequence data x (2n+1) is input, performing formula (3) calculation on the cached data and the data x (2n+1), and obtaining d (n); when the low-frequency coefficient is calculated, two registers are used for caching two high-frequency coefficient data in a similar way, and when the even sequence x (2 n) is detected, the low-frequency coefficient s (n) is calculated through a formula (4);
specifically, taking a row conversion unit as an example, during hardware design, a 1-bit counter is set in the splitting process, and is initialized to 0; when the image data input is valid, the counter starts to increment by 1; when the counter is 0, the output is even sequence, and when the counter is 1, the output is odd sequence; when the high-frequency coefficient is calculated, an input odd-even sequence is received firstly, two registers are used for carrying out two-beat buffer storage on the even sequence, and the high-frequency coefficient d (n) is finally output through two adders and a multiplier; when the low-frequency coefficient is calculated, an even sequence and d (n) are received, two beats of buffer storage are carried out on the d (n) by using two registers, and the low-frequency coefficient s (n) is finally output by two adders and one multiplier; the register is used for caching intermediate data, so that multiplexing of the data is facilitated, repeated reading of the data from the RAM is not needed, and therefore operation efficiency is improved; the column conversion unit and the row conversion unit have the same structure, and the result of the row conversion is transposed by the intermediate transpose buffer unit before the column conversion.
6. The satellite image lossless compression method based on JPEG2000 according to claim 5, wherein the third specific method is as follows:
the wavelet coefficients obtained after the row-column transformation are arranged according to the sequence of the original data, so that the high-frequency coefficients and the low-frequency coefficients are required to be separated through de-interleaving treatment and finally divided into four sub-band matrixes of LL, LH, HL and HH, and the sub-band matrixes are respectively stored in four RAMs with continuous addresses;
since the wavelet coefficient distribution is regular, i.e. the high-frequency coefficient and the low-frequency coefficient are always distributed in a crossed manner in the row direction, the row direction and the diagonal line, the output of the 5/3 filter is classified into four sub-band matrixes by a 2-bit counter and stored in four RAM with continuous addresses; the de-interleaving unit and the 5/3 filter together form a discrete wavelet transform module.
7. The satellite image lossless compression method based on JPEG2000 according to claim 6, wherein the fourth specific method is as follows:
in the process of bit plane coding, data is divided into bit planes of different levels, the bit planes are divided into L bit planes according to the effective bit length L of a wavelet coefficient, and coding is finished from the highest bit plane with non-zero elements to the least important bit plane; for each plane, the three channels can be decomposed: an importance propagation channel, an amplitude refining channel and a cleaning channel; in processing order, the bit plane coding is processed for different sub-bands, in order LL, HL, LH, HH; after the coding of each level of wavelet coefficient is finished, jumping to the next level of sub-band for continuous processing, and continuing processing until all wavelet coefficients are coded according to the sequence; during processing, each plane needs to be traversed for 3 times, and each traversal corresponds to a screening condition of one channel, so that all coding bits of the bit plane are respectively distributed to 3 coding channels for classified coding; for a group of subband wavelet coefficient data transmitted in, transmitting the block and bit plane information to BPC_FIFO temporary storage; the amplitude value and the sign bit of the data are respectively transmitted to a wavelet coefficient cache RAM and a sign bit RAM for temporary storage and then transmitted to a data organization unit, and a state variable RAM directly interacts with the data organization unit to record the state information of the data which is transmitted currently; the BPC_FIFO transmits the data to the global control unit, the global control unit judges which channel the data belongs to, and after confirmation, the corresponding spp_en, mrp_en or cup_en enabling signal is sent to control the data organization unit to transmit the data to the corresponding SSP, MRP, CUP unit for encoding; each channel will output corresponding CX and D information.
8. The satellite image lossless compression method based on JPEG2000 according to claim 7, wherein the fifth specific method comprises the following steps:
in order to obtain corresponding probabilities through mapping, storing required probability maps in a probability estimation migration table in a JPEG2000 document, wherein the decimal fraction of each probability value Qe corresponds to a hexadecimal number;
storing a probability interval width a and a lower limit C of the probability interval through a register A and a register C respectively; qe is the probability of the current probability interval; adopting a four-stage pipeline to realize an MQ arithmetic coding module; specifically, a first stage of the pipeline reads in data transmitted from the bit plane coding module and classifies the data; before the second stage pipeline, firstly, the probability estimation migration table is stored in a memory, and after the data of the first stage pipeline is received, the probability value Qe is obtained in a lookup table mode and updated, so that interference to the next lookup table is prevented; the third-stage pipeline calculates the width and lower limits a and c of a probability interval according to the obtained probability Qe, and the fourth-stage pipeline shifts the upper 12 bits in c to the left, wherein the left shift number is the same as the upper invalid 0 number of a; and finally, superposing the probabilities a and c into the code string to obtain the compressed code stream.
9. The satellite image lossless compression method based on JPEG2000 according to claim 8, wherein the sixth specific method comprises the following steps:
after bit plane coding and MQ arithmetic coding, the generated code stream is embedded, and the end point of each coding channel is probably the interception point of the coding block; that is, the current code stream cannot find the correct output format, and the rate distortion optimization module adjusts and arranges the inside of each code block, and then outputs the code stream;
specifically, the rate distortion optimization module consists of a FIFO control state machine, a code rate information table, an address information unit, a compressed data buffer and a code stream output buffer unit; the module receives the data CD in the MQ arithmetic coding module and classifies the data CD into four types:
(1) The data with the upper 2 bits of "00" indicates that such data is compressed data itself;
(2) The data with the upper 2 bits of "01" represents that the data is coding block information;
(3) The upper 2 bits are "10" data, indicating that such data is coding channel information;
(4) The data with the high 2 bits of 11 represents that the data is code rate information;
according to different types of read data, the FIFO controls the state machine to carry out different processes; transmitting the compressed data to a compressed data buffer unit; transmitting the code block information and the coding channel information to an address information unit; and transmitting the code rate information to a code rate information table unit, obtaining interception point information according to data in the three units, rearranging the input CD, and finally outputting a compressed code stream according to a time sequence.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211700315.8A CN116055725A (en) | 2022-12-28 | 2022-12-28 | Satellite image lossless compression system and method based on JPEG2000 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211700315.8A CN116055725A (en) | 2022-12-28 | 2022-12-28 | Satellite image lossless compression system and method based on JPEG2000 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116055725A true CN116055725A (en) | 2023-05-02 |
Family
ID=86132374
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211700315.8A Withdrawn CN116055725A (en) | 2022-12-28 | 2022-12-28 | Satellite image lossless compression system and method based on JPEG2000 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116055725A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116934431A (en) * | 2023-09-19 | 2023-10-24 | 贵昌集团有限公司 | Electronic commerce data intelligent management system |
CN118301370A (en) * | 2024-04-01 | 2024-07-05 | 北京中科大洋科技发展股份有限公司 | Wavelet fast transformation method for JPEG-XS encoding and decoding |
-
2022
- 2022-12-28 CN CN202211700315.8A patent/CN116055725A/en not_active Withdrawn
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116934431A (en) * | 2023-09-19 | 2023-10-24 | 贵昌集团有限公司 | Electronic commerce data intelligent management system |
CN116934431B (en) * | 2023-09-19 | 2023-12-05 | 贵昌集团有限公司 | Electronic commerce data intelligent management system |
CN118301370A (en) * | 2024-04-01 | 2024-07-05 | 北京中科大洋科技发展股份有限公司 | Wavelet fast transformation method for JPEG-XS encoding and decoding |
CN118301370B (en) * | 2024-04-01 | 2024-09-13 | 北京中科大洋科技发展股份有限公司 | Wavelet fast transformation method for JPEG-XS encoding and decoding |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116055725A (en) | Satellite image lossless compression system and method based on JPEG2000 | |
Kiely et al. | The ICER progressive wavelet image compressor | |
US7437010B2 (en) | Method for imaging coding by rate-distortion adaptive zero-tree-based residual vector quantization and system for effecting same | |
US6990247B2 (en) | Multiple coder technique | |
US6671416B2 (en) | Method for transmitting data using an embedded bit stream produced in a hierarchical table-lookup vector quantizer | |
US6229927B1 (en) | Reversible embedded wavelet system implementation | |
CN1179575C (en) | Method and apparatus for removing blocking effect in motion picture decoder | |
Son et al. | Low complexity embedded compression algorithm for reduction of memory size and bandwidth requirements in the JPEG2000 encoder | |
US20110091123A1 (en) | Coding apparatus and coding method | |
Yadav et al. | Study and analysis of wavelet based image compression techniques | |
US20150156517A1 (en) | Image encoding system and method thereof | |
GB2325584A (en) | Reversible embedded wavelet transform system implementation | |
Solís-Rosas et al. | An enhanced run length encoding using an elegant pairing function for medical image compression | |
CN111683258B (en) | Image data compression method and interface circuit | |
CN111316645A (en) | Encoder, encoding system and encoding method | |
EP1652146B1 (en) | Implementation of the jpeg2000 compression algorithm in hardware | |
CN101742299B (en) | Image lossless compression processing system and method meeting CCSDS standards | |
Wiewel | FPGA implementation of an energy-efficient real-time image compression algorithm for the EIVE satellite mission | |
US20110091119A1 (en) | Coding apparatus and coding method | |
CN116033156A (en) | Medical image compression method and device based on SPIHT and DWT algorithms | |
GB2341034A (en) | Reversible wavelet system implementation | |
CN1568011A (en) | A method of inter-frame reinforcement based on Moving Joint Picture Experts Group | |
Delgermaa et al. | N‐stage nonseparable two‐dimensional wavelet transform for reduction of rounding error | |
Aminlou et al. | A new multi-layered coding sequence for JPEG2000 with reduced memory requirement | |
Goerge et al. | The use of biorthogonal wavelet, 2d polynomial and quadtree to compress color images |
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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20230502 |
|
WW01 | Invention patent application withdrawn after publication |