IBC mode-based transformation method and device, IBC mode-based coding method and device, electronic equipment and storage medium
A mode and coding technology, applied in the field of video coding, can solve problems affecting the coding compression rate and achieve the effect of improving the compression rate
Active Publication Date: 2021-03-26
ZHEJIANG DAHUA TECH
7 Cites 1 Cited by
AI-Extracted Technical Summary
Problems solved by technology
[0003]It only considers the case of discrete cosine transform and the case of impl...
Abstract
The invention provides an IBC mode-based transformation method and device, an IBC mode-based coding method and device, electronic equipment and a storage medium, and the method comprises the steps: employing a plurality of transformation methods to transform a current block, employing intra-frame block copying for the current block, and enabling the transformation methods to comprise primary transformation and/or secondary transformation and/or sub-block transformation; and selecting the transformation method with the minimum cost as the final transformation method of the current block. Therefore, the compression ratio in the IBC mode is improved.
Application Domain
Digital video signal modification
Technology Topic
Embedded systemElectrical and Electronics engineering +4
Image
Examples
- Experimental program(1)
Example Embodiment
[0031] Specific implementation method
[0032] Next, the technical solutions in the present application embodiment will be described in the present application embodiment, and it is clear that the described embodiments are intended to be part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without making creative labor premises, all of the present application protected.
[0033] The present invention will be described in detail below with reference to the accompanying drawings and examples.
[0034] See figure 1 The flow schematic of the first embodiment of the present invention based on the IBC mode, including:
[0035] Step S11: Transform the current block using a variety of transformation methods, and the current block is copied by the intra block replication, and the transformation method includes a transformation and / or secondary transformation and / or sub-block transformation.
[0036] Specifically, in the prior art, IBC (Intra Block Copy, Intra Block Copy) only considers discrete cosine transform and implicit skip transform, and selects the minimum transformation type from which the price is selected, and then encoded. Its considering is small, and the variation is small, and the encoding compression ratio in IBC mode is affected to some extent.
[0037] This application introduces secondary transform and / or sub-block transform in the encoding technique of IBC mode, introducing more transformation cores, enriching the transformation type of IBC mode to further enhance the encoding compression ratio in IBC mode.
[0038] Step S12: Select the minimum transformation method for the current block as the final transformation method of the current block.
[0039] Specifically, from the existing transformation type and the introduced transformation type, select the minimum transformation method of the most current block. This application introduces more transformation cores, enriching the type of transformation of IBC mode to further increase the encoding compression ratio in IBC mode.
[0040] See figure 2 The flow schematic of the second embodiment of the present invention is a second embodiment of the IBC mode, which uses a secondary transformation method for transforming, specific, including:
[0041] Step S21: Judging whether the current block meets the conditions of the secondary transformation.
[0042] Specifically, the secondary transformation is an intra prediction mode, and the main content is a transformation of the luminance block, and the transformation type is not implicit conversion method after the residual change is changed. The second transformation is performed on the left upper corner 4 * 4 transform block after one transition.
[0043] Step S22: Use discrete cosine transition to the current block.
[0044] Specifically, when the current block satisfies the conditions of the secondary transformation, the current block is used to use discrete cosine transformation. In one embodiment, the discrete cosine shift needs to be transformed in the horizontal direction and the vertical direction of the current block.
[0045] Discrete Cosine Transformation (DCT) includes DCT1 to DCT8. In a specific embodiment, the first discrete cosine is converted to DCT2, i.e., DCT2 conversion is performed on the horizontal direction of the current block and the vertical direction.
[0046] Step S23: The coefficients after discrete cosine are converted for the second transformation.
[0047]Specifically, the discrete cosine is converted to DCT2 as an example, and the coefficients after the DCT2 transform are second transform, wherein the second transform matrix can be pushed to the first discrete cosine shift. That is, the first transformation in the secondary transformation of the present embodiment is a first transformation of the current block using DCT2; then use the secondary transformation matrix to perform a second transformation after the first transformation.
[0048] Specifically, when the second transformation is performed, it is further determined whether or not the block vector BV [x] of the current block is 0; if it is not 0, the current block is subjected to secondary transformation. It is determined whether the current block is 0 in the vertical direction of the vertical direction is 0; if it is not 0, the current block performs secondary conversion. Among them, if the current block is in the horizontal direction of the block vector BV [x], the block vector BV [Y] of the current block is in the vertical direction is not 0, then the current block horizontal direction and the vertical direction of the vertical direction do. Among them, the secondary transform matrix is guided by a change matrix.
[0049] Step S24: Compare the cost of discrete cosine transformation and the cost of the second transformation.
[0050] Specifically, the comparison discrete cosine transform is, for example, using DCT2 to perform the first transformation of the current block, and the coefficient of transformation after the first transform is used in the first transformation. Select the minimum transformation method from which the price is selected as the final transformation method of the current block.
[0051] Step S25: Select the minimum transformation method for the current block as the final transformation method of the current block.
[0052] Specifically, if a discrete cosine conversion method is employed, for example, DCT2 performs the cost of the first transformation on the current block, less than the second transformation of the first transformation, the coefficient of transformation is used, and the discrete cosine transform method is used. For example, DCT2 performs a transformation method for the current block for the current block.
[0053] If the secondary transformation matrix is used to perform the second transformation of the first transformation, it is smaller than the cost of the first transformation of the current block using discrete cosine transform, the secondary transformation method is the final transformation method of the current block. .
[0054] Step S26: Only discrete cosine transformations on the current block.
[0055] Specifically, if the current block does not meet the conditions of the secondary transformation, only a discrete cosine shift is performed on the horizontal direction of the current block and the vertical direction. Where discrete cosine transformation can be DCT2. In another embodiment, if the current block does not meet the conditions of the secondary transformation, it is possible to further determine whether the current block meets the implicit skip transformation. Please refer to image 3. image 3 A flow schematic of a third embodiment of the present invention, a third embodiment of a transformation method based on an IBC mode, and specific comprises:
[0056] Step S31: Determine whether the current block meets the conditions implicitly skipped.
[0057] Specifically, when the residual running transform, ISTS, does not transform the residual, the residual is shifted directly, and the quantization entropy coding is performed directly. Judging whether the current block satisfies implicit conversion conditions.
[0058] Step S32: If satisfied, the current block is implicitly skipped, and the current block is discrete cosine transformation.
[0059] Specifically, in this embodiment, if the current block meets the criterion that implicitly skipped transform, the current block is implicitly skipped, and discrete cosine transformation is performed.
[0060] Step S33: Compare the cost of implicitly skipping the transformation and the cost of discrete cosine transformation, compares the cost of ISTS with DCT2.
[0061] Step S34: Select the minimum transformation method for the current block as the final transformation method of the current block.
[0062] Specifically, if the price of ISTS is less than the cost of transforming the horizontal direction of the current block using DCT2, ISTS is the final transformation method of the current block. If DCT2 is used to transform the horizontal direction of the current block and the vertical direction, it is smaller than the cost of using ISTS, the DCT2 is the final transformation method of the current block.
[0063] Step S35: Only a discrete cosine transition is currently performed.
[0064] Specifically, if the current block does not satisfy the condition that implicitly skipped transform, only a DCT2 transform is performed on the horizontal direction of the current block and the vertical direction.
[0065] The IBC mode-based transform method is provided, which introduces secondary transformation. When the current block meets the conditions of the secondary transformation, the current block performs secondary transformation, compares the cost of the transformation, and the cost of the secondary transformation. More transform cores, due to different conversion checks the different contents of energy aggregation capacity, more variable copuclearization, can obtain lower cost transformation methods, can further increase the compression ratio of IBC coding.
[0066] See Figure 4 , A flow schematic diagram of a fourth embodiment of the present invention based on an IBC mode, the method of this application introduces a sub-block transform, and specific comprises:
[0067] Step S41: Determine whether the current block meets the conditions for implicit skip transformation.
[0068] Step S42: Using the current block with implicit transformation skips, and discrete cosine transitions for the current block.
[0069] If the current block meets the criteria for implicit skipping transformation, discrete cosine transforms for the current block, and implicitly skipped the current block.
[0070] Step S43: Judging whether the current block meets the conditions of the sub-block transformation.
[0071] Further judgment whether or not the current block meets the conditions of the sub-block transformation. Sub-blockTransform, SBT) is a transformation type in inter prediction mode. The main content is divided into two sub-blocks, one of which is default defaults to 0, and another sub-block. The residual is not 0 by default, and only this sub-block containing the residual is converted. Among them, there are 8 options in the size and position of the non-0 residual sub-block (transmitted in the code stream), the transformation of the non-0 residual sub-block is self-adaptive selection DCT8 or DST7 transform as a horizontal transform according to the position of the sub-block. And vertical transformation.
[0072] Step S44: Sub block transformations for the current block.
[0073] Specifically, the method of transforming the front block is converted by means of a sub-block transform.
[0074] Step S45: Compares implicit skip transformation, discrete cosine transform, and sub-block transformation.
[0075] Specifically, compare the rate of implicit skip transform, discrete cosine transformation, and sub-block transformation, select the minimum transformation method in which the cost of the current block is the final transformation method of the current block.
[0076] Step S46: Select the minimum transformation method for the current block as the final transformation method of the current block.
[0077] Specifically, if the cost of implicitly skipping the transformation, less than the cost of discrete cosine transformation, the rate of implicit skipping is implicitly skipped as the final transformation method of the current block. If the cost of discrete cosine transformation is less than the expense of implicit skip transformation and the cost of the sub-block transformation, discrete cosine transform is the final transformation method of the current block. If the price of the sub-block transform is smaller than the cost of discrete cosine transformation and the price implicitly skipped, the sub-block transform is the final transformation method of the current block.
[0078] Step S47: Only a discrete cosine shift is performed on the current block.
[0079] Specifically, if the current block does not satisfy the implicit skip transform, only the horizontal direction of the current block and a discrete cosine shift is performed in the vertical direction, and then the cost of the transformation is compared to the cost of the sub-block transformation.
[0080] The transformation method shown in this implementation introduces the SBT existing in the inter prediction mode into the IBC mode, and can further increase the compression ratio of the encoded in the IBC mode.
[0081] In the conversion method of the present application, after the lowest transformation method is selected as the final transformation method, the current block is encoded based on the final transform method to obtain the code stream of the current block, including the syntax element, the syntax element including the syntax element Final transform method. Specifically, in the syntax elements, various information used in this encoding, specifically, including the transformation method used in this encoding, so that the decoding end is decoded. Specifically, if the final transform method is a sub-block transform, the syntax element corresponding to the sub-block transform is encoded into the code stream. If the final transform method is secondary transformation, the syntax element corresponding to the secondary transformation is encoded into the code stream.
[0082] See Figure 5 For the IBC mode-based transform device, including the conversion module 51 and the selection module 52.
[0083] The transform module 51 is used to transform the current block using a variety of transformation methods, and the current block uses the frame internal block replication, and the transform method includes primary transform and / or secondary transform and / or sub-block transformation. Select Module 52 is used to select the minimized transformation method for the cost as the final transformation method of the current block.
[0084] In an embodiment, the transform module 51 is configured to determine whether the current block satisfies the conditions of the secondary transformation; if satisfied, the current block performs discrete cosine shift; the coefficients after discrete cosine conversion is subjected to a second transformation. If not satisfied, only discrete cosine transformations are performed on the current block. The comparison module 52 is used to compare the cost of discrete cosine transformation and the cost of the second transformation, and select the minimum transformation method for the current block as the final transformation method of the current block.
[0085] In another embodiment, the conversion module 51 is used to determine whether the current block satisfies the condition of implicit skip transformation. If satisfied, the current block is implicitly skipped, and the current block is discrete cosine transformation. If not satisfied, only discrete cosine transformations are performed on the current block. Selection module 52 is used to compare the cost of implicit skip after transformation and the cost after discrete cosine, and select the minimum transformation method for the current block as the final transformation method of the current block.
[0086] In another embodiment, the conversion module 51 is used to determine whether the current block satisfies the condition of implicit skip transformation. If satisfied, the current block is implicitly skipped, and the current block is discrete cosine transformation. If not satisfied, only discrete cosine transformations are performed on the current block. The transform module 51 is also used to determine if the current block meets the conditions of the sub-block transformation. If satisfied, the current block performs sub-block transform. If it is not met, only discrete cosine transforms are performed on the current block. Select Module 52 is used to compare the cost of implicitly skip transform, discrete cosine shift, and sub-block transformation. Select the minimum transformation method for the current block as the final transformation method of the current block.
[0087] See Figure 6 , A flowchart of an IBC mode based encoding method, specifically, including:
[0088] Step S61: Calculate the residual of the front block.
[0089] Specifically, calculation When the residual of the front block is an intra prediction mode, the predicted value is obtained by the intra prediction, and the actual value reduction prediction value is obtained.
[0090]Step S62: The residual is encoded to obtain the code stream of the current block.
[0091] The residual of the current block is encoded to obtain the code stream of the current block. Specifically, the method of the present embodiment, which introduces the mode of the skip residual, and the residual is not changed, quantized, and entropy coded, and the reconstruction value is the predicted value. The predicted value acquisition can be acquired by the difference, or the reconstruction block of the motion information of the current block can also be directed directly.
[0092] Specifically, in the method shown in the present embodiment, the code stream includes a syntax element, including a marker of the skip residual mode, and the mark is used to indicate that the current block does not filter in the decoding end. Specifically, use ISM_FLAG as a syntax element, if the ISM_FLAG is 0 indicates an existing transformation method using an IBC mode; if the ISM_FLAG is 1 indicates a skip residual mode, and the block does not perform loop filtering.
[0093] The method shown in this example introduces the residual skip mode, which has a large advantage of some screen sequences, and can reduce the complexity of the decoder and to increase the compression ratio of the IBC mode encoding to some extent.
[0094] See Figure 7 The IBC mode-based encoding apparatus is provided in the present invention, including: residual calculation module 71 and encoding module 72. Wherein, the residual calculation module 71 is used to calculate the residual difference of the front block. The encoding module 72 is configured to encode the residual to obtain the current block of the code stream.
[0095] The apparatus shown in the present embodiment introduces the residual skip mode, which has a large advantage of some screen sequences, and can reduce the complexity of the decoder, and increase the compression ratio of the IBC mode encoding to a certain extent.
[0096] The method of this application is applied to screen content, such as an image generated by a computer, or can also be applied to natural images and mixed images.
[0097] See Figure 8 Schematic structural diagram of an embodiment of the electronic device of the present invention. Electronic devices include memory 82 and processor 81 that are interconnected.
[0098] Memory 82 is configured to store program instructions that implement the methods of any of the above.
[0099] Processor 81 is used to perform program instructions stored by memory 82.
[0100] The processor 81 can also be referred to as a CPU (Central Processing Unit, central processing unit). Processor 81 may be an integrated circuit chip with signal processing capability. Processor 81 can also be a general purpose processor, a digital signal processor (DSP), a dedicated integrated circuit (ASIC), a field programmable gate array (FPGA), or other programmable logic devices, separate doors or transistor logic devices, discrete hardware components . The general purpose processor can be a microprocessor or the processor can also be any conventional processor or the like.
[0101] Memory 82 can store all information in the electronic device, including input original data, computer program, intermediate operation results, and final operation results, and the like, including input raw data, computer programs, intermediate operation results, and final run results. It is stored and removed according to the location specified by the controller. With memory, electronic devices have a memory function to ensure proper work. The memory of the electronic device can be divided into main memory (memory) and auxiliary memory (externally), and is divided into a classification method divided into external memory and internal memory. Outline is usually a magnetic medium or an optical disc, etc., can save information for a long time. Memory refers to the storage components on the motherboard to store data and programs currently executing, but only for temporary storage programs and data, turn off power or power off, and data will be lost.
[0102] In several embodiments provided in this application, it should be understood that the disclosed methods and apparatus can be implemented by other methods. For example, the device implementation of the apparatus described above is merely schematic, for example, the division of the module or unit is only one logic function division, and there may be additional division methods, such as a plurality of units or components, may be combined or Can be integrated into another system, or some features can be ignored, or not executed. Another point, the coupling or direct coupling or communication connections displayed or discussed may be an electrical, mechanical or other form.
[0103] As the unit illustrated as the separation component may be or may not be physically separated, the components displayed as the unit may be or may not be a physical unit, i.e., in one place, or can also be distributed to a plurality of network elements. The object of this implementation method can be implemented according to the actual needs of the actual needs.
[0104] Further, each of the functional units in the various embodiments of the present application may be integrated into one processing unit, or each unit can be generated separately, or two or more units can be integrated into one unit. The above-described integrated units can be implemented in the form of hardware, or may be implemented in the form of a software functional unit.
[0105] Integrated Units If implemented in the form of a software functional unit and as a stand-alone product sales or use, it can be stored in a computer readable storage medium. Based on this understanding, the technical solution of the present application essentially ors a portion of the prior art or all or part of the technical solution can be embodied in the form of software products, the computer software product is stored in a storage medium. A number of instructions are used to enable a computer device (which can be a personal computer, system server, or network device, etc.) or processor (Processor) to perform all or part of the steps of the various implementation methods of the present application.
[0106] See Figure 9 Schematic structural diagram of the computer readable storage medium of the present invention. The storage medium of the present application stores a program file 91 capable of implementing all of the above methods, wherein the program file 91 can be stored in the storage medium in the form of a software product, including several instructions to make a computer device (can be personal) Computers, servers, or network devices, etc.) or processors (Processor) perform all or part of the steps of the various implementation methods of the present application. The aforementioned storage devices include: U disk, mobile hard disk, read-only memory (ROM, RAD-ONLY MEMORY), random access memory (RAM, RANDOM Access Memory), disk or disc or optical discs can store program code Or terminal devices such as computers, servers, mobile phones, and tablets.
[0107] The above is only the method of the present invention, and is not limited to the patent scope of the present invention, and an equivalent structure or equivalent process transform is used to use the specification of the present invention and the accompanying drawings, or directly or indirectly used in other related technical fields. All of them are included within the patent protection range of the present invention.
PUM


Description & Claims & Application Information
We can also present the details of the Description, Claims and Application information to help users get a comprehensive understanding of the technical details of the patent, such as background art, summary of invention, brief description of drawings, description of embodiments, and other original content. On the other hand, users can also determine the specific scope of protection of the technology through the list of claims; as well as understand the changes in the life cycle of the technology with the presentation of the patent timeline. Login to view more.
Similar technology patents
Railway track image processing method and system, storage medium and electronic equipment
InactiveCN113596454Aimprove compression ratioReduce the amount of image data
Owner:成都引力视创科技有限公司
Inflatable unfolding semi-rigid sealed cabin adopting compressible multi-layer sandwich protective layer
PendingCN114030649Aimprove compression ratioSmall size when folded
Owner:HARBIN INST OF TECH
Video coding method and system based on H265 and electronic equipment
Owner:SHENZHEN VIRTUAL CLUSTERS INFORMATION TECH
Vehicle infrared image compression and enhancement method and system
PendingCN113542762Aimprove compression ratioCommunication channel bandwidth requirements are low
Owner:中交信捷科技有限公司
SAR (Synthetic Aperture Radar) image compression method based on super prior architecture
PendingCN114386595Aimprove compression ratioImprove feature extraction and generalization capabilities
Owner:SOUTHWEST JIAOTONG UNIV
Classification and recommendation of technical efficacy words
- improve compression ratio
Method and apparatus for CABAC-based encoding having high compression ratio using improved context model selection and method and apparatus for CABAC-based decoding
ActiveUS20070194953A1improve compression ratio
Owner:SAMSUNG ELECTRONICS CO LTD
Image compression framework combining super-resolution and residual coding technology
InactiveCN107181949AImprove rate-distortion performanceimprove compression ratio
Owner:SICHUAN UNIV
Compression implementation method for Beidou satellite information transmission
Owner:广州祺智通信科技股份有限公司
Picture compression method in AOI (Automatic Optic Inspection) detection system and display panel defect detection system
ActiveCN107333124Areduce the amount of informationimprove compression ratio
Owner:WUHAN JINGCE ELECTRONICS GRP CO LTD
Associated data compressing method friendly to query
ActiveCN106709006Aimprove compression ratio
Owner:WUHAN UNIV OF SCI & TECH +1