WO2020140221A1 - 候选mv列表构建方法和装置 - Google Patents

候选mv列表构建方法和装置 Download PDF

Info

Publication number
WO2020140221A1
WO2020140221A1 PCT/CN2019/070157 CN2019070157W WO2020140221A1 WO 2020140221 A1 WO2020140221 A1 WO 2020140221A1 CN 2019070157 W CN2019070157 W CN 2019070157W WO 2020140221 A1 WO2020140221 A1 WO 2020140221A1
Authority
WO
WIPO (PCT)
Prior art keywords
candidate
list
mvs
image block
current image
Prior art date
Application number
PCT/CN2019/070157
Other languages
English (en)
French (fr)
Inventor
孟学苇
郑萧桢
王苫社
马思伟
Original Assignee
北京大学
深圳市大疆创新科技有限公司
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 北京大学, 深圳市大疆创新科技有限公司 filed Critical 北京大学
Priority to CN202310664406.9A priority Critical patent/CN116634172A/zh
Priority to KR1020217024434A priority patent/KR20210104907A/ko
Priority to JP2021534798A priority patent/JP2022515725A/ja
Priority to CN201980005339.1A priority patent/CN111316646B/zh
Priority to CN202310665800.4A priority patent/CN116647694A/zh
Priority to EP19907819.7A priority patent/EP3908004A4/en
Priority to PCT/CN2019/070157 priority patent/WO2020140221A1/zh
Publication of WO2020140221A1 publication Critical patent/WO2020140221A1/zh
Priority to US17/366,794 priority patent/US20210337184A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • 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/109Selection of coding mode or of prediction mode among a plurality of temporal 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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • 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
    • 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/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/88Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving rearrangement of data among different coding units, e.g. shuffling, interleaving, scrambling or permutation of pixel data or permutation of transform coefficient data among different blocks

Definitions

  • Embodiments of the present application provide a method and apparatus for constructing a candidate MV list, which can reduce the hardware implementation complexity of a video encoding and decoding apparatus.
  • an embodiment of the present application provides a method for constructing a candidate MV list, including:
  • obtaining the first candidate MV list of the current image block in the first merge mode includes:
  • the first candidate MV list is constructed according to at least one candidate MV of the current image block, and the at least one candidate MV is obtained by a candidate MV acquisition method corresponding to the first merge mode.
  • the method further includes:
  • the updated second candidate MV list is used for encoding or decoding of the current image block.
  • acquiring at least one candidate MV of the current image block obtained by using at least one other candidate MV acquisition method includes:
  • Updating the second candidate MV list according to the at least one other candidate MV, and obtaining the updated second candidate MV list including:
  • the at least one third candidate MV update the second updated second candidate MV list to obtain the updated second candidate MV list.
  • Motion vector prediction based on historical information HMVP method to obtain candidate MV method, motion vector residual merge MMVD technology to obtain candidate MV method, based on pairwise average technology to obtain candidate MV method.
  • the second candidate MV acquisition method is a method for acquiring candidate MVs based on motion vector residual merge MMVD technology
  • the third candidate MV acquisition method is a method of acquiring candidate MVs based on a pairwise average technique.
  • the preset threshold is any value from 4 to 12.
  • the preset filling vector is a vector including all components of 0.
  • constructing the first candidate MV list according to at least one candidate MV of the current image block includes:
  • the first candidate MV list is included in the bidirectional MV group
  • the average of the forward MV and backward MV in the first bidirectional MV group after the MV group is added to the second candidate MV list;
  • an embodiment of the present application provides a candidate MV list construction device, including:
  • the reassembly module is used to obtain the first candidate MV list of the current image block when the inter prediction mode is the second merge mode, and if the first candidate MV list includes a bidirectional MV, perform the MV in the first candidate MV list Reorganization to obtain the second candidate MV list of the current image block in the second merge mode.
  • the acquisition module is specifically used to:
  • the first candidate MV list is constructed according to at least one candidate MV of the current image block, and the at least one candidate MV is obtained by a candidate MV acquisition method corresponding to the first merge mode.
  • the acquisition module is also used to:
  • the second candidate MV list includes M preset fill vectors, and the sum of the number of MVs included in the second candidate MV list and the M is the preset threshold;
  • the update module is specifically used for:
  • the second candidate MV list does not include M preset fill vectors, and the sum of the number of MVs included in the second candidate MV list and the M is the preset threshold.
  • the acquisition module is specifically used to:
  • the update module is specifically used for:
  • the at least one first candidate MV update the second candidate MV list to obtain an updated second candidate MV list.
  • the at least one second candidate MV update the first updated second candidate MV list to obtain the updated second candidate MV list.
  • the acquisition module is specifically used to:
  • the update module is specifically used for:
  • the at least one third candidate MV update the second updated second candidate MV list to obtain the updated second candidate MV list.
  • the first candidate MV acquisition method is a method of acquiring candidate MVs based on historical information-based motion vector prediction HMVP technology.
  • the second candidate MV acquisition method is a method for acquiring candidate MVs based on motion vector residual merge MMVD technology
  • the third candidate MV acquisition method is a method of acquiring candidate MVs based on a pairwise average technique.
  • the preset filling vector is a vector including all components of 0.
  • the reorganization module is specifically used for:
  • the order of the bidirectional MV groups in the first candidate MV list add the forward MVs in the bidirectional MV group to the second candidate MV list, and determine that the number of MVs in the second candidate MV table is smaller than the pre-MV Set a threshold;
  • the number of MVs in the second candidate MV table is less than the preset threshold, then for each bidirectional in the first candidate MV list MV group:
  • the first candidate MV list is included in the bidirectional MV group
  • the average of the forward MV and backward MV in the first bidirectional MV group after the MV group is added to the second candidate MV list;
  • the second candidate MV table is equal to the preset threshold, or the number of MVs in the second candidate MV table is less than the preset threshold and the first candidate MV list is in the bidirectional MV group. After that there is no bidirectional MV group, it is determined that the second candidate list after adding the average value of the forward MV and the backward MV in the bidirectional MV group to the second candidate MV list is the second candidate of the current image block List.
  • an embodiment of the present application provides a readable storage medium, including a program or an instruction.
  • the program or the instruction is run on a computer, the method described in any one of the first aspect is executed.
  • the memory is used to store computer programs
  • the processor is configured to call a computer program stored in the memory to implement the method of any one of the first aspect.
  • the inter prediction mode is the second merge mode
  • the first candidate MV list in the first merge mode is multiplexed, that is, it is not necessary to reconstruct a first candidate MV list in the second merge mode, which reduces the video encoding and decoding device.
  • the hardware complexity therefore, the hardware of the video codec device is relatively easy to implement.
  • FIG. 1 is a block diagram of an image processing system provided by an embodiment of this application.
  • FIG. 2 is a flowchart 1 of a method for constructing a candidate MV list provided by an embodiment of this application;
  • FIG. 3 is a schematic diagram of candidate blocks of image blocks provided by an embodiment of the present application.
  • 4A is a schematic diagram 1 of dividing an image block corresponding to a triangle merge mode provided by an embodiment of the present application;
  • FIG. 6 is a flowchart 3 of a method for constructing a candidate MV list provided by an embodiment of this application;
  • FIG. 8 is a flowchart 5 of a method for constructing a candidate MV list provided by an embodiment of this application;
  • FIG. 9 is a schematic structural diagram 1 of a candidate MV list construction device provided by an embodiment of the present application.
  • FIG. 10 is a second schematic structural diagram of a candidate MV list construction device provided by an embodiment of this application.
  • FIG. 11 is a schematic structural diagram of an electronic device provided by an embodiment of the present application.
  • Encoding a video stream, or a part of it, such as video frames or image blocks can use temporal and spatial similarity in the video stream to improve encoding performance.
  • the current image block of the video stream can be used to predict the motion information for the current image block based on the previously encoded blocks in the video stream, and calculate the difference between the measured block and the current image block (that is, the original block) (also known as Is the residual), thereby encoding the current image block based on the previously encoded block.
  • the original block also known as Is the residual
  • merge mode Merge, Skip
  • advanced motion vector prediction advanced motion vector prediction
  • Forward MV If the best matching block of image block A is image block B, and the frame where image block B is located is the historical frame of the frame where image block A is located, then the MV of image block B relative to image block A is image block A Is the forward MV of image block A.
  • Backward MV If the best matching block of image block A is image block B, and the frame where image block B is located is a future frame of the frame where image block A is located, then the MV of image block B relative to image block A is image block A MV, which is the backward MV of image block A.
  • Unidirectional MV MVs that do not appear in the above bidirectional MV group are unidirectional MVs; for example:
  • FIG. 1 is a block diagram of an image processing system provided by an embodiment of the present application.
  • image processing system generally refers to both an image encoder and an image decoder.
  • image processing may generally refer to image encoding or image decoding.
  • the image processing system includes an encoding device 10 and a decoding device 20.
  • the encoding device 10 is used for encoding a multi-frame image to obtain an encoded code stream.
  • the decoding device 20 is used to perform decoding processing on the coded stream after multi-frame image encoding, and restore the multi-frame image before encoding.
  • the encoding device 10 uses the encoder 120 to encode the multi-frame images to obtain the encoded code stream, which is output to the decoding device 20 via the output interface 140.
  • the decoding device 20 receives the coded stream of multi-frame image encoding through the input interface 240, and uses the decoder 220 to decode the coded stream of the multi-frame image encoding to restore the multi-frame image before encoding.
  • the encoding device 10 may output the encoded code stream through the output interface 140 and then transmit it to the decoding device 20 via the link 30.
  • the link 30 may include one or more media or devices capable of moving the encoded code stream of the multi-frame image from the encoding device 10 to the decoding device 20.
  • the one or more communication media may include wireless and/or wired communication media, such as a radio frequency (RF) spectrum or one or more physical transmission lines.
  • the one or more communication media may form part of a packet-based network, such as a local area network, a wide area network, or a global network (eg, the Internet).
  • the one or more communication media may include routers, switches, base stations, or other devices that facilitate communication from the encoding device 10 to the decoding device 20.
  • the encoder 120 and the decoder 220 may operate according to a video compression standard such as VVC or an extension thereof, and may conform to the VVC test model (HM). Alternatively, the encoder 120 and the decoder 220 may also operate according to other industry standards, such as the ITU-T H.264, H.265 standards, or an extension of such standards.
  • VVC video compression standard
  • HM VVC test model
  • the encoder 120 and the decoder 220 may also operate according to other industry standards, such as the ITU-T H.264, H.265 standards, or an extension of such standards.
  • the encoding device 10 may be any of the following: terminal equipment and server.
  • the decoding device 20 may be any of the following: a terminal device or a server.
  • the encoding device uses the previously-encoded reconstructed frame as a reference frame to predict the current frame (the frame currently being encoded) through motion estimation and motion compensation, thereby removing the temporal redundancy information of the video .
  • CTU Coding Tree Unit
  • Each CTU can be further divided into square or rectangular coding units (Coding Units, CU).
  • CU Coding Units
  • the relative displacement between the current block and the similar block is the motion vector (MV).
  • the process of motion estimation is the process of obtaining the MV after searching and comparing the current coding block of the current frame in the reference frame.
  • Motion compensation is the process of using MV and reference frames to obtain a predicted frame.
  • the predicted frame obtained by this process may be different from the original current frame. Therefore, the difference between the predicted frame and the current frame needs to be transmitted after transformation, quantization, etc.
  • To the decoding device in addition to this, it is necessary to transfer the MV information to the decoding device. In this way, the decoder performs inverse quantization and inverse transformation to obtain the difference between the predicted frame and the current frame, and then the current frame can be reconstructed according to the difference between the MV, reference frame, predicted frame, and current frame.
  • Step S201 When the inter prediction mode is the first merge mode, construct a first candidate MV list of the current image block in the first merge mode.
  • the first merge mode in this embodiment is an ordinary merge mode, and the ordinary merge mode is a merge mode similar to the merge mode in the HEVC standard.
  • the construction of the first candidate MV list of the current image block in the first merge mode is described below. It can be understood that the MVs in the first candidate MV list are all candidate MVs of the current image block.
  • the specific acquisition method is a method in the prior art, and details are not repeated in this embodiment.
  • the preset order of acquiring the spatial MV is as follows: a first image block adjacent to the first corner of the current image block and located on the first side of the current image block, and adjacent to the second corner of the current image block and The second image block located above the current image block, the third image block adjacent to the second corner of the current image block and located above the current image block, and the current image block adjacent to the first corner of the current image block
  • the first corner and the second corner are diagonal. That is, the order of acquiring the spatial domain MV of each spatial domain candidate block is the first image block, the second image block, the third image block, the fourth image block, and the fifth image block.
  • image blocks 1, 2, 3, 4, and 5 are five spatial domain candidate blocks of the current image block 41
  • image blocks 6 and 7 are two temporal domain candidate blocks of the current image block 41.
  • the first image block may be the image block labeled 1 in FIG. 3
  • the second image block may be the image block labeled 2 in FIG. 4
  • the third image block may be the image block labeled 3 in FIG. 4
  • the fourth image block may be It is the image block labeled 4 in FIG. 4
  • the fifth image block may be the image block labeled 5 in FIG. 4.
  • the specific acquisition method is a method in the prior art, and details are not repeated in this embodiment.
  • the preset time domain MV acquisition sequence is as follows: a sixth image block adjacent to the fourth corner of the current image block and located on the second side of the current image block, and the co-located image block of the current image block adjacent to the encoded image.
  • the fourth corner and the third corner are diagonal. That is, the order of acquiring the time-domain MVs of each time-domain candidate block is the sixth image block and the co-located image blocks of the current image block in the adjacent encoded image.
  • Step S202 When the inter prediction mode is the second merge mode, obtain a first candidate MV list of the current image block, and if the first candidate MV list includes a bidirectional MV, reorganize the MV in the first candidate MV list, The second candidate MV list of the current image block in the second merge mode is obtained.
  • the current image block in the triangle merge mode, can be divided by the diagonal line from the upper left corner of the current image block to the lower right corner, or from the upper right corner of the current image block to the lower left The diagonal of the corner is divided to obtain two prediction units (PUs).
  • PUs prediction units
  • step S202 in the second merge mode, directly obtain the first candidate MV list in the first merge mode, that is, multiplex the first candidate MV list in the first merge mode, and determine whether the first candidate MV list includes bidirectional MV.
  • the first candidate MV list may be determined to be the second candidate MV list of the current image block .
  • the bidirectional MV group in the first candidate MV list add the forward MVs in the bidirectional MV group to the candidate MV list, and determine the current number of MVs in the second candidate MV list and the second preset Threshold relationship;
  • the backward MV in the first bidirectional MV group after the bidirectional MV group Add to the current second candidate MV list.
  • the average value of the forward MV and the backward MV in the bidirectional MV group is added to the candidate MV list, and the current MV in the second candidate MV list is determined.
  • the MV of the first bidirectional MV group after the bidirectional prediction MV of the group The average value of the middle forward MV and backward MV is added to the current second candidate MV list.
  • the second candidate MV list finally obtained is the second candidate MV list obtained in 1, or the second candidate MV list obtained in 31, or the second candidate MV list obtained in 331, or the second obtained in 3331.
  • the second preset threshold may be any value from 4 to 12, for example, the second preset threshold is 5 or 6 or 7 or 8 or 9 or 10 or 11.
  • the first candidate MV list includes: MV1, (MV2, MV3) and MV4, the second preset threshold is 6, the preset fill vector is 0, then (MV2, MV3) is a bidirectional MV group, MV2 Is the forward MV of the candidate block corresponding to (MV2, MV3), and MV3 is the backward MV of the candidate block corresponding to (MV2, MV3).
  • the MV information in the second candidate MV list includes: (MV1, MV4, MV2, MV3, (MV2+MV3)/2, 0).
  • the specific implementation of the above "recombining the MVs in the first candidate MV list to obtain the second candidate MV list in which the included MVs are all unidirectional MVs" includes selecting the first candidate in the MV list
  • the method of processing each MV into a unidirectional MV (1) For MVs that are unidirectional MVs, no processing is required; (2) For MVs in a bidirectional MV group, extract the forward MVs of the bidirectional MV group in turn, and then The backward MVs of the two-way MV group are sequentially extracted, and finally the average values of the forward MV and the backward MV in the two-way MV group are sequentially obtained to obtain the one-way MV.
  • FIG. 5 is a flowchart 2 of a method for constructing a candidate MV list provided by an embodiment of this application; referring to FIG. 5, the method of this embodiment includes:
  • step S201 in the embodiment shown in FIG. 2.
  • Step S302 When the inter prediction mode is the second merge mode, obtain a first candidate MV list of the current image block, and if the first candidate MV list includes a bidirectional MV, reorganize the MVs in the first candidate MV list, The second candidate MV list of the current image block in the second merge mode is obtained.
  • step S202 in the embodiment shown in FIG. 2.
  • Step S304 Acquire at least one other candidate MV of the current image block obtained by using at least one other candidate MV acquisition method
  • the method for acquiring other candidate MVs is different from the method for acquiring candidate MVs in the embodiment shown in FIG. 2, that is, the method for acquiring candidate MVs in the first candidate MV list in the embodiment shown in FIG. 2 is not the same .
  • At least one other method for obtaining candidate MVs may be at least one of the following: a method for obtaining candidate MVs based on historical information-based motion vector prediction (history-based motion vector prediction (HMVP) technology, based on motion vector residuals A method of obtaining candidate MVs by using merge (with vector prediction) (MMVD) technology, and a method of obtaining candidate MVs based on pairwise average technology.
  • HMVP history-based motion vector prediction
  • MMVD with vector prediction
  • the method for obtaining the candidate MV based on the HMVP technology the method for obtaining the candidate MV based on the MMVD technology, and the method for obtaining the candidate MV based on the pairwise average technology are all methods in the prior art, which will not be repeated in this embodiment.
  • Obtaining at least one other candidate MV of the current image block obtained by using at least one other candidate MV acquisition method includes the following but not limited to the following situations:
  • the first case acquiring at least one first candidate MV of the current image block obtained by using the first candidate MV acquisition method.
  • At least one other candidate MV includes at least one first candidate MV.
  • the first candidate MV acquisition method may be a method for acquiring the candidate MV based on the HMVP technology.
  • At least one other candidate MV includes at least one first candidate MV and at least one second candidate MV.
  • the first candidate MV acquisition method may be a method based on HMVP technology to obtain candidate MV
  • the second candidate MV acquisition method may be based on MMVD technology to obtain candidate MV
  • At least one other candidate MV includes at least one first candidate MV, at least one second candidate MV, and at least one third candidate MV.
  • the first candidate MV acquisition method may be a method based on HMVP technology to obtain candidate MV
  • the third candidate MV acquisition method may be based on pairwise average technology to obtain candidate MV method
  • the second candidate MV acquisition method may be based on MMVD technology Method for obtaining candidate MV.
  • Step S305 Update the second candidate MV list of the current image block according to at least one other candidate MV, and obtain an updated second candidate MV list.
  • the updated second candidate MV list includes the number of MVs that is less than or equal to the preset Threshold.
  • the updated second candidate MV list is used for encoding or decoding of the current image block.
  • a1 can be executed first and then a2 can be executed, and a1 and a2 can also be executed alternately. If a1 and a2 are executed alternately, the method of “update the second candidate MV list of the current image block according to at least one other candidate MV to obtain an updated second candidate MV list” is the same as the first in the embodiment shown in FIG. 2 The process of adding at least one candidate MV of the current picture in the MV table to the candidate MV of the current picture when regrouping.
  • the second candidate MV list of the current image block obtained in step S302 includes M preset fill vectors, and the sum of the number of MVs included in the second candidate MV list and M is a preset threshold, at this time, at least one other
  • the at least one unidirectional MV determined by the candidate MV is added to the second candidate MV list of the current image block to obtain an updated second candidate MV list, including: replacing N current unidirectional MVs in the at least one unidirectional MV with the current image block N preset filling vectors in the second candidate MV list of the second candidate MV list to obtain the updated second candidate MV list, N ⁇ M.
  • the second candidate MV list of the current image block obtained in step S302 does not include M preset fill vectors and the number of MVs in the updated second candidate MV list is less than the preset threshold, at this time, at least one other candidate
  • the at least one unidirectional MV determined by the MV is added to the second candidate MV list of the current image block to obtain the updated second candidate MV list, including:
  • the number of MVs in the second candidate MV list is less than a preset threshold
  • At least one other candidate MV includes at least one first candidate MV:
  • c1 and c2 may be performed alternately.
  • c1 and c2 refer to at least one candidate MV of the current image in the first MV table in the embodiment shown in FIG.
  • Candidate MV process refer to at least one candidate MV of the current image in the first MV table in the embodiment shown in FIG.
  • step S302 If the second candidate MV list of the current image block in step S302 does not include M preset fill vectors, and each first unidirectional MV is added to the second candidate MV list of the current image block, the obtained first If the number of MVs in an updated second candidate MV list is less than a preset threshold, add at least one preset fill vector to the first updated second candidate MV list to obtain the number of included MVs and the preset fill vector The sum of the numbers is the updated second candidate MV list with the preset threshold.
  • the second candidate MV list of the current image block in step S302 includes M preset fill vectors
  • at least part of the at least one first unidirectional MV is added to the second candidate MV list of the current image block to obtain an update List of second candidate MVs, including: replacing N preset MVs in the second candidate MV list of the current image block with N unidirectional MVs in at least one first unidirectional MV to obtain an updated second Candidate MV list, N ⁇ M.
  • At least one other candidate MV includes at least one first candidate MV and at least one second candidate MV:
  • each first unidirectional MV will be added to the second candidate MV list of the current image block in step S302, and each first unidirectional MV will be added to step S301 After the second candidate MV list of the current image block is obtained, the number of MVs in the first updated second candidate MV list obtained is less than a preset threshold.
  • each first unidirectional MV is added to the second candidate MV of the current image block List to obtain the updated second candidate MV list, including: replacing the H preset filling vectors in the second candidate MV list of the current image block with H first unidirectional MVs to obtain the first updated second candidate MV list, H ⁇ M.
  • At least one second candidate MV determine at least one second unidirectional MV
  • step S302 If the second candidate MV list of the current image block in step S302 does not include M preset fill vectors, and each second unidirectional MV is added to the second candidate MV list of the current image block, the obtained first The number of MVs in the second updated second candidate MV list is less than the preset threshold, then at least one preset fill vector is added to the second updated second candidate MV list to obtain the number of included MVs and the preset fill vector The sum of the numbers is the updated second candidate MV list with the preset threshold.
  • the second candidate MV list of the current image block in step S302 includes M preset fill vectors, at least part of at least one second unidirectional MV is added to the first updated second candidate MV list to obtain
  • each first unidirectional MV will be added to the second candidate MV list of the current image block, and each first unidirectional MV will be added to the second candidate of the current image block After being in the MV list, the number of MVs in the obtained second updated second candidate MV list is less than a preset threshold.
  • each first unidirectional MV will be added to the second candidate MV list of the current image block, and each first unidirectional MV will be added to the second candidate of the current image block After being in the MV list, the number of MVs in the obtained second updated second candidate MV list is less than a preset threshold.
  • each second unidirectional MV is added to the second candidate MV of the current image block List to obtain the updated second candidate MV list, including: replacing S second unidirectional MVs with the S preset filling vectors in the second candidate MV list of the current image block, to obtain the second updated second candidate MV list, S ⁇ M.
  • e7 and e8 may be performed alternately.
  • e7 and e8 refer to the embodiment shown in FIG. 2 and add to the current image when recombining at least one candidate MV of the current image in the first MV table. The process of candidate MV.
  • the updated MV list finally obtained may also include the candidate MV obtained by the fourth candidate MV acquisition method, the candidate MV obtained by the fifth candidate MV acquisition method, ..., obtained by the Jth candidate MV acquisition method Candidate MV.
  • the value of J is not limited in this embodiment.
  • the method of this embodiment may also be used to update the first candidate MV list first, that is, to enrich the first candidate MV list, at this time the current image block
  • the MVs included in the second candidate MV table may be based on the MV recombined second candidate MV table obtained by the partial candidate MV technology in the first candidate MV list, or may be obtained based on all candidate MV technologies in the second candidate MV list After the reorganization of the MV, the second candidate MV table is obtained.
  • the second candidate MV list constructed for the image block includes at least two candidate MV acquisition methods to obtain the MV, which enriches the candidate MV in the second candidate MV list used for encoding or decoding in the merge mode, minus
  • the gap between the image block obtained after decoding the original image block after decoding and the original image block is reduced, that is, the feature loss rate of the image block in the encoding process is reduced.
  • FIG. 6 is a flowchart 3 of a method for constructing a candidate MV list provided by an embodiment of the present application.
  • the number of time-domain candidate blocks used to obtain the candidate MV is not limited, and the use of The number of spatial candidate blocks for obtaining candidate MVs.
  • the method of this embodiment includes:
  • the preset order of acquiring the spatial MV is as follows: a first image block adjacent to the first corner of the current image block and located on the first side of the current image block, and adjacent to the second corner of the current image block and The second image block located above the current image block, the third image block adjacent to the second corner of the current image block and located above the current image block, and the current image block adjacent to the first corner of the current image block
  • the first corner and the second corner are diagonal. That is, the order of acquiring the spatial domain MV of each spatial domain candidate block is the first image block, the second image block, the third image block, the fourth image block, and the fifth image block.
  • Step S402 After acquiring the spatial domain MVs of the k spatial candidate blocks ranked in the top k, determine whether the spatial domain MVs of the k spatial candidate blocks ranked in the top k can be obtained; the total number of spatial candidate blocks of the current image block For K, 1 ⁇ k ⁇ K.
  • k may be 4, and K may be 5.
  • step S403 to step S404 are executed:
  • Step S403 Add the spatial MVs of the k spatial candidate blocks ranked in the top k to the pre-selected MV list.
  • the order of the spatial domains MV of the k spatial domain candidate blocks ranked in the top k in the pre-selected MV list is the same as the order of acquiring the spatial domains MV of the k spatial domain candidate blocks.
  • Step S405 Add the acquired airspace MVs to the pre-selected MV list.
  • the spatial MV of the spatial candidate block is acquired first, and then the temporal MV of the temporal candidate block is acquired.
  • the preset time domain MV acquisition sequence is as follows: the sixth image block adjacent to the fourth corner of the current image block and located on the second side of the current image block, and the co-located image block of the current image block adjacent to the encoded image.
  • the fourth corner and the third corner are diagonal. That is, the order of acquiring the time-domain MVs of each time-domain candidate block is the sixth image block and the co-located image blocks of the current image block in the adjacent encoded image.
  • the sixth image block may be the image block labeled 6 in FIG. 3, and the co-located image block of the current image block adjacent to the encoded image may be the image block labeled 7 in FIG.
  • the time domain MV of at least one time domain candidate block cannot be obtained.
  • the time domain MV of the time domain candidate block of the current image block may not be obtained.
  • Step S406 Add the acquired time-domain MVs to the pre-selected MV list to obtain a new pre-selected MV list.
  • the time domain MV of the time domain candidate block of the current image block is not obtained, the time domain MV does not exist in the new preselected MV list, and the new preselected MV list is the preselected MV list obtained in step S403 or step S405.
  • This step refers to the process of reassembling at least one candidate MV of the current image in the first MV table in the embodiment shown in FIG. 2 to obtain the candidate MV of the current image, which will not be repeated in this embodiment.
  • the number of spatial candidate blocks for acquiring candidate MVs is limited, which simplifies the order of constructing the candidate list of the current image block.
  • FIG. 7 is a flowchart 4 of a method for constructing a candidate MV list according to an embodiment of the present application.
  • the number of time-domain candidate blocks used to obtain the candidate MV is limited, and is not limited to Obtain the number of candidate space blocks of the candidate MV.
  • the method of this embodiment includes:
  • Step S501 Acquire the spatial domain MVs of the K spatial domain candidate blocks of the current image block according to the preset spatial domain MV acquisition order; the total number of spatial domain candidate blocks of the current image block is K.
  • Step S502 Add the acquired airspace MVs to the pre-selected MV list.
  • Step S504 After acquiring the spatial domain MVs of the f time-domain candidate blocks sorted in the top f, determine whether the MVs of the f time-domain candidate blocks in the top f acquisition order can be obtained; the time domain candidates of the current image block The total number of blocks is F, 1 ⁇ f ⁇ F.
  • f may be 1, and F may be 2.
  • step S505 is executed:
  • Step S505 Add time domain MVs of the f time domain candidate blocks ranked in the top f to the pre-selected MV list to obtain a new pre-selected MV list.
  • time domain MVs of the f time domain candidate blocks ranked in the top f are added to the pre-selected MV list obtained in step S502 to obtain a new pre-selected MV list.
  • step S506 to step S507 are executed:
  • Step S506 Continue to acquire the time domain MVs of the time domain candidate blocks sorted after the fth according to the preset time domain MV acquisition order until the time domain MVs of the f time domain candidate blocks or the Fth time domain candidate can be acquired The total number of MVs of the block has been obtained and the time-domain candidate blocks that can obtain the MV are less than or equal to f.
  • the MV of the co-located image block of the current image block adjacent to the encoded image is continuously obtained.
  • Step S507 Add the acquired time-domain MVs to the pre-selected MV list to obtain a new pre-selected MV list.
  • the time-domain MVs of the f time-domain candidate blocks in the f-th order are added to the pre-selected MV list obtained in step S502 to obtain a new pre-selected MV list.
  • Step S508 Reorganize the MVs in the new pre-selected MV list to obtain a candidate MV list in which the included MVs are all unidirectional MVs.
  • This step refers to the process of reassembling at least one candidate MV of the current image in the first MV table in the embodiment shown in FIG. 2 to obtain the candidate MV of the current image, which will not be repeated in this embodiment.
  • the number of time-domain candidate blocks used to obtain candidate MVs is limited, which simplifies the order of constructing the candidate list of current image blocks.
  • FIG. 8 is a flowchart 5 of a method for constructing a candidate MV list provided by an embodiment of the present application.
  • the number of time-domain candidate blocks used to obtain the candidate MV is limited and the use is limited.
  • Step S601 Acquire the spatial domain MV of the spatial domain candidate block of the current image block according to the preset spatial domain MV acquisition order.
  • step S603 is executed;
  • step S603 the spatial MVs of the k spatial candidate blocks ranked in the top k are added to the pre-selected MV list.
  • step S604 to step S605 are executed;
  • Step S605 Add the acquired airspace MVs to the pre-selected MV list.
  • Step S606 Acquire the time domain MV of the time domain candidate block of the current image block according to the preset time domain MV acquisition order.
  • step S608 to step S609 are executed:
  • Step S608 Add the time domain MVs of the f time domain candidate blocks in the top f to the pre-selected MV list to obtain a new pre-selected list;
  • Step S609 Continue to acquire the MVs of the time-domain candidate blocks sorted after the fth in the preset time-domain MV acquisition order until the time-domain MVs of the f-time-candidate block or the Fth time-domain candidate block can be acquired After the MV has been acquired and the total number of time-domain candidate blocks capable of acquiring the MV is less than or equal to f.
  • the time-domain MV of the time-domain candidate block in the f-order order is added to step S603 or step S605 to obtain the pre-selected MV list, and a new pre-selected MV list is obtained.
  • steps S601 to S611 in this implementation refer to the embodiments shown in FIG. 6 and FIG. 8, and details are not described herein again.
  • the number of spatial domain candidate blocks for acquiring candidate MVs is limited, and the number of temporal domain candidate blocks for acquiring candidate MVs is limited, which simplifies the order of constructing the candidate list of the current image block.
  • FIG. 9 is a schematic structural diagram 1 of an apparatus for constructing a candidate MV list provided by an embodiment of the present application.
  • the apparatus of this embodiment includes: an acquisition module 61 and a reorganization module 62.
  • the obtaining module 61 obtains the first candidate MV list of the current image block in the first combining mode when the inter prediction mode is the first combining mode;
  • the obtaining module 61 is specifically used to:
  • the first candidate MV list is constructed according to at least one candidate MV of the current image block, and the at least one candidate MV is obtained by a candidate MV acquisition method corresponding to the first merge mode.
  • FIG. 10 is a second schematic structural diagram of the apparatus for constructing a candidate MV list provided by an embodiment of the present application.
  • the apparatus of this embodiment includes: an update module 63.
  • the update module 63 is specifically configured to: determine at least one unidirectional MV based on the at least one other candidate MV;
  • the second candidate MV list does not include M preset fill vectors, and the sum of the number of MVs included in the second candidate MV list and the M is the preset threshold.
  • the sum of the number of vectors is the updated second candidate MV list of the preset threshold.
  • the obtaining module 61 is specifically used to:
  • the update module 63 is specifically used for:
  • the at least one first candidate MV update the second candidate MV list to obtain an updated second candidate MV list.
  • the obtaining module 61 is specifically used to:
  • the update module 63 is specifically used for:
  • the at least one second candidate MV update the first updated second candidate MV list to obtain the updated second candidate MV list.
  • the obtaining module 61 is specifically used to:
  • the update module 63 is specifically used for:
  • the at least one third candidate MV update the second updated second candidate MV list to obtain the updated second candidate MV list.
  • Motion vector prediction based on historical information HMVP technology to obtain candidate MV method, motion vector residual merge MMVD technology to obtain candidate MV method, based on pairwise average technology to obtain candidate MV method.
  • the first candidate MV acquisition method is a method of acquiring candidate MVs based on historical information-based motion vector prediction HMVP technology.
  • the third candidate MV acquisition method is a method of acquiring candidate MVs based on a pairwise average technique.
  • the second candidate MV acquisition method is a method for acquiring candidate MVs based on motion vector residual merge MMVD technology.
  • the preset threshold is any value from 4 to 12.
  • the preset filling vector is a vector including all components of 0.
  • the acquisition module is specifically used to:
  • the reorganization module is specifically used for:
  • the order of the bidirectional MV groups in the first candidate MV list add the forward MVs in the bidirectional MV group to the second candidate MV list, and determine that the number of MVs in the second candidate MV table is smaller than the pre-MV Set a threshold;
  • the order of the bidirectional MV groups in the first candidate MV list add the backward MVs in the bidirectional MV group to the second candidate MV list, and determine that the number of MVs in the second candidate MV table is smaller than the pre-MV Set a threshold;
  • the first candidate MV list is included in the bidirectional MV group
  • the average of the forward MV and backward MV in the first bidirectional MV group after the MV group is added to the second candidate MV list;
  • the second candidate MV table is equal to the preset threshold, or the number of MVs in the second candidate MV table is less than the preset threshold and the first candidate MV list is in the bidirectional MV group. After that there is no bidirectional MV group, it is determined that the second candidate list after adding the average value of the forward MV and the backward MV in the bidirectional MV group to the second candidate MV list is the second candidate of the current image block List.
  • the device of this embodiment may be used to execute the technical solutions of the above method embodiments, and its implementation principles and technical effects are similar, and are not repeated here.
  • FIG. 11 is a schematic structural diagram of an electronic device provided by an embodiment of the present application.
  • the server in this embodiment includes: a processor 32, a memory 31, and a communication bus 33.
  • the communication bus 33 is used to connect the processor 32 and the memory 31.
  • the processor 32 is coupled to the memory 31;
  • the memory 31 is used to store a computer program
  • the processor 32 is used to call the computer program stored in the memory 31 to implement the method in the above method embodiment.
  • the computer program can also be stored in a memory external to the electronic device.
  • An embodiment of the present application provides a readable storage medium, including a program or an instruction, and when the program or instruction runs on a computer, the method as described in any of the above method embodiments is executed.

Abstract

本申请实施例提供一种候选MV列表构建方法和装置,包括:在帧间预测模式为第一合并模式时,构建第一合并模式下的当前图像块的第一候选MV列表;在帧间预测模式为第二合并模式时,获取当前图像块的第一候选MV列表,若第一候选MV列表中包括双向MV,则对第一候选MV列表中的MV进行重组,得到第二合并模式下的当前图像块的第二候选MV列表。本申请实施例提供的候选MV列表构建方法和装置,可降低视频编解码装置硬件的复杂度。

Description

候选MV列表构建方法和装置 技术领域
本申请涉及计算机技术领域,尤其涉及一种候选MV列表构建方法和装置。
背景技术
包含高效视频编码(HEVC)标准在内的各种视频编码标准提出了用于图像块的预测性编码模式,即基于已经编码的视频数据块来预测当前待编码的块。在帧内预测模式中,基于与当前块在相同的图像中的一或多个先前经解码相邻块来预测当前块;在帧间预测模式中,基于不同图像中的已经解码块来预测当前块。
对于VVC(versatile video coding)技术中,若当前图像块编码时采用的帧间预测模式为合并模式((Merge,跳过(Skip)被视为合并的特殊情况)且采用的预测方法为三角形合并模式时,三角形合并模式按照与合并模式下的其它预测方法不相同的构建规则构建候选运动矢量(motion vector,简称MV)列表,使得视频编解码装置的硬件实现负杂度较高。
发明内容
本申请实施例提供一种候选MV列表构建方法和装置,能够降低视频编解码装置的硬件实现负杂度。
第一方面,本申请实施例提供一种候选MV列表构建方法,包括:
在帧间预测模式为第一合并模式时,获取第一合并模式下的当前图像块的第一候选MV列表;
在帧间预测模式为第二合并模式时,获取当前图像块的第一候选MV列表,若第一候选MV列表中包括双向MV,则对第一候选MV列表中的MV进行重组,得到第二合并模式下的当前图像块的第二候选MV列表。
在一种可能的设计中,获取第一合并模式下的当前图像块的第一候选MV列表,包括:
根据所述当前图像块的至少一个候选MV,构建所述第一候选MV列表,所述至少一个候选MV是通过第一合并模式对应的候选MV获取方法所得到的。
在一种可能的设计中,所述选MV列表包括的MV的数量小于预设阈值,则所述方法还包括:
获取采用至少一种其它候选MV获取方法得到的所述当前图像块的至少一个其它候选MV;
根据所述至少一个其它候选MV,更新所述第二候选MV列表,得到更新后的第二候选MV列表,所述更新后的第二候选MV列表包括的MV的数量小于或等于所述预设阈值;所述更新后的第二候选MV列表用于当前图像块的编码或解码。
在一种可能的设计中,所述第二候选MV列表中包括M个预设填充向量,所述第二候选MV列表包括的MV的数量与所述M之和为所述预设阈值;
根据所述至少一个其它候选MV,更新所述第二候选MV列表,以得到更新后的第二候选MV列表,包括:
根据所述至少一个其它候选MV,确定至少一个单向MV;
将所述至少一个单向MV中的N个单向MV替换所述第二候选MV列表中的N个预设填充向量,以得到所述更新后的第二候选MV列表,所述N≤M。
在一种可能的设计中,所述第二候选MV列表中不包括M个预设填充向量,所述第二候选MV列表包括的MV的数量与所述M之和为所述预设阈值。
在一种可能的设计中,所述根据所述至少一个其它候选MV,更新所述第二候选MV列表,以得到更新后的第二候选MV列表,包括:
根据所述至少一个其它候选MV,确定至少一个单向MV;
确定将所述至少一个单向MV均添加至所述第二候选MV列表后得到的第二候选MV列表中MV的数量小于所述预设阈值;
添加至少一个所述预设填充向量至将所述至少一个单向MV均添加至所述第二候选MV列表后得到的第二候选MV列表中,得到包括的MV的数量与所述预设填充向量的数量之和为所述预设阈值的所述更新后的第二候选MV列表。
在一种可能的设计中,获取采用至少一种其它候选MV获取方法得到的所述当前图像块的至少一个候选MV,包括:
获取采用第一候选MV获取方法所得到的所述当前图像块的至少一个第一候选MV;
根据所述至少一个其它候选MV,更新所述第二候选MV列表,得到更新后的第二候选MV列表,包括:
根据所述至少一个第一候选MV,更新所述第二候选MV列表,得到更新后的第二候选MV列表。
在一种可能的设计中,获取采用至少一种其它候选MV获取方法得到的所述当前图像块的至少一个候选MV,包括:
获取采用第一候选MV获取方法所得到的所述当前图像块的至少一个第一候选MV和获取采用第二候选MV获取方法所得到的所述当前图像块的至少一个第二候选MV;
根据所述至少一个其它候选MV,更新所述第二候选MV列表,得到更新后的第二候选MV列表,包括:
根据所述至少一个第一候选MV,更新所述第二候选MV列表,得到第一更新后的第二候选MV列表;
确定第一更新后的第二候选MV列表包括的MV的数量小于所述预设阈值;
根据所述至少一个第二候选MV,更新所述第一更新后的第二候选MV列表,得到所述更新后的第二候选MV列表。
在一种可能的设计中,获取采用至少一种其它候选MV获取方法得到的所述当前图像块的至少一个候选MV,包括:
获取采用第一候选MV获取方法所得到的所述当前图像块的至少一个第一候选MV、获取采用第二候选MV获取方法所得到的所述当前图像块的至少一个第二候选MV以及获取采用第三候选MV获取方法所得到所述当前图像块的至少一个第三候选MV;
根据所述至少一个其它候选MV,更新所述第二候选MV列表,得到更新后的第二候选MV列表,包括:
根据所述至少一个第一候选MV,更新所述第二候选MV列表,得到第 一更新后的第二候选MV列表;
确定所述第一更新后的第二候选MV列表中MV的数量小于所述预设阈值;
根据所述至少一个第二候选MV,更新所述第一更新后的第二候选MV列表,得到第二更新后的第二候选MV列表;
确定所述第二更新后的第二候选MV列表中MV的数量小于所述预设阈值;
根据所述至少一个第三候选MV,更新所述第二更新后的第二候选MV列表,得到所述更新后的第二候选MV列表。
在一种可能的设计中,至少一种其它候选MV获取方法包括如下中的至少一项:
基于历史信息的运动矢量预测HMVP技术获取候选MV的方法、基于运动矢量残差合并MMVD技术获取候选MV的方法、基于成成对平均数技术获取候选MV的方法。
在一种可能的设计中,所述第一候选MV获取方法为基于历史信息的运动矢量预测HMVP技术获取候选MV的方法。
在一种可能的设计中,所述第二候选MV获取方法为基于运动矢量残差合并MMVD技术获取候选MV的方法
在一种可能的设计中,所述第三候选MV获取方法为基于成对平均数技术获取候选MV的方法。
在一种可能的设计中,所述预设阈值为4~12中的任一数值。
在一种可能的设计中,所述预设填充向量为包括的分量均为0的向量。
在一种可能的设计中,根据所述当前图像块的至少一个候选MV,构建所述第一候选MV列表,包括:
按照所述第一合并模式下的所述当前图像块的至少一个候选MV的添加顺序,将所述当前图像块的至少一个候选MV添加至第一候选MV列表中。
在一种可能的设计中,所述对第一候选MV列表中的MV进行重组,得到第二合并模式下的当前图像块的第二候选MV列表,包括:
对于所述第一候选MV列表中的每个单向MV:
按照单向MV在所述第一候选MV列表中的顺序,将该单向MV添加至 候选MV列表中,并确定候选MV表中的MV的数量小于所述预设阈值;
对于所述第一候选MV列表中每个双向MV组:
按照双向MV组在所述第一候选MV列表中的顺序,将该双向MV组中的前向MV添加至第二候选MV列表中,确定第二候选MV表中的MV的数量小于所述预设阈值;以及,
确定各双向MV组中的前向MV添加至第二候选MV表中后,第二候选MV表中的MV的数量小于所述预设阈值,则对于所述第一候选MV列表中每个双向MV组:
按照双向MV组在所述第一候选MV列表中的顺序,将该双向MV组中的后向MV添加至第二候选MV列表中,确定第二候选MV表中的MV的数量小于所述预设阈值;以及,
确定各双向MV组中的后向MV添加至第二候选MV表中后,第二候选MV表中的MV的数量小于所述预设阈值之后,则对于所述第一候选MV列表中每个双向MV组:
按照双向MV组在所述第一候选MV列表中的顺序,将该双向MV组中的前向MV与后向MV的平均值添加至第二候选MV列表中;
若第二候选MV表中的MV的数量小于所述预设阈值且所述第一候选MV列表中在该双向MV组之后存在双向MV组,则将所述第一候选MV列表中在该双向MV组之后的第一个双向MV组中的前向MV与后向MV的平均值添加至第二候选MV列表中;
若第二候选MV表中的MV的数量等于所述预设阈值,或者,第二候选MV表中的MV的数量小于所述预设阈值且所述第一候选MV列表中在该双向MV组之后不存在双向MV组,则确定将该双向MV组中的前向MV与后向MV的平均值添加至第二候选MV列表中后的第二候选列表为所述当前图像块的第二候选列表。
第二方面,本申请实施例提供一种候选MV列表构建装置,,包括:
获取模块,在帧间预测模式为第一合并模式时,获取第一合并模式下的当前图像块的第一候选MV列表;
重组模块,用于在帧间预测模式为第二合并模式时,获取当前图像块的第一候选MV列表,若第一候选MV列表中包括双向MV,则对第一候选 MV列表中的MV进行重组,得到第二合并模式下的当前图像块的第二候选MV列表。
在一种可能的设计中,所述获取模块,具体用于:
根据所述当前图像块的至少一个候选MV,构建所述第一候选MV列表,所述至少一个候选MV是通过第一合并模式对应的候选MV获取方法所得到的。
在一种可能的设计中,所述获取模块,还用于:
获取采用至少一种其它候选MV获取方法得到的所述当前图像块的至少一个其它候选MV;
还包括,更新模块,所述更新模块,用于根据所述至少一个其它候选MV,更新所述第二候选MV列表,得到更新后的第二候选MV列表,所述更新后的第二候选MV列表包括的MV的数量小于或等于所述预设阈值;所述更新后的第二候选MV列表用于当前图像块的编码或解码。
在一种可能的设计中,所述第二候选MV列表中包括M个预设填充向量,所述第二候选MV列表包括的MV的数量与所述M之和为所述预设阈值;
所述更新模块,具体用于:
根据所述至少一个其它候选MV,确定至少一个单向MV;
将所述至少一个单向MV中的N个单向MV替换所述第二候选MV列表中的N个预设填充向量,以得到所述更新后的第二候选MV列表,所述N≤M。
在一种可能的设计中,所述第二候选MV列表中不包括M个预设填充向量,所述第二候选MV列表包括的MV的数量与所述M之和为所述预设阈值。
在一种可能的设计中,所述更新模块,具体用于:
根据所述至少一个其它候选MV,确定至少一个单向MV;
确定将所述至少一个单向MV均添加至所述第二候选MV列表后得到的第二候选MV列表中MV的数量小于所述预设阈值;
添加至少一个所述预设填充向量至将所述至少一个单向MV均添加至所述第二候选MV列表后得到的第二候选MV列表中,得到包括的MV的数量与所述预设填充向量的数量之和为所述预设阈值的所述更新后的第二候选MV列表。
在一种可能的设计中,所述获取模块,具体用于:
获取采用第一候选MV获取方法所得到的所述当前图像块的至少一个第一候选MV;
所述更新模块,具体用于:
根据所述至少一个第一候选MV,更新所述第二候选MV列表,得到更新后的第二候选MV列表。
在一种可能的设计中,所述获取模块,具体用于:
获取采用第一候选MV获取方法所得到的所述当前图像块的至少一个第一候选MV和获取采用第二候选MV获取方法所得到的所述当前图像块的至少一个第二候选MV;
所述更新模块,具体用于:
根据所述至少一个第一候选MV,更新所述第二候选MV列表,得到第一更新后的第二候选MV列表;
确定第一更新后的第二候选MV列表包括的MV的数量小于所述预设阈值;
根据所述至少一个第二候选MV,更新所述第一更新后的第二候选MV列表,得到所述更新后的第二候选MV列表。
在一种可能的设计中,所述获取模块,具体用于:
获取采用第一候选MV获取方法所得到的所述当前图像块的至少一个第一候选MV、获取采用第二候选MV获取方法所得到的所述当前图像块的至少一个第二候选MV以及获取采用第三候选MV获取方法所得到所述当前图像块的至少一个第三候选MV;
所述更新模块,具体用于:
根据所述至少一个第一候选MV,更新所述第二候选MV列表,得到第一更新后的第二候选MV列表;
确定所述第一更新后的第二候选MV列表中MV的数量小于所述预设阈值;
根据所述至少一个第二候选MV,更新所述第一更新后的第二候选MV列表,得到第二更新后的第二候选MV列表;
确定所述第二更新后的第二候选MV列表中MV的数量小于所述预设阈 值;
根据所述至少一个第三候选MV,更新所述第二更新后的第二候选MV列表,得到所述更新后的第二候选MV列表。
在一种可能的设计中,至少一种其它候选MV获取方法包括如下中的至少一项:
基于历史信息的运动矢量预测HMVP技术获取候选MV的方法、基于运动矢量残差合并MMVD技术获取候选MV的方法、基于成对平均数技术获取候选MV的方法。
在一种可能的设计中,所述第一候选MV获取方法为基于历史信息的运动矢量预测HMVP技术获取候选MV的方法。
在一种可能的设计中,所述第二候选MV获取方法为基于运动矢量残差合并MMVD技术获取候选MV的方法
在一种可能的设计中,所述第三候选MV获取方法为基于成对平均数技术获取候选MV的方法。
在一种可能的设计中,所述预设阈值为4~12中的任一数值。
在一种可能的设计中,所述预设填充向量为包括的分量均为0的向量。
在一种可能的设计中,所述获取模块,具体用于:
按照所述第一合并模式下的所述当前图像块的至少一个候选MV的添加顺序,将所述当前图像块的至少一个候选MV添加至第一候选MV列表中。
在一种可能的设计中,所述重组模块,具体用于:
对于所述第一候选MV列表中的每个单向MV:
按照单向MV在所述第一候选MV列表中的顺序,将该单向MV添加至候选MV列表中,并确定候选MV表中的MV的数量小于所述预设阈值;
对于所述第一候选MV列表中每个双向MV组:
按照双向MV组在所述第一候选MV列表中的顺序,将该双向MV组中的前向MV添加至第二候选MV列表中,确定第二候选MV表中的MV的数量小于所述预设阈值;以及,
确定各双向MV组中的前向MV添加至第二候选MV表中后,第二候选MV表中的MV的数量小于所述预设阈值,则对于所述第一候选MV列表中每个双向MV组:
按照双向MV组在所述第一候选MV列表中的顺序,将该双向MV组中的后向MV添加至第二候选MV列表中,确定第二候选MV表中的MV的数量小于所述预设阈值;以及,
确定各双向MV组中的后向MV添加至第二候选MV表中后,第二候选MV表中的MV的数量小于所述预设阈值之后,则对于所述第一候选MV列表中每个双向MV组:
按照双向MV组在所述第一候选MV列表中的顺序,将该双向MV组中的前向MV与后向MV的平均值添加至第二候选MV列表中;
若第二候选MV表中的MV的数量小于所述预设阈值且所述第一候选MV列表中在该双向MV组之后存在双向MV组,则将所述第一候选MV列表中在该双向MV组之后的第一个双向MV组中的前向MV与后向MV的平均值添加至第二候选MV列表中;
若第二候选MV表中的MV的数量等于所述预设阈值,或者,第二候选MV表中的MV的数量小于所述预设阈值且所述第一候选MV列表中在该双向MV组之后不存在双向MV组,则确定将该双向MV组中的前向MV与后向MV的平均值添加至第二候选MV列表中后的第二候选列表为所述当前图像块的第二候选列表。
第三方面,本申请实施例提供一种可读存储介质,包括程序或指令,当所述程序或指令在计算机上运行时,第一方面任一所述的方法被执行。
第四方面,本申请实施例一种电子设备,包括:处理器,所述处理器与存储器耦合;
所述存储器用于,存储计算机程序;
所述处理器用于,调用所述存储器中存储的计算机程序,以实现第一方面任一所述的方法。
本申请中在帧间预测模式为第二合并模式时复用第一合并模式下的第一候选MV列表,即第二合并模式下不用重建一个第一候选MV列表,降低了视频编解码装置的硬件复杂度,因此,视频编解码装置的硬件较易实现。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的图像处理系统的框图;
图2为本申请实施例提供的候选MV列表构建方法的流程图一;
图3为本申请实施例提供的图像块的候选块的示意图;
图4A为本申请实施例提供的三角形合并模式对应的图像块划分示意图一;
图4B为本申请实施例提供的三角形合并模式对应的图像块划分示意图二;
图5为本申请实施例提供的候选MV列表构建方法的流程图二;
图6为本申请实施例提供的候选MV列表构建方法的流程图三;
图7为本申请实施例提供的候选MV列表构建方法的流程图四;
图8为本申请实施例提供的候选MV列表构建方法的流程图五;
图9为本申请实施例提供的候选MV列表构建装置的结构示意图一;
图10为本申请实施例提供的候选MV列表构建装置的结构示意图二;
图11为本申请实施例提供的电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
首先对本申请涉及的技术名词进行说明。
编码视频流,或者其一部分,诸如视频帧或者图像块可以使用视频 流中的时间和空间相似性以改善编码性能。例如,视频流的当前图像块可以通过基于视频流中的先前已编码块预测用于当前图像块的运动信息,并计算测块和当前图像块(即原始块)之间的差值(亦称为残差),从而基于先前已编码块对当前图像块进行编码。以这种方法,仅仅将用于产生当前图像块的残差和一些参数包括于数字视频输出位流中,而不是将当前图像块的整体包括于数字视频输出位流。这种技术可以称为帧间预测。
MV是帧间预测过程中的一个重要参数,其表示先前已编码块相对于该当前编码块的空间位移。可以使用运动估计方法,诸如运动搜索来获取运动矢量。在有些情况下,预测运动矢量可以是从在视频流中先前使用的运动矢量中选择出来的,选择先前使用的运动矢量编码当前的运动矢量可以进一步减少包括在编码的视频位流中的位数。
在VVC标准中,对于图像块存在两个帧间预测模式,分别称为合并模式(Merge,跳过(Skip)被视为合并的特殊情况)和先进运动向量预测(advanced motion vector prediction,AMVP)模式。
前向MV:若图像块A的最佳匹配块为图像块B,图像块B所在的帧为图像块A所在帧的历史帧,则图像块B相对于图像块A的MV即为图像块A的MV,也就是图像块A的前向MV。
后向MV:若图像块A的最佳匹配块为图像块B,图像块B所在的帧为图像块A所在帧的将来帧,则图像块B相对于图像块A的MV即为图像块A的MV,也就是图像块A的后向MV。
双向MV组:图像块A的第一最佳匹配块为图像块B 1,图像块B 1所在的帧为图像块A所在帧的历史帧,若图像块A的第二最佳匹配块为图像块B 2,图像块B 2所在的帧为图像块A所在帧的将来帧:即获取了图像块B 1相对于图像块A的MV 1,又获取了B 2相对于图像块A的MV 2,则MV 1和MV 2组成了双向MV组。MV 1为图像块A的前向MV,MV 2为图像块A的后向MV。
单向MV:不以上述的双向MV组出现的MV即为单向MV;比如:
(1)获取了图像块A所在帧的历史帧中的图像块B 1相对于图像块A的MV 1,没有获取图像块A所在帧的将来帧中的图像块B 2相对于图像块 A的MV 2,则MV 1称为单向MV。其中,图像块B 1为图像块A的最佳匹配块。
(2)获取了图像块A所在帧的将来帧中的图像块B 2相对于图像块A的MV 2,没有获取图像块A所在帧的历史帧中的图像块B 1相对于图像块A的MV 1,则MV 2称为单向MV;其中,图像块B 2为图像块A的最佳匹配块。
图1为本申请实施例提供的图像处理系统的框图,如本文所使用,术语“图像处理系统”一般是指图像编码器和图像解码器两者。在本申请中,术语“图像处理”可一般地指代图像编码或图像解码。
如图1所示,图像处理系统包括编码装置10和解码装置20,编码装置10用于对多帧图像进行编码处理,得到编码后的码流。解码装置20用于对多帧图像编码后的码流进行解码处理,恢复编码前的多帧图像。
具体地,编码装置10采用编码器120对多帧图像进行编码,得到编码后的码流,经输出接口140输出至解码装置20。解码装置20经输入接口240接收多帧图像编码后的码流,采用解码器220对多帧图像编码后的码流进行解码处理,恢复编码前的多帧图像。
进一步地,编码装置10可将编码后的码流经输出接口140输出后经链路30传输至解码装置20。其中,链路30可包括能够将多帧图像的编码后的码流从编码装置10移动到解码装置20的一或多个媒体或装置。所述一或多个通信媒体可包含无线和/或有线通信媒体,例如射频(RF)频谱或一或多个物理传输线。所述一或多个通信媒体可形成基于分组的网络的一部分,基于分组的网络例如为局域网、广域网或全球网络(例如,因特网)。所述一或多个通信媒体可包含路由器、交换器、基站或促进从编码装置10到解码装置20的通信的其它设备。
编码器120和解码器220可根据例如VVC等视频压缩标准或其扩展来操作,并且可符合VVC测试模型(HM)。或者,编码器120和解码器220也可根据其它业界标准来操作,所述标准例如是ITU-T H.264、H.265标准,或此类标准的扩展。
其中,编码装置10可以为如下中的任一:终端设备、服务器。解码装置20可以为如下中的任一:终端设备、服务器。
下面结合图1对帧间预测技术的流程进行简要说明。
在帧间预测技术中,编码装置使用先前已经编码的重构帧作为参考帧,通过运动估计和运动补偿的方法对当前帧(当前正在编码的帧)进行预测,从而去除视频的时间冗余信息。对于一帧图像,先划分成大的编码区域(Coding Tree Unit,CTU),例如64x64、128x128大小。每个CTU可以进一步划分成方形或矩形的编码单元(Coding Unit,CU)。每个CU基于该CU的预测MV,在参考帧中(一般为时域附近的已重构帧)寻找最相似块作为当前CU的预测块。当前块与相似块之间的相对位移为运动矢量(MV)。运动估计的过程就是将当前帧的当前编码块在参考帧中经过搜索、比较后得到MV的过程。运动补偿就是利用MV和参考帧得到预测帧的过程,此过程得到的预测帧可能和原始的当前帧有一定的差别,因此需要将预测帧和当前帧的差值经过变换、量化等过程之后传递到解码装置,除此之外还需要将MV的信息传递到解码装置。这样解码端进行反量化、反变换得到预测帧和当前帧的差值,然后根据MV、参考帧、预测帧和当前帧的差值就可以重构出当前帧。
下面采用具体的实施例对本申请实施例提供的候选MV列表构建方法进行说明。
图2为本申请实施例提供的候选MV列表构建方法的流程图一,本实施例的执行主体可为图1中的编码器。参见图2,本实施例的方法包括:
步骤S201、在帧间预测模式为第一合并模式时,构建第一合并模式下的当前图像块的第一候选MV列表。
具体地,本实施例适用于VCC标准。本实施例中的第一合并模式为普通合并模式,普通合并模式为与HEVC标准中的合并模式相类似的合并模式。
下面对第一合并模式下当前图像块的第一候选MV列表的构建进行说明。可以理解的是,第一候选MV列表中的MV均为当前图像块的候选MV。
(1)按照预设的空域MV获取顺序获取当前图像块的K个空域候选块的空域MV。
具体的获取方法为现有技术中的方法,本实施例中不再赘述。
具体地,预设的空域MV获取顺序依次为:与当前图像块的第一角相邻的且位于当前图像块第一侧的第一图像块、与当前图像块的第二角相邻的且 位于当前图像块上方的第二图像块、与当前图像块的第二角相邻的且位于当前图像块上方的第三图像块、与当前图像块的第一角相邻的且位于当前图像块第一侧的第四图像块、与当前图像块的第三角相邻的且位于当前图像块第一侧的第五图像块。其中,第一角和第二角为对角。即获取各空域候选块的空域MV的顺序依次为第一图像块、第二图像块、第三图像块、第四图像块、第五图像块。
图3为本申请实施例提供的图像块的候选块的示意图。
参见图3,图像块1、2、3、4、5为当前图像块41的5个空域候选块,图像块6和7为当前图像块41的2个时域候选块。第一图像块可为图3中标号1的图像块,第二图像块可为图4中标号2的图像块,第三图像块可为图4中标号3的图像块,第四图像块可为图4中标号为4的图像块,第五图像块可为图4中标号5的图像块。
具体的获取方法为现有技术中的方法,本实施例中不再赘述。
(2)按照预设的时域MV获取顺序获取当前图像块的F个时域候选块的空域MV。
预设的时域MV获取顺序依次为:当前图像块的第四角相邻的且位于当前图像块第二侧的第六图像块,当前图像块在邻近已编码图像中的同位图像块。其中,第四角和第三角为对角。即获取各时域候选块的时域MV的顺序依次为第六图像块、当前图像块在邻近已编码图像中的同位图像块。
参见图3,图像块6和7为当前图像块41的2个时域候选块。第六图像块可为图3中标号为6的图像块,当前图像块在邻近已编码图像中的同位图像块可为图3中标号为7的图像块。
(3)按照预设的空域MV获取顺序将获取到的各空域MV添加至第一候选MV列表中,按照预设的时域MV获取顺序将获取到的各时域MV添加至第一候选MV列表中,得到包括的MV的数量为第一预设阈值的当前图像块的第一候选MV列表,或者,包括的MV的数量与预设填充向量之和为第一预设阈值的第一候选MV列表。
其中,预设填充向量可为分量为0的向量。
即第一候选MV列表的获取方法参见当前VCC标准中普通合并模式下的当前图像块的候选MV列表的获取方法。
步骤S202、在帧间预测模式为第二合并模式时,获取当前图像块的第一候选MV列表,若第一候选MV列表中包括双向MV,则对第一候选MV列表中的MV进行重组,得到第二合并模式下的当前图像块的第二候选MV列表。
具体地,本实施例中的第二合并模式为三角形合并模式,三角形合并模式中为将当前图像块均分成两个三角形图像块时所对应的合并模式。
图4A为本申请实施例提供的三角形合并模式对应的图像块划分示意图一,图4B为本申请实施例提供的三角形合并模式对应的图像块划分示意图二。
参见图4A和图4B,在三角形合并模式中,当前图像块可被从当前图像块的左上角到右下的角的对角线所划分,也可被从当前图像块的右上角到左下的角的对角线所划分,得到两个预测单元(prediction unit,PU)。
对于步骤S202、在第二合并模式下,直接获取第一合并模式下的第一候选MV列表,即复用第一合并模式下的第一候选MV列表,判断第一候选MV列表中是否包括双向MV。
若第一候选MV列表中不存在双向MV组,且第一候选MV列表中的MV的数量等于第二预设阈值时,则可确定第一候选MV列表为当前图像块的第二候选MV列表。
若该第一候选MV列表中不存在双向MV组,且第一候选MV列表中的MV的数量L小于第二预设阈值K时,可添加K-L个预设填充向量至第一候选MV列表,得到当前图像块的第二候选MV列表。其中,预设填充向量可为分量均为0的向量。
若该第一候选MV列表中不存在双向MV组,且第一候选选MV列表中的MV的数量L大于第二预设阈值K时:
(1)删除第一候选MV列表中第K+1至第L个MV,确定更新后的第一候选MV列表为当前图像块的第二候选MV列表。
(2)提取第一候选MV列表中排序位于前K的K个MV,得到当前图像块的第二候选MV列表,即当前图像块的第二候选MV列表中包括第一候选选MV列表中排序位于前K的K个MV。
若该第一候选MV列表中存在双向MV组,则对该第一候选MV列表中 的MV进行重组,得到包括的MV均为单向MV的该候选MV列表,其中重组方法为第二合并模式在VCC标准中的重组方法。对该第一候选MV列表中的MV进行重组,得到包括的MV均为单向MV的第二候MV列表的具体实现如下:
对于第一候选MV列表中的每个单向MV:
按照单向MV在第一候选MV列表中的顺序,将该单向MV添加至第二候选MV列表中,并确定当前第二候选MV列表中的MV的数量与第二预设阈值的关系;
1、若当前第二候选MV列表中的MV的数量等于第二预设阈值,则停止添加MV至候选MV列表。
2、若当前第二候选MV列表中的MV的数量小于第二预设阈值且该单向MV之后存在单向MV,则将第一候选选MV列表中该单向MV之后的第一个单向MV添加至候选MV列表。
3、若当前第二候选MV列表中的MV的数量小于第二预设阈值、该单向MV之后不存在单向MV,对于第一候选选MV列表中的每个双向MV组:
按照双向MV组在第一候选选MV列表中的顺序,将该双向MV组中的前向MV添加至候选MV列表中,并确定当前第二候选MV列表中的MV的数量与第二预设阈值的关系;
31、若当前第二候选MV列表中的MV的数量等于第二预设阈值,则停止添加MV至候选MV列表。
32、若当前第二候选MV列表中的MV的数量小于第二预设阈值且该双向MV组之后存在双向MV组,则将该双向MV组之后的第一个双向MV组的MV中的前向MV添加至该当前第二候选MV列表。
33、若当前第二候选MV列表中的MV的数量小于第二预设阈值且该双向MV组之后不存在双向MV组,对于第一候选选MV列表中的每个双向MV组:
按照双向MV组在第一候选选MV列表中的顺序,将该双向MV组中的后向MV添加至候选MV列表中,并确定当前第二候选MV列表中的MV的数量与第二预设阈值的关系;
331、若当前第二候选MV列表中的MV的数量等于第二预设阈值,则 停止添加MV至候选MV列表;
332、若当前第二候选MV列表中的MV的数量小于第二预设阈值且该双向MV组之后存在双向MV组,则将该双向MV组之后的第一个双向MV组中的后向MV添加至该当前第二候选MV列表。
333、若当前第二候选MV列表中的MV的数量小于第二预设阈值且该双向MV组之后不存在双向MV组,对于第一候选选MV列表中的每个双向MV组:
按照双向MV组在第一候选选MV列表中的顺序,将该双向MV组中的前向MV和后向MV的平均值添加至候选MV列表中,并确定当前第二候选MV列表中的MV的数量与第二预设阈值的关系;
3331、若当前第二候选MV列表中的MV的数量等于第二预设阈值,则停止添加MV至候选MV列表;
3332、若当前第二候选MV列表中的MV的数量小于第二预设阈值且该双向MV组之后存在双向MV组,则将该组双向预测MV之后的第一个双向MV组的MV中的中前向MV和后向MV的平均值添加至该当前第二候选MV列表。
3333、若当前第二候选MV列表中的MV的数量小于第二预设阈值且该双向MV组之后不存在双向MV组:添加至少一个预设填充向量至候选MV列表,得到包括的MV的数量与预设填充向量的数量之和为第二预设阈值的候选MV列表。
可以理解的是,最终得到的第二候选MV列表为1中得到的第二候选MV列表或者31中得到的第二候选MV列表或者331中得到的第二候选MV列表或者3331中得到的第二候选MV列表或者3333中得到的第二候选MV列表。
可选地,上述的第二预设阈值可为4~12中的任一数值,比如第二预设阈值为5或6或7或8或9或10或11。
示例性地,第一候选MV列表中包括:MV1,(MV2,MV3)和MV4,第二预设阈值为6,预设填充向量为0,则(MV2、MV3)即为双向MV组,MV2为(MV2、MV3)对应的候选块的前向MV,MV3为(MV2、MV3)对应的候选块的后向MV,则对第一候选MV列表中的MV重组后得到的当 前图像块的第二候选MV列表中的MV信息包括:(MV1,MV4,MV2,MV3,(MV2+MV3)/2,0)。
可以理解的是,上述“对该第一候选MV列表中的MV进行重组,得到包括的MV均为单向MV的第二候选MV列表”的具体实现中包括了将第一候选选MV列表中的各MV处理成单向MV的方法:(1)对于本身就是单向MV的MV,无需处理;(2)对于双向MV组中的MV,依次将双向MV组的前向MV提取出来,再依次将双向MV组的后向MV提取出来,最后依次获取双向MV组中的前向MV和后向MV的平均值,得到单向MV。
本实施例中在帧间预测模式为第二合并模式时复用第一合并模式下的第一候选MV列表,即第二合并模式下不用重建一个第一候选MV列表,降低了视频编解码装置的硬件复杂度,因此,视频编解码装置的硬件较易实现。
若图2所示的实施例中得到的当前图像块的第二候选MV列表中MV的数量等于预设阈值,则可直接用图2所示的实施例中得到的当前图像块的第二候选MV列表进行当前图像块的编码或解码。若图2所示的实施例中得到的当前图像块的第二候选MV列表中MV的数量小于预设阈值,为了丰富第二候选MV列表中候选MV的数量,以减小了经编码后的原始图像块再解码后得到的图像块与原始图像块的差距,本实施例在上一实施例的基础上作了改进。
图5为本申请实施例提供的候选MV列表构建方法的流程图二;参见图5,本实施例的方法包括:
步骤S301、在帧间预测模式为第一合并模式时,获取第一合并模式下的当前图像块的第一候选MV列表。
具体地,该步骤的具体实现参照图2所示的实施例中的步骤S201。
步骤S302、在帧间预测模式为第二合并模式时,获取当前图像块的第一候选MV列表,若第一候选MV列表中包括双向MV,则对第一候选MV列表中的MV进行重组,得到第二合并模式下的当前图像块的第二候选MV列表。
具体地,该步骤的具体实现参照图2所示的实施例中的步骤S202。
与图2所示的实施例中不同的是,在本实施例中,由于会在该步骤中得 到的当前图像块的第二候选MV列表中添加其他方法获取到的候选MV,且该步骤中得到的当前图像块的第二候选MV列表并不是最终用于图像的编解码的第二候选MV列表,因此,本实施例中得到的当前图像块的第二候选MV列表中可不包括预设填充向量。
步骤S303、确定当前图像块的第二候选MV列表包括的MV的数量小于预设阈值。
步骤S304、获取采用至少一种其它候选MV获取方法得到的当前图像块的至少一个其它候选MV;
具体地,其它候选MV获取方法与该图2所示的实施例中候选MV的获取方法不相同,即与图2所示的实施例中第一候选MV列表中的候选MV的获取方法不相同。
具体地,至少一种其它候选MV获取方法可为如下中的至少一项:基于历史信息的运动矢量预测(history-based motion vector prediction,简称HMVP)技术获取候选MV的方法、基于运动矢量残差合并(Merge with vector prediction difference,简称MMVD)技术获取候选MV的方法、基于对平均数(pairwise average)技术获取候选MV的方法。
其中,基于HMVP技术获取候选MV的方法、基于MMVD技术获取候选MV的方法和基于成对平均数技术获取候选MV的方法均为现有技术中的方法,本实施例中不再赘述。
获取采用至少一种其它候选MV获取方法得到的当前图像块的至少一个其它候选MV包括以下但不限于以下几种情况:
第一种情况:获取采用第一候选MV获取方法所得到的当前图像块的至少一个第一候选MV。
具体地,该种情况下至少一个其它候选MV包括至少一个第一候选MV。
其中,第一候选MV获取方法可为基于HMVP技术获取候选MV的方法。
第二种情况:获取采用第一候选MV获取方法所得到的当前图像块的至少一个第一候选MV和获取采用第二候选MV获取方法所得到的当前图像块的至少一个第二候选MV。
具体地,该种情况下至少一个其它候选MV包括至少一个第一候选MV和至少一个第二候选MV。
其中,第一候选MV获取方法可为基于HMVP技术获取候选MV的方法,第二候选MV获取方法可为基于MMVD技术获取候选MV的方法。
第三种情况:获取采用第一候选MV获取方法所得到的当前图像块的至少一个第一候选MV、获取采用第二候选MV获取方法所得到的当前图像块的至少一个第二候选MV以及获取采用第三候选MV获取方法所得到当前图像块的至少一个第三候选MV。
具体地,该种情况下至少一个其它候选MV包括至少一个第一候选MV、至少一个第二候选MV和至少一个第三候选MV。
其中,第一候选MV获取方法可为基于HMVP技术获取候选MV的方法,第三候选MV获取方法可为基于成对平均数技术获取候选MV的方法,第二候选MV获取方法可为基于MMVD技术获取候选MV的方法。
步骤S305、根据至少一个其它候选MV,更新当前图像块的第二候选MV列表,得到更新后的第二候选MV列表,更新后的第二候选MV列表包括的MV的数量小于或等于该预设阈值。更新后的第二候选MV列表用于当前图像块的编码或解码。
具体地,在本实施例中获取到的至少一个其它候选MV中包括双向MV组时,“根据至少一个其它候选MV,更新当前图像块的第二候选MV列表,得到更新后的第二候选MV列表”包括:
a1、根据至少一个其它候选MV,确定至少一个单向MV。
具体地,在至少一个其它候选MV中不包括双向MV组时,“根据至少一个其它候选MV,确定至少一个单向MV”,包括:确定至少一个其它候选MV为至少一个单向MV,即至少一个其它候选MV为至少一个单向MV。
在至少一个其它候选MV中包括双向MV组时,“根据至少一个其它候选MV,确定至少一个单向MV”的方法可参照图2所示的实施例中将第一MV列表中的各MV处理成单向MV的过程。
a2、将至少一个其它候选MV确定的至少一个单向MV的至少部分添加至当前图像块的第二候选MV列表,得到更新后的第二候选MV列表。
可以理解的是,可以先执行a1再执行a2,还可以a1和a2交替执行。若a1和a2交替执行,则“根据至少一个其它候选MV,更新当前图像块的第二候选MV列表,得到更新后的第二候选MV列表”的方法同图2所示的 实施例中第一MV表中的当前图像的至少一个候选MV重组时添加至当前图像的候选MV的过程。
如步骤S302中所述,当当前图像块的第二候选MV列表中MV的数量小于预设阈值时,当前图像块的第二候选MV列表中可包括预设填充向量,也可不包括预设填充向量。
若步骤S302中得到的当前图像块的第二候选MV列表中包括M个预设填充向量,第二候选MV列表包括的MV的数量与M之和为预设阈值,此时,将至少一个其它候选MV确定的至少一个单向MV添加至当前图像块的第二候选MV列表,得到更新后的第二候选MV列表,包括:将至少一个单向MV中的N个单向MV替换当前图像块的第二候选MV列表中的N个预设填充向量,以得到更新后的第二候选MV列表,N≤M。
若步骤S302中得到的当前图像块的第二候选MV列表中不包括M个预设填充向量且更新后的第二候选MV列表中MV的数量小于预设阈值,此时,将至少一个其它候选MV确定的至少一个单向MV添加至当前图像块的第二候选MV列表,得到更新后的第二候选MV列表,包括:
b1、确定将至少一个单向MV均添加至当前图像块的第二候选MV列表后,第二候选MV列表中MV的数量小于预设阈值;
b2、添加至少一个预设填充向量至当前图像块的第二候选MV列表,得到包括的MV的数量与预设填充向量的数量的和为预设阈值的更新后的第二候选MV列表。
下面对“根据至少一个其它候选MV,更新当前图像块的第二候选MV列表,得到更新后的第二候选MV列表”更具体的实现进行说明。
“根据至少一个其它候选MV,更新当前图像块的第二候选MV列表,得到更新后的第二候选MV列表”,包括但不限于以下几种情况:
第一种情况:至少一个其它候选MV包括至少一个第一候选MV:
c1、根据至少一个第一候选MV,确定至少一个第一单向MV。
c2、将至少一个第一单向MV中的至少部分添加至当前图像块的第二候选MV列表,得到更新后的第二候选MV列表;
具体地,c1和c2可以是交替进行的,此时,c1和c2的具体实现参照图2所示的实施例中第一MV表中的当前图像的至少一个候选MV重组时添加 至当前图像的候选MV的过程。
若步骤S302中的当前图像块的第二候选MV列表中不包括M个预设填充向量,且将各第一单向MV均添加至当前图像块的第二候选MV列表中后,得到的第一更新后的第二候选MV列表中MV的数量小于预设阈值,则添加至少一个预设填充向量至第一更新后的第二候选MV列表,得到包括的MV的数量与预设填充向量的数量的和为预设阈值的更新后的第二候选MV列表。
若步骤S302中的当前图像块的第二候选MV列表中包括M个预设填充向量,将至少一个第一单向MV中的至少部分添加至当前图像块的第二候选MV列表,得到更新后的第二候选MV列表,包括:将至少一个第一单向MV中的N个单向MV替换当前图像块的第二候选MV列表中的N个预设填充向量,以得到更新后的第二候选MV列表,N≤M。
第二种情况:至少一个其它候选MV包括至少一个第一候选MV和至少一个第二候选MV:
d1、根据至少一个第一候选MV,确定至少一个第一单向MV;
d2、将各第一单向MV中的添加至当前图像块的第二候选MV列表;
具体地,在该种情况下,各第一单向MV均会被添加至步骤S302中的当前图像块的第二候选MV列表中,且各第一单向MV均会被添加至步骤S301中的当前图像块的第二候选MV列表中后,得到的第一更新后的第二候选MV列表中的MV的数量小于预设阈值。
若步骤S302中的当前图像块的第二候选MV列表中包括M个预设填充向量,第一单向MV具有H个,则将各第一单向MV添加至当前图像块的第二候选MV列表,得到更新后的第二候选MV列表,包括:将H个第一单向MV替换当前图像块的第二候选MV列表中的H个预设填充向量,得到第一更新后的第二候选MV列表,H<M。
d3、确定将各第一单向MV均添加至当前图像块的第二候选MV列表中后得到的第一更新后的第二候选MV列表中的MV的数量小于预设阈值。
d4、根据至少一个第二候选MV,确定至少一个第二单向MV;
d5、将至少一个第二单向MV中的至少部分添加至第一更新后的第二候选MV列表,得到更新后的第二候选MV列表。
具体地,d4和d5可以是交替进行的,此时,d4和d5的具体实现参照图2所示的实施例中将第一MV表中的当前图像的至少一个候选MV重组时添加至当前图像的候选MV的过程。
若步骤S302中的当前图像块的第二候选MV列表中不包括M个预设填充向量,且将各第二单向MV均添加至当前图像块的第二候选MV列表中后,得到的第二更新后的第二候选MV列表中MV的数量小于预设阈值,则添加至少一个预设填充向量至第二更新后的第二候选MV列表,得到包括的MV的数量与预设填充向量的数量的和为预设阈值的更新后的第二候选MV列表。
若步骤S302中的当前图像块的第二候选MV列表中包括M个预设填充向量,则将至少一个第二单向MV中的至少部分添加至第一更新后的第二候选MV列表,得到更新后的第二候选MV列表,包括:将s个第二单向MV替换当前图像块的第二候选MV列表中的s个预设填充向量,得到第二更新后的第二候选MV列表,s+H≤M,s+H=N。
第三种情况:至少一个其它候选MV包括至少一个第一候选MV、至少一个第二候选MV和至少一个第三候选MV:
e1、根据至少一个第一候选MV,确定至少一个第一单向MV;
e2、将各第一单向MV中的添加至当前图像块的第二候选MV列表;
具体地,在该种情况下,各第一单向MV均会被添加至当前图像块的第二候选MV列表中,且各第一单向MV均会被添加至当前图像块的第二候选MV列表中后,得到的第一更新后的第二候选MV列表中的MV的数量小于预设阈值。
若步骤S302中的当前图像块的第二候选MV列表中包括预设填充向量,第一单向MV具有H个,则将各第一单向MV添加至当前图像块的第二候选MV列表,得到更新后的第二候选MV列表,包括:将H个第一单向MV替换当前图像块的第二候选MV列表中的H个预设填充向量,得到第一更新后的第二候选MV列表,H<M。
e3、确定将各第一单向MV均添加至当前图像块的第二候选MV列表中后得到的第一更新后的第二候选MV列表中的MV的数量小于预设阈值。
e4、根据至少一个第二候选MV,确定至少一个第二单向MV。
e5、将第二单向MV中添加至第一更新后的第二候选MV列表。
具体地,在该种情况下,各第一单向MV均会被添加至当前图像块的第二候选MV列表中,且各第一单向MV均会被添加至当前图像块的第二候选MV列表中后,得到的第一更新后的第二候选MV列表中的MV的数量小于预设阈值。
若步骤S302中的当前图像块的第二候选MV列表中包括M个预设填充向量,第二单向MV具有S个,则将各第二单向MV添加至当前图像块的第二候选MV列表,得到更新后的第二候选MV列表,包括:将S个第二单向MV替换当前图像块的第二候选MV列表中的S个预设填充向量,得到第二更新后的第二候选MV列表,S<M。
e6、确定将各第二单向MV均添加至当前图像块的第二候选MV列表中后得到的第二更新后的第二候选MV列表中的MV的数量小于预设阈值。
e7、根据至少一个第三候选MV,确定至少一个第三单向MV;
e8、将至少一个第三单向MV中的至少部分添加至第二更新后的第二候选MV列表,得到更新后的第二候选MV列表。
具体地,e7和e8可以是交替进行的,此时,e7和e8的具体实现参照图2所示的实施例中将第一MV表中的当前图像的至少一个候选MV重组时添加至当前图像的候选MV的过程。
若步骤S302中的当前图像块的第二候选MV列表中不包括M个预设填充向量,且将各第三单向MV均添加至当前图像块的第二候选MV列表中后,得到的第三更新后的第二候选MV列表中MV的数量小于预设阈值,则添加至少一个预设填充向量至第三更新后的第二候选MV列表中,得到包括的MV的数量与预设填充向量的数量的和为预设阈值的更新后的第二候选MV列表。
若步骤S302中的当前图像块的第二候选MV列表中不包括预设填充向量,将至少一个第三单向MV中的至少部分添加至当前图像块的第二候选MV列表,得到更新后的第二候选MV列表,包括:将至少一个第三单向MV中的t个单向MV替换第二更新后的第二候选MV列表中的t个预设填充向量,以得到更新后的第二候选MV列表,H+S+t=N,H+S+t≤M。
可以理解的是,最终得到的更新后的MV列表,还可以包括第四候选 MV获取方法得到的候选MV,第五候选MV获取方法得到的候选MV,……,第J候选MV获取方法得到的候选MV。J的取值本实施例中并不限制。
在第一候选MV列表中包括的MV的数量少于第一预设阈值时,还可先采用本实施例的方法更新第一候选MV列表,即丰富第一候选MV列表,此时当前图像块的第二候选MV表中包括的MV可基于第一候选MV列表中的部分候选MV技术获取的MV重组后的第二候选MV表,也可基于第二候选MV列表中的全部候选MV技术获取的MV进行重组后得到第二候选MV表。
本实施例中,为图像块构建的第二候选MV列表中包括了至少两种候选MV获取方法得到MV,丰富了合并模式下用于编码或解码的第二候选MV列表中的候选MV,减小了经编码后的原始图像块再解码后得到的图像块与原始图像块的差距,即减少了图像块在编码过程中的特征丢失率。
上述结合图2~图5为本申请实施例提供的一种方式下的候选MV列表构建方法进行了说明。下面采用结合图6~图8对本申请实施例提供的另一种方式下的候选MV列表构建方法进行说明。
图6~图8所示的实施例中的方法适用于VCC标准中的三角形合并模式。
图6为本申请实施例提供的候选MV列表构建方法的流程图三,本实施例中在构建候选MV列表的过程中,不限制用于获取候选MV的时域候选块的数量,限制限制用于获取候选MV的空域候选块的数量。参见图6,本实施例的方法包括:
步骤S401、按照预设的空域MV获取顺序获取当前图像块的空域候选块的空域MV。
具体地,预设的空域MV获取顺序依次为:与当前图像块的第一角相邻的且位于当前图像块第一侧的第一图像块、与当前图像块的第二角相邻的且位于当前图像块上方的第二图像块、与当前图像块的第二角相邻的且位于当前图像块上方的第三图像块、与当前图像块的第一角相邻的且位于当前图像块第一侧的第四图像块、与当前图像块的第三角相邻的且位于当前图像块第一侧的第五图像块。其中,第一角和第二角为对角。即获取各空域候选块的空域MV的顺序依次为第一图像块、第二图像块、第三图像块、第四图像块、第五图像块。
参见图3,第一图像块可为图3中标号1的图像块,第二图像块可为图3 中标号2的图像块,第三图像块可为图3中标号3的图像块,第四图像块可为图3中标号4的图像块,第五图像块可为图3中标号5的图像块。
步骤S402、在获取完排序在前k的k个空域候选块的空域MV后,判断排序在前k的k个空域候选块的空域MV是否均能获取到;当前图像块的空域候选块的总数为K个,1≤k≤K。
具体地,k可为4,K可为5。
在k为4时,在依次获取完第一图像块、第二图像块、第三图像块和第四图像块的MV后,判断第一图像块、第二图像块、第三图像块和第四图像块的MV是否均能获取到。
若排序在前k的k个空域候选块的空域MV均能获取到,则执行步骤S403~步骤S404:
步骤S403、将排序在前k的k个空域候选块的空域MV添加至预选MV列表。
具体地,排序在前k的k个空域候选块的空域MV在预选MV列表中的顺序与k个空域候选块的空域MV的获取顺序相同。
若排序在前k的k个空域候选块中存在不能够获取到空域MV的候选块,则执行步骤S404~步骤S406:
步骤S404、按照预设的空域MV获取顺序继续获取排序在第k之后的空域候选块的空域MV,直至能够获取到k个空域候选块的空域MV或者第K个空域候选块的MV获取完毕且能够获取到MV的空域候选块的总数量小于等于k个;
具体地,比如k=4,第一图像块、第二图像块、第三图像块和第四图像块中存在不能够获取到MV的图像块,则继续获取第五图像块的空域MV。
步骤S405、将获取到的各空域MV添加至预选MV列表。
具体地,获取到的各空域MV在预选MV列表中的顺序与预设的空域MV获取顺序中的顺序相同。
步骤S406、按照预设的时域MV获取顺序获取当前图像块的F个时域候选块的时域MV。
具体地,先获取空域候选块的空域MV,再获取时域候选块的时域MV。
预设的时域MV获取顺序依次为:当前图像块的第四角相邻的且位于当 前图像块第二侧的第六图像块,当前图像块在邻近已编码图像中的同位图像块。其中,第四角和第三角为对角。即获取各时域候选块的时域MV的顺序依次为第六图像块、当前图像块在邻近已编码图像中的同位图像块。
参见图3,第六图像块可为图3中标号6的图像块,当前图像块在邻近已编码图像中的同位图像块可为图3中标号为7的图像块。
其中,存在至少一个时域候选块的时域MV获取不到的情况。也就是说可能获取不到当前图像块的时域候选块的时域MV。
步骤S406、将获取到的各时域MV添加至预选MV列表,得到新的预选MV列表。
若没有获取到当前图像块的时域候选块的时域MV,则新的预选MV列表中不存在时域MV,新的预选MV列表即为步骤S403或者步骤S405中得到的预选MV列表。
步骤S407、对新的预选MV列表中的MV进行重组,得到包括的MV均为单向MV的候选MV列表。
该步骤参照图2所示的实施例中将第一MV表中的当前图像的至少一个候选MV重组,得到当前图像的候选MV的过程,本实施例中不再赘述。
本实施例中限制用于获取候选MV的空域候选块的数量,简化了构建当前图像块的候选列表的顺序。
图7为本申请实施例提供的候选MV列表构建方法的流程图四,本实施例中在构建候选MV列表的过程中,限制用于获取候选MV的时域候选块的数量,不限制用于获取候选MV的空域候选块的数量。参见图7,本实施例的方法包括:
步骤S501、按照预设的空域MV获取顺序获取当前图像块的K个空域候选块的空域MV;当前图像块的空域候选块的总数为K个。
具体地,预设的空域MV获取顺序参照上一实施例中的阐述,此处不再赘述。
步骤S502、将获取到的各空域MV添加至预选MV列表中。
步骤S503、按照预设的时域MV获取顺序获取当前图像块的时域候选块的时域MV。
具体地,预设的时域MV获取顺序参照上一实施例中的阐述,此处不再赘述。
步骤S504、在获取完排序在前f的f个时域候选块的空域MV后,判断获取顺序在前f的f个时域候选块的MV是否均能获取到;当前图像块的时域候选块的总数为F个,1≤f≤F。
具体地,f可为1,F可为2。
在f为1时,在获取完第六图像块的MV后,判断第六图像块的MV是否能获取到。
若排序在前f的f个时域候选块的时域MV均能获取到,则执行步骤S505:
步骤S505、将排序在前f的f个时域候选块的时域MV添加至预选MV列表,得到新的预选MV列表。
具体地,将排序在前f的f个时域候选块的时域MV添加至步骤S502中得到的预选MV列表中,得到新的预选MV列表。
若获取顺序在前f的f个时域候选块中存在不能够获取到时域MV的候选块,则执行步骤S506~步骤S507:
步骤S506、按照预设的时域MV获取顺序继续获取排序在第f之后的时域候选块的时域MV,直至能够获取到f个时域候选块的时域MV或者第F个时域候选块的MV已获取完毕且能够获取到MV的时域候选块的总数量小于等于f个。
具体地,比如没有获取到第六图像块的MV,则继续获取当前图像块在邻近已编码图像中的同位图像块的MV。
步骤S507、将获取到的各时域MV添加至预选MV列表,得到新的预选MV列表。
将获取顺序在前f的f个时域候选块的时域MV添加至步骤S502中得到的预选MV列表中,得到新的预选MV列表。
步骤S508、对新的预选MV列表中的MV进行重组,得到包括的MV均为单向MV的候选MV列表。
该步骤参照图2所示的实施例中将第一MV表中的当前图像的至少一个候选MV重组,得到当前图像的候选MV的过程,本实施例中不再赘述。
本实施例中限制用于获取候选MV的时域候选块的数量,简化了构建当 前图像块的候选列表的顺序。
图8为本申请实施例提供的候选MV列表构建方法的流程图五,本实施例中在构建候选MV列表的过程中,即限制用于获取候选MV的时域候选块的数量又限制限制用于获取候选MV的空域候选块的数量。参见图8,本实施例的方法包括:
步骤S601、按照预设的空域MV获取顺序获取当前图像块的空域候选块的空域MV。
步骤S602、在获取完排序在前k的k个空域候选块的空域MV后,判断排序在前k的k个空域候选块的空域MV是否均能获取到;当前图像块的空域候选块的总数为K个,1≤k≤K;
若排序在前k的k个空域候选块的空域MV均能获取到,则执行步骤S603;
步骤S603、则将排序在前k的k个空域候选块的空域MV添加至预选MV列表。
若排序在前k的k个空域候选块中存在不能够获取到MV的候选块,则执行步骤S604~步骤S605;
步骤S604、按照预设的空域MV获取顺序继续获取排序在第k之后的空域候选块的空域MV,直至能够获取到k个空域候选块的空域MV或者第K个空域候选块的空域MV获取完毕且能够获取到MV的空域候选块的总数量小于等于k个。
步骤S605、将获取到的各空域MV添加至预选MV列表。
步骤S606、按照预设的时域MV获取顺序获取当前图像块的时域候选块的时域MV。
步骤S607、判断排序在前f的f个时域候选块的MV是否均能获取到;
若排序在前f的时域候选块的时域MV均能获取到,则执行步骤S608~步骤S609:
步骤S608、将获取顺序在前f的f个时域候选块的时域MV添加至预选MV列表,得到新的预选列表;
具体地,将获取顺序在前f的时域候选块的时域MV添加至步骤S603或 步骤S605中得到预选MV列表,得到新的预选MV列表。
若排序在前前f的f个时域候选块中存在不能够获取到的时域MV的时域候选块,则执行步骤S609~步骤S610:
步骤S609、按照预设的时域MV获取顺序继续获取排序在第f之后的时域候选块的MV,直至能够获取到f个时域候选块的时域MV或者第F个时域候选块的MV已获取完毕且能够获取到MV的时域候选块的总数量小于等于f个。
步骤S610、将获取到的各时域MV,添加至预选MV列表,得到新的预选列表。
具体地,将获取顺序在前f的时域候选块的时域MV添加至步骤S603或步骤S605中得到预选MV列表,得到新的预选MV列表。
步骤S611、对新的预选MV列表中的MV进行重组,得到包括的MV均为单向MV的候选MV列表。
本实施中步骤S601~步骤S611的具体实现参照图6和图8所示的实施例,此处不再赘述。
本实施例中即限制用于获取候选MV的空域候选块的数量,又限制了获取候选MV的时域候选块的数量,简化了构建当前图像块的候选列表的顺序。
图9为本申请实施例提供的候选MV列表构建装置的结构示意图一,参见图9,本实施例的装置包括:获取模块61和重组模块62。
获取模块61,在帧间预测模式为第一合并模式时,获取第一合并模式下的当前图像块的第一候选MV列表;
重组模块62,用于在帧间预测模式为第二合并模式时,获取当前图像块的第一候选MV列表,若第一候选MV列表中包括双向MV,则对第一候选MV列表中的MV进行重组,得到第二合并模式下的当前图像块的第二候选MV列表。
在一种可能的设计中,所述获取模块61,具体用于:
根据所述当前图像块的至少一个候选MV,构建所述第一候选MV列表,所述至少一个候选MV是通过第一合并模式对应的候选MV获取方法所得到的。
本实施例的装置,可以用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图10为本申请实施例提供的候选MV列表构建装置的结构示意图二,参见图10,本实施例的装置包括:更新模块63。
所述获取模块61,还用于:获取采用至少一种其它候选MV获取方法得到的所述当前图像块的至少一个其它候选MV;
所述更新模块63,用于根据所述至少一个其它候选MV,更新所述第二第二候选MV列表,得到更新后的第二第二候选MV列表,所述更新后的第二第二候选MV列表包括的MV的数量小于或等于所述预设阈值;所述更新后的第二第二候选MV列表用于当前图像块的编码或解码。
在一种可能的设计中,所述第二候选MV列表中包括M个预设填充向量,所述第二候选MV列表包括的MV的数量与所述M之和为所述预设阈值;
所述更新模块63,具体用于:根据所述至少一个其它候选MV,确定至少一个单向MV;以及
将所述至少一个单向MV中的N个单向MV替换所述第二候选MV列表中的N个预设填充向量,以得到所述更新后的第二候选MV列表,所述N≤M。
在一种可能的设计中,所述第二候选MV列表中不包括M个预设填充向量,所述第二候选MV列表包括的MV的数量与所述M之和为所述预设阈值。
在一种可能的设计中,所述更新模块63,具体用于:
根据所述至少一个其它候选MV,确定至少一个单向MV;
确定将所述至少一个单向MV均添加至所述第二候选MV列表后得到的第二候选MV列表中MV的数量小于所述预设阈值;
添加至少一个所述预设填充向量至将所述至少一个单向MV均添加至所述第二候选MV列表后得到的第二候选MV列表中,得到包括的MV的数量与所述预设填充向量的数量之和为所述预设阈值的所述更新后的第二候选MV列表。
在一种可能的设计中,所述获取模块61,具体用于:
获取采用第一候选MV获取方法所得到的所述当前图像块的至少一个第一候选MV;
所述更新模块63,具体用于:
根据所述至少一个第一候选MV,更新所述第二候选MV列表,得到更新后的第二候选MV列表。
在一种可能的设计中,所述获取模块61,具体用于:
获取采用第一候选MV获取方法所得到的所述当前图像块的至少一个第一候选MV和获取采用第二候选MV获取方法所得到的所述当前图像块的至少一个第二候选MV;
所述更新模块63,具体用于:
根据所述至少一个第一候选MV,更新所述第二候选MV列表,得到第一更新后的第二候选MV列表;
确定第一更新后的第二候选MV列表包括的MV的数量小于所述预设阈值;
根据所述至少一个第二候选MV,更新所述第一更新后的第二候选MV列表,得到所述更新后的第二候选MV列表。
在一种可能的设计中,所述获取模块61,具体用于:
获取采用第一候选MV获取方法所得到的所述当前图像块的至少一个第一候选MV、获取采用第二候选MV获取方法所得到的所述当前图像块的至少一个第二候选MV以及获取采用第三候选MV获取方法所得到所述当前图像块的至少一个第三候选MV;
所述更新模块63,具体用于:
根据所述至少一个第一候选MV,更新所述第二候选MV列表,得到第一更新后的第二候选MV列表;
确定所述第一更新后的第二候选MV列表中MV的数量小于所述预设阈值;
根据所述至少一个第二候选MV,更新所述第一更新后的第二候选MV列表,得到第二更新后的第二候选MV列表;
确定所述第二更新后的第二候选MV列表中MV的数量小于所述预设阈值;
根据所述至少一个第三候选MV,更新所述第二更新后的第二候选MV列表,得到所述更新后的第二候选MV列表。
在一种可能的设计中,至少一种其它候选MV获取方法包括如下中的至少一项:
基于历史信息的运动矢量预测HMVP技术获取候选MV的方法、基于运动矢量残差合并MMVD技术获取候选MV的方法、基于成对平均数技术获取候选MV的方法。
在一种可能的设计中,所述第一候选MV获取方法为基于历史信息的运动矢量预测HMVP技术获取候选MV的方法。
在一种可能的设计中,所述第三候选MV获取方法为基于成对平均数技术获取候选MV的方法。
在一种可能的设计中,所述第二候选MV获取方法为基于运动矢量残差合并MMVD技术获取候选MV的方法。
在一种可能的设计中,所述预设阈值为4~12中的任一数值。
在一种可能的设计中,所述预设填充向量为包括的分量均为0的向量。
在一种可能的设计中,所述获取模块,具体用于:
按照所述预设规则所指示的所述当前图像块的至少一个候选MV的添加顺序,将所述当前图像块的至少一个候选MV添加至第一候选MV列表中,得到所述第一候选MV列表。
在一种可能的设计中,所述重组模块,具体用于:
对于所述第一候选MV列表中的每个单向MV:
对于所述第一候选MV列表中的每个单向MV:
按照单向MV在所述第一候选MV列表中的顺序,将该单向MV添加至候选MV列表中,并确定候选MV表中的MV的数量小于所述预设阈值;
对于所述第一候选MV列表中每个双向MV组:
按照双向MV组在所述第一候选MV列表中的顺序,将该双向MV组中的前向MV添加至第二候选MV列表中,确定第二候选MV表中的MV的数量小于所述预设阈值;以及,
确定各双向MV组中的前向MV添加至第二候选MV表中后,第二候选MV表中的MV的数量小于所述预设阈值,则对于所述第一候选MV列表中每个双向MV组:
按照双向MV组在所述第一候选MV列表中的顺序,将该双向MV组中 的后向MV添加至第二候选MV列表中,确定第二候选MV表中的MV的数量小于所述预设阈值;以及,
确定各双向MV组中的后向MV添加至第二候选MV表中后,第二候选MV表中的MV的数量小于所述预设阈值之后,则对于所述第一候选MV列表中每个双向MV组:
按照双向MV组在所述第一候选MV列表中的顺序,将该双向MV组中的前向MV与后向MV的平均值添加至第二候选MV列表中;
若第二候选MV表中的MV的数量小于所述预设阈值且所述第一候选MV列表中在该双向MV组之后存在双向MV组,则将所述第一候选MV列表中在该双向MV组之后的第一个双向MV组中的前向MV与后向MV的平均值添加至第二候选MV列表中;
若第二候选MV表中的MV的数量等于所述预设阈值,或者,第二候选MV表中的MV的数量小于所述预设阈值且所述第一候选MV列表中在该双向MV组之后不存在双向MV组,则确定将该双向MV组中的前向MV与后向MV的平均值添加至第二候选MV列表中后的第二候选列表为所述当前图像块的第二候选列表。
本实施例的装置,可以用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图11为本申请实施例提供的电子设备的结构示意图,参见图11,本实施例的服务器包括:处理器32、存储器31和通信总线33,通信总线33用于连接处理器32和存储器31,处理器32与存储器31耦合;
所述存储器31用于,存储计算机程序;
所述处理器32用于,调用所述存储器31中存储的计算机程序,以实现上述方法实施例中的方法。
其中,计算机程序还可存储在电子设备外部的存储器中。
本申请实施例提供一种可读存储介质,包括程序或指令,当所述程序或指令在计算机上运行时,如上述任意方法实施例所述的方法被执行。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可 读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (36)

  1. 一种候选MV列表构建方法,其特征在于,包括:
    在帧间预测模式为第一合并模式时,构建第一合并模式下的当前图像块的第一候选MV列表;
    在帧间预测模式为第二合并模式时,获取当前图像块的所述第一候选MV列表,若第一候选MV列表中包括双向MV,则对第一候选MV列表中的MV进行重组,得到第二合并模式下的当前图像块的第二候选MV列表。
  2. 根据权利要求1所述的方法,其特征在于,获取第一合并模式下的当前图像块的第一候选MV列表,包括:
    根据所述当前图像块的至少一个候选MV,构建所述第一候选MV列表,所述至少一个候选MV是通过第一合并模式对应的候选MV获取方法所得到的。
  3. 根据权利要求2所述的方法,其特征在于,所述第二候选MV列表包括的MV的数量小于预设阈值,则所述方法还包括:
    获取采用至少一种其它候选MV获取方法得到的所述当前图像块的至少一个其它候选MV;
    根据所述至少一个其它候选MV,更新所述第二候选MV列表,得到更新后的第二候选MV列表,所述更新后的第二候选MV列表包括的MV的数量小于或等于所述预设阈值;所述更新后的第二候选MV列表用于当前图像块的编码或解码。
  4. 根据权利要求3所述的方法,其特征在于,所述第二候选MV列表中包括M个预设填充向量,所述第二候选MV列表包括的MV的数量与所述M之和为所述预设阈值;
    根据所述至少一个其它候选MV,更新所述第二候选MV列表,得到更新后的第二候选MV列表,包括:
    根据所述至少一个其它候选MV,确定至少一个单向MV;
    将所述至少一个单向MV中的N个单向MV替换所述第二候选MV列表中的N个预设填充向量,以得到所述更新后的第二候选MV列表,所述N≤M。
  5. 根据权利要求3所述的方法,其特征在于,所述第二候选MV列表中 不包括M个预设填充向量,所述第二候选MV列表包括的MV的数量与所述M之和为所述预设阈值。
  6. 根据权利要求5所述的方法,其特征在于,所述根据所述至少一个其它候选MV,更新所述第二候选MV列表,得到更新后的第二候选MV列表,包括:
    根据所述至少一个其它候选MV,确定至少一个单向MV;
    确定将所述至少一个单向MV均添加至所述第二候选MV列表后得到的第二候选MV列表中MV的数量小于所述预设阈值;
    添加至少一个所述预设填充向量至将所述至少一个单向MV均添加至所述第二候选MV列表后得到的第二候选MV列表中,得到包括的MV的数量与所述预设填充向量的数量之和为所述预设阈值的所述更新后的第二候选MV列表。
  7. 根据权利要求3~6任一项所述的方法,其特征在于,获取采用至少一种其它候选MV获取方法得到的所述当前图像块的至少一个候选MV,包括:
    获取采用第一候选MV获取方法所得到的所述当前图像块的至少一个第一候选MV;
    根据所述至少一个其它候选MV,更新所述第二候选MV列表,得到更新后的第二候选MV列表,包括:
    根据所述至少一个第一候选MV,更新所述第二候选MV列表,得到更新后的第二候选MV列表。
  8. 根据权利要求3~6任一项所述的方法,其特征在于,获取采用至少一种其它候选MV获取方法得到的所述当前图像块的至少一个候选MV,包括:
    获取采用第一候选MV获取方法所得到的所述当前图像块的至少一个第一候选MV和获取采用第二候选MV获取方法所得到的所述当前图像块的至少一个第二候选MV;
    根据所述至少一个其它候选MV,更新所述第二候选MV列表,得到更新后的第二候选MV列表,包括:
    根据所述至少一个第一候选MV,更新所述第二候选MV列表,得到第一更新后的第二候选MV列表;
    确定第一更新后的第二候选MV列表包括的MV的数量小于所述预设阈值;
    根据所述至少一个第二候选MV,更新所述第一更新后的第二候选MV列表,得到所述更新后的第二候选MV列表。
  9. 根据权利要求3~6任一项所述的方法,其特征在于,获取采用至少一种其它候选MV获取方法得到的所述当前图像块的至少一个候选MV,包括:
    获取采用第一候选MV获取方法所得到的所述当前图像块的至少一个第一候选MV、获取采用第二候选MV获取方法所得到的所述当前图像块的至少一个第二候选MV以及获取采用第三候选MV获取方法所得到所述当前图像块的至少一个第三候选MV;
    根据所述至少一个其它候选MV,更新所述第二候选MV列表,得到更新后的第二候选MV列表,包括:
    根据所述至少一个第一候选MV,更新所述第二候选MV列表,得到第一更新后的第二候选MV列表;
    确定所述第一更新后的第二候选MV列表中MV的数量小于所述预设阈值;
    根据所述至少一个第二候选MV,更新所述第一更新后的第二候选MV列表,得到第二更新后的第二候选MV列表;
    确定所述第二更新后的第二候选MV列表中MV的数量小于所述预设阈值;
    根据所述至少一个第三候选MV,更新所述第二更新后的第二候选MV列表,得到所述更新后的第二候选MV列表。
  10. 根据权利要求3~6任一项所述的方法,其特征在于,至少一种其它候选MV获取方法包括如下中的至少一项:
    基于历史信息的运动矢量预测HMVP技术获取候选MV的方法、基于运动矢量残差合并MMVD技术获取候选MV的方法、基于成成对平均数技术获取候选MV的方法。
  11. 根据权利要求7所述的方法,其特征在于,所述第一候选MV获取方法为基于历史信息的运动矢量预测HMVP技术获取候选MV的方法。
  12. 根据权利要求8所述的方法,其特征在于,所述第二候选MV获取 方法为基于运动矢量残差合并MMVD技术获取候选MV的方法
  13. 根据权利要求9所述的方法,其特征在于,所述第三候选MV获取方法为基于成对平均数技术获取候选MV的方法。
  14. 根据权利要求2~6任一项所述的方法,其特征在于,所述预设阈值为4~12中的任一数值。
  15. 根据权利要求4~6任一项所述的方法,其特征在于,所述预设填充向量为包括的分量均为0的向量。
  16. 根据权利要求2所述的方法,其特征在于,根据所述当前图像块的至少一个候选MV,构建所述第一候选MV列表,包括:
    按照所述第一合并模式下的所述当前图像块的至少一个候选MV的添加顺序,将所述当前图像块的至少一个候选MV添加至第一候选MV列表中。
  17. 根据权利要求16所述的方法,其特征在于,所述对第一候选MV列表中的MV进行重组,得到第二合并模式下的当前图像块的第二候选MV列表,包括:
    对于所述第一候选MV列表中的每个单向MV:
    按照单向MV在所述第一候选MV列表中的顺序,将该单向MV添加至候选MV列表中,并确定候选MV表中的MV的数量小于所述预设阈值;
    对于所述第一候选MV列表中每个双向MV组:
    按照双向MV组在所述第一候选MV列表中的顺序,将该双向MV组中的前向MV添加至第二候选MV列表中,确定第二候选MV表中的MV的数量小于所述预设阈值;以及,
    确定各双向MV组中的前向MV添加至第二候选MV表中后,第二候选MV表中的MV的数量小于所述预设阈值,则对于所述第一候选MV列表中每个双向MV组:
    按照双向MV组在所述第一候选MV列表中的顺序,将该双向MV组中的后向MV添加至第二候选MV列表中,确定第二候选MV表中的MV的数量小于所述预设阈值;以及,
    确定各双向MV组中的后向MV添加至第二候选MV表中后,第二候选MV表中的MV的数量小于所述预设阈值之后,则对于所述第一候选MV列表中每个双向MV组:
    按照双向MV组在所述第一候选MV列表中的顺序,将该双向MV组中的前向MV与后向MV的平均值添加至第二候选MV列表中;
    若第二候选MV表中的MV的数量小于所述预设阈值且所述第一候选MV列表中在该双向MV组之后存在双向MV组,则将所述第一候选MV列表中在该双向MV组之后的第一个双向MV组中的前向MV与后向MV的平均值添加至第二候选MV列表中;
    若第二候选MV表中的MV的数量等于所述预设阈值,或者,第二候选MV表中的MV的数量小于所述预设阈值且所述第一候选MV列表中在该双向MV组之后不存在双向MV组,则确定将该双向MV组中的前向MV与后向MV的平均值添加至第二候选MV列表中后的第二候选列表为所述当前图像块的第二候选列表。
  18. 一种候选MV列表构建装置,其特征在于,包括:
    获取模块,在帧间预测模式为第一合并模式时,获取第一合并模式下的当前图像块的第一候选MV列表;
    重组模块,用于在帧间预测模式为第二合并模式时,获取当前图像块的第一候选MV列表,若第一候选MV列表中包括双向MV,则对第一候选MV列表中的MV进行重组,得到第二合并模式下的当前图像块的第二候选MV列表。
  19. 根据权利要求18所述的装置,其特征在于,所述获取模块,具体用于:
    根据所述当前图像块的至少一个候选MV,构建所述第一候选MV列表,所述至少一个候选MV是通过第一合并模式对应的候选MV获取方法所得到的。
  20. 根据权利要求19所述的装置,其特征在于,所述获取模块,还用于:
    获取采用至少一种其它候选MV获取方法得到的所述当前图像块的至少一个其它候选MV;
    还包括,更新模块,所述更新模块,用于根据所述至少一个其它候选MV,更新所述第二候选MV列表,得到更新后的第二候选MV列表,所述更新后的第二候选MV列表包括的MV的数量小于或等于所述预设阈值;所述更新后的第二候选MV列表用于当前图像块的编码或解码。
  21. 根据权利要求20所述的装置,其特征在于,所述第二候选MV列表中包括M个预设填充向量,所述第二候选MV列表包括的MV的数量与所述M之和为所述预设阈值;
    所述更新模块,具体用于:
    根据所述至少一个其它候选MV,确定至少一个单向MV;
    将所述至少一个单向MV中的N个单向MV替换所述第二候选MV列表中的N个预设填充向量,以得到所述更新后的第二候选MV列表,所述N≤M。
  22. 根据权利要求20所述的装置,其特征在于,所述第二候选MV列表中不包括M个预设填充向量,所述第二候选MV列表包括的MV的数量与所述M之和为所述预设阈值。
  23. 根据权利要求22所述的装置,其特征在于,所述更新模块,具体用于:
    根据所述至少一个其它候选MV,确定至少一个单向MV;
    确定将所述至少一个单向MV均添加至所述第二候选MV列表后得到的第二候选MV列表中MV的数量小于所述预设阈值;
    添加至少一个所述预设填充向量至将所述至少一个单向MV均添加至所述第二候选MV列表后得到的第二候选MV列表中,得到包括的MV的数量与所述预设填充向量的数量之和为所述预设阈值的所述更新后的第二候选MV列表。
  24. 根据权利要求20~23任一项所述的装置,其特征在于,所述获取模块,具体用于:
    获取采用第一候选MV获取方法所得到的所述当前图像块的至少一个第一候选MV;
    所述更新模块,具体用于:
    根据所述至少一个第一候选MV,更新所述第二候选MV列表,得到更新后的第二候选MV列表。
  25. 根据权利要求20~23任一项所述的装置,其特征在于,所述获取模块,具体用于:
    获取采用第一候选MV获取方法所得到的所述当前图像块的至少一个第 一候选MV和获取采用第二候选MV获取方法所得到的所述当前图像块的至少一个第二候选MV;
    所述更新模块,具体用于:
    根据所述至少一个第一候选MV,更新所述第二候选MV列表,得到第一更新后的第二候选MV列表;
    确定第一更新后的第二候选MV列表包括的MV的数量小于所述预设阈值;
    根据所述至少一个第二候选MV,更新所述第一更新后的第二候选MV列表,得到所述更新后的第二候选MV列表。
  26. 根据权利要求20~23任一项所述的装置,其特征在于,所述获取模块,具体用于:
    获取采用第一候选MV获取方法所得到的所述当前图像块的至少一个第一候选MV、获取采用第二候选MV获取方法所得到的所述当前图像块的至少一个第二候选MV以及获取采用第三候选MV获取方法所得到所述当前图像块的至少一个第三候选MV;
    所述更新模块,具体用于:
    根据所述至少一个第一候选MV,更新所述第二候选MV列表,得到第一更新后的第二候选MV列表;
    确定所述第一更新后的第二候选MV列表中MV的数量小于所述预设阈值;
    根据所述至少一个第二候选MV,更新所述第一更新后的第二候选MV列表,得到第二更新后的第二候选MV列表;
    确定所述第二更新后的第二候选MV列表中MV的数量小于所述预设阈值;
    根据所述至少一个第三候选MV,更新所述第二更新后的第二候选MV列表,得到所述更新后的第二候选MV列表。
  27. 根据权利要求20~23任一项所述的装置,其特征在于,其特征在于,至少一种其它候选MV获取方法包括如下中的至少一项:
    基于历史信息的运动矢量预测HMVP技术获取候选MV的方法、基于运动矢量残差合并MMVD技术获取候选MV的方法、基于成对平均数技术获 取候选MV的方法。
  28. 根据权利要求24所述的装置,其特征在于,所述第一候选MV获取方法为基于历史信息的运动矢量预测HMVP技术获取候选MV的方法。
  29. 根据权利要求25所述的装置,其特征在于,所述第二候选MV获取方法为基于运动矢量残差合并MMVD技术获取候选MV的方法
  30. 根据权利要求26所述的装置,其特征在于,所述第三候选MV获取方法为基于成对平均数技术获取候选MV的方法。
  31. 根据权利要求18~23任一项所述的装置,其特征在于,所述预设阈值为4~12中的任一数值。
  32. 根据权利要求21~23任一项所述的装置,其特征在于,所述预设填充向量为包括的分量均为0的向量。
  33. 根据权利要求19所述的装置,其特征在于,所述获取模块,具体用于:
    按照所述第一合并模式下的所述当前图像块的至少一个候选MV的添加顺序,将所述当前图像块的至少一个候选MV添加至第一候选MV列表中。
  34. 根据权利要求18所述的装置,其特征在于,所述重组模块,具体用于:
    对于所述第一候选MV列表中的每个单向MV:
    按照单向MV在所述第一候选MV列表中的顺序,将该单向MV添加至候选MV列表中,并确定候选MV表中的MV的数量小于所述预设阈值;
    对于所述第一候选MV列表中每个双向MV组:
    按照双向MV组在所述第一候选MV列表中的顺序,将该双向MV组中的前向MV添加至第二候选MV列表中,确定第二候选MV表中的MV的数量小于所述预设阈值;以及,
    确定各双向MV组中的前向MV添加至第二候选MV表中后,第二候选MV表中的MV的数量小于所述预设阈值,则对于所述第一候选MV列表中每个双向MV组:
    按照双向MV组在所述第一候选MV列表中的顺序,将该双向MV组中的后向MV添加至第二候选MV列表中,确定第二候选MV表中的MV的数量小于所述预设阈值;以及,
    确定各双向MV组中的后向MV添加至第二候选MV表中后,第二候选MV表中的MV的数量小于所述预设阈值之后,则对于所述第一候选MV列表中每个双向MV组:
    按照双向MV组在所述第一候选MV列表中的顺序,将该双向MV组中的前向MV与后向MV的平均值添加至第二候选MV列表中;
    若第二候选MV表中的MV的数量小于所述预设阈值且所述第一候选MV列表中在该双向MV组之后存在双向MV组,则将所述第一候选MV列表中在该双向MV组之后的第一个双向MV组中的前向MV与后向MV的平均值添加至第二候选MV列表中;
    若第二候选MV表中的MV的数量等于所述预设阈值,或者,第二候选MV表中的MV的数量小于所述预设阈值且所述第一候选MV列表中在该双向MV组之后不存在双向MV组,则确定将该双向MV组中的前向MV与后向MV的平均值添加至第二候选MV列表中后的第二候选列表为所述当前图像块的第二候选列表。
  35. 一种可读存储介质,其特征在于,包括程序或指令,当所述程序或指令在计算机上运行时,权利要求1~17任一所述的方法被执行。
  36. 一种电子设备,其特征在于,包括:处理器,所述处理器与存储器耦合;
    所述存储器用于,存储计算机程序;
    所述处理器用于,调用所述存储器中存储的计算机程序,以实现权利要求1~17任一所述的方法。
PCT/CN2019/070157 2019-01-02 2019-01-02 候选mv列表构建方法和装置 WO2020140221A1 (zh)

Priority Applications (8)

Application Number Priority Date Filing Date Title
CN202310664406.9A CN116634172A (zh) 2019-01-02 2019-01-02 候选mv列表构建方法和装置
KR1020217024434A KR20210104907A (ko) 2019-01-02 2019-01-02 후보 mv 리스트 구성 방법 및 장치
JP2021534798A JP2022515725A (ja) 2019-01-02 2019-01-02 候補mvリストの構築方法、プログラム、及び電子デバイス
CN201980005339.1A CN111316646B (zh) 2019-01-02 2019-01-02 候选mv列表构建方法和装置
CN202310665800.4A CN116647694A (zh) 2019-01-02 2019-01-02 候选mv列表构建方法和装置
EP19907819.7A EP3908004A4 (en) 2019-01-02 2019-01-02 METHOD AND DEVICE FOR CONSTRUCTING A LIST OF CANDIDATES MV
PCT/CN2019/070157 WO2020140221A1 (zh) 2019-01-02 2019-01-02 候选mv列表构建方法和装置
US17/366,794 US20210337184A1 (en) 2019-01-02 2021-07-02 Candidate motion vector list construction method and device thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/070157 WO2020140221A1 (zh) 2019-01-02 2019-01-02 候选mv列表构建方法和装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/366,794 Continuation US20210337184A1 (en) 2019-01-02 2021-07-02 Candidate motion vector list construction method and device thereof

Publications (1)

Publication Number Publication Date
WO2020140221A1 true WO2020140221A1 (zh) 2020-07-09

Family

ID=71162804

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/070157 WO2020140221A1 (zh) 2019-01-02 2019-01-02 候选mv列表构建方法和装置

Country Status (6)

Country Link
US (1) US20210337184A1 (zh)
EP (1) EP3908004A4 (zh)
JP (1) JP2022515725A (zh)
KR (1) KR20210104907A (zh)
CN (3) CN116634172A (zh)
WO (1) WO2020140221A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220009952A (ko) 2019-05-21 2022-01-25 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 서브블록 머지 모드에서의 신택스 시그널링
KR20220078600A (ko) 2019-10-18 2022-06-10 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 서브픽처들의 파라미터 세트 시그널링에서의 신택스 제약들

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130208795A1 (en) * 2012-02-09 2013-08-15 Google Inc. Encoding motion vectors for video compression
CN104429078A (zh) * 2012-07-10 2015-03-18 Lg电子株式会社 用于处理视频信号的方法和设备
CN104704837A (zh) * 2012-10-03 2015-06-10 联发科技股份有限公司 三维视频编码中的元素间运动预测的方法及装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR112014013969B1 (pt) * 2011-12-28 2022-05-10 JVC Kenwood Corporation Dispositivo de codificação de vídeo, método de codificação de vídeo, programa de codificação de vídeo, dispositivo de decodificação de vídeo, método de decodificação de vídeo, programa de decodificação de vídeo
US9451277B2 (en) * 2012-02-08 2016-09-20 Qualcomm Incorporated Restriction of prediction units in B slices to uni-directional inter prediction
EP3202143B8 (en) * 2014-11-18 2019-09-25 MediaTek Inc. Method of bi-prediction video coding based on motion vectors from uni-prediction and merge candidate
US11700391B2 (en) * 2017-05-18 2023-07-11 Hfi Innovation Inc. Method and apparatus of motion vector constraint for video coding
WO2019083334A1 (ko) * 2017-10-26 2019-05-02 한국전자통신연구원 비대칭 서브 블록 기반 영상 부호화/복호화 방법 및 장치
CN112219400B (zh) * 2018-11-06 2024-03-26 北京字节跳动网络技术有限公司 依赖位置的对运动信息的存储
EP3864846B1 (en) * 2018-11-20 2024-01-03 Huawei Technologies Co., Ltd. An encoder, a decoder and corresponding methods for merge mode
TWI720753B (zh) * 2018-12-21 2021-03-01 聯發科技股份有限公司 簡化的三角形合併模式候選列表導出的方法以及裝置
EP3884667B1 (en) * 2018-12-25 2024-04-17 Beijing Dajia Internet Information Technology Co., Ltd. Video coding with triangular shape prediction units
US11032574B2 (en) * 2018-12-31 2021-06-08 Tencent America LLC Method and apparatus for video coding

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130208795A1 (en) * 2012-02-09 2013-08-15 Google Inc. Encoding motion vectors for video compression
CN104429078A (zh) * 2012-07-10 2015-03-18 Lg电子株式会社 用于处理视频信号的方法和设备
CN104704837A (zh) * 2012-10-03 2015-06-10 联发科技股份有限公司 三维视频编码中的元素间运动预测的方法及装置

Also Published As

Publication number Publication date
CN111316646B (zh) 2023-06-23
JP2022515725A (ja) 2022-02-22
EP3908004A1 (en) 2021-11-10
KR20210104907A (ko) 2021-08-25
CN116634172A (zh) 2023-08-22
US20210337184A1 (en) 2021-10-28
CN116647694A (zh) 2023-08-25
CN111316646A (zh) 2020-06-19
EP3908004A4 (en) 2022-08-24

Similar Documents

Publication Publication Date Title
US11330294B2 (en) Method and device for image motion compensation
CN110809887B (zh) 用于多参考预测的运动矢量修正的方法和装置
CN110839158B (zh) 变换矩阵选择的系数相关的编解码
US11575926B2 (en) Enhanced decoder side motion vector refinement
US11153598B2 (en) Method and apparatus for video coding using a subblock-based affine motion model
TW202013979A (zh) 整數運動補償
EP2699001B1 (en) A method and a system for video signal encoding and decoding with motion estimation
US11758180B2 (en) Video coding based on multiple sets of subblock motion vectors
US20210044824A1 (en) Method and apparatus for video coding
CN113412623A (zh) 记录仿射模式自适应运动矢量分辨率的上下文
CN113366851A (zh) 对称运动矢量差编解码模式的快速算法
CN113647108A (zh) 基于历史的运动矢量预测
US20200396476A1 (en) Merge candidate reorder based on global motion vector
CN116708816A (zh) 编码设备、解码设备和数据发送设备
US20210337184A1 (en) Candidate motion vector list construction method and device thereof
TW202329691A (zh) 影像編解碼系統中基於模板匹配之移動向量細化
US20230328226A1 (en) Symmetric affine mode
US20230328225A1 (en) Bilateral matching with affine motion
US20230344984A1 (en) Affine models use in affine bilateral matching
US20230093043A1 (en) Method and apparatus for adaptive reordering for reference frames
US20230412794A1 (en) Affine merge mode with translational motion vectors
CN113574885B (zh) 视频解码方法、装置以及电子设备
US20230291908A1 (en) Affine estimation in pre-analysis of encoder
TWI839388B (zh) 簡化的基於歷史的運動矢量預測
US20230396797A1 (en) Translational motion vector coding in affine mode

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: 19907819

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021534798

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 20217024434

Country of ref document: KR

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2019907819

Country of ref document: EP

Effective date: 20210802