WO2016051362A1 - Procédé et équipement pour l'encodage et le décodage d'un vecteur de copie intra bloc - Google Patents

Procédé et équipement pour l'encodage et le décodage d'un vecteur de copie intra bloc Download PDF

Info

Publication number
WO2016051362A1
WO2016051362A1 PCT/IB2015/057502 IB2015057502W WO2016051362A1 WO 2016051362 A1 WO2016051362 A1 WO 2016051362A1 IB 2015057502 W IB2015057502 W IB 2015057502W WO 2016051362 A1 WO2016051362 A1 WO 2016051362A1
Authority
WO
WIPO (PCT)
Prior art keywords
block vector
vector component
value
component
block
Prior art date
Application number
PCT/IB2015/057502
Other languages
English (en)
Inventor
Jani Lainema
Original Assignee
Nokia Technologies Oy
Nokia Usa Inc.
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 Nokia Technologies Oy, Nokia Usa Inc. filed Critical Nokia Technologies Oy
Publication of WO2016051362A1 publication Critical patent/WO2016051362A1/fr

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Definitions

  • the present application relates generally to coding and decoding of digital material.
  • a video coding system may comprise an encoder that transforms an input video into a compressed representation suited for storage/transmission and a decoder that can uncompress the compressed video representation back into a viewable form.
  • the encoder may discard some information in the original video sequence in order to represent the video in a more compact form, for example, to enable the storage/transmission of the video information at a lower bitrate than otherwise might be needed.
  • Some embodiments provide a method for encoding and decoding video information.
  • an apparatus, a computer program product, a computer-readable medium for implementing the method are provided.
  • a method comprising decoding an intra block copy motion vector with two components, the decoding comprising - determining a predicted value for the first block vector component;
  • the second block vector component is selected from a subset of values: a) determining a set of preferred values for the second block vector component;
  • the first block vector component is a horizontal component
  • the second block vector component is a vertical component
  • the first block vector component is a vertical component
  • the second block vector component is a horizontal component
  • the method further comprising indicating in a bitstream which component refers to vertical component and which component refers to horizontal component.
  • the method further comprises omitting decoding of the indicator selecting the value from the preferred set of values for the second block vector component, if the set of preferred values for the second block vector component only contains one value.
  • the method further comprises signalling if the predicted value for the second block vector component is to be used, and if not, signalling if the value is selected from a subset of preferred values or if it is differentially coded.
  • an apparatus comprising at least one processor; and at least one memory including computer program code the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to perform at least the following: decoding an intra block copy motion vector with two components, the decoding comprising
  • an apparatus comprising at least one processor; and at least one memory including computer program code the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to perform at least the following: decoding an intra block copy motion vector with two components, the decoding comprising
  • the second block vector component is selected from a subset of values: a) determining a set of preferred values for the second block vector component;
  • an apparatus comprising
  • means for decoding an intra block copy motion vector with two components said means for decoding being configured to
  • an apparatus comprising
  • means for decoding an intra block copy motion vector with two components said means for decoding being configured to
  • the second block vector component is selected from a subset of values: a) determining a set of preferred values for the second block vector component;
  • a computer program product comprising a computer-readable medium bearing computer program code embodied therein for use with a computer, the computer program code comprising:
  • code for decoding an intra block copy motion vector with two components said code comprising
  • a computer program product comprising a computer-readable medium bearing computer program code embodied therein for use with a computer, the computer program code comprising:
  • code for decoding an intra block copy motion vector with two components said code comprising
  • the second block vector component is selected from a subset of values: a) code for determining a set of preferred values for the second block vector component; b) code for decoding an indicator specifying which value out of said determined set of values is to be assigned for the second block vector component;
  • decoding an intra block copy motion vector with two components comprising - determining a predicted value for the first block vector component
  • the second block vector component is selected from a subset of values: a) determining a set of preferred values for the second block vector component; b) decoding an indicator specifying which value out of said determined set of values is to be assigned for the second block vector component;
  • an encoding method comprising
  • an encoding apparatus comprising at least one processor; and at least one memory including computer program code the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to perform at least the following:
  • an apparatus comprising
  • a fourteenth aspect there is provided a computer program product comprising a computer-readable medium bearing computer program code embodied therein for use with a computer, the computer program code comprising: - code for selecting a block vector for a first prediction unit using a 2-dimensional block vector search scanning candidate block vectors pointing to at least one area of NxM pixels;
  • N is greater than 1 and M is greater than 1.
  • Figure 1 illustrates a block diagram of a video coding system according to an embodiment
  • Figure 2 illustrates a layout of an apparatus according to an embodiment
  • Figure 3 illustrates an arrangement for video coding comprising a plurality of apparatuses, networks and network elements according to an embodiment
  • Figure 4 illustrates a block diagram of a video encoder according to an embodiment
  • Figure 5 illustrates a block diagram of a video decoder according to an embodiment
  • Figure 6 illustrates an embodiment of the intra block copy operation of related technology
  • Figure 7 illustrates an embodiment of the block vector search
  • Figure 8 illustrates a method according to an embodiment as a flowchart
  • Figure 9 illustrates a method according to another embodiment as a flowchart
  • Figure 10 illustrates a method according to yet another embodiment as a flowchart.
  • Figure 1 shows a video coding system as a schematic block diagram of an apparatus or electronic device 50 according to an embodiment.
  • the electronic device 50 may incorporate a codec according to an embodiment.
  • Figure 2 shows a layout of an apparatus according to an embodiment. The elements of Figs. 1 and 2 will be explained next.
  • the electronic device 50 may for example be a mobile terminal or user equipment of a wireless communication system. However, it is appreciated that embodiments of the invention may be implemented within any electronic device or apparatus which may require encoding and decoding, or encoding or decoding video images.
  • the apparatus 50 may comprise a housing 30 for incorporating and protecting the device.
  • the apparatus 50 further may comprise a display 32 in the form of a liquid crystal display.
  • the display may be any suitable display technology suitable to display an image or video.
  • the apparatus 50 may further comprise a keypad 34.
  • any suitable data or user interface mechanism may be employed.
  • the user interface may be implemented as a virtual keyboard or data entry system as part of a touch-sensitive display.
  • the apparatus may comprise a microphone 36 or any suitable audio input which may be a digital or analogue signal input.
  • the apparatus 50 may further comprise an audio output device, which - according to an embodiment - may be any one of: an earpiece 38, speaker, or an analogue audio or digital audio output connection.
  • the apparatus 50 may also comprise a battery 40 (or in an embodiment, the device may be powered by any suitable mobile energy device, such as solar cell, fuel cell or clockwork generator).
  • the apparatus may further comprise a camera 42 capable of recording or capturing images and/or video.
  • the apparatus 50 may further comprise an infrared port for short range line of sight communication to other devices.
  • the apparatus 50 may further comprise any suitable short range communication solution such as for example a Bluetooth wireless connection or a USB/firewire wired connection.
  • the apparatus 50 may comprise a controller 56 or processor for controlling the apparatus 50.
  • the controller 56 may be connected to memory 58 which according to an embodiment may store both data in the form of image and audio data and/or may also store instructions for implementation on the controller 56.
  • the controller 56 may further be connected to codec circuitry
  • controller 54 suitable for carrying out coding and decoding of audio and/or video data or assisting in coding and decoding carried out by the controller 56.
  • the apparatus 56 may further comprise a card reader 48 and a smart card 46, for example a UICC and UICC reader for providing user information and being suitable for providing authentication information for authentication and authorization of the user at a network.
  • a card reader 48 and a smart card 46 for example a UICC and UICC reader for providing user information and being suitable for providing authentication information for authentication and authorization of the user at a network.
  • the apparatus 50 may further comprise a radio interface circuitry 52 connected to the controller and suitable for generating wireless communication signals for example for communication with a cellular communications network, a wireless communication system or a wireless local area network.
  • the apparatus 50 may further comprise an antenna 44 connected to the radio interface circuitry 52 for transmitting radio frequency signals generated at the radio interface circuitry 52 to other apparatus(es) and for receiving radio frequency signals from other apparatus(es).
  • the apparatus 50 comprises a camera capable of recording or detecting individual frames which are then passed to the codec 54 or controller for processing.
  • the apparatus may receive the video image data for processing from another device prior to transmission and/or storage.
  • the apparatus 50 may receive either wirelessly or by a wired connection the image for coding/decoding.
  • FIG. 3 shows an arrangement for video coding comprising a plurality of apparatuses, networks and network elements according to an embodiment.
  • the system 10 comprises multiple communication devices which can communicate through one or more networks.
  • the system 10 may comprise any combination of wired or wireless networks including but not limited to a wireless cellular telephone network (such as a GSM, UMTS, CDMA network etc.), a wireless local area network (WLAN) such as defined by any of the IEEE 802.x standards, a Bluetooth personal area network, an Ethernet local area network, a token ring local area network, a wide area network and the Internet.
  • a wireless cellular telephone network such as a GSM, UMTS, CDMA network etc.
  • WLAN wireless local area network
  • the system 10 may include both wired and wireless communication devices or apparatus 50 suitable for implementing embodiments.
  • the system shown in Figure 3 shows a mobile telephone network 11 and a representation of the internet 28.
  • Connectivity to the internet 28 may include, but is not limited to, long range wireless connections, short range wireless connections, and various wired connections including, but not limited to, telephone lines, cable lines, power lines, and similar communication pathways.
  • the example communication devices shown in the system 10 may include, but are not limited to, an electronic device or apparatus 50, any combination of a personal digital assistant (PDA) and a mobile telephone 14, a PDA 16, an integrated messaging device (IMD) 18, a desktop computer 20, a notebook computer 22.
  • PDA personal digital assistant
  • IMD integrated messaging device
  • the apparatus 50 may be stationary or mobile when carried by an individual who is moving.
  • the apparatus 50 may also be located in a mode of transport including, but not limited to, a car, a truck, a taxi, a bus, a train, a boat, an airplane, a bicycle, a motorcycle or any similar suitable mode of transport.
  • Some or further apparatuses may send and receive calls and messages and communicate with service providers through a wireless connection 25 to a base station 24.
  • the base station 24 may be connected to a network server 26 that allows communication between the mobile telephone network 11 and the internet 28.
  • the system may include additional communication devices and communication devices of various types.
  • the communication devices may communicate using various transmission technologies including, but not limited to, code division multiple access (CDMA), global systems for mobile communications (GSM), universal mobile telecommunications system (UMTS), time divisional multiple access (TDMA), frequency division multiple access (FDMA) transmission control protocol-internet protocol (TCP-IP), short messaging service (SMS), multimedia messaging service (MMS) email, instant messaging service (IMS), Bluetooth, IEEE 802.11 and any similar wireless communication technology.
  • CDMA code division multiple access
  • GSM global systems for mobile communications
  • UMTS universal mobile telecommunications system
  • TDMA time divisional multiple access
  • FDMA frequency division multiple access
  • TCP-IP transmission control protocol-internet protocol
  • SMS short messaging
  • Video coder may comprise an encoder that transforms the input video into a compressed representation suited for storage/transmission, and a decoder is able to uncompress the compressed video representation back into a viewable form.
  • the encoder may discard some information in the original video sequence in order to represent the video in more compact form (i.e. at lower bitrate).
  • Hybrid video codecs for example ITU-T H.263 and H.264, encode the video information in two phases. At first, pixel values in a certain picture are (or "block") are predicted for example by motion compensation means (finding and indicating an area in one of the previously coded video frames that corresponds closely to the block being coded) or by spatial means (using the pixel values around the block to be coded in a specified manner). Secondly, the prediction error, i.e. the difference between the predicted block of pixels and the original block of pixels, is coded. This may be done by transforming the difference in pixel values using a specified transform (e.g.
  • DCT Discrete Cosine Transform
  • Figure 4 illustrates an example of a video encoder, where I uncomfortable: Image to be encoded; P' some: Predicted representation of an image block; Dminister: Prediction error signal; D' practice: Reconstructed prediction error signal; I' n : Preliminary reconstructed image; R' n : Final reconstructed image ; T, T "1 : Transform and inverse transform; Q, Q "1 : Quantization and inverse quantization; E: Entropy encoding; RFM: Reference frame memory; Pinter: Inter prediction; Pint ra : Intra prediction; MS: Mode selection; F: Filtering.
  • video pictures are divided into coding units (CU) covering the area of the picture.
  • a CU consists of one of more prediction units (PU) defining the prediction process for the samples within the CU and one or more transform units (TU) defining the prediction error coding process for the samples in said CU.
  • a CU may consists f a square block of samples with a size selectable from a predefined set of possible CU sizes.
  • a CU with the maximum allowed size may be named as CTU (coding tree unit) and the video picture is divided into non-overlapping CTUs.
  • a CTU can be further split into a combination of smaller CUs, e.g. by recursively splitting the CTU and resultant CUs.
  • Each resulting CU may have at least one PU and at least one TU associated with it.
  • Each PU and TU can be further split into smaller PUs and TUs in order to increase granularity of the prediction and prediction error coding processes, respectively.
  • Each PU has prediction information associated with it defining what kind of a prediction is to be applied for the pixels within that PU (e.g. motion vector information for inter-predicted Pus and intra prediction directionality information for intra predicted PUs).
  • each TU is associated with information describing the prediction rerror decoding process for the samples within the said TU (including e.g. DCT coefficient information). It may be signaled at CU level whether prediction error coding is applied or not for each CU.
  • the decoded reconstructs the output video by applying prediction means similar to the encoder to form a predicted representation of the pixel blocks (using the motion or spatial information created by the encoder and stored in the compressed representation) and prediction error decoding (inverse operation of the prediction error coding recovering the quantized prediction error signal in spatial pixel domain).
  • prediction error decoding inverse operation of the prediction error coding recovering the quantized prediction error signal in spatial pixel domain.
  • the decoder sums up the prediction and prediction error signals (pixel values) to form the output video frame.
  • the decoder (and encoder) can also apply additional filtering means to improve the quality of the output video before passing it for display and/or storing it as prediction reference for the forthcoming frames in the video sequence.
  • the decoding process is illustrated in Figure 5.
  • Figure 5 illustrates a block diagram of a video decoder where P' substantial: Predicted representation of an image block; D' healthy: Reconstructed prediction error signal; I' weather: Preliminary reconstructed image; R' constitutive: Final reconstructed image; T "1 : Inverse transform; Q "1 : Inverse quantization; E “1 : Entropy decoding; RFM: Reference frame memory; P: Prediction (either inter or intra); F: Filtering.
  • a color palette based coding can be used.
  • Palette based coding refers to a family of approaches for which a palette, i.e. a set of colors and associated indexes, is defined and the value for each sample within a coding unit is expressed by indicating its index in the palette.
  • Palette based coding can achieve good coding efficiency in coding units with a relatively small number of colors (such as image areas which are representing computer screen content, like text or simple graphics).
  • a Decoded Picture Buffer may be used in the encoder and/or in the decoder. There are two reasons to buffer decoded pictures, for references in inter prediction and for reordering decoded pictures into output order.
  • the DPB may include a unified decoded picture buffering process for reference pictures and output reordering.
  • a decoded picture may be removed from the DPB when it is no longer used as a reference and is not needed for output.
  • the motion information may be indicated in video codecs with motion vectors associated with each motion compensated image block.
  • Each of these motion vectors represents the displacement of the image block in the picture to be coded (in the encoder side) or decoded (in the decoder side) and the prediction source block in one of the previously coded or decoded pictures.
  • those vectors may be coded differentially with respect to block specific predicted motion vectors.
  • the predicted motion vectors may be created in a predefined way, e.g. by calculating the median of the encoded or decoded motion vectors or the adjacent blocks.
  • Another way to create motion vector predictions is to generate a list of candidate predictions from adjacent blocks and/or co-located blocks in temporal reference pictures and signalling the chose candidate as the motion vector prediction.
  • the reference index of previously coded/decoded picture can be predicted.
  • the reference index is typically predicted from adjacent blocks and/or co-located blocks in temporal reference picture.
  • high efficiency video codecs may employ an addition motion information coding/decoding mechanism, called "merging/merge mode", where all the motion field information, which includes motion vector and corresponding reference picture index for each available reference picture list, is predicted and used without any modification/correction.
  • predicting the motion field information is carried out using the motion field information or adjacent blocks and/or co-located blocks in temporal reference pictures and the user motion field information is signaled among a list of motion field candidate list filled with motion field information of available adjacent /co-located blocks.
  • the displacement vector indicates where from the same picture a block of samples can be copied to form a prediction of the block to be coded or decoded.
  • This kind of intra block copying methods can improve the coding efficiency substantially in presence of repeating structures within the frame - such as text or other graphics.
  • Video encoders may utilize Lagrangian cost functions to find optimal coding modes, e.g. the desired macroblock mode and associated motion vectors. This kind of cost function uses a weighting factor ⁇ to tie together the (exact or estimated) image distortion due to lossy coding methods and the (exact or estimated) amount of information that is required to represent the pixel values in an image area:
  • C is the Lagrangian cost to be minimized
  • D is the image distortion (e.g. Mean Squared Error) with the mode and motion vectors considered
  • R the number of bits needed to represent the required data to reconstruct the image block in the decoder (including the amount of data to represent the candidate motion vectors).
  • Scalable video coding refers to coding structure where one bitstream can contain multiple representations of the content at different bitrates, resolutions or frame rates. In these cases the receiver can extract the desired representation depending on its characteristics (e.g. resolution that matches best the display device). Alternatively, a server or a network element can extract the portions of the bitstream to be transmitted to the receiver depending on e.g. the network characteristics or processing capabilities of the receiver.
  • a scalable bitstream may consist of a "base layer" providing the lowest quality video available and one or more enhancement layers that enhance the video quality when received and decoded together with the lower layers. In order to improve coding efficiency for the enhancement layers, the coded representation of that layer may depend on the lower layers. E.g. the motion and mode information of the enhancement layer can be predicted from lower layers. Similarly the pixel data of the lower layers can be used to create prediction for the enhancement layer.
  • a scalable video codec for quality scalability also known as Signal-to-Noise or SNR
  • spatial scalability may be implemented as follows.
  • a base layer a conventional non-scalable video encoder and decoder are used.
  • the reconstructed/decoded pictures of the base layer are included in the reference picture buffer for an enhancement layer.
  • the base layer decoded pictures may be inserted into a reference picture list(s) for coding/decoding of an enhancement layer picture similarly to the decoded reference pictures of the enhancement layer.
  • the encoder may choose a base-layer reference picture as inter prediction reference and indicate its use with a reference picture index in the coded bitstream.
  • the decoder decodes from the bitstream, for example from a reference picture index, that a base-layer picture is used as inter prediction reference for the enhancement layer.
  • a decoded base-layer picture is used as prediction reference for an enhancement layer, it is referred to as an inter-layer reference picture.
  • spatial scalability In addition to quality scalability, there are also other scalability modes: spatial scalability, bit-depth scalability and chroma format scalability.
  • spatial scalability base layer pictures are coded at a higher resolution than enhancement layer pictures.
  • Bit-depth scalability base layer pictures are coded at lower bit-depth (e.g. 8 bits) than enhancement layer pictures (e.g. 10 or 12 bits).
  • chroma format scalability base layer pictures provide higher fidelity in chroma (e.g. coded in 4:4:4 chroma format) than enhancement layer pictures (e.g. 4:2:0 format).
  • base layer information can be used to code enhancement layer to minimize the additional bitrate overhead.
  • Scalability can be enabled in two ways. Either by introducing new coding modes for performing prediction of pixel values or syntax from lower layers of the scalable representation or by placing the lower layer pictures to the reference picture buffer (decoded picture buffer, DPB) of the higher layer.
  • the first approach is more flexible and thus can provide better coding efficiency in most cases.
  • the second, reference frame based scalability, approach can be implemented very efficiently with minimal changes to single layer codecs while still achieving majority of the coding efficiency gains available.
  • a reference frame based scalability codec can be implemented by utilizing the same hardware or software implementation for all the layers, just taking care of the DPB management by external means.
  • H.265/HEVC screen content test model describes a straight-forward intra block copy implementation.
  • Intra block copy method creates a prediction for a block of samples by copying certain area of the same image to the predicted area. The location of the sources area for the copy operation is indicated with a block vector that is coded differentially with respect to a predicted block vector.
  • known solutions assume the block vectors to have symmetrical distribution around the block vectors predictors. However, that assumption is not always valid, which hurts the compression performance of such codecs.
  • the intra block copy mode is used to encode textual content which is often aligned on certain rows (or columns in some languages) of the picture.
  • Figure 6 illustrates the intra block copy operation of related technology.
  • PU at (x, y) is predicted by copying a block of samples using a block vector (BVx, B Vy). Dotted area is excluded from the allowed source area as its pixels are not yet decoded in typical raster scan decoding order. Due to computational restrictions encoder is typically further limiting the search range of block vector candidates - in this example the actual search area is illustrated by light gray area.
  • a method - under some conditions - either alters the coding of (at least) one of the block vector components or limits (at least) one of the block vector components to certain set of allowed (i.e. preferred) values depending on the earlier block vectors in the image.
  • Figure 7 illustrates an example of the block vector search according to an embodiment.
  • two candidate vertical components for the block vector are identified: BVyO and BVyl.
  • Encoder may now do only two 1 -dimensional searches - one by fixing the vertical component to BVyO and one by fixing the vertical component to BVyl .
  • Figure 8 illustrates an embodiment, where intra block copy motion vector with two components, such as a horizontal component and a vertical component, is decoded.
  • the decoding may comprise the following steps:
  • the second motion vector component is indicated by a combination of signalling a selected value from a subset of possible values and predictive coding. Predictive coding is applied in the case where the block vector is not selected from the determined subset of values.
  • the implementation may be the following, which is also shown in Figure 9:
  • Indicate is a second block vector component is differentially coded or selected from a subset of possible values 940;
  • a determine a set of preferred values of the second block vector component 963; b. decode an indicator specifying which value out of said determined set of values is to be assigned for the second block vector component 965;
  • an encoding method can be implemented as follows:
  • the previous embodiments can be implement in multiple ways.
  • the order of the steps can be performed in any order.
  • the difference value for the first component and the indicator for the second component can be decoded first, and creation of the motion vector components based on the decoded information can be done afterwards.
  • the first block vector component can refer to horizontal component
  • second block vector component can refer to vertical component, or other way around. It can also be indicated in the bitstream which component refers to the horizontal and which component refers to the vertical component.
  • the described process can be limited to operate only on some of the intra block copy Coding Units (CUs) or Prediction Units (PUs). It can be indicated for which CUs or PUs the process is applied to or it can be applied to a predefined set of CUs or PUs. For example, the process can be limited to operate only on the PUs of certain size like PUs that are smaller than 8x8 pixels. The process can also be limited to operate only on certain PUs within a CU. For example, known differential block vector coding can be applied to the first PU within a CU and the method according to present embodiments, can be applied to the subsequent PUs within said CU.
  • CUs intra block copy Coding Units
  • PUs Prediction Units
  • the determination of the set of preferred values for the second block vector component can be done in various ways.
  • the set of preferred values could be ⁇ predicted value for the second block vector component, 0 ⁇ or ⁇ value for the second block vector component of the first PU within the CU, 0 ⁇ or it can contain all the values of the applicable block vector predictors for the PU or CU with or without adding value zero to the set.
  • it can be first signaled if the predicted value for the second block vector component is to be used and if not, it can be further signaled if the value is selected from a subset of potential values or is it differentially coded.
  • block_vector 2D_block_vector_predictor+2D_differential_block_vector ⁇
  • block_vector_ver use_vert_of_first_PU_flag?vertical component of block vector or the first PU:0
  • block_vector_hor lD_block_vector_predictor+ lD_differential_bk>ck_vector
  • the block vector of the first PU within a CU serves as the primary motion vector
  • the set of preferred vertical components of the following PU block vectors may be constructed as ⁇ value for the vertical block vector component of the first PU within the CU, 0 ⁇ .
  • the set consists of only zero and thus there is no need to decode the indicator.
  • Decoding of the 2D_differential_block_vector and lD_differential_block_vector as well as generation of the block vector predictors can be done as known from related technology.
  • the embodiments provide advantages. For example, the coding efficiency of the intra block copy mode of the image/video codecs is improved with virtually no effect on decoding complexity. It can help lower computational complexity of typical encoders as the method tends to limit the range of potential block vectors to the most likely set of block vector candidates.
  • a device may comprise circuitry and electronics for handling, receiving and transmitting data, computer program code in a memory, and a processor that, when running the computer program code, causes the device to carry out the features of an embodiment.
  • a network device like a server may comprise circuitry and electronics for handling, receiving and transmitting data, computer program code in a memory, and a processor that, when running the computer program code, causes the network device to carry out the features of an embodiment.
  • the various embodiments can be implemented with the help of a non-transitory computer- readable medium encoded with instructions that, when executed by a computer, perform the various embodiments.
  • the different functions discussed herein may be performed in a different order and/or concurrently with each other. Furthermore, if desired, one or more of the above-described functions may be optional or may be combined. Furthermore, the present embodiments are disclosed in relation to a method for decoding and to a decoder. However, the teachings of the present disclosure can be applied in an encoder configured to perform encoding of coding units and coding the indication the presence of escape coding within the coding unit. [0083] Although various aspects of the invention are set out in the independent claims, other aspects of the invention comprise other combinations of features from the described embodiments and/or the dependent claims with the features of the independent claims, and not solely the combinations explicitly set out in the claims.
  • a method comprising decoding an intra block copy motion vector with two components, the decoding comprising
  • the first block vector component is a horizontal component
  • the second block vector component is a vertical component
  • the first block vector component is a vertical component
  • the second block vector component is a horizontal component
  • the method further comprising indicating in a bitstream which component refers to vertical component and which component refers to horizontal component.
  • the method further comprises omitting decoding of the indicator selecting the value from the preferred set of values for the second block vector component, if the set of preferred values for the second block vector component only contains one value.
  • the method further comprises signalling if the predicted value for the second block vector component is to be used, and if not, signalling if the value is selected from a subset of preferred values or if it is differentially coded.
  • an apparatus comprising at least one processor; and at least one memory including computer program code the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to perform at least the following: decoding an intra block copy motion vector with two components, the decoding comprising
  • an apparatus comprising at least one processor; and at least one memory including computer program code the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to perform at least the following: decoding an intra block copy motion vector with two components, the decoding comprising
  • the second block vector component is selected from a subset of values: a) determining a set of preferred values for the second block vector component;
  • an apparatus comprising
  • means for decoding an intra block copy motion vector with two components said means for decoding being configured to
  • an apparatus comprising
  • means for decoding an intra block copy motion vector with two components said means for decoding being configured to
  • the second block vector component is selected from a subset of values: a) determining a set of preferred values for the second block vector component;
  • a computer program product comprising a computer-readable medium bearing computer program code embodied therein for use with a computer, the computer program code comprising:
  • code for decoding an intra block copy motion vector with two components said code comprising
  • a computer program product comprising a computer-readable medium bearing computer program code embodied therein for use with a computer, the computer program code comprising:
  • code for decoding an intra block copy motion vector with two components said code comprising
  • the second block vector component is selected from a subset of values: a) code for determining a set of preferred values for the second block vector component;
  • a ninth example there is provided a non-transitory computer-readable medium encoded with instructions that, when executed by a computer, perform
  • the second block vector component is selected from a subset of values: a) determining a set of preferred values for the second block vector component;
  • an encoding method comprising
  • an encoding apparatus comprising at least one processor; and at least one memory including computer program code the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to perform at least the following:
  • a fourteenth aspect there is provided a computer program product comprising a computer-readable medium bearing computer program code embodied therein for use with a computer, the computer program code comprising:
  • N is greater than 1 and M is greater than 1.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

L'invention concerne un procédé et un équipement technique pour décoder un vecteur de mouvement de copie intra bloc avec deux composantes. Selon un mode de réalisation, le décodage consiste à déterminer une valeur prédite pour la première composante de vecteur de bloc ; décoder une valeur de différence pour la première composante de vecteur de bloc ; produire une valeur pour la première composante de vecteur de bloc en ajoutant ladite valeur prédite à ladite valeur de différence ; déterminer un ensemble de valeurs préférées pour la deuxième composante de vecteur de bloc ; décoder un indicateur spécifiant quelle valeur dans ledit ensemble déterminé de valeurs préférées doit être attribuée à la deuxième composante de vecteur de bloc ; et attribuer la valeur sélectionnée à la deuxième composante de vecteur de mouvement.
PCT/IB2015/057502 2014-10-03 2015-09-30 Procédé et équipement pour l'encodage et le décodage d'un vecteur de copie intra bloc WO2016051362A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201462059257P 2014-10-03 2014-10-03
US62/059,257 2014-10-03

Publications (1)

Publication Number Publication Date
WO2016051362A1 true WO2016051362A1 (fr) 2016-04-07

Family

ID=55629509

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2015/057502 WO2016051362A1 (fr) 2014-10-03 2015-09-30 Procédé et équipement pour l'encodage et le décodage d'un vecteur de copie intra bloc

Country Status (1)

Country Link
WO (1) WO2016051362A1 (fr)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020185602A1 (fr) * 2019-03-08 2020-09-17 Tencent America LLC Prédiction de vecteur de bloc unifié pour la compensation de bloc intra-image
RU2777377C1 (ru) * 2019-03-08 2022-08-02 Тенсент Америка Ллс Унифицированное предсказание вектора блока для компенсации блоков внутри изображения
WO2024007695A1 (fr) * 2022-07-05 2024-01-11 Beijing Xiaomi Mobile Software Co., Ltd. Codage/décodage de données d'image vidéo
US11936849B2 (en) 2019-06-20 2024-03-19 Jvckenwood Corporation Moving picture coding device, moving picture coding method, moving picture coding program, moving picture decoding device, moving picture decoding method, and moving picture decoding program

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CHEN CHUN-CHI ET AL.: "Screen content coding using non- square intra block copy for HEVC", IEEE INTERNATIONAL CONFERENCE ON MULTIMEDIA AND EXPO (ICME, 14 July 2014 (2014-07-14), pages 1 - 6, XP032639288, DOI: doi:10.1109/ICME.2014.6890229 *
KWON D-K ET AL.: "Fast intra block copy (IntraBC) search for HEVC screen content coding", IEEE INTERNATIONAL SYMPOSIUM ON CIRCUITS AND SYSTEMS (ISCAS, 1 June 2014 (2014-06-01), pages 9 - 12, XP032624581, DOI: doi:10.1109/ISCAS.2014.6865052 *
NACCARI M ET AL.: "HEVC Range Extensions Test Model 6 Encoder Description", 16. JCT-VC MEETING, San Jose, Retrieved from the Internet <URL:http://wftp3.itu.int/av-arch/jctvc-site> [retrieved on 20140223] *
ZHANG K ET AL.: "Symmetric intra block copy", 17. JCT-VC MEETING, 27 March 2014 (2014-03-27), Valencia, Retrieved from the Internet <URL:http://wftp3.itu.int/av-arch/jctvc-site> [retrieved on 20140317] *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020185602A1 (fr) * 2019-03-08 2020-09-17 Tencent America LLC Prédiction de vecteur de bloc unifié pour la compensation de bloc intra-image
RU2777377C1 (ru) * 2019-03-08 2022-08-02 Тенсент Америка Ллс Унифицированное предсказание вектора блока для компенсации блоков внутри изображения
US11936849B2 (en) 2019-06-20 2024-03-19 Jvckenwood Corporation Moving picture coding device, moving picture coding method, moving picture coding program, moving picture decoding device, moving picture decoding method, and moving picture decoding program
WO2024007695A1 (fr) * 2022-07-05 2024-01-11 Beijing Xiaomi Mobile Software Co., Ltd. Codage/décodage de données d'image vidéo

Similar Documents

Publication Publication Date Title
EP3120548B1 (fr) Décodage vidéo utilisant une palette à long terme
US11570467B2 (en) Method for coding and an apparatus
JP6272630B2 (ja) ビデオ符号化及び復号の方法及び技術装置
US20150312568A1 (en) Method and technical equipment for video encoding and decoding
US20120243606A1 (en) Methods, apparatuses and computer programs for video coding
US20240187594A1 (en) Method And An Apparatus for Encoding and Decoding of Digital Image/Video Material
US10349052B2 (en) Method for coding and an apparatus
WO2016051362A1 (fr) Procédé et équipement pour l&#39;encodage et le décodage d&#39;un vecteur de copie intra bloc
WO2017093604A1 (fr) Procédé, appareil et produit-programme informatique destinés au codage et au décodage vidéo
WO2018229327A1 (fr) Procédé, appareil et produit-programme informatique destinés au codage et au décodage vidéo
WO2017178696A1 (fr) Appareil et produit programme d&#39;ordinateur pour un encodage et un décodage vidéo, et procédé associé
WO2023066672A1 (fr) Codage vidéo utilisant des unités parallèles
WO2023242466A1 (fr) Procédé, appareil et produit-programme informatique de codage vidéo

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15845745

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15845745

Country of ref document: EP

Kind code of ref document: A1