CN108495139A - The Hash Block- matching of screen content coding - Google Patents
The Hash Block- matching of screen content coding Download PDFInfo
- Publication number
- CN108495139A CN108495139A CN201810389178.8A CN201810389178A CN108495139A CN 108495139 A CN108495139 A CN 108495139A CN 201810389178 A CN201810389178 A CN 201810389178A CN 108495139 A CN108495139 A CN 108495139A
- Authority
- CN
- China
- Prior art keywords
- block
- cryptographic hash
- hash
- blocks
- sizes
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/567—Motion estimation based on rate distortion criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/182—Methods 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 a pixel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
Abstract
A method of in efficient video coding (HEVC) for being encoded to screen content image, the method includes copying Hash blocks matching module for inter-prediction and intra block, wherein the Hash blocks matching module executes following operation:Hash table is established, including:For present frame, according to sequence from left to right, from top to bottom, each integer pixel position calculates a cryptographic Hash as follows;Based on the Hash table, the estimation based on Hash is carried out to current prediction block.
Description
Joint study
The application obtains following fund assistance by North China University of Tech and the joint study of information institute of Beijing Jiaotong University:
State natural sciences fund (No.61103113, No.60903066), Beijing institution of higher education talent directly under the jurisdiction of a municipal government teach by force in-depth plan item
Mesh (PHR201008187);Jiangsu Province's Natural Science Fund In The Light (BK2011455), Beijing's Natural Science Fund In The Light
(No.4102049), Ministry of Education beginning teacher fund (No.20090009120006);973 plan (2012CB316400) of country, in
Entreat colleges and universities' basic research fund (No.2011JBM214).
Technical field
The present invention relates to images and field of video processing, more specifically, are related to being used in efficient video coding (HEVC)
Carry out inter-prediction using Hash Block- matching and intra block copies.
Background technology
In April, 2010, two big international video encoding standard tissue VCEG and MPEG set up video compress joint group JCT-
VC (Joint collaborative Team on Video Coding) develops efficient video coding HEVC (High together
Efficiency video coding) standard, also referred to as H.265.HEVC standard main target is and previous generation standards
H.264/AVC the raising for realizing significantly code efficiency, in particular for high-resolution video sequence.Its target is identical
Code check is reduced to the 50% of H.264 standard under video quality (PSNR).
With regard to the current stage, HEVC still continues to use the hybrid encoding frame for H.264 beginning to use.Interframe and intra prediction are compiled
Code:Eliminate the correlation of time-domain and spatial domain.Transition coding:Transition coding is carried out to eliminate spatial coherence to residual error.Entropy
Coding:Eliminate statistical redundancy.HEVC will put forth effort to study new encoding tool or technology, carry in hybrid encoding frame
High video compression efficiency.
Currently, the new features of many codings proposed in the discussion of JCT-VC tissues, it is possible to HEVC marks can be added
In standard, the specific document of each discussion can be fromhttp://wftp3.itu.intIt obtains.
The first edition of HEVC standard is completed in the January, 2013.And in April, 2013, in October, 2014 and
3 versions issued in succession in April, 2015, these versions can be obtained easily from network, and the application will be above-mentioned
Three versions of HEVC standard are incorporated to the background technology as the present invention in this specification.
Screen content coding is an important extension of efficient video coding, it is for Web conference, remote table sharing
And remote teaching is demonstrated by important role.So-called screen content is made of two parts, and a part is captured by video camera
Content, another part is the content generated by computer itself, such as table, document.Because the presence of high-frequency content to shield
Curtain research content is more difficult compared with natural image.Some based on HEVC improvement so that Video coding efficiency coding and
Decoding efficiency all greatly improves.Intra block copy mode, pallet mode etc. are introduced into as new technology.
Invention content
In the present invention, it proposes a kind of in the side that efficient video coding (HEVC) is used to encode screen content image
Method, the method includes copying Hash blocks matching module for inter-prediction and intra block, wherein the Hash Block- matching mould
Block executes following operation:
Hash table is established, including:
For present frame, according to sequence from left to right, from top to bottom, each integer pixel position calculates as follows
Cryptographic Hash:
The cryptographic Hash of 2 × 2 size blocks is calculated according to original pixel value;
The cryptographic Hash of 4 × 4 size blocks is calculated according to the cryptographic Hash of the sub-block of 42 × 2 sizes;
The cryptographic Hash and 4 × 8 size blocks of 8 × 4 size blocks are calculated separately according to the cryptographic Hash of the sub-block of 24 × 4 sizes
Cryptographic Hash;
The cryptographic Hash of 8 × 8 size blocks is calculated according to the cryptographic Hash of the sub-block of 44 × 4 sizes;
The cryptographic Hash of 16 × 16 size blocks is calculated according to the cryptographic Hash of the sub-block of 48 × 8 sizes;
The cryptographic Hash of 32 × 32 size blocks is calculated according to the cryptographic Hash of the sub-block of 4 16 × 16 sizes;
The cryptographic Hash of 64 × 64 size blocks is calculated according to the cryptographic Hash of the sub-block of 4 32 × 32 sizes;
If current block is not simple block, current block is added in Hash table, wherein for 4 × 4,8 × 8,16 ×
16, the block of 32 × 32,64 × 64 sizes, it is current to judge by determining whether every row pixel value or each column pixel value are all identical
Whether block is simple block;For 8 × 4 size blocks, by 34 × 4 blocks on integer pixel position on determined level direction whether
All it is simple block, to judge whether current block is simple block;For 4 × 8 size blocks, by judging integer pixel in vertical direction
Whether 34 × 4 blocks on position are all simple blocks, to judge whether current block is simple block,
Based on the Hash table, the estimation based on Hash is carried out to current prediction block, including:
The cryptographic Hash of current prediction block is calculated, and searches for match block in Hash table;
If current prediction block depth is 0, if finding the reconstructed image quality of match block and match block unlike desired value difference,
Rate-distortion optimization process after then skipping;
If current prediction block depth is not 0 and match block is found, whole pixel motion estimation and half pel motion
Estimation procedure is skipped;
If can not find match block, the estimation based on Hash is skipped.
One kind is proposed according to another aspect, in efficient video coding (HEVC) for being encoded to screen content image
Device, described device copied using above-mentioned Hash blocks matching module to carry out inter-prediction and intra block.
The present invention proposes the Video Codec using the above method or device according to another aspect,.
According on the other hand, the present invention proposes a kind of computer program product, it includes instruction, described instruction when by
When processor executes, the above method is executed.
Description of the drawings
Fig. 1 shows one embodiment of the encoder block diagram of HEVC.
Fig. 2 shows the schematic diagrames according to an embodiment of the invention for establishing Hash table.
Fig. 3 shows the schematic diagram that 4 × 4 and 8 × 4 pieces of cryptographic Hash according to an embodiment of the invention calculates.
Fig. 4 shows the signal of 4 × 8 and 8 × 4 pieces according to an embodiment of the invention of simple block judgment method
Figure.
Fig. 5 shows the flow chart according to an embodiment of the invention for executing the method for intra block copy.
Fig. 5 a show the block diagram according to an embodiment of the invention for executing the device of intra block copy.
Specific implementation mode
Various schemes are described referring now to the drawings.In the following description, it in order to explain, elaborates multiple specific thin
Section is in order to provide the thorough understanding to one or more schemes.It may be evident, however, that also can without these specific details
Enough realize these schemes.
As used in this specification, term " component ", " module ", " system " etc. are intended to refer to related to computer
Entity, such as, but not limited to, hardware, firmware, the combination of hardware and software, software or software in execution.For example,
Component can be but not limited to:The process that runs on a processor, object, executable (executable), executes processor
Thread, program, and/or computer.For example, running application program on the computing device and the computing device can be
Component.One or more components can be located in executive process and/or execution thread, and component can be located at a calculating
On machine and/or it is distributed on two or more platform computers.In addition, these components can be from various with what is be stored thereon
The various computer-readable mediums of data structure execute.Component can be communicated by means of locally and/or remotely process, such as
According to the signal with one or more packets, for example, coming from by means of in signal and local system, distributed system
Another component interaction and/or with interacted with other systems by means of signal on the network of such as internet etc one
The data of component.
Fig. 1 shows the general configuration figure for the video encoder that efficient video coding (HEVC) is realized.The coding of HEVC
Device framework is roughly the same with H.264 used encoder architecture, is carried out primarily directed to the algorithm used in modules
Further research, improvement, in particular for high-resolution video sequence, improved target is in same video quality
(PSNR) code check is reduced to the 50% of H.264 standard under.
Since the encoder architecture of HEVC is roughly the same with H.264 used encoder architecture, this hair is not obscured
It is bright, the overall architecture in Fig. 1 is not described in the application.More specifically, present invention is primarily concerned in screen
Hold the Hash block matching algorithm of coding.
I. algorithm is summarized
Hash block-based motion estimation is the full frame search carried out in the two-dimensional direction.This is because being contained in Hash table
The information of all 8 × 8,16 × 16,32 × 32 and 64 × 64 size Hash blocks in one frame.In the test code of early stage, Hash
Worth calculating is all based on directly on pixel value.In current version, the calculating of cryptographic Hash use it is a kind of from bottom to top
Mode.For the current block of a 2N × 2N, first detection is that have Hash match block, whole after skipping if there is match block
Pixel motion estimates and half pel motion estimation.
1. the foundation of Hash table
The first step of Hash matching process is the foundation of Hash table.The quantity of simple block is determined in the size and image of image
The size of Hash table is determined.As shown in Fig. 2, according to sequence from left to right, from top to bottom, calculated on each whole pixel position primary
Cryptographic Hash, if current block is not simple block, current block will be added into Hash table.
For each Hash blocks, need to calculate 4 cryptographic Hash.First cryptographic Hash (Hash value1) needs consumption 19
Bit, the index value as Hash table.Wherein preceding 3 bits represent the size of Hash blocks, and 16 bits later are bases
What current Hash blocks original pixel value was calculated.In one embodiment, preceding 3 bits, 000,001,010,011,10 He
101 have respectively represented the block of 8 × 8,16 × 16,32 × 32,64 × 64,8 × 4 and 4 × 8 sizes.Second cryptographic Hash (Hash
Value2 it is also) to be calculated according to original pixel value, is used to exclude hash-collision, reaches accurate matched purpose.
The calculating process of cryptographic Hash is as follows:
The cryptographic Hash of 2 × 2 size blocks is calculated according to original pixel value.
The cryptographic Hash of 4 × 4 size blocks is calculated according to the sub-block of 42 × 2 sizes.
This process is repeated, the cryptographic Hash of 8 × 8,16 × 16,32 × 32 and 64 × 64 size blocks is calculated.
In addition, according to one embodiment of present invention, also calculating the cryptographic Hash of the block of 8 × 4 and 4 × 8 sizes.With 8 × 4 pieces
Calculating for, Fig. 3 shows this process.For one 8 × 4 pieces, the calculating of cryptographic Hash is based on 4 × 4 pieces of two son
Cryptographic Hash, the calculating of 4 × 4 pieces of cryptographic Hash is based on the cryptographic Hash of its 2 × 2 pieces of four son, the calculating of 2 × 2 pieces of cryptographic Hash
Directly determined by original pixel value.
Meanwhile in entire calculating process, can detect whether current block is simple block.These simple blocks have following spy
Sign:Per row pixel value, all identical or each column pixel value is identical.Since these simple blocks can obtain in intra-prediction process
Very accurate reconstruction value, so these simple blocks are excluded do not interfere with not only from Hash table the precision of prediction, it can also be very
The time that Hash Search is saved in big degree, lower encoder complexity.
The simple block of 8 × 4 and 4 × 8 sizes will not be equally added in Hash table.The judgement of its simple block such as Fig. 4 institutes
Show, if 4 × 4 pieces of the son marked as 1,2,3 is all simple block, this this 8 × 4 or 4 × 8 pieces are simple block.In other words, such as it is right
In 8 × 4 pieces, it is that all 34 × 4 sub-blocks for being included to it judge (in horizontal direction), such as 4 × 8 pieces,
It is that all 34 × 4 sub-blocks for being included judge (in vertical direction) to it.
According to this method, whether the cryptographic Hash and availability (being simple block) of all 2N × N and N × 2N blocks can meanings
It calculates and judges.
2. the estimation based on Hash
Motion estimation process based on Hash is as follows:
A) cryptographic Hash of current block is calculated, and searches for match block in Hash table.
If b) current block depth is 0, if finding the reconstructed image quality of match block and match block unlike desired value difference,
Rate-distortion optimization process after skipping.If current block depth is not 0 and match block is found, whole pixel motion estimation
It is skipped with half pel motion estimation procedure.If can not find match block, the motion estimation process based on Hash is skipped in execution
And execute original motion estimation process.
Fig. 5 shows the flow chart according to an embodiment of the invention for executing the method for intra block copy.
In box 501, Hash table is established for present frame.Specifically, as described above also, as illustrated in fig. 2,
For present frame, according to sequence from left to right, from top to bottom, each integer pixel position calculates a Hash as follows
Value:
The cryptographic Hash of 2 × 2 size blocks is calculated according to original pixel value;
The cryptographic Hash of 4 × 4 size blocks is calculated according to the cryptographic Hash of the sub-block of 42 × 2 sizes, as illustrated in fig. 3;
The cryptographic Hash and 4 × 8 size blocks of 8 × 4 size blocks are calculated separately according to the cryptographic Hash of the sub-block of 24 × 4 sizes
Cryptographic Hash, as illustrated in fig. 3;
The cryptographic Hash of 8 × 8 size blocks is calculated according to the cryptographic Hash of the sub-block of 44 × 4 sizes;
The cryptographic Hash of 16 × 16 size blocks is calculated according to the cryptographic Hash of the sub-block of 48 × 8 sizes;
The cryptographic Hash of 32 × 32 size blocks is calculated according to the cryptographic Hash of the sub-block of 4 16 × 16 sizes;
The cryptographic Hash of 64 × 64 size blocks is calculated according to the cryptographic Hash of the sub-block of 4 32 × 32 sizes;
If current block is not simple block, current block is added in Hash table, wherein for 4 × 4,8 × 8,16 ×
16, the block of 32 × 32,64 × 64 sizes, it is current to judge by determining whether every row pixel value or each column pixel value are all identical
Whether block is simple block;For 8 × 4 size blocks, by 34 × 4 blocks on integer pixel position on determined level direction whether
All it is simple block, to judge whether current block is simple block;For 4 × 8 size blocks, by judging integer pixel in vertical direction
Whether 34 × 4 blocks on position are all simple blocks, to judge whether current block is simple block, as illustrated in fig. 4.
In box 503, it is based on the Hash table, the estimation based on Hash is carried out to current prediction block.Specific packet
It includes:
The cryptographic Hash of current prediction block is calculated, and searches for match block in Hash table;
If current prediction block depth is 0, if finding the reconstructed image quality of match block and match block unlike desired value difference,
Rate-distortion optimization process after then skipping;
If current prediction block depth is not 0 and match block is found, whole pixel motion estimation and half pel motion
Estimation procedure is skipped;
If can not find match block, the estimation based on Hash is skipped.
It should be readily apparent to one skilled in the art that the above process applies also for inter-prediction after suitably modified.
Fig. 5 a show the block diagram according to an embodiment of the invention for executing the device of intra block copy.
In box 501a, which includes the unit for establishing Hash table for present frame.
The unit can be used for executing following operation:For present frame, according to sequence from left to right, from top to bottom, each
Integer pixel position calculates a cryptographic Hash as follows:
The cryptographic Hash of 2 × 2 size blocks is calculated according to original pixel value;
The cryptographic Hash of 4 × 4 size blocks is calculated according to the cryptographic Hash of the sub-block of 42 × 2 sizes, as illustrated in fig. 3;
The cryptographic Hash and 4 × 8 size blocks of 8 × 4 size blocks are calculated separately according to the cryptographic Hash of the sub-block of 24 × 4 sizes
Cryptographic Hash, as illustrated in fig. 3;
The cryptographic Hash of 8 × 8 size blocks is calculated according to the cryptographic Hash of the sub-block of 44 × 4 sizes;
The cryptographic Hash of 16 × 16 size blocks is calculated according to the cryptographic Hash of the sub-block of 48 × 8 sizes;
The cryptographic Hash of 32 × 32 size blocks is calculated according to the cryptographic Hash of the sub-block of 4 16 × 16 sizes;
The cryptographic Hash of 64 × 64 size blocks is calculated according to the cryptographic Hash of the sub-block of 4 32 × 32 sizes;
If current block is not simple block, current block is added in Hash table, wherein for 4 × 4,8 × 8,16 ×
16, the block of 32 × 32,64 × 64 sizes, it is current to judge by determining whether every row pixel value or each column pixel value are all identical
Whether block is simple block;For 8 × 4 size blocks, by 34 × 4 blocks on integer pixel position on determined level direction whether
All it is simple block, to judge whether current block is simple block;For 4 × 8 size blocks, by judging integer pixel in vertical direction
Whether 34 × 4 blocks on position are all simple blocks, to judge whether current block is simple block, as illustrated in fig. 4.
In box 503a, which further includes carrying out being based on Hash to current prediction block for being based on the Hash table
Estimation unit.The unit is configured as executing following operation:
The cryptographic Hash of current prediction block is calculated, and searches for match block in Hash table;
If current prediction block depth is 0, if finding the reconstructed image quality of match block and match block unlike desired value difference,
Rate-distortion optimization process after then skipping;
If current prediction block depth is not 0 and match block is found, whole pixel motion estimation and half pel motion
Estimation procedure is skipped;
If can not find match block, the estimation based on Hash is skipped.
The above embodiment of the present invention can all be realized as the encoder based on HEVC.The inside of the encoder based on HEVC
Structure can be as shown in Figure 1.It should be appreciated by those skilled in the art that the decoder can be implemented as software, hardware and/or consolidate
Part.
When implemented in hardware, video encoder can use general processor, digital signal processor (DSP), special collection
At circuit (ASIC), field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic device
Part, discrete hardware components are designed as executing its arbitrary combination of function described herein, to realize or execute.General processor
Can be microprocessor, but alternatively, which can also be any conventional processor, controller, microcontroller
Or state machine.Processor can also be embodied as the combination of computing device, for example, the combining of DSP and microprocessor, multiple micro- places
Manage the combination of device, the combination of one or more microprocessors and DSP core or any other such structure.In addition, at least one
A processor may include operable to execute one or more modules of above-mentioned one or more steps and/or operation.
When with the hardware circuits such as ASIC, FPGA come when realizing video encoder, may include be configured as executing it is various
The various circuit blocks of function.Those skilled in the art can be according to the various constraintss applied over the whole system come with various
Mode designs and realizes these circuits, to realize various functions disclosed in this invention.
Although aforementioned open file discusses exemplary arrangement and/or embodiment, it should be noted that being wanted without departing substantially from by right
In the case of seeking the scheme of description and/or the range of embodiment that book defines, many change and modification can be made herein.And
And although in the singular describe or require the scheme and/or embodiment element, it is also contemplated that plural number feelings
Condition is limited to odd number unless expressly stated.In addition, all or part of arbitrary scheme and/or embodiment can with it is arbitrary its
Its scheme and/or all or part of of embodiment are used in combination, unless showing different.
Claims (8)
1. a kind of method for being used to encode screen content image in efficient video coding (HEVC), the method includes will
Hash blocks matching module is copied for inter-prediction and intra block, wherein the Hash blocks matching module executes following operation:
Hash table is established, including:
For present frame, according to sequence from left to right, from top to bottom, each integer pixel position calculates once as follows
Cryptographic Hash:
The cryptographic Hash of 2 × 2 size blocks is calculated according to original pixel value;
The cryptographic Hash of 4 × 4 size blocks is calculated according to the cryptographic Hash of the sub-block of 42 × 2 sizes;
The Hash of the cryptographic Hash and 4 × 8 size blocks of 8 × 4 size blocks is calculated separately according to the cryptographic Hash of the sub-block of 24 × 4 sizes
Value;
The cryptographic Hash of 8 × 8 size blocks is calculated according to the cryptographic Hash of the sub-block of 44 × 4 sizes;
The cryptographic Hash of 16 × 16 size blocks is calculated according to the cryptographic Hash of the sub-block of 48 × 8 sizes;
The cryptographic Hash of 32 × 32 size blocks is calculated according to the cryptographic Hash of the sub-block of 4 16 × 16 sizes;
The cryptographic Hash of 64 × 64 size blocks is calculated according to the cryptographic Hash of the sub-block of 4 32 × 32 sizes;
If current block is not simple block, current block is added in Hash table, wherein for 4 × 4,8 × 8,16 × 16,
The block of 32 × 32,64 × 64 sizes, by determining per row pixel value or whether each column pixel value is all identical, to judge that current block is
No is simple block;For 8 × 4 size blocks, by 34 × 4 blocks on integer pixel position on determined level direction whether be all
Simple block, to judge whether current block is simple block;For 4 × 8 size blocks, by judging in vertical direction on integer pixel position
34 × 4 blocks whether be all simple block, to judge whether current block is simple block,
Based on the Hash table, the estimation based on Hash is carried out to current prediction block, including:
The cryptographic Hash of current prediction block is calculated, and searches for match block in Hash table;
If current prediction block depth is 0, if the reconstructed image quality for finding match block and match block is jumped unlike desired value difference
Rate-distortion optimization process after crossing;
If current prediction block depth is not 0 and match block is found, whole pixel motion estimation and half pel motion estimation
Process is skipped;
If can not find match block, the estimation based on Hash is skipped.
2. being the method for claim 1, wherein directed to each block, two cryptographic Hash are calculated:First cryptographic Hash is Hash table
Index, and preceding 4 bits of first cryptographic Hash are determined based on block size, and remaining bit is according to current block
Original pixel value calculate, the second cryptographic Hash is calculated according to original pixel value.
3. a kind of device for being used to encode screen content image in efficient video coding (HEVC), described device includes breathing out
Uncommon Block- matching module is copied for inter-prediction and intra block, wherein the Hash blocks matching module executes following operation:
Hash table is established, including:
For present frame, according to sequence from left to right, from top to bottom, each integer pixel position calculates once as follows
Cryptographic Hash:
The cryptographic Hash of 2 × 2 size blocks is calculated according to original pixel value;
The cryptographic Hash of 4 × 4 size blocks is calculated according to the cryptographic Hash of the sub-block of 42 × 2 sizes;
The Hash of the cryptographic Hash and 4 × 8 size blocks of 8 × 4 size blocks is calculated separately according to the cryptographic Hash of the sub-block of 24 × 4 sizes
Value;
The cryptographic Hash of 8 × 8 size blocks is calculated according to the cryptographic Hash of the sub-block of 44 × 4 sizes;
The cryptographic Hash of 16 × 16 size blocks is calculated according to the cryptographic Hash of the sub-block of 48 × 8 sizes;
The cryptographic Hash of 32 × 32 size blocks is calculated according to the cryptographic Hash of the sub-block of 4 16 × 16 sizes;
The cryptographic Hash of 64 × 64 size blocks is calculated according to the cryptographic Hash of the sub-block of 4 32 × 32 sizes;
If current block is not simple block, current block is added in Hash table, wherein for 4 × 4,8 × 8,16 × 16,
The block of 32 × 32,64 × 64 sizes, by determining per row pixel value or whether each column pixel value is all identical, to judge that current block is
No is simple block;For 8 × 4 size blocks, by 34 × 4 blocks on integer pixel position on determined level direction whether be all
Simple block, to judge whether current block is simple block;For 4 × 8 size blocks, by judging in vertical direction on integer pixel position
34 × 4 blocks whether be all simple block, to judge whether current block is simple block,
Based on the Hash table, the estimation based on Hash is carried out to current prediction block, including:
The cryptographic Hash of current prediction block is calculated, and searches for match block in Hash table;
If current prediction block depth is 0, if the reconstructed image quality for finding match block and match block is jumped unlike desired value difference
Rate-distortion optimization process after crossing;
If current prediction block depth is not 0 and match block is found, whole pixel motion estimation and half pel motion estimation
Process is skipped;
If can not find match block, the estimation based on Hash is skipped.
4. being the method for claim 1, wherein directed to each block, two cryptographic Hash are calculated:First cryptographic Hash is Hash table
Index, and preceding 4 bits of first cryptographic Hash are determined based on block size, and remaining bit is according to current block
Original pixel value calculate, the second cryptographic Hash is calculated according to original pixel value.
5. a kind of video of the device of method or claim 3-4 for realizing described in any one of claim 1-2 compiles solution
Code device.
6. a kind of computer program product requiring the method described in any one of 1-2 for perform claim.
7. a kind of requiring that the method described in any one of 1-2 generates according to perform claim or described in claim 3-4
The encoded video stream of device code.
8. a kind of Video Decoder, for decode according to perform claim require method generation described in any one of 1-2 or by
The encoded video stream of device code described in claim 3-4.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810389178.8A CN108495139A (en) | 2018-04-18 | 2018-04-18 | The Hash Block- matching of screen content coding |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810389178.8A CN108495139A (en) | 2018-04-18 | 2018-04-18 | The Hash Block- matching of screen content coding |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108495139A true CN108495139A (en) | 2018-09-04 |
Family
ID=63314297
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810389178.8A Pending CN108495139A (en) | 2018-04-18 | 2018-04-18 | The Hash Block- matching of screen content coding |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108495139A (en) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109743570A (en) * | 2019-01-09 | 2019-05-10 | 北京工业大学 | A kind of compression method of screen content video |
CN110730344A (en) * | 2019-09-18 | 2020-01-24 | 浙江大华技术股份有限公司 | Video coding method and device and computer storage medium |
CN111225214A (en) * | 2020-01-22 | 2020-06-02 | 北京字节跳动网络技术有限公司 | Video processing method and device and electronic equipment |
CN111246208A (en) * | 2020-01-22 | 2020-06-05 | 北京字节跳动网络技术有限公司 | Video processing method and device and electronic equipment |
WO2020140952A1 (en) * | 2019-01-02 | 2020-07-09 | Beijing Bytedance Network Technology Co., Ltd | Hash-based motion searching |
CN112804528A (en) * | 2021-02-05 | 2021-05-14 | 北京字节跳动网络技术有限公司 | Screen content processing method, device and equipment |
CN113365065A (en) * | 2021-06-09 | 2021-09-07 | 湖南大学 | Lossless video coding method and decoding method for RPA robot screen recording |
CN113542750A (en) * | 2021-05-27 | 2021-10-22 | 绍兴市北大信息技术科创中心 | Data coding method for searching by two or more sets of hash tables |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103281538A (en) * | 2013-06-06 | 2013-09-04 | 上海交通大学 | Intra-frame coding method based on rolling hush and block-level intra-frame prediction |
US20170302936A1 (en) * | 2014-09-30 | 2017-10-19 | Microsoft Technology Licensing, Llc | Hash-based encoder decisions for video coding |
-
2018
- 2018-04-18 CN CN201810389178.8A patent/CN108495139A/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103281538A (en) * | 2013-06-06 | 2013-09-04 | 上海交通大学 | Intra-frame coding method based on rolling hush and block-level intra-frame prediction |
US20170302936A1 (en) * | 2014-09-30 | 2017-10-19 | Microsoft Technology Licensing, Llc | Hash-based encoder decisions for video coding |
Non-Patent Citations (1)
Title |
---|
朱昂: "基于文字块识别和长方形哈希块匹配的屏幕内容编码优化方案", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11558638B2 (en) | 2019-01-02 | 2023-01-17 | Beijing Bytedance Network Technology Co., Ltd. | Hash-based motion searching |
US11805274B2 (en) | 2019-01-02 | 2023-10-31 | Beijing Bytedance Network Technology Co., Ltd | Early determination of hash-based motion searching |
WO2020140954A1 (en) * | 2019-01-02 | 2020-07-09 | Beijing Bytedance Network Technology Co., Ltd | Simplification of hash-based motion searching |
WO2020140952A1 (en) * | 2019-01-02 | 2020-07-09 | Beijing Bytedance Network Technology Co., Ltd | Hash-based motion searching |
US11616978B2 (en) * | 2019-01-02 | 2023-03-28 | Beijing Bytedance Network Technology Co., Ltd. | Simplification of hash-based motion searching |
CN109743570A (en) * | 2019-01-09 | 2019-05-10 | 北京工业大学 | A kind of compression method of screen content video |
CN109743570B (en) * | 2019-01-09 | 2021-07-06 | 北京工业大学 | Method for compressing screen content video |
CN110730344A (en) * | 2019-09-18 | 2020-01-24 | 浙江大华技术股份有限公司 | Video coding method and device and computer storage medium |
CN110730344B (en) * | 2019-09-18 | 2022-04-19 | 浙江大华技术股份有限公司 | Video coding method and device and computer storage medium |
CN111225214A (en) * | 2020-01-22 | 2020-06-02 | 北京字节跳动网络技术有限公司 | Video processing method and device and electronic equipment |
CN111246208A (en) * | 2020-01-22 | 2020-06-05 | 北京字节跳动网络技术有限公司 | Video processing method and device and electronic equipment |
CN111225214B (en) * | 2020-01-22 | 2022-08-12 | 北京字节跳动网络技术有限公司 | Video processing method and device and electronic equipment |
CN112804528A (en) * | 2021-02-05 | 2021-05-14 | 北京字节跳动网络技术有限公司 | Screen content processing method, device and equipment |
CN113542750A (en) * | 2021-05-27 | 2021-10-22 | 绍兴市北大信息技术科创中心 | Data coding method for searching by two or more sets of hash tables |
CN113365065A (en) * | 2021-06-09 | 2021-09-07 | 湖南大学 | Lossless video coding method and decoding method for RPA robot screen recording |
CN113365065B (en) * | 2021-06-09 | 2024-04-26 | 湖南大学 | Lossless video coding method and decoding method for RPA robot screen recording |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108495139A (en) | The Hash Block- matching of screen content coding | |
US8787459B2 (en) | Video coding methods and apparatus | |
CN101529920B (en) | Method and apparatus for local illumination and color compensation without explicit signaling | |
CN105227960B (en) | For the Low-complexity intra prediction of Video coding | |
CN102685532B (en) | Coding method for free view point four-dimensional space video coding system | |
JP7416490B2 (en) | Method and apparatus and computer program for deep neural network-based interframe prediction in video coding | |
US11025917B2 (en) | Method and apparatus for video coding | |
WO2008020734A1 (en) | A method and apparatus for encoding or decoding frames of different views in multiview video using global disparity | |
WO2021203841A1 (en) | Inter-frame predication method, encoder, decoder, and storage medium | |
CN103813173B (en) | BCIM-based 3D-HEVC rapid intra-frame predication scheme | |
CN110692241A (en) | Diversified motion using multiple global motion models | |
CN109246430A (en) | 360 degree of video fast intra-mode predictions of virtual reality and CU, which are divided, shifts to an earlier date decision | |
KR20120095611A (en) | Method and apparatus for encoding/decoding multi view video | |
CN107360433A (en) | A kind of interframe prediction encoding method and device | |
US20220224943A1 (en) | Method and apparatus for video coding | |
CN109120928A (en) | Improvement intra block based on Character segmentation copies algorithm | |
TW202139700A (en) | Interframe prediction method, encoder, decoder, and storage medium | |
WO2021196211A1 (en) | Inter-frame prediction method, encoder, decoder, and storage medium | |
EP4169251A1 (en) | Method and apparatus for temporal filter in video coding | |
CN109889831A (en) | 360 degree of video intra mode decisions based on CU size | |
CN110062228A (en) | 360 degree of video quick intraframe prediction algorithms based on WMSE | |
CN103002279B (en) | Encode the method and its corresponding device of simultaneously reconstructed pixel block | |
RU2777394C1 (en) | Method and device for video encoding | |
JP2008017304A (en) | Image coding device, image decoding device, image coding method, and image coding program | |
KR20240056589A (en) | Use of affine models in affine two-way matching |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20180904 |
|
WD01 | Invention patent application deemed withdrawn after publication |