WO2019076764A1 - Methods for encoding and decoding a data flow representing an omnidirectional video - Google Patents

Methods for encoding and decoding a data flow representing an omnidirectional video Download PDF

Info

Publication number
WO2019076764A1
WO2019076764A1 PCT/EP2018/077922 EP2018077922W WO2019076764A1 WO 2019076764 A1 WO2019076764 A1 WO 2019076764A1 EP 2018077922 W EP2018077922 W EP 2018077922W WO 2019076764 A1 WO2019076764 A1 WO 2019076764A1
Authority
WO
WIPO (PCT)
Prior art keywords
video
enhancement layer
image
representative
decoding
Prior art date
Application number
PCT/EP2018/077922
Other languages
French (fr)
Inventor
Thibaud BIATEK
Original Assignee
Tdf
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 Tdf filed Critical Tdf
Priority to US16/756,755 priority Critical patent/US11172223B2/en
Priority to CN201880068327.9A priority patent/CN111357292A/en
Priority to EP18783032.8A priority patent/EP3698546A1/en
Publication of WO2019076764A1 publication Critical patent/WO2019076764A1/en
Priority to US17/500,362 priority patent/US11736725B2/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/172Methods 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 picture, frame or field
    • 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/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • 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/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/187Methods 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 a scalable video layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/34Scalability techniques involving progressive bit-plane based encoding of the enhancement layer, e.g. fine granular scalability [FGS]
    • 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/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 invention lies in the field of video compression, and more particularly immersive or omnidirectional video coding and decoding techniques (eg 180 °, 360 ° in 2D or 3D).
  • immersive or omnidirectional video coding and decoding techniques eg 180 °, 360 ° in 2D or 3D.
  • Omnidirectional video content allows you to represent a scene from a central point in any direction. We are talking about 360 ° video content when the entire field is captured. A subset of the field can also be captured, for example 180 ° only.
  • Content can be captured monoscopically (2D) or stereoscopically (3D). This type of content can be generated by assembling sequences of images captured by different cameras, or computer-generated (ex: video games in VR). The images of such video content make it possible to render via a suitable device the video in any direction.
  • a user can control the direction in which the captured scene is displayed and navigate continuously in all possible directions.
  • Such 360 ° video contents may for example be rendered using a virtual reality headset offering the user an impression of immersion in the scene captured by the 360 ° video content.
  • Such 360 ° video contents require reception devices adapted to this type of content (virtual reality headset for example) in order to offer the immersion and control functions of the view displayed by the user.
  • the broadcasting of 360 ° video contents is not retro-compatible with the existing video receiver park and is limited to receivers adapted to this type of content.
  • the content captured specifically for a 360 ° video broadcast can already be captured for a 2D or 3D video broadcast. In this case, all 360 content projected on a map is broadcast.
  • layered video encoding techniques for encoding a 2D video stream into multiple successive refinement layers providing different levels of reconstruction of the 2D video.
  • spatial scalability makes it possible to encode a video signal in several layers of increasing spatial resolution.
  • Scalability in PSNR for Peak Signal to Noise Ratio
  • Scalability in color space makes it possible to encode a video signal in several layers represented in color spaces that are larger and wider.
  • none of the existing coding techniques makes it possible to generate a video stream representative of a scene that can be decoded at the same time by a conventional 2D or 3D video decoder and by a 360 ° video decoder.
  • Document US 2016/156917 describes a method of scalable coding of a video which may be a multi-view video and in which each view of the multi-view video is encoded in one layer of the stream and predicted by another view of the video. multi-view video.
  • the invention improves the state of the art. To this end, it relates to a method of encoding a data stream representative of an omnidirectional video, comprising:
  • the at least one enhancement layer being coded by prediction with respect to the at least one base layer.
  • the invention thus makes it possible to reduce the transmission cost of the video streams when the video contents have to be transmitted both in 2D and 360 ° view or in 3D and 3D-360 ° views.
  • a conventional 2D or 3D video decoder will decode only one or more of the base layers to reconstruct a 2D or 3D video of the scene and a 360 ° compatible decoder will decode the base layer (s) and at least one enhancement layer for rebuild the 360 ° video.
  • the use of a prediction of the at least one base layer for coding the enhancement layer thus makes it possible to reduce the cost of coding the enhancement layer.
  • the invention also relates to a method of decoding a data stream representative of an omnidirectional video, comprising:
  • omnidirectional video we mean here as well a video of a scene whose entire field (360 °) is captured, a video of a scene of which a subfield of the 360 ° field is captured, for example 180 °, 160 °, 255.6 °, or other.
  • the omnidirectional video is therefore representative of a scene captured on at least one continuous part of the field at 360 °.
  • the prediction of the enhancement layer with respect to the at least one base layer comprises, for encoding or reconstructing at least one image of the enhancement layer:
  • the prediction in the enhancement layer is achieved by the addition during coding or decoding of an image of the enhancement layer of a reference image in which the images reconstructed from the base layers are projected.
  • a new reference image is added to the reference image memory of the enhancement layer. This new reference image is generated by geometric projection of all the basic images reconstructed from the base layers at a time instant.
  • the data stream comprises information representative of a type of geometric projection used to represent the omnidirectional video.
  • the view represented by the 2D or 3D video is a view extracted from the omnidirectional video.
  • the data stream comprises information representative of a type of geometric projection used to extract a view of the omnidirectional video and its location parameters.
  • such information representative of the projection and location parameters of said base image is encoded in the data stream at each image of the 360 ° video.
  • this variant makes it possible to take into account a displacement in the scene of a view serving as a prediction for the raising layer.
  • the images of the video of the base layer can correspond to images captured by moving in the scene, for example to follow a moving object in the scene.
  • the view can be captured by a moving camera or successively by several cameras located at different points of view in the scene, to follow a balloon or a player during a football match for example.
  • the data stream comprises at least two basic layers, each base layer being representative of a 2D or 3D video, each base layer being respectively representative of a view of the scene, the at least two base layers being coded independently of one another.
  • an image of the enhancement layer is coded using a group of tiles, each tile covering a region of the image of the enhancement layer, each region being distinct and disjunct from the other regions of the enhancement layer image, each tile being prediction encoded with respect to at least one base layer.
  • the decoding of the enhancement layer includes the reconstruction of a portion of the image of the enhancement layer, the reconstruction of said portion of the image comprising the decoding of the enhancement layer tiles covering the portion of the image of the enhancement layer to be reconstructed, and the decoding of the at least one base layer comprising the decoding of the base layers used to predict the tiles covering the portion of the image of the enhancement layer to be reconstructed.
  • Such a particular embodiment of the invention makes it possible to reconstruct only part of the omnidirectional image, and not the entire image. Typically, only the part being viewed by the user is reconstructed. Thus, it is not necessary to decode all the basic layers of the video stream, or even send them to the receiver. Indeed, a user can not simultaneously see the entire image of the omnidirectional video, it is thus possible to encode an omnidirectional image by a A tile mechanism for independently encoding regions of the omnidirectional image to subsequently decode only those regions of the omnidirectional image visible to the user.
  • the independent coding of the basic layers thus makes it possible to reconstruct the tiles of the omnidirectional image separately and to limit the complexity to decoding by avoiding the decoding of unnecessary basic layers.
  • information identifying the at least one base layer used to predict the tile is decoded from the data stream.
  • the invention also relates to a device for encoding a data stream representative of an omnidirectional video.
  • the coding device comprises coding means in said stream of at least one base layer representative of a 2D or 3D video, the 2D or 3D video being representative of a view of the same scene captured by the omnidirectional video , and encoding means in said stream of at least one enhancement layer representative of the omnidirectional video, said enhancement layer coding means comprising means for predicting the enhancement layer with respect to the at least one layer basic.
  • the invention also relates to a device for decoding a data stream representative of an omnidirectional video.
  • the decoding device comprises means for decoding in said stream of at least one base layer representative of a 2D or 3D video, the 2D or 3D video being representative of a view of the same scene captured by the omnidirectional video , and decoding means in said stream of at least one enhancement layer representative of the omnidirectional video, said enhancement layer decoding means comprising means for predicting the enhancement layer with respect to the at least one layer basic.
  • the coding or decoding device is particularly suitable for implementing the coding or decoding method described above.
  • the coding or decoding device may, of course, comprise the various characteristics relating to the coding or decoding method according to the invention.
  • the characteristics and advantages of this encoding device, respectively of decoding are the same as those of the coding method, respectively of decoding, and are not detailed further.
  • the decoding device is included in a terminal.
  • the invention also relates to a signal representative of an omnidirectional video, comprising coded data of at least one base layer representative of a 2D or 3D video, the 2D or 3D video being representative of a view of the same scene captured by the omnidirectional video, and coded data of at least one enhancement layer representative of the omnidirectional video, the at least one enhancement layer being coded by prediction with respect to the at least one base layer.
  • an image of the enhancement layer is coded using a group of tiles, each tile covering a region of the image of the enhancement layer, each region being distinct. and disjoined from the other regions of the enhancement layer image, each tile being prediction encoded with respect to at least one base layer.
  • the signal also comprises for each tile information identifying the at least one base layer used to predict the tile.
  • the invention also relates to a computer program comprising instructions for implementing the coding method or the decoding method according to any one of the particular embodiments described above, when said program is executed by a processor.
  • a program can use any programming language. It can be downloaded from a communication network and / or saved on a computer-readable medium.
  • This program can use any programming language, and be in the form of source code, object code, or intermediate code between source code and object code, such as in a partially compiled form, or in any other form desirable shape.
  • the invention relates to a computer-readable recording medium or information medium comprising instructions of a computer program as mentioned above.
  • the recording media mentioned above can be any entity or device capable of storing the program.
  • the medium may comprise storage means, such as a read-only memory (ROM), for example a CD-ROM or a microelectronic circuit ROM, a flash memory mounted on a removable storage medium , such as a USB key, or a magnetic mass memory type Hard-Disk Drive (HDD) or Solid-State Drive (SSD), or a combination of memories operating according to one or more data recording technologies.
  • the recording media may correspond to a transmissible medium such as an electrical signal or optical, which can be routed via an electrical or optical cable, by radio or by other means.
  • the proposed computer program can be downloaded on an Internet type network.
  • the recording media may correspond to an integrated circuit in which the program is incorporated, the circuit being adapted to execute or to be used in the execution of the method in question.
  • the coding or decoding method according to the invention can therefore be implemented in various ways, in particular in hard-wired form or in software form. 4. List of figures
  • FIG. 1A illustrates steps of the coding method according to a particular embodiment of the invention
  • FIG. 1B illustrates an example of a signal generated according to the coding method implemented according to a particular embodiment of the invention
  • FIG. 2A illustrates an image of a view of a scene captured by a 360 ° video encoded in a base layer
  • FIG. 2B illustrates the image illustrated in FIG. 2A projected in the reference frame of an image of the 360 ° video
  • FIG. 2C illustrates an image of the 360 ° video coded in an enhancement layer
  • FIGS. 2D and 2E each illustrate an image of two views of a scene captured by a 360 ° video and each coded in a base layer
  • FIG. 2F illustrates the images of the two views illustrated in FIGS. 2D and 2E projected in the reference frame of an image of the 360 ° video
  • FIG. 2G illustrates an image of the 360 ° video coded in an enhancement layer
  • FIG. 3 illustrates steps of the decoding method according to a particular embodiment of the invention
  • FIG. 4A illustrates an example of an encoder configured to implement the coding method according to a particular embodiment of the invention
  • FIG. 4B illustrates a device adapted to implement the coding method according to another particular embodiment of the invention
  • FIG. 5A illustrates an example of a decoder configured to implement the decoding method according to a particular embodiment of the invention
  • FIG. 5B illustrates a device adapted to implement the decoding method according to another particular embodiment of the invention.
  • FIGS. 6A and 6B respectively illustrate an image of the 360 ° omnidirectional video coded by independent tiles and a reference image generated from two views of two base layers and used to code the image of FIG. 6A,
  • FIGS. 7A-C respectively show a projection in a 2D plane of a 360 ° omnidirectional video with a cubemap projection, a 3D spherical representation in an XYZ repository of the 360 ° omnidirectional video, and a view extracted from the immersive content 360 ° in a 2D plane according to a rectilinear projection,
  • FIG. 7D illustrates the relationship between different geometric projections
  • FIGS. 2A, CE and G and FIGS. 7A-B are taken from 360 ° videos made available by LetlnVR as part of the JVET exploration group (for Joint Video Exploration Team in English, JVT-D0179: Test Sequences for Virtual Reality Video Coding from Letin VR, October 15-21, 2016). 5. Description of an embodiment of the invention
  • the general principle of the invention is to encode a data stream in a scalable manner thus making it possible to reconstruct and restore a 360 ° video when a receiver is adapted to receive and render such a 360 ° video and reconstruct and render a 2D video or 3D when the receiver is only suitable for rendering a 2D or 3D video.
  • the 2D or 3D video is encoded in a base layer and the 360 ° video is coded in a predicted enhancement or enhancement layer from the basecoat.
  • the stream may comprise several basic layers each corresponding to a 2D or 3D video corresponding to a view of the scene.
  • the improvement layer is thus coded by prediction from all or part of the base layers included in the stream. 5.
  • FIG. 1A illustrates steps of the coding method according to a particular embodiment of the invention.
  • a 360 ° video is scalable by extracting 360 ° video views and encoding each view into a base layer.
  • view we mean here a sequence of images acquired from a point of view of the scene captured by the 360 ° video.
  • Such an image sequence can be a monoscopic image sequence in the case of a 2D 360 ° video or a stereoscopic image sequence in the case of a 3D 360 ° video.
  • each image includes a left view and a right view coded jointly, for example in the form of an image generated using left and right views placed side by side or one at the left. above the other.
  • the encoder encoding such a stereoscopic image sequence in a base layer or enhancement layer will then encode each image including a left view and a right view as a conventional 2D image sequence.
  • the omnidirectional video is a 2D 360 ° video.
  • the number of base layers is independent of the number of views used to generate 360 ° video.
  • the number of base layers encoded in the scalable data stream is for example determined during the production of the content, or may be determined by the encoder for rate optimization purposes.
  • first and second views are extracted from the 360 video.
  • the views [1] and [2] are respectively coded during a coding step 12 of a base layer BL [1] and a coding step 13 of a base layer BL [2].
  • the base layers BL [1] and BL [2] are coded independently of each other, ie there is no coding dependency (prediction, coding context , etc.) between the coding of the images of the base layer BL [1] and the coding of the images of the base layer BL [2].
  • Each base layer BL [1] or BL [2] is decodable independently of the others.
  • this particular embodiment it is possible to code the base layers BL [1] and BL [2] in a dependent manner, for example to gain efficiency in compression.
  • this particular embodiment of the invention requires the decoder to be able to decode the two basic layers to render a conventional 2D video.
  • Figs. 2A-2C illustrate an embodiment in which a single base layer is used.
  • the images of the 360 ° video have a spatial resolution of 3840x1920 pixels and are generated by an equi-rectangular projection and the 360 ° image sequence has a frequency of 30 frames per second.
  • Figure 2C illustrates an image of 360 ° video at a time instant t coded in the enhancement layer.
  • FIG. 2A An image at the time instant t of the view extracted from the 360 ° video is illustrated in FIG. 2A.
  • the coordinates Yaw and Pitch correspond to the coordinates of the center (P in FIG. 2B) of the geometric projection of an image of the view of the base layer, the coordinates Yaw and Pitch respectively correspond to the angle ⁇ and to the angle ⁇ of the point P illustrated in the pivot format in FIG. 7B.
  • the parameters Horizontal FOV and Vertical FOV correspond respectively to the horizontal and vertical size of an image of the extracted view centered at point P in the pivot format illustrated in FIG. 7B, this image of the extracted view is represented in FIG. 7C.
  • FIG. 2B illustrates reference image 1 ref used to predict the image of the 360 ° video at time t after equirectangular geometric projection of the image of the base layer illustrated in FIG. 2A.
  • Figures 2D-2G illustrate an embodiment in which two base layers are used.
  • the images of the 360 ° video have a spatial resolution of 3840x1920 pixels and are generated by an equi-rectangular projection and the 360 ° image sequence at a frequency of 30 frames per second.
  • Figure 2G illustrates an image of 360 ° video at a time instant t encoded in the enhancement layer.
  • FIG. 2D An image at the time instant t of a first view extracted from the 360 ° video is illustrated in FIG. 2D.
  • FIG. 2E An image at the time instant t of a second view extracted from the 360 ° video is illustrated in FIG. 2E.
  • FIG. 2F illustrates the reference image 1 ref used to predict the image of the 360 ° video at the instant t after equirectangular geometric projection of the images of the first view and the second view respectively illustrated in FIGS. 2D and 2E.
  • the representation of a 360 ° omnidirectional video in a plane is defined by a geometric transformation characterizing the way in which a 360 ° omnidirectional content represented in a sphere is adapted to a representation in a plane.
  • the spherical representation of the data is used as a pivot format, it makes it possible to represent the points captured by an omnidirectional video device. Such a 3D XYZ spherical representation is illustrated in FIG. 7B.
  • the 360 ° video is represented using an equirectangular geometric transformation that can be seen as the projection of points on a cylinder surrounding the sphere.
  • Other geometrical transformations are of course possible, for example the projection in CubeMap, corresponding to a projection of the points on a cube enclosing the sphere, the faces of the cubes finally being unfolded on a plane to form the 2D image.
  • Such a CubeMap projection is for example illustrated in FIG. 7A.
  • Figure 7D illustrates in more detail the relationship between the different formats mentioned above.
  • the transition from an equirectangular A format to a cubemap B format is done through a pivotal format C characterized by a representation of the samples in an XYZ spherical system illustrated in FIG. 7B.
  • the extraction of a view D from the format A is done through this pivotal format C.
  • the extraction of a view of the immersive content is characterized by a geometrical transformation, for example by operating a projection rectilinear points of the sphere on a plane shown by the plane ABCD in Figure 7C. This projection is characterized by location parameters such as yaw, pitch, and horizontal and vertical field of view (FOV).
  • location parameters such as yaw, pitch, and horizontal and vertical field of view (FOV).
  • FIG. 8 illustrates the different steps allowing the passage between two formats.
  • a look-up table is first constructed in E80 to match the position of each sample in the destination image (l ref ) with its position corresponding in the source format (corresponding to the reconstructed images of the base layers BL [1] and BL [2] in the example described with FIG. 1A). For each position (u, v) in the destination image the following steps apply:
  • each pixel (u, v) in the destination image (l ref ) is interpolated with respect to the value at the corresponding position (u ', v') in the image source during a step E84 (corresponding to the reconstructed images of the base layers BL [1] and BL [2] in the example described with FIG. 1A).
  • An interpolation can be performed in (uV) before the value is assigned, by applying a Lanczos type interpolation filter to the decoded base layer image at the matched position.
  • the 360 ° video is coded in an improvement layer EL by prediction with respect to the BL [1] and BL [2] base layers using the image reference ref generated from the base layers .
  • a step 17 the data encoded in steps 12, 13 and 16 are multiplexed to form a bit stream comprising the coded data of the BL [1] and BL [2] base layers and the enhancement layer. EL.
  • the projection data making it possible to construct the reference image 1 ref are also coded in the bit stream and transmitted to the decoder.
  • FIG. 1B illustrates an example of a bit stream generated according to the method described with reference to FIG. 1A.
  • the bit stream comprises:
  • a PRJ information representative of the type of geometric projection used to represent the omnidirectional content for example a value indicating an equirectangular projection, an information PRJ_B1, respectively PRJ_B2, representative of the projection used to extract the view and its location parameters in the 360 ° video from the view of the base layer BL [1], respectively BL [2].
  • the information representative of the projection and location parameters of a view of the base layer can for example be coded in the form of the coordinates of the view (Yaw, Pitch, HFOV, VFOV) with the projection type (rectilinear). used to extract the view.
  • the information representative of the projection and location parameters of a view of a base layer can be coded once in the bit stream. It is thus valid for the entire sequence of images.
  • the information representative of the projection and location parameters of a view of a base layer can be coded several times in the bit stream, for example at each image, or at each group of images. It is thus valid only for an image or group of images.
  • such a variant provides the advantage that the view extracted at each time point of the sequence may correspond to a view of an object in progress. movement in the scene and followed over time.
  • FIG. 3 illustrates steps of the decoding method according to a particular embodiment of the invention.
  • the scalable bitstream representative of the 360 ° video is de-multiplexed during a step 30.
  • the coded data of the base layers, BL [1] and BL [2] in FIG. the example described here are sent to a decoder for decoding (steps 31, 33 respectively).
  • the reconstructed images of the base layers are projected (steps 32, 34 respectively) in a manner similar to the coding method on a ref reference image to serve as a prediction to the enhancement layer EL.
  • the geometric projection is performed from the projection data provided in the bit stream (projection type, projection information and view location).
  • the coded data of the enhancement layer EL are decoded (step 35) and the images of the 360 ° video are reconstructed using the ref reference images generated from geometric projections made on the base layers, as previously specified.
  • the scalable bitstream representative of the 360 ° video makes it possible to address any type of receiver. Such a scalable flow also allows each receiver to decode and reconstruct a 2D video or a 360 ° video according to its capabilities.
  • receivers such as PC, TV, tablet, etc. will only decode a base layer, and will restore a sequence of 2D images.
  • receivers adapted for 360 ° video such as virtual reality headphones, smartphones, etc., will decode base layers and enhancement layer and render 360 ° video.
  • FIG. 4A illustrates in greater detail the coding steps of a base layer and a process improvement layer described above according to a particular embodiment of the invention.
  • the case of coding an improvement layer coding a 360 ° omnidirectional video by prediction from a base layer encoding a view k is described here.
  • Each image of the view k to be encoded is divided into blocks of pixels and each block of pixels is then conventionally encoded by spatial or temporal prediction using a previously reconstructed reference image of the image sequence of the view k.
  • a prediction module P determines a prediction for a current block B k c .
  • the current block B k c is coded by spatial prediction with respect to other blocks of the same image or by temporal prediction with respect to a block of a previously coded and reconstructed reference image of the view k and stored in the MEM memory b .
  • a prediction residue is obtained by calculating the difference between the current block B k c and the prediction determined by the prediction module P.
  • This prediction residue is then transformed by a transformation module T implementing for example a transformation of DCT (Discrete Cosine Transform) type.
  • the transformed coefficients of the residue block are then quantized by a quantization module Q, and then coded by the entropy coding module C to form the coded data of the base layer BL [k].
  • DCT Discrete Cosine Transform
  • the prediction residue is reconstructed, via an inverse quantization performed by the Q "1 module and an inverse transformation performed by the T " module 1 and added to the prediction determined by the prediction module P to reconstruct the current block.
  • the reconstructed current block is then stored in order to reconstruct the current image and this reconstructed current image can be used as a reference when encoding subsequent images of the view k.
  • a projection module PROJ performs a geometrical projection of the reconstructed image in the reference image 1 ref of the 360 ° video, as illustrated in FIG. 2B and according to FIG. geometric transformation described previously.
  • the reference image l ref obtained by projection of the reconstructed image of the base layer is stored in the memory of the enhancement layer MEM e .
  • 360 ° omnidirectional video is frame-by-frame and block-wise coded.
  • Each block of pixels is conventionally encoded by spatial or temporal prediction using a reference image previously reconstructed and stored in the memory MEM e .
  • a prediction module P determines a prediction for a current block B e c of a current image of the 360 ° omnidirectional video.
  • the current block B e c is coded by spatial prediction with respect to other blocks of the same image or by temporal prediction with respect to a block of a previously coded and reconstructed reference image of the 360 ° video and stored in MEM memory e .
  • the current block B e c can also be coded by inter-layer prediction with respect to a block co-located in the reference image 1 ref obtained from the base layer.
  • a coding mode is indicated in the coded EL data of the improvement layer by an INTER coding mode signaling a block time coding, a zero motion vector, and a reference index indicating the image of the coding layer. reference of the memory MEM e used indicating the image l ref .
  • This information is coded by the entropy coder C.
  • the prediction mode determined for coding a current block B e c is for example selected from all possible prediction modes and selecting the one minimizing a rate / distortion criterion.
  • a prediction residual is obtained by calculating the difference between the current block B e c and the prediction determined by the prediction module P.
  • This prediction residue is then transformed by a transformation module T implementing for example a transformation of DCT (Discrete Cosine Transform) type.
  • the transformed coefficients of the residue block are then quantized by a quantization module Q, and then coded by the entropy coding module C to form the coded data of the enhancement layer EL.
  • the prediction residue is reconstructed, via an inverse quantization performed by the Q "1 module and an inverse transformation performed by the module T 1 and added to the prediction determined by the prediction module P to reconstruct the current block.
  • the reconstructed current block is then stored in order to reconstruct the current image and this reconstructed current image can be used as a reference when encoding subsequent images of the 360 ° omnidirectional video.
  • the coding has been described here in the case of a single view k encoded in a base layer.
  • the method is easily transposable to the case of several views coded in as many basic layers.
  • Each image reconstructed at a time t of a base layer is projected onto the same reference image 1 ref of the 360 ° video to encode an image of the 360 video at time t.
  • FIG. 4B shows the simplified structure of a coding device COD adapted to implement the coding method according to any one of the particular embodiments of the invention described above.
  • Such an encoding device comprises a memory MEM4, a processing unit UT4, equipped for example with a processor PROC4.
  • the coding method is implemented by a computer program PG4 stored in memory MEM4 and driving the processing unit UT4.
  • the computer program PG4 includes instructions for implementing the steps of the encoding method as described above, when the program is executed by the processor PROC4.
  • the code instructions of the computer program PG4 are for example loaded into a memory (not shown) before being executed by the processor PROC4.
  • the processor PROC4 of the processing unit UT4 implements in particular the steps of the coding method described in relation with FIGS. 1A or 4A, according to the instructions of the computer program PG4.
  • the coding method is implemented by functional modules (P, T, Q, Q "1 , T " 1 , C, PROJ).
  • the processing unit UT4 cooperates with the various functional modules and the memory MEM4 in order to implement the steps of the coding method.
  • the memory MEM4 can in particular comprise the memories MEM b , MEM e .
  • a functional module may include a processor, a memory, and program code instructions for implementing the function corresponding to the module when the code instructions are executed by the processor.
  • a functional module can be implemented by any type of suitable encoding circuits, such as for example and without limitation microprocessors, signal processing processors (DSP for Digital Signal Processor in English), integrated circuits specific to applications (ASICs for Application Specified Integrated) Circuit in English), FPGA circuits for Field Programmable Gate Arrays in English, logic unit wiring.
  • DSP Digital Signal Processor
  • ASICs Application Specified Integrated Circuit
  • FIG. 5A illustrates in more detail the decoding steps of a base layer and a process improvement layer described above according to a particular embodiment of the invention.
  • the case of the decoding of an enhancement layer EL coding a 360 ° omnidirectional video by prediction from a base layer BL [k] coding a view k is described here.
  • the k view and the 360 ° omnidirectional video are decoded frame by frame and block by block.
  • the data of the base layer BL [k] are decoded by an entropy decoding module D.
  • a prediction residue is reconstructed via an inverse quantization of coefficients decoded entropically by an inverse quantization module Q "1 and an inverse transformation by an inverse transformation module T 1.
  • a prediction module P determines a prediction for the current block from the signaling data decoded by the entropy decoding module D. The prediction is added to the reconstructed prediction residue to reconstruct the current block.
  • the reconstructed current block is then stored in order to reconstruct the current image and that this reconstructed current image is stored in the reference image memory of the base layer MEM b and that it can serve as a reference during the decoding of the current image. following images of view k.
  • a projection module PROJ carries out a geometric projection of the reconstructed image in the reference image 1 ref of the 360 ° omnidirectional video, as illustrated in FIG. 2B and according to FIG. the geometric transformation described above.
  • the reference image 1 ref obtained by projection of the reconstructed image of the base layer is stored in the reference image memory of the enhancement layer MEM e .
  • the data of the enhancement layer EL are decoded by an entropy decoding module D.
  • a prediction residue is reconstructed via an inverse quantization of the decoded coefficients entropically implemented. by an inverse quantization module Q "1 and an inverse transformation implemented by an inverse transformation module T " 1 .
  • a prediction module P determines a prediction for the current block from the signaling data decoded by the entropic decoding module D.
  • the decoded syntax data indicates that the current block B e c is coded by inter-layer prediction with respect to a block co-located in the reference picture l ref obtained from the base layer.
  • the prediction module therefore determines that the prediction corresponds to the block co-located at the current block B e c in the reference image l ref .
  • the prediction is added to the reconstructed prediction residue to reconstruct the current block.
  • the reconstructed current block is then stored in order to reconstruct the current image of the enhancement layer.
  • This reconstructed image is stored in the reference image memory of the enhancement layer MEM e to serve as a reference when decoding subsequent images of the 360 ° video.
  • FIG. 5B shows the simplified structure of a decoding device DEC adapted to implement the decoding method according to any one of the particular embodiments of the invention described above.
  • Such a decoding device comprises a memory MEM5, a processing unit UT5, equipped for example with a processor PROC5.
  • the decoding method is implemented by a computer program PG5 stored in memory MEM5 and driving the processing unit UT5.
  • the computer program PG5 includes instructions for implementing the steps of the decoding method as described above, when the program is executed by the processor PROC5.
  • the code instructions of the computer program PG5 are for example loaded into a memory (not shown) before being executed by the processor PROC5.
  • the processor PROC5 of the processing unit UT5 notably implements the steps of the decoding method described in relation with FIG. 3 or 5A, according to the instructions of the computer program PG5.
  • the decoding method is implemented by functional modules (P, Q "1 , T 1 , D, PROJ), for which the UT5 processing unit cooperates with the different functional modules and the memory MEM5 in order to implement the steps of the decoding method
  • the memory MEM5 may in particular comprise the memories MEM b , MEM e .
  • a functional module may include a processor, a memory, and program code instructions for implementing the function corresponding to the module when the code instructions are executed by the processor.
  • a functional module can be implemented by any type of suitable encoding circuits, such as, for example, and without limitation microprocessors, signal processing processors (DSPs for Digital Signal Processor), application-specific integrated circuits (ASICs for Application Specific Integrated Circuit), FPGAs for Field Programmable Gate Arrays in English, cabling logical units.
  • DSPs Digital Signal Processor
  • ASICs Application Specific Integrated Circuit
  • FPGAs Field Programmable Gate Arrays in English, cabling logical units.
  • the blocks of an image of the enhancement layer are coded in groups of blocks, such a group of blocks is also called a tile.
  • Each group of blocks i.e. each tile is coded independently of the other tiles.
  • Each tile can then be decoded independently of other tiles.
  • Such tiles TE0-TE1 1) are illustrated in FIG. 6A showing an image of the 360 ° omnidirectional video at a time instant in which 12 tiles are defined and completely cover the image.
  • independent coding of the tiles here is meant a coding of the blocks of a tile not using spatial prediction from a block of another tile of the image, or of temporal prediction from a block a tile of the reference image not co-located with the current tile.
  • Each tile is coded by temporal or inter-layer prediction from one or more of base layers as illustrated in FIGS. 6A and 6B.
  • the tiles TE4 and TE7 are coded by inter-layer prediction with respect to the image projected in the reference image 1 ref of the view 1 and the tiles TE3 and TE6 are coded by inter-layer prediction. relative to the image projected in the reference image l ref of the view 2.
  • a receiver adapted to decode and render a 360 ° video can only decode the tiles necessary for the current area of the 360 ° image displayed by a user. Indeed, when rendering a 360 ° video, a user can not view at a time t, the entire image of the video, ie he can not look in all directions at once and only a moment t that the area of the image in front of his eyes.
  • such a viewing area is represented by the area ZV in Figure 6A.
  • step 31 only the base layers having served to predict the area visualized by the user are decoded in step 31.
  • step 31 only the layer of base corresponding to the view 1 is decoded in the step 31, and only the tiles TE4, TE5, TE7 and TE8 are decoded in the step 35 of Figure 3, from the enhancement layer EL.
  • step 35 only the part of the image of the enhancement layer corresponding to the tiles TE4, TE5, TE7 and TE8 is reconstructed.
  • a improvement layer tile EL can be prediction coded from several base layers, depending for example on rate / distortion optimization choices made during block coding of the enhancement layer, a block of a tile that can be prediction coded with respect to a first base layer, and another block of the same tile that can be encoded by another base layer distinct from the first base layer. In this case, all the base layers used to predict the blocks of a tile of the enhancement layer must be decoded.
  • the coded data stream includes for each tile of the enhancement layer information identifying the base layers used to predict the tile. For example, for each tile, syntax elements indicating the number of base layers used and an identifier of each base layer used are encoded in the data stream. Such syntax elements are decoded for each tile of the enhancement layer to be decoded during step 35 of decoding the enhancement layer.
  • such a reference image has undefined areas, for example set to 0 by default, large size, then using memory resources unnecessarily.
  • the reconstructed images of the base layers projected on the enhancement layer can be stored in reference subpictures.
  • a subimage can be used for each base layer.
  • Each subimage is stored in association with offset information enabling the encoder and / or decoder to determine the location of the subimage in the enhancement image.
  • Such a variant can be implemented independently to the encoder and / or the decoder.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Abstract

The invention relates to a method for encoding and to a device for encoding a data flow representing an omnidirectional video, and, correlatively, to a method for decoding and to a device for decoding a data flow representing an omnidirectional video. According to the invention, the data flow representing an omnidirectional video comprises data encoded with at least one base layer representing a 2D or 3D video representing a view of a scene captured by the omnidirectional video, and data encoded with at least one enhancement layer representing the omnidirectional video, the at least one enhancement layer being predictively encoded in relation to the at least one base layer.

Description

Procédés de codage et de décodage d'un flux de données représentatif d'une vidéo omnidirectionnelle.  Methods of encoding and decoding a data stream representative of omnidirectional video
1. Domaine de l'invention 1. Field of the invention
L'invention se situe dans le domaine de la compression vidéo, et plus particulièrement des techniques de codage et de décodage de vidéo immersives ou omnidirectionnelle (ex : 180°, 360° en 2D ou 3D). The invention lies in the field of video compression, and more particularly immersive or omnidirectional video coding and decoding techniques (eg 180 °, 360 ° in 2D or 3D).
2. Art Antérieur 2. Prior Art
Un contenu vidéo omnidirectionnel permet de représenter une scène à partir d'un point central, et ce dans toutes les directions. On parle de contenu vidéo 360° lorsque l'intégralité du champ est capturé. Un sous ensemble du champ peut également être capturé, par exemple 180° seulement. Le contenu peut être capturé de façon monoscopique (2D) ou stéréoscopique (3D). Ce type de contenu peut être généré par assemblage de séquences d'images capturées par différentes caméras, ou bien généré synthétiquement par ordinateur (ex : jeux vidéo en VR). Les images d'un tel contenu vidéo permettent de restituer via un dispositif adéquat la vidéo selon n'importe quelle direction. Un utilisateur peut contrôler la direction selon laquelle la scène captée est affichée et naviguer de manière continue dans toutes les directions possibles. Omnidirectional video content allows you to represent a scene from a central point in any direction. We are talking about 360 ° video content when the entire field is captured. A subset of the field can also be captured, for example 180 ° only. Content can be captured monoscopically (2D) or stereoscopically (3D). This type of content can be generated by assembling sequences of images captured by different cameras, or computer-generated (ex: video games in VR). The images of such video content make it possible to render via a suitable device the video in any direction. A user can control the direction in which the captured scene is displayed and navigate continuously in all possible directions.
De tels contenus vidéo 360° peuvent par exemple être restitués en utilisant un casque de réalité virtuelle offrant à l'utilisateur une impression d'immersion dans la scène capturée par le contenu vidéo 360°. Such 360 ° video contents may for example be rendered using a virtual reality headset offering the user an impression of immersion in the scene captured by the 360 ° video content.
De tels contenus vidéo 360° nécessitent des dispositifs de réceptions adaptés à ce type de contenu (casque de réalité virtuelle par exemple) afin d'offrir les fonctionnalités d'immersion et de contrôle de la vue affichée par l'utilisateur.  Such 360 ° video contents require reception devices adapted to this type of content (virtual reality headset for example) in order to offer the immersion and control functions of the view displayed by the user.
Toutefois, la plupart des récepteurs de contenus vidéo actuellement déployés ne sont pas compatibles avec ce type de contenu vidéo 360° et ne permettent la restitution que de contenus vidéo 2D ou 3D classiques. En effet, la restitution d'un contenu vidéo 360° nécessite l'application de transformations géométriques aux images de la vidéo afin de restituer la direction de visualisation souhaitée.  However, most currently deployed video content receivers are not compatible with this type of 360 ° video content and only allow the rendering of conventional 2D or 3D video content. Indeed, the rendering of a 360 ° video content requires the application of geometric transformations to the images of the video in order to restore the desired viewing direction.
Ainsi, la diffusion de contenus vidéo 360° n'est pas rétro-compatible avec le parc de récepteurs vidéo existants et est limitée aux seuls récepteurs adaptés à ce type de contenus. Toutefois, on remarque que le contenu capturé spécifiquement pour une diffusion vidéo 360° peut déjà faire l'objet d'une capture pour une diffusion vidéo en 2D ou 3D. Dans ce cas, c'est l'intégralité du contenu 360 projeté sur un plan qui est diffusé.  Thus, the broadcasting of 360 ° video contents is not retro-compatible with the existing video receiver park and is limited to receivers adapted to this type of content. However, we note that the content captured specifically for a 360 ° video broadcast can already be captured for a 2D or 3D video broadcast. In this case, all 360 content projected on a map is broadcast.
De plus, la diffusion simultanée d'un même contenu capturé sous différents formats (2D ou 3D et 360°) pour adresser les différents récepteurs vidéo est coûteuse en termes de bande passante, puisqu'il faut envoyer autant de flux vidéo que de formats possibles : vues 2D, 3D, 360° de la même scène capturée. In addition, the simultaneous broadcast of the same captured content in different formats (2D or 3D and 360 °) to address the different video receivers is expensive in terms of band passing, since you have to send as many video streams as possible formats: 2D, 3D, 360 ° views of the same captured scene.
Il existe donc un besoin pour une optimisation du codage et de la diffusion de contenus vidéos omnidirectionnelles, représentant un partie (180°) ou l'intégralité d'une scène (360°) et de façon monoscopique (2D) ou stéréoscopique (3D).  There is therefore a need for optimization of the coding and broadcasting of omnidirectional video contents, representing a part (180 °) or the entirety of a scene (360 °) and monoscopically (2D) or stereoscopic (3D) .
Il existe des techniques de codage vidéo par couches, dit codage vidéo scalable ou échelonnable, permettant de coder un flux vidéo 2D en plusieurs couches de raffinement successives offrant différentes niveaux de reconstruction de la vidéo 2D. Par exemple, la scalabilité spatiale permet de coder un signal vidéo en plusieurs couches de résolutions spatiales croissantes. La scalabilité en PSNR (pour Peak Signal to Noise Ratio en anglais) permet de coder un signal vidéo pour une résolution spatiale fixe en plusieurs couches de qualité croissante. La scalabilité en espace colorimétrique permet de coder un signal vidéo en plusieurs couches représentées dans des espaces colorimétriques de plus en plus larges. Cependant, aucune des techniques de codage existantes ne permet de générer un flux de données vidéo représentatif d'une scène qui puissent être décodé à la fois par un décodeur vidéo 2D ou 3D classique et par un décodeur vidéo 360°.  There are layered video encoding techniques, referred to as scalable or scalable video coding, for encoding a 2D video stream into multiple successive refinement layers providing different levels of reconstruction of the 2D video. For example, spatial scalability makes it possible to encode a video signal in several layers of increasing spatial resolution. Scalability in PSNR (for Peak Signal to Noise Ratio) makes it possible to encode a video signal for a fixed spatial resolution in several layers of increasing quality. Scalability in color space makes it possible to encode a video signal in several layers represented in color spaces that are larger and wider. However, none of the existing coding techniques makes it possible to generate a video stream representative of a scene that can be decoded at the same time by a conventional 2D or 3D video decoder and by a 360 ° video decoder.
Le document US 2016/156917 décrit une méthode de codage scalable d'une vidéo qui peut être une vidéo multi-vues et dans lequel chaque vue de la vidéo multi-vues est codée dans une couche du flux et prédite par une autre vue de la vidéo multi-vues.  Document US 2016/156917 describes a method of scalable coding of a video which may be a multi-view video and in which each view of the multi-view video is encoded in one layer of the stream and predicted by another view of the video. multi-view video.
3. Exposé de l'invention 3. Presentation of the invention
L'invention vient améliorer l'état de la technique. Elle concerne à cet effet un procédé de codage d'un flux de données représentatif d'une vidéo omnidirectionnelle, comprenant : The invention improves the state of the art. To this end, it relates to a method of encoding a data stream representative of an omnidirectional video, comprising:
- le codage dans ledit flux d'au moins une couche de base représentative d'une vidéo 2D ou 3D, la vidéo 2D ou 3D étant représentative d'une vue d'une même scène capturée par la vidéo omnidirectionnelle (360°, 180° etc), coding in said stream of at least one base layer representative of a 2D or 3D video, the 2D or 3D video being representative of a view of the same scene captured by the omnidirectional video (360 °, 180 °) etc.),
- le codage dans ledit flux d'au moins une couche de rehaussement représentative de la vidéo omnidirectionnelle, la au moins une couche de rehaussement étant codée par prédiction par rapport à la au moins une couche de base.  coding in said stream of at least one enhancement layer representative of the omnidirectional video, the at least one enhancement layer being coded by prediction with respect to the at least one base layer.
L'invention permet ainsi de réduire le coût de transmission des flux vidéo lorsque les contenus vidéo doivent être transmis à la fois en vue 2D et en 360° ou en vue 3D et 3D- 360°. Ainsi, un décodeur vidéo 2D ou 3D classique ne décodera que la ou une des couches de base pour reconstruire une vidéo 2D ou 3D de la scène et un décodeur compatible 360° décodera la ou les couches de base et au moins une couche de rehaussement pour reconstruire la vidéo 360°. L'utilisation d'une prédiction de la au moins une couche de base pour coder la couche de rehaussement permet ainsi de réduire le coût de codage de la couche de rehaussement. Corrélativement, l'invention concerne également un procédé de décodage d'un flux de données représentatif d'une vidéo omnidirectionnelle, comprenant : The invention thus makes it possible to reduce the transmission cost of the video streams when the video contents have to be transmitted both in 2D and 360 ° view or in 3D and 3D-360 ° views. Thus, a conventional 2D or 3D video decoder will decode only one or more of the base layers to reconstruct a 2D or 3D video of the scene and a 360 ° compatible decoder will decode the base layer (s) and at least one enhancement layer for rebuild the 360 ° video. The use of a prediction of the at least one base layer for coding the enhancement layer thus makes it possible to reduce the cost of coding the enhancement layer. Correlatively, the invention also relates to a method of decoding a data stream representative of an omnidirectional video, comprising:
- le décodage à partir dudit flux d'au moins une couche de base représentative d'une vidéo 2D ou 3D, la vidéo 2D ou 3D étant représentative d'une vue d'une même scène capturée par la vidéo omnidirectionnelle,  decoding from said stream of at least one base layer representative of a 2D or 3D video, the 2D or 3D video being representative of a view of the same scene captured by the omnidirectional video,
- le décodage à partir dudit flux d'au moins une couche de rehaussement représentative de la vidéo omnidirectionnelle, la au moins une couche de rehaussement étant décodée par prédiction par rapport à la au moins une couche de base.  decoding from said stream of at least one enhancement layer representative of the omnidirectional video, the at least one enhancement layer being decoded by prediction with respect to the at least one base layer.
Par vidéo omnidirectionnelle, on entend ici aussi bien une vidéo d'une scène dont l'intégralité du champ (360°) est capturé, qu'une vidéo d'une scène dont une sous-partie du champ 360° est capturé, par exemple 180°, 160°, 255.6°, ou autre. La vidéo omnidirectionnelle est donc représentative d'une scène capturée sur au moins une partie continue du champ à 360°. By omnidirectional video, we mean here as well a video of a scene whose entire field (360 °) is captured, a video of a scene of which a subfield of the 360 ° field is captured, for example 180 °, 160 °, 255.6 °, or other. The omnidirectional video is therefore representative of a scene captured on at least one continuous part of the field at 360 °.
Selon un mode particulier de réalisation de l'invention, la prédiction de la couche de rehaussement par rapport à la au moins une couche de base comprend, pour coder ou reconstruire au moins une image de la couche de rehaussement : According to a particular embodiment of the invention, the prediction of the enhancement layer with respect to the at least one base layer comprises, for encoding or reconstructing at least one image of the enhancement layer:
- la génération d'une image de référence obtenue par projection géométrique sur l'image de référence d'une image, dite image de base, reconstruite à partir de la au moins une couche de base,  the generation of a reference image obtained by geometric projection on the reference image of an image, called the basic image, reconstructed from the at least one base layer,
- la mémorisation de ladite image de référence dans une mémoire d'images de référence de la couche de rehaussement.  storing said reference image in a reference image memory of the enhancement layer.
Avantageusement, la prédiction dans la couche de rehaussement est réalisée par l'ajout lors du codage ou du décodage d'une image de la couche de rehaussement d'une image de référence dans laquelle les images reconstruites à partir des couches de base sont projetées. Ainsi, une nouvelle image de référence est ajoutée dans la mémoire d'images de référence de la couche de rehaussement. Cette nouvelle image de référence étant générée par projection géométrique de toutes les images de base reconstruites à partir des couches de base à un instant temporel.  Advantageously, the prediction in the enhancement layer is achieved by the addition during coding or decoding of an image of the enhancement layer of a reference image in which the images reconstructed from the base layers are projected. Thus, a new reference image is added to the reference image memory of the enhancement layer. This new reference image is generated by geometric projection of all the basic images reconstructed from the base layers at a time instant.
Selon un autre mode particulier de réalisation de l'invention, le flux de données comprend une information représentative d'un type de projection géométrique utilisée pour représenter la vidéo omnidirectionnelle. According to another particular embodiment of the invention, the data stream comprises information representative of a type of geometric projection used to represent the omnidirectional video.
Selon un autre mode particulier de réalisation de l'invention, la vue représentée par la vidéo 2D ou 3D est une vue extraite de la vidéo omnidirectionnelle. Selon un autre mode particulier de réalisation de l'invention, le flux de données comprend une information représentative d'un type de projection géométrique utilisée pour extraire une vue de la vidéo omnidirectionnelle et de ses paramètres de localisation. According to another particular embodiment of the invention, the view represented by the 2D or 3D video is a view extracted from the omnidirectional video. According to another particular embodiment of the invention, the data stream comprises information representative of a type of geometric projection used to extract a view of the omnidirectional video and its location parameters.
Selon une variante, une telle information représentative des paramètres de projection et de localisation de ladite image de base est codée dans le flux de données à chaque image de la vidéo 360°. Avantageusement, cette variante permet de prendre en compte un déplacement dans la scène d'une vue servant de prédiction à la couche de rehaussement. Par exemple, les images de la vidéo de la couche de base peuvent correspondre à des images capturées en se déplaçant dans la scène, par exemple pour suivre un objet en mouvement dans la scène. Par exemple, la vue peut être capturée par une caméra en mouvement ou successivement par plusieurs caméras localisées à différents points de vue dans la scène, pour suivre un ballon ou un joueur lors d'un match de foot par exemple. According to one variant, such information representative of the projection and location parameters of said base image is encoded in the data stream at each image of the 360 ° video. Advantageously, this variant makes it possible to take into account a displacement in the scene of a view serving as a prediction for the raising layer. For example, the images of the video of the base layer can correspond to images captured by moving in the scene, for example to follow a moving object in the scene. For example, the view can be captured by a moving camera or successively by several cameras located at different points of view in the scene, to follow a balloon or a player during a football match for example.
Selon un autre mode particulier de réalisation de l'invention, le flux de données comprend au moins deux couches de base, chaque couche de base étant représentative d'une vidéo 2D ou 3D, chaque couche de base étant respectivement représentative d'une vue de la scène, les au moins deux couches de base étant codées indépendamment l'une de l'autre. According to another particular embodiment of the invention, the data stream comprises at least two basic layers, each base layer being representative of a 2D or 3D video, each base layer being respectively representative of a view of the scene, the at least two base layers being coded independently of one another.
Ainsi, il est possible d'avoir plusieurs couches de base indépendantes dans le flux, permettant de reconstruire indépendamment plusieurs vues 2D ou 3D de la vidéo 360°. Thus, it is possible to have several independent basic layers in the stream, allowing to independently reconstruct several 2D or 3D views of the 360 ° video.
Selon un autre mode particulier de réalisation de l'invention, une image de la couche de rehaussement est codée à l'aide d'un groupe de tuiles, chaque tuile couvrant une région de l'image de la couche de rehaussement, chaque région étant distincte et disjointe des autres régions de l'image de la couche de rehaussement, chaque tuile étant codée par prédiction par rapport à au moins une couche de base. Le décodage de la couche de rehaussement comprend la reconstruction d'une partie de l'image de la couche de rehaussement, la reconstruction de ladite partie de l'image comprenant le décodage des tuiles de la couche de rehaussement couvrant la partie de l'image de la couche de rehaussement à reconstruire, et le décodage de la au moins une couche de base comprenant le décodage des couches de base utilisées pour prédire les tuiles couvrant la partie de l'image de la couche de rehaussement à reconstruire. According to another particular embodiment of the invention, an image of the enhancement layer is coded using a group of tiles, each tile covering a region of the image of the enhancement layer, each region being distinct and disjunct from the other regions of the enhancement layer image, each tile being prediction encoded with respect to at least one base layer. The decoding of the enhancement layer includes the reconstruction of a portion of the image of the enhancement layer, the reconstruction of said portion of the image comprising the decoding of the enhancement layer tiles covering the portion of the image of the enhancement layer to be reconstructed, and the decoding of the at least one base layer comprising the decoding of the base layers used to predict the tiles covering the portion of the image of the enhancement layer to be reconstructed.
Un tel mode particulier de réalisation de l'invention permet de reconstruire seulement une partie de l'image omnidirectionnelle, et non l'image entière. Typiquement, seulement la partie en cours de visualisation par l'utilisateur est reconstruite. Ainsi, il n'est pas nécessaire de décoder toutes les couches de base du flux vidéo, voire même de les envoyer au récepteur. En effet, un utilisateur ne pouvant simultanément pas voir l'image entière de la vidéo omnidirectionnelle, il est ainsi possible de coder une image omnidirectionnelle par un mécanisme de tuiles permettant de coder de manière indépendante des régions de l'image omnidirectionnelle pour permettre ensuite de ne décoder que les régions de l'image omnidirectionnelle visibles par l'utilisateur. Such a particular embodiment of the invention makes it possible to reconstruct only part of the omnidirectional image, and not the entire image. Typically, only the part being viewed by the user is reconstructed. Thus, it is not necessary to decode all the basic layers of the video stream, or even send them to the receiver. Indeed, a user can not simultaneously see the entire image of the omnidirectional video, it is thus possible to encode an omnidirectional image by a A tile mechanism for independently encoding regions of the omnidirectional image to subsequently decode only those regions of the omnidirectional image visible to the user.
Grâce au mode particulier de réalisation de l'invention, le codage indépendant des couches de base permet ainsi de reconstruire séparément les tuiles de l'image omnidirectionnelle et de limiter la complexité au décodage en évitant le décodage de couches de base inutiles. Avantageusement, pour chaque tuile de la couche de rehaussement à décoder, une information identifiant la au moins une couche de base utilisée pour prédire la tuile est décodée à partir du flux de données.  Thanks to the particular embodiment of the invention, the independent coding of the basic layers thus makes it possible to reconstruct the tiles of the omnidirectional image separately and to limit the complexity to decoding by avoiding the decoding of unnecessary basic layers. Advantageously, for each tile of the enhancement layer to be decoded, information identifying the at least one base layer used to predict the tile is decoded from the data stream.
L'invention concerne également un dispositif de codage d'un flux de données représentatif d'une vidéo omnidirectionnelle. Le dispositif de codage comprend des moyens de codage dans ledit flux d'au moins une couche de base représentative d'une vidéo 2D ou 3D, la vidéo 2D ou 3D étant représentative d'une vue d'une même scène capturée par la vidéo omnidirectionnelle, et des moyens de codage dans ledit flux d'au moins une couche de rehaussement représentative de la vidéo omnidirectionnelle, lesdits moyens de codage de la couche de rehaussement comprenant des moyens de prédiction de la couche de rehaussement par rapport à la au moins une couche de base. L'invention concerne également un dispositif de décodage d'un flux de données représentatif d'une vidéo omnidirectionnelle. Le dispositif de décodage comprend des moyens de décodage dans ledit flux d'au moins une couche de base représentative d'une vidéo 2D ou 3D, la vidéo 2D ou 3D étant représentative d'une vue d'une même scène capturée par la vidéo omnidirectionnelle, et des moyens de décodage dans ledit flux d'au moins une couche de rehaussement représentative de la vidéo omnidirectionnelle, lesdits moyens de décodage de la couche de rehaussement comprenant des moyens de prédiction de la couche de rehaussement par rapport à la au moins une couche de base. The invention also relates to a device for encoding a data stream representative of an omnidirectional video. The coding device comprises coding means in said stream of at least one base layer representative of a 2D or 3D video, the 2D or 3D video being representative of a view of the same scene captured by the omnidirectional video , and encoding means in said stream of at least one enhancement layer representative of the omnidirectional video, said enhancement layer coding means comprising means for predicting the enhancement layer with respect to the at least one layer basic. The invention also relates to a device for decoding a data stream representative of an omnidirectional video. The decoding device comprises means for decoding in said stream of at least one base layer representative of a 2D or 3D video, the 2D or 3D video being representative of a view of the same scene captured by the omnidirectional video , and decoding means in said stream of at least one enhancement layer representative of the omnidirectional video, said enhancement layer decoding means comprising means for predicting the enhancement layer with respect to the at least one layer basic.
Le dispositif de codage, respectivement de décodage, est notamment adapté à mettre en œuvre le procédé de codage, respectivement de décodage, décrit précédemment. Le dispositif de codage, respectivement de décodage, pourra bien sûr comporter les différentes caractéristiques relatives au procédé de codage, respectivement de décodage, selon l'invention. Ainsi, les caractéristiques et avantages de ce dispositif de codage, respectivement de décodage, sont les mêmes que ceux du procédé de codage, respectivement de décodage, et ne sont pas détaillés plus amplement. The coding or decoding device is particularly suitable for implementing the coding or decoding method described above. The coding or decoding device may, of course, comprise the various characteristics relating to the coding or decoding method according to the invention. Thus, the characteristics and advantages of this encoding device, respectively of decoding, are the same as those of the coding method, respectively of decoding, and are not detailed further.
Selon un mode particulier de réalisation de l'invention, le dispositif de décodage est compris dans un terminal. L'invention concerne également un signal représentatif d'une vidéo omnidirectionnelle, comprenant des données codées d'au moins une couche de base représentative d'une vidéo 2D ou 3D, la vidéo 2D ou 3D étant représentative d'une vue d'une même scène capturée par la vidéo omnidirectionnelle, et des données codées d'au moins une couche de rehaussement représentative de la vidéo omnidirectionnelle, la au moins une couche de rehaussement étant codée par prédiction par rapport à la au moins une couche de base. According to a particular embodiment of the invention, the decoding device is included in a terminal. The invention also relates to a signal representative of an omnidirectional video, comprising coded data of at least one base layer representative of a 2D or 3D video, the 2D or 3D video being representative of a view of the same scene captured by the omnidirectional video, and coded data of at least one enhancement layer representative of the omnidirectional video, the at least one enhancement layer being coded by prediction with respect to the at least one base layer.
Selon un mode particulier de réalisation de l'invention, une image de la couche de rehaussement est codée à l'aide d'un groupe de tuiles, chaque tuile couvrant une région de l'image de la couche de rehaussement, chaque région étant distincte et disjointe des autres régions de l'image de la couche de rehaussement, chaque tuile étant codée par prédiction par rapport à au moins une couche de base. Selon un tel mode particulier de réalisation de l'invention, le signal comprend également pour chaque tuile, une information identifiant la au moins une couche de base utilisée pour prédire la tuile. Ainsi, seules les couches de base nécessaires au décodage d'une tuile à décoder sont décodées, optimisant ainsi l'utilisation des ressources du décodeur.  According to a particular embodiment of the invention, an image of the enhancement layer is coded using a group of tiles, each tile covering a region of the image of the enhancement layer, each region being distinct. and disjoined from the other regions of the enhancement layer image, each tile being prediction encoded with respect to at least one base layer. According to such a particular embodiment of the invention, the signal also comprises for each tile information identifying the at least one base layer used to predict the tile. Thus, only the basic layers necessary for decoding a tile to be decoded are decoded, thus optimizing the use of the resources of the decoder.
L'invention concerne également un programme d'ordinateur comportant des instructions pour la mise en œuvre du procédé de codage ou du procédé de décodage selon l'un quelconque des modes particuliers de réalisation décrits précédemment, lorsque ledit programme est exécuté par un processeur. Un tel programme peut utiliser n'importe quel langage de programmation. Il peut être téléchargé depuis un réseau de communication et/ou enregistré sur un support lisible par ordinateur. Ce programme peut utiliser n'importe quel langage de programmation, et être sous la forme de code source, code objet, ou de code intermédiaire entre code source et code objet, tel que dans une forme partiellement compilée, ou dans n'importe quelle autre forme souhaitable. The invention also relates to a computer program comprising instructions for implementing the coding method or the decoding method according to any one of the particular embodiments described above, when said program is executed by a processor. Such a program can use any programming language. It can be downloaded from a communication network and / or saved on a computer-readable medium. This program can use any programming language, and be in the form of source code, object code, or intermediate code between source code and object code, such as in a partially compiled form, or in any other form desirable shape.
Selon encore un autre aspect, l'invention concerne un support d'enregistrement ou support d'informations lisible par un ordinateur comprenant des instructions d'un programme d'ordinateur tel que mentionné ci-dessus. Les supports d'enregistrement mentionnés ci-avant peuvent être n'importe quelle entité ou dispositif capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel qu'une mémoire de type Read-Only Memory (ROM), par exemple un CD- ROM ou une ROM de circuit microélectronique, une mémoire flash montée sur un support de stockage amovible, tel qu'une clé USB, ou encore une mémoire de masse magnétique de type Hard-Disk Drive (HDD) ou Solid-State Drive (SSD), ou une combinaison de mémoires fonctionnant selon une ou plusieurs technologies d'enregistrement de données. D'autre part, les supports d'enregistrement peuvent correspondre à un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par radio ou par d'autres moyens. En particulier, le programme d'ordinateur proposé peut être téléchargé sur un réseau de type Internet. In yet another aspect, the invention relates to a computer-readable recording medium or information medium comprising instructions of a computer program as mentioned above. The recording media mentioned above can be any entity or device capable of storing the program. For example, the medium may comprise storage means, such as a read-only memory (ROM), for example a CD-ROM or a microelectronic circuit ROM, a flash memory mounted on a removable storage medium , such as a USB key, or a magnetic mass memory type Hard-Disk Drive (HDD) or Solid-State Drive (SSD), or a combination of memories operating according to one or more data recording technologies. On the other hand, the recording media may correspond to a transmissible medium such as an electrical signal or optical, which can be routed via an electrical or optical cable, by radio or by other means. In particular, the proposed computer program can be downloaded on an Internet type network.
Alternativement, les supports d'enregistrement peuvent correspondre à un circuit intégré dans lequel le programme est incorporé, le circuit étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé en question.  Alternatively, the recording media may correspond to an integrated circuit in which the program is incorporated, the circuit being adapted to execute or to be used in the execution of the method in question.
Le procédé de codage ou de décodage selon l'invention peut donc être mis en œuvre de diverses manières, notamment sous forme câblée ou sous forme logicielle. 4. Liste des figures  The coding or decoding method according to the invention can therefore be implemented in various ways, in particular in hard-wired form or in software form. 4. List of figures
D'autres caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description suivante d'un mode de réalisation particulier, donné à titre de simple exemple illustratif et non limitatif, et des dessins annexés, parmi lesquels :  Other features and advantages of the invention will appear more clearly on reading the following description of a particular embodiment, given as a simple illustrative and nonlimiting example, and the appended drawings, among which:
- la figure 1A illustre des étapes du procédé de codage selon un mode particulier de réalisation de l'invention,  FIG. 1A illustrates steps of the coding method according to a particular embodiment of the invention,
- la figure 1 B illustre un exemple d'un signal généré selon le procédé de codage mis en œuvre selon un mode particulier de réalisation de l'invention,  FIG. 1B illustrates an example of a signal generated according to the coding method implemented according to a particular embodiment of the invention,
- la figure 2A illustre une image d'une vue d'une scène captée par une vidéo 360° codée dans une couche de base,  FIG. 2A illustrates an image of a view of a scene captured by a 360 ° video encoded in a base layer,
- la figure 2B illustre l'image illustrée en figure 2A projetée dans le référentiel d'une image de la vidéo 360°, FIG. 2B illustrates the image illustrated in FIG. 2A projected in the reference frame of an image of the 360 ° video,
- la figure 2C illustre une image de la vidéo 360° codée dans une couche de rehaussement, FIG. 2C illustrates an image of the 360 ° video coded in an enhancement layer,
- les figures 2D et 2E illustrent chacune une image de deux vues d'une scène captée par une vidéo 360° et codées chacune dans une couche de base, FIGS. 2D and 2E each illustrate an image of two views of a scene captured by a 360 ° video and each coded in a base layer,
- la figure 2F illustre les images des deux vues illustrées en figures 2D et 2E projetée dans le référentiel d'une image de la vidéo 360°, FIG. 2F illustrates the images of the two views illustrated in FIGS. 2D and 2E projected in the reference frame of an image of the 360 ° video,
- la figure 2G illustre une image de la vidéo 360° codée dans une couche de rehaussement, FIG. 2G illustrates an image of the 360 ° video coded in an enhancement layer,
- la figure 3 illustre des étapes du procédé de décodage selon un mode particulier de réalisation de l'invention, FIG. 3 illustrates steps of the decoding method according to a particular embodiment of the invention,
- la figure 4A illustre un exemple d'un codeur configuré pour mettre en œuvre le procédé de codage selon un mode particulier de réalisation de l'invention, FIG. 4A illustrates an example of an encoder configured to implement the coding method according to a particular embodiment of the invention,
- la figure 4B illustre un dispositif adapté pour mettre en œuvre le procédé de codage selon un autre mode particulier de réalisation de l'invention,  FIG. 4B illustrates a device adapted to implement the coding method according to another particular embodiment of the invention,
- la figure 5A illustre un exemple d'un décodeur configuré pour mettre en œuvre le procédé de décodage selon un mode particulier de réalisation de l'invention,  FIG. 5A illustrates an example of a decoder configured to implement the decoding method according to a particular embodiment of the invention,
- la figure 5B illustre un dispositif adapté pour mettre en œuvre le procédé de décodage selon un autre mode particulier de réalisation de l'invention. - les figures 6A et 6B illustrent respectivement une image de la vidéo omnidirectionnelle 360° codée par tuiles indépendantes et une image de référence générée à partir de deux vues de deux couches de base et utilisée pour coder l'image de la figure 6A, FIG. 5B illustrates a device adapted to implement the decoding method according to another particular embodiment of the invention. FIGS. 6A and 6B respectively illustrate an image of the 360 ° omnidirectional video coded by independent tiles and a reference image generated from two views of two base layers and used to code the image of FIG. 6A,
- les figures 7A-C illustrent respectivement une projection dans un plan 2D d'une vidéo omnidirectionnelle 360° avec projection de type cubemap, une représentation sphérique 3D dans un référentiel XYZ de la vidéo omnidirectionnelle 360°, et une vue extraite du contenu immersif 360° dans un plan 2D selon une projection rectiligne,  FIGS. 7A-C respectively show a projection in a 2D plane of a 360 ° omnidirectional video with a cubemap projection, a 3D spherical representation in an XYZ repository of the 360 ° omnidirectional video, and a view extracted from the immersive content 360 ° in a 2D plane according to a rectilinear projection,
- la figure 7D illustre la relation entre différentes projections géométriques,  FIG. 7D illustrates the relationship between different geometric projections,
- la figure 8 illustre la procédure de construction de l'image de référence.  - Figure 8 illustrates the procedure of construction of the reference image.
Les images des figures 2A, C-E et G et des figures 7A-B sont extraites de vidéos 360° mises à disposition par LetlnVR dans le cadre du groupe d'exploration JVET (pour Joint Video Exploration Team en anglais, JVT-D0179: Test Séquences for Virtual Reality Video Coding from Letin VR, 15-21 Octobre 2016). 5. Description d'un mode de réalisation de l'invention The images of FIGS. 2A, CE and G and FIGS. 7A-B are taken from 360 ° videos made available by LetlnVR as part of the JVET exploration group (for Joint Video Exploration Team in English, JVT-D0179: Test Sequences for Virtual Reality Video Coding from Letin VR, October 15-21, 2016). 5. Description of an embodiment of the invention
5.1 Principe général 5.1 General principle
Le principe général de l'invention est de coder un flux de données de manière échelonnable permettant ainsi de reconstruire et restituer une vidéo 360° lorsqu'un récepteur est adapté à recevoir et restituer une telle vidéo 360° et reconstruire et restituer une vidéo 2D ou 3D lorsque le récepteur est seulement adapté à restituer une vidéo 2D ou 3D.  The general principle of the invention is to encode a data stream in a scalable manner thus making it possible to reconstruct and restore a 360 ° video when a receiver is adapted to receive and render such a 360 ° video and reconstruct and render a 2D video or 3D when the receiver is only suitable for rendering a 2D or 3D video.
Afin de diminuer le coût de transmission d'un flux comprenant à la fois la vidéo 2D ou 3D et la vidéo 360°, selon l'invention, la vidéo 2D ou 3D est codée dans une couche de base et la vidéo 360° est codée dans une couche de rehaussement ou d'amélioration prédite à partir de la couche de base.  In order to reduce the transmission cost of a stream comprising both 2D or 3D video and 360 ° video, according to the invention, the 2D or 3D video is encoded in a base layer and the 360 ° video is coded in a predicted enhancement or enhancement layer from the basecoat.
Selon un mode particulier de réalisation de l'invention, le flux peut comprendre plusieurs couches de base correspondant chacune à une vidéo 2D ou 3D correspondant à une vue de la scène. La couche d'amélioration est ainsi codée par prédiction à partir de toutes ou d'une partie des couches de base comprises dans le flux. 5. 2 Exemples de mise en œuvre According to a particular embodiment of the invention, the stream may comprise several basic layers each corresponding to a 2D or 3D video corresponding to a view of the scene. The improvement layer is thus coded by prediction from all or part of the base layers included in the stream. 5. 2 Examples of implementation
La figure 1A illustre des étapes du procédé de codage selon un mode particulier de réalisation de l'invention. Selon ce mode particulier de réalisation de l'invention, une vidéo 360° est codée de manière scalable en extrayant des vues de la vidéo 360° et en codant chaque vue dans une couche de base. Par vue, on entend ici une séquence d'images acquise à partir d'un point de vue de la scène captée par la vidéo 360°. Une telle séquence d'image peut être une séquence d'images monoscopique dans le cas d'une vidéo 360° en 2D ou une séquence d'images stéréoscopique dans le cas d'une vidéo 360° en 3D. Dans le cas d'une séquence d'images stéréoscopique, chaque image comprend une vue gauche et une vue droite codées conjointement par exemple sous la forme d'une image générée à l'aide des vues gauche et droite placée côte à côté ou l'une au-dessus de l'autre. Le codeur codant une telle séquence d'images stéréoscopique dans une couche de base ou une couche de rehaussement codera alors chaque image comprenant une vue gauche et une vue droite comme une séquence d'images 2D classique. FIG. 1A illustrates steps of the coding method according to a particular embodiment of the invention. According to this particular embodiment of the invention, a 360 ° video is scalable by extracting 360 ° video views and encoding each view into a base layer. By view, we mean here a sequence of images acquired from a point of view of the scene captured by the 360 ° video. Such an image sequence can be a monoscopic image sequence in the case of a 2D 360 ° video or a stereoscopic image sequence in the case of a 3D 360 ° video. In the In the case of a stereoscopic image sequence, each image includes a left view and a right view coded jointly, for example in the form of an image generated using left and right views placed side by side or one at the left. above the other. The encoder encoding such a stereoscopic image sequence in a base layer or enhancement layer will then encode each image including a left view and a right view as a conventional 2D image sequence.
On décrit ci-après un mode de réalisation dans lequel la vidéo omnidirectionnelle est une vidéo 360° en 2D.  An embodiment is described below in which the omnidirectional video is a 2D 360 ° video.
On décrit ici un mode de réalisation où deux couches de base sont utilisées pour coder la couche d'amélioration. De manière générale, le procédé décrit ici s'applique au cas où un nombre de vues N, avec N supérieur ou égal à 1 , sont utilisées pour le codage de la couche d'amélioration.  An embodiment is described herein in which two base layers are used to code the enhancement layer. In general, the method described here applies to the case where a number of views N, with N greater than or equal to 1, are used for the coding of the improvement layer.
Le nombre de couches de base est indépendant du nombre de vues utilisées pour générer la vidéo 360°. Le nombre de couches de base codé dans le flux de données scalable est par exemple déterminé lors de la production du contenu, ou peut être déterminé par l'encodeur à des fins d'optimisation de débit.  The number of base layers is independent of the number of views used to generate 360 ° video. The number of base layers encoded in the scalable data stream is for example determined during the production of the content, or may be determined by the encoder for rate optimization purposes.
Au cours des étapes 10 et 1 1 , une première et une deuxième vues sont extraites de la vidéo 360°. Les vues [1 ] et [2] sont respectivement codées lors d'une étape de codage 12 d'une couche de base BL[1 ] et d'une étape de codage 13 d'une couche de base BL[2].  In steps 10 and 11, first and second views are extracted from the 360 video. The views [1] and [2] are respectively coded during a coding step 12 of a base layer BL [1] and a coding step 13 of a base layer BL [2].
Dans le mode particulier de réalisation décrit ici, les couches de base BL[1 ] et BL[2] sont codées indépendamment l'une de l'autre, i.e. qu'il n'existe aucune dépendance de codage (prédiction, contexte de codage, etc..) entre le codage des images de la couche de base BL[1] et le codage des images de la couche de base BL[2]. Chaque couche de base BL[1] ou BL[2] est décodable indépendamment des autres. In the particular embodiment described here, the base layers BL [1] and BL [2] are coded independently of each other, ie there is no coding dependency (prediction, coding context , etc.) between the coding of the images of the base layer BL [1] and the coding of the images of the base layer BL [2]. Each base layer BL [1] or BL [2] is decodable independently of the others.
Selon un autre mode particulier de réalisation, il est possible de coder les couches de base BL[1] et BL[2] de manière dépendante, par exemple pour gagner en efficacité en compression. Toutefois, ce mode particulier de réalisation de l'invention, nécessite au niveau du décodeur de pouvoir décoder les deux couches de base pour restituer une vidéo 2D classique. According to another particular embodiment, it is possible to code the base layers BL [1] and BL [2] in a dependent manner, for example to gain efficiency in compression. However, this particular embodiment of the invention requires the decoder to be able to decode the two basic layers to render a conventional 2D video.
Chaque image codée/reconstruite des couches de base BL[1 ] et BL[2] est ensuite projetée (étapes 14 et 15 respectivement) géométriquement dans une même image de référence lref. Il en résulte une image de référence partiellement remplie, qui contient les échantillons interpolés à partir de la ou les vues de la couche de base projetées. La construction de l'image de référence est décrite plus en détail en relation avec la figure 8. Les figures 2A-2C illustrent un mode de réalisation dans lequel une seule couche de base est utilisée. Selon ce mode de réalisation, les images de la vidéo 360° ont une résolution spatiale de 3840x1920 pixels et sont générées par une projection équi-rectangulaire et la séquence d'images 360° a une fréquence de 30 images par seconde. La figure 2C illustre une image de la vidéo 360° à un instant temporel t codée dans la couche d'amélioration.Each coded / reconstructed image of the base layers BL [1] and BL [2] is then projected (steps 14 and 15 respectively) geometrically in the same reference image 1 re f. This results in a partially filled reference image, which contains interpolated samples from the projected basecoat (s). The construction of the reference image is described in more detail in connection with FIG. 8. Figs. 2A-2C illustrate an embodiment in which a single base layer is used. According to this embodiment, the images of the 360 ° video have a spatial resolution of 3840x1920 pixels and are generated by an equi-rectangular projection and the 360 ° image sequence has a frequency of 30 frames per second. Figure 2C illustrates an image of 360 ° video at a time instant t coded in the enhancement layer.
Une image à l'instant temporel t de la vue extraite de la vidéo 360° est illustrée en figure 2A. Une telle vue est par exemple extraite de la vidéo 360° à l'aide des coordonnées de Yaw = 20°, Pitch = 5°, Horizontal FOV (pour Field Of View en anglais) = 1 10° et Vertical FOV = 80°, la résolution spatiale des images de la vue extraite est de 1920x960 pixels et la fréquence temporelle est de 30 images par seconde. Les coordonnées Yaw et Pitch correspondent aux coordonnées du centre (P sur la figure 2B) de la projection géométrique d'une image de la vue de la couche de base, les coordonnées Yaw et Pitch correspondent respectivement à l'angle Θ et à l'angle φ du point P illustrés dans le format pivot en figure 7B. Les paramètres Horizontal FOV et Vertical FOV correspondent respectivement à la taille horizontale et verticale d'une image de la vue extraite centrée au point P dans le format pivot illustré en figure 7B, cette image de la vue extraite est représentée dans la figure 7C. An image at the time instant t of the view extracted from the 360 ° video is illustrated in FIG. 2A. Such a view is for example extracted from the 360 ° video using coordinates of Yaw = 20 °, Pitch = 5 °, Horizontal FOV (for Field Of View in English) = 1 10 ° and Vertical FOV = 80 °, the spatial resolution of the extracted image is 1920x960 pixels and the temporal frequency is 30 frames per second. The coordinates Yaw and Pitch correspond to the coordinates of the center (P in FIG. 2B) of the geometric projection of an image of the view of the base layer, the coordinates Yaw and Pitch respectively correspond to the angle Θ and to the angle φ of the point P illustrated in the pivot format in FIG. 7B. The parameters Horizontal FOV and Vertical FOV correspond respectively to the horizontal and vertical size of an image of the extracted view centered at point P in the pivot format illustrated in FIG. 7B, this image of the extracted view is represented in FIG. 7C.
La figure 2B illustre l'image de référence lref utilisée pour prédire l'image de la vidéo 360° à l'instant t après projection géométrique équirectangulaire de l'image de la couche de base illustrée en figure 2A. FIG. 2B illustrates reference image 1 ref used to predict the image of the 360 ° video at time t after equirectangular geometric projection of the image of the base layer illustrated in FIG. 2A.
Les figures 2D-2G illustrent un mode de réalisation dans lequel deux couches de base sont utilisées. Selon ce mode de réalisation, les images de la vidéo 360° ont une résolution spatiale de 3840x1920 pixels et sont générées par une projection équi-rectangulaire et la séquence d'images 360° à une fréquence de 30 images par seconde. La figure 2G illustre une image de la vidéo 360° à un instant temporel t codée dans la couche d'amélioration.Figures 2D-2G illustrate an embodiment in which two base layers are used. According to this embodiment, the images of the 360 ° video have a spatial resolution of 3840x1920 pixels and are generated by an equi-rectangular projection and the 360 ° image sequence at a frequency of 30 frames per second. Figure 2G illustrates an image of 360 ° video at a time instant t encoded in the enhancement layer.
Une image à l'instant temporel t d'une première vue extraite de la vidéo 360° est illustrée en figure 2D. Cette première vue est par exemple extraite de la vidéo 360° à l'aide des coordonnées de Yaw = 20°, Pitch = 5°, Horizontal FOV (pour Field Of View en anglais) = 1 10° et Vertical FOV = 80°, la résolution spatiale des images de la première vue extraite est de 1920x960 pixels et la fréquence temporelle est de 30 images par seconde. An image at the time instant t of a first view extracted from the 360 ° video is illustrated in FIG. 2D. This first view is for example extracted from the 360 ° video using the coordinates of Yaw = 20 °, Pitch = 5 °, Horizontal FOV (for Field Of View in English) = 1 10 ° and Vertical FOV = 80 °, the spatial resolution of the images of the first extracted image is 1920x960 pixels and the temporal frequency is 30 images per second.
Une image à l'instant temporel t d'une deuxième vue extraite de la vidéo 360° est illustrée en figure 2E. Cette deuxième vue est par exemple extraite de la vidéo 360° à l'aide des coordonnées de Yaw = -100°, Pitch = 5°, Horizontal FOV (pour Field Of View en anglais) = 1 10° et Vertical FOV = 80°, la résolution spatiale des images de la première vue extraite est de 1920x960 pixels et la fréquence temporelle est de 30 images par seconde. La figure 2F illustre l'image de référence lref utilisée pour prédire l'image de la vidéo 360° à l'instant t après projection géométrique équirectangulaire des images de la première vue et de la deuxième vue illustrées respectivement en figures 2D et 2E. An image at the time instant t of a second view extracted from the 360 ° video is illustrated in FIG. 2E. This second view is for example extracted from the 360 ° video using the coordinates of Yaw = -100 °, Pitch = 5 °, Horizontal FOV (for Field Of View in English) = 1 10 ° and Vertical FOV = 80 ° , the spatial resolution of the images of the first extracted view is 1920x960 pixels and the temporal frequency is 30 frames per second. FIG. 2F illustrates the reference image 1 ref used to predict the image of the 360 ° video at the instant t after equirectangular geometric projection of the images of the first view and the second view respectively illustrated in FIGS. 2D and 2E.
Afin de projeter les images reconstruites des couches de base dans l'image de référence, les étapes de transformation géométrique suivantes sont appliquées.  In order to project the reconstructed images of the base layers into the reference image, the following geometric transformation steps are applied.
La représentation d'une vidéo omnidirectionnelle 360° dans un plan est définie par une transformation géométrique caractérisant la manière dont un contenu omnidirectionnel 360° représenté dans une sphère est adapté à une représentation dans un plan. La représentation sphérique des données est utilisée comme format pivot, elle permet de représenter les points captés par un dispositif de vidéo omnidirectionnel. Une telle représentation sphérique 3D XYZ est illustrée en figure 7B. The representation of a 360 ° omnidirectional video in a plane is defined by a geometric transformation characterizing the way in which a 360 ° omnidirectional content represented in a sphere is adapted to a representation in a plane. The spherical representation of the data is used as a pivot format, it makes it possible to represent the points captured by an omnidirectional video device. Such a 3D XYZ spherical representation is illustrated in FIG. 7B.
Par exemple, la vidéo 360° est représentée à l'aide d'une transformation géométrique équirectangulaire qui peut être vu comme la projection des points sur un cylindre entourant la sphère. D'autres transformations géométriques sont bien sûr possibles, par exemple la projection en CubeMap, correspondant à une projection des points sur un cube enfermant la sphère, les faces des cubes étant finalement dépliés sur un plan pour former l'image 2D. Une telle projection en CubeMap est par exemple illustrée en figure 7A. For example, the 360 ° video is represented using an equirectangular geometric transformation that can be seen as the projection of points on a cylinder surrounding the sphere. Other geometrical transformations are of course possible, for example the projection in CubeMap, corresponding to a projection of the points on a cube enclosing the sphere, the faces of the cubes finally being unfolded on a plane to form the 2D image. Such a CubeMap projection is for example illustrated in FIG. 7A.
La figure 7D illustre plus en détails la relation entre les différents formats cités ci-dessus. Le passage d'un format A équirectangulaire vers un format B en cubemap se fait à travers un format pivot C caractérisé par une représentation des échantillons dans un système sphérique XYZ illustré en figure 7B. De la même façon, l'extraction d'une vue D à partir du format A se fait à travers ce format pivot C. L'extraction d'une vue du contenu immersif est caractérisée par une transformation géométrique, par exemple en opérant une projection rectiligne des points de la sphère sur un plan illustré par le plan ABCD en figure 7C. Cette projection est caractérisée par des paramètres de localisation tels que le yaw, le pitch et le champ de vision horizontal et vertical (FOV pour Field Of View en anglais). Les propriétés mathématiques de ces différentes transformations géométriques sont documentées dans le document JVET-G1003 ("Algorithm descriptions of projection format conversion and video quality metrics in 360Lib Version 4", Y. Ye, E. Alshina, J. Boyce, JVET of ITU-T SG16 WP3 and ISO/IEC JTC 1/SC 29/WG 11, 7th meeting, Torino, \ J, 13-21 July, 2017). La figure 8 illustre les différentes étapes permettant le passage entre deux formats. Une table de correspondance est d'abord construite en E80 afin de mettre en correspondance la position de chaque échantillon dans l'image de destination (lref), avec sa position correspondante dans le format source (correspondant aux images reconstruites des couches de base BL[1 ] et BL[2] dans l'exemple décrit avec la figure 1A). Pour chaque position (u,v) dans l'image de destination les étapes suivantes s'appliquent : Figure 7D illustrates in more detail the relationship between the different formats mentioned above. The transition from an equirectangular A format to a cubemap B format is done through a pivotal format C characterized by a representation of the samples in an XYZ spherical system illustrated in FIG. 7B. In the same way, the extraction of a view D from the format A is done through this pivotal format C. The extraction of a view of the immersive content is characterized by a geometrical transformation, for example by operating a projection rectilinear points of the sphere on a plane shown by the plane ABCD in Figure 7C. This projection is characterized by location parameters such as yaw, pitch, and horizontal and vertical field of view (FOV). The mathematical properties of these different geometric transformations are documented in the document JVET-G1003 ("Algorithm descriptions of projection format conversion and video quality metrics in 360Lib Version 4", Y. Ye, Alshina E., J. Boyce, JVET of ITU- T SG16 WP3 and ISO / IEC JTC 1 / SC 29 / WG 11, 7th meeting, Torino, 13-21 July, 2017). Figure 8 illustrates the different steps allowing the passage between two formats. A look-up table is first constructed in E80 to match the position of each sample in the destination image (l ref ) with its position corresponding in the source format (corresponding to the reconstructed images of the base layers BL [1] and BL [2] in the example described with FIG. 1A). For each position (u, v) in the destination image the following steps apply:
• En E81 : passage des coordonnées (u,v) de l'image de destination dans le système pivot XYZ.  • In E81: Passing coordinates (u, v) of the destination image in the XYZ pivot system.
• En E82 : projection des coordonnées XYZ du système pivot dans l'image source (υ',ν').  • In E82: projection of the XYZ coordinates of the pivot system in the source image (υ ', ν').
• En E83 : mis à jour de la table de correspondance mettant en relation les positions dans le format destination et dans le format source.  • In E83: update of the mapping table linking the positions in the destination format and in the source format.
Une fois la table de correspondance construite, la valeur de chaque pixel (u,v) dans l'image de destination (lref) est interpolée par rapport à la valeur à la position correspondante (u',v') dans l'image source lors d'une étape E84 (correspondant aux images reconstruites des couches de base BL[1 ] et BL[2] dans l'exemple décrit avec la figure 1A ). Une interpolation peut être réalisée en (uV) avant l'attribution de la valeur, en appliquant un filtre d'interpolation type Lanczos sur l'image décodée de la couche de base, à la position mise en correspondance. Once the correspondence table is constructed, the value of each pixel (u, v) in the destination image (l ref ) is interpolated with respect to the value at the corresponding position (u ', v') in the image source during a step E84 (corresponding to the reconstructed images of the base layers BL [1] and BL [2] in the example described with FIG. 1A). An interpolation can be performed in (uV) before the value is assigned, by applying a Lanczos type interpolation filter to the decoded base layer image at the matched position.
Lors d'une étape 16 du procédé de codage illustré en figure 1A, la vidéo 360° est codée dans une couche d'amélioration EL par prédiction par rapport aux couches de base BL[1] et BL[2] en utilisant l'image de référence lref générée à partir des couches de base. In a step 16 of the coding method illustrated in FIG. 1A, the 360 ° video is coded in an improvement layer EL by prediction with respect to the BL [1] and BL [2] base layers using the image reference ref generated from the base layers .
Lors d'une étape 17, les données codées lors des étapes 12, 13 et 16 sont multiplexées afin de former un flux binaire comprenant les données codées des couches de base BL[1] et BL[2] et de la couche d'amélioration EL. Les données de projection permettant de construire l'image de référence lref sont également codées dans le flux binaire et transmises au décodeur. In a step 17, the data encoded in steps 12, 13 and 16 are multiplexed to form a bit stream comprising the coded data of the BL [1] and BL [2] base layers and the enhancement layer. EL. The projection data making it possible to construct the reference image 1 ref are also coded in the bit stream and transmitted to the decoder.
Les étapes de codage 12, 13 et 16 peuvent avantageusement être mises en œuvre par des codeurs vidéo standards, par exemple par un codeur standard SHVC codeur scalable de la norme HEVC. La figure 1 B illustre un exemple d'un flux binaire généré selon le procédé décrit en relation avec la figure 1A. Selon cet exemple, le flux binaire comprend :  The coding steps 12, 13 and 16 can advantageously be implemented by standard video coders, for example by a standard encoder SHVC scalable encoder of the HEVC standard. FIG. 1B illustrates an example of a bit stream generated according to the method described with reference to FIG. 1A. According to this example, the bit stream comprises:
- les données codées des couches de base BL[1] et BL[2],  the coded data of the base layers BL [1] and BL [2],
- une information PRJ représentative du type de projection géométrique utilisée pour représenter le contenu omnidirectionnel, par exemple une valeur indiquant une projection équirectangulaire, - une information PRJ_B1 , respectivement PRJ_B2, représentative de la projection utilisée pour extraire la vue et de ses paramètres de localisation dans la vidéo 360° de la vue de la couche de base BL[1 ], respectivement BL[2]. a PRJ information representative of the type of geometric projection used to represent the omnidirectional content, for example a value indicating an equirectangular projection, an information PRJ_B1, respectively PRJ_B2, representative of the projection used to extract the view and its location parameters in the 360 ° video from the view of the base layer BL [1], respectively BL [2].
L'information représentative des paramètres de projection et de localisation d'une vue de la couche de base peut par exemple être codée sous la forme des coordonnées de la vue (Yaw, Pitch, HFOV, VFOV) assorti du type de projection (rectiligne) utilisé pour extraire la vue.  The information representative of the projection and location parameters of a view of the base layer can for example be coded in the form of the coordinates of the view (Yaw, Pitch, HFOV, VFOV) with the projection type (rectilinear). used to extract the view.
L'information représentative des paramètres de projection et de localisation d'une vue d'une couche de base peut être codée une seule fois dans le flux binaire. Elle est ainsi valable pour toute la séquence d'images.  The information representative of the projection and location parameters of a view of a base layer can be coded once in the bit stream. It is thus valid for the entire sequence of images.
L'information représentative des paramètres de projection et de localisation d'une vue d'une couche de base peut être codée plusieurs fois dans le flux binaire, par exemple à chaque image, ou à chaque groupe d'images. Elle n'est ainsi valable que pour une image ou un groupe d'images.  The information representative of the projection and location parameters of a view of a base layer can be coded several times in the bit stream, for example at each image, or at each group of images. It is thus valid only for an image or group of images.
Lorsque l'information représentative des paramètres de projection et de localisation d'une vue est codée à chaque image, une telle variante procure l'avantage que la vue extraite à chaque instant temporel de la séquence peut correspondre à une vue d'un objet en mouvement dans la scène et suivi au cours du temps. When the information representative of the projection and location parameters of a view is coded to each image, such a variant provides the advantage that the view extracted at each time point of the sequence may correspond to a view of an object in progress. movement in the scene and followed over time.
Lorsque l'information représentative des paramètres de projection et de localisation d'une vue est codée pour un groupe d'images, une telle variante procure l'avantage que la séquence vidéo codée dans une couche de base peut changer de point de vue au cours du temps, permettant ainsi de suivre un événement via différents points de vue au cours du temps. La figure 3 illustre des étapes du procédé de décodage selon un mode particulier de réalisation de l'invention.  When the information representative of the projection and location parameters of a view is encoded for a group of images, such a variant provides the advantage that the video sequence encoded in a base layer can change its point of view during time, thus allowing to follow an event via different points of view over time. FIG. 3 illustrates steps of the decoding method according to a particular embodiment of the invention.
Selon ce mode particulier de réalisation de l'invention, le flux binaire échelonnable représentatif de la vidéo 360° est dé-multiplexé lors d'une étape 30. Les données codées des couches de base, BL[1] et BL[2] dans l'exemple décrit ici, sont envoyées à un décodeur pour être décodées (étapes 31 , 33 respectivement).  According to this particular embodiment of the invention, the scalable bitstream representative of the 360 ° video is de-multiplexed during a step 30. The coded data of the base layers, BL [1] and BL [2] in FIG. the example described here are sent to a decoder for decoding (steps 31, 33 respectively).
Puis, les images reconstruites des couches de base sont projetées (étapes 32, 34 respectivement) de manière similaire au procédé de codage sur une image de référence lref pour servir de prédiction à la couche d'amélioration EL. La projection géométrique est réalisée à partir des données de projection fournies dans le flux binaire (type de projection, information de projection et de localisation de la vue). Then, the reconstructed images of the base layers are projected (steps 32, 34 respectively) in a manner similar to the coding method on a ref reference image to serve as a prediction to the enhancement layer EL. The geometric projection is performed from the projection data provided in the bit stream (projection type, projection information and view location).
Les données codées de la couche d'amélioration EL sont décodées (étape 35) et les images de la vidéo 360° sont reconstruites en utilisant les images de référence lref générées à partir des projections géométriques réalisées sur les couches de base, tel que spécifié précédemment. The coded data of the enhancement layer EL are decoded (step 35) and the images of the 360 ° video are reconstructed using the ref reference images generated from geometric projections made on the base layers, as previously specified.
Le flux binaire échelonnable représentatif de la vidéo 360° permet ainsi d'adresser tout type de récepteurs. Un tel flux échelonnable permet également que chaque récepteur puisse décoder et reconstruire une vidéo 2D ou une vidéo 360° selon ses capacités.  The scalable bitstream representative of the 360 ° video makes it possible to address any type of receiver. Such a scalable flow also allows each receiver to decode and reconstruct a 2D video or a 360 ° video according to its capabilities.
Selon le procédé de décodage décrit ci-dessus, les récepteurs classiques, tels que PC, téléviseur, tablette, etc.. ne décoderont qu'une couche de base, et restitueront une séquence d'images 2D. Tandis que les récepteurs adaptés pour la vidéo 360°, tels que les casque de réalité virtuelle, smartphones (téléphone intelligent), etc, décoderont les couches de base et la couche d'amélioration et restitueront la vidéo 360°.  According to the decoding method described above, conventional receivers, such as PC, TV, tablet, etc. will only decode a base layer, and will restore a sequence of 2D images. While receivers adapted for 360 ° video, such as virtual reality headphones, smartphones, etc., will decode base layers and enhancement layer and render 360 ° video.
La figure 4A illustre de manière plus détaillée les étapes de codage d'une couche de base et d'une couche d'amélioration du procédé décrit précédemment selon un mode particulier de réalisation de l'invention. On décrit ici le cas du codage d'une couche d'amélioration codant une vidéo omnidirectionnelle 360° par prédiction à partir d'une couche de base codant une vue k. FIG. 4A illustrates in greater detail the coding steps of a base layer and a process improvement layer described above according to a particular embodiment of the invention. The case of coding an improvement layer coding a 360 ° omnidirectional video by prediction from a base layer encoding a view k is described here.
Chaque image de la vue k à coder est découpée en bloc de pixels et chaque bloc de pixels est ensuite codé de manière classique par prédiction spatiale ou temporelle en utilisant une image de référence précédemment reconstruite de la séquence d'images de la vue k.  Each image of the view k to be encoded is divided into blocks of pixels and each block of pixels is then conventionally encoded by spatial or temporal prediction using a previously reconstructed reference image of the image sequence of the view k.
De manière classique, un module de prédiction P détermine une prédiction pour un bloc courant Bk c. Le bloc courant Bk c est codé par prédiction spatiale par rapport à d'autres blocs de la même image ou bien par prédiction temporelle par rapport à un bloc d'une image de référence précédemment codée et reconstruite de la vue k et mémorisée dans la mémoire MEMb. In a conventional manner, a prediction module P determines a prediction for a current block B k c . The current block B k c is coded by spatial prediction with respect to other blocks of the same image or by temporal prediction with respect to a block of a previously coded and reconstructed reference image of the view k and stored in the MEM memory b .
Un résidu de prédiction est obtenu en calculant la différence entre le bloc courant Bk c et la prédiction déterminée par le module de prédiction P. A prediction residue is obtained by calculating the difference between the current block B k c and the prediction determined by the prediction module P.
Ce résidu de prédiction est ensuite transformé par un module de transformation T mettant en œuvre par exemple une transformation de type DCT (pour Discrète Cosine Transform). Les coefficients transformés du bloc de résidu sont ensuite quantifiés par un module de quantification Q, puis codés par le module de codage entropique C pour former les données codées de la couche de base BL[k].  This prediction residue is then transformed by a transformation module T implementing for example a transformation of DCT (Discrete Cosine Transform) type. The transformed coefficients of the residue block are then quantized by a quantization module Q, and then coded by the entropy coding module C to form the coded data of the base layer BL [k].
Le résidu de prédiction est reconstruit, via une quantification inverse effectuée par le module Q"1 et une transformation inverse effectuée par le module T"1 et ajouté à la prédiction déterminée par le module de prédiction P pour reconstruire le bloc courant. The prediction residue is reconstructed, via an inverse quantization performed by the Q "1 module and an inverse transformation performed by the T " module 1 and added to the prediction determined by the prediction module P to reconstruct the current block.
Le bloc courant reconstruit est alors mémorisé afin de reconstruire l'image courante et que cette image courante reconstruite puisse servir de référence lors du codage d'images suivantes de la vue k. Lorsque l'image courante de la vue k est reconstruite, un module de projection PROJ effectue une projection géométrique de l'image reconstruite dans l'image de référence lref de la vidéo 360°, telle qu'illustrée en figure 2B et selon la transformation géométrique décrite précédemment. The reconstructed current block is then stored in order to reconstruct the current image and this reconstructed current image can be used as a reference when encoding subsequent images of the view k. When the current image of the view k is reconstructed, a projection module PROJ performs a geometrical projection of the reconstructed image in the reference image 1 ref of the 360 ° video, as illustrated in FIG. 2B and according to FIG. geometric transformation described previously.
L'image de référence lref obtenue par projection de l'image reconstruite de la couche de base est mémorisée dans la mémoire de la couche d'amélioration MEMe. The reference image l ref obtained by projection of the reconstructed image of the base layer is stored in the memory of the enhancement layer MEM e .
Tout comme pour la couche de base, la vidéo omnidirectionnelle 360° est codée image par image et bloc par bloc. Chaque bloc de pixels est codé de manière classique par prédiction spatiale ou temporelle en utilisant une image de référence précédemment reconstruite et mémorisée dans la mémoire MEMe. As with the base layer, 360 ° omnidirectional video is frame-by-frame and block-wise coded. Each block of pixels is conventionally encoded by spatial or temporal prediction using a reference image previously reconstructed and stored in the memory MEM e .
De manière classique, un module de prédiction P détermine une prédiction pour un bloc courant Be c d'une image courante de la vidéo omnidirectionnelle 360°. Le bloc courant Be c est codé par prédiction spatiale par rapport à d'autres blocs de la même image ou bien par prédiction temporelle par rapport à un bloc d'une image de référence précédemment codée et reconstruite de la vidéo 360° et mémorisée dans la mémoire MEMe. In a conventional manner, a prediction module P determines a prediction for a current block B e c of a current image of the 360 ° omnidirectional video. The current block B e c is coded by spatial prediction with respect to other blocks of the same image or by temporal prediction with respect to a block of a previously coded and reconstructed reference image of the 360 ° video and stored in MEM memory e .
Selon l'invention, avantageusement, le bloc courant Be c peut également être codé par prédiction inter-couches par rapport à un bloc co-localisé dans l'image de référence lref obtenue à partir de la couche de base. Par exemple, un tel mode de codage est signalé dans les données codées EL de la couche d'amélioration par un mode de codage INTER signalant un codage temporel du bloc, un vecteur de mouvement nul, et un index de référence indiquant l'image de référence de la mémoire MEMe utilisée indiquant l'image lref. Ces informations sont codées par le codeur entropique C. Un tel mode particulier de réalisation de l'invention permet de réutiliser la syntaxe existante des modes de codage temporels des standards existants. D'autres types de signalisation sont bien sûr possibles. Le mode de prédiction déterminé pour coder un bloc courant Be c est par exemple sélectionné parmi tous les modes de prédiction possibles et en sélectionnant celui minimisant un critère débit/distorsion. According to the invention, advantageously, the current block B e c can also be coded by inter-layer prediction with respect to a block co-located in the reference image 1 ref obtained from the base layer. For example, such a coding mode is indicated in the coded EL data of the improvement layer by an INTER coding mode signaling a block time coding, a zero motion vector, and a reference index indicating the image of the coding layer. reference of the memory MEM e used indicating the image l ref . This information is coded by the entropy coder C. Such a particular embodiment of the invention makes it possible to reuse the existing syntax of the temporal coding modes of the existing standards. Other types of signaling are of course possible. The prediction mode determined for coding a current block B e c is for example selected from all possible prediction modes and selecting the one minimizing a rate / distortion criterion.
Une fois un mode de prédiction sélectionné pour le bloc courant Be c, un résidu de prédiction est obtenu en calculant la différence entre le bloc courant Be c et la prédiction déterminée par le module de prédiction P. Once a prediction mode has been selected for the current block B e c , a prediction residual is obtained by calculating the difference between the current block B e c and the prediction determined by the prediction module P.
Ce résidu de prédiction est ensuite transformé par un module de transformation T mettant en œuvre par exemple une transformation de type DCT (pour Discrète Cosine Transform). Les coefficients transformés du bloc de résidu sont ensuite quantifiés par un module de quantification Q, puis codés par le module de codage entropique C pour former les données codées de la couche d'amélioration EL. Le résidu de prédiction est reconstruit, via une quantification inverse effectuée par le module Q"1 et une transformation inverse effectuée par le module T1 et ajouté à la prédiction déterminée par le module de prédiction P pour reconstruire le bloc courant. This prediction residue is then transformed by a transformation module T implementing for example a transformation of DCT (Discrete Cosine Transform) type. The transformed coefficients of the residue block are then quantized by a quantization module Q, and then coded by the entropy coding module C to form the coded data of the enhancement layer EL. The prediction residue is reconstructed, via an inverse quantization performed by the Q "1 module and an inverse transformation performed by the module T 1 and added to the prediction determined by the prediction module P to reconstruct the current block.
Le bloc courant reconstruit est alors mémorisé afin de reconstruire l'image courante et que cette image courante reconstruite puisse servir de référence lors du codage d'images suivantes de la vidéo omnidirectionnelle 360°. The reconstructed current block is then stored in order to reconstruct the current image and this reconstructed current image can be used as a reference when encoding subsequent images of the 360 ° omnidirectional video.
Le codage a été décrit ici dans le cas d'une seule vue k codée dans une couche de base. Le procédé est aisément transposable au cas de plusieurs vues codées dans autant de couches de base. Chaque image reconstruite à un instant temporel t d'une couche de base est projetée sur la même image de référence lref de la vidéo 360° pour coder une image de la vidéo 360° à l'instant t. The coding has been described here in the case of a single view k encoded in a base layer. The method is easily transposable to the case of several views coded in as many basic layers. Each image reconstructed at a time t of a base layer is projected onto the same reference image 1 ref of the 360 ° video to encode an image of the 360 video at time t.
La figure 4B présente la structure simplifiée d'un dispositif de codage COD adapté pour mettre en œuvre le procédé de codage selon l'un quelconque des modes particuliers de réalisation de l'invention décrit précédemment. FIG. 4B shows the simplified structure of a coding device COD adapted to implement the coding method according to any one of the particular embodiments of the invention described above.
Un tel dispositif de codage comprend une mémoire MEM4, une unité de traitement UT4, équipée par exemple d'un processeur PROC4.  Such an encoding device comprises a memory MEM4, a processing unit UT4, equipped for example with a processor PROC4.
Selon un mode particulier de réalisation de l'invention, le procédé de codage est mis en œuvre par un programme d'ordinateur PG4 stocké en mémoire MEM4 et pilotant l'unité de traitement UT4. Le programme d'ordinateur PG4 comprend des instructions pour mettre en œuvre les étapes du procédé de codage tel que décrit précédemment, lorsque le programme est exécuté par le processeur PROC4.  According to a particular embodiment of the invention, the coding method is implemented by a computer program PG4 stored in memory MEM4 and driving the processing unit UT4. The computer program PG4 includes instructions for implementing the steps of the encoding method as described above, when the program is executed by the processor PROC4.
A l'initialisation, les instructions de code du programme d'ordinateur PG4 sont par exemple chargées dans une mémoire (non représentée) avant d'être exécutées par le processeur PROC4. Le processeur PROC4 de l'unité de traitement UT4 met notamment en œuvre les étapes du procédé de codage décrit en relation avec les figures 1A, ou 4A, selon les instructions du programme d'ordinateur PG4.  At initialization, the code instructions of the computer program PG4 are for example loaded into a memory (not shown) before being executed by the processor PROC4. The processor PROC4 of the processing unit UT4 implements in particular the steps of the coding method described in relation with FIGS. 1A or 4A, according to the instructions of the computer program PG4.
Selon un autre mode particulier de réalisation de l'invention, le procédé de codage est mis en œuvre par des modules fonctionnels (P, T, Q, Q"1, T"1, C, PROJ). Pour cela, l'unité de traitement UT4 coopère avec les différents modules fonctionnels et la mémoire MEM4 afin de mettre en œuvre les étapes du procédé de codage. La mémoire MEM4 peut notamment comprendre les mémoires MEMb, MEMe. According to another particular embodiment of the invention, the coding method is implemented by functional modules (P, T, Q, Q "1 , T " 1 , C, PROJ). For this, the processing unit UT4 cooperates with the various functional modules and the memory MEM4 in order to implement the steps of the coding method. The memory MEM4 can in particular comprise the memories MEM b , MEM e .
Les différents modules fonctionnels décrits ci-dessus peuvent être sous forme matérielle et/ou logicielle. Sous une forme logicielle, un tel module fonctionnel peut comprendre un processeur, une mémoire et des instructions de code de programme pour mettre en œuvre la fonction correspondante au module lorsque les instructions de code sont exécutées par un le processeur. Sous une forme matérielle, un tel module fonctionnel peut mis en œuvre par tout type de circuits d'encodage adaptés, tels que par exemple et de manière non limitative des microprocesseurs, des processeurs de traitement du signal (DSP pour Digital Signal Processor en anglais), des circuits intégrés spécifiques à des applications (ASICs pour Application Spécifie Integrated Circuit en anglais), des circuits FPGA pour Field Programmable Gâte Arrays en anglais, un câblage d'unités logiques. The various functional modules described above can be in hardware and / or software form. In a software form, such a functional module may include a processor, a memory, and program code instructions for implementing the function corresponding to the module when the code instructions are executed by the processor. In a material form, such a functional module can be implemented by any type of suitable encoding circuits, such as for example and without limitation microprocessors, signal processing processors (DSP for Digital Signal Processor in English), integrated circuits specific to applications (ASICs for Application Specified Integrated) Circuit in English), FPGA circuits for Field Programmable Gate Arrays in English, logic unit wiring.
La figure 5A illustre de manière plus détaillée les étapes de décodage d'une couche de base et d'une couche d'amélioration du procédé décrit précédemment selon un mode particulier de réalisation de l'invention. On décrit ici le cas du décodage d'une couche d'amélioration EL codant une vidéo omnidirectionnelle 360° par prédiction à partir d'une couche de base BL[k] codant une vue k. FIG. 5A illustrates in more detail the decoding steps of a base layer and a process improvement layer described above according to a particular embodiment of the invention. The case of the decoding of an enhancement layer EL coding a 360 ° omnidirectional video by prediction from a base layer BL [k] coding a view k is described here.
La vue k et la vidéo omnidirectionnelle 360° sont décodées image par image et bloc par bloc. De manière classique, les données de la couche de base BL[k] sont décodées par un module de décodage entropique D. Puis, pour un bloc courant d'une image courante à reconstruire, un résidu de prédiction est reconstruit via une quantification inverse des coefficients décodés entropiquement par un module de quantification inverse Q"1 et une transformation inverse par un module de transformation inverse T1. Un module de prédiction P détermine une prédiction pour le bloc courant à partir des données de signalisation décodées par le module de décodage entropique D. La prédiction est ajoutée au résidu de prédiction reconstruit pour reconstruire le bloc courant. The k view and the 360 ° omnidirectional video are decoded frame by frame and block by block. Conventionally, the data of the base layer BL [k] are decoded by an entropy decoding module D. Then, for a current block of a current image to be reconstructed, a prediction residue is reconstructed via an inverse quantization of coefficients decoded entropically by an inverse quantization module Q "1 and an inverse transformation by an inverse transformation module T 1. A prediction module P determines a prediction for the current block from the signaling data decoded by the entropy decoding module D. The prediction is added to the reconstructed prediction residue to reconstruct the current block.
Le bloc courant reconstruit est alors mémorisé afin de reconstruire l'image courante et que cette image courante reconstruite soit mémorisée dans la mémoire d'images de référence de la couche de base MEMb et qu'elle puisse servir de référence lors du décodage d'images suivantes de la vue k. The reconstructed current block is then stored in order to reconstruct the current image and that this reconstructed current image is stored in the reference image memory of the base layer MEM b and that it can serve as a reference during the decoding of the current image. following images of view k.
Lorsque l'image courante de la vue k est reconstruite, un module de projection PROJ effectue une projection géométrique de l'image reconstruite dans l'image de référence lref de la vidéo omnidirectionnelle 360°, telle qu'illustrée en figure 2B et selon la transformation géométrique décrite précédemment. When the current image of the view k is reconstructed, a projection module PROJ carries out a geometric projection of the reconstructed image in the reference image 1 ref of the 360 ° omnidirectional video, as illustrated in FIG. 2B and according to FIG. the geometric transformation described above.
L'image de référence lref obtenue par projection de l'image reconstruite de la couche de base est mémorisée dans la mémoire d'images de référence de la couche d'amélioration MEMe. Les données de la couche d'amélioration EL sont décodées par un module de décodage entropique D. Puis, pour un bloc courant d'une image courante à reconstruire, un résidu de prédiction est reconstruit via une quantification inverse des coefficients décodés entropiquement mise en œuvre par un module de quantification inverse Q"1 et une transformation inverse mise en œuvre par un module de transformation inverse T"1. Un module de prédiction P détermine une prédiction pour le bloc courant à partir des données de signalisation décodées par le module de décodage entropique D. Par exemple, les données de syntaxe décodées indiquent que le bloc courant Be c est codé par prédiction inter-couches par rapport à un bloc co-localisé dans l'image de référence lref obtenue à partir de la couche de base. Le module de prédiction détermine donc que la prédiction correspond au bloc co-localisé au bloc courant Be c dans l'image de référence lref. La prédiction est ajoutée au résidu de prédiction reconstruit pour reconstruire le bloc courant. Le bloc courant reconstruit est alors mémorisé afin de reconstruire l'image courante de la couche d'amélioration. The reference image 1 ref obtained by projection of the reconstructed image of the base layer is stored in the reference image memory of the enhancement layer MEM e . The data of the enhancement layer EL are decoded by an entropy decoding module D. Then, for a current block of a current image to be reconstructed, a prediction residue is reconstructed via an inverse quantization of the decoded coefficients entropically implemented. by an inverse quantization module Q "1 and an inverse transformation implemented by an inverse transformation module T " 1 . A prediction module P determines a prediction for the current block from the signaling data decoded by the entropic decoding module D. For example, the decoded syntax data indicates that the current block B e c is coded by inter-layer prediction with respect to a block co-located in the reference picture l ref obtained from the base layer. The prediction module therefore determines that the prediction corresponds to the block co-located at the current block B e c in the reference image l ref . The prediction is added to the reconstructed prediction residue to reconstruct the current block. The reconstructed current block is then stored in order to reconstruct the current image of the enhancement layer.
Cette image reconstruite est mémorisée dans la mémoire d'images de référence de la couche d'amélioration MEMe pour servir de référence lors du décodage d'images suivantes de la vidéo 360°. This reconstructed image is stored in the reference image memory of the enhancement layer MEM e to serve as a reference when decoding subsequent images of the 360 ° video.
La figure 5B présente la structure simplifiée d'un dispositif de décodage DEC adapté pour mettre en œuvre le procédé de décodage selon l'un quelconque des modes particuliers de réalisation de l'invention décrit précédemment. FIG. 5B shows the simplified structure of a decoding device DEC adapted to implement the decoding method according to any one of the particular embodiments of the invention described above.
Un tel dispositif de décodage comprend une mémoire MEM5, une unité de traitement UT5, équipée par exemple d'un processeur PROC5. Such a decoding device comprises a memory MEM5, a processing unit UT5, equipped for example with a processor PROC5.
Selon un mode particulier de réalisation de l'invention, le procédé de décodage est mis en œuvre par un programme d'ordinateur PG5 stocké en mémoire MEM5 et pilotant l'unité de traitement UT5. Le programme d'ordinateur PG5 comprend des instructions pour mettre en œuvre les étapes du procédé de décodage tel que décrit précédemment, lorsque le programme est exécuté par le processeur PROC5.  According to a particular embodiment of the invention, the decoding method is implemented by a computer program PG5 stored in memory MEM5 and driving the processing unit UT5. The computer program PG5 includes instructions for implementing the steps of the decoding method as described above, when the program is executed by the processor PROC5.
A l'initialisation, les instructions de code du programme d'ordinateur PG5 sont par exemple chargées dans une mémoire (non représentée) avant d'être exécutées par le processeur PROC5. Le processeur PROC5 de l'unité de traitement UT5 met notamment en œuvre les étapes du procédé de décodage décrit en relation avec les figures 3, ou 5A, selon les instructions du programme d'ordinateur PG5.  At initialization, the code instructions of the computer program PG5 are for example loaded into a memory (not shown) before being executed by the processor PROC5. The processor PROC5 of the processing unit UT5 notably implements the steps of the decoding method described in relation with FIG. 3 or 5A, according to the instructions of the computer program PG5.
Selon un autre mode particulier de réalisation de l'invention, le procédé de décodage est mis en œuvre par des modules fonctionnels (P, Q"1, T1, D, PROJ). Pour cela, l'unité de traitement UT5 coopère avec les différents modules fonctionnels et la mémoire MEM5 afin de mettre en œuvre les étapes du procédé de décodage. La mémoire MEM5 peut notamment comprendre les mémoires MEMb, MEMe. According to another particular embodiment of the invention, the decoding method is implemented by functional modules (P, Q "1 , T 1 , D, PROJ), for which the UT5 processing unit cooperates with the different functional modules and the memory MEM5 in order to implement the steps of the decoding method The memory MEM5 may in particular comprise the memories MEM b , MEM e .
Les différents modules fonctionnels décrits ci-dessus peuvent être sous forme matérielle et/ou logicielle. Sous une forme logicielle, un tel module fonctionnel peut comprendre un processeur, une mémoire et des instructions de code de programme pour mettre en œuvre la fonction correspondante au module lorsque les instructions de code sont exécutées par un le processeur. Sous une forme matérielle, un tel module fonctionnel peut mis en œuvre par tout type de circuits d'encodage adaptés, tels que par exemple et de manière non limitative des microprocesseurs, des processeurs de traitement du signal (DSP pour Digital Signal Processor en anglais), des circuits intégrés spécifiques à des applications (ASICs pour Application Spécifie Integrated Circuit en anglais), des circuits FPGA pour Field Programmable Gâte Arrays en anglais, un câblage d'unités logiques. The various functional modules described above can be in hardware and / or software form. In a software form, such a functional module may include a processor, a memory, and program code instructions for implementing the function corresponding to the module when the code instructions are executed by the processor. In a material form, such a functional module can be implemented by any type of suitable encoding circuits, such as, for example, and without limitation microprocessors, signal processing processors (DSPs for Digital Signal Processor), application-specific integrated circuits (ASICs for Application Specific Integrated Circuit), FPGAs for Field Programmable Gate Arrays in English, cabling logical units.
Selon un mode particulier de réalisation de l'invention, les blocs d'une image de la couche d'amélioration sont codés par groupes de blocs, un tel groupe de bloc est aussi appelé tuile. Chaque groupe de blocs, i.e. chaque tuile est codée indépendamment des autres tuiles. Chaque tuile peut alors être décodée indépendamment des autres tuiles. De tels tuiles (TE0- TE1 1 ) sont illustrées en figure 6A représentant une image de la vidéo omnidirectionnelle 360° à un instant temporel dans laquelle 12 tuiles sont définies et recouvrent entièrement l'image. According to a particular embodiment of the invention, the blocks of an image of the enhancement layer are coded in groups of blocks, such a group of blocks is also called a tile. Each group of blocks, i.e. each tile is coded independently of the other tiles. Each tile can then be decoded independently of other tiles. Such tiles (TE0-TE1 1) are illustrated in FIG. 6A showing an image of the 360 ° omnidirectional video at a time instant in which 12 tiles are defined and completely cover the image.
Par codage indépendant des tuiles, on entend ici un codage des blocs d'une tuile n'utilisant pas de prédiction spatiale à partir d'un bloc d'une autre tuile de l'image, ou de prédiction temporelle à partir d'un bloc d'une tuile de l'image de référence non co-localisé avec la tuile courante.  By independent coding of the tiles, here is meant a coding of the blocks of a tile not using spatial prediction from a block of another tile of the image, or of temporal prediction from a block a tile of the reference image not co-located with the current tile.
Chaque tuile est codée par prédiction temporelle ou inter-couches à partir d'une ou plusieurs de couches de base comme illustré en figures 6A et 6B. Sur les figures 6A et 6B, les tuiles TE4 et TE7 sont codées par prédiction inter-couches par rapport à l'image projetée dans l'image de référence lref de la vue 1 et les tuiles TE3 et TE6 sont codées par prédiction intercouches par rapport à l'image projetée dans l'image de référence lref de la vue 2. Each tile is coded by temporal or inter-layer prediction from one or more of base layers as illustrated in FIGS. 6A and 6B. In FIGS. 6A and 6B, the tiles TE4 and TE7 are coded by inter-layer prediction with respect to the image projected in the reference image 1 ref of the view 1 and the tiles TE3 and TE6 are coded by inter-layer prediction. relative to the image projected in the reference image l ref of the view 2.
Selon ce mode particulier de réalisation de l'invention, un récepteur adapté pour décoder et restituer une vidéo 360° peut ne décoder que les tuiles nécessaires à la zone courante de l'image 360° visualisée par un utilisateur. En effet, lors de la restitution d'une vidéo 360°, un utilisateur ne peut pas visualiser à un instant t, toute l'image de la vidéo, i.e. il ne peut pas regarder dans toutes les directions à la fois et ne visualise à un instant t que la zone de l'image face à son regard. According to this particular embodiment of the invention, a receiver adapted to decode and render a 360 ° video can only decode the tiles necessary for the current area of the 360 ° image displayed by a user. Indeed, when rendering a 360 ° video, a user can not view at a time t, the entire image of the video, ie he can not look in all directions at once and only a moment t that the area of the image in front of his eyes.
Par exemple, une telle zone de visualisation est représentée par la zone ZV sur la figure 6A. Ainsi, selon ce mode de réalisation, seules les couches de base ayant servie à la prédiction de la zone visualisée par l'utilisateur sont décodées lors de l'étape 31. Dans l'exemple décrit en figures 6A et 6B, seule la couche de base correspondant à la vue 1 est décodée lors de l'étape 31 , et seules les tuiles TE4, TE5, TE7 et TE8 sont décodées lors de l'étape 35 de la figure 3, à partir de la couche d'amélioration EL. Lors de l'étape 35, seule la partie de l'image de la couche de rehaussement correspondant aux tuiles TE4, TE5, TE7 et TE8 est reconstruite. Le mode particulier de réalisation, décrit en relation avec les figures 6A et 6B, est décrit ici dans le cas où les tuiles de la couche d'amélioration EL à décoder ne dépendent que d'une seule couche de base (celle de la vue 1 ). Selon d'autres variantes, une tuile de la couche d'amélioration EL peut être codée par prédiction à partir de plusieurs couches de base, en fonction par exemple des choix d'optimisation débit/distorsion effectués lors du codage des blocs de la couche d'amélioration, un bloc d'une tuile pouvant être codant par prédiction par rapport à une première couche de base, et un autre bloc de la même tuile pouvant être codé par une autre couche de base distinct de la première couche de base. Dans ce cas, toutes les couches de base utilisées pour la prédiction des blocs d'une tuile de la couche d'amélioration doivent être décodées. For example, such a viewing area is represented by the area ZV in Figure 6A. Thus, according to this embodiment, only the base layers having served to predict the area visualized by the user are decoded in step 31. In the example described in FIGS. 6A and 6B, only the layer of base corresponding to the view 1 is decoded in the step 31, and only the tiles TE4, TE5, TE7 and TE8 are decoded in the step 35 of Figure 3, from the enhancement layer EL. In step 35, only the part of the image of the enhancement layer corresponding to the tiles TE4, TE5, TE7 and TE8 is reconstructed. The particular embodiment, described with reference to FIGS. 6A and 6B, is described here in the case where the tiles of the enhancement layer EL to be decoded depend only on a single base layer (that of view 1 ). According to other variants, a improvement layer tile EL can be prediction coded from several base layers, depending for example on rate / distortion optimization choices made during block coding of the enhancement layer, a block of a tile that can be prediction coded with respect to a first base layer, and another block of the same tile that can be encoded by another base layer distinct from the first base layer. In this case, all the base layers used to predict the blocks of a tile of the enhancement layer must be decoded.
Pour cela, le flux de données codées comprend pour chaque tuile de la couche d'amélioration une information identifiant les couches de base utilisées pour prédire la tuile. Par exemple, pour chaque tuile, des éléments de syntaxe indiquant le nombre de couches de base utilisées et un identifiant de chaque couche de base utilisée sont codés dans le flux de données. De tels éléments de syntaxe sont décodés pour chaque tuile de la couche d'amélioration à décoder lors de l'étape 35 de décodage de la couche d'amélioration.  For this, the coded data stream includes for each tile of the enhancement layer information identifying the base layers used to predict the tile. For example, for each tile, syntax elements indicating the number of base layers used and an identifier of each base layer used are encoded in the data stream. Such syntax elements are decoded for each tile of the enhancement layer to be decoded during step 35 of decoding the enhancement layer.
Le mode particulier de réalisation décrit ci-dessus permet de limiter l'utilisation des ressources du décodeur et d'éviter le décodage de données inutiles car non visualisées par l'utilisateur. Un tel mode de réalisation peut être mis par l'un quelconque des dispositifs de codage et l'un quelconque des dispositifs de décodage décrits précédemment. The particular embodiment described above makes it possible to limit the use of the resources of the decoder and to avoid the decoding of unnecessary data because it is not displayed by the user. Such an embodiment may be implemented by any of the encoders and any of the decoding devices described above.
Les procédés de codage et de décodage décrits ci-dessus ont été décrits dans le cas où les images reconstruites des couches de base sont projetées, lors des étapes 14 et 15 de la figure 1A et lors des 32, 34 de la figure 3, sur une même image de référence insérée dans la mémoire d'images de référence de la couche de rehaussement. The coding and decoding methods described above have been described in the case where the reconstructed images of the base layers are projected, during the steps 14 and 15 of FIG. 1A and at the 32, 34 of FIG. the same reference image inserted into the reference image memory of the enhancement layer.
Lorsque le nombre de couches de base est limitée, par exemple 1 ou 2, une telle image de référence présente des zones non définies, par exemple mises à 0 par défaut, de taille importante, utilisant alors des ressources mémoires inutilement.  When the number of base layers is limited, for example 1 or 2, such a reference image has undefined areas, for example set to 0 by default, large size, then using memory resources unnecessarily.
Selon d'autres variantes, les images reconstruites des couches de bases projetées sur la couche de rehaussement peuvent être mémorisées dans des sous-images de référence. Par exemple, une sous-image peut être utilisée pour chaque couche de base. Chaque sous- image est mémorisée en association avec des informations de décalage permettant à l'encodeur et/ou au décodeur de déterminer la localisation de la sous-image dans l'image de rehaussement. Une telle variante procure l'avantage d'économiser l'espace mémoire en évitant d'avoir une image de référence au niveau de la couche de rehaussement dont la majorité des échantillons sont nuls.  According to other variants, the reconstructed images of the base layers projected on the enhancement layer can be stored in reference subpictures. For example, a subimage can be used for each base layer. Each subimage is stored in association with offset information enabling the encoder and / or decoder to determine the location of the subimage in the enhancement image. Such a variant provides the advantage of saving the memory space by avoiding having a reference image at the level of the enhancement layer, the majority of the samples are zero.
Une telle variante peut être mise en œuvre indépendamment au codeur et/ou au décodeur. Such a variant can be implemented independently to the encoder and / or the decoder.

Claims

Revendications 1. Procédé de codage d'un flux de données représentatif d'une vidéo omnidirectionnelle, caractérisé en ce qu'il comprend :  1. A method of encoding a data stream representative of an omnidirectional video, characterized in that it comprises:
- une étape de codage dans ledit flux d'au moins une couche de base représentative d'une vidéo 2D ou 3D, la vidéo 2D ou 3D étant représentative d'une vue d'une même scène capturée par la vidéo omnidirectionnelle,  a coding step in said stream of at least one base layer representative of a 2D or 3D video, the 2D or 3D video being representative of a view of the same scene captured by the omnidirectional video,
- une étape de codage dans ledit flux d'au moins une couche de rehaussement représentative de la vidéo omnidirectionnelle, la au moins une couche de rehaussement étant codée par prédiction par rapport à la au moins une couche de base. a coding step in said stream of at least one enhancement layer representative of the omnidirectional video, the at least one enhancement layer being coded by prediction with respect to the at least one base layer.
2. Procédé de décodage d'un flux de données représentatif d'une vidéo omnidirectionnelle, caractérisé en ce qu'il comprend : 2. A method of decoding a data stream representative of an omnidirectional video, characterized in that it comprises:
- une étape de décodage à partir dudit flux d'au moins une couche de base représentative d'une vidéo 2D ou 3D, la vidéo 2D ou 3D étant représentative d'une vue d'une même scène capturée par la vidéo omnidirectionnelle,  a step of decoding from said stream of at least one base layer representative of a 2D or 3D video, the 2D or 3D video being representative of a view of the same scene captured by the omnidirectional video,
- une étape de décodage à partir dudit flux d'au moins une couche de rehaussement représentative de la vidéo omnidirectionnelle, la au moins une couche de rehaussement étant décodée par prédiction par rapport à la au moins une couche de base.  a step of decoding from said stream of at least one enhancement layer representative of the omnidirectional video, the at least one enhancement layer being decoded by prediction with respect to the at least one base layer.
3. Procédé selon la revendication 1 ou 2, dans lequel la prédiction de la couche de rehaussement par rapport à la au moins une couche de base comprend, pour coder ou reconstruire au moins une image de la couche de rehaussement : The method of claim 1 or 2, wherein the prediction of the enhancement layer with respect to the at least one base layer comprises, for encoding or reconstructing at least one image of the enhancement layer:
- la génération d'une image de référence obtenue par projection géométrique sur ladite image de référence d'une image, dite image de base, reconstruite à partir de la au moins une couche de base,  the generation of a reference image obtained by geometric projection on said reference image of an image, called a basic image, reconstructed from the at least one base layer,
- la mémorisation de ladite image de référence dans une mémoire d'images de référence de la couche de rehaussement.  storing said reference image in a reference image memory of the enhancement layer.
4. Procédé selon la revendication 3, dans lequel le flux de données comprend une information représentative d'un type de projection géométrique utilisée pour représenter la vidéo omnidirectionnelle. The method of claim 3, wherein the data stream comprises information representative of a type of geometric projection used to represent the omnidirectional video.
5. Procédé selon l'une quelconque des revendications 1 à 4, dans lequel la vue représentée par la vidéo 2D ou 3D est une vue extraite de la vidéo omnidirectionnelle. The method of any one of claims 1 to 4, wherein the view represented by the 2D or 3D video is a view taken from the omnidirectional video.
6. Procédé selon la revendication 5, dans lequel le flux de données comprend une information représentative des paramètres de projection et de localisation de ladite image de base dans une image de la vidéo omnidirectionnelle, ladite information étant utilisée pour projeter l'image de base sur l'image de référence. The method of claim 5, wherein the data stream comprises information representative of the projection and location parameters of said base image in an omnidirectional video image, said information being used to project the base image over the reference image.
7. Procédé selon la revendication 6, dans lequel ladite information représentative des paramètres de projection de localisation de ladite image de base est codée dans le flux de données à chaque image de la vidéo omnidirectionnelle. The method of claim 6, wherein said information representative of the location projection parameters of said base picture is encoded in the data stream at each frame of the omnidirectional video.
8. Procédé selon l'une quelconque des revendications 1 à 7, dans lequel le flux de données comprend au moins deux couches de base, chaque couche de base étant représentative d'une vidéo 2D ou 3D respectivement représentative d'une vue de la scène, les au moins deux couches de base étant codées indépendamment l'une de l'autre. The method according to any one of claims 1 to 7, wherein the data stream comprises at least two basic layers, each base layer being representative of a 2D or 3D video respectively representative of a scene view. the at least two base layers being coded independently of one another.
9. Procédé de décodage selon la revendication 8, dans lequel une image de la couche de rehaussement est codée à l'aide d'un groupe de tuiles, chaque tuile couvrant une région de l'image de la couche de rehaussement, chaque région étant distincte et disjointe des autres régions de l'image de la couche de rehaussement, chaque tuile étant codée par prédiction par rapport à au moins une couche de base, le décodage de la couche de rehaussement comprend : The decoding method according to claim 8, wherein an image of the enhancement layer is encoded using a group of tiles, each tile covering a region of the image of the enhancement layer, each region being distinct and disjoint from the other regions of the enhancement layer image, each tile being prediction encoded with respect to at least one base layer, the decoding of the enhancement layer comprises:
- la reconstruction d'une partie de l'image de la couche de rehaussement comprenant le décodage des tuiles de la couche de rehaussement couvrant la partie de l'image de la couche de rehaussement à reconstruire, et  the reconstruction of a part of the image of the enhancement layer comprising the decoding of the tiles of the enhancement layer covering the portion of the image of the enhancement layer to be reconstructed, and
- le décodage de la au moins une couche de base comprenant le décodage des couches de base utilisées pour prédire les tuiles couvrant la partie de l'image de la couche de rehaussement à reconstruire.  decoding the at least one base layer comprising the decoding of the base layers used to predict the tiles covering the portion of the image of the enhancement layer to be reconstructed.
10. Procédé de décodage selon la revendication 9, comprenant en outre, pour chaque tuile de la couche de rehaussement à décoder, le décodage d'une information identifiant la au moins une couche de base utilisée pour prédire la tuile. The decoding method of claim 9, further comprising, for each tile of the enhancement layer to be decoded, decoding information identifying the at least one base layer used to predict the tile.
1 1 . Dispositif de codage d'un flux de données représentatif d'une vidéo omnidirectionnelle, caractérisé en ce qu'il comprend : 1 1. Device for encoding a data stream representative of an omnidirectional video, characterized in that it comprises:
- des moyens de codage dans ledit flux d'au moins une couche de base représentative d'une vidéo 2D ou 3D, la vidéo 2D ou 3D étant représentative d'une vue d'une même scène capturée par la vidéo omnidirectionnelle, - des moyens de codage dans ledit flux d'au moins une couche de rehaussement représentative de la vidéo omnidirectionnelle, lesdits moyens de codage de la couche de rehaussement comprenant des moyens de prédiction de la couche de rehaussement par rapport à la au moins une couche de base. encoding means in said stream of at least one base layer representative of a 2D or 3D video, the 2D or 3D video being representative of a view of the same scene captured by the omnidirectional video, encoding means in said stream of at least one enhancement layer representative of the omnidirectional video, said enhancement layer coding means comprising means for predicting the enhancement layer with respect to the at least one enhancement layer; based.
12. Dispositif de décodage d'un flux de données représentatif d'une vidéo omnidirectionnelle, caractérisé en ce qu'il comprend : 12. Device for decoding a data stream representative of an omnidirectional video, characterized in that it comprises:
- des moyens de décodage dans ledit flux d'au moins une couche de base représentative d'une vidéo 2D ou 3D, la vidéo 2D ou 3D étant représentative d'une vue d'une même scène capturée par la vidéo omnidirectionnelle,  decoding means in said stream of at least one base layer representative of a 2D or 3D video, the 2D or 3D video being representative of a view of the same scene captured by the omnidirectional video,
- des moyens de décodage dans ledit flux d'au moins une couche de rehaussement représentative de la vidéo omnidirectionnelle, lesdits moyens de décodage de la couche de rehaussement comprenant des moyens de prédiction de la couche de rehaussement par rapport à la au moins une couche de base.  decoding means in said stream of at least one enhancement layer representative of the omnidirectional video, said enhancement layer decoding means comprising means for predicting the enhancement layer with respect to the at least one enhancement layer; based.
13. Signal représentatif d'une vidéo omnidirectionnelle, caractérisé en ce qu'il comprend des données codées d'au moins une couche de base représentative d'une vidéo 2D ou 3D, la vidéo 2D ou 3D étant représentative d'une vue d'une même scène capturée par la vidéo omnidirectionnelle, et des données codées d'au moins une couche de rehaussement représentative de la vidéo omnidirectionnelle, la au moins une couche de rehaussement étant codée par prédiction par rapport à la au moins une couche de base. 13. Signal representative of an omnidirectional video, characterized in that it comprises coded data of at least one base layer representative of a 2D or 3D video, the 2D or 3D video being representative of a view of the same scene captured by the omnidirectional video, and coded data of at least one enhancement layer representative of the omnidirectional video, the at least one enhancement layer being coded by prediction with respect to the at least one base layer.
14. Signal selon la revendication 13, dans lequel une image de la couche de rehaussement est codée à l'aide d'un groupe de tuiles, chaque tuile couvrant une région de l'image de la couche de rehaussement, chaque région étant distincte et disjointe des autres régions de l'image de la couche de rehaussement, chaque tuile étant codée par prédiction par rapport à au moins une couche de base, le signal comprend : The signal of claim 13, wherein an image of the enhancement layer is encoded using a group of tiles, each tile covering a region of the enhancement layer image, each region being distinct and disjoint from the other regions of the enhancement layer image, each tile being prediction coded with respect to at least one base layer, the signal comprises:
- pour chaque tuile, une information identifiant la au moins une couche de base utilisée pour prédire la tuile.  for each tile, information identifying the at least one base layer used to predict the tile.
15. Programme d'ordinateur comportant des instructions pour la mise en œuvre du procédé de codage selon l'une quelconque des revendications 1 à 8 ou des instructions pour la mise en œuvre du procédé de décodage selon l'une quelconque des revendications 2 à 10, lorsque ledit programme est exécuté par un processeur. Computer program comprising instructions for carrying out the coding method according to any one of claims 1 to 8 or instructions for implementing the decoding method according to any one of claims 2 to 10. when said program is executed by a processor.
PCT/EP2018/077922 2017-10-19 2018-10-12 Methods for encoding and decoding a data flow representing an omnidirectional video WO2019076764A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
US16/756,755 US11172223B2 (en) 2017-10-19 2018-10-12 Methods for encoding decoding of a data flow representing of an omnidirectional video
CN201880068327.9A CN111357292A (en) 2017-10-19 2018-10-12 Method for encoding and decoding a data stream representing an omnidirectional video
EP18783032.8A EP3698546A1 (en) 2017-10-19 2018-10-12 Methods for encoding and decoding a data flow representing an omnidirectional video
US17/500,362 US11736725B2 (en) 2017-10-19 2021-10-13 Methods for encoding decoding of a data flow representing of an omnidirectional video

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1759822 2017-10-19
FR1759822A FR3072850B1 (en) 2017-10-19 2017-10-19 CODING AND DECODING METHODS OF A DATA FLOW REPRESENTATIVE OF AN OMNIDIRECTIONAL VIDEO

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US16/756,755 A-371-Of-International US11172223B2 (en) 2017-10-19 2018-10-12 Methods for encoding decoding of a data flow representing of an omnidirectional video
US17/500,362 Continuation US11736725B2 (en) 2017-10-19 2021-10-13 Methods for encoding decoding of a data flow representing of an omnidirectional video

Publications (1)

Publication Number Publication Date
WO2019076764A1 true WO2019076764A1 (en) 2019-04-25

Family

ID=61187409

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2018/077922 WO2019076764A1 (en) 2017-10-19 2018-10-12 Methods for encoding and decoding a data flow representing an omnidirectional video

Country Status (5)

Country Link
US (2) US11172223B2 (en)
EP (1) EP3698546A1 (en)
CN (1) CN111357292A (en)
FR (1) FR3072850B1 (en)
WO (1) WO2019076764A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111953996A (en) * 2019-05-15 2020-11-17 腾讯美国有限责任公司 Method and device for video decoding

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150256838A1 (en) * 2012-09-30 2015-09-10 Sharp Kabushiki Kaisha Signaling scalability information in a parameter set
US20160156917A1 (en) 2013-07-11 2016-06-02 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
WO2018045108A1 (en) * 2016-09-02 2018-03-08 Vid Scale, Inc. Method and system for signaling of 360-degree video information

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1794821A (en) 2006-01-11 2006-06-28 浙江大学 Method and device of interpolation in grading video compression
WO2011005624A1 (en) * 2009-07-04 2011-01-13 Dolby Laboratories Licensing Corporation Encoding and decoding architectures for format compatible 3d video delivery
KR20110007928A (en) 2009-07-17 2011-01-25 삼성전자주식회사 Method and apparatus for encoding/decoding multi-view picture
US20120213275A1 (en) 2011-02-22 2012-08-23 Kwon Nyeong-Kyu Scalable video coding and devices performing the scalable video coding
EP2829066B1 (en) 2012-03-22 2020-07-08 MediaTek Inc. Method and apparatus of scalable video coding
CA2807404C (en) 2012-09-04 2017-04-04 Research In Motion Limited Methods and devices for inter-layer prediction in scalable video compression
WO2014053512A1 (en) 2012-10-01 2014-04-10 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Scalable video coding using inter-layer prediction contribution to enhancement layer prediction
US20140098880A1 (en) * 2012-10-05 2014-04-10 Qualcomm Incorporated Prediction mode information upsampling for scalable video coding
US10728565B2 (en) 2013-04-05 2020-07-28 Samsung Electronics Co., Ltd. Video encoding method and apparatus thereof and a video decoding method and apparatus thereof
JP6224930B2 (en) * 2013-07-10 2017-11-01 シャープ株式会社 Image decoding apparatus, image decoding method and image encoding apparatus
FR3008840A1 (en) * 2013-07-17 2015-01-23 Thomson Licensing METHOD AND DEVICE FOR DECODING A SCALABLE TRAIN REPRESENTATIVE OF AN IMAGE SEQUENCE AND CORRESPONDING ENCODING METHOD AND DEVICE
CN110460843A (en) 2013-09-24 2019-11-15 Vid拓展公司 Inter-layer prediction for scalable video coding
EP3241352B1 (en) 2014-12-31 2021-11-24 Nokia Technologies Oy Inter-layer prediction for scalable video coding and decoding
GB2538531A (en) * 2015-05-20 2016-11-23 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
WO2017142448A1 (en) * 2016-02-17 2017-08-24 Telefonaktiebolaget Lm Ericsson (Publ) Methods and devices for encoding and decoding video pictures
US10771791B2 (en) * 2016-08-08 2020-09-08 Mediatek Inc. View-independent decoding for omnidirectional video
EP3566445A4 (en) * 2017-01-03 2020-09-02 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
EP3422724B1 (en) * 2017-06-26 2024-05-01 Nokia Technologies Oy An apparatus, a method and a computer program for omnidirectional video

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150256838A1 (en) * 2012-09-30 2015-09-10 Sharp Kabushiki Kaisha Signaling scalability information in a parameter set
US20160156917A1 (en) 2013-07-11 2016-06-02 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
WO2018045108A1 (en) * 2016-09-02 2018-03-08 Vid Scale, Inc. Method and system for signaling of 360-degree video information

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
"Algorithm descriptions of projection format conversion and video quality metrics in 360Lib Version 4", 119. MPEG MEETING;17-7-2017 - 21-7-2017; TORINO; (MOTION PICTURE EXPERT GROUP OR ISO/IEC JTC1/SC29/WG11),, no. N17056, 1 October 2017 (2017-10-01), XP030023717 *
H-M OH ET AL: "Omnidirectional fisheye video SEI message", 29. JCT-VC MEETING; 23-10-2017 - 27-10-2017; MACAU; (JOINT COLLABORATIVE TEAM ON VIDEO CODING OF ISO/IEC JTC1/SC29/WG11 AND ITU-T SG.16 ); URL: HTTP://WFTP3.ITU.INT/AV-ARCH/JCTVC-SITE/,, no. JCTVC-AC0034, 11 October 2017 (2017-10-11), XP030118311 *
See also references of EP3698546A1
Y. YE; E. ALSHINA; J. BOYCE: "Algorithm descriptions of projection format conversion and video quality metrics in 360Lib Version 4", JVET OF ITU-T SG 16 WP3 AND ISO/IEC JTC 1/SC 29/WG 11, 7TH MEETING, 13 July 2017 (2017-07-13)
Y-K WANG (QUALCOMM): "On ERP equations for sample location remapping and sphere coverage signalling", 29. JCT-VC MEETING; 23-10-2017 - 27-10-2017; MACAU; (JOINT COLLABORATIVE TEAM ON VIDEO CODING OF ISO/IEC JTC1/SC29/WG11 AND ITU-T SG.16 ); URL: HTTP://WFTP3.ITU.INT/AV-ARCH/JCTVC-SITE/,, no. JCTVC-AC0024-v6, 10 October 2017 (2017-10-10), XP030118298 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111953996A (en) * 2019-05-15 2020-11-17 腾讯美国有限责任公司 Method and device for video decoding
CN111953996B (en) * 2019-05-15 2023-10-20 腾讯美国有限责任公司 Video decoding method and device
US11979586B2 (en) 2019-05-15 2024-05-07 Tencent America LLC Method and apparatus for video coding

Also Published As

Publication number Publication date
CN111357292A (en) 2020-06-30
FR3072850B1 (en) 2021-06-04
US20220046279A1 (en) 2022-02-10
US20200267411A1 (en) 2020-08-20
FR3072850A1 (en) 2019-04-26
US11736725B2 (en) 2023-08-22
EP3698546A1 (en) 2020-08-26
US11172223B2 (en) 2021-11-09

Similar Documents

Publication Publication Date Title
US11778171B2 (en) Apparatus, a method and a computer program for video coding and decoding
EP4072139A2 (en) An apparatus, a method and a computer program for video coding and decoding
CN110036636A (en) Viewport perceived quality metric for 360 degree of videos
US20110157309A1 (en) Hierarchical video compression supporting selective delivery of two-dimensional and three-dimensional video content
KR20090040032A (en) Method and device for generating depth image using reference image, and method for encoding or decoding the said depth image, and encoder or decoder for the same, and the recording media storing the image generating the said method
WO2020141260A1 (en) An apparatus, a method and a computer program for video coding and decoding
FR2974966A1 (en) METHOD FOR ENCODING AND DECODING INTEGRAL IMAGES, DEVICE FOR ENCODING AND DECODING INTEGRAL IMAGES, AND CORRESPONDING COMPUTER PROGRAMS
EP3198876B1 (en) Generation and encoding of residual integral images
WO2019076764A1 (en) Methods for encoding and decoding a data flow representing an omnidirectional video
EP3649778A1 (en) Method for encoding and decoding images, encoding and decoding device, and corresponding computer programs
FR2927758A1 (en) Successive video images coding method for industrial site video monitoring application, involves associating movement estimation vector to coded frequency components to generate coded images of less quality forming secondary video stream
EP3725080B1 (en) Methods and devices for encoding and decoding a multi-view video sequence representative of an omnidirectional video
KR101012760B1 (en) System and Method for transmitting and receiving of Multi-view video
FR3042368A1 (en) MULTI-VIEW ENCODING AND DECODING METHOD, MULTI-VIEW ENCODING AND DECODING DEVICE AND CORRESPONDING COMPUTER PROGRAMS
FR2894424A1 (en) METHOD FOR PREDICTING MOTION DATA AND TEXTURE
WO2019008253A1 (en) Method for encoding and decoding images, encoding and decoding device, and corresponding computer programs
JP7506077B2 (en) Apparatus, method, and computer program for video encoding and decoding
EP3542533B1 (en) Method and device for coding and decoding a multi-view sequence
EP1694075A1 (en) Method for deriving coding information for high resolution pictures from low resolution pictures
Shum et al. Compression of Dynamic Image-based Representations
FR2936388A1 (en) Original video sequence transcoding method, involves creating upper layer coded along format and having resolution same as resolution of layer of original video sequence, and modifying upper layer using data of lower layer
FR2894423A1 (en) METHOD FOR PREDICTING MOTION DATA AND TEXTURE

Legal Events

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

Ref document number: 18783032

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2018783032

Country of ref document: EP

Effective date: 20200519