Method and apparatus for using motion information of a collocated intra block copy block as a temporal motion vector prediction candidate

WO2026195316A1PCT designated stage Publication Date: 2026-09-24NOKIA TECHNOLOGIES OY
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
PCT/EP2026/055568
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2025-03-19
Filing Date
2026-03-02
Publication Date
2026-09-24

Smart Images

  • Figure EP2026055568_24092026_PF_FP_ABST
    Figure EP2026055568_24092026_PF_FP_ABST
Patent Text Reader

Abstract

A method, apparatus, and computer program product are provided for determining a motion vector predictor using intra block copy (IBC) motion information associated with a check position. A plurality of check positions are identified proximate a collocated block for a current block. For a respective check position, it is determined whether the respective check position is coded in an IBC coding mode and, if so, IBC motion information associated with the respective check position is considered to be a potential temporal motion vector prediction (TMVP) candidate. One or more potential TMVP candidates ae selected as one or more final TMVP candidates for inclusion in a merge candidate list. A merge candidate is then selected from the merge candidate list and an indication of a selected merge candidate is signaled for utilization with the current block.
Need to check novelty before this filing date? Find Prior Art

Description

METHOD AND APPARATUS FOR USING MOTION INFORMATION OF A COLLOCATED INTRA BLOCK COPY BLOCK AS A TEMPORAL MOTION VECTOR PREDICTION CANDIDATETECHNOLOGICAL FIELD

[0001] An example embodiment relates generally to techniques in video coding, and, more particularly, to techniques for using motion information of a collocated intra block copy block as a temporal motion vector prediction candidate.BACKGROUND

[0002] Versatile Video Coding (WC) is an international video coding standard produced by the International Standards Organization (ISO) / International Electrotechnical Commission (IEC) Subcommittee (SC) 29 and International Telecommunication Union - Telecommunication Standardization Sector (ITU-T) Video Coding Experts Group (VCEG). VCC Testing Model (VTM) is its reference software implementation. Following its finalization, Joint Video Experts Team (JVET) created Enhanced Compression Model (ECM) reference software, which is built on top of WC, for exploration study on a future video coding standard. Both VTM and ECM are implemented as a hybrid based architecture with block-based processing where an input picture comprising three components (typically Y’CbCr) is divided into Coding Tree Units (CTUs), and each CTU may be further split into coding units (CUs).BRIEF SUMMARY

[0003] In an example embodiment, an apparatus is provided that includes at least one processor and at least one memory storing instructions that, when executed by the at least one processor, cause the apparatus to identify a plurality of check positions proximate a collocated block in a collocated picture for a current block in a current picture. The collocated block is located in the same relative position within the collocated picture as the current block is located within the current picture. For a respective check position, the apparatus is also caused to determine whether the respective check position is coded in an intra block copy (IBC) coding mode and, in an instance in which the respective check position is coded in the IBC coding mode, to consider IBC motion information associated with the respective check position to be apotential temporal motion vector prediction (TMVP) candidate. The apparatus is further caused to select one or more potential TMVP candidates as one or more final TMVP candidates for inclusion in a merge candidate list, to select a merge candidate from the merge candidate list and to signal an indication of a selected merge candidate to be utilized for the current block of the current picture.

[0004] In another example embodiment, a method is provided that includes identifying a plurality of check positions proximate a collocated block in a collocated picture for a current block in a current picture. The collocated block is located in the same relative position within the collocated picture as the current block is located within the current picture. For a respective check position, the method also includes determining whether the respective check position is coded in an intra block copy (IBC) coding mode and, in an instance in which the respective check position is coded in the IBC coding mode, considering IBC motion information associated with the respective check position to be a potential temporal motion vector prediction (TMVP) candidate. The method further includes selecting one or more potential TMVP candidates as one or more final TMVP candidates for inclusion in a merge candidate list, selecting a merge candidate from the merge candidate list and signaling an indication of a selected merge candidate to be utilized for the current block of the current picture.

[0005] In a further example embodiment, a computer program product is provided that includes a non-transitory computer-readable storage medium comprising instruction stored thereon that, when executed by at least one processor of an apparatus, cause the apparatus to identify a plurality of check positions proximate a collocated block in a collocated picture for a current block in a current picture. The collocated block is located in the same relative position within the collocated picture as the current block is located within the current picture. For a respective check position, the apparatus is also caused to determine whether the respective check position is coded in an intra block copy (IBC) coding mode and, in an instance in which the respective check position is coded in the IBC coding mode, to consider IBC motion information associated with the respective check position to be a potential temporal motion vector prediction (TMVP) candidate. The apparatus is further caused to select one or more potential TMVP candidates as one or more final TMVP candidates for inclusion in a merge candidate list, to select a merge candidate from the merge candidate list and to signal an indication of a selected merge candidate to be utilized for the current block of the current picture.

[0006] In yet another example embodiment, an apparatus is provided that includes means for identifying a plurality of check positions proximate a collocated block in a collocated picture for a current block in a current picture. The collocated block is located in the same relative position within the collocated picture as the current block is located within the current picture. For a respective check position, the apparatus also includes means for determining whether the respective check position is coded in an intra block copy (IBC) coding mode and, in an instance in which the respective check position is coded in the IBC coding mode, means for considering IBC motion information associated with the respective check position to be a potential temporal motion vector prediction (TMVP) candidate. The apparatus further includes means for selecting one or more potential TMVP candidates as one or more final TMVP candidates for inclusion in a merge candidate list, means for selecting a merge candidate from the merge candidate list and means for signaling an indication of a selected merge candidate to be utilized for the current block of the current picture.

[0007] The apparatus, method and computer program product of an example embodiment may also sort potential TMVP candidates based on a predefined criteria and, responsive to the sorting, select the one or more potential TMVP candidates as the one or more final TMVP candidates for inclusion in the merge candidate list. The selected merge candidate may be a final TMVP candidate comprising the IBC motion information associated with the respective check position. In an example embodiment, the IBC motion information comprises an IBC block vector and a reference index of the collocated picture. In this embodiment, the IBC block vector serves as a motion vector and a collocated picture index of the collocated picture may serve as a reference picture for the current block. Or, in this embodiment, the IBC block vector serves as a motion vector and a reference picture that is closest temporally to the current picture in a reference picture list may serve as a reference picture for the current block. Alternatively, in this embodiment, the IBC block vector serves as a motion vector, a reference picture is selected from a reference picture list for the current block, and signaling of the indication of the selected merge candidate includes signaling the reference picture from the reference picture list that was selected for the current block. The method, apparatus and computer program product may also determine whether to use the IBC motion information as a potential TMVP candidate based on a coding mode type syntax element. For example, determining whether to use the IBC motion information as a potential TMVP candidate may include rejecting IBC motion information for:(i) a collocated block that is coded with IBC combined modes, or (ii) an IBC coded block with block vector information synthesized from inter-vectors or combined with other tools. The method, apparatus and computer program product may also modify the IBC motion information regarding the IBC block vector to reflect an IBC coding mode type of the collocated block.

[0008] In an example embodiment, an apparatus is provided that includes at least one processor and at least one memory storing instructions that, when executed by the at least one processor, cause the apparatus to receive an indication of a selected merge candidate to be utilized for a current block of a current picture. The selected merge candidate comprises a selected temporal motion vector prediction (TMVP) candidate included in a merge candidate list that provides intra block copy (IBC) motion information associated with a respective check position that is coded in an IBC coding mode. The respective check position is one of a plurality of check positions proximate a collocated block in a collocated picture. The collocated block is located in the same relative position within the collocated picture as the current block is located within the current picture. The apparatus is also caused to decode the current block of the current picture based at least partially upon the selected TMVP candidate.

[0009] In another example embodiment, a method is provided that includes receiving an indication of a selected merge candidate to be utilized for a current block of a current picture. The selected merge candidate comprises a selected temporal motion vector prediction (TMVP) candidate included in a merge candidate list that provides intra block copy (IBC) motion information associated with a respective check position that is coded in an IBC coding mode. The respective check position is one of a plurality of check positions proximate a collocated block in a collocated picture. The collocated block is located in the same relative position within the collocated picture as the current block is located within the current picture. The method also includes decoding the current block of the current picture based at least partially upon the selected TMVP candidate.

[0010] In a further example embodiment, a computer program product is provided that includes a non-transitory computer-readable storage medium comprising instruction stored thereon that, when executed by at least one processor of an apparatus, cause the apparatus to receive an indication of a selected merge candidate to be utilized for a current block of a current picture. The selected merge candidate comprises a selected temporal motion vector prediction (TMVP) candidate included in a merge candidate list that provides intra block copy (IBC)motion information associated with a respective check position that is coded in an IBC coding mode. The respective check position is one of a plurality of check positions proximate a collocated block in a collocated picture. The collocated block is located in the same relative position within the collocated picture as the current block is located within the current picture. The apparatus is also caused to decode the current block of the current picture based at least partially upon the selected TMVP candidate.

[0011] In yet another example embodiment, an apparatus is provided that includes means for receiving an indication of a selected merge candidate to be utilized for a current block of a current picture. The selected merge candidate comprises a selected temporal motion vector prediction (TMVP) candidate included in a merge candidate list that provides intra block copy (IBC) motion information associated with a respective check position that is coded in an IBC coding mode. The respective check position is one of a plurality of check positions proximate a collocated block in a collocated picture. The collocated block is located in the same relative position within the collocated picture as the current block is located within the current picture. The method also includes means for decoding the current block of the current picture based at least partially upon the selected TMVP candidate.

[0012] The method, apparatus and computer program product of an example embodiment may also identify the plurality of check positions proximate the collocated block in the collocated picture for the current block in the current picture. The collocated block is located in the same relative position within the collocated picture as the current block is located within the current picture. For a respective check position, the method, apparatus and computer program product of this embodiment also determine whether the respective check position is coded in the IBC coding mode and, in an instance in which the respective check position is coded in the IBC coding mode, consider the IBC motion information associated with the respective check position to be a potential temporal motion vector prediction (TMVP) candidate. The method, apparatus and computer program product of this example embodiment further select one or more potential TMVP candidates as one or more final TMVP candidates for inclusion in the merge candidate list. In an example embodiment, the method, apparatus and computer program product also sort potential TMVP candidates based on a predefined criteria and, responsive to the sorting, select the one or more potential TMVP candidates as the one or more final TMVP candidates for inclusion in the merge candidate list.

[0013] The selected merge candidate may be a final TMVP candidate comprising the IBC motion information associated with the respective check position. In an example embodiment, the IBC motion information comprises an IBC block vector and a reference index of the collocated picture. In this embodiment, the IBC block vector serves as a motion vector and a collocated picture index of the collocated picture may serve as a reference picture for the current block. Or, in this embodiment, the IBC block vector serves as a motion vector and a reference picture that is closest temporally to the current picture in a reference picture list may serve as a reference picture for the current block. Or, in this embodiment, the IBC block vector serves as a motion vector, and receiving the indication of the selected TMVP candidate comprises receiving an indication of a reference picture selected from a reference picture list for the current block. The IBC motion information regarding the IBC block vector may reflect an IBC coding mode type of the collocated block.BRIEF DESCRIPTION OF THE DRAWINGS

[0014] Having thus described certain example embodiments of the present disclosure in general terms, reference will hereinafter be made to the accompanying drawings, which are not necessarily drawn to scale, and wherein:

[0015] Figure 1 illustrates a collocated block in a collocated picture;

[0016] Figure 2 illustrates the generation of subblock templates for a subblock-based temporal motion vector prediction mode of operation;

[0017] Figure 3 illustrates a plurality of pairs of check positions for temporal motion vector predication candidates over a plurality of blocks proximate a collocated block in a collocated picture;

[0018] Figure 4 illustrates an intra-frame prediction block from a coded area of a picture that is identified by a block vector from a current block in an intra block copy mode;

[0019] Figure 5 is a block flow diagram illustrating video encoding and decoding, in accordance with various embodiments of the present disclosure;

[0020] Figure 6 is a block diagram of an apparatus that may be configured as an encoder or a decoder according to an example embodiment of the present disclosure;

[0021] Figure 7 is a flowchart of the operations performed, such as by the apparatus of Figure 6 as embodied by an encoder, according to an example embodiment of the present disclosure;

[0022] Figure 8 illustrates templates of a current block and a collocated prediction block for purposes of determining a template cost; and

[0023] Figure 9 is a flowchart of the operations performed, such as by the apparatus of Figure 6 as embodied by a decoder, according to an example embodiment of the present disclosure.DETAILED DESCRIPTION

[0024] The present disclosure more fully describes various embodiments with reference to the accompanying drawings. It should be understood that some, but not all embodiments are shown and described herein. Indeed, the embodiments may take many different forms, and accordingly this disclosure should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will satisfy applicable legal requirements. Like numbers refer to like elements throughout.

[0025] The following embodiments are exemplary. Although the specification may refer to “an”, “one”, or “some” embodiment(s) in several locations of the text, this does not necessarily mean that each reference is made to the same embodiment(s), or that a particular feature only applies to a single embodiment. Single features of different embodiments may also be combined to provide other embodiments. Further, when a particular feature, structure, or characteristic is described in connection of an embodiment, it is within the knowledge of one skilled in the art to apply such feature, structure, or characteristic in connection with other embodiments whether or not explicitly described. It shall be understood that although the terms “first”, “second”, and / or the like may be used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another.

[0026] For the purposes of the present disclosure, the phrases “at least one of A or B”, “at least one of A and B”, and “A and / or B” mean (A), (B), or (A and B). For the purposes of the present disclosure, the phrase “A, B, and / or C” means (A), (B), (C), (A and B), (A and C), (B and C), or (A, B, and C).

[0027] In accordance with Versatile Video Coding (WC), an input picture is divided into coding tree units (CTUs), and a CTU may be further split into coding units (CU)s (alsoreferenced as blocks). A CU (or block) may be coded in either inter coding mode or intra coding mode. If the block is in inter coding mode, an encoder searches for a temporal prediction block in reference picture(s) and signals a decoder regarding how to find the same prediction block in reference picture(s) stored by or accessible to the decoder. If the block is in intra-coding mode, the encoder constructs a spatial prediction block from the current picture and signals the decoder regarding how to form the same spatial prediction block from the current picture.

[0028] For a current inter-CU in a current picture, the associated temporal prediction block in reference pictures is represented by motion information (e.g., motion vectors, reference picture indexes, reference picture lists) with respect to the current CU in the current picture. The encoder signals the motion information to the decoder, and the decoder uses the motion information to form the temporal prediction block from reference pictures.

[0029] In WC and ECM, for a current CU, the motion information may consist of two parts: motion information prediction (e.g., motion vector prediction (MVP)) and motion information delta (e.g., motion vector difference (MVD)). For a current CU, the motion information prediction is derived from the motion information of the past inter coded CUs in the current picture or in reference pictures, while the motion information delta is often coded in an explicit manner.

[0030] WC and ECM support a number of new and refined coding tools for deriving the motion information prediction for a current CU. One of the coding tools is merge prediction in which, for a current CU, both the encoder and decoder construct the same list of merge candidates. The merge candidates maintain the motion information of the past inter coded CUs around the current CU, both spatially and temporally. The encoder selects a merge candidate (by selecting the motion information of a merge candidate) from the merge candidate list for the current CU, and signals the decoder regarding which merge candidate in the merge candidate list is to be used for the current CU.

[0031] In ECM, for a current CU in a current picture, the encoder and decoder may collect an initial set of merge candidates. The initial set of merge candidates may include the following types of candidates: spatial merge candidates, temporal merge candidates (e.g., temporal motion vector predictions (TMVPs)), non-adjacent spatial merge candidates, history-based merge candidates (HMVP), pairwise merge candidates and / or zero motion vectors (MVs).

[0032] In WC, the temporal motion vector prediction (TMVP) for an advanced motion vector prediction (AMVP) and merge mode is derived from blocks located at the center or the bottom-right of the collocated block in a signaled collocated picture. In this regard, a collocated picture is one of reference pictures in a reference picture list and is chosen by or specified for the current picture. For example, the collocated picture may be the closest past coded picture to the current picture. For a current picture, the collocated picture may be the reference picture with reference picture index 0 in the reference picture list, which is often the reference picture temporally closest to the current picture. However, other collocated pictures may be utilized. For example, any reference picture in the reference picture list may be set, such as by a user or an encoder, to be the collocated picture for a current picture. Similarly, in a subblock-based temporal motion vector prediction (SbTMVP) mode, the motion information from the left neighboring position is used as a motion shift, which is then employed to obtain TMVPs at sub-CU level.

[0033] In WC, for a current block in a current picture, the merge candidate list contains only one temporal merge candidate (e.g., one TMVP). The TMVP candidate contains the motion information associated with a collocated block in a collocated picture. For a current block in a current picture, the collocated block is a block of the same size at the same geometric location in a collocated picture as the current block in the current picture. The collocated picture is a previously coded reference picture. Up to two positions {c0 and cl} in or around the collocated block are checked to derive the TVMP. In this regard, Figure 1 depicts a current block 10 from a current picture as well as a collocated block 12 from a collocated picture. Two positions cO and cl around the collocated block are specified in WC. The position cO is at the bottom-right corner of the collocated block and the position cl is at the center of the collocated block.

[0034] In WC, for a current block in a current picture, position cO of the collocated block is initially checked. If position cO of the collocated block is coded in inter mode, its motion information is included in the merge candidate list as the only TMVP candidate, and position cl of the colloated block is not checked. Otherwise, if position cO of the collocated block is not coded in inter mode or is not available, position cl of the collocated block is then checked. If position cl of the collocated block is then determined to be coded in inter mode, its motion information is included in the merge candidate list as the only TMVP candidate. If neither ofposition cO or cl of the collocated block is coded in inter mode or is not available, there will be no TMVP in the merge candidate list for the collocated block.

[0035] In ECM, two aspects of TMVP are modified. Firstly, two collocated pictures are utilized, which are the two reference pictures with the least picture order count (POC) distance relative to the to-be-coded frame. Secondly, the motion shift to locate the TMVP is adaptively determined from multiple locations according to template costs. More specifically, two motion shift candidate lists are constructed respectively for the two collocated pictures. The motion shifts with the minimum template matching cost are used to derive SbTMVP or TMVP candidates. At most four SbTMVP candidates are included in the sub-block-based merge list. The SbTMVP candidate with the least template matching cost derived from the first collocated frame is placed as the first entry without reordering, while other SbTMVP candidates are sorted together with affine candidates. In addition, the prediction direction of each subblock template is determined based on the center subblock. As illustrated in Figure 2, if the center subblock 20 is uni-predicted, then all the subblock templates are uni-predicted, and vice versa. If the motion vector of a corresponding adjacent subblock at the determined reference list is not available for a subblock template, a zero MV is used for that subblock template.

[0036] As noted above, ECM supports two collocated pictures for a current picture. Over each collocated picture, ECM also increases possible check positions for TMVP candidates for a current block. As an example, Figure 3 shows the check positions in the collocated picture for a current block, specified in ECM. The check positions are spread over a checking area 30 of 5x5 blocks in the collocated picture, each block is of the same size as the current and collocated blocks. The top-left block of the checking area is the collocated block 31.

[0037] The collocated block 31 contains four check positions designated by a first circle 32 and a first triangle 33 forming a first pair of check positions, and a second circle 34 and a second triangle 35 forming a second pair of check positions, as shown in Figure 3. In an embodiment in which the top-left coordinate of the collocated block is (x,y), the width of the block is w and the height of the block is h, the coordinate locations of the check positions are as follows:the coordinate location of the first circle is (x+w-l,y+h-l);the coordinate location of the first triangle is (x+(w»l),y+(h»l));the coordinate location of the second circle is (x+w,y+(3*h»2)); andthe coordinate location of the second triangle is (x+(3*w»2),y+h).

[0038] Each block along the diagonal line from the top-left to the bottom-right of the checking area 30 contains two check positions designated by a first circle 32 and a first triangle 33. For each block, the check positions designated by the first circle and the first triangle form a pair of check positions, as encircled by a dashed line 36 in Figure 3. In an embodiment in which the top-left coordinate of a block along the diagonal line from the top-left to the bottom-right of the checking area is (x,y), the width of the block is w and the height of the block is h:the coordinate location of the first circle in the block is (x+w,y+h); andthe coordinate location of the first triangle in the block is (x+w»l,y+h»l).

[0039] Each block, except the collocated block 31, on the first horizontal block row 37 contains one check position (second circle 34) on the right, as shown in Figure 3. In an embodiment in which the top-left coordinate of a block on the first horizontal block row is (x,y), the width of the block is w and the height of the block is h, the coordinate location of the second circle in the block is (x+w,y+h»l).

[0040] In addition, each block, except the collocated block 31, on the first vertical block column 38 contains one check position (second triangle 35) at the bottom, as shown in Figure 3. In an embodiment in which the top-left coordinate of a block on the first vertical block column is (x,y), the width of the block is w and the height of the block is h, the coordinate location of the second triangle in the block is (x+w»l,y+h).

[0041] On each of the diagonal lines 39 that extend upwardly and to the right in Figure 3, there are two check positions, namely, one second circle 34 in the first horizontal block row 37 and one second triangle in the first vertical block column 38. The check positions represented by the second circle and the second triangle along a diagonal line form a pair of check positions.

[0042] For a current block in a current picture, the pairs of possible check positions around the collocated block in the collocated picture include the motion information from these check positions for consideration as TMVP candidates. The TMVP candidate selection process may either favor or prioritize one check position of a pair or may treat both positions equally with respect to the TMVP candidate selection process.

[0043] Intra Block Copy (IBC) in WC and ECM is a coding tool used for intra-frame prediction. If a current block in a current picture is in IBC coding mode, an intra-frame prediction block is copied from the coded area of the same current picture. The displacement of the intra-frame prediction block from the same current block is indicated by a block vector. Thedisplacement (or motion) information associated with an IBC block in a current picture includes the block vector and the reference index for the same current picture (e.g., a 16 bit maximum reference index in ECM). Figure 4 shows an example of a current block c that is in IBC coding mode. In this example, an intra-frame prediction block p is pointed by a block vector 40 in the coded area 42 (shown by the shaded region) of the same current picture.

[0044] One of the merge types in ECM is temporal merge candidates or TMVP candidates. For a current CU in a current picture, TMVP candidates are derived from motion information at certain positions around the collocated block in a collocated picture. Previously in ECM design, the positions around the collocated block 31 in a collocated picture are distributed over a checking area 30 of 5x5 blocks in the collocated picture as shown in Figure 3. Each block in the checking area is of the same size as the current block and the top-left block of the checking area is the collocated block, as described above. These check positions are grouped into pairs. For a pair, its two check positions are checked in sequence. Specifically, a first check position of the pair is initially checked. If the first check position is coded in inter coding mode, motion information at the first check position will be considered as a potential TMVP candidate, and the other check position of the pair will not be checked. However, if the first position is not in inter mode or not available, the second check position of the pair is then checked. If the second check position is coded in inter coding mode, the motion information at the second check position will be considered as a potential TMVP candidate.

[0045] Previously, the ECM design limits TMVP candidates to inter-frame motion information of blocks in inter coding mode only. In this regard, for a current block in a current picture, only inter-frame motion information at the possible check positions for TMVP candidates (shown, for example, by the first and second circles 32, 34 and the first and second triangles 33, 35 in Figure 3) around the collocated block 31 in the collocated picture are considered as potential TMVP candidates. However, in at least some embodiments of the present disclosure, for a current block in a current picture, intra-frame motion information at the possible check positions for TMVP candidates (shown, for example, by the first and second circles and the first and second triangles in Figure 3) around the collocated block in the collocated picture are also considered as potential TMVP candidates.

[0046] The TMVP selected from the TMVP candidates may then be utilized by an encoder when encoding pictures for transmission to and decoding by a decoder. In this regard and byway of example, Figure 5 shows a process 50 in which video is encoded and then decoded following storage and / or transmission. Although the encoding process is depicted in Figure 5 with respect to video by way of example, other types of data may be encoded and decoded in a comparable manner. The illustrated process can include generating, recording, rendering, receiving, retrieving, or otherwise providing original video data 51. The original video data can be encoded by an encoder 52, using, e.g., one or more algorithms. Algorithms, such as Discrete Cosine Transform-based video compression algorithms, e.g., MPEG-2, MPEG-4, H.263, and H.264, can be used by the encoder to encode the original video data. The output from the encoder is compressed video data 53. Compressed video data is sent to a network 54 that provides the compressed video data 55 to a decoder 56. The decoder decodes the compressed video data to generate decoded video data 57, which is approximately equivalent to the original video data.

[0047] Referring now to Figure 6, a schematic block diagram of an apparatus 60 is depicted, which is configured to carry out at least a portion of the video compression / encoding / decoding processes and tasks described herein, e.g., process 50 of Figure 5. As such, the apparatus may be embodied as or be a portion of an encoder, a decoder or the like. In other embodiments, the apparatus can be, comprise, or be comprised within, e.g., mobile device, user equipment, computing device, or a computing device or network node in a wireless network.

[0048] The apparatus 60 may include at least one processor 62 in operable communication with a memory 64 and a radio or other communications interface 66. The memory is configured to store instructions (e.g., a computer program code, software) that, when executed by the at least one processor, cause the apparatus at least to perform the methods as disclosed herein, and one or more embodiments thereof. In an embodiment in which the communications interface is a radio interface, the radio interface can be arranged and dimensioned for, operably programmed for, programmatically capable of, or otherwise suitably configured for generating wireless communication signals for example for communication with a cellular communications network, a wireless communications system, or a wireless local area network. In some embodiments, the apparatus can optionally further include a display 68 and / or a keypad or other user interface 69.

[0049] According to some embodiments, the processor is configured for controlling at least some aspects, functionalities, equipment, subcomponents, or subsystems of the apparatus. The processor may be connected either directly or indirectly to the memory which, in someembodiments, may store both data in the form of image and audio data and / or may also store instructions for implementation on the processor. The processor may include or optionally be connected to codec circuitry 65 and the codec circuitry can be arranged and dimensioned for, operably programmed for, programmatically capable of, or otherwise suitably configured for carrying out coding and / or decoding of audio and / or video data or assisting in coding and decoding carried out by the processor. In an embodiment in which the apparatus is embodied by an encoder, the processor is configured to provide the codec circuitry with audio and / or video data, which is then encoded by the codec circuitry for subsequent storage and / or transmission, such as the communication interface. Alternatively, in an embodiment in which the apparatus is embodied by a decoder, the codec circuitry decodes, e.g., with the aid of, and / or upon receiving instructions from, the processor. The codec circuitry can then, once the decodable information is decoded, provide decoded information to the processor. The processor can interpret the decoded information to synchronize the audio / video content, and otherwise determine how to reconstitute, build, reconstruct, render, overlay, display, emit, broadcast, and / or present the decoded audio, images, and / or video frames to one or more users, either directly, such as via the display or by transmitting / providing the decoded audio, images, and / or video frames to another device for display thereon.

[0050] The processor 62 may include circuitry, or be constituted as circuitry or circuitries, the circuitry or circuitries being configured to perform phases of methods in accordance with one or more example embodiments described herein. As used in this application, the term “circuitry” may refer to one or more or all of the following: (a) hardware-only circuit implementations, such as implementations in only analog and / or digital circuitry, and (b) combinations of hardware circuits and software, such as, as applicable: (i) a combination of analog and / or digital hardware circuit(s) with software / firmware and (ii) any portions of hardware processor(s) with software (including digital signal processor(s)), software, and memory(ies) that work together to cause an apparatus, such as a user equipment, to perform various functions) and (c) hardware circuit(s) and or processor(s), such as a microprocessor(s) or a portion of a microprocessor(s), that requires software (e.g., firmware) for operation, but the software may not be present when it is not needed for operation. This definition of circuitry applies to all uses of this term in this application, including in any claims. As a further example, as used in this application, the term circuitry also covers an implementation of merely a hardware circuit or processor (or multiple processors) orportion of a hardware circuit or processor and its (or their) accompanying software and / or firmware. The term circuitry also covers, for example and if applicable to the particular claim element, a baseband integrated circuit or processor integrated circuit for a mobile device or a similar integrated circuit in server, a cellular network device, or other computing or network device.

[0051] The memory 64 may be implemented using any suitable data storage technology. The memory may include a database for storing data. The memory may be at least in part external to apparatus 60 but accessible to apparatus. For example, the memory may include a computer readable medium or a non-transitory computer readable medium for storing the instructions. The term non-transitory, as used herein, is a characteristic of the medium itself (e.g., tangible, not a signal) as opposed to a limitation on data storage persistency (e.g., random access memory, RAM, vs. read only memory, ROM).

[0052] As noted above, the communications interface 66 may include a radio interface that is configured to provide the apparatus 60 with communication capabilities. The radio interface may include one or more receivers configured to receive information in accordance with at least one cellular or non-cellular standard. The radio interface may also include one or more transmitters configured to transmit information in accordance with at least one cellular or non-cellular standard. The receiver may include more than one receiver. The radio interface may include a transceiver configured to receive and transmit information in accordance with at least one cellular or non-cellular standard. As shown, the radio interface of some embodiments may include or be associated with an antenna 67.

[0053] The term “transmit,” and the like, as used herein, refers to outputting of a signal via an interface providing a wired or wireless connection between two or more devices (or two or more components of a single device). In some examples, the signal is a radio frequency signal output, for example, via the communications interface 66. In some other examples, the signal is an electrical signal (or optical signal) output, for example, via the processor 62.

[0054] In some examples, the user interface 69 may include, for example, at least one of a keypad, a microphone, a touch display, a display, a speaker, etc. The user interface may be used to control the apparatus 60 by the user. The user interface may be external to the apparatus. For example, the apparatus may be connected to another device, such as a computer, either via wireless or wired connection, and the apparatus is controlled by the user via the computer.

[0055] In at least one embodiment, at least some of the processes described herein may be carried out by an apparatus including means for carrying out at least some of the described processes. Means for performing methods as disclosed herein may include software and / or hardware components of the apparatus 60. For example, the at least one processor 62, the memory 64, and the computer program code form means for carrying out the method or methods as disclosed herein, and one or more embodiments thereof. The term “means” as used in the description and in the claims may refer to one or more individual elements configured to perform the corresponding recited functionality or functionalities, or it may refer to several elements that perform such functionality or functionalities. Furthermore, several functionalities recited in the claims may be performed by the same individual means or the same combination of means. For example, performing such functionality or functionalities may be caused in an apparatus by a processor that executes instructions stored in a memory of the apparatus.

[0056] Figure 7 illustrates an example flowchart 70 of a method to which one or more examples disclosed herein may be applied. The method may be computer-implemented. The method may be performed by an apparatus, such as the apparatus 60 of Figure 6, as embodied by or forming a part of an encoder.

[0057] Referring now to block 72 of Figure 7, an apparatus 60 of an example embodiment includes means, such as the at least one processor 62 or the like, for identifying a plurality of check positions proximate a collocated block in a collocated picture for a current block in a current picture. The check positions may be individually identified or pairs or other groups of check positions may be identified in other embodiments. The plurality of check positions may be identified in various different manners including, for example, the manner described above with respect to Figure 3.

[0058] The apparatus 60 of an example embodiment also includes means, such as the at least one processor 62 or the like, for determining, for a respective check position, whether the respective check position is coded in an intra block copy (IBC) coding mode. See block 74 of Figure 7. In an instance in which the respective check position is coded in the IBC coding mode, the apparatus also includes means, such as the at least one processor or the like, for considering IBC motion information associated with the respective check position to be a potential TMVP candidate. See block 76. The process of determining whether a respective check position is coded in an IBC coding mode and, if so, considering the IBC motion information associated witha respective check position to be a potential TMVP candidate as described above in relation to blocks 74 and 76 may be repeated for a plurality of check positions, for example, for each of the check positions that were identified, such as each of the check positions identified as described above with respect to Figure 3.

[0059] As shown in block 78 of Figure 7, the apparatus 60 of an example embodiment also includes means, such as the at least one processor 62 or the like, for selecting one or more of the potential TMVP candidates as final TMVP candidates for inclusion in a merge candidate list. In this regard, the apparatus may include means, such as the at least one processor or the like, for sorting the potential TMVP candidates based on a predefined criteria and means, such as the at least one processor or the like, for selecting one or more of the potential TMVP candidates as final TMVP candidates for inclusion in the merge candidate list. The potential TMVP candidates may be sorted and one or more of the TMVP candidates may thereafter be selected as final TMVP candidates for inclusion in the merge candidate list in various manners.

[0060] In one embodiment, for example, the apparatus 60, such as the at least one processor 62, may be configured to perform a sorting process using template costs of the prediction blocks pointed to by the IBC block vectors against the current block. For a current block 10 (designated c) and a collocated prediction block 12 (designated p) that is pointed to by an IBC block vector 40, the neighboring pixels of the current block and the prediction block that have been reconstructed and are located in the rows to the left and above the current block and the collocated prediction block form the template of the current block (T c) and the template of the corresponding prediction block (Tp), respectively, as shown in Figure 8. In this embodiment, the apparatus, such as the at least one processor, may be configured to calculate the template cost of an IBC block vector based upon the difference between the template of the prediction block pointed by the block vector and the template of the current block.

[0061] The template cost of an IBC block vector 40 against the current block 10 may be defined as the difference between the template (Tp) of the collocated prediction block 12 pointed by the IBC block vector and the template (Tc) of the current block in the same current picture, as follows:template cost = diff(Tc — Tp)

[0062] In one embodiment, the apparatus 60, such as the at least one processor 62, is configured to determine the template cost by determining the S D (sum of absolute difference)on a pixel-by-pixel basis between the template (Tp) of the collocated prediction block 12 pointed by the IBC block vector and the template (Tc) of the current block in the same current picture.

[0063] The apparatus 60 embodied by an encoder and a decoder may be configured to calculate the template costs of potential TMVP candidates (including potential TMVP candidates providing inter-frame motion information and / or IBC motion information as provided in accordance with an example embodiment), sort the potential TMVP candidates according to their template costs, and select the one or more of the potential TMVP candidates with the smallest template costs as the final TMVP candidates in the merge candidate list. As such, the final TMVP candidates can include only potential TMVP candidates that provide IBC motion information, only TMVP candidates that provide inter-frame motion information or TMVP candidates that include one or more potential TMVP candidates that provide IBC motion information and one or more TMVP candidates that provide inter-frame motion information depending upon the potential TMVP candidates with the smallest template costs. The resulting merge candidate list may additionally include different categories of merge candidates, such as one or more spatial merge candidates, history -based motion vector prediction (HMVP) candidates, etc. in addition to the final TMVP candidates.

[0064] As shown in block 80 of Figure 7, the apparatus 60 also includes means, such as the at least one processor 62 or the like, for selecting a merge candidate from the merge candidate list to serve as the motion vector predictor for encoding of the current block. The merge candidate that is selected may, in some instances, be one of the final TMVP candidates that were included in the merge candidate list, such as a final TMVP candidate that provides inter-frame motion information and / or IBC motion information as provided in accordance with an example embodiment.

[0065] A merge candidate may be selected from the merge candidate list in various manners. By way of example, but not of limitation, the apparatus 60, such as the at least one processor 62, is configured to estimate a rate distortion (RD) cost for each merge candidate by coding or partially coding the current block using the merge candidate under evaluation. The RD cost J may be defined, for example, as J=D+XR, where D is the coding distortion (a difference measured between eh current block and the reconstructed or coded block), R is the number of bits that are required and X is the Lagrangian multiplier that serves as a factor to control the balance between rate and distortion. From among the plurality of merge candidates, theapparatus, such as the at least one processor, may be configured to select the merge candidate based on the RD cost, such as the merge candidate having the smallest RD cost, for the current block.

[0066] As shown in block 82 of Figure 7, the apparatus 60 also includes means, such as the at least one processor 62, the communication interface 66 or the like, for signaling an indication of the merge candidate that is selected for utilization for the current block of the current picture (such as a final TMVP candidate, e.g., a final TMVP candidate that provides inter-frame motion information and / or IBC motion information as described above), such as for utilization as a motion vector predictor during encoding of the current block of the current picture. By signaling the indication of the selected merge candidate, such as to a decoder, the decoder may receive the indication and then utilize the merge candidate that was selected during the decoding process in order to reconstruct the current block of the current picture.

[0067] The IBC motion information that is associated with a respective check position may include an IBC block vector and a reference index of the collocated picture. In one embodiment, the IBC block vector serves as a motion vector, thereby identifying the prediction block relative to the current block. In this example embodiment, a collocated picture index of the collocated picture can serve as a reference picture for the current block. In another embodiment in which the IBC vector also serves as the motion vector, the reference picture that is closest temporally to the current picture in a reference picture list may serve as the reference picture for the current block. In this regard, the reference picture that is closest temporally to the current picture may be the reference picture that is closest in terms of picture order count to the current picture. In yet another embodiment in which the IBC block vector serves as the motion vector, the apparatus 60 may additionally include means, such as the at least one processor 62 or the like, for selecting a reference picture from a reference picture list for the current block. In this embodiment, the apparatus, such as the at least one processor, the communication interface 66 or the like, is caused to signal the indication of the selected TMVP candidate by signaling the reference picture from the reference picture list that was selected for the current block.

[0068] In an example embodiment, the apparatus 60 also includes means, such as the at least one processor 62 or the like, for determining whether to use the IBC motion information as a TMVP candidate based on the coding mode type syntax element. For example, the apparatus, such as the at least one processor, of this example embodiment may be configured to determinewhether to use the IBC motion information as a TMVP candidate by rejecting IBC motion information for a collocated block that is coded with IBC combined modes and / or by rejecting IBC motion information for an IBC coded block with block vector information synthesized from inter-vectors or combined with other tools, such as IBC-TM (template matching), IBC-LIC (local illumination compensation), RR (reconstruction reordered)-IBC, IBC-CIIP (combined IBC and intra prediction) or the like. In this example embodiment, in an instance in which the IBC motion information is not for a collocated block that is coded with IBC combined modes and is not an IBC coded block with block vector information synthesized from inter-vectors or combined with other tools, the apparatus, such as the at least one processor, may be configured to determine to use the IBC motion information as a TMVP candidate.

[0069] In an example embodiment, the apparatus 60 may also include means, such as the at least one processor 62 or the like, for modifying the IBC motion information regarding the IBC block vector to reflect an IBC coding mode type of the collocated block. For example, the IBC motion information for the IBC block vector may be modified to include displacement vector rescaling to reflect integer or fractional pel accuracy of the collocated IBC block.

[0070] Figure 9 illustrates an example flowchart 90 of a method to which one or more examples disclosed herein may be applied. The method may be computer-implemented. The method may be performed by an apparatus, such as the apparatus 60 of Figure 6, as embodied by or forming a part of a decoder.

[0071] As described above with respect to an apparatus 60 embodied as an encoder and as shown in block 92 of Figure 9, an apparatus of an example embodiment may include means, such as the at least one processor 62 or the like, for identifying a plurality of check positions proximate a collocated block in a collocated picture for a current block in a current picture. The plurality of check positions may be identified in various different manners including, for example, the manner described above with respect to Figure 3.

[0072] The apparatus 60 of an example embodiment may also include means, such as the at least one processor 62 or the like, for determining, for a respective check position, whether the respective check position is coded in an intra block copy (IBC) coding mode. See block 94 of Figure 9. In an instance in which the respective check position is coded in the IBC coding mode, the apparatus may also include means, such as the at least one processor or the like, for considering IBC motion information associated with the respective check position to be apotential TMVP candidate. See block 96. The process of determining whether a respective check position is coded in an IBC coding mode and, if so, considering the IBC motion information associated with a respective check position to be a potential TMVP candidate as described above in relation to blocks 94 and 96 may be repeated for a plurality of check positions, for example, for each of the check positions that were identified.

[0073] As shown in block 98 of Figure 9, the apparatus 60 of an example embodiment may also include means, such as the at least one processor 62 or the like, for selecting one or more of the potential TMVP candidates as final TMVP candidates for inclusion in a merge candidate list. In this regard, the apparatus may include means, such as the at least one processor or the like, for sorting the potential TMVP candidates based on a predefined criteria and means, such as the at least one processor or the like, for selecting one or more of the potential TMVP candidates as final TMVP candidates for inclusion in the merge candidate list. The potential TMVP candidates may be sorted and one or more of the TMVP candidates may thereafter be selected as final TMVP candidates for inclusion in the merge candidate list in various manners including based on template costs as described above in relation to Figure 8.

[0074] Referring to block 100, the apparatus 60 as embodied by a decoder or forming part of a decoder may include means, such as the at least one processor 62, the communication interface 66 or the like, for receiving an indication of the selected merge candidate, such as a selected TMVP candidate, to be utilized for a current block of a current picture, such as by serving as a motion vector predictor for the current picture. In an instance in which the merge candidate is a selected IBC-based TMVP candidate, the TMVP candidate provides IBC motion information associated with a respective check position that is coded in an IBC coding mode. The respective check position is one of a plurality of check positions proximate a collocated block and a collocated picture for the current block of the current picture. The collocated block is located in the same relative position, such as the same relative geometric position, within the collocated picture as the current block is located within the current picture. As shown in block 102 Figure 9, the apparatus also includes means, such as the at least one processor or the like, for decoding the current block of the current picture based at least partially upon the selected merge candidate, such as a selected TMVP candidate.

[0075] The IBC motion information may include an IBC block vector and a reference index of the collocated picture. In an example embodiment, the IBC block vector may serve as themotion vector for the current block. In an example embodiment, a collocated picture index of the collocated picture can serve as the reference picture for the current block. In another embodiment, the reference picture that is closest temporally, such as in terms of picture order count, to the current picture in a reference picture list may serve as the reference picture for the current block. In a further example embodiment in which the IBC block vector also serves as the motion vector, the apparatus 60, such as the at least one processor 62, the communication interface 66 or the like, is configured to receive the indication of the selected TMVP candidate by receiving an indication of a reference picture selected from a reference picture list for the current block. In an example embodiment, the IBC motion information regarding the IBC block vector also reflects an IBC coding mode type of the collocated block. For example, the IBC motion information for the IBC block vector may also include or otherwise reflect displacement vector rescaling to reflect integer or fractional pel accuracy of the collocated IBC block.

[0076] As such, an apparatus 60, method and computer program product are provided in accordance with at least some embodiments of the present disclosure such that, for a current block in a current picture, intra-frame motion information at the possible check positions for TMVP candidates (shown, for example, by the first and second circles 32, 34 and the first and second triangles 33, 35 in Figure 3) around the collocated block 31 in the collocated picture are also considered as potential TMVP candidates. As such, the number of potential TMVP candidates may be increased, leading to the inclusion of additional types of merge candidates in a merge candidate list and resulting in improved encoding and decoding performance in at least some instances.

[0077] Figures 7 and 9 illustrate flowcharts depicting methods according to example embodiments of the present disclosure. It will be understood that each block of the flowcharts and combination of blocks in the flowcharts may be implemented by various means, such as hardware, firmware, processor, circuitry, and / or other communication devices associated with execution of software including one or more computer program instructions. For example, one or more of the procedures described above may be embodied by computer program instructions. In this regard, the computer program instructions which embody the procedures described above may be stored by a memory device of an apparatus employing an embodiment of the present disclosure and executed by a processor. As will be appreciated, any such computer program instructions may be loaded onto a computer or other programmable apparatus (for example,hardware) to produce a machine, such that the resulting computer or other programmable apparatus implements the functions specified in the flowchart blocks. These computer program instructions may also be stored in a computer-readable memory that may direct a computer or other programmable apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture the execution of which implements the function specified in the flowchart blocks. The computer program instructions may also be loaded onto a computer or other programmable apparatus to cause a series of operations to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions which execute on the computer or other programmable apparatus provide operations for implementing the functions specified in the flowchart blocks.

[0078] Accordingly, blocks of the flowcharts support combinations of means for performing the specified functions and combinations of operations for performing the specified functions for performing the specified functions. It will also be understood that one or more blocks of the flowcharts, and combinations of blocks in the flowcharts, can be implemented by special purpose hardware-based computer systems which perform the specified functions, or combinations of special purpose hardware and computer instructions.

[0079] Although the present disclosure has been described above with reference to an example according to the accompanying drawings, it is clear that the present disclosure is not restricted thereto but can be modified in several ways within the scope of the appended claims. Therefore, all words and expressions should be interpreted broadly and they are intended to illustrate, not to restrict, the embodiment. It will be obvious to a person skilled in the art that, as technology advances, the inventive concept can be implemented in various ways. Further, it is clear to a person skilled in the art that the described embodiments may, but are not required to, be combined with other embodiments in various ways.

[0080] Many modifications and other embodiments set forth herein will come to mind to one skilled in the art to which this disclosure pertains having the benefit of the teachings presented in the foregoing descriptions and the associated drawings. Therefore, it is to be understood that the disclosure is not to be limited to the specific embodiments disclosed and that modifications and other embodiments are intended to be included within the scope of the appended claims.

[0081] Moreover, although the foregoing descriptions and the associated drawings describe certain example embodiments in the context of certain example combinations of elements and / or functions, it should be appreciated that different combinations of elements and / or functions may be provided by alternative embodiments without departing from the scope of the appended claims. In this regard, for example, different combinations of elements and / or functions than those explicitly described above are also contemplated as may be set forth in some of the appended claims. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.

Claims

THAT WHICH IS CLAIMED:

1. An apparatus comprising at least one processor and at least one memory storing instructions that, when executed by the at least one processor, cause the apparatus to perform at least:identifying a plurality of check positions proximate a collocated block in a collocated picture for a current block in a current picture, wherein the collocated block is located in the same relative position within the collocated picture as the current block is located within the current picture;for a respective check position, determining whether the respective check position is coded in an intra block copy (IBC) coding mode;in an instance in which the respective check position is coded in the IBC coding mode, considering IBC motion information associated with the respective check position to be a potential temporal motion vector prediction (TMVP) candidate;selecting one or more potential TMVP candidates as one or more final TMVP candidates for inclusion in a merge candidate list;selecting a merge candidate from the merge candidate list; andsignaling an indication of a selected merge candidate to be utilized for the current block of the current picture.

2. An apparatus according to Claim 1, wherein the instructions, when executed by the at least one apparatus further cause the apparatus to perform:sorting potential TMVP candidates based on a predefined criteria; andresponsive to the sorting, selecting the one or more potential TMVP candidates as the one or more final TMVP candidates for inclusion in the merge candidate list.

3. An apparatus according to any one of Claims 1 or 2, wherein the selected merge candidate is a final TMVP candidate comprising the IBC motion information associated with the respective check position.- 25 -4. An apparatus according to any one of Claims 1 to 3, wherein the IBC motion information comprises an IBC block vector and a reference index of the collocated picture.

5. An apparatus according to Claim 4, wherein the IBC block vector serves as a motion vector and a collocated picture index of the collocated picture serves as a reference picture for the current block.

6. An apparatus according to Claim 4, wherein the IBC block vector serves as a motion vector and a reference picture that is closest temporally to the current picture in a reference picture list serves as a reference picture for the current block.

7. An apparatus according to Claim 4, wherein the IBC block vector serves as a motion vector, wherein the apparatus is further caused to select a reference picture from a reference picture list for the current block, and wherein the apparatus is caused to signal the indication of the selected merge candidate by signaling the reference picture from the reference picture list that was selected for the current block.

8. An apparatus according to any one of Claims 1 to 7, wherein the apparatus is further caused to determine whether to use the IBC motion information as a potential TMVP candidate based on a coding mode type syntax element.

9. An apparatus according to Claim 8, wherein the apparatus being caused to determine whether to use the IBC motion information as a potential TMVP candidate comprises rejecting IBC motion information for: (i) a collocated block that is coded with IBC combined modes, or (ii) an IBC coded block with block vector information synthesized from inter-vectors or combined with other tools.

10. An apparatus according to any one of Claims 4 to 9, wherein the apparatus is further caused to modify the IBC motion information regarding the IBC block vector to reflect an IBC coding mode type of the collocated block.

11. A method comprising:identifying a plurality of check positions proximate a collocated block in a collocated picture for a current block in a current picture, wherein the collocated block is located in the same relative position within the collocated picture as the current block is located within the current picture;for a respective check position, determining whether the respective check position is coded in an intra block copy (IBC) coding mode;in an instance in which the respective check position is coded in the IBC coding mode, considering IBC motion information associated with the respective check position to be a potential temporal motion vector prediction (TMVP) candidate;selecting one or more potential TMVP candidates as one or more final TMVP candidates for inclusion in a merge candidate list;selecting a merge candidate from the merge candidate list; andsignaling an indication of a selected merge candidate to be utilized for the current block of the current picture.

12. A method according to Claim 11, further comprising:sorting potential TMVP candidates based on a predefined criteria; andresponsive to the sorting, selecting the one or more potential TMVP candidates as the one or more final TMVP candidates for inclusion in the merge candidate list.

13. A method according to any one of Claims 11 or 12, wherein the selected merge candidate is a final TMVP candidate comprising the IBC motion information associated with the respective check position.

14. A method according to any one of Claims 11 to 13, wherein the IBC motion information comprises an IBC block vector and a reference index of the collocated picture.

15. A method according to Claim 14, wherein the IBC block vector serves as a motion vector and a collocated picture index of the collocated picture serves as a reference picture for the current block.

16. A method according to Claim 14, wherein the IBC block vector serves as a motion vector and a reference picture that is closest temporally to the current picture in a reference picture list serves as a reference picture for the current block.

17. A method according to Claim 14, wherein the IBC block vector serves as a motion vector, wherein the method further comprises selecting a reference picture from a reference picture list for the current block, and wherein signaling the indication of the selected merge candidate comprises signaling the reference picture from the reference picture list that was selected for the current block.

18. A method according to any one of Claims 11 to 17, further comprising determining whether to use the IBC motion information as a potential TMVP candidate based on a coding mode type syntax element.

19. A method according to Claim 18, wherein determining whether to use the IBC motion information as a potential TMVP candidate comprises rejecting IBC motion information for: (i) a collocated block that is coded with IBC combined modes, or (ii) an IBC coded block with block vector information synthesized from inter-vectors or combined with other tools.

20. A method according to any one of Claims 14 to 19, further comprising modifying the IBC motion information regarding the IBC block vector to reflect an IBC coding mode type of the collocated block.- 28 -21. An apparatus comprising at least one processor and at least one memory storing instructions that, when executed by the at least one processor, cause the apparatus to perform at least:receiving an indication of a selected merge candidate to be utilized for a current block of a current picture, wherein the selected merge candidate comprises a selected temporal motion vector prediction (TMVP) candidate included in a merge candidate list that provides intra block copy (IBC) motion information associated with a respective check position that is coded in an IBC coding mode, and wherein the respective check position is one of a plurality of check positions proximate a collocated block in a collocated picture, wherein the collocated block is located in the same relative position within the collocated picture as the current block is located within the current picture; anddecoding the current block of the current picture based at least partially upon the selected TMVP candidate.

22. An apparatus according to Claim 21, wherein the instructions, when executed by the at least one processor, further cause the apparatus to perform:identifying the plurality of check positions proximate the collocated block in the collocated picture for the current block in the current picture, wherein the collocated block is located in the same relative position within the collocated picture as the current block is located within the current picture;for a respective check position, determining whether the respective check position is coded in the IBC coding mode;in an instance in which the respective check position is coded in the IBC coding mode, considering the IBC motion information associated with the respective check position to be a potential temporal motion vector prediction (TMVP) candidate; andselecting one or more potential TMVP candidates as one or more final TMVP candidates for inclusion in the merge candidate list.- 29 -23. An apparatus according to Claim 22, wherein the instructions, when executed by the at least one apparatus further cause the apparatus to perform:sorting potential TMVP candidates based on a predefined criteria; andresponsive to the sorting, selecting the one or more potential TMVP candidates as the one or more final TMVP candidates for inclusion in the merge candidate list.

24. An apparatus according to any one of Claims 21 to 23, wherein the selected merge candidate is a final TMVP candidate comprising the IBC motion information associated with the respective check position.

25. An apparatus according to any one of Claims 21 to 24, wherein the IBC motion information comprises an IBC block vector and a reference index of the collocated picture.

26. An apparatus according to Claim 25, wherein the IBC block vector serves as a motion vector and a collocated picture index of the collocated picture serves as a reference picture for the current block.

27. An apparatus according to Claim 25, wherein the IBC block vector serves as a motion vector and a reference picture that is closest temporally to the current picture in a reference picture list serves as a reference picture for the current block.

28. An apparatus according to Claim 25, wherein the IBC block vector serves as a motion vector, and wherein the apparatus being caused to receive the indication of the selected TMVP candidate comprises receiving an indication of a reference picture selected from a reference picture list for the current block.

29. An apparatus according to any one of Claims 25 to 28, wherein the IBC motion information regarding the IBC block vector reflects an IBC coding mode type of the collocated block.- 30 -30. A method comprising:receiving an indication of a selected merge candidate to be utilized for a current block of a current picture, wherein the selected merge candidate comprises a selected temporal motion vector prediction (TMVP) candidate included in a merge candidate list that provides intra block copy (IBC) motion information associated with a respective check position that is coded in an IBC coding mode, and wherein the respective check position is one of a plurality of check positions proximate a collocated block in a collocated picture, wherein the collocated block is located in the same relative position within the collocated picture as the current block is located within the current picture; anddecoding the current block of the current picture based at least partially upon the selected TMVP candidate.

31. A method according to Claim 30, further comprising:identifying the plurality of check positions proximate the collocated block in the collocated picture for the current block in the current picture, wherein the collocated block is located in the same relative position within the collocated picture as the current block is located within the current picture;for a respective check position, determining whether the respective check position is coded in the IBC coding mode;in an instance in which the respective check position is coded in the IBC coding mode, considering the IBC motion information associated with the respective check position to be a potential temporal motion vector prediction (TMVP) candidate; andselecting one or more potential TMVP candidates as one or more final TMVP candidates for inclusion in the merge candidate list.

32. A method according to Claim 22, further comprising:sorting potential TMVP candidates based on a predefined criteria; andresponsive to the sorting, selecting the one or more potential TMVP candidates as the one or more final TMVP candidates for inclusion in the merge candidate list.

33. A method according to any one of Claims 30 to 32, wherein the selected merge candidate is a final TMVP candidate comprising the IBC motion information associated with the respective check position.

34. A method according to any one of Claims 30 to 33, wherein the IBC motion information comprises an IBC block vector and a reference index of the collocated picture.

35. A method according to Claim 34, wherein the IBC block vector serves as a motion vector and a collocated picture index of the collocated picture serves as a reference picture for the current block.

36. A method according to Claim 34, wherein the IBC block vector serves as a motion vector and a reference picture that is closest temporally to the current picture in a reference picture list serves as a reference picture for the current block.

37. A method according to Claim 34, wherein the IBC block vector serves as a motion vector, and wherein receiving the indication of the selected TMVP candidate comprises receiving an indication of a reference picture selected from a reference picture list for the current block.

38. A method according to any one of Claims 34 to 37, wherein the IBC motion information regarding the IBC block vector reflects an IBC coding mode type of the collocated block.