CN102298782A - System, method, and computer program product for parameter estimation for lossless video compression - Google Patents

System, method, and computer program product for parameter estimation for lossless video compression Download PDF

Info

Publication number
CN102298782A
CN102298782A CN2011101885901A CN201110188590A CN102298782A CN 102298782 A CN102298782 A CN 102298782A CN 2011101885901 A CN2011101885901 A CN 2011101885901A CN 201110188590 A CN201110188590 A CN 201110188590A CN 102298782 A CN102298782 A CN 102298782A
Authority
CN
China
Prior art keywords
code
code element
computer program
previous frame
logic
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.)
Granted
Application number
CN2011101885901A
Other languages
Chinese (zh)
Other versions
CN102298782B (en
Inventor
V·S·托马斯
M·库尔特
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN102298782A publication Critical patent/CN102298782A/en
Application granted granted Critical
Publication of CN102298782B publication Critical patent/CN102298782B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/115Selection of the code volume for a coding unit prior to coding
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/15Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

The invention discloses a system, a method, and a computer program product for parameter estimation for lossless video compression, wherein the method and the system are used to improve the efficiency of video processing. Compression/decompression efficiency for a current frame may be enhanced by using an appropriate coding parameter. To choose an appropriate coding parameter, a histogram of the previous frame's symbols may be created. The histogram may be used to predict the number of bits the current frame will contain after lossless compression, given a specific coding parameter. Iterating through all of the possible coding parameters on the previous frame histogram may yield a well-suited coding parameter with which the current frame can be compressed. This results in high compression efficiency by using the previous frame as the predictor.

Description

The system, the method and computer program product that are used for the parameter estimation of lossless video compression
Background technology
When carrying out Video processing, multimedia SOC (system on a chip) (SoC) must be handled a plurality of video frame buffers in double data rate (DDR) (DDR) storer.This can cause high DDR bandwidth requirement, raises cost and power consumption.In these systems, can be by unit on the sheet such as video capture module, Video Decoder, video encoder, 2D or 3D figure module or video display processor with high frame per second write or read video frame buffer.Can and when reading them, solve this high bandwidth requirement by these video buffers of lossless compress when being written into the DDR storer to its decompression.This compression and decompression can significantly reduce the DDR bandwidth.Yet, in order to realize that any lossless compress process must be carried out compression and decompression in real time, and need not the benefit of pre-service current data set.
Existing solution can be carried out simple statistical computation, promptly averages to be identified for the optimum encoding parameter of current code element on n previous code element.Under the situation of Golomb-Rice compression, this parameter can be called M.Other solution can use series filter to select the coding parameter of current code element.These methods previous code element of can before coding parameter can be used for current code element, decoding, so these methods especially flow into and during outflow DDR, may not be good candidates when real-time video ground for the real-time video compression.
The accompanying drawing summary
Fig. 1 is the process flow diagram that the processing of describing in this article according to embodiment is shown.
Fig. 2 illustrates according to embodiment, the code element that occurs in frame and the exemplary histograms of frequency thereof.
Fig. 3 illustrates the data structure that can be used for storing histogrammic information according to embodiment.
Fig. 4 is the block diagram that is used for the example calculation environment of software or firmware embodiment.
In the accompanying drawings, the accompanying drawing that occurs first of this Reference numeral of leftmost one or more Digital IDs of Reference numeral.
Specifically describe
Referring now to accompanying drawing, preferred embodiment is described, wherein identical Reference numeral is represented identical or intimate key element.Although ad hoc structure and configuration have been discussed, yet be to be understood that this is just in order to explain orally purpose.The technician should be appreciated that the spirit and scope that can use other structure and configuration and not break away from instructions in the association area.Those skilled in that art will know and know that this also can be multiple other system and occasion in addition described herein and adopts.
Method and system described herein solves regulates coding parameter so that the maximized problem of compression efficiency of " in real time " lossless video compression scheme.This can be used for reducing the DDR bandwidth of memory.
Can improve the compression and decompression efficient of present frame by utilizing suitable coding parameter.In order to select suitable coding parameter, can create the histogram of the code element of previous frame.Provide specific coding parameter, histogram can be used for predicting the figure place that present frame will comprise after the lossless compress.Repeat the suitable coding parameter that all possible coding parameter can obtain can be used in the compression present frame on the histogram of frame formerly.This obtains high compression efficiency as fallout predictor by using previous frame.Strong correlation around this utilizes between the structure of frame.
According to embodiment, the process that realizes it shown in Figure 1.105, coding parameter M can be initialized as 0.110, this value that is used for M temporarily is regarded as best known coded parameter, is called best_M in the embodiment shown.115, variable lowest_#_of_bits can be initialized as the figure place in the unpressed present frame, i.e. (frame sign) * (position of each pixel).
120, can create histogram at previous frame.Provide coding parameter M, this histogram can be the appearance number that each code element is indicated this code element.125, can organize histogram by the descending of symbol frequency.Frequent or the most common code element can at first be shown, and is the most frequent inferior code element etc. subsequently.130, code can be associated with each code element shown in the histogram.The association of code can be finished by symbol frequency, makes modal code element be assigned to minimum code, the code that promptly has minimum number of bits.Inferior modal code element can obtain time code of minimum etc.135, provide coding parameter M and, can be identified for the required figure place of coded frame at 130 codes of distributing to code element.
140, can make about in 135 figure places of determining whether less than the judgement of the currency of variable lowest_#_of_bits.If then can continue in 145 processes.Here, determined figure place can be assigned to variable lowest_#_of_bits now.150, present encoding parameter M can be assigned to variable best_M.155, coding parameter M can increase by 1.If 140, be not less than lowest_#_of_bits in 135 figure places of determining, then can increase by 1 at 155 present encoding parameter M.
160, can make about M whether having surpassed determining of the maximum parameter value that allowed.If not, then process can turn back to 120.Here, can be previous frame and create another histogram, the value that will increase newly is used for coding parameter M specifically.Can repeat the order of 120-155 for the successive value of coding parameter M.Process can finish 165.At that point, variable best_M comprises and the coding parameter that utilizes lowest order digit coding previous frame to be associated.The final value that is used for best_M can be represented the coding parameter expected.
According to embodiment, the histogrammic example of describing the frequency of occurrences of code element in the previous frame shown in Figure 2.On X-axis code element by identifier s1, s2 ... Deng illustrating.Y-axis is indicated the appearance number of each code element in the frame formerly.In this example, the number of times that occurs in frame according to code element comes code element is sorted.Code element s1 can be the code element of the most frequent appearance, and s2 can be time code element of the most frequent appearance or the like.Although five code elements have been shown, should be appreciated that in different embodiment, the sum of code element can be more or less in this diagram.
For the purpose of handling,, can create histogram and with the form storage of array or similar data structure according to embodiment.This array shown in Figure 3.In this example, each element indication code element is the appearance number in the frame formerly, and wherein element can be by the code element identifier index.
One or more feature disclosed herein can realize in hardware, software, firmware and their combination, comprise discrete and integrated circuit (IC) logic, special IC (ASIC) logic, programmable gate array and/or microcontroller, and can be embodied as the part of integrated circuit encapsulation of specialized field or the combination of integrated circuit encapsulation." software " used herein this term indication comprises the computer program of computer-readable medium, and this computer-readable medium has the computer program logic that is stored in wherein so that computer system is carried out one or more feature disclosed herein and/or combination of features.
Software or firmware embodiment shown in the background of the computing system 400 in Fig. 4.System 400 can comprise processor 420 and storer body 410, but storer body 410 can comprise one or more computer-readable mediums of storage computation machine program logic 440.Storer 410 for example can be embodied as hard disk and driver, the removable medium such as compact disk and driver or ROM (read-only memory) (ROM) or random-access memory (ram) equipment.Processor 420 and storer 410 can use any communication the in some technology known to those skilled in the art, for example bus.The computer program logic 440 that comprises in the storer 410 can be read and be carried out by processor 420.One or more I/O ports and/or I/O equipment---the unified I/O 430 that is illustrated as---also can be connected in processor 420 and storer 410.
Computer program logic 440 can comprise histogram establishment logic 450.Provide coding parameter M, this logic can be determined the code element used in response to the inspection of previous frame in this frame, and to the appearance counting number of each code element, and structure is caught the histogram of these data.Computer program logic 440 also can comprise associated codes logic 460, provides coding parameter M, and the code element that this associated codes logic 460 can be responsible for using in code and the previous frame is associated.As mentioned above, the shortest code can be assigned in the previous frame code element of the most frequent appearance, and inferior shortest code can be assigned to the code element that the following highest frequency occurs, or the like.Computer program logic 440 also can comprise coding requirement logic 470, provides related between coding parameter M and code and the corresponding code element, and this coding requirement logic 470 can be responsible for determining the required total bit of coding previous frame.
In optional embodiment, computer program logic 440 can be organized differently so that realize processing as herein described.Can use different logic modules to replace shown in Figure 4 those.In addition, in alternative, can use more or less logic module, just as understood by those skilled in the art.
Here, the whole bag of tricks and system come disclosed by means of the functional configuration frame that its function, feature and relation are shown.For ease of describing, at random define at least some borders of these functional configuration frames in this article.Unless indicate specially, the border that definable substitutes is as long as appointed function and relation thereof can suitably realize.
Though disclosed various embodiment herein, know that they only provide by way of example but not conduct limits.Those of ordinary skills should be understood that and know, wherein can make in form and various changes on the details and do not deviate from the spirit and scope of method and system disclosed herein.Therefore, the width of claim and scope are not subjected to the restriction of any exemplary embodiment disclosed herein.

Claims (18)

1. method comprises:
Create the histogram of previous frame, the appearance number of each of a plurality of code elements that wherein said histogram indication is used for utilizing coding parameter to represent previous frame;
Code is associated with each code element, makes code be associated, and have in succession greatly that the code of figure place is associated with the code element that has less appearance in succession accordingly with code element with maximum appearance with lowest order digit;
Determine to utilize code element and the required figure place of code coding previous frame that is associated;
Repeat described establishment, association and determine in a plurality of coding parameters each; And
Sign allows with the encode coding parameter of previous frame of the mode of the minimum position of needs.
2. the method for claim 1 is characterized in that, also comprises:
In the compression of present frame, use the coding parameter that is identified.
3. method as claimed in claim 2 is characterized in that, the code that is associated with a plurality of respective symbol comprises the Golomb code, and described compression comprises the Golomb-Rice compression.
4. the method for claim 1 is characterized in that, also comprises:
From modal code element to least common code element histogram is sorted.
5. the method for claim 1 is characterized in that, carries out described method on SOC (system on a chip) (SOC) framework.
6. the method for claim 1 is characterized in that, described a plurality of coding parameters comprise eight coding parameters.
7. system comprises:
Processor; And
With the storer of described processor communication, described storer is used to store a plurality of processing instructions, and described processing instruction instructs described processor:
Create the histogram of previous frame, the appearance number of each of a plurality of code elements that wherein said histogram indication is used for utilizing coding parameter to represent previous frame;
Code is associated with each code element, makes code be associated, and have in succession greatly that the code of figure place is associated with the code element that has less appearance in succession accordingly with code element with maximum appearance with lowest order digit;
Determine to utilize code element and the required figure place of code coding previous frame that is associated;
Repeat described establishment, association and determine in a plurality of coding parameters each; And
Sign allows with the encode coding parameter of previous frame of the mode of the minimum position of needs.
8. system as claimed in claim 7 is characterized in that, described storer is also stored and is used for instructing described processing to use the processing instruction of the coding parameter that is identified in the compression of next frame.
9. system as claimed in claim 8 is characterized in that, the code that is associated with a plurality of respective symbol comprises the Golomb code, and described compression comprises the Golomb-Rice compression.
10. system as claimed in claim 7 is characterized in that, described storer also store be used to instruct described processor from modal code element to the processing instruction of least common code element to the histogram ordering.
11. system as claimed in claim 7 is characterized in that, described system is included in SOC (system on a chip) (SOC) framework.
12. system as claimed in claim 7 is characterized in that, described a plurality of coding parameters comprise eight coding parameters.
13. a computer program that comprises the computer-readable medium that wherein stores computer program logic, described computer program logic comprises:
Cause processor to create the histogrammic logic of previous frame, the appearance number of each of a plurality of code elements that wherein said histogram indication is used for utilizing coding parameter to represent previous frame;
The logic that causes processor that code is associated with each code element makes the code with lowest order digit be associated with the code element with maximum appearance, and has in succession greatly that the code of figure place is associated with the code element that has less appearance in succession accordingly;
Cause processor to determine to utilize the logic of the required figure place of code element and the code coding previous frame that is associated;
Cause processor for each logic that repeats described establishment, association and determine in a plurality of coding parameters; And
Cause processor flag to allow with the encode logic of coding parameter of previous frame of the mode of the minimum position of needs.
14. computer program as claimed in claim 13 is characterized in that, described computer program logic also comprises:
Cause processor in the compression of next frame, to use the logic of the coding parameter that is identified.
15. computer program as claimed in claim 14 is characterized in that, the code that is associated with a plurality of respective symbol comprises the Golomb code, and described compression comprises the Golomb-Rice compression.
16. computer program as claimed in claim 13 is characterized in that, described computer program logic also comprises:
The logic that causes processor to least common code element histogram to be sorted from modal code element.
17. computer program as claimed in claim 13 is characterized in that, described computer program is included in SOC (system on a chip) (SOC) framework.
18. computer program as claimed in claim 13 is characterized in that, described a plurality of coding parameters comprise eight coding parameters.
CN201110188590.1A 2010-06-25 2011-06-24 System and method for parameter estimation for lossless video compression Expired - Fee Related CN102298782B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/823,637 US20110317759A1 (en) 2010-06-25 2010-06-25 System, method, and computer program product for parameter estimation for lossless video compression
US12/823,637 2010-06-25

Publications (2)

Publication Number Publication Date
CN102298782A true CN102298782A (en) 2011-12-28
CN102298782B CN102298782B (en) 2014-05-07

Family

ID=45352544

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110188590.1A Expired - Fee Related CN102298782B (en) 2010-06-25 2011-06-24 System and method for parameter estimation for lossless video compression

Country Status (3)

Country Link
US (1) US20110317759A1 (en)
CN (1) CN102298782B (en)
WO (1) WO2011162964A2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8971413B2 (en) 2010-05-24 2015-03-03 Intel Corporation Techniques for storing and retrieving pixel data
US9247271B2 (en) * 2012-10-08 2016-01-26 Inria Institut National De Recherche En Informatique Et En Automatique Method and device for motion information prediction in multi-view video coding
CN110769453B (en) * 2019-10-31 2020-11-06 重庆大学 Multi-modal monitoring data dynamic compression control method under unstable network environment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6711295B2 (en) * 1998-10-06 2004-03-23 Canon Kabushiki Kaisha Encoding apparatus and method, and storage medium
CN1550108A (en) * 2001-03-02 2004-11-24 �ű�ʵ������ɹɷ����޹�˾ High precision encoding and decoding of video images
US20050229061A1 (en) * 2004-04-01 2005-10-13 Sung-Ho Kang Method of efficiently compressing and decompressing test data using input reduction
US20080122664A1 (en) * 2006-11-24 2008-05-29 Primax Electronics Ltd. Huffman decoding method

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6304607B1 (en) * 1997-03-18 2001-10-16 Texas Instruments Incorporated Error resilient video coding using reversible variable length codes (RVLCS)
US6272180B1 (en) * 1997-11-21 2001-08-07 Sharp Laboratories Of America, Inc. Compression and decompression of reference frames in a video decoder
JP2000115770A (en) * 1998-10-06 2000-04-21 Canon Inc Coder and its method
KR100618972B1 (en) * 1999-08-02 2006-09-01 삼성전자주식회사 Variable Length Coding method and device therefore
US6882750B2 (en) * 2000-05-02 2005-04-19 Zaxel Systems, Inc. Fast loss less image compression system based on neighborhood comparisons
US6650784B2 (en) * 2001-07-02 2003-11-18 Qualcomm, Incorporated Lossless intraframe encoding using Golomb-Rice

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6711295B2 (en) * 1998-10-06 2004-03-23 Canon Kabushiki Kaisha Encoding apparatus and method, and storage medium
CN1550108A (en) * 2001-03-02 2004-11-24 �ű�ʵ������ɹɷ����޹�˾ High precision encoding and decoding of video images
US20050229061A1 (en) * 2004-04-01 2005-10-13 Sung-Ho Kang Method of efficiently compressing and decompressing test data using input reduction
US20080122664A1 (en) * 2006-11-24 2008-05-29 Primax Electronics Ltd. Huffman decoding method

Also Published As

Publication number Publication date
CN102298782B (en) 2014-05-07
WO2011162964A3 (en) 2012-04-12
WO2011162964A2 (en) 2011-12-29
US20110317759A1 (en) 2011-12-29

Similar Documents

Publication Publication Date Title
CN108882020B (en) Video information processing method, device and system
US8363966B2 (en) Method for image processing with encoding selection
CN109479146B (en) Bit packing for incremental color compression
CN102176750B (en) High-performance adaptive binary arithmetic encoder
CN105959797A (en) Video decoding method and digital TV
CN108347602B (en) Method and apparatus for lossless compression of video data
CN105933708A (en) Data compression-decompression method and device
CN107396112A (en) A kind of coding method and device, computer installation, readable storage medium storing program for executing
CN102986217A (en) Method and apparatus for processing video frame by using difference between pixel values
CN102075756A (en) Video multiframe prediction encoding and decoding method and device
CN102298782B (en) System and method for parameter estimation for lossless video compression
CN114222129A (en) Image compression encoding method, image compression encoding device, computer equipment and storage medium
CN107103632B (en) Image compression method and device
CN102687175A (en) Decoding system and method operable on encoded texture element blocks
CN104113759B (en) Video system, video frame buffer recompression/decompression method and device
CN115662346B (en) Demura compensation value compression method and system
CN103746704A (en) Chip testing data transmission method based on dual-run-length alternative coding
CN110730277B (en) Information coding and method and device for acquiring coded information
CN116170599A (en) Synchronous real-time image compression method, system, medium and terminal
CN103209322A (en) Methods, systems, and computer program products for assessing macroblock candidate for conversion to skipped macroblock
CN102868881B (en) Video encoding system and method
CN106874979B (en) Bar code processing, displaying and reading method and device
US20130120593A1 (en) Method and apparatus for tightly coupled, low power image processing
US10015511B2 (en) Image frame motion estimation device and image frame motion estimation method using the same
CN108876703B (en) Data storage method

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140507

Termination date: 20190624

CF01 Termination of patent right due to non-payment of annual fee