CN116527904B - Entropy coding method, entropy decoding method and related devices - Google Patents

Entropy coding method, entropy decoding method and related devices Download PDF

Info

Publication number
CN116527904B
CN116527904B CN202310797299.7A CN202310797299A CN116527904B CN 116527904 B CN116527904 B CN 116527904B CN 202310797299 A CN202310797299 A CN 202310797299A CN 116527904 B CN116527904 B CN 116527904B
Authority
CN
China
Prior art keywords
data
length code
signed
fixed
coding
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310797299.7A
Other languages
Chinese (zh)
Other versions
CN116527904A (en
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.)
Guangzhou Kuvision Digital Technology Co ltd
Peng Cheng Laboratory
Original Assignee
Guangzhou Kuvision Digital Technology Co ltd
Peng Cheng Laboratory
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 Guangzhou Kuvision Digital Technology Co ltd, Peng Cheng Laboratory filed Critical Guangzhou Kuvision Digital Technology Co ltd
Priority to CN202310797299.7A priority Critical patent/CN116527904B/en
Publication of CN116527904A publication Critical patent/CN116527904A/en
Application granted granted Critical
Publication of CN116527904B publication Critical patent/CN116527904B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/48Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using compressed domain processing techniques other than decoding, e.g. modification of transform coefficients, variable length coding [VLC] data or run-length data

Abstract

The application provides an entropy coding method, an entropy decoding method and a related device, which are applied to the field of artificial intelligence and comprise the following steps: performing unsigned code fixed-length coding on the quantized data only to obtain unsigned fixed-length codes; determining bit indication information and an asymmetric value range zone bit according to the prediction residual data to obtain a transmission value range so as to determine a coding mode; coding the prediction residual data according to a coding mode to obtain a signed fixed-length code; encoding only quantized data to obtain an unsigned variable length code; encoding the prediction residual data to obtain a signed variable length code; and selecting one with the least bit number from the unsigned fixed-length code, the signed fixed-length code, the unsigned variable-length code and the signed variable-length code as compressed data. Compared with the prior art, the application can reduce the bandwidth requirement and the power consumption of the chip on the basis of realizing the same image compression quality, and can improve the image compression efficiency and the image compression quality on the basis of the same chip bandwidth requirement and the same power consumption.

Description

Entropy coding method, entropy decoding method and related devices
Technical Field
The present application relates to the field of artificial intelligence, and in particular, to an entropy encoding method, an entropy decoding method, and related devices.
Background
Image compression is typically referred to as frame compression and video interface compression, respectively, and reference frame compression is one of the shallow compression techniques that is capable of compressing data stored in a frame memory to reduce external bandwidth and power consumption. In video compression with an upper bound of target code rate, the more reference frames, the higher the prediction accuracy, the better the image quality, however, the main frequency of a chip is generally about 400 MHz, when partial image data is processed, only one reference frame is used to exceed the upper bound of the processing capacity of a memory, and in practical application, the quality of video compression is generally worse under the effective bandwidth of only 70% of the working period of the memory. Therefore, the current image compression has high requirements on bandwidth and power consumption of the chip, and increases the complexity of the chip, thereby reducing the compression efficiency of the image and reducing the compression quality of the image.
Disclosure of Invention
The embodiment of the application mainly aims to provide an entropy encoding method, an entropy decoding method and a related device, which aim to improve the efficiency and quality of image compression.
To achieve the above object, a first aspect of an embodiment of the present application proposes an entropy encoding method, including:
Obtaining only quantized data and prediction residual data of frame image data in an original image;
performing unsigned fixed-length coding on the quantized data only to obtain an unsigned fixed-length code;
determining bit indication information and an asymmetric value range flag bit according to the prediction residual data;
obtaining a transmission value range with a symbol fixed-length code according to the bit indication information and the asymmetric value range zone bit to determine a coding mode of the symbol fixed-length code, wherein the asymmetric value range zone bit is opposite to the two corresponding transmission value ranges under the same bit indication information;
carrying out signed fixed-length coding on the predicted residual data according to the coding mode to obtain a signed fixed-length code;
performing unsigned variable length coding on the quantized data only to obtain an unsigned variable length code;
carrying out signed variable length coding on the predicted residual data to obtain a signed variable length code;
and selecting one with the least bit number from the unsigned fixed-length code, the signed fixed-length code, the unsigned variable-length code and the signed variable-length code as compressed data of the frame image data.
In some embodiments, the determining bit indication information and an asymmetric value range flag bit according to the prediction residual data includes:
Determining maximum absolute value data of the prediction residual data according to the prediction residual data;
and determining the bit indication information and the asymmetric value range zone bit according to the maximum absolute value data and the corresponding sign of the prediction residual error data.
In some embodiments, the obtaining the signed fixed-length encoded transmission value range according to the bit indication information and the asymmetric value range flag bit includes:
determining boundary information according to the bit indication information when the bit indication information is greater than 0;
when the asymmetric value range flag bit is 1, setting a negative end of the boundary information as an open section and a positive end of the boundary information as a closed section to obtain a transmission value range of the signed fixed-length code;
and when the asymmetric value range flag bit is 0, setting the negative end of the boundary information as a closed interval and the positive end of the boundary information as an open interval to obtain the transmission value range of the signed fixed-length code.
In some embodiments, the determining boundary information according to the bit indication information includes:
subtracting 1 from the bit indication information to obtain a subtraction result;
performing power operation by taking a first preset numerical value as a base and taking the subtraction result as an exponent to obtain a positive boundary;
Calculating the opposite number of the corresponding value of the positive boundary to obtain a negative boundary;
and determining boundary information according to the positive boundary and the negative boundary.
In some embodiments, the performing signed variable length coding on the prediction residual data to obtain a signed variable length code includes:
when the predicted residual data is more than 0 or less than 0, determining a sign bit according to the predicted residual data;
performing unsigned variable length coding on the absolute value of the prediction residual data to obtain a first code;
and obtaining a signed variable length code according to the first code and the sign bit.
In some embodiments, the performing unsigned variable length coding on the absolute value of the prediction residual data to obtain a first code includes:
adding the absolute value of the prediction residual data to a second preset value;
binary conversion is carried out on the added result to obtain a second code;
determining a coding prefix according to the second coded bit number;
and obtaining a first code according to the code prefix and the second code.
In some embodiments, the performing signed variable length coding on the prediction residual data to obtain a signed variable length code further includes:
And when the predicted residual data is equal to 0, performing unsigned variable length coding on the predicted residual data to obtain a signed variable length code.
In some embodiments, the acquiring only quantization data and prediction residual data of frame image data in an original image includes:
acquiring frame image data in an original image;
quantizing the frame image data according to preset quantization parameters to obtain quantized data only;
and carrying out pixel prediction on the quantized data only to obtain prediction residual data.
In some embodiments, after selecting one of the unsigned fixed length code, the signed fixed length code, the unsigned variable length code, and the signed variable length code having the smallest number of bits as the compressed data of the frame image data, the entropy encoding method further includes:
inputting the compressed data to a video cache checker for checking;
when the video cache checker is in an overflow state, increasing and adjusting the quantization parameter, and taking the adjusted quantization parameter as a preset quantization parameter;
repeatedly acquiring compressed data corresponding to the frame image data according to the quantization parameter until the video buffer checker is in a non-overflow state;
Outputting the compressed data corresponding to the video buffer checker in a non-overflow state.
To achieve the above object, a second aspect of the embodiments of the present application proposes an entropy decoding method, including:
obtaining compressed data, wherein the compressed data is generated according to the entropy coding method of the first aspect;
determining a coding type according to the compressed data, wherein the coding type comprises an unsigned fixed-length code, a signed fixed-length code, an unsigned variable-length code and a signed variable-length code;
decoding the compressed data according to the coding type to obtain decoded data;
and determining frame image data according to the decoded data.
In some embodiments, said determining frame image data from said decoded data comprises:
when the decoded data is prediction residual data, determining a prediction mode and a quantization parameter of the decoded data;
performing inverse prediction on the decoded data according to the prediction mode to obtain quantized data only;
and dequantizing the quantized data only according to the quantization parameter to obtain frame image data.
To achieve the above object, a fourth aspect of the embodiments of the present application provides an entropy encoding device, including:
An acquisition unit for acquiring only quantized data and prediction residual data of frame image data in an original image;
the first coding unit is used for carrying out unsigned fixed-length coding on the quantized data only to obtain an unsigned fixed-length code;
the information determining unit is used for determining bit indication information and an asymmetric value range zone bit according to the prediction residual data;
the value range determining unit is used for obtaining a transmission value range with a sign fixed-length code according to the bit indication information and the asymmetric value range zone bits so as to determine a coding mode of the sign fixed-length code, and the asymmetric value range zone bits are corresponding to two second coding units with opposite opening and closing conditions of the transmission value ranges under the same bit indication information and are used for carrying out the sign fixed-length code on the prediction residual data according to the coding mode so as to obtain a sign fixed-length code;
the third coding unit is used for performing unsigned variable length coding on the quantized data only to obtain an unsigned variable length code;
a fourth coding unit, configured to perform signed variable length coding on the prediction residual data to obtain a signed variable length code;
and the comparison unit is used for selecting one with the least bit number from the unsigned fixed-length code, the signed fixed-length code, the unsigned variable-length code and the signed variable-length code as compressed data of the frame image data.
To achieve the above object, a fourth aspect of the embodiments of the present application proposes an electronic device including a memory storing a computer program and a processor implementing the entropy encoding method according to the above first aspect or the entropy decoding method according to the above second aspect when the processor executes the computer program.
To achieve the above object, a fifth aspect of the embodiments of the present application proposes a computer-readable storage medium storing a computer program that, when executed by a processor, implements the entropy encoding method described in the above first aspect or the entropy decoding method described in the above second aspect.
The entropy coding method, the entropy decoding method and the related device provided by the application are used for respectively coding only quantized data to obtain an unsigned fixed-length code and an unsigned variable-length code, and coding prediction residual data to obtain a signed fixed-length code and a signed variable-length code, the variable-length coding and the fixed-length coding are combined, and the coding mode with optimal compression efficiency, namely the coding mode corresponding to the coding result with the least bit number, is selected from the variable-length coding and the fixed-length coding, and the corresponding coding result is used as compression data.
Drawings
Fig. 1 is a flowchart of an entropy encoding method provided by an embodiment of the present application;
fig. 2 is a flowchart of information determination of an entropy encoding method provided by an embodiment of the present application;
FIG. 3 is a flow chart of a method for determining a transmission value range of an entropy encoding according to an embodiment of the present application;
FIG. 4 is a flowchart of calculating boundary information of an entropy encoding method according to an embodiment of the present application;
FIG. 5 is a flow chart of a signed variable length code encoding of an entropy encoding method provided by an embodiment of the present application;
FIG. 6 is a flowchart of a method for determining a first code of an entropy encoding according to an embodiment of the present application;
FIG. 7 is another flow chart of the signed variable length code encoding of the entropy encoding method provided by the embodiment of the present application;
FIG. 8 is another flow chart of the entropy encoding method provided by the embodiment of the application for calculating only quantized data and prediction parameters;
FIG. 9 is a flowchart of a check of an entropy encoding method provided by an embodiment of the present application;
fig. 10 is a main flowchart of an entropy decoding method provided by an embodiment of the present application;
fig. 11 is a flowchart of determining frame image data of an entropy decoding method provided by an embodiment of the present application;
FIG. 12 is a schematic diagram of an entropy encoding method provided by an embodiment of the present application;
fig. 13 is a schematic diagram of an entropy decoding method according to an embodiment of the present application;
Fig. 14 is a schematic diagram of an entropy encoding apparatus according to an embodiment of the present application;
fig. 15 is a schematic hardware structure of an electronic device according to an embodiment of the present application.
Detailed Description
The present application will be described in further detail with reference to the drawings and examples, in order to make the objects, technical solutions and advantages of the present application more apparent. It should be understood that the specific embodiments described herein are for purposes of illustration only and are not intended to limit the scope of the application.
It should be noted that although functional block division is performed in a device diagram and a logic sequence is shown in a flowchart, in some cases, the steps shown or described may be performed in a different order than the block division in the device, or in the flowchart. The terms first, second and the like in the description and in the claims and in the above-described figures, are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order.
Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein is for the purpose of describing embodiments of the application only and is not intended to be limiting of the application.
First, several nouns involved in the present application are parsed:
artificial intelligence (artificial intelligence, AI): is a new technical science for researching and developing theories, methods, technologies and application systems for simulating, extending and expanding the intelligence of people; artificial intelligence is a branch of computer science that attempts to understand the nature of intelligence and to produce a new intelligent machine that can react in a manner similar to human intelligence, research in this field including robotics, language recognition, image recognition, natural language processing, and expert systems. Artificial intelligence can simulate the information process of consciousness and thinking of people. Artificial intelligence is also a theory, method, technique, and application system that utilizes a digital computer or digital computer-controlled machine to simulate, extend, and expand human intelligence, sense the environment, acquire knowledge, and use knowledge to obtain optimal results.
Machine learning, a data analysis technique, allows computers to perform activities that are natural to humans and animals: learning from experience. Machine learning algorithms use computational methods to "learn" information directly from data, independent of a predetermined equation model. These algorithms may adaptively improve performance as the number of samples available for learning increases. It is an artificial intelligence core, which is the fundamental way to make computers intelligent.
Natural language processing (natural language processing, NLP): NLP is a branch of artificial intelligence that is a interdisciplinary of computer science and linguistics, and is often referred to as computational linguistics, and is processed, understood, and applied to human languages (e.g., chinese, english, etc.). Natural language processing includes parsing, semantic analysis, chapter understanding, and the like. Natural language processing is commonly used in the technical fields of machine translation, handwriting and print character recognition, speech recognition and text-to-speech conversion, information intent recognition, information extraction and filtering, text classification and clustering, and view mining, and the like, and relates to data mining, machine learning, knowledge acquisition, knowledge engineering, artificial intelligence research, linguistic research related to language calculation, and the like, which are related to language processing.
Information extraction (Information Extraction): extracting the fact information of the appointed type of entity, relation, event and the like from the natural language text, and forming the text processing technology of the structured data output. Information extraction is a technique for extracting specific information from text data. Text data is made up of specific units, such as sentences, paragraphs, chapters, and text information is made up of small specific units, such as words, phrases, sentences, paragraphs, or a combination of these specific units. The noun phrase, the name of a person, the name of a place, etc. in the extracted text data are all text information extraction, and of course, the information extracted by the text information extraction technology can be various types of information.
Video compression, also known as video coding, refers to the manner in which files in an original video format are converted into files in another video format by compression techniques. Video image data has a strong correlation, that is, a large amount of redundant information. Wherein the redundant information can be divided into spatial redundant information and temporal redundant information. Video compression families are to remove redundant information in data (remove correlation between data), and compression technologies include intra-frame image data compression technology, inter-frame image data compression technology, and entropy coding compression technology.
Shallow compression, also known as mezzanine compression, is a level of video compression that can effectively reduce video bandwidth and maintain overall video quality, with compression ratios typically in the range of 2:1 to 8:1.
Reference frame compression is one of video compression techniques, and belongs to the field of shallow compression techniques. The reference frame compression is an effective scheme for reducing the access bandwidth of a video encoder, not only can reduce the bandwidth of reading reference frame pixels, but also can reduce the bandwidth of writing reconstructed frame pixels into an external memory by the encoder, and is a compression technology of which the reference frame compression is an image compression ratio, namely the ratio of the space occupied before compression to the space actually occupied, and is approximately transparent quality which is 2 to 3 times as large as the ratio of the space occupied before compression.
Entropy coding, i.e. coding without losing any information according to the entropy principle in the coding process. According to the principle of information theory, the optimal data compression coding method can be found, and the theoretical limit of data compression is information entropy. If the information quantity is not lost in the encoding process, namely the information entropy is required to be saved, the information retention encoding is called entropy encoding, which is performed according to the distribution characteristic of the occurrence probability of the message, and is lossless data compression encoding. Common entropy encodings are: shannon (Shannon) coding, huffman (Huffman) coding and arithmetic coding (arithmetic coding). In video coding, entropy coding converts a series of elementary symbols representing a video sequence into a compressed code stream for transmission or storage. The input symbols may include quantized transform coefficients, motion vectors, header information (macroblock header, picture header, sequence header, etc.), and additional information (flag bit information important for proper decoding).
Entropy decoding corresponds to the entropy encoding process one by one, and can be divided into four parts: "judging syntax element", "arithmetic decoding", "update context", and "inverse binarization". The "judging syntax element" part analyzes synchronously according to the coding sequence strictly defined in the standard, and obtains which syntax element is needed to be decoded currently. The arithmetic decoding part firstly looks up a table according to the type of the context model given by the judgment syntax element to obtain a context model, and then analyzes the range and the offset of the current decoding interval according to the data decoding engine in the context model to further obtain the decoded specific binary character. The "update context" is adaptively updated by the context model for the next decoding based on the decoded binary character. The "inverse binarization" module restores the binary character to the true value of the syntax element until the parsing of the one syntax element is completed. This syntax element is sent back to the "determine syntax element" module which determines the type of the next syntax element and the type of context model.
Image compression is typically referred to as frame compression and video interface compression, respectively, and reference frame compression is one of the shallow compression techniques that is capable of compressing data stored in a frame memory to reduce external bandwidth and power consumption. In video compression with an upper bound of target code rate, the more reference frames, the higher the prediction accuracy, the better the image quality, however, the main frequency of a chip is generally about 400 MHz, when partial image data is processed, only one reference frame is used to exceed the upper bound of the processing capacity of a memory, and in practical application, the quality of video compression is generally worse under the effective bandwidth of only 70% of the working period of the memory. Therefore, the current image compression has high requirements on bandwidth and power consumption of the chip, and increases the complexity of the chip, thereby reducing the compression efficiency of the image and reducing the compression quality of the image.
Based on this, the application provides an entropy coding method, an entropy decoding method and a related device, the entropy coding method provided by the embodiment of the application fuses variable length coding and fixed length coding, and selects the coding result corresponding to the coding mode with optimal compression efficiency as compressed data, in addition, the application determines the transmission value range of signed fixed length coding according to the asymmetric value range zone bit, can improve the information density of signed fixed length codes, improves the coding efficiency, and can effectively reduce the bandwidth requirement and the power consumption of a chip on the basis of realizing the same image compression quality as compared with the prior art, and can improve the compression efficiency of images on the basis of the same chip bandwidth requirement and power consumption.
The entropy encoding method, the entropy decoding method and the related devices provided by the embodiment of the application are specifically described through the following embodiments, and the entropy encoding method in the embodiment of the application is described first.
The embodiment of the application can acquire and process the related data based on the artificial intelligence technology. Among these, artificial intelligence (Artificial Intelligence, AI) is the theory, method, technique and application system that uses a digital computer or a digital computer-controlled machine to simulate, extend and extend human intelligence, sense the environment, acquire knowledge and use knowledge to obtain optimal results.
Artificial intelligence infrastructure technologies generally include technologies such as sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, big data processing technologies, operation/interaction systems, mechatronics, and the like. The artificial intelligence software technology mainly comprises a computer vision technology, a robot technology, a biological recognition technology, a voice processing technology, a natural language processing technology, machine learning/deep learning and other directions.
The embodiment of the application provides an entropy coding method, which relates to the technical field of artificial intelligence. The entropy coding method provided by the embodiment of the application can be applied to the terminal, the server and software running in the terminal or the server. In some embodiments, the terminal may be a smart phone, tablet, notebook, desktop, etc.; the server side can be configured as an independent physical server, a server cluster or a distributed system formed by a plurality of physical servers, and a cloud server for providing cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDNs, basic cloud computing services such as big data and artificial intelligent platforms and the like; the software may be an application or the like implementing the entropy encoding method, but is not limited to the above form.
The application is operational with numerous general purpose or special purpose computer system environments or configurations. For example: personal computers, server computers, hand-held or portable devices, tablet devices, multiprocessor systems, microprocessor-based systems, set top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, distributed computing environments that include any of the above systems or devices, and the like. The application may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. The application may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.
It should be noted that, in each specific embodiment of the present application, when related processing is required according to user information, user behavior data, user history data, user location information, and other data related to user identity or characteristics, permission or consent of the user is obtained first, and the collection, use, processing, and the like of the data comply with related laws and regulations and standards. In addition, when the embodiment of the application needs to acquire the sensitive personal information of the user, the independent permission or independent consent of the user is acquired through popup or jump to a confirmation page and the like, and after the independent permission or independent consent of the user is definitely acquired, the necessary relevant data of the user for enabling the embodiment of the application to normally operate is acquired.
Referring to fig. 1, fig. 1 is a flowchart of an entropy encoding method provided in an embodiment of the present application. The entropy coding method provided by the embodiment of the application comprises the following steps:
and step S100, obtaining only quantized data and prediction residual data of frame image data in an original image.
And step 200, performing unsigned fixed-length coding on the quantized data only to obtain an unsigned fixed-length code.
And step S300, determining bit indication information and an asymmetric value range zone bit according to the prediction residual data.
Step 400, according to the bit indication information and the asymmetrical value field flag bit, obtaining a transmission value field with a symbol fixed-length code to determine the coding mode of the symbol fixed-length code, wherein the opening and closing conditions of two corresponding transmission value fields of the asymmetrical value field flag bit under the same bit indication information are opposite.
And S500, carrying out signed fixed-length coding on the prediction residual data according to a coding mode of signed fixed-length coding to obtain a signed fixed-length code.
And S600, performing unsigned variable length coding on the quantized data to obtain an unsigned variable length code.
And step S700, carrying out signed variable length coding on the prediction residual data to obtain a signed variable length code.
Step S800, selecting the least bit number from the unsigned fixed-length code, the signed fixed-length code, the unsigned variable-length code and the signed variable-length code as the compressed data of the frame image data.
It should be noted that, the entropy coding method provided by the embodiment of the application encodes only quantized data to obtain an unsigned fixed-length code and an unsigned variable-length code, and encodes prediction residual data to obtain a signed fixed-length code and a signed variable-length code, the variable-length code and the fixed-length code are fused, and the coding mode with optimal compression efficiency is selected from the variable-length code and the fixed-length code, that is, the coding mode corresponding to the coding result with the minimum occupied code bit is selected as the compressed data.
It should be noted that entropy encoding is a technique for performing lossless data compression, which is a common method among image compression methods.
In step S100 of some embodiments, only quantized data and prediction residual data are respectively in one-to-one correspondence with frame image data, the only quantized data is generated by quantizing the frame image data, and the only quantized data is unsigned data, and the prediction residual data is obtained by predicting the only quantized data through pixels, and is the signed number.
In step S200 of some embodiments, the length of the unsigned fixed-length code is fixed, and the length thereof, that is, the bit indication information corresponding to the unsigned fixed-length code is determined by the numerical maximum value of the quantized data only, the most significant bit in the binary code corresponding to the maximum value is 1, the higher bits are all 0, and the total bit number from the least significant bit of the maximum value to the bit with the most significant bit of 1 is the bit length of the unsigned fixed-length code. The length of the unsigned fixed-length code is fixed, and no matter the value corresponding to only quantized data is smaller, the length of the unsigned fixed-length code is always fixed.
It should be noted that, the present application processes the unsigned number by the minimum unsigned number method mincenigdbit (the maximum value m in the unsigned number counted in the quantized data corresponding to the image macro block), when the input unsigned number is 0, the minimum unsigned number method returns 0, and when the input unsigned number is not equal to 0, the unsigned number is input as the non-zero unsigned number by the reverse bit scanning method BitScanReverse, the bit mapping value X corresponding to the position adjacent to the high-order all-zero region and having the highest bit of 1 is returned, and the maximum unsigned number method returns x+1, wherein x+1 is the minimum bit number of the input unsigned number, i.e. the bit indication information corresponding to the unsigned fixed length code. Each unsigned number is transmitted by taking only the bit indication information m bits of the lower bit part in the binary coding bit number, and particularly, when the bit indication information is equal to 0, any unsigned prediction residual data is not required to be transmitted, because the unsigned prediction residual data are 0 at the same time, and only the bit indication information is required to be transmitted.
In step S300 of some embodiments, the bit indication information is the number of bits of the signed fixed-length code, and the asymmetric value range flag bit corresponds to the left and right opening and closing of the transmission value range, which in combination can determine the signed fixed-length code transmission value range.
In step S400 of some embodiments, the bit indication information is a bit number of a signed fixed-length code, and the asymmetric value range flag bit corresponds to left and right switching of the transmission value range, according to the correspondence, it is possible to determine the coding mode, when the bit indication information is the same, the switching conditions of the two transmission value ranges corresponding to the asymmetric value range flag bit are opposite, for example, when the bit indication information is 2, the two transmission value ranges corresponding to the asymmetric value range flag bit are (-2, 2) and [ -2,2] respectively.
In step S500 of some embodiments, the signed fixed length code is provided with sign bits, the sign bits being used to represent the sign of the prediction residual data.
In step S600 of some embodiments, the length of the unsigned variable length code is a variable value, and the length of the unsigned variable length code will vary according to the size of the prediction residual data, and the larger the quantized data is, the longer the unsigned variable length code is.
In step S700 of some embodiments, the unsigned fixed length code is provided with sign bits for representing the sign of the prediction residual data.
In step S800 of some embodiments, the bit numbers of the unsigned fixed-length code, the unsigned variable-length code, the signed fixed-length code, and the signed variable-length code corresponding to different encoded data are all different, and the one with the least bit number is selected from the unsigned fixed-length code, the signed fixed-length code, the unsigned variable-length code, and the signed variable-length code as the compressed data of the frame image data, which occupies the least bit, has higher corresponding compression efficiency, and better compression quality.
It will be appreciated that with reference to fig. 2, step S300 includes, but is not limited to, the following steps:
step S310, determining maximum absolute value data of the prediction residual data according to the prediction residual data.
And step 320, determining bit indication information and an asymmetric value range flag bit according to the maximum absolute value data and the corresponding sign of the prediction residual error data.
The bit indication information is the number of bits of the fixed-length code, and the block header corresponding to the fixed-length code generally includes a length indication value of the fixed-length code, that is, the bit indication information, so the bit indication information is 0 or a positive integer.
It should be noted that, the minimum number M of signed binary numbers is obtained by a minimum number method MinSignedBit (the absolute value maximum value M of signed numbers counted in the prediction parameter data corresponding to the image macro block residual error, M corresponds to the positive and negative sign conditions of the signed numbers in the prediction residual error data), M is the bit indication information of the signed numbers, specifically, the minimum number n of M is obtained by minun signedbit in MinSignedBit; returning n when n is equal to 0; when n is not equal to 0, if the prediction residual data corresponding to M has only positive number or only negative number, and M is equal to the power of 2 n-1, namely 2 n-1 (i.e., 1 shifts left by n-1 binary bits), n is returned, when n is not equal to 0, if the prediction residual data corresponding to M is only positive or only negative, and M is not equal to the power of 2 to n-1, i.e., 2 n-1 (i.e., 1 shifts left by n-1 binary bits), n+1 is returned; when n is not equal to 0, if the prediction residual data corresponding to M has both positive and negative numbers, returning to n+1. The calculation method comprises the following steps of solving the minimum number n of M through MinUnsignedBit (M), wherein when n is equal to 0, all prediction residual data are equal to 0, the asymmetrical value range zone bit is not required to be transmitted, and only bit indication information is required to be transmitted; when n is not equal to 0, ifM corresponds to only positive number of prediction residual data and M is equal to 2 n -1 When n is not equal to 0, if the prediction residual data corresponding to M has only negative number and M is equal to 2 n-1 When the asymmetric value range flag bit takes a value of 0; when n is not equal to 0, if the prediction residual data corresponding to M has both positive number and negative number, the flag bit of the asymmetrical value range takes a value of 0.
It will be appreciated that with reference to fig. 3, step S400 includes, but is not limited to, the following steps:
Step S410, when the bit indication information is greater than 0, determining boundary information according to the bit indication information.
And S420, when the asymmetric value range flag bit is 1, setting the negative end of the boundary information as an open section and the positive end of the boundary information as a closed section to obtain the transmission value range of the signed fixed-length code.
And S430, when the asymmetric value range flag bit is 0, setting the negative end of the boundary information as a closed interval and the positive end of the boundary information as an open interval to obtain the transmission value range of the signed fixed-length code.
It should be noted that the signed fixed-length code in the prior art is generally a symmetric transmission value range, and because of the sign, the minimum expression needs to be expressed by more than two bits, i.e. the value range expressed when the bit indication information is more than or equal to 2, for example, 2 bits is a closed range [ -1,1]Only 3 values are expressed, and in fact 4 values can be expressed for 2 bits; the value range expressed when 3 bits are [ -3,3]Only 7 values are expressed, and 3 bits can actually express 8 values; …; the value range expressed by N bits is the closed interval [ -2 [ N-1 -1),((2 N-1 -1)]Express only 2 N -1 value, N bits, can actually express 2 N A value. Obviously, one value in the signed fixed-length code is wasted, in order to solve the problem, the transmission value range in the prior art is a half-open and half-closed section with a negative end as a closed section and a positive end as an open section, and the specific range is as follows:
1 bit, expressed as [ -1, 1), takes on values of-1, 0.
2 bits, expressed as [ -2, 2), take the values of-2, -1, 0, 1.
3 bits, expressed as [ -4, 4), take the values of-4, -3, -2, -1, 0, 1, 2, 3.
Similarly, N bits express [ -2 ] N-1 ,2 N-1 ) There is 2 N Seed value.
The above transmission value range is not flexible enough, and cannot meet the situation that the data in the prediction residual data is just in the transmission value range with the opposite number.
It should be noted that, for the signed fixed-length code, the block data header of the present application adds an asymmetric value field flag bit to calibrate the left and right opening and closing spaces of the signed fixed-length code value field, when the asymmetric value field flag bit is 0, it indicates that the signed fixed-length code adopts a conventional complement cut-off mode, i.e. the negative end of the transmission value field of the signed fixed-length code is a closed section, the positive end is an open section, and when the asymmetric value field flag bit is 1, it indicates that the signed fixed-length code adopts a cut-off mode after taking the opposite number, i.e. the negative end of the transmission value field of the signed fixed-length code is an open section, and the positive end is a closed section. The setting mode of the signed fixed-length code can meet the condition that the prediction residual error data is just in the inverted transmission value range, improves the flexibility of the signed fixed-length code, solves the problem of code value waste of the fixed-length code with the symmetric transmission value range, and can improve the information density of the asymmetric fixed-length code.
In step S410 of some embodiments, when the bit indication information is equal to 0, no calculation nor transmission of the asymmetric value range flag bit is required, and no transmission of any one signed prediction residual data is required, because they are all 0 at the same time, only the bit indication information is required to be transmitted, and when the bit indication information is greater than 0, the boundary information is determined according to the bit indication information.
In step S420 of some embodiments, the asymmetric value range flag bit corresponds to left and right opening and closing of the transmission value range of the fixed-length code, and when the bit indication information is greater than 0 and the asymmetric value range flag bit is 1, the negative end of the transmission value range of the signed fixed-length code is an open section, and the positive end is a closed section. Boundary information of the transmission value range is determined by bit indication information. The transmission value range with the negative number end being an open section and the positive number end being a closed section can adapt to the condition that the value range of the positive number end is dominant.
In step S430 of some embodiments, when the bit indication information is greater than 0 and the flag bit of the asymmetric value range is 0, the signed fixed-length code adopts a conventional complement truncation mode, that is, the negative end of the transmission value range of the signed fixed-length code is a closed section and the positive end is an open section. The setting method of the fixed-length codes of the two different transmission value fields can simultaneously meet the condition that the positive number end value field is dominant or the negative number end value field is dominant, so that the coding efficiency is improved.
It will be appreciated that referring to fig. 4, step S410 includes, but is not limited to, the following steps:
step S411, subtracting 1 from the bit indication information to obtain a subtraction result.
Step S412, performing power operation by taking the first preset value as a base and the subtraction result as an exponent to obtain a positive boundary.
Step S413, calculating the opposite number of the corresponding value of the positive boundary to obtain the negative boundary.
Step S414, determining boundary information according to the positive boundary and the negative boundary.
It should be noted that when the bit indication information is N, the exponent is N-1, and in addition, the entropy coding is binary, the first preset value is set to 2, i.e. the base is 2, and the result obtained by the power operation is 2 N-1 I.e. positive boundary of 2 N-1 . Calculating the opposite number of the corresponding value of the positive boundary to obtain a negative boundary, wherein the negative boundary is-2 N-1 . The resulting boundary comprises a positive boundary and a negative boundary, and the transmission value range of the signed fixed-length code is determined based thereon.
It should be noted that, in step S340, the transmission value range of the signed fixed-length code is (-2) N-1 ,2 N-1 ]The transmission value range of the signed fixed-length code in step S360 is [ -2 N-1 ,2 N-1 ) The transmission value ranges of the two half-open and half-close sections are opposite to each other in opening and closing conditions.
When the flag bit of the asymmetric value range is 1, the negative end of the transmission value range of the signed fixed-length code is an open section, and the positive end is a closed section, and the specific range is as follows:
1 bit, expressed (-1, 1), and the values are 0, 1.
2 bits, expressed (-2, 2), take the values-1, 0, 1, 2.
3 bits, expressed (-4, 4), take on the values-3, -2, -1, 0, 1, 2, 3, 4.
Similarly, N bits, expressed (-2) N-1 ,2 N-1 ]There is 2 N Seed value.
In some embodiments, in a first preferred encoding scheme, the length of the fixed-length code is a fixed value N greater than 0, when the flag bit of the asymmetric value range is 0, when the prediction residual data is processed, only the low N-bit data indicated by the bit indication information N is taken as the encoding value of the prediction residual data by binary numbers of the prediction residual data. For example, when the bit indication information is 4, -2 may be represented as 1110, -8 may be represented as 1000,0 and 0000,3 as 0011. When the asymmetric value range flag bit is 1, the prediction residual data is processed, the prediction residual data is converted into a binary number after the opposite number is taken, and only the low N-bit data indicated by the bit indication information N is taken as the encoding value of the prediction residual data. For example, when the bit indication information is 4, -2 may be denoted as 0010, -7 may be denoted as 0111,0 as 0000,8 and 1000,3 as 1101.
In some examples, in the second alternative embodiment, the length of the fixed-length code is a fixed value N greater than 0, and when the flag bit of the asymmetric value range is 0, the value corresponding to the prediction residual data is subtracted by the minimum value-2 in the transmission value range when the prediction residual data is processed N-1 And obtaining a difference value, converting the difference value into binary number, and taking only low-N bit data indicated by the bit indication information N as a coding value of the prediction residual data. For example, when the bit indication information is 4, the minimum value in the transmission value field is-2 N-1 Equal to-8, -2 may be denoted as 0110, -8 may be denoted as 0000,0 as 1000,3 as 1011. When the asymmetric value range flag bit is 1, the minimum value-2 in the transmission value range is subtracted from the value corresponding to the prediction residual data when the prediction residual data is processed N-1 +1 obtaining the difference value, converting the difference value into binary number, and taking only the low-N bit data indicated by the bit indication information N asIs the encoded value of the prediction residual data. For example, when the bit indication information is 4, the minimum value in the transmission value domain is-2 N-1 When +1 equals-7, -2 can be denoted 0101, -7 can be denoted 0000,0 as 0111,8 and 1111,3 as 1010.
The above list only two embodiments that are relatively simple algorithmically, but do not represent the specific details defining the implementation of the encoding, e.g., the numbers subtracted in alternative encoding embodiments two, may actually be other constants. But it is a core scheme for truly improving the entropy coding information density without affecting the asymmetric value range.
It will be appreciated that with reference to fig. 5, step S700 includes, but is not limited to, the steps of:
step S710, when the predicted residual data is more than 0 or less than 0, determining a sign bit according to the predicted residual data.
Step S720, performing unsigned coding on the absolute value of the prediction residual data to obtain a first code.
Step S730, obtaining a signed variable length code according to the first code and the sign bit.
It should be noted that, the signed variable length code of the present application, that is, the arrangement of the sign bit in the signed fixed length code, saves the effective step code more fully, saves the expression bit of the step code leading step code, and further improves the coding efficiency.
In step S710 of some embodiments, the sign bit corresponds to the sign of the prediction residual data, and may be set to 1 when the prediction residual data modulus is a positive integer, and to 0 when the sign bit is a negative integer. Alternatively, the sign bit may be set to 0 when the prediction residual is a positive integer and to 1 when the sign bit is a negative integer.
In step S730 of some embodiments, the sign bit is combined with the first code to obtain a signed variable length code, and the sign bit may be disposed in front of or behind the first code.
The variable length code is also called K-order variable length exponent code, K-order golomb code. The design of the golomb code is intended for coding consecutive unsigned numbers, but it can be very easily mapped and extended to signed number fields by overlapping positive and negative numbers one by one, the number overlapping into a sequence: 0. -1, -2, -3, -4, 4 … … to non-negative integer even numbered, negative integer odd numbered, set x to signed number, index to mapped unsigned number subscript, then:
If(x>=0)
index=2x;
Else
index=-2x-1;
it can be seen from the above description that the signed number extension of the variable length index code in the prior art, the sign bit directly occupies a code value subscript of the 0 th order variable length index code to be mapped, and specifically, the unsigned 0 th order index variable length code and the corresponding transmission value set, and the signed 0 th order index variable length code and the corresponding transmission value set are shown in table 1.
TABLE 1
Wherein X is 0 or 1, and the value 0 in the application is directly encoded by 0-order unsigned variable length index, the signed extension of the numbers except 0 adopts a first-order ascending mode, namely 1-order unsigned variable length index encoding to extend the sign, namely the sign bit S is set at the end, and the sign bit S is specifically shown in the table 2.
TABLE 2
The number of bits used in the original sign 0-order exponential growth code corresponding to the specific numerical value is compared with the sign 0-order exponential growth code of the present application, and the obtained results are shown in table 3.
TABLE 3 Table 3
Table 3 only counts the case of symbols that are normally distributed very close to the center, where the probability variation is relatively small, but this does not affect the generality of the coding efficiency analysis. The improved mode can have a higher probability of expressing a given value with a smaller number of bits. The cost is only one bit more than a few numerical values.
It will be appreciated that with reference to fig. 6, step S720 includes, but is not limited to, the following steps:
step S721, adding the absolute value of the prediction residual data to the second preset value.
Step S722, binary converting the added result to obtain a second code.
Step S723, determining the coding prefix according to the second coded bit number.
Step S724, obtaining a first code according to the code prefix and the second code.
In step S721 of some embodiments, the present application is binary coded, and thus the second preset value is set to 1.
In step S723 of some embodiments, the encoding prefix corresponds to the second encoded bit number, specifically, the second encoded bit number is subtracted by 1 to obtain the bit number of the encoding prefix, and the values of the encoding prefix are all 0.
In step S724 of some embodiments, the encoding prefix is disposed before the second encoding, and the first encoding may be obtained.
It is to be noted that, assuming that the prediction residual data is-7, the absolute value of the prediction residual data is added to the second preset value to obtain 8, and then binary conversion is performed, the obtained second code is 1000, the number of bits of the second code is 4, and thus the code prefix is 000, and therefore, the first code is 0001000. The prediction residual data is negative, and the corresponding sign bit is set to 0, so that the final corresponding signed variable length code of the prediction residual data is 00010000. Alternatively, if the prediction residual data is negative and its corresponding sign bit is set to 1, the final signed variable length code corresponding to the prediction residual data is 00010001. When the prediction residual data is positive, the processing of sign bits is exactly opposite to when the prediction residual data is negative.
It will be appreciated that referring to fig. 7, step S700 further includes, but is not limited to, the steps of:
and step 740, when the predicted residual data is equal to 0, performing unsigned variable length coding on the predicted residual data to obtain a signed variable length code.
Since 0 is an unsigned number, the 0-order unsigned variable length index is directly used for encoding, and the corresponding signed variable length code is 1.
In the present application, the fixed-length code is used for encoding when the prediction residual data is in a decimal value, and the data block is predicted by pixels according to a distance of 8x8 data blocks with ten bits of pixel width and all of width and height shown in table 4, so that the obtained prediction residual data is optimally 4, the length of the corresponding signed variable-length code is 6, the optimal data byte size is 8×8×6/8=48 bytes, and the data byte size is 8×8×10/8=80 bytes when the data block is represented by using 10 bits of unsigned fixed-length code without digital compression. In addition, the maximum value in the data block is 12, the corresponding binary code bit 1100, the data amount corresponding to the direct transmission unsigned code is 8×8×4/8=32 bytes, and obviously, the data amount transmitted through the fixed-length code is more, and is better than the unsigned code and the variable-length code.
In addition, according to the unsigned fixed length coding method described in step S300 of the present application, the maximum value in the data block is 12, the corresponding binary code bit 1100, and according to step S800 of the present application, the corresponding data byte of the unsigned fixed length coding is 8×8×4/8=32 bytes, obviously, the data transmitted through the unsigned fixed length code is less, the information density is higher, and is better than the signed variable length code. In the application, the unsigned variable length codes are directly coded by 0-order unsigned variable length indexes, if an unsigned variable length code is adopted, the byte size of the unsigned variable length code corresponding to 0 is 1, the byte size of the unsigned variable length code corresponding to 5,8 and 12 is 7, the average bit is 5, the corresponding data byte size is 8x 5/8=40 bytes, and the unsigned fixed length codes are still more optimal.
When the signed fixed-length code mode is encoded according to the method described in the step S374 in the application, the obtained prediction residual data is optimally 4, the bit indication information is optimally 3, the positive end is optimally, the asymmetrical value range flag bit is 1, the transmission value range is (-4, 4), the data byte size is 8 x 3/8=24 bytes, and only one more asymmetrical value range flag bit is paid.
The practical significance and specific embodiments of the application with regard to the optimal coding are explicitly pointed out here.
TABLE 4 Table 4
It will be appreciated that with reference to fig. 8, step S100 includes, but is not limited to, the following steps:
step S110, frame image data in the original image is acquired.
Step S120, the frame image data is quantized according to preset quantization parameters, and only quantized data is obtained.
And step S130, performing pixel prediction on the quantized data only to obtain prediction residual data.
It should be noted that only the quantized data and the prediction residual data are respectively in one-to-one correspondence with the frame image data, the only the quantized data is generated by quantizing the frame image data, which is unsigned data, and the prediction residual data is obtained by predicting only the quantized data through pixels, which is signed number. The arrangement of only quantized data and prediction residual data facilitates both unsigned and signed coding.
The quantization can reduce the coding length without reducing the visual effect, and reduce unnecessary information in visual restoration.
It should be noted that, prediction mainly includes performing adjacent element (e.g., pixel) prediction, string prediction, block prediction, etc. on quantized data only, and generating prediction residual data. In image coding, a macroblock is a basic unit of coding, and in YUV420 format, each macroblock includes 4 8×8 luminance blocks and 2 8×8 chrominance blocks, for a total of 6 image blocks. In entropy coding, each point of an image block is a coefficient, and the coefficient represents prediction residual data obtained through a coding step before entropy coding.
It will be appreciated that referring to fig. 9, step S800 may further include, but is not limited to, the following steps:
step S910, the compressed data is input to a video buffer verifier for verification.
Step S920, when the video buffer verifier is in the overflow state, increasing and adjusting the quantization parameter, and taking the adjusted quantization parameter as a preset quantization parameter.
Step S930, repeatedly obtaining compressed data corresponding to the frame image data according to the quantization parameter until the video buffer checker is in a non-overflow state.
Step S940, outputting compressed data corresponding to the video buffer verifier in a non-overflow state.
It should be noted that the video buffer verifier (Video Buffering Verifier, VBV) is a decoding buffer model that will not overflow when the input code stream complies with the standard of the digital video/audio set compression expert group (MovingPictureExpertsGroup, MPEG). And inputting the obtained compressed data into a video buffer checker for checking, when the video buffer checker is in an overflow state, increasing and adjusting the quantization parameter, taking the adjusted quantization parameter as a preset quantization parameter, repeatedly obtaining the compressed data corresponding to the frame image data according to the quantization parameter until the video buffer checker is in a non-overflow state, and outputting the compressed data corresponding to the video buffer checker in a non-overflow state, so that the finally obtained compressed data meets the MPEG requirement, and the compression quality is improved.
It should be noted that, the image quality degradation of the present application is generated by quantization, and whether the quantization generates the image quality degradation is determined by a buffer model, i.e., a video buffer checker, i.e., by rate control.
The structure of the compressed data is as follows:
prediction mode |whether or not to fix-length code |fix-length code length instruction value |qp value|pixel compressed data | … |pixel compressed data.
Then the specific structure of the macroblock header of the compressed data is:
prediction mode | whether fixed-length code |fixed-length code length indicator |qp value.
And (3) fixed-length code transmission:
prediction mode | whether fixed-length code |fixed-length code length indicator |qp value.
Variable length code transmission:
whether the prediction mode |is constant length code |qp value|variable length code pixel compressed data.
It should be noted that, the QP value is a quantization parameter, different pixel bit widths correspond to different maximum quantization parameters, and the calculation formula of the maximum quantization parameter MaxQp is as follows:
if (pixel bit width is even)
{
Maxqp=4 pixel bit width/2;
}
Else
{
maxqp=4 (pixel bit width+1)/2;
}
when the pixel bit width is 10, the maximum quantization parameter is 20, the field length is 5, and when the pixel bit width is 7, the maximum quantization parameter is 16, and the field length is 5.
The prediction mode is 3 bits, wherein 0 represents the upward prediction, 1 represents the left prediction, 2 represents the upward left prediction, 3 represents the upward right prediction, 4 represents the direct current median prediction, 5 represents the quantization-only mode, and 6 and 7 represent the reservation.
It should be noted that, if the fixed-length code occupies 1 bit, the compressed data is a variable-length code when the value is 0, and the compressed data is an unsigned variable-length code when the prediction mode is the quantization-only mode, i.e., the unsigned coding, and the other is the signed variable-length code. When the value corresponding to the fixed-length code is 1, the compressed data is the fixed-length code, and when the prediction mode is the quantization-only mode, namely the unsigned coding, the compressed data is the unsigned fixed-length code, and the other is the signed fixed-length code.
It should be noted that the fixed-length code length indication value is composed of two parts, wherein 4 bits are bit indication information, the specific size of the bit indication information is the maximum value of the absolute value of the prediction residual data or the quantized data only, and the other bit is an asymmetric value range flag bit, and the bit is dynamic and exists only when the signed fixed-length code is transmitted. If the bit indication information is 0, it means that the prediction residual data or only the quantized data to be transmitted is 0, all the prediction residual data or only the quantized data need not be transmitted, and only the bit indication information needs to be transmitted.
It should be noted that, the fixed-length code can directly calculate the pixel compressed data except for the macroblock header with a fixed byte length, that is, the byte length information of the compressed data does not need to be transmitted, and at the decoding end, the first byte of the next macroblock header can be directly located from the current macroblock header.
It should be noted that, the macroblock header of the variable length code is also fixed length, and includes the byte length of the optional variable length code pixel compressed data, which can also be directly located from the current macroblock header to the first byte of the next macroblock header at the decoding end.
It should be noted that, referring to fig. 12, the present application quantizes frame image data to obtain quantized data, only the quantized data may be directly subjected to unsigned variable length coding, firstly, an unsigned variable length code is obtained, and the unsigned variable length code, that is, the unsigned variable length code, is output to an intermediate buffer, and is compared with the unsigned fixed length code to determine which is optimal, and the unsigned code with better performance is output, in addition, pixel prediction is performed on the quantized data to obtain predicted residual data, signed coding is performed on the predicted residual data to obtain signed variable length code and signed fixed length code, and the signed code with better performance is output, then, the signed code and the unsigned code which are output are compared to obtain the code with optimal performance, that is, compressed data, the bit number occupied by the code corresponding to the compressed data is minimum, the compressed data is input to a video buffer checker for checking, when the video buffer checker is in an overflow state, the quantized parameter is increased and the quantized parameter after the adjustment is used as a preset quantized parameter, the quantized parameter is repeatedly obtained according to the quantized parameter, the compressed data corresponding to the compressed data is obtained when the compressed data is in a non-buffer state, and the compressed data is in an overflow state, and the compressed state is not met, and the compressed data is output, and the quality is not in a state corresponding state. The application fuses the variable length and fixed length entropy coding method according to the statistical result of pixel prediction, and adopts a variable length index code mode in a signed variable length code part, 0 is an unsigned number, the 0-order unsigned variable length index code is used for expressing, the signed number except 0 is set, the sign bit is set, the effective order code is saved more fully, the front order code expression bit of the order code is saved, the coding efficiency is further improved, and an asymmetric value domain flag bit is set in the signed fixed length code part to mark the left and right opening and closing space of a signed fixed length code transmission value domain, and the coding efficiency of the fixed length code is improved.
In addition, referring to fig. 10, an embodiment of the present application further provides an entropy decoding method, including, but not limited to, the steps of:
step S1010, obtaining compressed data, wherein the compressed data is generated according to the entropy coding method.
Step S1020, determining the coding type according to the compressed data, wherein the coding type comprises an unsigned fixed length coding, a signed fixed length coding, an unsigned variable length coding and a signed variable length coding.
And step S1030, decoding the compressed data according to the coding type to obtain decoded data.
Step S1040, frame image data is determined from the decoded data.
It should be noted that, the compressed data of the entropy decoding method provided by the application is one of an unsigned fixed-length code, an unsigned variable-length code, a signed fixed-length code and a signed variable-length code, firstly, according to the compressed data, the coding type is determined, the coding type corresponds to the unsigned fixed-length code, the unsigned variable-length code, the signed fixed-length code and the signed variable-length code, according to the coding type, the compressed data is decoded to obtain decoded data, and according to the decoded data, the entropy decoding method is determined, and the entropy decoding method corresponds to the entropy coding mode, so that the compression efficiency of video compression can be improved, and the compression quality of video can be improved.
It should be noted that, the entropy encoding method and the entropy decoding method provided by the application can realize 2-3 times of shallow compression of transparent quality, and the encoding and decoding compression test is performed by adopting 22 ultra-high definition sequences, and the test results are shown in table 5. The sequence 22 is random noise, so that the entropy coding method and the entropy decoding method provided by the application can well converge and maintain high quality for unpredictable random noise, and can achieve complete lossless for other sequence parts and achieve error precision which cannot be resolved by human eyes.
TABLE 5
It should be noted that, when the scene of reference frame compression or video interface compression is likely to face a multiple compression usage scene, the results of the encoding and decoding method provided by the present application and the algorithm with 20 to 30 times of compression rate are shown in table 6, and the results of the encoding and decoding method provided by the present application and the algorithm with 80 to 120 times of compression rate are shown in table 7.
TABLE 6
TABLE 7
As can be seen from tables 6 and 7, the present application has very little influence caused by quality or code rate when other compression codecs are connected in series, and basically can be ignored, thus achieving transparent series effect.
It will be appreciated that, referring to fig. 11, step S1040 includes, but is not limited to, the following steps:
In step S1041, when the decoded data is prediction residual data, a prediction mode and quantization parameters of the decoded data are determined.
And step S1042, performing inverse prediction on the decoded data according to the prediction mode to obtain only quantized data.
Step S1043, dequantizing only the quantized data according to the quantized parameters to obtain frame image data.
It should be noted that, in correspondence with step S130, the decoded data is required to be inverse predicted in a prediction manner to obtain only quantized data, and in correspondence with step S120, the only quantized data is required to be inverse quantized according to the quantization parameter, so as to finally obtain the original image data.
When the decoded data is only quantized data, the inverse quantization is directly performed according to step S1043 to obtain frame image data.
It should be noted that, referring to fig. 13, after receiving the compressed data, it is determined whether the compressed data is predicted, when the compressed data is predicted, a prediction mode and a signed coding mode, i.e., coding types, of the compressed data are determined, and the compressed data is restored according to the prediction mode and the signed coding mode, and if the compressed data is not predicted, an unsigned coding mode, i.e., coding types, of the compressed data is determined, and the compressed data is restored according to the unsigned coding mode. And finally, performing inverse quantization on the restored data according to the quantization parameters to obtain frame image data.
In addition, referring to fig. 14, an embodiment of the present application further provides an entropy encoding apparatus, including:
an acquisition unit 100 for acquiring only quantization data and prediction residual data of frame image data in an original image.
The first encoding unit 200 is configured to perform unsigned fixed length encoding on quantized data only, so as to obtain an unsigned fixed length code.
The information determining unit 300 is configured to determine the bit indication information and the asymmetric value range flag bit according to the prediction residual data.
The value range determining unit 400 is configured to obtain a transmission value range of signed fixed-length codes according to the bit indication information and the asymmetric value range flag bit, so as to determine a coding mode of the signed fixed-length codes, where the open and close conditions of two corresponding transmission value ranges of the asymmetric value range flag bit under the same bit indication information are opposite.
The second encoding unit 500 is configured to perform signed fixed-length encoding on the prediction residual data according to the encoding mode, so as to obtain a signed fixed-length code.
The third encoding unit 600 is configured to perform unsigned variable length encoding on only quantized data to obtain an unsigned variable length code.
The fourth encoding unit 700 is configured to select one with the least number of bits from the unsigned fixed-length code, the signed fixed-length code, the unsigned variable-length code, and the signed variable-length code as compressed data of the frame image data.
A comparison unit 800 for comparing the bit numbers of the unsigned fixed length code, the signed fixed length code, the unsigned variable length code and the signed variable length code, and determining the compressed data of the frame image data.
The specific implementation of the entropy encoding device is basically the same as the specific embodiment of the entropy encoding method described above, and will not be described herein.
The embodiment of the application also provides electronic equipment, which comprises a memory and a processor, wherein the memory stores a computer program, and the processor realizes the entropy encoding method or the entropy decoding method when executing the computer program. The electronic equipment can be any intelligent terminal including a tablet personal computer, a vehicle-mounted computer and the like.
Referring to fig. 15, fig. 15 illustrates a hardware structure of an electronic device according to another embodiment, the electronic device includes:
the processor 901 may be implemented by a general-purpose CPU (central processing unit), a microprocessor, an application-specific integrated circuit (ApplicationSpecificIntegratedCircuit, ASIC), or one or more integrated circuits, etc. for executing related programs to implement the technical solutions provided by the embodiments of the present application.
The memory 902 may be implemented in the form of read-only memory (ReadOnlyMemory, ROM), static storage, dynamic storage, or random access memory (RandomAccessMemory, RAM). The memory 902 may store an operating system and other application programs, and when the technical solutions provided in the embodiments of the present disclosure are implemented by software or firmware, relevant program codes are stored in the memory 902, and the processor 901 invokes an entropy encoding method or an entropy decoding method for performing the embodiments of the present disclosure.
An input/output interface 903 for inputting and outputting information.
The communication interface 904 is configured to implement communication interaction between the device and other devices, and may implement communication through a wired manner (such as USB, network cable, etc.), or may implement communication through a wireless manner (such as mobile network, WIFI, bluetooth, etc.).
A bus 905 transfers information between the various components of the device, such as the processor 901, memory 902, input/output interfaces 903, and communication interfaces 904.
Wherein the processor 901, the memory 902, the input/output interface 903 and the communication interface 904 are communicatively coupled to each other within the device via a bus 905.
The embodiment of the application also provides a computer readable storage medium, which stores a computer program, and the computer program realizes the entropy encoding method or the entropy decoding method when being executed by a processor.
The memory, as a non-transitory computer readable storage medium, may be used to store non-transitory software programs as well as non-transitory computer executable programs. In addition, the memory may include high-speed random access memory, and may also include non-transitory memory, such as at least one magnetic disk storage device, flash memory device, or other non-transitory solid state storage device. In some embodiments, the memory optionally includes memory remotely located relative to the processor, the remote memory being connectable to the processor through a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The entropy coding method, the entropy decoding method and the related device provided by the embodiment of the application respectively encode only quantized data to obtain an unsigned fixed-length code and an unsigned variable-length code, encode prediction parameters to obtain a signed fixed-length code and a signed variable-length code, fuse variable-length coding and fixed-length coding, select a coding mode with optimal compression efficiency from the variable-length codes, namely a coding mode corresponding to a coding result occupying the least code bits, and use the corresponding coding result as compressed data.
The embodiments described in the embodiments of the present application are for more clearly describing the technical solutions of the embodiments of the present application, and do not constitute a limitation on the technical solutions provided by the embodiments of the present application, and those skilled in the art can know that, with the evolution of technology and the appearance of new application scenarios, the technical solutions provided by the embodiments of the present application are equally applicable to similar technical problems.
It will be appreciated by persons skilled in the art that the embodiments of the application are not limited by the illustrations, and that more or fewer steps than those shown may be included, or certain steps may be combined, or different steps may be included.
The above described apparatus embodiments are merely illustrative, wherein the units illustrated as separate components may or may not be physically separate, i.e. may be located in one place, or may be distributed over a plurality of network elements. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
Those of ordinary skill in the art will appreciate that all or some of the steps of the methods, systems, functional modules/units in the devices disclosed above may be implemented as software, firmware, hardware, and suitable combinations thereof.
The terms "first," "second," "third," "fourth," and the like in the description of the application and in the above figures, if any, are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used may be interchanged where appropriate such that the embodiments of the application described herein may be implemented in sequences other than those illustrated or otherwise described herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
It should be understood that in the present application, "at least one (item)" means one or more, and "a plurality" means two or more. "and/or" for describing the association relationship of the association object, the representation may have three relationships, for example, "a and/or B" may represent: only a, only B and both a and B are present, wherein a, B may be singular or plural. The character "/" generally indicates that the context-dependent object is an "or" relationship. "at least one of" or the like means any combination of these items, including any combination of single item(s) or plural items(s). For example, at least one (one) of a, b or c may represent: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", wherein a, b, c may be single or plural.
In the several embodiments provided by the present application, it should be understood that the disclosed apparatus and method may be implemented in other manners. For example, the above-described apparatus embodiments are merely illustrative, and for example, the above-described division of units is merely a logical function division, and there may be another division manner in actual implementation, for example, a plurality of units or components may be combined or may be integrated into another system, or some features may be omitted, or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be an indirect coupling or communication connection via some interfaces, devices or units, which may be in electrical, mechanical or other form.
The units described above as separate components may or may not be physically separate, and components shown as units may or may not be physical units, may be located in one place, or may be distributed over a plurality of network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional unit in the embodiments of the present application may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
The integrated units, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application may be embodied in essence or a part contributing to the prior art or all or part of the technical solution in the form of a software product stored in a storage medium, including multiple instructions to cause a computer device (which may be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method of the various embodiments of the present application. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a random access Memory (Random Access Memory, RAM), a magnetic disk, or an optical disk, or other various media capable of storing a program.
The preferred embodiments of the present application have been described above with reference to the accompanying drawings, and are not thereby limiting the scope of the claims of the embodiments of the present application. Any modifications, equivalent substitutions and improvements made by those skilled in the art without departing from the scope and spirit of the embodiments of the present application shall fall within the scope of the claims of the embodiments of the present application.

Claims (14)

1. An entropy encoding method, characterized in that the entropy encoding method comprises:
obtaining only quantized data and prediction residual data of frame image data in an original image, wherein the only quantized data is generated after the frame image data is quantized, and the prediction residual data is obtained by carrying out pixel prediction on the only quantized data;
performing unsigned fixed-length coding on the quantized data only to obtain an unsigned fixed-length code;
determining bit indication information and an asymmetric value range flag bit according to the prediction residual data;
obtaining a transmission value range with a symbol fixed-length code according to the bit indication information and the asymmetric value range zone bit to determine a coding mode of the symbol fixed-length code, wherein the asymmetric value range zone bit is opposite to the two corresponding transmission value ranges under the same bit indication information;
Carrying out signed fixed-length coding on the prediction residual data according to the coding mode of the signed fixed-length coding to obtain a signed fixed-length code;
performing unsigned variable length coding on the quantized data only to obtain an unsigned variable length code;
carrying out signed variable length coding on the predicted residual data to obtain a signed variable length code;
and selecting one with the least bit number from the unsigned fixed-length code, the signed fixed-length code, the unsigned variable-length code and the signed variable-length code as compressed data of the frame image data.
2. The entropy encoding method according to claim 1, wherein the determining bit indication information and an asymmetric value range flag bit according to the prediction residual data comprises:
determining maximum absolute value data of the prediction residual data according to the prediction residual data;
and determining the bit indication information and the asymmetric value range zone bit according to the maximum absolute value data and the corresponding sign of the prediction residual error data.
3. The entropy encoding method according to claim 1, wherein the obtaining a signed fixed length encoded transmission range according to the bit indication information and the asymmetric range flag bit comprises:
Determining boundary information according to the bit indication information when the bit indication information is greater than 0;
when the asymmetric value range flag bit is 1, setting a negative end of the boundary information as an open section and setting a positive end of the boundary information as a closed section to obtain the transmission value range of the signed fixed-length code;
and when the asymmetric value range flag bit is 0, setting the negative end of the boundary information as a closed interval and the positive end of the boundary information as an open interval to obtain the transmission value range of the signed fixed-length code.
4. The entropy encoding method of claim 3, wherein the determining boundary information according to the bit indication information comprises:
subtracting 1 from the bit indication information to obtain a subtraction result;
performing power operation by taking a first preset numerical value as a base and taking the subtraction result as an exponent to obtain a positive boundary;
calculating the opposite number of the corresponding value of the positive boundary to obtain a negative boundary;
and determining boundary information according to the positive boundary and the negative boundary.
5. The entropy encoding method according to claim 1, wherein the performing signed variable length encoding on the prediction residual data to obtain a signed variable length code comprises:
When the predicted residual data is more than 0 or less than 0, determining a sign bit according to the predicted residual data;
performing unsigned variable length coding on the absolute value of the prediction residual data to obtain a first code;
and obtaining a signed variable length code according to the first code and the sign bit.
6. The entropy encoding method according to claim 5, wherein the performing unsigned variable length encoding on the absolute value of the prediction residual data to obtain a first code comprises:
adding the absolute value of the prediction residual data to a second preset value;
binary conversion is carried out on the added result to obtain a second code;
determining a coding prefix according to the second coded bit number;
and obtaining a first code according to the code prefix and the second code.
7. The entropy encoding method of claim 5, wherein the performing signed variable length encoding on the prediction residual data to obtain a signed variable length code, further comprises:
and when the predicted residual data is equal to 0, performing unsigned variable length coding on the predicted residual data to obtain a signed variable length code.
8. The entropy encoding method according to claim 1, wherein the acquiring only quantization data and prediction residual data of frame image data in an original image comprises:
Acquiring frame image data in an original image;
quantizing the frame image data according to preset quantization parameters to obtain quantized data only;
and carrying out pixel prediction on the quantized data only to obtain prediction residual data.
9. The entropy encoding method according to claim 8, wherein after selecting one of the unsigned fixed-length code, the signed fixed-length code, the unsigned variable-length code, and the signed variable-length code having the smallest number of bits as the compressed data of the frame image data, the entropy encoding method further comprises:
inputting the compressed data to a video cache checker for checking;
when the video cache checker is in an overflow state, increasing and adjusting the quantization parameter, and taking the adjusted quantization parameter as a preset quantization parameter;
repeatedly acquiring compressed data corresponding to the frame image data according to the adjusted quantization parameter until the video buffer checker is in a non-overflow state;
outputting the compressed data corresponding to the video buffer checker in a non-overflow state.
10. An entropy decoding method, comprising:
Acquiring compressed data, the compressed data being generated according to the entropy encoding method of any one of claims 1 to 9;
determining a coding type according to the compressed data, wherein the coding type comprises an unsigned fixed-length code, a signed fixed-length code, an unsigned variable-length code and a signed variable-length code;
decoding the compressed data according to the coding type to obtain decoded data;
and determining frame image data according to the decoded data.
11. The entropy decoding method of claim 10, wherein determining frame image data from the decoded data comprises:
when the decoded data is prediction residual data, determining a prediction mode and a quantization parameter of the decoded data;
performing inverse prediction on the decoded data according to the prediction mode to obtain quantized data only;
and dequantizing the quantized data only according to the quantization parameter to obtain frame image data.
12. An entropy encoding device, comprising:
the acquisition unit is used for acquiring only quantized data and prediction residual data of frame image data in an original image, wherein the only quantized data is generated after the frame image data is quantized, and the prediction residual data is obtained by carrying out pixel prediction on the only quantized data;
The first coding unit is used for carrying out unsigned fixed-length coding on the quantized data only to obtain an unsigned fixed-length code;
the information determining unit is used for determining bit indication information and an asymmetric value range zone bit according to the prediction residual data;
the value range determining unit is used for obtaining a transmission value range with a symbol fixed-length code according to the bit indication information and the asymmetric value range zone bit so as to determine a coding mode of the symbol fixed-length code, wherein the opening and closing conditions of the two corresponding transmission value ranges of the asymmetric value range zone bit under the same bit indication information are opposite;
the second coding unit is used for carrying out signed fixed-length coding on the prediction residual data according to the coding mode of the signed fixed-length coding to obtain a signed fixed-length code;
the third coding unit is used for performing unsigned variable length coding on the quantized data only to obtain an unsigned variable length code;
a fourth coding unit, configured to perform signed variable length coding on the prediction residual data to obtain a signed variable length code;
and the comparison unit is used for selecting one with the least bit number from the unsigned fixed-length code, the signed fixed-length code, the unsigned variable-length code and the signed variable-length code as compressed data of the frame image data.
13. An electronic device comprising a memory storing a computer program and a processor implementing the entropy encoding method of any one of claims 1 to 9 or the entropy decoding method of any one of claims 10 to 11 when the computer program is executed.
14. A computer readable storage medium storing a computer program, characterized in that the computer program, when executed by a processor, implements the entropy encoding method of any one of claims 1 to 9 or the entropy decoding method of any one of claims 10 to 11.
CN202310797299.7A 2023-07-03 2023-07-03 Entropy coding method, entropy decoding method and related devices Active CN116527904B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310797299.7A CN116527904B (en) 2023-07-03 2023-07-03 Entropy coding method, entropy decoding method and related devices

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310797299.7A CN116527904B (en) 2023-07-03 2023-07-03 Entropy coding method, entropy decoding method and related devices

Publications (2)

Publication Number Publication Date
CN116527904A CN116527904A (en) 2023-08-01
CN116527904B true CN116527904B (en) 2023-09-12

Family

ID=87405102

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310797299.7A Active CN116527904B (en) 2023-07-03 2023-07-03 Entropy coding method, entropy decoding method and related devices

Country Status (1)

Country Link
CN (1) CN116527904B (en)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012023611A (en) * 2010-07-15 2012-02-02 Mitsubishi Electric Corp Dynamic image encoding device, dynamic image decoding device, dynamic image encoding method, and dynamic image decoding method
CN109495211A (en) * 2018-09-30 2019-03-19 湖南瑞利德信息科技有限公司 A kind of channel coding and coding/decoding method
WO2020171668A1 (en) * 2019-02-24 2020-08-27 엘지전자 주식회사 Method and device for image decoding using residual information including context-coded sign information in image coding system
CN111641827A (en) * 2019-03-02 2020-09-08 上海天荷电子信息有限公司 Data compression method and device for prediction residual entropy coding by switching multiple schemes
CN112437300A (en) * 2020-11-23 2021-03-02 武汉理工大学 Distributed video coding method based on self-adaptive interval overlapping factor
CN112737729A (en) * 2019-10-28 2021-04-30 哈尔滨工业大学(深圳) Data transmission method and device, computer equipment and storage medium
CN113519155A (en) * 2019-01-02 2021-10-19 弗劳恩霍夫应用研究促进协会 Unified transform type signaling and transform type dependent transform coefficient level coding
CN114424547A (en) * 2019-07-05 2022-04-29 威诺瓦国际有限公司 Quantization of residual in video coding
CN115086664A (en) * 2021-03-13 2022-09-20 腾讯科技(深圳)有限公司 Decoding method, encoding method, decoder and encoder for unmatched pixels

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9167252B2 (en) * 2010-12-01 2015-10-20 Texas Instruments Incorporated Quantization matrix compression in video coding
AU2019247481B2 (en) * 2018-04-04 2023-07-06 Kakadu R & D Pty Ltd A further improved method and apparatus for image compression
JP7282904B2 (en) * 2019-02-19 2023-05-29 エルジー エレクトロニクス インコーポレイティド Video decoding method and apparatus using residual information in video coding system
WO2021257060A1 (en) * 2020-06-16 2021-12-23 Google Llc Dynamic method for symbol encoding

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012023611A (en) * 2010-07-15 2012-02-02 Mitsubishi Electric Corp Dynamic image encoding device, dynamic image decoding device, dynamic image encoding method, and dynamic image decoding method
CN109495211A (en) * 2018-09-30 2019-03-19 湖南瑞利德信息科技有限公司 A kind of channel coding and coding/decoding method
CN113519155A (en) * 2019-01-02 2021-10-19 弗劳恩霍夫应用研究促进协会 Unified transform type signaling and transform type dependent transform coefficient level coding
WO2020171668A1 (en) * 2019-02-24 2020-08-27 엘지전자 주식회사 Method and device for image decoding using residual information including context-coded sign information in image coding system
CN111641827A (en) * 2019-03-02 2020-09-08 上海天荷电子信息有限公司 Data compression method and device for prediction residual entropy coding by switching multiple schemes
CN114424547A (en) * 2019-07-05 2022-04-29 威诺瓦国际有限公司 Quantization of residual in video coding
CN112737729A (en) * 2019-10-28 2021-04-30 哈尔滨工业大学(深圳) Data transmission method and device, computer equipment and storage medium
CN112437300A (en) * 2020-11-23 2021-03-02 武汉理工大学 Distributed video coding method based on self-adaptive interval overlapping factor
CN115086664A (en) * 2021-03-13 2022-09-20 腾讯科技(深圳)有限公司 Decoding method, encoding method, decoder and encoder for unmatched pixels

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Based on discrete orthogonal tchebichef transform for image compression;Li Ji 等;Computer Engineering and Design;第34卷(第12期);第4261-4266页 *

Also Published As

Publication number Publication date
CN116527904A (en) 2023-08-01

Similar Documents

Publication Publication Date Title
US20210092445A1 (en) Method for Producing Video Coding and Programme-Product
JPH07262175A (en) Function transformation arithmetic unit
US10681388B2 (en) Compression of occupancy or indicator grids
CN112399181B (en) Image coding and decoding method, device and storage medium
CN107431805B (en) Encoding method and apparatus, and decoding method and apparatus
KR102165070B1 (en) Coding of video syntax elements using context tree
CN105474642A (en) Re-encoding image sets using frequency-domain differences
CN100423582C (en) Method and device for binary coding wait coding data
CN108881913B (en) Method and apparatus for image encoding
US11265561B2 (en) Method and apparatus for range derivation in context adaptive binary arithmetic coding
CA3069635A1 (en) Method and apparatus for range derivation in context adaptive binary arithmetic coding
US20150249841A1 (en) Method and device for encoding/decoding video bitstream
CN111131828B (en) Image compression method and device, electronic equipment and storage medium
KR101696589B1 (en) Method for decoding video quantization parameter
Kabir et al. Edge-based transformation and entropy coding for lossless image compression
CN105409129A (en) Encoder apparatus, decoder apparatus and method
CN116527904B (en) Entropy coding method, entropy decoding method and related devices
US20120106635A1 (en) Encoder, encoding method, and program
EP2733940B1 (en) Image quantization parameter encoding method and image quantization parameter decoding method
Niedermayer Ffv1 video codec specification
US20230188726A1 (en) Dynamic Method for Symbol Encoding
KR20220045920A (en) Method and apparatus for processing images/videos for machine vision
CN116982082A (en) Image encoding/decoding method, encoder, decoder, and storage medium
CN110858900B (en) Data compression method and device for multiplexing simplified inverse quantization multiplication factor and displacement table
Jabeen et al. Predictive Coding Based Lossless Image Compression Model

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant