EP2987319A1 - Method for generating an output video stream from a wide-field video stream - Google Patents

Method for generating an output video stream from a wide-field video stream

Info

Publication number
EP2987319A1
EP2987319A1 EP14719707.3A EP14719707A EP2987319A1 EP 2987319 A1 EP2987319 A1 EP 2987319A1 EP 14719707 A EP14719707 A EP 14719707A EP 2987319 A1 EP2987319 A1 EP 2987319A1
Authority
EP
European Patent Office
Prior art keywords
video stream
output video
wide field
output
field
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
EP14719707.3A
Other languages
German (de)
French (fr)
Inventor
Alexandre JENNY
Yann Renaud GILQUIN
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
GoPro Inc
Original Assignee
Kolor
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 Kolor filed Critical Kolor
Publication of EP2987319A1 publication Critical patent/EP2987319A1/en
Ceased legal-status Critical Current

Links

Classifications

    • G06T3/06
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/698Control of cameras or camera modules for achieving an enlarged field of view, e.g. panoramic image capture
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/12Picture reproducers
    • H04N9/31Projection devices for colour picture display, e.g. using electronic spatial light modulators [ESLM]
    • H04N9/3179Video signal processing therefor

Definitions

  • the invention relates to the field of video processing.
  • the invention more particularly relates to a method of generating an output video stream for display in a two-dimensional display space according to a particular rendition.
  • a video may be from an assembly from a plurality of viewpoints.
  • the displayed images of the video come from a polygonal computation from a three-dimensional model on which a texture is mapped. This restitution is known to those skilled in the art under the name English "UV mapping".
  • the result of the use of polygons is a degradation, also called distortion, of the rendering in the sense that the polygons geometrically modify the source video by geometric approximation of the latter.
  • the visual rendering is approximate and of inferior quality to that of the source video.
  • the object of the present invention is to propose a solution that makes it possible to obtain a fast restitution and whose distortion in the sense of the prior art is avoided.
  • This goal is achieved by a method of generating an output video stream for display in a two-dimensional display space, said method comprising the steps of:
  • - select a wide field video stream, defining a desired projection and a desired field of view with a view to obtaining a particular, notably non-distorted, reproduction of at least part of the wide-field video stream in the display space; performing a first geometric function enabling for each point of the display space, generating an intermediate point located in a three-dimensional reference, said first function taking into parameters the desired projection and the desired field of view, - forming the output video stream from the selected field wide flow taking into account the intermediate points.
  • the step of forming the output video stream is implemented so that each pixel of an image of the output video stream, intended to be displayed by a point of the display space, is function, according to the corresponding intermediate point, at least one pixel of a corresponding image of the wide field video stream.
  • the step of forming the output video stream comprises, for each intermediate point, a step of determining a reference point in the associated image of the wide field video stream in order to restore a pixel of the image the output video stream according to said reference point.
  • the step of determining the reference point comprises the execution of a second geometric function taking as input the corresponding intermediate point and configured so as to transform the coordinates of the intermediate point, according to the desired projection and to a determined projection associated with the flow wide-field video, in reference point coordinates within the corresponding image of the wide-field video stream.
  • the method that it comprises, for each reference point, a step of determining a pixel of the image of the output video stream to be displayed at the point of the corresponding display space from a pixel of the wide field video image image at said reference point or interpolation between multiple pixels of the wide field video image image at the reference point.
  • the method comprises a step of modifying the desired field of view and includes a step of updating the coordinates of the intermediate points.
  • this step of modifying the field of view is assimilated to a modification of the orientation of a virtual camera located in a spherical landmark and / or a modification of the angle of view of the virtual camera, and step of updating comprises, for each intermediate point, the following steps:
  • the modification of the orientation of the virtual camera takes into account at least one following parameter: the latitude angle of the virtual camera in the spherical coordinate system, the angle of longitude of the virtual camera in the spherical coordinate system, a the field of view angle value of the virtual camera.
  • At least the step of executing the first geometric function is performed by a graphics processor, in particular in which each image of the wide field video stream forms a texture of which part of the pixels is used by the graphics processor to form a corresponding image of the output video stream.
  • the method comprises a step of defining an effect filter to be applied to the images of the output video stream during their formation in order to restore a particular effect, in particular an effect filter chosen from: contrast, a brightness filter, a saturation filter, a hue filter, an image distortion filter.
  • the invention also relates to a method for displaying at least one output video stream in a display space of at least one screen, said method comprising at least one step of implementing the method of generating the output video stream as described, and a step of displaying said output video stream generated in the display space of said at least one screen.
  • each screen has a plurality of display spaces each displaying a corresponding output video stream, said output video streams being formed from the same wide field video stream according to a different field of view and / or a different projection. and / or a different effect.
  • the display method is configured to allow a step of displaying a plurality of separate output videos, at least two videos of outputs of the plurality of output videos from different wide field video streams, in particular, the output videos of a plurality of output videos are displayed in display spaces of the same screen, or in different screen display spaces.
  • the invention also relates to a device for managing at least one output video stream, said device comprising at least one element configured so as to implement the method of generating an output video stream as described, and a human-machine interface comprising at least one display screen for displaying the output video stream in at least one display space of said at least one screen.
  • the human-machine interface comprises at least one of the following elements: a selection element of a wide field video stream in a storage space, a definition element of the desired field of view, a definition element a desired projection, in particular from a predefined list of projections, an effect selection element to be applied, an element making it possible to move temporally within the wide-field video stream in order to restore the output video stream to a precise moment, a control element of the soundtrack of the output video stream.
  • the human-machine interface comprises at least one element for modifying the field of view, in particular chosen from: a touch screen, an accelerometer, a gyroscope, a magnetometer, a display space of the wide field video stream from which he is possible to choose the desired field of vision, a pointing device, a gesture interface with motion detection.
  • each screen comprises a plurality of display spaces, a separate output video stream being played in each of the display spaces, the output video streams played being each resulting from an implementation of the method of generating the output video stream as described, in particular from the same wide field video stream or different wide field video stream.
  • the invention also relates to a system comprising a compiler and a memory provided with a software development kit for creating an application for an operating system.
  • the development kit includes at least one element configured to implement the method of generating the video stream as described within the application when it is executed after being compiled by the compiler.
  • FIG. 1 illustrates a particular implementation of steps of a method for generating an output video stream
  • FIG. 2 is a view showing the implementation kinematics of the method of FIG. 1 on a particular device comprising a central processing unit and a graphics processor,
  • FIGS. 3 to 5 illustrate different representations of the desired projections of the method according to FIG. 1,
  • FIG. 6 illustrates in more detail one of the steps of the method according to FIG. 1,
  • FIG. 7 illustrates a method for displaying at least one video stream obtained from the method of FIG. 1,
  • FIG. 8 illustrates a device for implementing the method of generating the output video stream and allowing its display at a screen.
  • the method for generating a video stream described below differs from the existing one in particular in an optimized management of the computing resources while allowing a restitution, at least in part, of a video stream. wide field according to geometric transformations.
  • the method of generating an output video stream 1, in order to display it in a two-dimensional display space 2 preferably comprising a plurality of display points, comprises a step E1 in which a wide field video stream 3 is selected.
  • the selected wide field video stream 3 may be selected by an operator making a choice among several predefined wide field video streams, or making a choice from a file management system, especially local or remote, using a human machine interface.
  • the two-dimensional display space 2 can correspond to a display space of a screen 4. This display space 2 then comprises display points intended to restore pixels of the output video stream. Typically, each of the points of the display space 2 is associated, preferably only, with a pixel of the screen 4 and corresponds to pixel coordinates in a two-dimensional space. In other words, each point of the display space will display a corresponding pixel of an image of the output video stream 1.
  • the method of generating the output video stream 1 can then also include a step E2 of defining a display space.
  • This display space can be fixed, defined manually by an operator via a human machine interface, or other.
  • these steps E1 and E2 can be implemented using instructions executed by a main processor, also called central processing unit or CPU (Central Processing Unit).
  • main processor also called central processing unit or CPU (Central Processing Unit).
  • CPU Central Processing Unit
  • a wide field video stream 3 may correspond to a video stream derived from an assembly from a plurality of video streams according to different fields of view within the same environment.
  • This plurality of video streams can be obtained by using several cameras oriented in different directions to generate several complementary films of the environment at the same time.
  • this wide field video stream covers a field of view angle exceeding the human field of view angle.
  • the wide field video stream is a 360 degree video by 180 degrees.
  • the wide-field video stream can also be a computer-generated video, a video taken from a single-lens system, or a high-definition video.
  • a video is considered to be of high definition when its definition, in particular in terms of number of pixels, is greater than that of the display space.
  • the wide field video stream has a resolution in pixels greater than the resolution of the output video stream.
  • the number of pixels of the wide field video stream is in this case greater than the number of points of the display space.
  • the method may comprise a step E3 of defining a desired projection (P in FIG. 2) and a desired field of view (cam) in FIG. 2) in order to obtain a particular reproduction, in particular without distortion, at least part of the wide field video stream 3 in the display space 2.
  • P in FIG. 2 a desired projection
  • camera desired field of view
  • this step E3 can be carried out using instructions executed by the main processor CPU.
  • without distortion is meant that there is no distortion in the geometric sense.
  • the generation of the output video stream 1 implements precise geometric projections, thus avoiding the loss of information or the reduction of the information to be processed due to the use of the polygons as is often the case in the three-dimensional image display.
  • desired projection is meant a desired representation preferably modifying the current representation of the wide field video stream. Typically, it is a matter of determining, by calculation, one or more mark changes.
  • Figure 3 illustrates a flat projection of a sphere, also called equirectangular projection in which the horizontal coordinates are representative of a longitude and the vertical coordinates are representative of a latitude.
  • Figure 4 illustrates a rectilinear projection (also called gnomonic projection) of a sphere.
  • Figure 5 represents a stereographic projection of which the small planet projection is a special case. The realization of a projection or the transformation of a projection to another will not be described here, it is in fact to apply geometric functions well known to those skilled in the art.
  • the desired field of view makes it possible to limit the restitution to a part of the desired projection.
  • This desired field of view can be defined by a field of view angle of a virtual camera looking in the desired projection (the angle being representative of a zoom in the desired projection) and / or by a direction of the virtual camera within the desired projection.
  • the field of view angle and orientation can be changed.
  • the field of view may also include additional parameters such as typical distortion parameters (for example rendering according to a particular type of lens).
  • the desired field of view is limited depending on the type of projection. For example, in equirectangular projection from the wide field video stream, we can have a horizontal field of 720 °, we will then have twice the complete scene. In small planet we will see the face of "inner” cube very small, and the "outer" face very exploded / interpolated.
  • the method comprises an execution step E4 of a first geometric function f1 (P, CAM) allowing, for each point of the display space 2, to generate an intermediate point situated in a three-dimensional reference said first function taking into parameters the desired projection and the desired field of view.
  • this execution step E4 can use the data from steps E2 and E3.
  • This approach is unconventional in the sense that the desired projection is not applied to an image from the wide field video stream but to the output video output space (i.e. display space).
  • the execution of the first function on the points of the display space makes it possible to greatly limit the computing resources thereafter irrespective of the type of projection, whether complex or not.
  • This approach therefore makes it possible to limit, particularly in the context of complex projections, the usual calculations of the technique for determining hidden surfaces (known under the terminology "frustrum culling").
  • the method comprises a training step E5 of the output video stream 1 from the selected wide field video stream 3 taking into account the intermediate points.
  • each of the intermediate points will be used as part of a determination of a pixel to be displayed at the corresponding point of the display space 2. It is then clear that this execution step E5 uses at least the data from steps E4 and E1.
  • the formation step E5 of the output video stream 1 is implemented in such a way that each pixel an image of the output video stream, intended to be displayed by a point of the display space 2, is function, according to the corresponding intermediate point, of at least one pixel of a corresponding image of the broad video stream field 3.
  • the wide field video stream 3 will be broken down into a plurality of images each representative of a distinct time instant within wide field video stream. Each of these images will be used in combination with the intermediate points to form a plurality of corresponding images of the output video stream.
  • the CPU will make it possible to transmit to a graphics processor the first geometric function f1 with a view to its execution E4 within the graphics processor from data coming from the display space 2 to generate all the intermediate points. Then, the image from the wide field video stream is then considered as a texture within the graphics processor.
  • at least the execution step E4 of the first geometric function f1 is performed by a graphics processor, in particular in which each image of the wide-field video stream 3 forms a texture of which part of the pixels is used. by the graphics processor to form a corresponding image of the output video stream.
  • a graphics processor (also called GPU in the field for the English "Graphie Processor Unit”) is an integrated circuit providing calculation functions relating to the display.
  • the training step E5 of the output video stream 1 may comprise, for each intermediate point E5- 11a E5-2 determination of a reference point from the corresponding intermediate point.
  • This reference point corresponds in fact to coordinates, in particular in a three-dimensional space associated with a determined projection of the wide-field video stream.
  • This reference point then corresponds to an area, or a pixel of an image of the wide field video stream 3 to be displayed at the point of the display space used to calculate the intermediate point associated with said reference point.
  • all the intermediate points are treated in a similar manner.
  • the formation step E5 of the output video stream 1 may comprise, for each intermediate point, a step E5-2 determining a reference point in the associated image of the wide field video stream. 3, for rendering a pixel of the image of the output video stream according to said reference point.
  • step E5 is also implemented by the graphics processor.
  • the calculation function used may be of the shader type.
  • a shader is a sequence of instructions executed by the graphics processor and performing part of a process.
  • the reference point makes it possible to point a particular zone in the image resulting from the wide field video stream 3.
  • this reference point can have coordinates in a three-dimensional space associated with a predetermined projection of the video stream wide field.
  • the predetermined projection of the wide field video stream 3 is a known parameter resulting from the generation of the wide field video stream 3.
  • the reference point will allow, when it corresponds exactly to one pixel of the image resulting from the wide field video stream 3 select this pixel for rendering it at the corresponding point of the display space 2. However, most of the time, the reference point will not correspond exactly to a pixel of the image resulting from the wide field video stream 3. In the latter case, it will be possible to generate a new pixel from the interpolation / weighting of several pixels of the image from the wide field video stream 3 associated with the area pointed by the reference point (c '). that is to say the area including for example points of the image from the wide field video stream 3 in the vicinity of the reference point). It is this new pixel that will then be rendered at the corresponding point of the display space.
  • the wide field video stream 3, and therefore the image of the wide field video stream 3, can be associated with a representation according to a predetermined projection.
  • this wide-field video stream 3 can be represented according to a reference X, Y whose abscissas are representative of an angle varying between 0 degrees and 360 degrees and the ordinates representative of an angle varying between 0 degrees and 180 degrees, these angles to define the predetermined projection.
  • This predetermined projection can be that desired, in this case the coordinates of the reference point are simply a function of the coordinates of the intermediate point and the field of view without projection transformation.
  • the desired projection is different from that determined, in this case it will be necessary to transform the coordinates of the intermediate point in the reference of the desired projection into coordinates in the reference of the predetermined projection representative of the reference point.
  • This coordinate transformation can be implemented from a suitable geometric function that the skilled person can implement from simple conversion calculations.
  • the determination step E5-2 of the reference point may comprise the execution of a second geometrical function f2 (FIG. 2) taking as input the corresponding intermediate point and configured so as to transform the coordinates of the intermediate point, according to the desired projection and a predetermined projection associated with the wide-field video stream (in particular the predetermined projection being different from the desired projection), at coordinates of the reference point within the corresponding image of the wide-field video stream 3.
  • a second geometrical function f2 (FIG. 2) taking as input the corresponding intermediate point and configured so as to transform the coordinates of the intermediate point, according to the desired projection and a predetermined projection associated with the wide-field video stream (in particular the predetermined projection being different from the desired projection), at coordinates of the reference point within the corresponding image of the wide-field video stream 3.
  • the method may comprise, for each reference point, a determination step E5 A pixel of the image of the output video stream to be displayed at the point of the corresponding display space from a pixel of the image of the wide field video stream 3 at said reference point; an interpolation between several pixels of the image of the wide field video stream 3 at the reference point.
  • the pixel of the image of the output video stream 1 corresponds to a pixel of the image of the wide field video stream 3 at said reference point or to a pixel generated from an interpolation between several pixels of the image. image of the wide-field video stream at the reference point.
  • the pixel generated will be a function of a pixel interpolation of the image from the corresponding wide video located in the vicinity of the corresponding reference point. This makes it possible to limit the artifacts due to the approximations induced by normalization of the pixels of the image resulting from the wide field video 3.
  • primitives of the latter may directly be used.
  • step E5-2 determining the reference point
  • a determination step E5-3 of a pixel to be restored at the point of the display space is implemented ( Figure 6).
  • the field of view and / or the projection is changed.
  • a new execution of the first geometric function f1 specifying the new projection will be necessary.
  • the image of the output video stream being generated is according to the former geometric function, and the next image will be according to the new first geometric function.
  • the method comprises a modification step E6 of the desired field of view
  • said method comprises a step of updating E7 of the correspondence (that is to say the coordinates) of the intermediate points (FIG. 1). This update step then impacts the execution of step E5.
  • the modification step (E6) of the field of view is assimilated to a modification of the orientation of a virtual camera located in a spherical landmark and / or a change in the field of view angle of the virtual camera. Therefore, the update step E1 comprises, for each intermediate point:
  • the converted coordinates of the intermediate point of the spherical coordinate system are normalized so as to determine the new correspondences of the intermediate point in the three-dimensional coordinate system (that associated with the desired projection).
  • the modification of the orientation of the virtual camera takes into account at least one following parameter: the angle of latitude of the virtual camera in the spherical coordinate system (in particular a cartographic landmark), the angle of longitude of the the virtual camera in the spherical coordinate system and / or the value of the field of view angle of the virtual camera (corresponding to a decrease or increase of the zoom).
  • the method comprises a step of defining an effect filter E8 to be applied to the images of the output video stream 1 during their formation in order to restore a particular effect, in particular an effect filter chosen from: contrast, a brightness filter, a saturation filter, a hue filter, an image distortion filter (wave effect, television effect).
  • an effect filter chosen from: contrast, a brightness filter, a saturation filter, a hue filter, an image distortion filter (wave effect, television effect).
  • these effect filters are intended to change the rendering of the output video stream.
  • These effect filters will preferably be applied to the pixels of the images of the output video stream 1, and in particular by the graphics processor.
  • the method of managing the output video stream may also include a synchronization step (not shown in the figures) of a sound track associated with the wide field video stream 3 with the output video stream 1.
  • the output video stream comprises a sound track which will be restored at the same time as the images of said output video stream 1.
  • the sound track associated with the wide field video stream 3 can be spatialized so that its reproduction with the output video stream 1 comprises an adjustment of the spatialization according to the field of view.
  • the invention also relates to a method of displaying at least one output video stream in a display space of at least one screen.
  • a display method illustrated in FIG. 7 comprises at least one implementation step E101 of the method of generating the output video stream as described previously.
  • the display method comprises a display step E102 of said output video stream generated in the display space of said at least one screen.
  • each screen has a plurality of display spaces displaying (E102) each an output video stream corresponding.
  • the output video streams are formed from the same wide field video stream according to a different field of view and / or a different projection and / or a different effect. This makes it possible to propose different possible immersions to a user.
  • different effect is meant the application of a filter of different effect.
  • the screen comprises two display spaces each respectively for a left eye and a right eye of an observer.
  • This allows in particular to offer immersive content with three-dimensional display or not.
  • each eye perceives an output video stream associated with a viewing space that is adapted to it.
  • the screen may then comprise a divided display matrix so as to delimit the two display spaces.
  • the display method makes it possible to display a first output video stream in a display space of a first screen and a second output video stream in a display space of a second screen, the first stream is then intended to be perceived for example by a left eye of the observer while the second stream is intended to be perceived by a right eye of the observer.
  • the screen (s) can be included in an immersive helmet (or virtual reality helmet) also known as the "Headset VR" in the field.
  • the immersive helmet may comprise a support configured to be worn by an observer.
  • This medium also comprises means for receiving a portable multimedia device, in particular a multimedia tablet or a multimedia telephone also known by the term smartphone in the field.
  • the screen of the portable multimedia device when mounted on the support, allows the simultaneous display of two video streams each output intended to be perceived by a corresponding eye of the observer.
  • the portable multimedia device may comprise a dedicated application for implementing the method of generating the output video stream.
  • the display method may allow a plurality of separate output videos to be displayed (in particular simultaneously), at least two videos of outputs of the plurality of output videos being derived from different wide field video streams.
  • the output videos of a plurality of output videos may be displayed in display spaces on the same screen, or in different screen display spaces.
  • Each of the output videos of the plurality of output videos can be generated by an implementation of the generation method.
  • the invention also relates to a device for managing at least one output video stream.
  • this device 1000 comprises at least one element 1001 configured so as to implement the method of generating an output video stream as described.
  • this element 1001 comprises a CPU, a GPU and a memory containing instructions for implementing the method of generating the video stream by the CPU and the GPU.
  • the device comprises a man-machine interface 1002 comprising at least one display screen 1003 intended to display the output video stream in at least one display space 1004 of said at least one screen 1003.
  • a human machine interface is configured to allow the interaction of an operator with the device as part of an immersive experience of rendering at least a portion of a wide field video stream.
  • the human-machine interface 1002 comprises at least one of the following elements: a selection element 1005 of a wide field video stream in a storage space (in particular from a list of choice of streams wide field video), a desired field of view definition element 1006 (including a display space for viewing the entire wide field video stream), a definition element 1007 of a desired projection (especially from a predefined list of projections), a selection element of an effect to be applied 1008 (in particular from a predefined list of effects), an element 1009 making it possible to move temporally within the broad-field video stream to restore the output video stream at a specific time a 1010 control element of the soundtrack of the output video stream.
  • the storage space may be local to the device (i.e., in a device memory), or remote (e.g. a remote server accessible via a communication network such as the Internet).
  • the wide field video stream can be downloaded or broadcast, especially in real time, from the remote storage space.
  • the human-machine interface comprises at least one element for modifying the field of view, in particular chosen from: a touch screen, an accelerometer, a gyroscope, a magnetometer, a display space of the wide field video stream from from which it is possible to choose the desired field of vision, a pointing device (for example a computer mouse), a gesture interface with motion detection.
  • the gesture interface may correspond to sensors placed on a person, or to one or more cameras filming a person and analyzing his actions.
  • the man-machine interface may comprise an immersive helmet comprising, for example, a gyroscope so as to allow an observer equipped with said immersive helmet to move at least his gaze into a virtual reality by interpretation of the signals from the gyroscope.
  • each screen comprises a plurality of display spaces, a separate output video stream being played in each of the display spaces, the output video streams played being each from a set of implementation of the method of generating the output video stream, in particular from the same wide field video stream or different wide field video streams.
  • a screen of the device may be associated with a device housing that includes the elements necessary for the generation of each output video stream.
  • the housing can then form a touch pad.
  • another screen of the device (for example a television) can be deported from the housing so as to display the output video stream that is transmitted to it by the housing via a communication means, especially wireless.
  • the invention also relates to a system comprising a compiler and a memory provided with a software development kit for creating an application for an operating system.
  • the development kit includes at least one element configured to implement the method of generating the video stream within the application when it is executed after being compiled by the compiler.
  • the development kit may include a element configured to allow the interaction of the application with all or part of the elements described above of the management device.
  • the method of generating an output video stream may be implemented a plurality of times so as to allow the display of a video in an immersive dome having a plurality of display panels .
  • each output video stream is displayed on a single pan of the dome associated with it.
  • the dome is such that the entire wide field video stream is reproduced when concatenating all the dome display panels.

Abstract

The method for generating an output video stream (1) with a view to displaying same in a two-dimensional display space (2), comprises the following steps: selecting (E1) a wide-field video stream (3); defining (E3) a desired projection (P) and a desired field of vision (cam) with a view to obtaining a particular rendering, in particular without distortion, of at least a portion of the wide-field video stream (3) in the display space (2); carrying out (E4) a first geometric function (f1) so as to generate, for each point of the display space (2), an intermediate point located in a three-dimensional reference frame, said first function taking, as parameters, the desired projection (P) and the desired field of vision (cam); and forming (E5) the output video stream from the selected wide-field stream (3), taking the intermediate points into consideration.

Description

Procédé de génération d'un flux vidéo de sortie à partir d' vidéo large champ  A method of generating an output video stream from wide field video
Domaine technique de l'invention Technical field of the invention
L'invention concerne le domaine du traitement de vidéos. The invention relates to the field of video processing.
L'invention a pour objet plus particulièrement un procédé de génération d'un flux vidéo de sortie en vue de l'afficher dans un espace d'affichage en deux dimensions selon une restitution particulière. The invention more particularly relates to a method of generating an output video stream for display in a two-dimensional display space according to a particular rendition.
État de la technique Une vidéo peut être issue d'un assemblage à partir d'une pluralité de points de vue. Pour cela, il est connu d'utiliser simultanément plusieurs caméras, orientées dans des directions différentes, pour obtenir plusieurs vidéos complémentaires d'un environnement filmé au même instant. Ces vidéos complémentaires peuvent être concaténées de sorte à obtenir une vidéo source unique qu'il est possible de restituer selon une projection souhaitée. Cependant, afin de limiter les temps de calcul et de permettre une restitution en temps réel selon une projection donnée, les images affichées de la vidéo sont issues d'un calcul polygonal à partir d'une modélisation tridimensionnelle sur laquelle une texture est mappée. Cette restitution est connue de l'homme du métier sous la dénomination anglaise de « UV mapping ». Il résulte de l'utilisation de polygones une dégradation, aussi appelée distorsion, du rendu dans le sens où les polygones modifient géométriquement la vidéo source par approximation géométrique de cette dernière. Ainsi, le rendu visuel est approximatif et de qualité inférieure à celle de la vidéo source. State of the art A video may be from an assembly from a plurality of viewpoints. For this, it is known to use several cameras simultaneously, oriented in different directions, to obtain several complementary videos of an environment filmed at the same time. These complementary videos can be concatenated so as to obtain a single source video that can be rendered according to a desired projection. However, in order to limit the calculation times and to allow a real-time rendering according to a given projection, the displayed images of the video come from a polygonal computation from a three-dimensional model on which a texture is mapped. This restitution is known to those skilled in the art under the name English "UV mapping". The result of the use of polygons is a degradation, also called distortion, of the rendering in the sense that the polygons geometrically modify the source video by geometric approximation of the latter. Thus, the visual rendering is approximate and of inferior quality to that of the source video.
Il existe donc un besoin de développer une solution permettant, notamment en temps réel, de procurer un affichage sans perte de qualité. Le document intitulé « FlyCam : Practical Panoramic Video and Automatic Caméra Control » de J. Foote et Don Kimber issu de la conférence « 2000 IEE INTERNATIONAL CONFERENCE ON NEW YORK » tenue du 30 juillet au 2 août 2000 et tiré du volume 3, 30 juillet 2000 pages 1419-1422, décrit notamment un système permettant de réaliser des vidéos panoramiques. Ce document ne traite que de la génération d'un flux vidéo large champ, sans donner d'explications quant à la restitution de ce flux. There is therefore a need to develop a solution allowing, in particular in real time, to provide a display without loss of quality. The document entitled "FlyCam: Practical Panoramic Video and Automatic Camera Control" by J. Foote and Don Kimber from the "2000 IEE INTERNATIONAL CONFERENCE ON NEW YORK" conference held from July 30 to August 2, 2000 and from Volume 3, July 30 2000 pages 1419-1422, describes in particular a system for making panoramic videos. This document deals only with the generation of a wide field video stream, without giving any explanation as to the restitution of this stream.
Objet de l'invention Object of the invention
Le but de la présente invention est de proposer une solution permettant d'obtenir une restitution rapide et dont la distorsion au sens de l'art antérieur est évitée. On tend vers ce but grâce à un procédé de génération d'un flux vidéo de sortie en vue de l'afficher dans un espace d'affichage en deux dimensions, ledit procédé comprenant les étapes suivantes : The object of the present invention is to propose a solution that makes it possible to obtain a fast restitution and whose distortion in the sense of the prior art is avoided. This goal is achieved by a method of generating an output video stream for display in a two-dimensional display space, said method comprising the steps of:
- sélectionner un flux vidéo large champ, - définir une projection voulue et un champ de vision voulu en vue d'obtenir une restitution particulière, notamment sans distorsion, d'au moins une partie du flux vidéo large champ dans l'espace d'affichage, - exécuter une première fonction géométrique permettant, pour chaque point de l'espace d'affichage, de générer un point intermédiaire situé dans un repère en trois dimensions, ladite première fonction prenant en paramètres la projection voulue et le champ de vision voulu, - former le flux vidéo de sortie à partir du flux large champ sélectionné en prenant en compte les points intermédiaires. - select a wide field video stream, defining a desired projection and a desired field of view with a view to obtaining a particular, notably non-distorted, reproduction of at least part of the wide-field video stream in the display space; performing a first geometric function enabling for each point of the display space, generating an intermediate point located in a three-dimensional reference, said first function taking into parameters the desired projection and the desired field of view, - forming the output video stream from the selected field wide flow taking into account the intermediate points.
Avantageusement, l'étape de formation du flux vidéo de sortie est mise en œuvre de telle sorte que chaque pixel d'une image du flux vidéo de sortie, destiné à être affiché par un point de l'espace d'affichage, soit fonction, selon le point intermédiaire correspondant, d'au moins un pixel d'une image correspondante du flux vidéo large champ. Advantageously, the step of forming the output video stream is implemented so that each pixel of an image of the output video stream, intended to be displayed by a point of the display space, is function, according to the corresponding intermediate point, at least one pixel of a corresponding image of the wide field video stream.
De préférence, l'étape de formation du flux vidéo de sortie comporte, pour chaque point intermédiaire, une étape de détermination d'un point de référence dans l'image associée du flux vidéo large champ en vue de restituer un pixel de l'image du flux vidéo de sortie en fonction dudit point de référence. Par exemple, l'étape de détermination du point de référence comporte l'exécution d'une deuxième fonction géométrique prenant en entrée le point intermédiaire correspondant et configurée de sorte à transformer les coordonnées du point intermédiaire, en fonction de la projection voulue et d'une projection déterminée associée au flux vidéo large champ, en des coordonnées du point de référence au sein de l'image correspondante du flux vidéo large champ. Preferably, the step of forming the output video stream comprises, for each intermediate point, a step of determining a reference point in the associated image of the wide field video stream in order to restore a pixel of the image the output video stream according to said reference point. For example, the step of determining the reference point comprises the execution of a second geometric function taking as input the corresponding intermediate point and configured so as to transform the coordinates of the intermediate point, according to the desired projection and to a determined projection associated with the flow wide-field video, in reference point coordinates within the corresponding image of the wide-field video stream.
En particulier, le procédé qu'il comporte, pour chaque point de référence, une étape de détermination d'un pixel de l'image du flux vidéo de sortie à afficher au point de l'espace d'affichage correspondant à partir d'un pixel de l'image du flux vidéo large champ au niveau dudit point de référence ou d'une interpolation entre plusieurs pixels de l'image du flux vidéo large champ au niveau du point de référence. In particular, the method that it comprises, for each reference point, a step of determining a pixel of the image of the output video stream to be displayed at the point of the corresponding display space from a pixel of the wide field video image image at said reference point or interpolation between multiple pixels of the wide field video image image at the reference point.
Selon un perfectionnement, le procédé comporte une étape de modification du champ de vision voulu et il comporte une étape de mise à jour des coordonnées des points intermédiaires. According to an improvement, the method comprises a step of modifying the desired field of view and includes a step of updating the coordinates of the intermediate points.
De préférence, cette étape de modification du champ de vision est assimilée à une modification de l'orientation d'une caméra virtuelle située dans un repère sphérique et/ou une modification de l'angle de champ de vision de la caméra virtuelle, et l'étape de mise à jour comporte, pour chaque point intermédiaire, les étapes suivantes : Preferably, this step of modifying the field of view is assimilated to a modification of the orientation of a virtual camera located in a spherical landmark and / or a modification of the angle of view of the virtual camera, and step of updating comprises, for each intermediate point, the following steps:
- la conversion des coordonnées du point intermédiaire dans le repère en trois dimensions en des coordonnées dans le repère sphérique auxquelles la modification de l'orientation de la caméra virtuelle et/ou de l'angle de champ de vision sont appliquées, la normalisation des coordonnées converties de sorte à déterminer les nouvelles coordonnées du point intermédiaire dans le repère en trois dimensions. Notamment, la modification de l'orientation de la caméra virtuelle prend en compte au moins un paramètre suivant : l'angle de latitude de la caméra virtuelle dans le repère sphérique, l'angle de longitude de la caméra virtuelle dans le repère sphérique, une valeur d'angle de champ de vision de la caméra virtuelle. the conversion of the coordinates of the intermediate point in the three-dimensional coordinate system into coordinates in the spherical coordinate system at which the modification of the orientation of the virtual camera and / or the angle of view of field of view are applied, the standardization of the coordinates converted to determine the new coordinates of the intermediate point in the three-dimensional coordinate system. In particular, the modification of the orientation of the virtual camera takes into account at least one following parameter: the latitude angle of the virtual camera in the spherical coordinate system, the angle of longitude of the virtual camera in the spherical coordinate system, a the field of view angle value of the virtual camera.
Avantageusement, au moins l'étape d'exécution de la première fonction géométrique est réalisée par un processeur graphique, notamment au sein duquel chaque image du flux vidéo large champ forme une texture dont une partie des pixels est utilisée par le processeur graphique pour former une image correspondante du flux vidéo de sortie. Advantageously, at least the step of executing the first geometric function is performed by a graphics processor, in particular in which each image of the wide field video stream forms a texture of which part of the pixels is used by the graphics processor to form a corresponding image of the output video stream.
Selon un perfectionnement, le procédé comporte une étape de définition d'un filtre d'effet à appliquer aux images du flux vidéo de sortie lors de leurs formation afin de restituer un effet particulier, notamment un filtre d'effet choisi parmi : un filtre de contraste, un filtre de luminosité, un filtre de saturation, un filtre de teinte, un filtre de déformation de l'image. According to an improvement, the method comprises a step of defining an effect filter to be applied to the images of the output video stream during their formation in order to restore a particular effect, in particular an effect filter chosen from: contrast, a brightness filter, a saturation filter, a hue filter, an image distortion filter.
L'invention est aussi relative à un procédé d'affichage d'au moins un flux vidéo de sortie dans un espace d'affichage d'au moins un écran, ledit procédé comprenant au moins une étape de mise en œuvre du procédé de génération du flux vidéo de sortie tel que décrit, et une étape d'affichage dudit flux vidéo de sortie généré dans l'espace d'affichage dudit au moins un écran. The invention also relates to a method for displaying at least one output video stream in a display space of at least one screen, said method comprising at least one step of implementing the method of generating the output video stream as described, and a step of displaying said output video stream generated in the display space of said at least one screen.
De préférence, chaque écran comporte une pluralité d'espaces d'affichage affichant chacun un flux vidéo de sortie correspondant, lesdits flux vidéo de sortie étant formés à partir du même flux vidéo large champ selon un champ de vision différent et/ou une projection différente et/ou un effet différent. Alternativennent, le procédé d'affichage est configuré de sorte à permettre une étape d'affichage d'une pluralité de vidéos de sortie distinctes, au moins deux vidéos de sorties de la pluralité de vidéos de sortie étant issues de flux vidéo large champ différents, notamment les vidéos de sortie de pluralité de vidéos de sortie sont affichées dans des espaces d'affichage d'un même écran, ou dans des espaces d'affichage d'écran différents. Preferably, each screen has a plurality of display spaces each displaying a corresponding output video stream, said output video streams being formed from the same wide field video stream according to a different field of view and / or a different projection. and / or a different effect. Alternately, the display method is configured to allow a step of displaying a plurality of separate output videos, at least two videos of outputs of the plurality of output videos from different wide field video streams, in particular, the output videos of a plurality of output videos are displayed in display spaces of the same screen, or in different screen display spaces.
L'invention est aussi relative à un dispositif de gestion d'au moins un flux vidéo de sortie, ledit dispositif comprenant au moins un élément configuré de sorte à mettre en œuvre le procédé de génération d'un flux vidéo de sortie tel que décrit, et une interface homme-machine comprenant au moins un écran d'affichage destiné à afficher le flux vidéo de sortie dans au moins un espace d'affichage dudit au moins un écran. The invention also relates to a device for managing at least one output video stream, said device comprising at least one element configured so as to implement the method of generating an output video stream as described, and a human-machine interface comprising at least one display screen for displaying the output video stream in at least one display space of said at least one screen.
De préférence, l'interface homme-machine comprend au moins l'un des éléments suivants : un élément de sélection d'un flux vidéo large champ dans un espace de stockage, un élément de définition du champ de vision voulu, un élément de définition d'une projection voulue notamment à partir d'une liste prédéfinie de projections, un élément de sélection d'un effet à appliquer, un élément permettant de se déplacer temporellement au sein du flux vidéo large champ pour restituer le flux vidéo de sortie à un moment précis, un élément de contrôle de la bande son du flux vidéo de sortie. Preferably, the human-machine interface comprises at least one of the following elements: a selection element of a wide field video stream in a storage space, a definition element of the desired field of view, a definition element a desired projection, in particular from a predefined list of projections, an effect selection element to be applied, an element making it possible to move temporally within the wide-field video stream in order to restore the output video stream to a precise moment, a control element of the soundtrack of the output video stream.
Avantageusement, l'interface homme-machine comporte au moins un élément de modification du champ de vision, notamment choisi parmi : un écran tactile, un accéléromètre, un gyroscope, un magnétomètre, un espace d'affichage du flux vidéo large champ à partir duquel il est possible de choisir le champ de vision voulu, un dispositif de pointage, une interface gestuelle à détection de mouvement. Advantageously, the human-machine interface comprises at least one element for modifying the field of view, in particular chosen from: a touch screen, an accelerometer, a gyroscope, a magnetometer, a display space of the wide field video stream from which he is possible to choose the desired field of vision, a pointing device, a gesture interface with motion detection.
Avantageusement, chaque écran comporte une pluralité d'espaces d'affichage, un flux vidéo de sortie distinct étant joué dans chacun des espaces d'affichage, les flux vidéos de sortie joués étant chacun issu d'une mise en œuvre du procédé de génération du flux vidéo de sortie tel que décrit, notamment à partir d'un même flux vidéo large champ ou de flux vidéo large champ différents. Advantageously, each screen comprises a plurality of display spaces, a separate output video stream being played in each of the display spaces, the output video streams played being each resulting from an implementation of the method of generating the output video stream as described, in particular from the same wide field video stream or different wide field video stream.
L'invention est aussi relative à un système comprenant un compilateur et une mémoire munie d'un kit de développement logiciel permettant de créer une application pour un système d'exploitation. Le kit de développement comporte au moins un élément configuré de sorte à mettre en œuvre le procédé de génération du flux vidéo tel que décrit au sein de l'application lorsqu'elle est exécutée après avoir été compilée par le compilateur. The invention also relates to a system comprising a compiler and a memory provided with a software development kit for creating an application for an operating system. The development kit includes at least one element configured to implement the method of generating the video stream as described within the application when it is executed after being compiled by the compiler.
Description sommaire des dessins Brief description of the drawings
D'autres avantages et caractéristiques ressortiront plus clairement de la description qui va suivre de modes particuliers de réalisation de l'invention donnés à titre d'exemples non limitatifs et représentés sur les dessins annexés, dans lesquels : Other advantages and features will emerge more clearly from the following description of particular embodiments of the invention given as non-restrictive examples and shown in the accompanying drawings, in which:
- la figure 1 illustre une mise en œuvre particulière d'étapes d'un procédé de génération d'un flux vidéo de sortie,  FIG. 1 illustrates a particular implementation of steps of a method for generating an output video stream,
- la figure 2 est une vue représentant la cinématique de mise en œuvre du procédé de la figure 1 sur un dispositif particulier comprenant une unité centrale de traitement et un processeur graphique, FIG. 2 is a view showing the implementation kinematics of the method of FIG. 1 on a particular device comprising a central processing unit and a graphics processor,
- les figures 3 à 5 illustrent différentes représentations des projections voulues du procédé selon la figure 1 ,  FIGS. 3 to 5 illustrate different representations of the desired projections of the method according to FIG. 1,
- la figure 6 illustre plus en détails l'une des étapes du procédé selon la figure 1 ,  FIG. 6 illustrates in more detail one of the steps of the method according to FIG. 1,
- la figure 7 illustre un procédé d'affichage d'au moins un flux vidéo obtenu à partir du procédé de la figure 1 ,  FIG. 7 illustrates a method for displaying at least one video stream obtained from the method of FIG. 1,
- la figure 8 illustre un dispositif permettant de mettre en œuvre le procédé de génération du flux vidéo de sortie et permettant son affichage au niveau d'un écran.  - Figure 8 illustrates a device for implementing the method of generating the output video stream and allowing its display at a screen.
Description de modes préférentiels de l'invention Le procédé de génération d'un flux vidéo décrit ci-après diffère de l'existant notamment en une gestion optimisée des ressources de calcul tout en permettant une restitution, au moins partielle, d'un flux vidéo large champ selon des transformations géométriques. DESCRIPTION OF PREFERRED EMBODIMENTS OF THE INVENTION The method for generating a video stream described below differs from the existing one in particular in an optimized management of the computing resources while allowing a restitution, at least in part, of a video stream. wide field according to geometric transformations.
Comme illustré aux figures 1 et 2, le procédé de génération d'un flux vidéo de sortie 1 , en vue de l'afficher dans un espace d'affichage 2 en deux dimensions comprenant de préférence une pluralité de points d'affichage, comporte une étape E1 dans laquelle il est sélectionné un flux vidéo large champ 3. As illustrated in FIGS. 1 and 2, the method of generating an output video stream 1, in order to display it in a two-dimensional display space 2 preferably comprising a plurality of display points, comprises a step E1 in which a wide field video stream 3 is selected.
Le flux vidéo large champ 3 sélectionné peut l'être par un opérateur réalisant un choix parmi plusieurs flux vidéo large champ prédéfinis, ou réalisant un choix à partir un système de gestion de fichiers, notamment local ou distant, en utilisant une interface homme machine. L'espace d'affichage 2 en deux dimensions peut correspondre à un espace d'affichage d'un écran 4. Cet espace d'affichage 2 comporte alors des points d'affichage destinés à restituer des pixels du flux vidéo de sortie. Typiquement, chacun des points de l'espace d'affichage 2 est associé, de préférence uniquement, à un pixel de l'écran 4 et correspond à des coordonnées de pixels dans un espace en deux dimensions. Autrement dit, chaque point de l'espace d'affichage permettra d'afficher un pixel correspondant d'une image du flux vidéo de sortie 1 . The selected wide field video stream 3 may be selected by an operator making a choice among several predefined wide field video streams, or making a choice from a file management system, especially local or remote, using a human machine interface. The two-dimensional display space 2 can correspond to a display space of a screen 4. This display space 2 then comprises display points intended to restore pixels of the output video stream. Typically, each of the points of the display space 2 is associated, preferably only, with a pixel of the screen 4 and corresponds to pixel coordinates in a two-dimensional space. In other words, each point of the display space will display a corresponding pixel of an image of the output video stream 1.
Le procédé de génération du flux vidéo de sortie 1 peut alors aussi comporter une étape E2 de définition d'un espace d'affichage. Cet espace d'affichage peut être figé, défini manuellement par un opérateur via une interface homme machine, ou autre. The method of generating the output video stream 1 can then also include a step E2 of defining a display space. This display space can be fixed, defined manually by an operator via a human machine interface, or other.
Comme illustré à la figure 2, ces étapes E1 et E2 peuvent être mises en œuvre en utilisant des instructions exécutées par un processeur principal, aussi appelé unité centrale de traitement ou CPU (de l'anglais « Central Processing Unit »). As illustrated in Figure 2, these steps E1 and E2 can be implemented using instructions executed by a main processor, also called central processing unit or CPU (Central Processing Unit).
Un flux vidéo large champ 3 peut correspondre à un flux vidéo issu d'un assemblage à partir d'une pluralité de flux vidéo selon des champs de vision différents au sein d'un même environnement. Cette pluralité de flux vidéo peut être obtenue en utilisant plusieurs caméras orientées dans des directions différentes afin de générer plusieurs films complémentaires de l'environnement au même instant. De préférence, ce flux vidéo large champ couvre un angle de champ de vision dépassant l'angle de champ de vision humain. Avantageusement, le flux vidéo large champ est une vidéo à 360 degrés par 180 degrés. Le flux vidéo large champ peut aussi être une vidéo de synthèse, une vidéo déroulée issue d'un système monolentille, ou encore une vidéo haute-définition. Une vidéo est considérée comme étant de haute- définition quand sa définition, notamment en termes de nombre de pixels, est supérieure à celle de l'espace d'affichage. A wide field video stream 3 may correspond to a video stream derived from an assembly from a plurality of video streams according to different fields of view within the same environment. This plurality of video streams can be obtained by using several cameras oriented in different directions to generate several complementary films of the environment at the same time. Preferably, this wide field video stream covers a field of view angle exceeding the human field of view angle. Advantageously, the wide field video stream is a 360 degree video by 180 degrees. The wide-field video stream can also be a computer-generated video, a video taken from a single-lens system, or a high-definition video. A video is considered to be of high definition when its definition, in particular in terms of number of pixels, is greater than that of the display space.
Préférentiellement, le flux vidéo large champ présente une résolution en pixels supérieure à la résolution du flux vidéo de sortie. Autrement dit, le nombre de pixels du flux vidéo large champ est dans ce cas supérieur au nombre de points de l'espace d'affichage. En outre, le procédé peut comporter une étape E3 de définition d'une projection voulue (P à la figure 2) et d'un champ de vision voulu (cam) à la figure 2) en vue d'obtenir une restitution particulière, notamment sans distorsion, d'au moins une partie du flux vidéo large champ 3 dans l'espace d'affichage 2. De préférence, seulement une partie du flux vidéo large champ 3 sera restituée. Preferably, the wide field video stream has a resolution in pixels greater than the resolution of the output video stream. In other words, the number of pixels of the wide field video stream is in this case greater than the number of points of the display space. In addition, the method may comprise a step E3 of defining a desired projection (P in FIG. 2) and a desired field of view (cam) in FIG. 2) in order to obtain a particular reproduction, in particular without distortion, at least part of the wide field video stream 3 in the display space 2. Preferably, only part of the wide field video stream 3 will be restored.
Selon l'exemple particulier de la figure 2, cette étape E3 peut être réalisée en utilisant des instructions exécutées par le processeur principal CPU. According to the particular example of FIG. 2, this step E3 can be carried out using instructions executed by the main processor CPU.
Par « sans distorsion », on entend qu'il n'y a pas de distorsion au sens géométrique. Autrement dit, la génération du flux vidéo de sortie 1 met en œuvre des projections géométriques précises, évitant ainsi la perte d'information ou la diminution des informations à traiter due à l'utilisation des polygones comme c'est souvent le cas dans l'affichage d'images en trois dimensions. Par « projection voulue », on entend une représentation souhaitée modifiant, de préférence, la représentation courante du flux vidéo large champ. Typiquement, il s'agit de déterminer, par calcul, un ou plusieurs changements de repères. Ces projections sont connues de l'homme du métier sous les noms de projection à plat, mappemonde, petite planète, boule miroir, etc. Elles permettent des affichages originaux pour de nouvelles expériences immersives. Typiquement, la figure 3 illustre une projection à plat d'une sphère, aussi appelée projection équirectangulaire dans laquelle les coordonnées horizontales sont représentatives d'une longitude et les coordonnées verticales sont représentatives d'une latitude. Selon un autre exemple, la figure 4 illustre une projection rectilinéaire (aussi appelée projection gnomonique) d'une sphère. La figure 5 représente une projection stéréographique dont la projection petite planète est un cas particulier. La réalisation d'une projection ou la transformation d'une projection à l'autre ne seront pas ici décrites, il s'agit en fait d'appliquer des fonctions géométriques bien connues de l'homme du métier. By "without distortion" is meant that there is no distortion in the geometric sense. In other words, the generation of the output video stream 1 implements precise geometric projections, thus avoiding the loss of information or the reduction of the information to be processed due to the use of the polygons as is often the case in the three-dimensional image display. By "desired projection" is meant a desired representation preferably modifying the current representation of the wide field video stream. Typically, it is a matter of determining, by calculation, one or more mark changes. These projections are known to those skilled in the art under the names of flat projection, world map, small planet, mirror ball, etc. They allow original displays for new immersive experiences. Typically, Figure 3 illustrates a flat projection of a sphere, also called equirectangular projection in which the horizontal coordinates are representative of a longitude and the vertical coordinates are representative of a latitude. In another example, Figure 4 illustrates a rectilinear projection (also called gnomonic projection) of a sphere. Figure 5 represents a stereographic projection of which the small planet projection is a special case. The realization of a projection or the transformation of a projection to another will not be described here, it is in fact to apply geometric functions well known to those skilled in the art.
Le champ de vision voulu permet de limiter la restitution à une partie de la projection voulue. Ce champ de vision voulu peut être défini par un angle de champ de vision d'une caméra virtuelle regardant dans la projection voulue (l'angle étant représentatif d'un zoom dans la projection voulue) et/ou par une orientation de la caméra virtuelle au sein de la projection voulue. L'angle de champ de vision et l'orientation peuvent être modifiés. Par ailleurs, le champ de vision peut aussi comporter des paramètres additionnels comme des paramètres typiques de distorsion (par exemple le rendu selon un type particulier de lentille). De préférence, le champ de vision voulu est limité en fonction du type de projection. Par exemple, en projection équirectangulaire issue du flux vidéo large champ, on peut avoir un champ horizontal de 720°, on aura alors deux fois la scène complète. En petite planète on verra la face de cube "intérieure" toute petite, et la face "extérieure" très éclatée/interpolée. The desired field of view makes it possible to limit the restitution to a part of the desired projection. This desired field of view can be defined by a field of view angle of a virtual camera looking in the desired projection (the angle being representative of a zoom in the desired projection) and / or by a direction of the virtual camera within the desired projection. The field of view angle and orientation can be changed. On the other hand, the field of view may also include additional parameters such as typical distortion parameters (for example rendering according to a particular type of lens). Preferably, the desired field of view is limited depending on the type of projection. For example, in equirectangular projection from the wide field video stream, we can have a horizontal field of 720 °, we will then have twice the complete scene. In small planet we will see the face of "inner" cube very small, and the "outer" face very exploded / interpolated.
Par ailleurs, le procédé comporte une étape d'exécution E4 d'une première fonction géométrique f1 (P, CAM) permettant, pour chaque point de l'espace d'affichage 2, de générer un point intermédiaire situé dans un repère en trois dimensions, ladite première fonction prenant en paramètres la projection voulue et le champ de vision voulu. On comprend alors que cette étape d'exécution E4 peut utiliser les données issues des étapes E2 et E3. Cette approche n'est pas conventionnelle dans le sens où la projection voulue n'est pas appliquée à une image issue du flux vidéo large champ mais à l'espace de restitution du flux vidéo de sortie (c'est-à-dire l'espace d'affichage). Ainsi, l'exécution de la première fonction sur les points de l'espace d'affichage permet de grandement limiter par la suite les ressources de calcul quel que soit le type de projection qu'il soit complexe ou non. Cette approche permet donc de limiter, notamment dans le cadre des projections complexes, les calculs usuels de la technique de détermination des surfaces cachées (connue sous la terminologie anglaise « frustrum culling »). Furthermore, the method comprises an execution step E4 of a first geometric function f1 (P, CAM) allowing, for each point of the display space 2, to generate an intermediate point situated in a three-dimensional reference said first function taking into parameters the desired projection and the desired field of view. It is understood that this execution step E4 can use the data from steps E2 and E3. This approach is unconventional in the sense that the desired projection is not applied to an image from the wide field video stream but to the output video output space (i.e. display space). Thus, the execution of the first function on the points of the display space makes it possible to greatly limit the computing resources thereafter irrespective of the type of projection, whether complex or not. This approach therefore makes it possible to limit, particularly in the context of complex projections, the usual calculations of the technique for determining hidden surfaces (known under the terminology "frustrum culling").
Enfin, le procédé comporte une étape de formation E5 du flux vidéo de sortie 1 à partir du flux vidéo large champ sélectionné 3 en prenant en compte les points intermédiaires. Autrement dit, chacun des points intermédiaires sera utilisé dans le cadre d'une détermination d'un pixel à afficher au niveau du point correspondant de l'espace d'affichage 2. On comprend alors que cette étape d'exécution E5 utilise au moins les données issues des étapes E4 et E1 . Finally, the method comprises a training step E5 of the output video stream 1 from the selected wide field video stream 3 taking into account the intermediate points. In other words, each of the intermediate points will be used as part of a determination of a pixel to be displayed at the corresponding point of the display space 2. It is then clear that this execution step E5 uses at least the data from steps E4 and E1.
Plus particulièrement, on peut considérer que l'étape de formation E5 du flux vidéo de sortie 1 est mise en œuvre de telle sorte que chaque pixel d'une image du flux vidéo de sortie, destiné à être affiché par un point de l'espace d'affichage 2, soit fonction, selon le point intermédiaire correspondant, d'au moins un pixel d'une image correspondante du flux vidéo large champ 3. En fait, le flux vidéo large champ 3 va être décomposé en une pluralité d'images chacune représentative d'un instant temporel distinct au sein de du flux vidéo large champ. Chacune de ces images sera utilisée en combinaison avec les points intermédiaires de sorte à former une pluralité d'images correspondantes du flux vidéo de sortie. Dans l'exemple particulier de la figure 2, le CPU va permettre de transmettre à un processeur graphique la première fonction géométrique f1 en vue de son exécution E4 au sein du processeur graphique à partir de données issues de l'espace d'affichage 2 en vue de générer tous les points intermédiaires. Ensuite, l'image issue du flux vidéo large champ est alors considérée comme une texture au sein du processeur graphique. Autrement dit, plus particulièrement, au moins l'étape d'exécution E4 de la première fonction géométrique f1 est réalisée par un processeur graphique, notamment au sein duquel chaque image du flux vidéo large champ 3 forme une texture dont une partie des pixels est utilisée par le processeur graphique pour former une image correspondante du flux vidéo de sortie. More particularly, it can be considered that the formation step E5 of the output video stream 1 is implemented in such a way that each pixel an image of the output video stream, intended to be displayed by a point of the display space 2, is function, according to the corresponding intermediate point, of at least one pixel of a corresponding image of the broad video stream field 3. In fact, the wide field video stream 3 will be broken down into a plurality of images each representative of a distinct time instant within wide field video stream. Each of these images will be used in combination with the intermediate points to form a plurality of corresponding images of the output video stream. In the particular example of FIG. 2, the CPU will make it possible to transmit to a graphics processor the first geometric function f1 with a view to its execution E4 within the graphics processor from data coming from the display space 2 to generate all the intermediate points. Then, the image from the wide field video stream is then considered as a texture within the graphics processor. In other words, more particularly, at least the execution step E4 of the first geometric function f1 is performed by a graphics processor, in particular in which each image of the wide-field video stream 3 forms a texture of which part of the pixels is used. by the graphics processor to form a corresponding image of the output video stream.
Un processeur graphique (aussi appelé GPU dans le domaine pour l'anglais « Graphie Processor Unit ») est un circuit intégré assurant des fonctions de calcul relatives à l'affichage. De préférence, comme illustré à la figure 6 l'étape de formation E5 du flux vidéo de sortie 1 peut comporter pour chaque point intermédiaire E5- 11a détermination E5-2 d'un point de référence à partir du point intermédiaire correspondant. Ce point de référence correspondant en fait à des coordonnées, notamment dans un espace en trois dimensions associé à une projection déterminée du flux vidéo large champ. Ce point de référence correspond alors à une zone, ou à un pixel d'une image du flux vidéo large champ 3 à afficher au niveau du point de l'espace d'affichage ayant servi à calculer le point intermédiaire associé audit point de référence. Pour chaque image du flux vidéo de sortie, tous les points intermédiaires sont traités de manière similaire. Autrement dit, de manière générale, l'étape de formation E5 du flux vidéo de sortie 1 peut comporter, pour chaque point intermédiaire, une étape de détermination E5-2 d'un point de référence dans l'image associée du flux vidéo large champ 3, en vue de restituer un pixel de l'image du flux vidéo de sortie en fonction dudit point de référence. De préférence, l'étape E5 est aussi mise en œuvre par le processeur graphique. Dans ce cas, la fonction de calcul utilisée peut être du type shader. Un shader est une suite d'instructions exécutées par le processeur graphique et réalisant une partie d'un processus. En fait, lorsque l'image du flux vidéo large champ 3 forme une texture, l'application d'un shader à la texture permet de générer une image de sortie issue de la modification de la modélisation de ladite image d'entrée, et ce sans perte de qualité géométrique puisqu'il n'y a pas de calcul polygonal simplifiant l'image d'entrée mais un calcul de points intermédiaires. Comme évoqué précédemment, le point de référence permet de pointer une zone particulière dans l'image issue du flux vidéo large champ 3. En fait, ce point de référence peut avoir des coordonnées dans un espace tridimensionnel associé à une projection prédéterminée du flux vidéo large champ. La projection prédéterminée du flux vidéo large champ 3 est un paramètre connu issu de la génération du flux vidéo large champ 3. Le point de référence va permettre, lorsqu'il correspond exactement à un pixel de l'image issue du flux vidéo large champ 3, de sélectionner ce pixel en vue de le restituer au point correspondant de l'espace d'affichage 2. Cependant, la plupart du temps, le point de référence ne correspondra pas exactement à un pixel de l'image issue du flux vidéo large champ 3. Dans ce dernier cas, il sera possible de générer un nouveau pixel à partir de l'interpolation/pondération de plusieurs pixels de l'image issue du flux vidéo large champ 3 associés à la zone pointée par le point de référence (c'est-à-dire la zone incluant par exemple des points de l'image issue du flux vidéo large champ 3 au voisinage du point de référence). C'est ce nouveau pixel qui sera alors restitué au point correspondant de l'espace d'affichage. Par ailleurs comme évoqué précédemment, le flux vidéo large champ 3, et donc l'image du flux vidéo large champ 3, peut être associé à une représentation selon une projection prédéterminée. Préférentiellement, ce flux vidéo large champ 3 peut être représenté selon un repère X, Y dont les abscisses sont représentatives d'un angle variant entre 0 degré et 360 de degrés et les ordonnées représentatives d'un angle variant entre 0 degré et 180 degrés, ces angles permettant de définir la projection prédéterminée. Cette projection prédéterminée peut être celle voulue, dans ce cas les coordonnées du point de référence sont simplement fonction des coordonnées du point intermédiaire et du champ de vision sans transformation de projection. Selon une alternative, la projection voulue est différente de celle déterminée, dans ce cas il faudra transformer les coordonnées du point intermédiaire dans le repère de la projection voulue en des coordonnées dans le repère de la projection prédéterminée représentatives du point de référence. Cette transformation de coordonnées peut être mise en œuvre à partir d'une fonction géométrique idoine que l'homme du métier pourra mettre en œuvre à partir de simple calculs de conversion. A graphics processor (also called GPU in the field for the English "Graphie Processor Unit") is an integrated circuit providing calculation functions relating to the display. Preferably, as illustrated in FIG. 6, the training step E5 of the output video stream 1 may comprise, for each intermediate point E5- 11a E5-2 determination of a reference point from the corresponding intermediate point. This reference point corresponds in fact to coordinates, in particular in a three-dimensional space associated with a determined projection of the wide-field video stream. This reference point then corresponds to an area, or a pixel of an image of the wide field video stream 3 to be displayed at the point of the display space used to calculate the intermediate point associated with said reference point. For each image of the output video stream, all the intermediate points are treated in a similar manner. In other words, in general, the formation step E5 of the output video stream 1 may comprise, for each intermediate point, a step E5-2 determining a reference point in the associated image of the wide field video stream. 3, for rendering a pixel of the image of the output video stream according to said reference point. Preferably, step E5 is also implemented by the graphics processor. In this case, the calculation function used may be of the shader type. A shader is a sequence of instructions executed by the graphics processor and performing part of a process. In fact, when the image of the wide field video stream 3 forms a texture, the application of a shader to the texture makes it possible to generate an output image resulting from the modification of the modeling of said input image, and this without loss of geometric quality since there is no polygonal calculation simplifying the input image but a calculation of intermediate points. As mentioned above, the reference point makes it possible to point a particular zone in the image resulting from the wide field video stream 3. In fact, this reference point can have coordinates in a three-dimensional space associated with a predetermined projection of the video stream wide field. The predetermined projection of the wide field video stream 3 is a known parameter resulting from the generation of the wide field video stream 3. The reference point will allow, when it corresponds exactly to one pixel of the image resulting from the wide field video stream 3 select this pixel for rendering it at the corresponding point of the display space 2. However, most of the time, the reference point will not correspond exactly to a pixel of the image resulting from the wide field video stream 3. In the latter case, it will be possible to generate a new pixel from the interpolation / weighting of several pixels of the image from the wide field video stream 3 associated with the area pointed by the reference point (c '). that is to say the area including for example points of the image from the wide field video stream 3 in the vicinity of the reference point). It is this new pixel that will then be rendered at the corresponding point of the display space. Moreover, as mentioned above, the wide field video stream 3, and therefore the image of the wide field video stream 3, can be associated with a representation according to a predetermined projection. Preferably, this wide-field video stream 3 can be represented according to a reference X, Y whose abscissas are representative of an angle varying between 0 degrees and 360 degrees and the ordinates representative of an angle varying between 0 degrees and 180 degrees, these angles to define the predetermined projection. This predetermined projection can be that desired, in this case the coordinates of the reference point are simply a function of the coordinates of the intermediate point and the field of view without projection transformation. According to an alternative, the desired projection is different from that determined, in this case it will be necessary to transform the coordinates of the intermediate point in the reference of the desired projection into coordinates in the reference of the predetermined projection representative of the reference point. This coordinate transformation can be implemented from a suitable geometric function that the skilled person can implement from simple conversion calculations.
Autrement dit, l'étape de détermination E5-2 du point de référence peut comporter l'exécution d'une deuxième fonction géométrique f2 (figure 2) prenant en entrée le point intermédiaire correspondant et configurée de sorte à transformer les coordonnées du point intermédiaire, en fonction de la projection voulue et d'une projection prédéterminée associée au flux vidéo large champ (notamment la projection prédéterminée étant différente de la projection voulue), en des coordonnées du point de référence au sein de l'image correspondante du flux vidéo large champ 3. In other words, the determination step E5-2 of the reference point may comprise the execution of a second geometrical function f2 (FIG. 2) taking as input the corresponding intermediate point and configured so as to transform the coordinates of the intermediate point, according to the desired projection and a predetermined projection associated with the wide-field video stream (in particular the predetermined projection being different from the desired projection), at coordinates of the reference point within the corresponding image of the wide-field video stream 3.
On comprend que lorsqu'un point de référence est connu, il est facilement possible de déterminer quoi afficher au point correspondant de l'espace d'affichage 2. Ainsi, le procédé peut comporter, pour chaque point de référence, une étape de détermination E5-3 d'un pixel de l'image du flux vidéo de sortie à afficher au point de l'espace d'affichage correspondant à partir d'un pixel de l'image du flux vidéo large champ 3 au niveau dudit point de référence ou d'une interpolation entre plusieurs pixels de l'image du flux vidéo large champ 3 au niveau du point de référence. Autrement dit, le pixel de l'image du flux vidéo de sortie 1 correspond à un pixel de l'image du flux vidéo large champ 3 au niveau dudit point de référence ou à un pixel généré issu d'une interpolation entre plusieurs pixels de l'image du flux vidéo large champ au niveau du point de référence. Typiquement, lors de la génération d'un pixel, il pourra être pris les données issues d'une interpolation de deux, trois ou quatre pixels les plus proches du point de référence. Autrement dit, de manière plus générale, le pixel généré sera fonction d'une interpolation de pixels de l'image issue de la vidéo large correspondante situés au voisinage du point de référence correspondant. Ceci permet de limiter les artefacts dus aux approximations induites par une normalisation des pixels de l'image issue de la vidéo large champ 3. Dans le cadre de l'utilisation du processeur graphique pour réaliser ce type de fonction, des primitives de ce dernier peuvent directement être utilisées. It is understood that when a reference point is known, it is easily possible to determine what to display at the corresponding point of the display space 2. Thus, the method may comprise, for each reference point, a determination step E5 A pixel of the image of the output video stream to be displayed at the point of the corresponding display space from a pixel of the image of the wide field video stream 3 at said reference point; an interpolation between several pixels of the image of the wide field video stream 3 at the reference point. In other words, the pixel of the image of the output video stream 1 corresponds to a pixel of the image of the wide field video stream 3 at said reference point or to a pixel generated from an interpolation between several pixels of the image. image of the wide-field video stream at the reference point. Typically, during the generation of a pixel, it will be possible to take the data resulting from an interpolation of two, three or four pixels closest to the reference point. In other words, more Generally, the pixel generated will be a function of a pixel interpolation of the image from the corresponding wide video located in the vicinity of the corresponding reference point. This makes it possible to limit the artifacts due to the approximations induced by normalization of the pixels of the image resulting from the wide field video 3. In the context of the use of the graphics processor to perform this type of function, primitives of the latter may directly be used.
Ainsi, on comprend qu'à la suite de l'étape E5-2 de détermination du point de référence, une étape de détermination E5-3 d'un pixel à restituer au point de l'espace d'affichage est mise en œuvre (figure 6). Thus, it is understood that following the step E5-2 determining the reference point, a determination step E5-3 of a pixel to be restored at the point of the display space is implemented ( Figure 6).
Dans certaines applications, il est possible qu'au cours de la diffusion du flux vidéo de sortie, le champ de vision et/ou la projection soit modifié. Dans le cas où la projection est modifiée, une nouvelle exécution de la première fonction géométrique f1 , en précisant la nouvelle projection, sera nécessaire. Autrement dit, en cas de détection de la modification, notamment lors du changement de projection, l'image du flux vidéo de sortie en train d'être générée l'est selon l'ancienne première fonction géométrique, et l'image suivante le sera selon la nouvelle première fonction géométrique. Dans le cas où le procédé comporte une étape de modification E6 du champ de vision voulu, ledit procédé comporte une étape de mise à jour E7 de la correspondance (c'est-à-dire les coordonnées) des points intermédiaires (figure 1 ). Cette étape de mise à jour impacte alors l'exécution de l'étape E5. In some applications, it is possible that during the broadcast of the output video stream, the field of view and / or the projection is changed. In the case where the projection is modified, a new execution of the first geometric function f1, specifying the new projection, will be necessary. In other words, in case of detection of the modification, in particular during the change of projection, the image of the output video stream being generated is according to the former geometric function, and the next image will be according to the new first geometric function. In the case where the method comprises a modification step E6 of the desired field of view, said method comprises a step of updating E7 of the correspondence (that is to say the coordinates) of the intermediate points (FIG. 1). This update step then impacts the execution of step E5.
En fait, l'étape de modification (E6) du champ de vision est assimilée à une modification de l'orientation d'une caméra virtuelle située dans un repère sphérique et/ou une modification de l'angle de champ de vision de la caméra virtuelle. Dès lors, l'étape de mise à jour El comporte, pour chaque point intermédiaire : In fact, the modification step (E6) of the field of view is assimilated to a modification of the orientation of a virtual camera located in a spherical landmark and / or a change in the field of view angle of the virtual camera. Therefore, the update step E1 comprises, for each intermediate point:
- une étape de conversion des coordonnées du point intermédiaire dans le repère en trois dimensions en des coordonnées dans le repère sphérique auxquelles la modification de l'orientation de la caméra virtuelle et/ou de l'angle de champ de vision de la caméra virtuelle sont appliquées. a step of converting the coordinates of the intermediate point in the three-dimensional coordinate system into coordinates in the spherical coordinate system at which the modification of the orientation of the virtual camera and / or the angle of view of the virtual camera are applied.
- les coordonnées converties du point intermédiaire du repère sphérique sont normalisées de sorte à déterminer les nouvelles correspondances du point intermédiaire dans le repère en trois dimensions (celui associé à la projection voulue). the converted coordinates of the intermediate point of the spherical coordinate system are normalized so as to determine the new correspondences of the intermediate point in the three-dimensional coordinate system (that associated with the desired projection).
Il peut aussi s'agir de déterminer le nouveau champ de vision et d'exécuter à nouveau la première fonction géométrique. De préférence, la modification de l'orientation de la caméra virtuelle prend en compte au moins un paramètre suivant : l'angle de latitude de la caméra virtuelle dans le repère sphérique (notamment un repère de type cartographie), l'angle de longitude de la caméra virtuelle dans le repère sphérique et/ou la valeur de l'angle de champ de vision de la caméra virtuelle (correspondant à une diminution ou une augmentation du zoom). It may also be to determine the new field of view and to perform the first geometric function again. Preferably, the modification of the orientation of the virtual camera takes into account at least one following parameter: the angle of latitude of the virtual camera in the spherical coordinate system (in particular a cartographic landmark), the angle of longitude of the the virtual camera in the spherical coordinate system and / or the value of the field of view angle of the virtual camera (corresponding to a decrease or increase of the zoom).
En fait, la modification du champ de vision permet une évolution de paramètres qui permettent à un shader de s'exécuter pour chaque point à afficher de l'espace d'affichage, pour chaque image du flux vidéo de sortie 1 et quelles que soient les valeurs caractéristiques du champ de vision. Avantageusement, le procédé comporte une étape de définition d'un filtre d'effet E8 à appliquer aux images du flux vidéo de sortie 1 lors de leurs formation afin de restituer un effet particulier, notamment un filtre d'effet choisi parmi : un filtre de contraste, un filtre de luminosité, un filtre de saturation, un filtre de teinte, un filtre de déformation de l'image (effet vague, effet télévision). Typiquement, ces filtres d'effet ont pour but de modifier le rendu du flux vidéo de sortie. Ces filtres d'effet seront, de préférence, appliqués aux pixels des images du flux vidéo de sortie 1 , et notamment par le processeur graphique. Par ailleurs, le procédé de gestion du flux vidéo de sortie peut aussi comporter une étape synchronisation (non représentée aux figures) d'une bande sonore associée au flux vidéo large champ 3 avec le flux vidéo de sortie 1 . Autrement dit, le flux vidéo de sortie comporte une bande sonore qui sera restituée en même temps que les images dudit flux vidéo de sortie 1 . Selon un perfectionnement, la bande sonore associée au flux vidéo large champ 3 peut être spatialisée de sorte que sa restitution avec le flux vidéo de sortie 1 comprenne un ajustement de la spatialisation selon le champ de vision. In fact, changing the field of view allows a change in parameters that allow a shader to execute for each point to display the display space, for each image of the output video stream 1 and regardless of the characteristic values of the field of vision. Advantageously, the method comprises a step of defining an effect filter E8 to be applied to the images of the output video stream 1 during their formation in order to restore a particular effect, in particular an effect filter chosen from: contrast, a brightness filter, a saturation filter, a hue filter, an image distortion filter (wave effect, television effect). Typically, these effect filters are intended to change the rendering of the output video stream. These effect filters will preferably be applied to the pixels of the images of the output video stream 1, and in particular by the graphics processor. Moreover, the method of managing the output video stream may also include a synchronization step (not shown in the figures) of a sound track associated with the wide field video stream 3 with the output video stream 1. In other words, the output video stream comprises a sound track which will be restored at the same time as the images of said output video stream 1. According to an improvement, the sound track associated with the wide field video stream 3 can be spatialized so that its reproduction with the output video stream 1 comprises an adjustment of the spatialization according to the field of view.
L'invention est aussi relative à un procédé d'affichage d'au moins un flux vidéo de sortie dans un espace d'affichage d'au moins un écran. Un tel procédé d'affichage illustré à la figure 7 comporte au moins une étape de mise en œuvre E101 du procédé de génération du flux vidéo de sortie tel que décrit précédemment. Par ailleurs, le procédé d'affichage comporte une étape d'affichage E102 dudit flux vidéo de sortie généré dans l'espace d'affichage dudit au moins un écran. The invention also relates to a method of displaying at least one output video stream in a display space of at least one screen. Such a display method illustrated in FIG. 7 comprises at least one implementation step E101 of the method of generating the output video stream as described previously. Furthermore, the display method comprises a display step E102 of said output video stream generated in the display space of said at least one screen.
De préférence, chaque écran comporte une pluralité d'espaces d'affichage affichant (E102) chacun un flux vidéo de sortie correspondant. Les flux vidéo de sortie sont formés à partir du même flux vidéo large champ selon un champ de vision différent et/ou une projection différente et/ou un effet différent. Ceci permet de proposer différentes immersions possibles à un utilisateur. Par effet différent, on entend l'application d'un filtre d'effet différent. Preferably, each screen has a plurality of display spaces displaying (E102) each an output video stream corresponding. The output video streams are formed from the same wide field video stream according to a different field of view and / or a different projection and / or a different effect. This makes it possible to propose different possible immersions to a user. By different effect is meant the application of a filter of different effect.
Selon une variante, l'écran comporte deux espaces d'affichage chacun respectivement destiné à un œil gauche et à un œil droit d'un observateur. Ceci permet notamment de proposer du contenu immersif avec affichage en trois dimensions ou non. Ainsi, chaque œil perçoit un flux vidéo de sortie associé à un espace de vision qui lui est adapté. L'écran peut alors comporter une matrice d'affichage divisée de sorte à délimiter les deux espaces d'affichage. Alternativement, le procédé d'affichage permet d'afficher un premier flux vidéo de sortie dans un espace d'affichage d'un premier écran et un deuxième flux vidéo de sortie dans un espace d'affichage d'un deuxième écran, le premier flux est alors destiné à être perçu par exemple par un œil gauche de l'observateur tandis que le deuxième flux est destiné à être perçu par un œil droit de l'observateur. Dans cette variante, le ou les écran(s) peu(ven)t être inclus dans d'un casque immersif (ou casque de réalité virtuelle) aussi connu sous le nom anglais de « Headset VR » dans le domaine. According to one variant, the screen comprises two display spaces each respectively for a left eye and a right eye of an observer. This allows in particular to offer immersive content with three-dimensional display or not. Thus, each eye perceives an output video stream associated with a viewing space that is adapted to it. The screen may then comprise a divided display matrix so as to delimit the two display spaces. Alternatively, the display method makes it possible to display a first output video stream in a display space of a first screen and a second output video stream in a display space of a second screen, the first stream is then intended to be perceived for example by a left eye of the observer while the second stream is intended to be perceived by a right eye of the observer. In this variant, the screen (s) can be included in an immersive helmet (or virtual reality helmet) also known as the "Headset VR" in the field.
Selon une réalisation de la variante, le casque immersif peut comporter un support configuré de sorte à être porté par un observateur. Ce support comporte aussi des moyens de réception d'un dispositif portable multimédia, notamment une tablette multimédia ou un téléphone multimédia aussi connu sous le terme de smartphone dans le domaine. On comprend alors que l'écran du dispositif portable multimédia, lorsqu'il est monté sur le support, permet l'affichage simultané de deux flux vidéo de sortie chacun destiné à être perçu par un œil correspondant de l'observateur. Autrement dit, le dispositif portable multimédia peut comporter une application dédiée permettant la mise en œuvre du procédé de génération du flux vidéo de sortie. Par ailleurs, selon une mise en œuvre particulière, le procédé d'affichage peut permettre un affichage d'une pluralité de vidéos de sortie distinctes (notamment de manière simultanée), au moins deux vidéos de sorties de la pluralité de vidéos de sortie étant issues de flux vidéo large champ différents. Les vidéos de sortie de pluralité de vidéos de sortie peuvent être affichées dans des espaces d'affichage d'un même écran, ou dans des espaces d'affichage d'écran différents. Chacune des vidéos de sortie de la pluralité de vidéos de sortie peut être générée par une mise en œuvre du procédé de génération. According to an embodiment of the variant, the immersive helmet may comprise a support configured to be worn by an observer. This medium also comprises means for receiving a portable multimedia device, in particular a multimedia tablet or a multimedia telephone also known by the term smartphone in the field. It is understood that the screen of the portable multimedia device, when mounted on the support, allows the simultaneous display of two video streams each output intended to be perceived by a corresponding eye of the observer. In other words, the portable multimedia device may comprise a dedicated application for implementing the method of generating the output video stream. Furthermore, according to a particular implementation, the display method may allow a plurality of separate output videos to be displayed (in particular simultaneously), at least two videos of outputs of the plurality of output videos being derived from different wide field video streams. The output videos of a plurality of output videos may be displayed in display spaces on the same screen, or in different screen display spaces. Each of the output videos of the plurality of output videos can be generated by an implementation of the generation method.
L'invention est aussi relative à un dispositif de gestion d'au moins un flux vidéo de sortie. Comme illustré à la figure 8, ce dispositif 1000 comprend au moins un élément 1001 configuré de sorte à mettre en œuvre le procédé de génération d'un flux vidéo de sortie tel que décrit. Par exemple, cet élément 1001 comporte un CPU, un GPU et une mémoire contenant des instructions de mise en œuvre du procédé de génération du flux vidéo par le CPU et le GPU. Par ailleurs, le dispositif comporte une interface homme-machine 1002 comprenant au moins un écran d'affichage 1003 destiné à afficher le flux vidéo de sortie dans au moins un espace d'affichage 1004 dudit au moins un écran 1003. The invention also relates to a device for managing at least one output video stream. As illustrated in FIG. 8, this device 1000 comprises at least one element 1001 configured so as to implement the method of generating an output video stream as described. For example, this element 1001 comprises a CPU, a GPU and a memory containing instructions for implementing the method of generating the video stream by the CPU and the GPU. Furthermore, the device comprises a man-machine interface 1002 comprising at least one display screen 1003 intended to display the output video stream in at least one display space 1004 of said at least one screen 1003.
De manière générale, une interface homme machine est configurée de sorte à permettre l'interaction d'un opérateur avec le dispositif dans le cadre d'une expérience immersive de restitution d'au moins une partie d'un flux vidéo large champ. En ce sens, l'interface homme-machine 1002 comprend au moins l'un des éléments suivants : un élément de sélection 1005 d'un flux vidéo large champ dans un espace de stockage (notamment à partir d'une liste de choix de flux vidéo large champ), un élément de définition du champ de vision voulu 1006 (notamment un espace d'affichage permettant de visualiser la totalité du flux vidéo large champ), un élément de définition 1007 d'une projection voulue (notamment à partir d'une liste prédéfinie de projections), un élément de sélection d'un effet à appliquer 1008 (notamment à partir d'une liste prédéfinie d'effets), un élément 1009 permettant de se déplacer temporellement au sein du flux vidéo large champ pour restituer le flux vidéo de sortie à un moment précis un élément 1010 de contrôle de la bande son du flux vidéo de sortie. In general, a human machine interface is configured to allow the interaction of an operator with the device as part of an immersive experience of rendering at least a portion of a wide field video stream. In this sense, the human-machine interface 1002 comprises at least one of the following elements: a selection element 1005 of a wide field video stream in a storage space (in particular from a list of choice of streams wide field video), a desired field of view definition element 1006 (including a display space for viewing the entire wide field video stream), a definition element 1007 of a desired projection (especially from a predefined list of projections), a selection element of an effect to be applied 1008 (in particular from a predefined list of effects), an element 1009 making it possible to move temporally within the broad-field video stream to restore the output video stream at a specific time a 1010 control element of the soundtrack of the output video stream.
L'espace de stockage peut être local au dispositif (c'est-à-dire dans une mémoire du dispositif), ou être distant (par exemple un serveur distant accessible via un réseau de communication tel qu'Internet). Ainsi, le flux vidéo large champ peut être téléchargé ou diffusé, notamment en temps réel, à partir de l'espace de stockage distant. The storage space may be local to the device (i.e., in a device memory), or remote (e.g. a remote server accessible via a communication network such as the Internet). Thus, the wide field video stream can be downloaded or broadcast, especially in real time, from the remote storage space.
De préférence, l'interface homme-machine comporte au moins un élément de modification du champ de vision, notamment choisi parmi : un écran tactile, un accéléromètre, un gyroscope, un magnétomètre, un espace d'affichage du flux vidéo large champ à partir duquel il est possible de choisir le champ de vision voulu, un dispositif de pointage (par exemple une souris informatique), une interface gestuelle à détection de mouvement. L'interface gestuelle peut correspondre à des capteurs placés sur une personne, ou à une ou plusieurs caméras filmant une personne et analysant ses gestes. En outre, on comprend aussi de ce qui a été dit précédemment que l'interface homme-machine peut comporter un casque immersif comportant, par exemple, un gyroscope de sorte à permettre à un observateur équipé dudit casque immersif de déplacer au moins son regard dans une réalité virtuelle par interprétation des signaux issus du gyroscope. Preferably, the human-machine interface comprises at least one element for modifying the field of view, in particular chosen from: a touch screen, an accelerometer, a gyroscope, a magnetometer, a display space of the wide field video stream from from which it is possible to choose the desired field of vision, a pointing device (for example a computer mouse), a gesture interface with motion detection. The gesture interface may correspond to sensors placed on a person, or to one or more cameras filming a person and analyzing his actions. Furthermore, it is also understood from what has been said above that the man-machine interface may comprise an immersive helmet comprising, for example, a gyroscope so as to allow an observer equipped with said immersive helmet to move at least his gaze into a virtual reality by interpretation of the signals from the gyroscope.
Selon une mise en œuvre du dispositif, chaque écran comporte une pluralité d'espaces d'affichage, un flux vidéo de sortie distinct étant joué dans chacun des espaces d'affichage, les flux vidéos de sortie joués étant chacun issu d'une mise en œuvre du procédé de génération du flux vidéo de sortie, notamment à partir d'un même flux vidéo large champ ou de flux vidéo large champ différents. According to one implementation of the device, each screen comprises a plurality of display spaces, a separate output video stream being played in each of the display spaces, the output video streams played being each from a set of implementation of the method of generating the output video stream, in particular from the same wide field video stream or different wide field video streams.
Selon une mise en œuvre particulière, un écran du dispositif peut être associé à un boîtier du dispositif qui comporte les éléments nécessaire à la génération de chaque flux vidéo de sortie. Le boîtier peut alors former une tablette tactile. Par ailleurs, un autre écran du dispositif (par exemple un téléviseur) peut être déporté du boîtier de sorte à afficher le flux vidéo de sortie qui lui est transmis par le boîtier via un moyen de communication, notamment sans fil. L'invention est aussi relative à un système comprenant un compilateur et une mémoire munie d'un kit de développement logiciel permettant de créer une application pour un système d'exploitation. Le kit de développement comporte au moins un élément configuré de sorte à mettre en œuvre le procédé de génération du flux vidéo au sein de l'application lorsqu'elle est exécutée après avoir été compilée par le compilateur. En outre, le kit de développement peut comporter un élément configuré de sorte à permettre l'interaction de l'application avec tout ou partie des éléments décrits ci-avant du dispositif de gestion. According to a particular implementation, a screen of the device may be associated with a device housing that includes the elements necessary for the generation of each output video stream. The housing can then form a touch pad. Furthermore, another screen of the device (for example a television) can be deported from the housing so as to display the output video stream that is transmitted to it by the housing via a communication means, especially wireless. The invention also relates to a system comprising a compiler and a memory provided with a software development kit for creating an application for an operating system. The development kit includes at least one element configured to implement the method of generating the video stream within the application when it is executed after being compiled by the compiler. In addition, the development kit may include a element configured to allow the interaction of the application with all or part of the elements described above of the management device.
Selon une mise en œuvre particulière, le procédé de génération d'un flux vidéo de sortie peut être mis en œuvre une pluralité de fois de sorte à permettre l'affichage d'une vidéo dans un dôme immersif comportant une pluralité de pans d'affichage. On comprend alors qu'ici chaque flux vidéo de sortie est affiché sur un unique pan du dôme qui lui est associé. De préférence, le dôme est tel que l'intégralité du flux vidéo large champ est reproduit lorsque l'on concatène tous les pans d'affichage du dôme. According to a particular implementation, the method of generating an output video stream may be implemented a plurality of times so as to allow the display of a video in an immersive dome having a plurality of display panels . We understand that here each output video stream is displayed on a single pan of the dome associated with it. Preferably, the dome is such that the entire wide field video stream is reproduced when concatenating all the dome display panels.

Claims

REVENDICATIONS
1 . Procédé de génération d'un flux vidéo de sortie (1 ) en vue de l'afficher dans un espace d'affichage (2) en deux dimensions, ledit procédé comprenant les étapes suivantes : 1. A method of generating an output video stream (1) for display in a two-dimensional display space (2), said method comprising the steps of:
- sélectionner (E1 ) un flux vidéo large champ (3), - définir (E3) une projection voulue (P) et un champ de vision voulu (cam) en vue d'obtenir une restitution particulière, notamment sans distorsion, d'au moins une partie du flux vidéo large champ (3) dans l'espace d'affichage (2), - select (E1) a wide field video stream (3), - define (E3) a desired projection (P) and a desired field of view (cam) in order to obtain a particular reproduction, especially without distortion, of at least part of the wide field video stream (3) in the display space (2),
- exécuter (E4) une première fonction géométrique (f1 ) permettant, pour chaque point de l'espace d'affichage (2), de générer un point intermédiaire situé dans un repère en trois dimensions, ladite première fonction prenant en paramètres la projection voulue (P) et le champ de vision voulu (cam), executing (E4) a first geometric function (f1) making it possible, for each point of the display space (2), to generate an intermediate point situated in a three-dimensional coordinate system, said first function taking into parameters the desired projection (P) and the desired field of view (cam),
- former (E5) le flux vidéo de sortie à partir du flux large champ sélectionné (3) en prenant en compte les points intermédiaires. - forming (E5) the output video stream from the selected wide field flux (3) taking into account the intermediate points.
2. Procédé selon la revendication précédente, caractérisé en ce que l'étape de formation (E5) du flux vidéo de sortie (1 ) est mise en œuvre de telle sorte que chaque pixel d'une image du flux vidéo de sortie, destiné à être affiché par un point de l'espace d'affichage, soit fonction, selon le point intermédiaire correspondant, d'au moins un pixel d'une image correspondante du flux vidéo large champ (3). 2. Method according to the preceding claim, characterized in that the forming step (E5) of the output video stream (1) is implemented so that each pixel of an image of the output video stream, intended to be displayed by a point in the display space, ie function, according to the corresponding intermediate point, of at least one pixel of a corresponding image of the wide field video stream (3).
3. Procédé selon l'une des revendications précédentes, caractérisé en ce que l'étape de formation (E5) du flux vidéo de sortie (1 ) comporte, pour chaque point intermédiaire, une étape de détermination d'un point de référence dans l'image associée du flux vidéo large champ (3) en vue de restituer un pixel de l'image du flux vidéo de sortie (1 ) en fonction dudit point de référence. 3. Method according to one of the preceding claims, characterized in that the step of forming (E5) the output video stream (1) comprises, for each intermediate point, a step of determining a reference point in the associated image of the wide field video stream (3) to render a pixel of the image of the output video stream (1) according to said reference point.
4. Procédé selon la revendication précédente, caractérisé en ce que l'étape de détermination (E5-2) du point de référence comporte l'exécution d'une deuxième fonction géométrique (f2) prenant en entrée le point intermédiaire correspondant et configurée de sorte à transformer les coordonnées du point intermédiaire, en fonction de la projection voulue et d'une projection déterminée associée au flux vidéo large champ, en des coordonnées du point de référence au sein de l'image correspondante du flux vidéo large champ (3). 4. Method according to the preceding claim, characterized in that the step of determining (E5-2) of the reference point comprises the execution of a second geometric function (f2) taking as input the corresponding intermediate point and configured so transforming the coordinates of the intermediate point, as a function of the desired projection and of a determined projection associated with the wide field video stream, into coordinates of the reference point within the corresponding image of the wide field video stream (3).
5. Procédé selon l'une des revendications 3 ou 4, caractérisé en ce qu'il comporte, pour chaque point de référence, une étape de détermination (E5-3) d'un pixel de l'image du flux vidéo de sortie (1 ) à afficher au point de l'espace d'affichage correspondant à partir d'un pixel de l'image du flux vidéo large champ (3) au niveau dudit point de référence ou d'une interpolation entre plusieurs pixels de l'image du flux vidéo large champ (3) au niveau du point de référence. 5. Method according to one of claims 3 or 4, characterized in that it comprises, for each reference point, a step of determining (E5-3) a pixel of the image of the output video stream ( 1) to be displayed at the point of the corresponding display space from a pixel of the image of the wide field video stream (3) at said reference point or interpolation between several pixels of the image wide field video stream (3) at the reference point.
6. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce qu'il comporte une étape de modification (E6) du champ de vision voulu et en ce qu'il comporte une étape de mise à jour (E7) des coordonnées des points intermédiaires. 6. Method according to any one of the preceding claims, characterized in that it comprises a step of modifying (E6) the desired field of view and in that it comprises a step of updating (E7) the coordinates of the intermediate points.
7. Procédé selon la revendication précédente, caractérisé en ce que l'étape de modification du champ de vision (E6) est assimilée à une modification de l'orientation d'une caméra virtuelle située dans un repère sphérique et/ou une modification de l'angle de champ de vision de la caméra virtuelle, et en ce que l'étape de mise à jour (E7) comporte, pour chaque point intermédiaire, les étapes suivantes : 7. Method according to the preceding claim, characterized in that the step of modifying the field of view (E6) is likened to a change in the orientation of a virtual camera located in a spherical landmark and / or a modification of the angle of view of the virtual camera, and in that the updating step (E7) comprises, for each intermediate point, the following steps:
- la conversion des coordonnées du point intermédiaire dans le repère en trois dimensions en des coordonnées dans le repère sphérique auxquelles la modification de l'orientation de la caméra virtuelle et/ou de l'angle de champ de vision sont appliquées, la normalisation des coordonnées converties de sorte à déterminer les nouvelles coordonnées du point intermédiaire dans le repère en trois dimensions. the conversion of the coordinates of the intermediate point in the three-dimensional coordinate system into coordinates in the spherical coordinate system at which the modification of the orientation of the virtual camera and / or the angle of view of field of view are applied, the standardization of the coordinates converted to determine the new coordinates of the intermediate point in the three-dimensional coordinate system.
8. Procédé selon la revendication précédente, caractérisé en ce que la modification de l'orientation de la caméra virtuelle prend en compte au moins un paramètre suivant : l'angle de latitude de la caméra virtuelle dans le repère sphérique, l'angle de longitude de la caméra virtuelle dans le repère sphérique, une valeur d'angle de champ de vision de la caméra virtuelle. 8. Method according to the preceding claim, characterized in that the modification of the orientation of the virtual camera takes into account at least one following parameter: the latitude angle of the virtual camera in the spherical coordinate system, the angle of longitude of the virtual camera in the spherical coordinate system, a field of view angle value of the virtual camera.
9. Procédé l'une quelconque des revendications précédentes, caractérisé en ce qu'au moins l'étape d'exécution de la première fonction géométrique (f1 ) est réalisée par un processeur graphique (GPU), notamment au sein duquel chaque image du flux vidéo large champ (3) forme une texture dont une partie des pixels est utilisée par le processeur graphique (GPU) pour former une image correspondante du flux vidéo de sortie (1 ). 9. Method according to any one of the preceding claims, characterized in that at least the step of executing the first geometric function (f1) is performed by a graphics processor (GPU), in particular in which each image of the stream wide field video (3) forms a texture of which part of the pixels is used by the graphics processor (GPU) to form a corresponding image of the output video stream (1).
10. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce qu'il comporte une étape de définition (E8) d'un filtre d'effet à appliquer aux images du flux vidéo de sortie (1 ) lors de leurs formation afin de restituer un effet particulier, notamment un filtre d'effet choisi parmi : un filtre de contraste, un filtre de luminosité, un filtre de saturation, un filtre de teinte, un filtre de déformation de l'image. 10. Method according to any one of the preceding claims, characterized in that it comprises a step of defining (E8) an effect filter to be applied to the images of the output video stream (1) during their formation to to render a particular effect, in particular an effect filter selected from: a contrast filter, a brightness filter, a saturation filter, a hue filter, an image distortion filter.
1 1 . Procédé d'affichage d'au moins un flux vidéo de sortie dans un espace d'affichage d'au moins un écran, caractérisé en ce qu'il comporte au moins une étape (E101 ) de mise en œuvre du procédé de génération du flux vidéo de sortie selon l'une quelconque des revendications précédentes, et une étape d'affichage (E102) dudit flux vidéo de sortie généré dans l'espace d'affichage dudit au moins un écran. 1 1. Method for displaying at least one output video stream in a display space of at least one screen, characterized in that it comprises at least one step (E101) for implementing the method for generating the stream output video according to any one of the preceding claims, and a step of displaying (E102) said output video stream generated in the display space of said at least one screen.
12. Procédé selon la revendication précédente, caractérisé en ce que chaque écran comporte une pluralité d'espaces d'affichage (E102) affichant chacun un flux vidéo de sortie correspondant, lesdits flux vidéo de sortie étant formés à partir du même flux vidéo large champ selon un champ de vision différent et/ou une projection différente et/ou un effet différent. The method according to the preceding claim, characterized in that each screen comprises a plurality of display spaces (E102) each displaying a corresponding output video stream, said output video streams being formed from the same wide field video stream. according to a different field of vision and / or a different projection and / or a different effect.
13. Procédé selon la revendication 1 1 , caractérisé en qu'il est configuré de sorte à permettre une étape d'affichage d'une pluralité de vidéos de sortie distinctes, au moins deux vidéos de sorties de la pluralité de vidéos de sortie étant issues de flux vidéo large champ différents, notamment les vidéos de sortie de pluralité de vidéos de sortie sont affichées dans des espaces d'affichage d'un même écran ou dans des espaces d'affichage d'écran différents. The method of claim 1, characterized in that it is configured to allow a step of displaying a plurality of separate output videos, at least two output videos of the plurality of output videos being different wide field video streams, especially the output videos of the plurality of output videos are displayed in display spaces on the same screen or in different screen display spaces.
14. Dispositif de gestion d'au moins un flux vidéo de sortie, caractérisé en ce qu'il comprend au moins un élément (1001 ) configuré de sorte à mettre en œuvre le procédé de génération d'un flux vidéo de sortie selon l'une des revendications 1 à 10, et une interface homme-machine comprenant au moins un écran d'affichage (1003) destiné à afficher le flux vidéo de sortie dans au moins un espace d'affichage (1004) dudit au moins un écran (1003). 14. Device for managing at least one output video stream, characterized in that it comprises at least one element (1001) configured so as to implement the method of generating an output video stream according to the one of claims 1 to 10, and a man-machine interface comprising at least one display screen (1003) for displaying the output video stream in at least one display space (1004) of said at least one screen (1003) ).
15. Dispositif selon la revendication précédente, caractérisé en ce que l'interface homme-machine comprend au moins l'un des éléments suivants : un élément de sélection (1005) d'un flux vidéo large champ dans un espace de stockage, un élément (1006) de définition du champ de vision voulu, un élément de définition (1007) d'une projection voulue notamment à partir d'une liste prédéfinie de projections, un élément (1008) de sélection d'un effet à appliquer, un élément (1009) permettant de se déplacer temporellennent au sein du flux vidéo large champ pour restituer le flux vidéo de sortie à un moment précis, un élément de contrôle (1010) de la bande son du flux vidéo de sortie. 15. Device according to the preceding claim, characterized in that the human-machine interface comprises at least one of the following elements: a selection element (1005) of a wide field video stream in a storage space, an element (1006) of definition of the desired field of view, a definition element (1007) of a desired projection, in particular from a predefined list of projections, an element (1008) for selecting an effect to be applied, an element (1009) for temporally moving within the wide field video stream to render the output video stream at a specific time, a control element (1010) of the soundtrack of the output video stream.
16. Dispositif selon l'une des revendications 14 ou 15, caractérisé en ce que l'interface homme-machine comporte au moins un élément de modification du champ de vision, notamment choisi parmi : un écran tactile, un accéléromètre, un gyroscope, un magnétomètre, un espace d'affichage du flux vidéo large champ à partir duquel il est possible de choisir le champ de vision voulu, un dispositif de pointage, une interface gestuelle à détection de mouvement. 16. Device according to one of claims 14 or 15, characterized in that the human-machine interface comprises at least one element for modifying the field of view, in particular selected from: a touch screen, an accelerometer, a gyroscope, a magnetometer, a display space of the wide field video stream from which it is possible to choose the desired field of view, a pointing device, a gesture interface with motion detection.
17. Dispositif selon l'une des revendications 14 à 16, caractérisé en ce que chaque écran comporte une pluralité d'espaces d'affichage, un flux vidéo de sortie distinct étant joué dans chacun des espaces d'affichage, les flux vidéos de sortie joués étant chacun issu d'une mise en œuvre du procédé de génération du flux vidéo de sortie selon l'une des revendications 1 à 10, notamment à partir d'un même flux vidéo large champ ou de flux vidéo large champ différents. 17. Device according to one of claims 14 to 16, characterized in that each screen comprises a plurality of display spaces, a separate output video stream being played in each of the display spaces, the output video streams played being each resulting from an implementation of the method of generating the output video stream according to one of claims 1 to 10, in particular from a single wide field video stream or different wide field video stream.
18. Système comprenant un compilateur et une mémoire munie d'un kit de développement logiciel permettant de créer une application pour un système d'exploitation, caractérisé en ce que le kit de développement comporte au moins un élément configuré de sorte à mettre en œuvre l'une quelconque des revendications 1 à 10 du procédé de génération du flux vidéo au sein de l'application lorsqu'elle est exécutée après avoir été compilée par le compilateur. 18. A system comprising a compiler and a memory provided with a software development kit for creating an application for an operating system, characterized in that the development kit comprises at least one element configured to implement the system. any one of claims 1 to 10 of the method of generating the video stream within the application when it is executed after being compiled by the compiler.
EP14719707.3A 2013-04-19 2014-04-18 Method for generating an output video stream from a wide-field video stream Ceased EP2987319A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1353565A FR3004881B1 (en) 2013-04-19 2013-04-19 METHOD FOR GENERATING AN OUTPUT VIDEO STREAM FROM A WIDE FIELD VIDEO STREAM
PCT/EP2014/058008 WO2014170482A1 (en) 2013-04-19 2014-04-18 Method for generating an output video stream from a wide-field video stream

Publications (1)

Publication Number Publication Date
EP2987319A1 true EP2987319A1 (en) 2016-02-24

Family

ID=48782410

Family Applications (1)

Application Number Title Priority Date Filing Date
EP14719707.3A Ceased EP2987319A1 (en) 2013-04-19 2014-04-18 Method for generating an output video stream from a wide-field video stream

Country Status (4)

Country Link
US (1) US10129470B2 (en)
EP (1) EP2987319A1 (en)
FR (1) FR3004881B1 (en)
WO (1) WO2014170482A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3249928A1 (en) * 2016-05-23 2017-11-29 Thomson Licensing Method, apparatus and stream of formatting an immersive video for legacy and immersive rendering devices
GB2550587B (en) * 2016-05-23 2020-05-20 Canon Kk Method, device, and computer program for adaptive streaming of virtual reality media content
US20180307352A1 (en) * 2017-04-25 2018-10-25 Gopro, Inc. Systems and methods for generating custom views of videos

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5260779A (en) 1992-02-21 1993-11-09 Control Automation, Inc. Method and apparatus for inspecting a printed circuit board
KR940017747A (en) * 1992-12-29 1994-07-27 에프. 제이. 스미트 Image processing device
FR2700938B1 (en) 1993-01-29 1995-04-28 Centre Nat Rech Scient Method and device for analyzing the movement of the eye.
EP0650299B1 (en) * 1993-10-20 1998-07-22 Laboratoires D'electronique Philips S.A.S. Method of processing luminance levels in a composite image and image processing system applying this method
FR2714503A1 (en) * 1993-12-29 1995-06-30 Philips Laboratoire Electroniq Image processing method and device for constructing from a source image a target image with change of perspective.
US6578962B1 (en) 2001-04-27 2003-06-17 International Business Machines Corporation Calibration-free eye gaze tracking
US7057663B1 (en) 2001-05-17 2006-06-06 Be Here Corporation Audio synchronization pulse for multi-camera capture systems
US7336299B2 (en) * 2003-07-03 2008-02-26 Physical Optics Corporation Panoramic video system with real-time distortion-free imaging
CN101833968B (en) 2003-10-10 2012-06-27 夏普株式会社 Content reproduction device and method
US8723951B2 (en) * 2005-11-23 2014-05-13 Grandeye, Ltd. Interactive wide-angle video server
US8572382B2 (en) 2006-05-15 2013-10-29 Telecom Italia S.P.A. Out-of band authentication method and system for communication over a data network
US7661121B2 (en) 2006-06-22 2010-02-09 Tivo, Inc. In-band data recognition and synchronization system
KR101574339B1 (en) 2008-04-28 2015-12-03 엘지전자 주식회사 Method and apparatus for synchronizing a data between a mobile communication terminal and a TV
JP5927795B2 (en) 2011-07-22 2016-06-01 ソニー株式会社 Stereoscopic imaging system, recording control method, stereoscopic video playback system, and playback control method
US20130127984A1 (en) * 2011-11-11 2013-05-23 Tudor Alexandru GRECU System and Method for Fast Tracking and Visualisation of Video and Augmenting Content for Mobile Devices
KR102141114B1 (en) 2013-07-31 2020-08-04 삼성전자주식회사 Method and appratus of time synchornization for device-to-device communications
US20150142765A1 (en) 2013-11-17 2015-05-21 Zhen-Chao HONG System and method for enabling remote file access via a reference file stored at a local device that references the content of the file
US9473576B2 (en) 2014-04-07 2016-10-18 Palo Alto Research Center Incorporated Service discovery using collection synchronization with exact names
US9754002B2 (en) 2014-10-07 2017-09-05 Excalibur Ip, Llc Method and system for providing a synchronization service

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
None *
See also references of WO2014170482A1 *

Also Published As

Publication number Publication date
WO2014170482A1 (en) 2014-10-23
FR3004881B1 (en) 2015-04-17
US20160112635A1 (en) 2016-04-21
FR3004881A1 (en) 2014-10-24
US20180255241A9 (en) 2018-09-06
US10129470B2 (en) 2018-11-13

Similar Documents

Publication Publication Date Title
US10846888B2 (en) Systems and methods for generating and transmitting image sequences based on sampled color information
US10127632B1 (en) Display and update of panoramic image montages
US10659759B2 (en) Selective culling of multi-dimensional data sets
EP3337158A1 (en) Method and device for determining points of interest in an immersive content
EP1227442B1 (en) 2D image processing applied to 3D objects
US10049490B2 (en) Generating virtual shadows for displayable elements
EP2556660A1 (en) A method of real-time cropping of a real entity recorded in a video sequence
KR20220051376A (en) 3D Data Generation in Messaging Systems
CN112868224B (en) Method, apparatus and storage medium for capturing and editing dynamic depth image
US9594488B2 (en) Interactive display of high dynamic range images
KR102612529B1 (en) Neural blending for new view synthesis
JP7101269B2 (en) Pose correction
CN114175097A (en) Generating potential texture proxies for object class modeling
CN112105983B (en) Enhanced visual ability
CN114631127A (en) Synthesis of small samples of speaking heads
EP3571670A1 (en) Mixed reality object rendering
EP2987319A1 (en) Method for generating an output video stream from a wide-field video stream
US11544894B2 (en) Latency-resilient cloud rendering
US20230106679A1 (en) Image Processing Systems and Methods
US20220139026A1 (en) Latency-Resilient Cloud Rendering
WO2020128206A1 (en) Method for interaction of a user with a virtual reality environment
US20230077410A1 (en) Multi-View Video Codec
Thatte Cinematic virtual reality with head-motion parallax
Alain et al. Introduction to immersive video technologies
FR3013492A1 (en) METHOD USING 3D GEOMETRY DATA FOR PRESENTATION AND CONTROL OF VIRTUAL REALITY IMAGE IN 3D SPACE

Legal Events

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

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20151102

AK Designated contracting states

Kind code of ref document: A1

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

AX Request for extension of the european patent

Extension state: BA ME

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

Effective date: 20160803

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: GOPRO, INC.

REG Reference to a national code

Ref country code: DE

Ref legal event code: R003

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

Free format text: STATUS: THE APPLICATION HAS BEEN REFUSED

18R Application refused

Effective date: 20191108