CN107093162A - A kind of MQ encoders applied to JPEG2000 - Google Patents

A kind of MQ encoders applied to JPEG2000 Download PDF

Info

Publication number
CN107093162A
CN107093162A CN201710295967.0A CN201710295967A CN107093162A CN 107093162 A CN107093162 A CN 107093162A CN 201710295967 A CN201710295967 A CN 201710295967A CN 107093162 A CN107093162 A CN 107093162A
Authority
CN
China
Prior art keywords
cxd
values
register
value
index value
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
CN201710295967.0A
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.)
Tianjin University
Original Assignee
Tianjin University
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 Tianjin University filed Critical Tianjin University
Priority to CN201710295967.0A priority Critical patent/CN107093162A/en
Publication of CN107093162A publication Critical patent/CN107093162A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/005Statistical coding, e.g. Huffman, run length coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

The present invention relates to a kind of MQ encoders applied to JPEG2000, including two parts of index prediction module and main body coding module, current context judgement to be encoded enters Part I to CXD and indexes prediction module to obtain correct index value;The index value that current context judgement is obtained to CXD carries out the main encoding process of MQ encoders by Part II main body coding module is entered, the module is four stage pipeline structures, first level production line obtains corresponding Qe values and LZ values according to the index value of input from probabilistic estimated value table PET, and LZ values are used to refer to the number of times of bright displacement;Qe values and LZ values enter the second level production line, the main renewal for completing register A;Qe values and register A shift count enter third level streamline, the main renewal for completing low 16 C16 of register C;Fourth stage streamline mainly completes high 12 of register C renewal, final output packed byte.

Description

A kind of MQ encoders applied to JPEG2000
Technical field
The invention belongs to image compression encoding field, it is related to Static Picture Compression standard JPEG2000.
Background technology
Image is one important information channel of human society.The information content of original image is often very huge, to storage Resource and transmission bandwidth propose very high requirement, but many redundancies are contained among these raw informations.In order to save About storage resource and transmission bandwidth, on the premise of image information acquisition is not influenceed, it should which certain journey is carried out to original image The compression of degree, removes redundancy.Dimension, image compression technology is all the popular domain of image procossing all the time.
JPEG2000 is International Organization for standardization (ISO) in the Static Picture Compression standard of new generation of issue in 2000.Should Standard is on the basis of original Joint Photographic Experts Group, and employing DWT (wavelet transform) and EBOCT, (optimal truncation embedded block is compiled Code) two kinds of new technologies, therefore have:(1) higher compression quality is remain under low bit- rate;(2) there is well fault-tolerant Error correcting capability;(3) " area-of-interest " (ROI) is supported;(4) the advantages of supporting progressive transmission.The complicated journey of JPEG2000 coding Degree is higher, and the coding of wherein EBOCT parts occupies more than the 80% of the binary encoding time, is that current JPEG2000 algorithm structures are excellent The principal concern of change.
EBOCT codings include Tier1 codings and Tier2 encodes two parts, and the former undertakes main coding work. Tier1 codings are made up of BPC encoders and MQ encoders, and the former produces context-judgement to (CXD to), and the latter enters according to two Coding principle processed produces compressed bit stream to CXD to carrying out coding.The optimization of BPC encoders has realized larger breakthrough at present, " proposition of the improved method such as skip scanning method " substantially increases the processing speed of BPC encoders.
However, MQ encoders are because the coding characteristic and front and rear CXD of itself strict sequential are to strong between input Relevance, throughput is difficult to improve always.There are two kinds of thinkings currently for the optimization of MQ encoders:(1) gulping down for encoder is improved Rate is told, multiple CXD pairs of encoder can be handled by designing a cycle;(2) single CXD is carried out to the MQ encoders of processing excellent Change, improve coding rate, shorten code period.For former thinking, there are many research teams to propose corresponding structure.But The usual of these structures has the following problems:(1) encoder overall work frequency is relatively low;(2) in order to realize multipair CXD pairs simultaneously The circuit structure of larger area is encoded and uses, storage demand is also larger;(3) it often have ignored the correlation of front and rear CXD pairs of input Property.When front and rear input CXD to it is identical when, optimization structure tend not to normal work.Second of thinking has then been obtained than wide Application, the present invention be also based on the MQ coder structures that this thinking proposes optimization.
There is strong correlation before and after MQ encoders between CXD pairs of input.Meeting when each CXD is to entering MQ encoders A correspondence Index value is found from ILT forms first.But every time after end-of-encode, this corresponding Index is possible to It can be updated.Therefore, if CXD pairs of value of front and rear input is identical, then latter CXD is to just having to wait for previous CXD To coding complete to obtain correct Index.It is encoded that so strict relevance causes pipeline organization not to be applied to Cheng Dangzhong so that coding rate is slower.
The content of the invention
The purpose of the present invention be overcome prior art it is above-mentioned it is not enough there is provided a kind of coding rate it is fast, storage can be reduced The MQ encoders applied to JPEG2000 of occupancy.Technical scheme is as follows:
A kind of MQ encoders applied to JPEG2000, including two portions of index prediction module and main body coding module Point, it is characterised in that
(1) current context judgement to be encoded enters Part I to CXD and indexes prediction module to obtain correct rope Draw value, the index value there are two kinds of possibility:A. based on context adjudicate to the context value CX in CXD from index look-up table ILT The original index value inquired;B. upper context judgement encodes the renewal index value produced to CXD;Index value is selected to need Judge two conditions:A. judge whether current context judgement adjudicates pair CXD context value CX values with previous context CXD context value CX values are identical;B. whether previous context judgement occurs renormalization operation to CXD, if two bars Part all meets, then just using index value is updated as index value of the current context judgement to CXD, otherwise using primary index Value;The index value of acquisition will replace index look-up table ILT original index value, in addition, after obtaining correct index value, when What preceding context judgement also obtained the coding mode that will be carried out according to itself to CXD from probabilistic estimated value table PET Renewal index value of the selection one to select this coding among NMPS and NLPS, to be supplied to next context judgement pair CXD is selected, and coding mode adjudicates the comparison of minimum one to CXD decision value D and its selected index value by current context To determine being CODEMPS or CODELPS, complete after above-mentioned work, current context judgement starts follow-up encoded to CXD Journey;
(2) index value that current context judgement is obtained to CXD will enter Part II main body coding module progress MQ volumes The main encoding process of code device, the module is four stage pipeline structures, the first level production line according to the index value of input from Corresponding Qe values and LZ values are obtained in probabilistic estimated value table PET, LZ values are used to refer to the number of times of bright displacement, used in register A Renewal among, in addition, current context judgement to CXD decision value D also by and minimum one of its index value be compared It is CODEMPS or CODELPS to CXD coding mode to obtain current context judgement;
(3) Qe values and LZ values enter the second level production line, the main renewal for completing register A:First, according to coding mould Formula, register A original value will carry out adder with Qe values and calculate to obtain new coding interval width, then by the width with Defined 0x800 is compared;If less than 0x800, then be accomplished by carrying out renormalization operation, the interval width value of coding is left Move multiplication;Under CODELPS coding modes, the LZ values obtained from probabilistic estimated value table pet sheet can indicate to need what is moved to left Number of times, so as to realize that the disposable renormalization that completes is operated;After renormalization operation is completed, encoder A completes to update, altogether The number of times of displacement completes register C renewal by next level production line is sent to;
(4) Qe values and register A shift count enter third level streamline, main to complete low 16 C16 of register C Renewal:It is similar with previous level production line, adder will be carried out with Q according to coding mode from C16 original value first and calculated To the value of renewal, C16 displacement is then completed according to register A shift count and then low 16 of register C renewal is completed; The carry digit of generation will be fed into fourth stage streamline;
(5) fourth stage streamline mainly completes high 12 of register C renewal, and according to register C displacement situation Carry out bit output operation, final output packed byte.
Among original MQ coder structures, current CXD is in order to obtain correct Index values, it is necessary to wait previous Individual CXD pairs of coding is completed, and such mechanism causes MQ encoders to be difficult with pipeline organization.The MQ codings that the present invention is provided Device is mainly made up of two parts --- index detector and Coding part, Index detector effect be for CXD into MQ codings is to predicting that corresponding index values, so as to start coding in advance, make it to wait previous CXD pairs End-of-encode.Pipeline organization can be thus used during next code.Coding part undertake main coding work Make.This is four stage pipeline structures, and main improvement has:
(1) pet sheet lattice are optimized, reduces storage occupancy;
(2) renewal to register A is optimized, and shortens critical path;
(3) it is low 16 and high 12 two registers to be divided to register C, is updated respectively by two level production lines.Avoid making With the adder of 28;
Brief description of the drawings
The high-performance MQ coder structures of Fig. 1 present invention
Fig. 2 Index detector structure chart
The stage pipeline structure Coding part of Fig. 3 tetra-
Renewal register A circuit structures after Fig. 4 simplification
Embodiment
High-performance MQ coder structure figures proposed by the present invention are as shown in Figure 1.The encoder is by Index detector (ropes Draw prediction module) and Coding part (main body coding module) two parts composition.One clock cycle can handle one CXD pairs.
1.Index detector
Design Index detector purpose is to make the CXD for being currently entering MQ encoders correct to obtaining in advance Index values, from
And start coding, it is not necessary to previous CXD is waited again to end-of-encode, and its structure is as shown in Figure 2.
Among traditional structure, each CXD in cataloged procedure in the event of renormalization (Renormalizaton) Operation, then will generate a new Index value replace originally Index corresponding in ILT tables, and end-of-encode it ILT tables are updated afterwards.Therefore next CXD terminates to obtain the ILT tables after updating to having to wait for the former.
Among Index detector, current CXD is in previous CXD not yet end-of-encodes, its correspondence Index has Two kinds of possibilities:(1) the Index values that are obtained in the ILT tables never updated, (2) previous CXD are to the Index values after renewal (Index_update).If it is equal but previous that current CXD pairs CX values are not equal to previous CXD pairs of CX values, or both Individual CXD is to no generation renormalization operation (Renorm), then just select Index values according to the initial data in ILT tables.Such as Both equal and previous CXD of fruit are to there occurs that renormalization is operated, just using previous CXD couples of updated value Index_ Update is used as current CXD couples of Index.
Index_update equally has two kinds of possibility:NLPS and NMPS.Both can be according to previous CXD pairs Index values are obtained from pet sheet.Index_update it is selected will according to previous CXD pairs of coding mode (CODE_MODE) come Judge.
Current CXD is to meeting synchronized update ILT tables after acquisition Index.
2.Coding part
MQ encoders Part II proposed by the present invention is Coding part, and the part is four stage pipeline structures, As shown in Figure 3.
Simplifying for optimization pet sheet and Reg A described herein updates.
(1) pet sheet is optimized
First, a new parameter LZ (Leading zero) is added in pet sheet.Numerical value Reg A's Numerical value needs the number of times being shifted, and can be used in the renormalization operation among CODELPS, reaches disposable completion displacement Purpose.Secondly, the present invention will after 47 Qe value binary representations in pet sheet, it is found that 47 Qe values are segmented into three groups, often Qe among one group has 8 bit values to be identical, as shown in table 1.Because Qe is the data that a bit wide is 15, therefore each Qe Only 7 data of practically necessary storage.
Table 1 simplifies Qe storage modes
(2) simplification that register A updates
Invention increases a signal --- and Space_judge simplifies register A renewal.The signal is pressed under The formula in face
To update:
Space_judge=(D==MPS)(A<2Qe):(A>2Qe)
If space_judge=1, then A=A_lps, otherwise A=A_mps.When A=A_lps, one is returned Change operation to be bound to occur.The LZ that now pet sheet is provided can be for indicating that A needs to move several, so as to once complete A's Displacement.If A=mps, then only as A-Qe<Renormalization operation can occur when 0x8000.The number of times of this shift There are three kinds of possibility:It is mobile 0 time, mobile 1 time, mobile 2 times.Time for needing to shift can be determined according to the highest three of (A-Qe) Number.Renewal circuit structure after simplification is as shown in Figure 4.
The workflow of high-performance MQ encoders proposed by the present invention is as follows:
(1) CXD to be encoded predicts corresponding index values to initially entering among index detector.Prediction knot After beam, index detector can update ILT tables according to the index values after renewal, be next CXD to prediction Index Value.
(2) CXD pairs to be encoded proceeds by coding with corresponding Index values into coding part.coding part It is four stage pipeline structures.First level production line mainly inquires about pet sheet according to Index values, obtain corresponding Qe values with And Leading Zero values (LZ).The two values complete register A and register C renewal by subsequent pipeline is sent to. Pet sheet is optimized the present invention, reduces storage and takes.
The work of (3) second level production lines mainly is the value for updating register A.With being needed among traditional MQ coder structures The renewal that multi-shift completes register A is different, and the present invention realizes the renewal that disposable displacement completes register A, significantly Shorten critical path.
(4) third level streamline completes the register C renewal of low 16.Because register C is that a width is 28 Data, in order to avoid increasing critical path using the adder of 28, register C is divided into low 16 and high by 12 by the present invention Position, is divided to two level production lines to update.
(5) fourth stage streamline completes register C high 12 renewals, while Byte-out output squeezing bytes are completed, Complete CXD pairs of the coding work.
3. compare
In order to illustrate encoder performance, several MQ that MQ encoders proposed by the present invention are proposed with other research groups are encoded Device is in FPGA
Compared on platform, comparative result is as shown in table 2.It is relatively more double in order to ensure the accuracy of result of the comparison Side all employs same FPGA.Comparative result illustrates that MQ encoders proposed by the present invention have higher performance.
The comparative result of table 2
[1]K.Liu,Y.Zhou,Y.S.Li,and J.F.Ma,“A high performance MQ encoder architecture in JPEG2000,”Integration,the VLSI Journal,vol.43,pp.305-317, Jan.2010.
[2]K.Sarawadekar and S.Banerjee,“Area Efficient,High Speed EBCOT Architecture for Digital Cinema,”ISRN Signal Processing,vol.2012,p.9, Jan.2012.
[3]Z.Di,Y.Hao,J.Shi,and P.Ma,“A High-Throughput VLSI Archi-tecture Design of Arithmetic Encoder in JPEG2000,”Journal of Signal Processing Systems,vol.81,pp.227-247,Sep.2015.

Claims (1)

1. a kind of MQ encoders applied to JPEG2000, including two parts of index prediction module and main body coding module, Characterized in that,
(1) current context judgement to be encoded enters Part I index prediction module to CXD to obtain correct index value, The index value has two kinds of possibility:A. based on context adjudicate and the context value CX in CXD is inquired from index look-up table ILT Original index value;B. upper context judgement encodes the renewal index value produced to CXD;Selection index value needs judgement two Individual condition:A. judge whether current context judgement is adjudicated to the upper of CXD CXD context value CX values with previous context Hereafter value CX values are identical;B. whether previous context judgement occurs renormalization operation to CXD, if two conditions are all accorded with Close, then just using index value is updated as index value of the current context judgement to CXD, otherwise using original index value;Obtain The index value obtained will replace index look-up table ILT original index value, in addition, after obtaining correct index value, current The context judgement NMPS that also obtains the coding mode that will be carried out according to itself from probabilistic estimated value table PET to CXD and Renewal index value of the selection one to select this coding among NLPS, to be supplied to next context judgement to select CXD, Coding mode is determined to be to CXD decision value D by current context judgement with the comparison of minimum one of its selected index value CODEMPS or CODELPS, is completed after above-mentioned work, and current context judgement starts follow-up cataloged procedure to CXD;
(2) index value that current context judgement is obtained to CXD will enter Part II main body coding module progress MQ encoders Main encoding process, the module is four stage pipeline structures, and the first level production line is according to the index value of input from probability Corresponding Qe values and LZ values are obtained in estimated value table PET, LZ values are used to refer to the number of times of bright displacement, used in register A more Among new, in addition, current context judgement to CXD decision value D also by and minimum one of its index value be compared and obtain It is CODEMPS or CODELPS that current context, which is adjudicated to CXD coding mode,;
(3) Qe values and LZ values enter the second level production line, the main renewal for completing register A:First, according to coding mode, Register A original value will carry out adder with Qe values and calculate to obtain new coding interval width, then by the width and rule Fixed 0x800 is compared;If less than 0x800, then be accomplished by carrying out renormalization operation, the interval width value of coding is moved to left Multiplication;Under CODELPS coding modes, the LZ values obtained from probabilistic estimated value table pet sheet can indicate time for needing to move to left Number, so as to realize that the disposable renormalization that completes is operated;After renormalization operation is completed, encoder A completes to update, Zong Gongyi The number of times of position completes register C renewal by next level production line is sent to;
(4) Qe values and register A shift count enter third level streamline, main to complete low 16 C16 of register C more Newly:It is similar with previous level production line, adder calculating will be carried out according to coding mode and Q from C16 original value first and obtained more New value, then completes C16 displacement according to register A shift count and then completes low 16 of register C renewal;Produce Carry digit will be fed into fourth stage streamline;
(5) fourth stage streamline mainly completes high 12 of register C renewal, and is carried out according to register C displacement situation Bit output operation, final output packed byte.
CN201710295967.0A 2017-04-28 2017-04-28 A kind of MQ encoders applied to JPEG2000 Pending CN107093162A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710295967.0A CN107093162A (en) 2017-04-28 2017-04-28 A kind of MQ encoders applied to JPEG2000

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710295967.0A CN107093162A (en) 2017-04-28 2017-04-28 A kind of MQ encoders applied to JPEG2000

Publications (1)

Publication Number Publication Date
CN107093162A true CN107093162A (en) 2017-08-25

Family

ID=59638672

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710295967.0A Pending CN107093162A (en) 2017-04-28 2017-04-28 A kind of MQ encoders applied to JPEG2000

Country Status (1)

Country Link
CN (1) CN107093162A (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1477879A (en) * 2003-07-03 2004-02-25 复旦大学 High-speed low power consumption MQ encoder applicable dto JPEG2000 standard
CN101489128A (en) * 2009-01-19 2009-07-22 山东大学 JPEG2000 pipeline arithmetic encoding method and circuit
CN102088607A (en) * 2011-02-28 2011-06-08 西安电子科技大学 Memory quotient (MQ) coding method and circuit based on JPEG (joint photographic experts group) 2000 standard
CN102523455A (en) * 2012-01-02 2012-06-27 西安电子科技大学 Multi-thread arithmetic coding circuit and method based on standard JPEG 2000

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1477879A (en) * 2003-07-03 2004-02-25 复旦大学 High-speed low power consumption MQ encoder applicable dto JPEG2000 standard
CN101489128A (en) * 2009-01-19 2009-07-22 山东大学 JPEG2000 pipeline arithmetic encoding method and circuit
CN102088607A (en) * 2011-02-28 2011-06-08 西安电子科技大学 Memory quotient (MQ) coding method and circuit based on JPEG (joint photographic experts group) 2000 standard
CN102523455A (en) * 2012-01-02 2012-06-27 西安电子科技大学 Multi-thread arithmetic coding circuit and method based on standard JPEG 2000

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
NA BAO 等: "High-throughput MQ encoder for pass-parallel EBCOT in JPEG2000", 《2015 28TH IEEE INTERNATIONAL SYSTEM-ON-CHIP CONFERENCE (SOCC)》 *
姜喆: "高性能JPEG2000图像编码器的VLSI设计", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *
沈友宝: "JPEG2000图像编码器的VLSI设计", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Similar Documents

Publication Publication Date Title
CN100547615C (en) Become the encoding scheme of the data stream of graphical model during expression
CN103733622B (en) Context initialization in entropy code
CN109151482B (en) Lossless lossy hybrid compression method for spectral band of satellite-borne spectral image
CN101610413B (en) Video coding/decoding method and device
CN102970531B (en) Method for implementing near-lossless image compression encoder hardware based on joint photographic experts group lossless and near-lossless compression of continuous-tone still image (JPEG-LS)
CN107481295B (en) Image compression system of convolutional neural network based on dynamic byte length distribution
CN101014129B (en) Video data compression method
US8604951B2 (en) System and method for optimizing context-adaptive binary arithmetic coding
CN103782597A (en) Method and apparatus for coding video and method and apparatus for decoding video accompanied with arithmetic coding
CN103227924B (en) A kind of arithmetic encoder and coded method
CN110191339B (en) Code rate estimation core unit, code rate estimation device and code rate estimation method
CN103974066A (en) Video coding method and device
CN110049333B (en) JPEG _ LS image compression output coding code stream splicing system and method
CN109391816B (en) Parallel processing method for realizing entropy coding link in HEVC (high efficiency video coding) based on CPU (Central processing Unit) and GPU (graphics processing Unit) heterogeneous platform
US8754792B2 (en) System and method for fixed rate entropy coded scalar quantization
Li et al. A CABAC encoding core with dynamic pipeline for H. 264/AVC main profile
CN102088607B (en) Memory quotient (MQ) coding method and circuit based on JPEG (joint photographic experts group) 2000 standard
CN104918049A (en) Binary arithmetic coding module suitable for HEVC (high efficiency video coding) standards
CN110365346B (en) Arithmetic entropy coding method and system
WO2021056214A1 (en) Encoding method, decoding method, encoder, decoder and storage medium
EP1189354A2 (en) Data encoding method, data encoding apparatus, data decoding method, and data decoding apparatus
CN107093162A (en) A kind of MQ encoders applied to JPEG2000
CN115567058A (en) Time sequence data lossy compression method combining prediction and coding
CN111901592B (en) Weight updating method and device for predictive coding neural network
CN103152567A (en) Any order number index Columbus encoder and method thereof

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