EP2207351A1 - The video encoding and decoding method and corresponding codec based on the motion skip mode - Google Patents

The video encoding and decoding method and corresponding codec based on the motion skip mode Download PDF

Info

Publication number
EP2207351A1
EP2207351A1 EP08839871A EP08839871A EP2207351A1 EP 2207351 A1 EP2207351 A1 EP 2207351A1 EP 08839871 A EP08839871 A EP 08839871A EP 08839871 A EP08839871 A EP 08839871A EP 2207351 A1 EP2207351 A1 EP 2207351A1
Authority
EP
European Patent Office
Prior art keywords
macro block
block
view
current
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
EP08839871A
Other languages
German (de)
French (fr)
Other versions
EP2207351A4 (en
Inventor
Sixin Lin
Haitao Yang
Yilin Chang
Junyan Huo
Shan Gao
Lianhuan Xiong
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of EP2207351A1 publication Critical patent/EP2207351A1/en
Publication of EP2207351A4 publication Critical patent/EP2207351A4/en
Ceased legal-status Critical Current

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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/46Embedding additional information in the video signal during the compression process
    • 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/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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Definitions

  • the present invention relates to the field of video coding and decoding technology, and more particularly to a video coding and decoding method and a codec based on a motion skip mode (MSM).
  • MSM motion skip mode
  • a free view-point television with its viewing angle capable of being selected by a viewer
  • a 3-dimensional television (3DTV) capable of playing videos at different viewing angles for viewers at different positions
  • several video cameras are required to simultaneously obtain video signals of the same scenario from different viewing angles at different spatial positions, and effectively compress, encode, and transmit a group of obtained video signals.
  • the group of obtained videos is called multi-view videos, and the compression and coding process on the videos is called multi-view video coding (MVC).
  • MVC multi-view video coding
  • the MVC may be simply implemented through independent coding and transmission of each view-point video signal, and this process is called video simulcast.
  • the video simulcast merely utilizes time correlation in each view-point video signal, and the amount of obtained data increases linearly with the adding of the number of the view-points, so that the coding efficiency is low.
  • the MVC technology mainly focuses on the study of how to effectively utilize the correlations between different view-point images to remove redundant information from different view-point videos, so as to improve the coding efficiency of the MVC.
  • an MSM is provided for multi-view prediction.
  • motion information in an adjacent view-point image is directly employed for the coding of the current view-point image by using high similarity in the motion of the adjacent view-point image, so as to save the bit overhead required by some macro block motion information (MMI) in an encoded image, thereby improving the compression efficiency of the MVC.
  • MMI macro block motion information
  • the MMI includes a 16 ⁇ 16 macro block partition mode, a segmentation mode of each block having an accuracy of 8 ⁇ 8 pixels in the macro block, a reference image index of each 8 ⁇ 8 block in the macro block, and a motion vector of each 4x4 block in the macro block.
  • the MSM mainly includes the following two processes.
  • GDV global disparity vector
  • FIG 1 is a schematic diagram of a process of deducing a GDV in the prior art.
  • a macro block of 16 ⁇ 16 pixels is firstly used as a base unit, and set as an anchor frame in the MVC, that is, a GDV between an encoded image in the block of FIG 1 and a view-point reference image.
  • the GDV is encoded and then transmitted.
  • a GDV cur of a non-anchor frame Imgcur is deduced by using GDV A and GDV B of anchor frames ImgA and ImgB according to the following Formula (1), where POC A , POC B , and POC cur are respectively image sequence numbers having the same time coordinates as ImgA, ImgB, and Imgcur in a group of multi-view videos.
  • GDV cur GDV A + ⁇ POC cur - POC A POC B - POC A ⁇ GDV B - GDV A ⁇
  • a corresponding macro block MB cor of each macro block MB cur in the Imgcur in the view-point reference video image is determined according to the determined GDV cur , and MMI of the MB cor serves as the MMI of the MB cur , so as to implement subsequent motion compensation on the macro block MB cur by using the motion information.
  • a corresponding macro block of the reference frame is found in the image for prediction to obtain residual data, and an overhead RDCostMBcur of the macro block MB cur using the MSM mode is calculated. If the calculated overhead RDCostMBcur of the macro block MB cur is smaller than the corresponding mode overhead of other macro blocks, the MSM is selected as the final mode of the macro block MB cur .
  • the currently encoded image has two view-point reference images, and if one of the two view-point reference images fails to provide valid MMI for the current macro block MB cur in the encoded frame, the MMI in the other view-point reference image is employed for measuring whether the MSM mode is the final mode of the current macro block MB cur .
  • FIG 2 is a schematic diagram showing that the encoded image has two view-point reference images.
  • an image B2 at a position of S0/T2 is firstly configured to deduce the MMI of the current macro block MB cur , and if the corresponding macro block in the image B2 is encoded by using an intra-frame mode, an image B2 at a position of S2/T2 is configured to deduce the MMI of the current macro block MB cur .
  • a coding end In order to notify a decoding end whether each macro block in the image uses the MSM mode, a coding end needs to add a motion_skip_flag in an encoded stream at the macro block level, and if the flag is set to 1, it indicates that the current macro block adopts the MSM mode.
  • the desired MMI is selected from the motion information of all the view-point reference images according to a fixed priority selection order in the MSM, so that the MMI of the view-point reference image of a low priority cannot be effectively used.
  • the optimal MMI is selected for each macro block in the currently encoded image from the MMI of the corresponding macro blocks in all the view-point reference images, according to an optimality principle of an overhead RDCostMBcur of using the MSM mode, that is, a rate-distortion cost (RDCost), and a selection flag of the view-point reference image is added in the encoded stream of each macro block in the encoded image, so as to notify the decoder end of the information about the view-point reference image that the MMI of the current macro block belongs to through the flag.
  • RDCost rate-distortion cost
  • the improved MSM solution may be employed to flexibly select the MMI of the current macro block in the case that the currently encoded image has a plurality of view-point reference images, thereby improving the efficiency of the MVC.
  • the inventors found that, no matter in the existing MSM technology or the improved MSM technology, a macro block of 16 ⁇ 16 pixels is used as a base unit to deduce the GDV and deduce the MMI at the corresponding position in the reference image. In this manner, the GDV between the currently encoded image and the view-point reference image is inaccurately obtained, and the MMI of the currently encoded macro block at the corresponding position in the view-point reference image is also inaccurately obtained.
  • the GDV has a low accuracy, it is difficult to accurately find the corresponding macro block of each macro block in the currently encoded image from the view-point reference image by using the GDV, and thus the accuracy of the MMI obtained from the corresponding macro block directed by the GDV is also low.
  • the present invention is directed to a video coding and decoding method and a codec based on an MSM, so as to obtain MMI of a currently encoded macro block at a corresponding position in a view-point reference image more accurately, thereby improving a coding efficiency of the MSM.
  • An embodiment of the present invention provides an MVC method based on an MSM, which includes: determining a corresponding reference block of a current macro block to be encoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; and encoding the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • An embodiment of the present invention provides a multi-view video decoding method based on an MSM, which includes: determining a corresponding reference block of a current macro block to be decoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; and decoding the current macro block to be decoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • An embodiment of the present invention provides a multi-view video coder based on an MSM, which includes: a unit, configured to determine a corresponding reference block of a current macro block to be encoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; and a unit, configured to encode the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • An embodiment of the present invention provides a multi-view video decoder based on an MSM, which includes: a unit, configured to determine a corresponding reference block of a current macro block to be decoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; and a unit, configured to decode the current macro block to be decoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • An embodiment of the present invention provides an MVC method based on an MSM, which includes: for each view-point reference image of a current image, determining a corresponding reference block of a current macro block to be encoded in the view-point reference image, according to a direction of a GDV from the current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; performing MSM coding measurement on the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block of the current macro block to be encoded in each view-point reference image belongs to; selecting an optimal macro block from the macro blocks, according to a rate-distortion performance optimality principle based on measurement results; and encoding the current macro block to be encoded, according to motion information of the selected macro block, and carrying in an encoded stream a flag of the view-point reference image where the selected macro block is located.
  • An embodiment of the present invention provides a multi-view video decoding method based on an MSM, which includes: decoding a view-point reference image flag carried in a received encoded stream; determining a corresponding reference block of a current macro block to be decoded in an obtained view-point reference image identified by the view-point reference image flag, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; and decoding the current macro block to be decoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • An embodiment of the present invention provides a multi-view video coder based on an MSM, which includes: a unit, configured to, for each view-point reference image of a current image, determine a corresponding reference block of a current macro block to be encoded in each view-point reference image, according to a direction of a disparity vector from the current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; a unit, configured to perform MSM coding measurement on the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block of the current macro block to be encoded in each view-point reference image belongs to; a unit, configured to select an optimal macro block from the macro blocks, according to a rate-distortion performance optimality principle based on measurement results; and a unit, configured to encode the current macro block to be encoded, according to motion information of the selected macro block, and carry in an encoded stream a flag of the view-point reference image where the selected macro
  • An embodiment of the present invention provides a multi-view video decoder based on an MSM, which includes: a unit, configured to decode a view-point reference image flag carried in a received encoded stream; a unit, configured to determine a corresponding reference block of a current macro block to be decoded in an obtained view-point reference image identified by the view-point reference image flag, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; and a unit, configured to decode the current macro block to be decoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • An embodiment of the present invention provides an MVC method based on an MSM, which includes: determining a corresponding reference block of a current macro block to be encoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; performing MSM coding measurement on the current macro block to be encoded, according to motion information of each macro block formed by base unit blocks within a specified range around the determined corresponding reference block; selecting an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results; and encoding the current macro block to be encoded, according to motion information of the selected macro block.
  • An embodiment of the present invention provides a multi-view video decoding method based on an MSM, which includes: determining a corresponding reference block of a current macro block to be decoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; decoding offset information carried in a received encoded stream; and deviating by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decoding the current macro block to be decoded, according to motion information of the obtained macro block.
  • An embodiment of the present invention provides a multi-view video coder based on an MSM, which includes: a unit, configured to determine a corresponding reference block of a current macro block to be encoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; a unit, configured to perform MSM coding measurement on the current macro block to be encoded, according to motion information of each macro block formed by the base unit blocks within a specified range around the determined corresponding reference block; a unit, configured to select an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results; and a unit, configured to encode the current macro block to be encoded, according to motion information of the selected macro block.
  • An embodiment of the present invention provides a multi-view video decoder based on an MSM, which includes: a unit, configured to determine a corresponding reference block of a current macro block to be decoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; a unit, configured to decode offset information carried in a received encoded stream; and a unit, configured to deviate by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decode the current macro block to be decoded, according to motion information of the obtained macro block.
  • An embodiment of the present invention provides an MVC method based on an MSM, which includes: for each view-point reference image of a current image, determining a corresponding reference block of a current macro block to be encoded in the view-point reference image, according to a direction of a disparity vector from the current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; performing MSM measurement on the current macro block to be encoded, according to motion information of each macro block formed by the base unit blocks within a specified range around the determined corresponding reference block; selecting an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results; performing MSM coding measurement on the current macro block to be encoded, according to motion information of the macro block selected from each view-point reference image; selecting an optimal macro block from the macro blocks selected from the view-point reference images, according to the rate-distortion performance optimality principle based on measurement results; and encoding the current
  • An embodiment of the present invention provides a multi-view video decoding method based on an MSM, which includes: decoding a view-point reference image flag carried in a received encoded stream; determining a corresponding reference block of a current macro block to be decoded in an obtained view-point reference image identified by the view-point reference image flag, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; decoding offset information carried in the received encoded stream; and deviating by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decoding the current macro block to be decoded, according to motion information of the obtained macro block.
  • An embodiment of the present invention provides a multi-view video coder based on an MSM, which includes: a unit, configured to, for each view-point reference image of a current image, determine a corresponding reference block of a current macro block to be encoded in the view-point reference image, according to a direction of a disparity vector from the current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; a unit, configured to perform MSM measurement on the current macro block to be encoded, according to motion information of each macro block formed by the base unit blocks within a specified range around the determined corresponding reference block; a unit, configured to select an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results; a unit, configured to perform MSM coding measurement on the current macro block to be encoded, according to motion information of the macro block selected from each view-point reference image; a unit, configured to select an optimal macro block from the macro blocks
  • An embodiment of the present invention provides a multi-view video decoder based on an MSM, which includes: a unit, configured to decode a view-point reference image flag carried in a received encoded stream; a unit, configured to determine a corresponding reference block of a current macro block to be decoded in an obtained view-point reference image identified by the view-point reference image flag, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; a unit, configured to decode offset information carried in the received encoded stream; and a unit, configured to deviate by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decode the current macro block to be decoded, according to motion information of the obtained macro block.
  • An embodiment of the present invention provides a video coding method based on an MSM, which includes: determining a corresponding reference block of a current macro block to be encoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; and encoding the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • An embodiment of the present invention provides a video decoding method based on an MSM, which includes: determining a corresponding reference block of a current macro block to be decoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; and decoding the current macro block to be decoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • An embodiment of the present invention provides a video coder based on an MSM, which includes: a unit, configured to determine a corresponding reference block of a current macro block to be encoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; and a unit, configured to encode the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • An embodiment of the present invention provides a video decoder based on an MSM, which includes: a unit, configured to determine a corresponding reference block of a current macro block to be decoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; and a unit, configured to decode the current macro block to be decoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • An embodiment of the present invention provides a video coding method based on an MSM, which includes: determining a corresponding reference block of a current macro block to be encoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; performing MSM measurement on the current macro block to be encoded, according to motion information of each macro block formed by the base unit blocks within a specified range around the determined corresponding reference block; selecting an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results; and encoding the current macro block to be encoded, according to motion information of the selected macro block.
  • An embodiment of the present invention provides a video decoding method based on an MSM, which includes: determining a corresponding reference block of a current macro block to be decoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; decoding offset information carried in a received encoded stream; and deviating by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decoding the current macro block to be decoded, according to motion information of the obtained macro block.
  • An embodiment of the present invention provides a video coder based on an MSM, which includes: a unit, configured to determine a corresponding reference block of a current macro block to be encoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; a unit, configured to perform MSM measurement on the current macro block to be encoded, according to motion information of each macro block formed by the base unit blocks within a specified range around the determined corresponding reference block; a unit, configured to select an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results; and a unit, configured to encode the current macro block to be encoded, according to motion information of the selected macro block.
  • An embodiment of the present invention provides a video decoder based on an MSM, which includes: a unit, configured to determine a corresponding reference block of a current macro block to be decoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit, and; a unit, configured to decode offset information carried in a received encoded stream; and a unit, configured to deviate by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decode the current macro block to be decoded, according to motion information of the obtained macro block.
  • a block smaller than 16 ⁇ 16 pixels is used as a base unit to deduce the GDV and deduce the MMI of the currently encoded macroblock in the view-point reference image.
  • the GDV between the currently encoded image and the view-point reference image is more accurately obtained, and the MMI of the currently encoded macro block at a corresponding position in the view-point reference image is also obtained more accurately.
  • a specified MMI searching range is provided in the view-point reference image, so that the corresponding MMI of each macro block in the encoded image can be more accurately found in the view-point reference image, thereby improving the coding efficiency of the MVC.
  • the MMI having the optimal performance is found from the view-point reference images, so that the motion information in all the view-point reference images can be effectively used, and therefore the coding efficiency of the MVC is further improved.
  • Motion information of each macro block in an image includes macro block type, reference image index (Refldx), and motion vector (mv).
  • an MSM mode adopts a 16 ⁇ 16 image block as a base unit, and MMI of each macro block is integrally used.
  • an image block smaller than 16 ⁇ 16 pixels is used as a base unit.
  • a block of 8 ⁇ 8 pixels used as a base unit is taken as an example for illustration in the following embodiment, and other blocks smaller than 16 ⁇ 16 pixels may also be used as a base unit.
  • new motion information of a macro block of 16 ⁇ 16 pixels is obtained by combining the motion information of four spatially adjacent 8 ⁇ 8 image blocks, so as to obtain more optional MMI, thereby effectively improving an implementation accuracy of the MSM.
  • the GDV deduced based on the 8 ⁇ 8 image blocks can only roughly reflect depth characteristics of main image objects in an image scenario, so that it needs further improvement on the accuracy of finding the corresponding MMI of the currently encoded macro block in the view-point reference image based on the deduced GDV.
  • the corresponding macro block of the currently encoded macro block in the view-point reference image is usually not the image block directed by the GDV, but the corresponding macro block is distributed around the image block directed by the GDV
  • a searching range of adjacent images centered by the image block directed by the GDV is provided, MSM coding measurement is performed on the currently encoded image block based on the motion information of each macro block in the searching range, an optimal macro block is selected from the macro blocks, according to a rate-distortion performance optimality principle, and the motion information of the selected macro block serves as the motion information of the corresponding macro block of the currently encoded macro block in the view-point reference image.
  • the corresponding macro block of the currently encoded macro block in the view-point reference image is found accurately, and the motion information of the optimal macro block is employed to perform MSM coding measurement on the currently encoded macro block, so as to greatly improve the coding efficiency of the MVC.
  • the offset position information of the selected macro block in the reference image needs to be written into an encoded stream of the currently encoded macro block.
  • the view-point reference images are always arranged in a fixed priority order, and the MMI in the view-point reference image of a high priority is preferentially used.
  • the currently encoded block may be matched with more accurate MMI in the view-point reference image of a low priority, or the view-point reference image of a low priority may provide more accurate MMI.
  • optimal MMI of the macro block in each of the view-point reference images is adopted to perform MSM coding measurement on the current macro block respectively, an optimal macro block is selected from the macro blocks, according to a rate-distortion performance optimality principle, motion information of the selected macro block serves as the MMI finally used by the currently encoded macro block, and flag information of the reference image where the selected macro block is located is written into an encoded stream when the current macro block is encoded.
  • a coding process of a coder at the coder end is described in the following.
  • step 1 before a current image is encoded, an image block of 8 ⁇ 8 pixels is used as a base unit, and a GDV between the current image and a view-point reference image block is calculated according to the following Formula (2):
  • SR denotes a searching range of the GDV of 8 ⁇ 8 image blocks
  • MAD (x,y) denotes the amount of residual signal energy obtained by using the current GDV.
  • Ir denotes a reference image
  • Ic denotes a currently encoded image
  • w, h respectively denote the width and height of the image
  • i, j respectively denote horizontal and vertical coordinates of pixels in the image
  • x, y are rounded pixel values
  • the vector (x, y) denotes a global disparity of overall pixel accuracy between Ir and Ic.
  • the GDV calculated from the above formulae needs to be encoded and transmitted, so that segment-level syntax in the encoded stream needs to be modified.
  • the two view-point reference images are respectively placed in a reference list L0 and a reference list L1, so that two syntax elements al_disparity_blk_10[compIdx] and global_disparity_blk_11[compIdx] are added in the segment-level syntax, respectively denoting the GDV between the encoded image and the view-point reference image in the reference list L0 as well as the GDV between the encoded image and the view-point reference image in the reference list L1.
  • step 2 MMI of the currently encoded macro block in the view-point reference image is deduced.
  • the view-point reference image is divided into a set of image blocks of 8 ⁇ 8 pixels, and the 8 ⁇ 8 image block is used as a base unit to describe coordinates in the reference image.
  • FIG 3 is a schematic diagram of a process of deducing MMI of a view-point reference image according to an embodiment of the present invention, where solid lines denote the segmentation of macro blocks of 16 ⁇ 16 pixels, dashed lines denote the segmentation of image blocks of 8 ⁇ 8 pixels, and a shadow area in the reference image is a preset searching range SR8 based on motion information of macro blocks of 8 ⁇ 8 pixels.
  • a GDV is deduced from the image blocks of 8 ⁇ 8 pixels.
  • the position of a corresponding block of an 8 ⁇ 8 block at a top left corner of a currently encoded macro block MB k in the view-point reference image is determined, and is marked as OG MBk (reference block).
  • the MMI of the macro block directly serves as the corresponding MMI of the currently encoded macro block MB k in the view-point reference image. Otherwise, the original MMI in the view-point reference image needs to be split, and the split image blocks are re-combined to obtain the corresponding MMI of the currently encoded macro block MB k in the view-point reference image, as shown in FIGs. 4b, 4c, and 4d .
  • the macro block mode needs to be re-designated, according to a related original macro block mode and the combination mode of the new MMI.
  • the re-designation of the macro block mode is implemented based on the boundary of the original macro block. For example, as for the combination mode of the MMI in FIG 4b , a motion mode mod e of a combined macro block is re-designated according to motion modes mod e L and mod e R of a left-side macro block MB L and a right-side macro block MB R by using combining rules in Table 2.
  • the symbols used in Table 2, namely, SKIP, 16 ⁇ 16, 16 ⁇ 8, 8 ⁇ 16, 8 ⁇ 8, and INTRA, are respectively corresponding to a skip mode, a 16 ⁇ 16 inter-frame prediction mode, a 16 ⁇ 8 inter-frame prediction mode, an 8 ⁇ 16 inter-frame prediction mode, an 8 ⁇ 8 inter-frame prediction mode, and an intra-frame prediction mode in the H.264/AVC standard.
  • the macro block mode distribution rules in other combination modes of the MMI can be deduced in the same manner.
  • the coding and decoding ends are enabled to traverse to obtain optimal MMI in a specified range around the reference block, and the optimal MMI serves as reference for encoding the current macro block, thereby improving the efficiency of the MVC.
  • step 3 based on all the optional MMI MMI OSMBk obtained in step 2, each optional MMI is adopted to perform MSM coding measurement on the currently encoded macro block, optimal MMI is selected according to a rate-distortion performance optimality principle to serve as the corresponding MMI of the currently encoded macro block in the view-point reference image, and an offset of the position of the selected MMI relative to OG MB k is recorded as OS MB k .
  • step 4 when the current image has a plurality of view-point reference images, the above three steps are repeatedly performed for each view-point reference image of the current image.
  • MSM coding measurement is performed on the currently encoded macro block by using the optimal MMI selected from each view-point reference image, optimal MMI is selected according to a rate-distortion performance optimality principle to serve as the corresponding MMI of the currently encoded macro block in the view-point reference image, and the position of the selected optimal macro block and a flag of the view-point reference image where the selected macro block is located are recorded.
  • step 5 for each currently encoded macro block MB k , the flag information (including OS MB k , and obtained in step 3 and step 4 are written into the encoded stream. If an 8 ⁇ 8 block is used as a base unit to deduce the GDV and deduce the MMI in the view-point reference image, a flag may also be set in the encoded stream to indicate that the MSM processing is performed based on blocks of 8 ⁇ 8 pixels. Alternatively, the coding and decoding sides may negotiate to decide the size of the base unit to be used.
  • motion_skip_flag configured to indicate that an 8 ⁇ 8 block is used as a base unit to deduce the GDV and deduce the MMI in the view-point reference image
  • motion_info_offset_blk[compIdx] configured to indicate the position OS MB k F of the selected MMI in the view-point reference image
  • motion_ref__view_dir configured to indicate a flag LXF MB k F of the selected view-point reference image when the current image has a plurality of view-point reference images.
  • motion_skip_flag ⁇ mb_type 2 ue(v)
  • ae(v) ⁇ if( MbPartPredMode( mb_type, 0 ) ! Intra_16 ⁇ 16) ⁇ coded_block_pattern 2 me(v)
  • a decoding process of a decoder at the decoder end is described in the following.
  • MSM-related syntax elements are parsed from a received stream, which may include global_disparity_blk_10[compIdx], global_disparity_blk_11 [compIdx], motion_skip_flag, motion_info_offset_blk [compIdx], and motion_ref_view_dir.
  • step 2 if the parsed motion_skip_flag is set to 1, it is determined that the coding end adopts the MSM to perform the coding process, and employs an 8 ⁇ 8 block in the MSM as a base unit to deduce the GDV and deduce the MMI in the view-point reference image. Therefore, a selected view-point reference image is determined according to the parsed motion_ref_view_dir when the current image has a plurality of view-point reference images.
  • the position of the selected MMI in the view-point reference image is determined according to a corresponding GDV (global_disparity_blk_10 or global_disparity_blk_11) and the parsed syntax element motion_info_offset_blk [compIdx] in the reference image.
  • GDV global_disparity_blk_10 or global_disparity_blk_11
  • motion_info_offset_blk [compIdx] in the reference image.
  • Corresponding MMI of the current image block in the view-point reference image is deduced in the same manner as the coding end, and serves as reference MMI for the currently decoded macro block.
  • step 3 the currently encoded macro block is decoded by using the deduced MMI.
  • the macro block mode distribution rules used in deducing the MMI as shown in FIGs. 4a to 4d have a lot of variations.
  • the desired MMI may be directly configured according to a position directed by the GDV.
  • the position OS MB k directed by the GDV is at a top right corner of a macro block
  • blocks on the right side and left side of the macro block are adopted to construct a new macro block so as to obtain the desired MMI, as shown in FIG 4b .
  • it does not need to transmit offset information of the reconstructed macro block and the block at the position directed by the GDV.
  • the embodiments of the present invention may also be applied for encoding and decoding single-view reference image videos.
  • the position of the currently encoded image is uniquely designated in the view-point reference image, and the skip mode is employed for encoding, only when a difference signal between a current image signal to be encoded and a predicted image signal is set to 0 after quantification.
  • MSM coding measurement may also be performed on the current macro block to be encoded based on all the combinations of the MMI in the searching range determined in the view-point image.
  • Optimal MMI is selected according to a rate-distortion performance optimality principle, and serves as reference MMI for encoding the current macro block to be encoded.
  • Position information of the selected MMI in the view-point image is written into an encoded stream.
  • video coding and decoding solutions based on an MSM provided in the embodiments of the present invention may be expanded in parallel from MVC to single-view video coding, and a shift skip mode part is added in the original skip mode, thereby improving the coding efficiency. Specifically, the following efficacies are achieved.
  • a block smaller than 16 ⁇ 16 pixels is used as a base unit to deduce the GDV and deduce the MMI of the currently encoded macro block in the view-point reference image.
  • the GDV between the currently encoded image and the view-point reference image is accurately obtained, and the MMI of the currently encoded macro block at a corresponding position in the view-point reference image is also accurately obtained.
  • a smaller block may be used as a base unit to deduce the GDV and deduce the MMI of the currently encoded macro block in the view-point reference image, for example, a 4x4 or 2x2 block is used as a base unit for deducing.
  • the corresponding MMI is accurately found for each macro block of the encoded image in the view-point reference image, thereby improving the coding efficiency of the MVC.
  • the MMI of the optimal performance is found in the view-point reference images, so as to fully utilize the motion information in all the view-point reference images, thereby further improving the coding efficiency of the MVC.
  • the coding efficiency of the MVC is improved according to the combination mode of the MMI provided in the embodiments of the present invention.
  • the second, third, and fourth improvements proposed in the solutions according to the embodiments of the present invention may be combined in different modes and used together with the first improvement upon actual requirements based on the first improvement.
  • the program may be stored in a computer readable storage medium.
  • the storage medium may be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM).
  • coders and decoders with the following configurations are provided in the embodiments of the present invention.
  • the coder includes: a unit, configured to determine a corresponding reference block of a current macro block to be encoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; and a unit, configured to encode the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • the coder includes: a unit, configured to, for each view-point reference image of a current image, determine a corresponding reference block of a current macro block to be encoded in the view-point reference image, according to a direction of a disparity vector from the current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; a unit, configured to perform MSM coding measurement on the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block of the current macro block to be encoded in each view-point reference image belongs to; a unit, configured to select an optimal macro block from the macro blocks, according to a rate-distortion performance optimality principle based on measurement results; and a unit, configured to encode the current macro block to be encoded, according to motion information of the selected macro block, and carry in an encoded stream a flag of the view-point reference image where the selected macro block is located.
  • the coder includes: a unit, configured to determine a corresponding reference block of a current macro block to be encoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; a unit, configured to perform MSM coding measurement on the current macro block to be encoded, according to motion information of each macro block formed by base unit blocks within a specified range around the determined corresponding reference block; a unit, configured to select an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results; and a unit, configured to encode the current macro block to be encoded, according to motion information of the selected macro block.
  • the coder includes: a unit, configured to, for each view-point reference image of a current image, determine a corresponding reference block of a current macro block to be encoded in the view-point reference image, according to a direction of a disparity vector from the current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; a unit, configured to perform MSM measurement on the current macro block to be encoded, according to motion information of each macro block formed by the base unit blocks within a specified range around the determined corresponding reference block; a unit, configured to select an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results; a unit, configured to perform MSM coding measurement on the current macro block to be encoded, according to motion information of the macro block selected from each view-point reference image; a unit, configured to select an optimal macro block from the macro blocks selected from the view-point reference
  • the coder includes: a unit, configured to determine a corresponding reference block of a current macro block to be encoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; and a unit, configured to encode the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • the coder includes: a unit, configured to determine a corresponding reference block of a current macro block to be encoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; a unit, configured to perform MSM measurement on the current macro block to be encoded, according to motion information of each macro block formed by the base unit blocks within a specified range around the determined corresponding reference block; a unit, configured to select an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results; and a unit, configured to encode the current macro block to be encoded, according to motion information of the selected macro block.
  • the decoders provided in the embodiments of the present invention may have the following configurations.
  • the decoder includes: a unit, configured to determine a corresponding reference block of a current macro block to be decoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; and a unit, configured to decode the current macro block to be decoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • the decoder includes: a unit, configured to decode a view-point reference image flag carried in a received encoded stream; a unit, configured to determine a corresponding reference block of a current macro block to be decoded in an obtained view-point reference image identified by the view-point reference image flag, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; and a unit, configured to decode the current macro block to be decoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • the decoder includes: a unit, configured to determine a corresponding reference block of a current macro block to be decoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; a unit, configured to decode offset information carried in a received encoded stream; and a unit, configured to deviate by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decode the current macro block to be decoded, according to motion information of the obtained macro block.
  • the decoder includes: a unit, configured to decode a view-point reference image flag carried in a received encoded stream; a unit, configured to determine a corresponding reference block of a current macro block to be decoded in an obtained view-point reference image identified by the view-point reference image flag, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; a unit, configured to decode offset information carried in the received encoded stream; and a unit, configured to deviate by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decode the current macro block to be decoded, according to motion information of the obtained macro block.
  • the decoder includes: a unit, configured to determine a corresponding reference block of a current macro block to be decoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; and a unit, configured to decode the current macro block to be decoded, according to motion information of the macro block that the determined corresponding reference block belongs to.
  • the decoder includes: a unit, configured to determine a corresponding reference block of a current macro block to be decoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16 ⁇ 16 pixels as a base unit; a unit, configured to decode offset information carried in a received encoded stream; and a unit, configured to deviate by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decode the current macro block to be decoded, according to motion information of the obtained macro block.

Abstract

A video coding method based on a motion skip mode (MSM) is provided. The method includes the following steps. A corresponding reference block of a current macro block to be encoded in a view-point reference image is determined, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit. The current macro block to be encoded is then encoded according to motion information of a macro block that the determined corresponding reference block belongs to. Other related video coding methods and corresponding codecs based on the MSM are also provided. Therefore, macro block motion information (MMI) of the currently encoded macro block at a corresponding position in the view-point reference image can be more accurately obtained, thereby improving a coding efficiency of the MSM.

Description

    FIELD OF THE TECHNOLOGY
  • The present invention relates to the field of video coding and decoding technology, and more particularly to a video coding and decoding method and a codec based on a motion skip mode (MSM).
  • BACKGROUND OF THE INVENTION
  • With the development of multimedia communication technologies, people are no longer satisfied with conventional fixed view-point vision and 2D plane vision, but demand free view-point videos and 3D videos in various application fields, such as entertainment, education, sightseeing, and surgery. For example, a free view-point television (FTV) with its viewing angle capable of being selected by a viewer, and a 3-dimensional television (3DTV) capable of playing videos at different viewing angles for viewers at different positions are needed. In the above applications, several video cameras are required to simultaneously obtain video signals of the same scenario from different viewing angles at different spatial positions, and effectively compress, encode, and transmit a group of obtained video signals. The group of obtained videos is called multi-view videos, and the compression and coding process on the videos is called multi-view video coding (MVC). Apparently, the MVC technology is critical to the implementation of all the above free view-point video and 3D video applications.
  • In the MVC technology, the MVC may be simply implemented through independent coding and transmission of each view-point video signal, and this process is called video simulcast. The video simulcast merely utilizes time correlation in each view-point video signal, and the amount of obtained data increases linearly with the adding of the number of the view-points, so that the coding efficiency is low. Currently, the MVC technology mainly focuses on the study of how to effectively utilize the correlations between different view-point images to remove redundant information from different view-point videos, so as to improve the coding efficiency of the MVC.
  • In order to improve the coding efficiency of the MVC, an MSM is provided for multi-view prediction. In the MSM technology, motion information in an adjacent view-point image is directly employed for the coding of the current view-point image by using high similarity in the motion of the adjacent view-point image, so as to save the bit overhead required by some macro block motion information (MMI) in an encoded image, thereby improving the compression efficiency of the MVC.
  • The MMI includes a 16×16 macro block partition mode, a segmentation mode of each block having an accuracy of 8×8 pixels in the macro block, a reference image index of each 8×8 block in the macro block, and a motion vector of each 4x4 block in the macro block. The MSM mainly includes the following two processes.
  • A global disparity vector (GDV) is deduced; and
  • MMI at a corresponding position in a reference image is deduced.
  • FIG 1 is a schematic diagram of a process of deducing a GDV in the prior art. Referring to FIG 1, a macro block of 16×16 pixels is firstly used as a base unit, and set as an anchor frame in the MVC, that is, a GDV between an encoded image in the block of FIG 1 and a view-point reference image. The GDV is encoded and then transmitted. A GDVcur of a non-anchor frame Imgcur is deduced by using GDVA and GDVB of anchor frames ImgA and ImgB according to the following Formula (1), where POCA, POCB, and POCcur are respectively image sequence numbers having the same time coordinates as ImgA, ImgB, and Imgcur in a group of multi-view videos. GDV cur = GDV A + POC cur - POC A POC B - POC A × GDV B - GDV A
    Figure imgb0001
  • After the GDVcur of the currently encoded image Imgcur is determined, a corresponding macro block MBcor of each macro block MBcur in the Imgcur in the view-point reference video image is determined according to the determined GDVcur, and MMI of the MBcor serves as the MMI of the MBcur, so as to implement subsequent motion compensation on the macro block MBcur by using the motion information. A corresponding macro block of the reference frame is found in the image for prediction to obtain residual data, and an overhead RDCostMBcur of the macro block MBcur using the MSM mode is calculated. If the calculated overhead RDCostMBcur of the macro block MBcur is smaller than the corresponding mode overhead of other macro blocks, the MSM is selected as the final mode of the macro block MBcur.
  • It is assumed that the currently encoded image has two view-point reference images, and if one of the two view-point reference images fails to provide valid MMI for the current macro block MBcur in the encoded frame, the MMI in the other view-point reference image is employed for measuring whether the MSM mode is the final mode of the current macro block MBcur.
  • FIG 2 is a schematic diagram showing that the encoded image has two view-point reference images. For an image B3 at a position of S1/T2, an image B2 at a position of S0/T2 is firstly configured to deduce the MMI of the current macro block MBcur, and if the corresponding macro block in the image B2 is encoded by using an intra-frame mode, an image B2 at a position of S2/T2 is configured to deduce the MMI of the current macro block MBcur.
  • In order to notify a decoding end whether each macro block in the image uses the MSM mode, a coding end needs to add a motion_skip_flag in an encoded stream at the macro block level, and if the flag is set to 1, it indicates that the current macro block adopts the MSM mode.
  • As shown in FIG 2, if the currently encoded image has a plurality of view-point reference images, the desired MMI is selected from the motion information of all the view-point reference images according to a fixed priority selection order in the MSM, so that the MMI of the view-point reference image of a low priority cannot be effectively used. Therefore, corresponding improvements are made to the MSM in the prior art: The optimal MMI is selected for each macro block in the currently encoded image from the MMI of the corresponding macro blocks in all the view-point reference images, according to an optimality principle of an overhead RDCostMBcur of using the MSM mode, that is, a rate-distortion cost (RDCost), and a selection flag of the view-point reference image is added in the encoded stream of each macro block in the encoded image, so as to notify the decoder end of the information about the view-point reference image that the MMI of the current macro block belongs to through the flag.
  • The improved MSM solution may be employed to flexibly select the MMI of the current macro block in the case that the currently encoded image has a plurality of view-point reference images, thereby improving the efficiency of the MVC.
  • However, in the implementation of the present invention, the inventors found that, no matter in the existing MSM technology or the improved MSM technology, a macro block of 16×16 pixels is used as a base unit to deduce the GDV and deduce the MMI at the corresponding position in the reference image. In this manner, the GDV between the currently encoded image and the view-point reference image is inaccurately obtained, and the MMI of the currently encoded macro block at the corresponding position in the view-point reference image is also inaccurately obtained.
  • Moreover, as the GDV has a low accuracy, it is difficult to accurately find the corresponding macro block of each macro block in the currently encoded image from the view-point reference image by using the GDV, and thus the accuracy of the MMI obtained from the corresponding macro block directed by the GDV is also low.
  • SUMMARY OF THE INVENTION
  • The present invention is directed to a video coding and decoding method and a codec based on an MSM, so as to obtain MMI of a currently encoded macro block at a corresponding position in a view-point reference image more accurately, thereby improving a coding efficiency of the MSM.
  • An embodiment of the present invention provides an MVC method based on an MSM, which includes: determining a corresponding reference block of a current macro block to be encoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; and encoding the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • An embodiment of the present invention provides a multi-view video decoding method based on an MSM, which includes: determining a corresponding reference block of a current macro block to be decoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; and decoding the current macro block to be decoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • An embodiment of the present invention provides a multi-view video coder based on an MSM, which includes: a unit, configured to determine a corresponding reference block of a current macro block to be encoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; and a unit, configured to encode the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • An embodiment of the present invention provides a multi-view video decoder based on an MSM, which includes: a unit, configured to determine a corresponding reference block of a current macro block to be decoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; and a unit, configured to decode the current macro block to be decoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • An embodiment of the present invention provides an MVC method based on an MSM, which includes: for each view-point reference image of a current image, determining a corresponding reference block of a current macro block to be encoded in the view-point reference image, according to a direction of a GDV from the current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; performing MSM coding measurement on the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block of the current macro block to be encoded in each view-point reference image belongs to; selecting an optimal macro block from the macro blocks, according to a rate-distortion performance optimality principle based on measurement results; and encoding the current macro block to be encoded, according to motion information of the selected macro block, and carrying in an encoded stream a flag of the view-point reference image where the selected macro block is located.
  • An embodiment of the present invention provides a multi-view video decoding method based on an MSM, which includes: decoding a view-point reference image flag carried in a received encoded stream; determining a corresponding reference block of a current macro block to be decoded in an obtained view-point reference image identified by the view-point reference image flag, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16× 16 pixels as a base unit; and decoding the current macro block to be decoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • An embodiment of the present invention provides a multi-view video coder based on an MSM, which includes: a unit, configured to, for each view-point reference image of a current image, determine a corresponding reference block of a current macro block to be encoded in each view-point reference image, according to a direction of a disparity vector from the current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; a unit, configured to perform MSM coding measurement on the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block of the current macro block to be encoded in each view-point reference image belongs to; a unit, configured to select an optimal macro block from the macro blocks, according to a rate-distortion performance optimality principle based on measurement results; and a unit, configured to encode the current macro block to be encoded, according to motion information of the selected macro block, and carry in an encoded stream a flag of the view-point reference image where the selected macro block is located.
  • An embodiment of the present invention provides a multi-view video decoder based on an MSM, which includes: a unit, configured to decode a view-point reference image flag carried in a received encoded stream; a unit, configured to determine a corresponding reference block of a current macro block to be decoded in an obtained view-point reference image identified by the view-point reference image flag, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; and a unit, configured to decode the current macro block to be decoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • An embodiment of the present invention provides an MVC method based on an MSM, which includes: determining a corresponding reference block of a current macro block to be encoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; performing MSM coding measurement on the current macro block to be encoded, according to motion information of each macro block formed by base unit blocks within a specified range around the determined corresponding reference block; selecting an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results; and encoding the current macro block to be encoded, according to motion information of the selected macro block.
  • An embodiment of the present invention provides a multi-view video decoding method based on an MSM, which includes: determining a corresponding reference block of a current macro block to be decoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; decoding offset information carried in a received encoded stream; and deviating by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decoding the current macro block to be decoded, according to motion information of the obtained macro block.
  • An embodiment of the present invention provides a multi-view video coder based on an MSM, which includes: a unit, configured to determine a corresponding reference block of a current macro block to be encoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; a unit, configured to perform MSM coding measurement on the current macro block to be encoded, according to motion information of each macro block formed by the base unit blocks within a specified range around the determined corresponding reference block; a unit, configured to select an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results; and a unit, configured to encode the current macro block to be encoded, according to motion information of the selected macro block.
  • An embodiment of the present invention provides a multi-view video decoder based on an MSM, which includes: a unit, configured to determine a corresponding reference block of a current macro block to be decoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; a unit, configured to decode offset information carried in a received encoded stream; and a unit, configured to deviate by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decode the current macro block to be decoded, according to motion information of the obtained macro block.
  • An embodiment of the present invention provides an MVC method based on an MSM, which includes: for each view-point reference image of a current image, determining a corresponding reference block of a current macro block to be encoded in the view-point reference image, according to a direction of a disparity vector from the current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; performing MSM measurement on the current macro block to be encoded, according to motion information of each macro block formed by the base unit blocks within a specified range around the determined corresponding reference block; selecting an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results; performing MSM coding measurement on the current macro block to be encoded, according to motion information of the macro block selected from each view-point reference image; selecting an optimal macro block from the macro blocks selected from the view-point reference images, according to the rate-distortion performance optimality principle based on measurement results; and encoding the current macro block to be encoded, according to motion information of the selected macro block, and carrying in an encoded stream a flag of the view-point reference image where the selected macro block is located.
  • An embodiment of the present invention provides a multi-view video decoding method based on an MSM, which includes: decoding a view-point reference image flag carried in a received encoded stream; determining a corresponding reference block of a current macro block to be decoded in an obtained view-point reference image identified by the view-point reference image flag, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16× 16 pixels as a base unit; decoding offset information carried in the received encoded stream; and deviating by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decoding the current macro block to be decoded, according to motion information of the obtained macro block.
  • An embodiment of the present invention provides a multi-view video coder based on an MSM, which includes: a unit, configured to, for each view-point reference image of a current image, determine a corresponding reference block of a current macro block to be encoded in the view-point reference image, according to a direction of a disparity vector from the current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; a unit, configured to perform MSM measurement on the current macro block to be encoded, according to motion information of each macro block formed by the base unit blocks within a specified range around the determined corresponding reference block; a unit, configured to select an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results; a unit, configured to perform MSM coding measurement on the current macro block to be encoded, according to motion information of the macro block selected from each view-point reference image; a unit, configured to select an optimal macro block from the macro blocks selected from the view-point reference images, according to the rate-distortion performance optimality principle based on measurement results; and a unit, configured to encode the current macro block to be encoded, according to motion information of the selected macro block, and carry in an encoded stream a flag of the view-point reference image where the selected macro block is located.
  • An embodiment of the present invention provides a multi-view video decoder based on an MSM, which includes: a unit, configured to decode a view-point reference image flag carried in a received encoded stream; a unit, configured to determine a corresponding reference block of a current macro block to be decoded in an obtained view-point reference image identified by the view-point reference image flag, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; a unit, configured to decode offset information carried in the received encoded stream; and a unit, configured to deviate by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decode the current macro block to be decoded, according to motion information of the obtained macro block.
  • An embodiment of the present invention provides a video coding method based on an MSM, which includes: determining a corresponding reference block of a current macro block to be encoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16×16 pixels as a base unit; and encoding the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • An embodiment of the present invention provides a video decoding method based on an MSM, which includes: determining a corresponding reference block of a current macro block to be decoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16×16 pixels as a base unit; and decoding the current macro block to be decoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • An embodiment of the present invention provides a video coder based on an MSM, which includes: a unit, configured to determine a corresponding reference block of a current macro block to be encoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16×16 pixels as a base unit; and a unit, configured to encode the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • An embodiment of the present invention provides a video decoder based on an MSM, which includes: a unit, configured to determine a corresponding reference block of a current macro block to be decoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16×16 pixels as a base unit; and a unit, configured to decode the current macro block to be decoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • An embodiment of the present invention provides a video coding method based on an MSM, which includes: determining a corresponding reference block of a current macro block to be encoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16×16 pixels as a base unit; performing MSM measurement on the current macro block to be encoded, according to motion information of each macro block formed by the base unit blocks within a specified range around the determined corresponding reference block; selecting an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results; and encoding the current macro block to be encoded, according to motion information of the selected macro block.
  • An embodiment of the present invention provides a video decoding method based on an MSM, which includes: determining a corresponding reference block of a current macro block to be decoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16×16 pixels as a base unit; decoding offset information carried in a received encoded stream; and deviating by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decoding the current macro block to be decoded, according to motion information of the obtained macro block.
  • An embodiment of the present invention provides a video coder based on an MSM, which includes: a unit, configured to determine a corresponding reference block of a current macro block to be encoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16×16 pixels as a base unit; a unit, configured to perform MSM measurement on the current macro block to be encoded, according to motion information of each macro block formed by the base unit blocks within a specified range around the determined corresponding reference block; a unit, configured to select an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results; and a unit, configured to encode the current macro block to be encoded, according to motion information of the selected macro block.
  • An embodiment of the present invention provides a video decoder based on an MSM, which includes: a unit, configured to determine a corresponding reference block of a current macro block to be decoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16×16 pixels as a base unit, and; a unit, configured to decode offset information carried in a received encoded stream; and a unit, configured to deviate by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decode the current macro block to be decoded, according to motion information of the obtained macro block.
  • In the solutions according to the embodiments of the present invention, a block smaller than 16×16 pixels is used as a base unit to deduce the GDV and deduce the MMI of the currently encoded macroblock in the view-point reference image. In this manner, the GDV between the currently encoded image and the view-point reference image is more accurately obtained, and the MMI of the currently encoded macro block at a corresponding position in the view-point reference image is also obtained more accurately.
  • Moreover, a specified MMI searching range is provided in the view-point reference image, so that the corresponding MMI of each macro block in the encoded image can be more accurately found in the view-point reference image, thereby improving the coding efficiency of the MVC.
  • In addition, according to the embodiments of the present invention, when the current image has a plurality of view-point reference images, the MMI having the optimal performance is found from the view-point reference images, so that the motion information in all the view-point reference images can be effectively used, and therefore the coding efficiency of the MVC is further improved.
  • BRIEF DESCRIPTION OF THE DRAWINGS
    • FIG 1 is a schematic diagram of a process of deducing a GDV in the prior art;
    • FIG 2 is a schematic diagram showing that an encoded image has two view-point reference images;
    • FIG 3 is a schematic diagram of a process of deducing MMI of a view-point reference image according to an embodiment of the present invention;
    • FIG 4a is a schematic diagram of a first combination mode of a reference macro block according to an embodiment of the present invention;
    • FIG 4b is a schematic diagram of a second combination mode of the reference macro block according to an embodiment of the present invention;
    • FIG 4c is a schematic diagram of a third combination mode of the reference macro block according to an embodiment of the present invention; and
    • FIG 4d is a schematic diagram of a fourth combination mode of the reference macro block according to an embodiment of the present invention.
    DETAILED DESCRIPTION OF THE EMBODIMENTS
  • Examples are given below for illustration by applying the solutions according to the embodiments of the present invention in a video coding standard H.264/AVC and a joint multi-view video model (JMVM) based on the H.264/AVC standard, but the embodiments of the present invention may also be applied to other video coding standards.
  • Motion information of each macro block in an image includes macro block type, reference image index (Refldx), and motion vector (mv). In the prior art, an MSM mode adopts a 16×16 image block as a base unit, and MMI of each macro block is integrally used. In the embodiments of the present invention, an image block smaller than 16×16 pixels is used as a base unit. A block of 8×8 pixels used as a base unit is taken as an example for illustration in the following embodiment, and other blocks smaller than 16×16 pixels may also be used as a base unit. In this manner, new motion information of a macro block of 16×16 pixels is obtained by combining the motion information of four spatially adjacent 8×8 image blocks, so as to obtain more optional MMI, thereby effectively improving an implementation accuracy of the MSM.
  • In the embodiments of the present invention, since 8×8 image blocks are used as base units in the implementation of the MSM, in order to maintain consistent computation accuracy, a GDV needs to be deduced based on the 8×8 image blocks.
  • However, the GDV deduced based on the 8×8 image blocks can only roughly reflect depth characteristics of main image objects in an image scenario, so that it needs further improvement on the accuracy of finding the corresponding MMI of the currently encoded macro block in the view-point reference image based on the deduced GDV.
  • It is discovered through researches that, the corresponding macro block of the currently encoded macro block in the view-point reference image is usually not the image block directed by the GDV, but the corresponding macro block is distributed around the image block directed by the GDV Based on this, in the embodiments of the present invention, a searching range of adjacent images centered by the image block directed by the GDV is provided, MSM coding measurement is performed on the currently encoded image block based on the motion information of each macro block in the searching range, an optimal macro block is selected from the macro blocks, according to a rate-distortion performance optimality principle, and the motion information of the selected macro block serves as the motion information of the corresponding macro block of the currently encoded macro block in the view-point reference image. In this manner, the corresponding macro block of the currently encoded macro block in the view-point reference image is found accurately, and the motion information of the optimal macro block is employed to perform MSM coding measurement on the currently encoded macro block, so as to greatly improve the coding efficiency of the MVC. Similarly, the offset position information of the selected macro block in the reference image needs to be written into an encoded stream of the currently encoded macro block.
  • When the currently encoded image has a plurality of view-point reference images, as shown in FIG 2, according to the MSM processing mode in the prior art, the view-point reference images are always arranged in a fixed priority order, and the MMI in the view-point reference image of a high priority is preferentially used. However, due to the differences on the characteristics of the view-point reference images, the currently encoded block may be matched with more accurate MMI in the view-point reference image of a low priority, or the view-point reference image of a low priority may provide more accurate MMI.
  • Therefore, in the embodiments of the present invention, for a currently encoded image having two or more view-point reference images, when each macro block in the image is encoded, optimal MMI of the macro block in each of the view-point reference images is adopted to perform MSM coding measurement on the current macro block respectively, an optimal macro block is selected from the macro blocks, according to a rate-distortion performance optimality principle, motion information of the selected macro block serves as the MMI finally used by the currently encoded macro block, and flag information of the reference image where the selected macro block is located is written into an encoded stream when the current macro block is encoded.
  • The implementation of the embodiments of the present invention at a coder end and a decoder end is illustrated in detail below.
  • A coding process of a coder at the coder end is described in the following.
  • In step 1, before a current image is encoded, an image block of 8×8 pixels is used as a base unit, and a GDV between the current image and a view-point reference image block is calculated according to the following Formula (2): GDV = x y = arg min - SR x , y SR MAD 8 * x , 8 * y
    Figure imgb0002
  • In the formula, SR denotes a searching range of the GDV of 8×8 image blocks, and the function MAD(x,y) denotes the amount of residual signal energy obtained by using the current GDV. A specific definition of MAD(x, y) is shown in the following Formula (3): MAD x y = 1 h - y w - x i = 0 w - x - 1 j = 0 h - y - 1 I r i + x , j + y - I c i j
    Figure imgb0003
  • In the formula, Ir denotes a reference image, Ic denotes a currently encoded image, and w, h respectively denote the width and height of the image; i, j respectively denote horizontal and vertical coordinates of pixels in the image; and x, y are rounded pixel values, the vector (x, y) denotes a global disparity of overall pixel accuracy between Ir and Ic.
  • The GDV calculated from the above formulae needs to be encoded and transmitted, so that segment-level syntax in the encoded stream needs to be modified. Taking the JMVM for example, when the encoded image only has two view-point reference images, it is assumed that the two view-point reference images are respectively placed in a reference list L0 and a reference list L1, so that two syntax elements al_disparity_blk_10[compIdx] and global_disparity_blk_11[compIdx] are added in the segment-level syntax, respectively denoting the GDV between the encoded image and the view-point reference image in the reference list L0 as well as the GDV between the encoded image and the view-point reference image in the reference list L1. As shown in Table 1, the GDV is deduced by using the image block of 8×8 pixels as a base unit. Table 1 Modifications on JMVM slice-level syntax
    slice_header() { C Descriptor
    first_mb_in_slice
    2 ue(v)
    slice_type 2 ue(v)
    ic_enable 2 u(1)
    if ( anchor_pic_flag) {
    if( slice_type = = P | | slice_type = = B ) {
    for( compIdx = 0; compIdx < 2;
    compldx++)
    global_disparity_blk_10 [ compIdx ] 2 se(v)
    }
    if(( slice_type = = B ) {
    for( compldx = 0; compldx < 2;
    compIdx++ )
    global_disparity_blk_l1 [compIdx] 2 se(v)
    }
    }
    pic_parameter_set_id 2 ue(v)
    Frame_num 2 u(v)
    }
  • In step 2, MMI of the currently encoded macro block in the view-point reference image is deduced. Firstly, the view-point reference image is divided into a set of image blocks of 8×8 pixels, and the 8×8 image block is used as a base unit to describe coordinates in the reference image.
  • FIG 3 is a schematic diagram of a process of deducing MMI of a view-point reference image according to an embodiment of the present invention, where solid lines denote the segmentation of macro blocks of 16×16 pixels, dashed lines denote the segmentation of image blocks of 8×8 pixels, and a shadow area in the reference image is a preset searching range SR8 based on motion information of macro blocks of 8×8 pixels. A GDV is deduced from the image blocks of 8×8 pixels. The position of a corresponding block of an 8×8 block at a top left corner of a currently encoded macro block MBk in the view-point reference image is determined, and is marked as OGMBk (reference block). Then, in the 16×16 image blocks directed by each offset coordinate (x, y) in the searching range SR8 and centered by OGMBk , new MMI MMIOSM Bk is synthesized to obtain all the optional MMI MMIOSMBk = {MMIOSMBk (x, y)|x, y∈ [-2,2]} in the currently encoded macro block.
  • If a macro block MBk' in the searching range SR8 of the MMI in the reference image overlaps with a certain macro block partitioned by the solid lines, referring to FIG 4a, the MMI of the macro block directly serves as the corresponding MMI of the currently encoded macro block MBk in the view-point reference image. Otherwise, the original MMI in the view-point reference image needs to be split, and the split image blocks are re-combined to obtain the corresponding MMI of the currently encoded macro block MBk in the view-point reference image, as shown in FIGs. 4b, 4c, and 4d.
  • In the MMI obtained by combination, the macro block mode needs to be re-designated, according to a related original macro block mode and the combination mode of the new MMI. The re-designation of the macro block mode is implemented based on the boundary of the original macro block. For example, as for the combination mode of the MMI in FIG 4b, a motion mode mod e of a combined macro block is re-designated according to motion modes mod eL and mod eR of a left-side macro block MBL and a right-side macro block MBR by using combining rules in Table 2. The symbols used in Table 2, namely, SKIP, 16×16, 16×8, 8×16, 8×8, and INTRA, are respectively corresponding to a skip mode, a 16×16 inter-frame prediction mode, a 16×8 inter-frame prediction mode, an 8×16 inter-frame prediction mode, an 8×8 inter-frame prediction mode, and an intra-frame prediction mode in the H.264/AVC standard. Table 2 Macro block mode distribution rules in the combination modes of the MMI
    modeL modeR mode
    SKIP 16×16 8×16 SKIP 8×16
    16×16
    8×16
    SKIP 8×8
    16×8
    8×8
    INTRA modeL
    16×8 8×8 SKIP 8×8
    16×16
    8×16
    16×8
    8×8
    INTRA modeL
    INTRA SKIP modeR
    16×16
    8×16
    16×8
    8×8
    INTRA INTRA
  • The macro block mode distribution rules in other combination modes of the MMI can be deduced in the same manner. Through the implementation of the combination modes of the MMI, the coding and decoding ends are enabled to traverse to obtain optimal MMI in a specified range around the reference block, and the optimal MMI serves as reference for encoding the current macro block, thereby improving the efficiency of the MVC.
  • In step 3, based on all the optional MMI MMIOSMBk obtained in step 2, each optional MMI is adopted to perform MSM coding measurement on the currently encoded macro block, optimal MMI is selected according to a rate-distortion performance optimality principle to serve as the corresponding MMI of the currently encoded macro block in the view-point reference image, and an offset of the position of the selected MMI relative to OGMBk is recorded as OSMBk .
  • In step 4, when the current image has a plurality of view-point reference images, the above three steps are repeatedly performed for each view-point reference image of the current image. MSM coding measurement is performed on the currently encoded macro block by using the optimal MMI selected from each view-point reference image, optimal MMI is selected according to a rate-distortion performance optimality principle to serve as the corresponding MMI of the currently encoded macro block in the view-point reference image, and the position
    Figure imgb0004
    of the selected optimal macro block and a flag
    Figure imgb0005
    of the view-point reference image where the selected macro block is located are recorded.
  • In step 5, for each currently encoded macro block MBk, the flag information (including OSMBk ,
    Figure imgb0006
    and
    Figure imgb0007
    obtained in step 3 and step 4 are written into the encoded stream. If an 8×8 block is used as a base unit to deduce the GDV and deduce the MMI in the view-point reference image, a flag may also be set in the encoded stream to indicate that the MSM processing is performed based on blocks of 8×8 pixels. Definitely, the coding and decoding sides may negotiate to decide the size of the base unit to be used.
  • Based on the above coding process, modifications on macro block-level syntax in JMVM processing are shown in Table 3. Syntax elements need to be added in the syntax include: motion_skip_flag, configured to indicate that an 8×8 block is used as a base unit to deduce the GDV and deduce the MMI in the view-point reference image; motion_info_offset_blk[compIdx], configured to indicate the position OS MB k F
    Figure imgb0008
    of the selected MMI in the view-point reference image; and motion_ref__view_dir, configured to indicate a flag LXF MB k F
    Figure imgb0009
    of the selected view-point reference image when the current image has a plurality of view-point reference images. Table 3 Modifications on JMVM macro block-level syntax
    macro block_layer() { C Descriptor
    if ( ! anchor_pic_flag) {
    motion_skip_flag 2 u(1) I ae(v)
    if(motion_skip_flag) {
    for( compIdx = 0; compIdx < 2; compIdx++ )
    motion_info_offset_blk[compIdx] 2 ue(v) | ae(v)
    If(num_non_anchor_refs_10[view_id]>0&&
    num_non_anchor_refs_11[view_id]>0)
    motion_reCview_dir 2 u(1) I ae(v)
    }
    if (! motion_skip_flag) {
    mb_type 2 ue(v) | ae(v)
    }
    if( MbPartPredMode( mb_type, 0 ) !=
    Intra_16×16) {
    coded_block_pattern 2 me(v) | ae(v)
    }
    }
  • A decoding process of a decoder at the decoder end is described in the following.
  • In step 1, MSM-related syntax elements are parsed from a received stream, which may include global_disparity_blk_10[compIdx], global_disparity_blk_11 [compIdx], motion_skip_flag, motion_info_offset_blk [compIdx], and motion_ref_view_dir.
  • In step 2, if the parsed motion_skip_flag is set to 1, it is determined that the coding end adopts the MSM to perform the coding process, and employs an 8×8 block in the MSM as a base unit to deduce the GDV and deduce the MMI in the view-point reference image. Therefore, a selected view-point reference image is determined according to the parsed motion_ref_view_dir when the current image has a plurality of view-point reference images. The position of the selected MMI in the view-point reference image is determined according to a corresponding GDV (global_disparity_blk_10 or global_disparity_blk_11) and the parsed syntax element motion_info_offset_blk [compIdx] in the reference image. Corresponding MMI of the current image block in the view-point reference image is deduced in the same manner as the coding end, and serves as reference MMI for the currently decoded macro block.
  • In step 3, the currently encoded macro block is decoded by using the deduced MMI.
  • Moreover, the macro block mode distribution rules used in deducing the MMI as shown in FIGs. 4a to 4d have a lot of variations. For example, the desired MMI may be directly configured according to a position directed by the GDV. In this case, if the position OS MBk directed by the GDV is at a top right corner of a macro block, blocks on the right side and left side of the macro block are adopted to construct a new macro block so as to obtain the desired MMI, as shown in FIG 4b. At this time, it does not need to transmit offset information of the reconstructed macro block and the block at the position directed by the GDV.
  • In addition, the embodiments of the present invention may also be applied for encoding and decoding single-view reference image videos. During the coding and decoding process of single-view reference image videos, the position of the currently encoded image is uniquely designated in the view-point reference image, and the skip mode is employed for encoding, only when a difference signal between a current image signal to be encoded and a predicted image signal is set to 0 after quantification.
  • When the embodiments of the present invention are applied for encoding single-view image videos, MSM coding measurement may also be performed on the current macro block to be encoded based on all the combinations of the MMI in the searching range determined in the view-point image. Optimal MMI is selected according to a rate-distortion performance optimality principle, and serves as reference MMI for encoding the current macro block to be encoded. Position information of the selected MMI in the view-point image is written into an encoded stream.
  • Though the above embodiments are described based on the JMVM, the technical solutions provided in the embodiments of the present invention may also be implemented based on other MVC standards, and the implementation principles are similar to the present invention, so the details may not be given herein again.
  • In view of the above, video coding and decoding solutions based on an MSM provided in the embodiments of the present invention may be expanded in parallel from MVC to single-view video coding, and a shift skip mode part is added in the original skip mode, thereby improving the coding efficiency. Specifically, the following efficacies are achieved.
  • As a block smaller than 16×16 pixels is used as a base unit to deduce the GDV and deduce the MMI of the currently encoded macro block in the view-point reference image. In this manner, the GDV between the currently encoded image and the view-point reference image is accurately obtained, and the MMI of the currently encoded macro block at a corresponding position in the view-point reference image is also accurately obtained. Definitely, in order to obtain a higher accuracy, a smaller block may be used as a base unit to deduce the GDV and deduce the MMI of the currently encoded macro block in the view-point reference image, for example, a 4x4 or 2x2 block is used as a base unit for deducing.
  • 2. The corresponding MMI is accurately found for each macro block of the encoded image in the view-point reference image, thereby improving the coding efficiency of the MVC.
  • 3. When the currently encoded image has a plurality of view-point reference images, according to the embodiments of the present invention, the MMI of the optimal performance is found in the view-point reference images, so as to fully utilize the motion information in all the view-point reference images, thereby further improving the coding efficiency of the MVC.
  • 4. When the optimal MMI is searched in the searching range, the coding efficiency of the MVC is improved according to the combination mode of the MMI provided in the embodiments of the present invention.
  • Definitely, the second, third, and fourth improvements proposed in the solutions according to the embodiments of the present invention may be combined in different modes and used together with the first improvement upon actual requirements based on the first improvement.
  • Those of ordinary skill in the art should understand that all or a part of the process of the method according to the embodiments of the present invention may be implemented by a program instructing relevant hardware. The program may be stored in a computer readable storage medium. When the program is run, the process of the method according to the embodiments of the present invention is performed. The storage medium may be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM).
  • In accordance with the embodiments of the method of the present invention, coders and decoders with the following configurations are provided in the embodiments of the present invention.
  • In a first configuration, the coder according to an embodiment of the present invention includes: a unit, configured to determine a corresponding reference block of a current macro block to be encoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; and a unit, configured to encode the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • In a second configuration, the coder according to an embodiment of the present invention includes: a unit, configured to, for each view-point reference image of a current image, determine a corresponding reference block of a current macro block to be encoded in the view-point reference image, according to a direction of a disparity vector from the current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; a unit, configured to perform MSM coding measurement on the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block of the current macro block to be encoded in each view-point reference image belongs to; a unit, configured to select an optimal macro block from the macro blocks, according to a rate-distortion performance optimality principle based on measurement results; and a unit, configured to encode the current macro block to be encoded, according to motion information of the selected macro block, and carry in an encoded stream a flag of the view-point reference image where the selected macro block is located.
  • In a third configuration, the coder according to an embodiment of the present invention includes: a unit, configured to determine a corresponding reference block of a current macro block to be encoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; a unit, configured to perform MSM coding measurement on the current macro block to be encoded, according to motion information of each macro block formed by base unit blocks within a specified range around the determined corresponding reference block; a unit, configured to select an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results; and a unit, configured to encode the current macro block to be encoded, according to motion information of the selected macro block.
  • In a fourth configuration, the coder according to an embodiment of the present invention includes: a unit, configured to, for each view-point reference image of a current image, determine a corresponding reference block of a current macro block to be encoded in the view-point reference image, according to a direction of a disparity vector from the current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; a unit, configured to perform MSM measurement on the current macro block to be encoded, according to motion information of each macro block formed by the base unit blocks within a specified range around the determined corresponding reference block; a unit, configured to select an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results; a unit, configured to perform MSM coding measurement on the current macro block to be encoded, according to motion information of the macro block selected from each view-point reference image; a unit, configured to select an optimal macro block from the macro blocks selected from the view-point reference images, according to the rate-distortion performance optimality principle based on measurement results; and a unit, configured to encode the current macro block to be encoded, according to motion information of the selected macro block, and carry in an encoded stream a flag of the view-point reference image where the selected macro block is located.
  • In a fifth configuration, the coder according to an embodiment of the present invention includes: a unit, configured to determine a corresponding reference block of a current macro block to be encoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16×16 pixels as a base unit; and a unit, configured to encode the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • In a sixth configuration, the coder according to an embodiment of the present invention includes: a unit, configured to determine a corresponding reference block of a current macro block to be encoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16×16 pixels as a base unit; a unit, configured to perform MSM measurement on the current macro block to be encoded, according to motion information of each macro block formed by the base unit blocks within a specified range around the determined corresponding reference block; a unit, configured to select an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results; and a unit, configured to encode the current macro block to be encoded, according to motion information of the selected macro block.
  • The decoders provided in the embodiments of the present invention may have the following configurations.
  • In a first configuration, the decoder according to an embodiment of the present invention includes: a unit, configured to determine a corresponding reference block of a current macro block to be decoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; and a unit, configured to decode the current macro block to be decoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • In a second configuration, the decoder according to an embodiment of the present invention includes: a unit, configured to decode a view-point reference image flag carried in a received encoded stream; a unit, configured to determine a corresponding reference block of a current macro block to be decoded in an obtained view-point reference image identified by the view-point reference image flag, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; and a unit, configured to decode the current macro block to be decoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  • In a third configuration, the decoder according to an embodiment of the present invention includes: a unit, configured to determine a corresponding reference block of a current macro block to be decoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; a unit, configured to decode offset information carried in a received encoded stream; and a unit, configured to deviate by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decode the current macro block to be decoded, according to motion information of the obtained macro block.
  • In a fourth configuration, the decoder according to an embodiment of the present invention includes: a unit, configured to decode a view-point reference image flag carried in a received encoded stream; a unit, configured to determine a corresponding reference block of a current macro block to be decoded in an obtained view-point reference image identified by the view-point reference image flag, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; a unit, configured to decode offset information carried in the received encoded stream; and a unit, configured to deviate by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decode the current macro block to be decoded, according to motion information of the obtained macro block.
  • In a fifth configuration, the decoder according to an embodiment of the present invention includes: a unit, configured to determine a corresponding reference block of a current macro block to be decoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16×16 pixels as a base unit; and a unit, configured to decode the current macro block to be decoded, according to motion information of the macro block that the determined corresponding reference block belongs to.
  • In a sixth configuration, the decoder according to an embodiment of the present invention includes: a unit, configured to determine a corresponding reference block of a current macro block to be decoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16×16 pixels as a base unit; a unit, configured to decode offset information carried in a received encoded stream; and a unit, configured to deviate by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decode the current macro block to be decoded, according to motion information of the obtained macro block.
  • It is apparent to persons skilled in the art that modifications and variations can be made to the present invention without departing from the spirit or scope of the invention. Moreover, through simple concept extensions, the corresponding reference block can be determined by using simple conversion between global depth information and global disparity. Therefore, it is intended that the present invention cover modifications and variations of this invention provided they fall within the scope of the following claims and their equivalents.

Claims (38)

  1. A multi-view video coding (MVC) method based on a motion skip mode (MSM), comprising:
    determining a corresponding reference block of a current macro block to be encoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; and
    encoding the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  2. The method according to claim 1, wherein when base unit blocks forming the macro block that the corresponding reference block belongs to are located in different macro blocks of the reference image, the macro block is combined according to macro block modes of the base unit blocks.
  3. A multi-view video decoding method based on a motion skip mode (MSM), comprising:
    determining a corresponding reference block of a current macro block to be decoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; and
    decoding the current macro block to be decoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  4. The method according to claim 3, wherein when base unit blocks forming the macro block that the corresponding reference block belongs to are located in different macro blocks of the reference image, the macro block is combined according to macro block modes of the base unit blocks.
  5. A multi-view video coder based on a motion skip mode (MSM), comprising:
    a unit, configured to determine a corresponding reference block of a current macro block to be encoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; and
    a unit, configured to encode the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  6. A multi-view video decoder based on a motion skip mode (MSM), comprising:
    a unit, configured to determine a corresponding reference block of a current macro block to be decoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; and
    a unit, configured to decode the current macro block to be decoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  7. A multi-view video coding (MVC) method based on a motion skip mode (MSM), comprising:
    for each view-point reference image of a current image, determining a corresponding reference block of a current macro block to be encoded in each view-point reference image, according to a direction of a global disparity vector (GDV) from the current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit;
    performing MSM coding measurement on the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block of the current macro block to be encoded in each view-point reference image belongs to;
    selecting an optimal macro block from the macro blocks, according to a rate-distortion performance optimality principle based on measurement results; and
    encoding the current macro block to be encoded, according to motion information of the selected macro block, and carrying in an encoded stream a flag of the view-point reference image where the selected macro block is located.
  8. The method according to claim 7, wherein when base unit blocks forming the macro block that the corresponding reference block belongs to are located in different macro blocks of the reference image, the macro block is combined according to macro block modes of the base unit blocks.
  9. A multi-view video decoding method based on a motion skip mode (MSM), comprising:
    decoding a view-point reference image flag carried in a received encoded stream;
    determining a corresponding reference block of a current macro block to be decoded in an obtained view-point reference image identified by the view-point reference image flag, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; and
    decoding the current macro block to be decoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  10. The method according to claim 9, wherein when base unit blocks forming the macro block that the corresponding reference block belongs to are located in different macro blocks of the reference image, the macro block is combined according to macro block modes of the base unit blocks.
  11. A multi-view video coder based on a motion skip mode (MSM), comprising:
    a unit, configured to, for each view-point reference image of a current image, determine a corresponding reference block of a current macro block to be encoded in each view-point reference image, according to a direction of a disparity vector from the current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit;
    a unit, configured to perform MSM coding measurement on the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block of the current macro block to be encoded in each view-point reference image belongs to;
    a unit, configured to select an optimal macro block from the macro blocks, according to a rate-distortion performance optimality principle based on measurement results; and
    a unit, configured to encode the current macro block to be encoded, according to motion information of the selected macro block, and carry in an encoded stream a flag of the view-point reference image where the selected macro block is located.
  12. A multi-view video decoder based on a motion skip mode (MSM), comprising:
    a unit, configured to decode a view-point reference image flag carried in a received encoded stream;
    a unit, configured to determine a corresponding reference block of a current macro block to be decoded in an obtained view-point reference image identified by the view-point reference image flag, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit; and
    a unit, configured to decode the current macro block to be decoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  13. A multi-view video coding (MVC) method based on a motion skip mode (MSM), comprising:
    determining a corresponding reference block of a current macro block to be encoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit;
    performing MSM coding measurement on the current macro block to be encoded, according to motion information of each macro block formed by base unit blocks within a specified range around the determined corresponding reference block;
    selecting an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results; and
    encoding the current macro block to be encoded, according to motion information of the selected macro block.
  14. The method according to claim 13, wherein when the base unit blocks forming the macro block are located in different macro blocks of the reference image, the macro block is combined according to macro block modes of the base unit blocks.
  15. The method according to claim 13, further comprising:
    encoding offset information of the selected macro block relative to the corresponding reference block into an encoded stream.
  16. A multi-view video decoding method based on a motion skip mode (MSM), comprising:
    determining a corresponding reference block of a current macro block to be decoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit;
    decoding offset information carried in a received encoded stream; and
    deviating by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decoding the current macro block to be decoded, according to motion information of the obtained macro block.
  17. The method according to claim 16, wherein when base unit blocks forming the macro block that the determined corresponding reference block belongs to are located in different macro blocks of the reference image, the macro block is combined according to macro block modes of the base unit blocks.
  18. A multi-view video coder based on a motion skip mode (MSM), comprising:
    a unit, configured to determine a corresponding reference block of a current macro block to be encoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit;
    a unit, configured to perform MSM coding measurement on the current macro block to be encoded, according to motion information of each macro block formed by base unit blocks within a specified range around the determined corresponding reference block;
    a unit, configured to select an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results; and
    a unit, configured to encode the current macro block to be encoded, according to motion information of the selected macro block.
  19. A multi-view video decoder based on a motion skip mode (MSM), comprising:
    a unit, configured to determine a corresponding reference block of a current macro block to be decoded in a view-point reference image, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit;
    a unit, configured to decode offset information carried in a received encoded stream; and
    a unit, configured to deviate by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decode the current macro block to be decoded, according to motion information of the obtained macro block.
  20. A multi-view video coding (MVC) method based on a motion skip mode (MSM), comprising:
    for each view-point reference image of a current image,
    determining a corresponding reference block of a current macro block to be encoded in the view-point reference image, according to a direction of a disparity vector from the current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit;
    performing MSM measurement on the current macro block to be encoded, according to motion information of each macro block formed by base unit blocks within a specified range around the determined corresponding reference block;
    selecting an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results;
    performing MSM coding measurement on the current macro block to be encoded, according to motion information of the macro block selected from each view-point reference image;
    selecting an optimal macro block from the macro blocks selected from the view-point reference images, according to the rate-distortion performance optimality principle based on measurement results; and
    encoding the current macro block to be encoded, according to the motion information of the selected macro block, and carrying in an encoded stream a flag of the view-point reference image where the selected macro block is located.
  21. The method according to claim 20, wherein when the base unit blocks forming the macro block are located in different macro blocks of the reference image, the macro block is combined according to macro block modes of the base unit blocks.
  22. The method according to claim 20, further comprising:
    encoding into the encoded stream offset information of the selected macro block relative to the corresponding reference block of the current macro block to be encoded in the reference image where the selected macro block is located.
  23. A multi-view video decoding method based on a motion skip mode (MSM), comprising:
    decoding a view-point reference image flag carried in a received encoded stream;
    determining a corresponding reference block of a current macro block to be decoded in an obtained view-point reference image identified by the view-point reference image flag, according to a direction of a disparity vector from a current image relative to the view-point
    reference image deduced by using a block smaller than 16×16 pixels as a base unit;
    decoding offset information carried in the received encoded stream; and
    deviating by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decoding the current macro block to be decoded, according to motion information of the obtained macro block.
  24. A multi-view video coder based on a motion skip mode (MSM), comprising:
    a unit, configured to, for each view-point reference image of a current image, determine a corresponding reference block of a current macro block to be encoded in the view-point reference image, according to a direction of a disparity vector from the current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit;
    a unit, configured to perform MSM measurement on the current macro block to be encoded, according to motion information of each macro block formed by base unit blocks within a specified range around the determined corresponding reference block;
    a unit, configured to select an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results;
    a unit, configured to perform MSM coding measurement on the current macro block to be encoded, according to motion information of the macro block selected from each view-point reference image;
    a unit, configured to select an optimal macro block from the macro blocks selected from the view-point reference images, according to the rate-distortion performance optimality principle based on measurement results; and
    a unit, configured to encode the current macro block to be encoded, according to motion information of the selected macro block, and carry in an encoded stream a flag of the view-point reference image where the selected macro block is located.
  25. A multi-view video decoder based on a motion skip mode (MSM), comprising:
    a unit, configured to decode a view-point reference image flag carried in a received encoded stream;
    a unit, configured to determine a corresponding reference block of a current macro block to be decoded in an obtained view-point reference image identified by the view-point reference image flag, according to a direction of a disparity vector from a current image relative to the view-point reference image deduced by using a block smaller than 16×16 pixels as a base unit;
    a unit, configured to decode offset information carried in the received encoded stream; and
    a unit, configured to deviate by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decode the current macro block to be decoded, according to motion information of the obtained macro block.
  26. A single-view video coding method based on a motion skip mode (MSM), comprising:
    determining a corresponding reference block of a current macro block to be encoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16×16 pixels as a base unit; and
    encoding the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  27. The method according to claim 26, wherein when base unit blocks forming the macro block that the corresponding reference block belongs to are located in different macro blocks of the reference image, the macro block is combined according to macro block modes of the base unit blocks.
  28. A single-view video decoding method based on a motion skip mode (MSM), comprising:
    determining a corresponding reference block of a current macro block to be decoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16×16 pixels as a base unit; and
    decoding the current macro block to be decoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  29. The method according to claim 28, wherein when base unit blocks forming the macro block that the corresponding reference block belongs to are located in different macro blocks of the reference image, the macro block is combined according to macro block modes of the base unit blocks.
  30. A single-view video coder based on a motion skip mode (MSM), comprising:
    a unit, configured to determine a corresponding reference block of a current macro block to be encoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16×16 pixels as a base unit; and
    a unit, configured to encode the current macro block to be encoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  31. A single-view video decoder based on a motion skip mode (MSM), comprising:
    a unit, configured to determine a corresponding reference block of a current macro block to be decoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16×16 pixels as a base unit; and
    a unit, configured to decode the current macro block to be decoded, according to motion information of a macro block that the determined corresponding reference block belongs to.
  32. A single-view video coding method based on a motion skip mode (MSM), comprising:
    determining a corresponding reference block of a current macro block to be encoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16×16 pixels as a base unit;
    performing MSM measurement on the current macro block to be encoded, according to motion information of each macro block formed by base unit blocks within a specified range around the determined corresponding reference block;
    selecting an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results; and
    encoding the current macro block to be encoded, according to motion information of the selected macro block.
  33. The method according to claim 32, wherein when the base unit blocks forming the macro block are located in different macro blocks of the reference image, the macro block is combined according to macro block modes of the base unit blocks.
  34. The method according to claim 32, further comprising:
    encoding offset information of the selected macro block relative to the corresponding reference block into an encoded stream.
  35. A single-view video decoding method based on a motion skip mode (MSM), comprising:
    determining a corresponding reference block of a current macro block to be decoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16×16 pixels as a base unit;
    decoding offset information carried in a received encoded stream; and
    deviating by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decoding the current macro block to be decoded, according to motion information of the obtained macro block.
  36. The method according to claim 35, wherein when base unit blocks forming the macro block are located in different macro blocks of the reference image, the macro block is combined according to macro block modes of the base unit blocks.
  37. A single-view video coder based on a motion skip mode (MSM), comprising:
    a unit, configured to determine a corresponding reference block of a current macro block to be encoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16×16 pixels as a base unit;
    a unit, configured to perform MSM measurement on the current macro block to be encoded, according to motion information of each macro block formed by base unit blocks within a specified range around the determined corresponding reference block;
    a unit, configured to select an optimal macro block from the specified range around the reference block, according to a rate-distortion performance optimality principle based on measurement results; and
    a unit, configured to encode the current macro block to be encoded, according to motion information of the selected macro block.
  38. A single-view video decoder based on a motion skip mode (MSM), comprising:
    a unit, configured to determine a corresponding reference block of a current macro block to be decoded in an adjacent frame image, according to a direction of a motion vector from a current image relative to the adjacent frame image deduced by using a block smaller than 16×16 pixels as a base unit;
    a unit, configured to decode offset information carried in a received encoded stream; and
    a unit, configured to deviate by a corresponding offset in the determined corresponding reference block according to the offset information to obtain a corresponding macro block, and decode the current macro block to be decoded according to motion information of the obtained macro block.
EP08839871A 2007-10-15 2008-10-09 The video encoding and decoding method and corresponding codec based on the motion skip mode Ceased EP2207351A4 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN200710180315.9A CN101415115B (en) 2007-10-15 2007-10-15 Method for encoding and decoding video based on movement dancing mode, and encoder and decoder thereof
PCT/CN2008/072622 WO2009049533A1 (en) 2007-10-15 2008-10-09 The video encoding and decoding method and corresponding codec based on the motion skip mode

Publications (2)

Publication Number Publication Date
EP2207351A1 true EP2207351A1 (en) 2010-07-14
EP2207351A4 EP2207351A4 (en) 2010-11-24

Family

ID=40567015

Family Applications (1)

Application Number Title Priority Date Filing Date
EP08839871A Ceased EP2207351A4 (en) 2007-10-15 2008-10-09 The video encoding and decoding method and corresponding codec based on the motion skip mode

Country Status (4)

Country Link
US (1) US20100220791A1 (en)
EP (1) EP2207351A4 (en)
CN (1) CN101415115B (en)
WO (1) WO2009049533A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2452491A4 (en) * 2009-07-17 2014-03-12 Samsung Electronics Co Ltd Method and apparatus for multi-view video coding and decoding
CN104704819A (en) * 2012-10-03 2015-06-10 联发科技股份有限公司 Method and apparatus of disparity vector derivation and inter-view motion vector prediction for 3D video coding
US9762924B2 (en) 2011-07-02 2017-09-12 Samsung Electronics Co., Ltd. Method and apparatus for coding video, and method and apparatus for decoding video accompanied by inter prediction using collocated image
US10785500B2 (en) 2010-11-04 2020-09-22 Ge Video Compression, Llc Picture coding supporting block merging and skip mode

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101483750B1 (en) * 2009-07-24 2015-01-19 삼성전자주식회사 Method and apparatus for image encoding, and method and apparatus for image decoding
US8861879B2 (en) 2009-09-17 2014-10-14 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding image based on skip mode
JP2012009934A (en) * 2010-06-22 2012-01-12 Sony Corp Image processing apparatus and image processing method
CN102025992B (en) * 2010-11-23 2012-11-21 浙江大学 Reference-image management method for interframe predicting process in H.264 video decoding system
KR101893559B1 (en) 2010-12-14 2018-08-31 삼성전자주식회사 Apparatus and method for encoding and decoding multi-view video
KR20120095610A (en) * 2011-02-21 2012-08-29 삼성전자주식회사 Method and apparatus for encoding and decoding multi-view video
US9105076B2 (en) * 2011-03-08 2015-08-11 Sony Corporation Image processing apparatus, image processing method, and program
CN102137259B (en) * 2011-04-13 2013-03-27 清华大学 Method and device for coding two paths of three-dimensional videos
WO2012172634A1 (en) * 2011-06-13 2012-12-20 株式会社東芝 Image encoding device, image decoding device, method, and program
MX338738B (en) * 2011-08-31 2016-04-29 Sony Corp Encoding device, encoding method, decoding device, and decoding method.
KR20240027889A (en) 2011-11-11 2024-03-04 지이 비디오 컴프레션, 엘엘씨 Efficient Multi-View Coding Using Depth-Map Estimate and Update
WO2013068548A2 (en) 2011-11-11 2013-05-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Efficient multi-view coding using depth-map estimate for a dependent view
EP2781091B1 (en) 2011-11-18 2020-04-08 GE Video Compression, LLC Multi-view coding with efficient residual handling
US9445076B2 (en) * 2012-03-14 2016-09-13 Qualcomm Incorporated Disparity vector construction method for 3D-HEVC
US20150085933A1 (en) * 2012-04-30 2015-03-26 Humax Co., Ltd. Method and apparatus for encoding multi-view images, and method and apparatus for decoding multi-view images
US20150201215A1 (en) * 2012-07-27 2015-07-16 Mediatek Inc. Method of constrain disparity vector derivation in 3d video coding
CN110996100B (en) 2012-10-01 2022-11-25 Ge视频压缩有限责任公司 Decoder, decoding method, encoder, and encoding method
KR20140051789A (en) * 2012-10-22 2014-05-02 (주)휴맥스 Methods for performing inter-view motion prediction in 3d video and methods for determining inter-view merging candidate
US10334259B2 (en) 2012-12-07 2019-06-25 Qualcomm Incorporated Advanced residual prediction in scalable and multi-view video coding
WO2014107853A1 (en) * 2013-01-09 2014-07-17 Mediatek Singapore Pte. Ltd. Methods for disparity vector derivation
CN104904219B (en) * 2013-01-09 2018-07-06 寰发股份有限公司 Block coding apparatus and method
EP2932720A4 (en) * 2013-04-10 2016-07-27 Mediatek Inc Method and apparatus of disparity vector derivation for three-dimensional and multi-view video coding
WO2015021914A1 (en) * 2013-08-13 2015-02-19 Mediatek Inc. Method of deriving default disparity vector in 3d and multiview video coding
CN104581159B (en) * 2013-10-18 2019-04-05 华为技术有限公司 Block partitioning scheme in coding and decoding video determines method and relevant apparatus
WO2018223353A1 (en) * 2017-06-08 2018-12-13 深圳市大疆创新科技有限公司 Video coding method, video decoding method, and related device
CN112640462A (en) * 2018-09-05 2021-04-09 华为技术有限公司 Image decoding method and device of video sequence and terminal equipment

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005268879A (en) * 2004-03-16 2005-09-29 Matsushita Electric Ind Co Ltd Image coding method and apparatus thereof
WO2007148906A1 (en) * 2006-06-19 2007-12-27 Lg Electronics, Inc. Method and apparatus for processing a vedeo signal

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5612735A (en) * 1995-05-26 1997-03-18 Luncent Technologies Inc. Digital 3D/stereoscopic video compression technique utilizing two disparity estimates
US7095786B1 (en) * 2003-01-11 2006-08-22 Neo Magic Corp. Object tracking using adaptive block-size matching along object boundary and frame-skipping when object motion is low
JP2006333436A (en) * 2005-01-07 2006-12-07 Ntt Docomo Inc Motion image encoding apparatus, method, and program, and motion image decoding apparatus, method, and program
KR100716992B1 (en) * 2005-02-04 2007-05-10 삼성전자주식회사 Method for encoding and decoding of stereo video, and apparatus thereof
CN1658673A (en) * 2005-03-23 2005-08-24 南京大学 Video compression coding-decoding method
KR100636785B1 (en) * 2005-05-31 2006-10-20 삼성전자주식회사 Multi-view image system and method for compressing and decompressing applied to the same
US8644386B2 (en) * 2005-09-22 2014-02-04 Samsung Electronics Co., Ltd. Method of estimating disparity vector, and method and apparatus for encoding and decoding multi-view moving picture using the disparity vector estimation method
CN100463527C (en) * 2005-10-18 2009-02-18 宁波大学 Multi view point video image parallax difference estimating method
CN101491096B (en) * 2006-07-12 2012-05-30 Lg电子株式会社 Signal processing method and apparatus thereof
KR20080066522A (en) * 2007-01-11 2008-07-16 삼성전자주식회사 Method and apparatus for encoding and decoding multi-view image
WO2009020542A1 (en) * 2007-08-06 2009-02-12 Thomson Licensing Methods and apparatus for motion skip mode with multiple inter-view reference pictures

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005268879A (en) * 2004-03-16 2005-09-29 Matsushita Electric Ind Co Ltd Image coding method and apparatus thereof
WO2007148906A1 (en) * 2006-06-19 2007-12-27 Lg Electronics, Inc. Method and apparatus for processing a vedeo signal

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
CLEWER D R ET AL: "Efficient multiview image compression using quadtree disparity estimation" ISCAS 2001. THE 2001 IEEE INTERNATIONAL SYMPOSIUM ON CIRCUITS AND SYSTEMS (CAT. NO.01CH37196) IEEE PISCATAWAY, NJ, USA; [IEEE INTERNATIONAL SYMPOSIUM ON CIRCUITS AND SYSTEMS],, vol. 5, 6 May 2001 (2001-05-06), pages 295-298, XP010542090 ISBN: 978-0-7803-6685-5 *
KOO H S ET AL: "MVC motion skip mode" ITU STUDY GROUP 16 - VIDEO CODING EXPERTS GROUP -ISO/IEC MPEG & ITU-T VCEG(ISO/IEC JTC1/SC29/WG11 AND ITU-T SG16 Q6), XX, XX, no. JVT-W081, 19 April 2007 (2007-04-19), XP030007041 *
KWAN-JUNG OH ET AL: "Global Disparity Compensation for Multi-view Video Coding" ITU STUDY GROUP 16 - VIDEO CODING EXPERTS GROUP -ISO/IEC MPEG & ITU-T VCEG(ISO/IEC JTC1/SC29/WG11 AND ITU-T SG16 Q6), XX, XX, no. M13939, 17 October 2006 (2006-10-17), XP030042607 *
See also references of WO2009049533A1 *
Y-W CHEN ET AL: "MVC adapt MB & motion skip flags" ITU STUDY GROUP 16 - VIDEO CODING EXPERTS GROUP -ISO/IEC MPEG & ITU-T VCEG(ISO/IEC JTC1/SC29/WG11 AND ITU-T SG16 Q6), XX, XX, no. JVT-X047, 27 June 2007 (2007-06-27), XP030007154 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2452491A4 (en) * 2009-07-17 2014-03-12 Samsung Electronics Co Ltd Method and apparatus for multi-view video coding and decoding
US10785500B2 (en) 2010-11-04 2020-09-22 Ge Video Compression, Llc Picture coding supporting block merging and skip mode
US10841608B2 (en) 2010-11-04 2020-11-17 Ge Video Compression, Llc Picture coding supporting block merging and skip mode
TWI725348B (en) * 2010-11-04 2021-04-21 美商Ge影像壓縮有限公司 Picture coding supporting block merging and skip mode, and related apparatus, method, computer program and digital storage medium
US11785246B2 (en) 2010-11-04 2023-10-10 Ge Video Compression, Llc Picture coding supporting block merging and skip mode
US9762924B2 (en) 2011-07-02 2017-09-12 Samsung Electronics Co., Ltd. Method and apparatus for coding video, and method and apparatus for decoding video accompanied by inter prediction using collocated image
RU2636100C1 (en) * 2011-07-02 2017-11-20 Самсунг Электроникс Ко., Лтд. Method and device for video encoding, as well as method and device for video decoding supported by mutual forecasting using co-located image
US10034014B2 (en) 2011-07-02 2018-07-24 Samsung Electronics Co., Ltd. Method and apparatus for coding video, and method and apparatus for decoding video accompanied by inter prediction using collocated image
US10397601B2 (en) 2011-07-02 2019-08-27 Samsung Electronics Co., Ltd. Method and apparatus for coding video, and method and apparatus for decoding video accompanied by inter prediction using collocated image
CN104704819A (en) * 2012-10-03 2015-06-10 联发科技股份有限公司 Method and apparatus of disparity vector derivation and inter-view motion vector prediction for 3D video coding
CN104704819B (en) * 2012-10-03 2016-12-21 联发科技股份有限公司 The difference vector of 3D Video coding is derived and the method and device of motion-vector prediction between view

Also Published As

Publication number Publication date
CN101415115B (en) 2011-02-02
US20100220791A1 (en) 2010-09-02
CN101415115A (en) 2009-04-22
EP2207351A4 (en) 2010-11-24
WO2009049533A1 (en) 2009-04-23

Similar Documents

Publication Publication Date Title
EP2207351A1 (en) The video encoding and decoding method and corresponding codec based on the motion skip mode
US9172942B2 (en) Method and apparatus for generating header information of stereoscopic image data
US10070147B2 (en) Method predicting view synthesis in multi-view video coding and method for constituting merge candidate list by using same
US10021367B2 (en) Method and apparatus of inter-view candidate derivation for three-dimensional video coding
US9571835B2 (en) Method and apparatus for processing a signal
US7817181B2 (en) Method, medium, and apparatus for 3-dimensional encoding and/or decoding of video
CN102918836B (en) Frame for asymmetric stereo video encapsulates
KR100728009B1 (en) Method and apparatus for encoding multiview video
KR100779875B1 (en) Method for setting reference frame order for multi-view coding and computer readable medium storing thereof
Saldanha et al. Fast 3D-HEVC depth map encoding using machine learning
US8902982B2 (en) Depth map coding and decoding apparatus and method
US20070064800A1 (en) Method of estimating disparity vector, and method and apparatus for encoding and decoding multi-view moving picture using the disparity vector estimation method
US20060013490A1 (en) 3D video coding using sup-sequences
KR20080063323A (en) Multi-view video coding using scalable video coding
WO2007052969A1 (en) Method and apparatus for encoding multiview video
WO2009155827A1 (en) Method, apparatus and system for stereo video encoding and decoding
US20160234510A1 (en) Method of Coding for Depth Based Block Partitioning Mode in Three-Dimensional or Multi-view Video Coding
MX2008002391A (en) Method and apparatus for encoding multiview video.
US20160065983A1 (en) Method and apparatus for encoding multi layer video and method and apparatus for decoding multilayer video
US9967574B2 (en) Method and apparatus for decoding multi-layer video, and method and apparatus for encoding multi-layer video
KR101386651B1 (en) Multi-View video encoding and decoding method and apparatus thereof
US20160044330A1 (en) Method and apparatus for decoding multi-layer video, and method and apparatus for encoding multi-layer video
US20130100245A1 (en) Apparatus and method for encoding and decoding using virtual view synthesis prediction
Conti et al. Influence of self-similarity on 3D holoscopic video coding performance
JP2012028960A (en) Image decoding device, image decoding method and image decoding program

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20100423

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MT NL NO PL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL BA MK RS

A4 Supplementary search report drawn up and despatched

Effective date: 20101025

DAX Request for extension of the european patent (deleted)
17Q First examination report despatched

Effective date: 20120223

REG Reference to a national code

Ref country code: DE

Ref legal event code: R003

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN REFUSED

18R Application refused

Effective date: 20131217