Method and apparatus of controlling a lighting device comprised in a 3D environment
By determining the position and orientation of lighting devices and controlling them based on spatial sample color information, the method and apparatus enhance user immersion in media content playback environments by aligning lighting effects with the displayed content.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-09-04
- Publication Date
- 2026-03-19
AI Technical Summary
Existing methods for controlling lighting in media content playback environments, such as video games or movies, fall short in enhancing user immersion through dynamic and spatially accurate lighting effects.
A method and apparatus that determine the position and orientation of lighting devices in a 3D environment, cast rays in a 2D or 3D virtual scene to intersect spatial samples, and control the lighting devices based on color information associated with these samples to create dynamic lighting effects that align with the content being displayed.
Enhances user immersion by dynamically controlling lighting devices to match the visual content, creating a more engaging and immersive experience.
Smart Images

Figure EP2025075196_19032026_PF_FP_ABST
Abstract
Description
[0001] METHOD AND APPARATUS OF CONTROLLING A LIGHTING DEVICE COMPRISED IN A 3D ENVIRONMENT
[0002] FIELD
[0003] The present application generally relates to the field of lighting and, in particular, to the controlling of one or more lighting devices to render or emit light in a three-dimensional (3D) environment. The present application also relates to method and apparatus of controlling one or more lighting devices according to data representative of the position of the one or more lighting devices in the 3D environment and data representative of color of another environment, e.g., a virtual environment or a CGI (Computer Generated Imagery) environment.
[0004] BACKGROUND
[0005] The present section is intended to introduce the reader to various aspects of art, which may be related to various aspects of at least one exemplary embodiments of the present application that is described and / or claimed below. This discussion is believed to be helpful in providing the reader with background information to facilitate a better understanding of the various aspects of the present application.
[0006] To improve user experience when playing a media content such as a video content or a video game, it is known to control the lighting of one or more peripherals in the media content playback environment.
[0007] Controlling the lighting of such peripherals may for example increase the feeling of immersion while watching a movie or playing a video game. Such peripherals comprise smart LED light bulbs, RGB (Red, Green, Blue) components and accessories such as LED strips, keyboards, mice, mouse mats, speakers, screens, headsets or even the casing of the media player. Lighting or color effects may be obtained by controlling the one or more lightemitting devices such as LED (Light-Emitting Diode) equipping the one or more peripherals arranged in the media content playback environment.
[0008] Lighting or color effects may further be rendered in a determined environment to provide an appropriate ambient lighting
[0009] However, there is still room for improvement to control the lighting of the media content playback environment, e.g., to improve the feeling of immersion.
[0010] SUMMARY
[0011] The following section presents a simplified summary of at least one exemplary embodiment in order to provide a basic understanding of some aspects of the present application. This summary is not an extensive overview of an exemplary embodiment. It is not intended to identify key or critical elements of an embodiment. The following summary merely presents some aspects of at least one of the exemplary embodiments in a simplified form as a prelude to the more detailed description provided elsewhere in the document.
[0012] According to a first aspect of the present application, there is provided a method of controlling a lighting device, the method comprising:
[0013] - receiving first data representative of a position of the lighting device in a first environment;
[0014] - determining first information representative of orientation of the lighting device with respect to a first reference position in the first environment according to the first data and second data representative of position of the first reference position;
[0015] - determining, in a second environment comprising a set of spatial samples, at least a spatial sample of the set of spatial samples intersected by a ray casted in the second environment from a second reference position of the second environment according to the first information, color information being associated with each spatial sample of the set of spatial samples; and
[0016] - controlling the lighting device according to color data corresponding to color information associated with the at least a spatial sample. In an exemplary embodiment, the lighting device comprising a plurality of lightemitting devices, the first information being representative of a plurality of orientations each associated with a different light-emitting device of the plurality of light-emitting devices, a ray being casted in the second environment from the second reference position according to each orientation, the plurality of light-emitting devices being controlled according to color data corresponding to color information associated with the at least a spatial sample determined for each ray.
[0017] In an exemplary embodiment, the plurality of orientations being associated with a different light-emitting device of only a part of the plurality of lightemitting devices, each light-emitting device of the part of the plurality of lightemitting devices being controlled according to color data corresponding to color information associated with the at least a spatial sample intersected by the ray casted according to the orientation associated with each light-emitting device, the other light-emitting devices of the plurality of light-emitting devices being controlled according to the color data.
[0018] In an exemplary embodiment, the first and second environment each corresponding to a three-dimensional environment, called 3D environment, the first information comprises a first angle representative of latitude and a second angle representative of longitude.
[0019] In an exemplary embodiment, the first environment corresponding to a three- dimensional environment, called 3D environment and the second environment corresponding to a two-dimensional environment, called 2D environment, the first information comprises a first angle representative of latitude, said at least a sample being further determined according to a second information representative of a determined distance from the second reference position.
[0020] In an exemplary embodiment, the determined distance is determined according to a distance between the first reference position and the lighting device in the first environment.
[0021] In an exemplary embodiment, the first reference position belongs to a set of positions comprising: - a position of a display device in the first environment, the display device being configured to display images of the second environment;
[0022] - a position of a rendering device in the first environment, the rendering device being configured to control the displaying of the images of the second environment on the display device; and
[0023] - a position of a user in the first environment, the user watching the display device.
[0024] In an exemplary embodiment, said second reference position belongs to a set of positions comprising:
[0025] - a position of an avatar comprised in the second environment, the avatar being associated with said user;
[0026] - a position associated with a point of view according to which each image of the second environment is rendered.
[0027] In an exemplary embodiment, when a single spatial sample is intersected by the ray, the color data corresponds to color information associated with the single spatial sample.
[0028] In another exemplary embodiment, when a plurality of spatial samples is intersected by the ray, the color data corresponds to an average of color information associated with the plurality of spatial samples.
[0029] In another exemplary embodiment, the first data is received wirelessly from the lighting device.
[0030] In an additional exemplary embodiment, the method further comprises receiving second data representative of lighting characteristics of the lighting device, the color data being further determined according to the lighting characteristics.
[0031] In an additional exemplary embodiment, the method further comprises transmitting the color data to the lighting device.
[0032] According to a second aspect of the present application, there is provided a device or an apparatus comprising a memory associated with at least a processor configured to implement the method in accordance with the first aspect of the present application.
[0033] According to a third aspect of the present application, there is provided a computer program product including instructions which, when the program is executed by one or more processors, causes the one or more processors to carry out a method according to the first aspect of the present application.
[0034] According to a fourth aspect of the present application, there is provided a non- transitory storage medium carrying instructions of program code for executing a method according to the first aspect of the present application.
[0035] The specific nature of at least one of the exemplary embodiments as well as other objects, advantages, features and uses of said at least one of exemplary embodiments will become evident from the following description of examples taken in conjunction with the accompanying drawings.
[0036] BRIEF DESCRIPTION OF THE DRAWINGS
[0037] Reference will now be made, by way of example, to the accompanying drawings which show exemplary embodiments of the present application, and in which:
[0038] Figures 1 and 2 each shows a schematic representation of a three- dimensional (3D) environment comprising one or more lighting devices, in accordance with exemplary embodiments;
[0039] Figure 3 shows a spherical coordinate system associated with the first 3D environment of figures 1 and 2, in accordance with an exemplary embodiment;
[0040] Figure 4 shows a three-dimensional (3D) environment of a video content, in accordance with at least one exemplary embodiment;
[0041] Figure 5 shows a two-dimensional (2D) environment of a video content, in accordance with at least one exemplary embodiment;
[0042] Figure 6 shows a schematic block diagram of steps of a method of controlling a lighting device, in accordance with exemplary embodiments; Figure 7 illustrates a schematic block diagram of an example of a system or apparatus in which various aspects and exemplary embodiments are implemented.
[0043] Similar reference numerals may have been used in different figures to denote similar components.
[0044] DESCRIPTION OF EXEMPLARY EMBODIMENTS
[0045] At least one of the exemplary embodiments is described more fully hereinafter with reference to the accompanying figures, in which examples of at least one of the exemplary embodiments are illustrated. An exemplary embodiment may, however, be embodied in many alternate forms and should not be construed as limited to the examples set forth herein. Accordingly, it should be understood that there is no intent to limit exemplary embodiments to the particular forms disclosed. On the contrary, the disclosure is intended to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the present application.
[0046] Exemplary embodiments described hereinafter may be combined with each other or each of the exemplary embodiment may be individually implemented, e.g., as an alternative embodiment.
[0047] At least one of the aspects generally relates to a method and apparatus of controlling one or more lighting devices to render a lighting effect. The apparatus may correspond to a control device configured to determine lighting data, e.g., color data, to control the one or more lighting devices. A lighting device corresponds to any device configured to emit light (lamp, light bulb, strip of LEDs or any peripheral or device incorporating one or more light sources, e.g., RGB light sources (for example arrangement of LEDs)) that is configured to be controlled by the control device to render a lighting effect. The lighting effect may be dynamic, i.e., the lighting effect may vary over time and / or space.
[0048] The method comprises receiving first data representative of the position of each lighting device (the lighting device hereinafter) in a first environment, e.g., a real 3D environment. The position of the lighting device is defined in the space of the first environment, for example with respect to a first reference position corresponding to a specific or determined position in the first environment (e.g., the position of the control device, of a user, of a determined object of the first environment, etc.). The first data may be stored in a memory of the lighting device and received wirelessly from the lighting device or input via a peripheral device associated with the control device, e.g., a keyboard or a tactile interface of a screen of the control device or any device communicatively coupled to the control device.
[0049] A first information representative of an orientation of the lighting device is determined with respect to the first reference position in the space of the first environment according to the first data and second data representative of the position of the first reference position. The first information may comprise angles values, e.g., angles values with respect to 2 axis of a spherical coordinate system associated with the first environment or the first information may comprise a 3-uplet of values defining a vector.
[0050] The first information is used in a second environment corresponding to a two- dimensional (2D) or three-dimensional (3D) environment of a CGI virtual scene (of a video game for example) or of a real scene acquired with camera(s) (of a movie for example) to determine or select one or more spatial samples generated when rendering images of the second environment, e.g., for display on a display device. To reach that aim, a ray is casted from a second reference position in the second environment according to the first information, i.e., according to the direction associated with the lighting device, the one or more determined or selected spatial samples corresponding to the sample(s) intersected by the ray. Color information, e.g., RGB values, is associated with each spatial sample of the second environment.
[0051] The lighting device is controlled according to color data corresponding to the color information associated with the one or more spatial samples intersected by the ray in the second environment. A lighting effect corresponds to any generation of light through the one or more lighting devices, the lighting effect varying for example over time according to the color information associated with the spatial sample(s) intersected by the ray, according to the content displayed on the display device.
[0052] At least another one of the aspects generally relates to a method and apparatus of rendering light by one or more lighting devices according to the lighting control parameters (color data) obtained while rendering a video content (images) of the second environment, the video content varying over time, e.g., according to the move of an avatar in the second environment (controlled by a user playing a video game for example) or according to the different scenes associated with the second environment (in case of a movie displayed on the display device for example).
[0053] Figures 1 and 2 each illustrates a schematic representation of a first environment 10 in accordance with at least one exemplary embodiment.
[0054] Figure 1 shows the first environment 10 that comprises a first lighting device 1 1 and a second lighting device 12 according to an exemplary embodiment. The first lighting device 1 1 and the second lighting device 12 may correspond to wall-mounted lights or ceiling-mounted lamps. According to other examples, the first lighting device 1 1 and the second lighting device 12 correspond to floor-standing lamps or desk lamps.
[0055] Figure 2 shows the same first environment 10 that comprises a lighting device 21 according to another exemplary embodiment. The lighting device 21 corresponds to a LED strip, e.g., a RGB (Red, Green, Blue) LED strip, arranged on a wall of the first environment 10.
[0056] Naturally, the number and types of lighting devices 1 1 , 12, 21 are not limited to the examples of figures 1 and 2 but extends to any number and any type of lighting devices.
[0057] The lighting device(s) comprised in the first environment 10 may correspond to a dynamic lighting device corresponding to: - a device whose primary function is to illuminate the first environment 10 or part of the first environment 10, e.g., a connected lamp; or
[0058] - a device configured to implement several functions, including the ability to reproduce a lighting device through the one or more light sources it embeds, e.g.: a display device 15 configured to display images from image data received from the control device 10, the display device 15 comprising light sources for example arranged on the back of the display device 15 and / or around the perimeter of the screen of the display device 15; a keyboard, e.g., a LED backlit keyboard; a mat such as a gaming mat or a mouse mat, the mat comprising for example a RGB (Red, Green, Blue) LED strip arranged around its perimeter; or a mouse, e.g., a mouse comprising RGB LEDs.
[0059] A dynamic lighting device such as the lighting devices 1 1 , 12 and 21 corresponds to a device comprising one or more light sources, such as LED (light-emitting diode), to generate light according to lighting data transmitted by a control device to each of the lighting devices of the first environment communicatively coupled to the control device.
[0060] Naturally, the number of dynamic lighting devices is not limited to 2 or 1 as illustrated on figures 1 and 2, respectively, but extends to any number greater than or equal to 1 , for example 1 , 2, 3, 4, 5, 6, 10, 15, 20 or more.
[0061] The type of the lighting device does not limit either to the aforementioned examples but extends to any device or apparatus comprising one or more lightemitting devices or light sources and configured to be controlled by a control device to emit light. A lighting device may further correspond to a palm rest, a chair, a desk, a XR headset, headphones, a bracelet, a head and / or lumbar support device or chair, i.e., any device configured to render light including any personal computer peripheral device comprising one or more light-emitting devices such as a keyboard, a mouse, a mousemat, headphone holder, earbuds, monitor or screen device, . The control device may also comprise one or more light sources and be part of the set of lighting devices comprised in the first environment 10 and controlled by the control device.
[0062] Some of the lighting devices correspond to interface peripheral devices of the control device, e.g., a screen or display device, a keyboard and / or a mouse may correspond to interface peripheral devices of the control device.
[0063] The control device and the lighting devices of the first environment 10 communicatively coupled to the control device are connected to each other through wired connection (e.g., via USB (Universal Serial Bus) input terminal, via a phone connector (also known as phone jack, audio jack, headphone jack or jack plug) input terminal or via an HDMI input terminal) or through wireless connection (e.g., Bluetooth® or Wifi®).
[0064] A control device corresponds to any processing device configured to determine or generate lighting data to be transmitted to the lighting devices 1 1 , 12, 21 to control the lighting devices 1 1 , 12, 21 for the rendering of light or of a lighting effect in the first environment 10.
[0065] According to the exemplary embodiments of figures 1 and 2, the control device corresponds to a laptop 14. According to other examples, the control device may correspond to a personal computer, game consol, set-top box, mobile communication device such as a smartphone or a tablet. The control device may be configured to run one or more software applications.
[0066] The first environment 10 corresponds to any 3D environment, for example a building, a house, a floor of a house or a building, a room, etc.
[0067] According to the non-limitative example of Figures 1 and 2, the first environment 10 corresponds to a living room comprising a couch 13, a coffee table on which the laptop rests, a display device 15 such as a TV screen mounted on a wall facing the couch 13 and the lighting devices 1 1 , 12 mounted on the wall facing the couch 13 or mounted on the ceiling close to the wall on which the TV screen is mounted. A process of controlling one or more lighting devices in the first environment 10 is implemented by one or more processors of a control device such as the laptop 14 or any data processing device such as a personal computer, a game consol, a set-top box, a rendering engine, a chroma engine, a mobile communication device such as a smartphone or a tablet.
[0068] The process will be described with reference to the control of one lighting device such as the lighting device 1 1 , 12 or 21 but applies similarly to the control of each lighting device of a set of lighting devices comprising a plurality of lighting devices.
[0069] Data exchange between the control device and the lighting device 1 1 , 12, 21 is performed in the framework of a communication protocol, data being exchanged by way of APIs (Application Program Interface) that may be implemented both in the control device and in each of the lighting devices of the first environment 10 communicatively coupled to the control device.
[0070] In a first operation of the process, first data representative of the position of the lighting device 1 1 , 12, 21 in the first environment is received.
[0071] The first data is for example received from a memory of the control device. According to this example, the position of the lighting data may be input via a user interface, e.g., by a user consuming a video content. The video content may correspond to a video game run on the laptop 14 or on a game console acting as the control device, or to a movie displayed on the TV screen, the TV screen being for example wirelessly controlled by the laptop 14 or by a set-top box connected to the TV screen through a wired connection such as HDMI connector for example, the laptop 14 or the set-top box acting as the control device.
[0072] According to another example, the first data is stored in a memory of a data processing device such as a smartphone, a tablet, a server communicatively coupled to the control device.
[0073] According to a further example, the first data is received by the lighting device 1 1 , 12, 21 . According to this example, the first data is stored in a memory of the lighting device 1 1 , 12, 21 . The first data is for example received automatically by the control device from the lighting device 11 , 12, 21 when connecting the lighting device 11 , 12, 21 to the control device. The connection of the lighting device 1 1 , 12, 21 to the control device triggers the transmission of the first data by the lighting device 1 1 , 12, 21 to the control device through the connection that may correspond to a wireless connection, e.g., Bluetooth® or Wifi®. When connecting the lighting device 11 , 12, 21 to the control device, the control device and the lighting device 1 1 , 12, 21 automatically initiate a process for communicating the first data through dedicated API(s). This process corresponds for example to a so- called “plug and play” (PnP) process, the control device and the lighting device 1 1 , 12, 21 corresponding to PnP devices.
[0074] According to a variant, the control device transmits a request to the lighting device 1 1 , 12, 21 to obtain the first data from the lighting device 1 1 , 12, 21 receiving this request, the transmission of the request occurring after having connected the lighting device 1 1 , 12, 21 to the control device. According to this variant, the lighting device 11 , 12, 21 transmits the first data stored in its memory to the control device in response to the received request.
[0075] According to a non-limitative exemplary embodiment, the first data is generated during a mapping of the first environment 10 comprising the lighting device(s) 1 1 , 12 or 21 and / or during a setup operation of the first environment 10.
[0076] The mapping comprises associating position information with the lighting devices 1 1 , 12, 21 arranged in the first environment 10, or at least with the lighting devices to be controlled by the control device. The associating is for example performed for each lighting device that the user performing the mapping wants to be used for rendering light or lighting effect(s) in the first environment. The mapping may be performed for a plurality of first environments, for example in every room of a house or building where the user is likely to consume video content, or in every room comprising one or more connected lighting devices controllable by the control device. The mapping is for example performed via a mapping application running on a processing device (such as a mobile phone, tablet or laptop) or on the control device. To reach that aim, the first data to be associated with each lighting devices is input to the mapping application by the user through one or more user interfaces such as for example a tactile interface associated with the screen of the processing device or through a peripheral device such as a keyboard and / or a mouse coupled to the control device, when applicable.
[0077] The mapping information may be stored in a file on the processing device and / or control device and the file can be edited by the user, e.g., to update the mapping information through specific application(s).
[0078] The first data comprises coordinates of the position of the lighting device 1 1 , 12, 21 , the coordinates being defined in a coordinate system associated with the first environment 10.
[0079] The coordinate system corresponds for example to a 3D cartesian coordinate system or to a spherical coordinate system represented with orthonormal axis or vectors Xi, Yi and Zi, the origin of the coordinate system corresponding to a determined point in the first environment 10, e.g., a corner of a rectangular parallelepiped when the first environment 10 is represented with a bounding box or a reference point of the first environment, called first reference point ‘Oi’.
[0080] According to the example of figures 1 and 2, the first reference point Oi corresponds to a point of the couch 13, for example the middle of the couch seat. The middle of the couch seat represents the place where the user consuming the video content displayed on the laptop 14 or on the TV screen seats.
[0081] According to other examples, the first reference point corresponds to:
[0082] - a position of a display device, e.g., the screen of the laptop 14 or the TV screen, in the first environment 10, the display device being configured to display images of a second environment, e.g., a virtual environment of a video game for example or a real environment acquired with an acquisition device such as a camera; or - a position of a rendering device in the first environment 10, the rendering device being configured to control the displaying of the images of the second environment on the display device, the rendering device corresponding for example to or being part of the control device; or
[0083] - a position of the user watching at the display device in the first environment, e.g., while playing a video game or watching a movie.
[0084] When the coordinate system corresponds to a 3D cartesian coordinate system, the first data comprises the coordinates of a point representing the position of the lighting device 1 1 , 12, 21 in the first environment, the first data corresponding to a triplet of values (x,y,z).
[0085] When the coordinate system corresponds to a spherical coordinate system as illustrated on Figure 3 according to an exemplary embodiment, the first data comprises a first angle representative of latitude (corresponding to angle a (latitude angle) or to angle 0 (colatitude angle)) and a second angle representative of longitude, noted (p. In a variant, the first data may further comprise a value representative of the distance between the origin of the spherical coordinate system and the point representing the position of the lighting device 1 1 , 12, 21 .
[0086] The first data may for example be received by the control device with additional data, which may be stored in the memory of lighting device 1 1 , 12, 21 and transmitted by the lighting devices 1 1 , 12, 21 to the control device. The additional data comprises for example one or more of the following data, in any possible combination:
[0087] - data representative of a position of each light-emitting device, e.g., a LED, of a set of light-emitting devices comprised in the lighting device 1 1 , 12, 21 , when applicable; the data indicates the relative position of the one or more light-emitting devices arranged on the lighting device, e.g., in a local space associated with the lighting device 1 1 , 12, 21 ; and / or
[0088] - data representative of the number of light-emitting devices comprised in the lighting device 11 , 12, 21 ; and / or - data representative of the number of the light-emitting devices comprised in the lighting device 1 1 , 12, 21 ; and / or
[0089] - data representative of the type and / or lighting characteristics of the light-emitting devices comprised in the lighting device 1 1 , 12, 21 ; and / or
[0090] - data representative of the type, characteristics and / or configuration of the lighting device 11 , 12, 21 , e.g., the dimensions of the lighting device.
[0091] The first data and additional data are formatted in a determined format and transmitted according to a determined standard.
[0092] In a second operation of the process, a first information representative of an orientation of the lighting device 1 1 , 12, 21 with respect to the first reference position Oi in the first environment 10 is determined or computed according to the first data and second data representative of the position of the first reference position Oi in the first environment 10.
[0093] The orientation of the lighting device 1 1 relative to Oi is illustrated with the straight line 101 passing through the first reference position Oi and the point in the first environment 10 representing the position of the lighting device 1 1 in the first environment 10.
[0094] The orientation of the lighting device 12 relative to Oi is illustrated with the straight line 102 passing through the first reference position Oi and the point in the first environment 10 representing the position of the lighting device 12 in the first environment 10.
[0095] The orientation of the lighting device 21 relative to Oi is illustrated with the straight line 201 passing through the first reference position Oi and the point in the first environment 10 representing the position of the lighting device 21 in the first environment 10.
[0096] According to the example of Figure 2, the lighting device 21 corresponds to a LED strip comprising a plurality of n LEDs 21 1 , 212, ..., 21 n, n being an integer, the n LEDs being arranged one after the other to form a line. According to the example of Figure 2, the point representing the position of the lighting device 21 in the first environment 10 corresponds to the first LED 21 1 of the line. In a variant, a plurality of orientations is determined for the lighting device 21 , for example for every LED 21 1 , 212, ... , 21 n of the plurality of n LEDS or for some of the LEDs, e.g., for each LED every 10, 20 or 30 LEDs depending on the number of LEDs included in the LED strip, or for the first LED 21 1 (at a first extremity of the LED strip) and for the last LED 21 n (at a second extremity of the LED strip). The number of orientations determined for a LED strip depends for example on the number of LEDs. The plurality of orientation may be determined according to at least a part of the additional data received with the first data, for example according to the data representative of the number of light-emitting devices comprised in the LED strip and / or according to the data representative of the relative position of the LEDs in relation to each other or in relation to the first LED 21 1 .
[0097] For example, as illustrated on Figure 2, 3 orientations are determined for the LED strip, a first orientation associated with the first LED 211 and illustrated with the straight line 201 , a second orientation associated with the LED 215 (e.g., corresponding to the middle LED) and illustrated with the straight line 202 and a third orientation associated with the last LED 21 n and illustrated with the straight line 203.
[0098] The first information comprises for example a first value of the first angle a or 0 representative of latitude and a second value of the second angle cp representative of longitude. In a variant, the first information further comprises a value representative of the distance between the first reference position Oi and the point representing the position of the lighting device in the first environment.
[0099] Figure 3 illustrates the orientation of a lighting device corresponding to the lighting device 1 1 of figure 1 according to an exemplary embodiment. The orientation is represented in a spherical coordinate system (Xi,Yi,Zi) having as origin Oi. The lighting device 11 is represented with a point P.
[0100] The position of the point P in the spherical coordinate system is defined with (0,cp,p), 0 corresponding to the colatitude angle (angle between the axis Zi and the line (O-iP)), (p corresponding to the longitude angle (angle between the axis Xi and the line (OiH) where H 31 corresponding to the projection of point P according to the axis Zi onto the plane defined by axis Xi and Y-i) and p corresponding to the distance between Oi and P.
[0101] In a variant, the position of the point P in the spherical coordinate system is defined with (a,cp,p), a corresponding to the latitude angle (angle between the line (OiH) and the line (O-iP)), (p corresponding to the longitude angle (angle between the axis Xi and the line (OiH)) and p corresponding to the distance between Oi and P.
[0102] According to a variant, when the coordinate system corresponds to a 3D cartesian system, the first information comprises 3 values defining the direction vector of the line (O-iP), 1 value for each axis Xi, Yi and Zi.
[0103] The first information may be converted or transformed from a representation in the spherical coordinate system to a representation in the cartesian coordinate system, or inversely from the representation in the cartesian coordinate system to the representation in the spherical coordinate system, as known to those skilled in the art.
[0104] The first information may for example be stored in a memory of the controlled device, for example temporarily in a buffer for a future use.
[0105] In a third operation of the process, one or more spatial samples of a set of spatial samples comprised in a second environment is or are determined. The one or more samples corresponds to the sample(s) intersected by a ray casted in the second environment from a second reference position in the second environment according to the first information.
[0106] Color information is advantageously associated with each spatial sample of the set of spatial samples comprised in the second environment. The color information may correspond to color values associated with each channel of a color space like RGB (Red, Green, Blue) color space or CMYK (Cyan Magenta Yellow, Black) color space, a color value being for example coded in 8 or 10 bits for each color of the color space. According to variants, the color information may further comprise an information representative of color temperature, defined in Kelvin (K) and / or an information representative of brightness or luminous intensity, for example defined in candela (cd).
[0107] The second environment corresponds to a two-dimension (2D) environment or to a 3D environment. The second environment is represented by a set of spatial samples generated over time according to various points of view for example.
[0108] The second environment may be representative of a real environment, of a virtual environment, e.g., a CGI-generated environment, or of a mix of real and virtual environments.
[0109] Images of a real second environment may be acquired with one or more image acquisition devices (such as a camera or a plenoptic camera) according to different points of view. The sequence of the acquired images may form a movie that is displayed on the TV screen and watched by a user sitting on the couch 13.
[0110] Images of a virtual environment may be generated at run time, for example according to instructions received from peripheral device(s) connected to the control device or rendering device rendering the images. The images are generated, for example, as a function of an avatar's (or any object of the virtual environment) movement in the virtual environment, according to commands received from the user controlling the avatar's movement. The generated images correspond to the avatar's point of view in the virtual environment. The second environment may correspond to a virtual environment of a video game played by the user.
[0111] A spatial sample corresponds for example to a pixel or to a block of pixel. According to another example, a spatial sample corresponds to a fragment of the second environment (the scene). A fragment corresponds to a surface element associated with a point of the scene, the size of which being equal to the size of a pixel of the frame buffer that can be displayed to represent the scene on a display device such as the TV screen or the screen of the laptop 14. A fragment of the scene becomes a pixel in the frame buffer if the fragment is visible from the current point of view associated with the image to be rendered and displayed.
[0112] A fragment is defined by a set of data grouping together one or several of the following data items: the rasterization position of the fragment, the depth of the fragment at the viewpoint, attributes (for example the colour, the texture coordinates), the alpha channel representative of the translucent character of the fragment.
[0113] To determine whether a fragment of the scene is visible from the point of view of the frame buffer, a well-known z-buffer method (also known as z-buffer algorithm) is advantageously used in association with one or more depth maps, in compliance with methods well known by persons skilled in the art.
[0114] A ray is casted in the second environment from the second reference position for each lighting device 1 1 , 12, 21 of the first environment 10 according to the first information associated with said each lighting device 1 1 , 12, 21 .
[0115] The second reference position in the second environment corresponds to:
[0116] - a position of an avatar comprised in the second environment, the avatar being associated with the user and the movement of the avatar in the second environment being controlled by the user; or
[0117] - a position associated with the one or more points of view according to which the images of the second environment are rendered.
[0118] The second reference position may thus vary over time, for example according to the move of the avatar in the second environment. In a variant, the second reference position may be fixed and may correspond to a determined position in the second environment, corresponding for example to the center of the display device onto which images of the second environment are displayed.
[0119] Figure 4 illustrates a second environment 40 corresponding to a 3D environment in accordance with at least one exemplary embodiment. The second environment 40 corresponds for example to a 3D CGI environment comprising an avatar 43, for example in the context of a video game played by a user sitting on the couch 13 and controlling the avatar 43 in the second environment 40.
[0120] A 3D coordinate system (X2, Y2, Z2) is associated with the second environment, the 3D coordinate system corresponding to a spherical coordinate system or to a cartesian coordinate system. The type of the 3D coordinate system of the second environment 40 is for example identical to the type of the 3D coordinate system of the first environment 10 (for example a spherical coordinate system). The 3D coordinate system (X2, Y2, Z2) is oriented in front of the avatar 43, i.e., in the direction in which the avatar observes the second environment 40 (or the scene), i.e., in the direction of avatar movement.
[0121] A first ray 401 is generated, casted or traced in the second environment 40 using the first information associated with the lighting device 1 1 of figure 1 . The first ray 401 is traced from the second reference position corresponding to a point representing the position of the avatar 43 in the second environment 40 (the point corresponding for example to the center of the head) in a direction defined with the first information.
[0122] One or more spatial samples 41 of the second environment intersected by the first ray 401 is or are selected, the one or more spatial samples corresponding to the fragment(s) of the second environment 40 that will be rendered as pixels of an image to be displayed on the display device watched by the user at the rendering stage.
[0123] A single spatial sample 41 is selected when the first ray 401 intersects this single spatial sample 41 . A plurality of spatial samples is selected when the first ray 401 intersects this plurality of spatial samples. In a variant, a plurality of spatial samples is selected when the first ray 401 intersects a single spatial sample, the plurality of spatial samples 41 comprising the single spatial sample intersected by the first ray 401 and the spatial samples comprised in the neighborhood of this single spatial sample, e.g., the spatial samples adjacent to the single spatial sample.
[0124] A second ray 402 is generated, casted or traced in the second environment 40 using the first information associated with the lighting device 12 of figure 1 , like the first ray 401 . One or more spatial samples 42 of the second environment intersected by the second ray 402 is or are selected, the one or more spatial samples corresponding to the fragment(s) of the second environment 40 that will be rendered as pixels of an image to be displayed on the display device watched by the user at the rendering stage.
[0125] Figure 5 illustrates a second environment 50 corresponding to a 2D environment in accordance with at least one exemplary embodiment.
[0126] The 2D coordinate system corresponds to a 2D polar coordinate system or to a 2D cartesian coordinate system having 2 orthonormal axis X3 and Y3.
[0127] A first ray 501 and a second ray 502 are generated, casted or traced in the second environment 50 using the first information associated with respectively the lighting device 11 and the lighting device 12. The first ray 501 and the second ray 502 are each traced from the second reference position 53 corresponding for example to the point of view of the image representative of the second environment to be rendered or to a determined point of the second environment 50, e.g., a point in the second environment corresponding to the center of the image to be rendered or a point associated with an object of the second environment, the movement of which in the second environment being controlled by the user (e.g., in the case of a 2D video game).
[0128] The first information obtained from the first environment 10 is transformed or converted into the 2D coordinate system (Xs.Ys), e.g., by projecting the first and second angles when the first information is defined in a spherical coordinate system. According to this example, the orientation of the first ray 501 and second ray 502 is obtained using the angle representative of latitude.
[0129] The one or more spatial samples 51 selected using the first ray 501 corresponds to the one or more spatial samples intersected by the first ray 501 and located at a determined distance from the second reference position 53 along the first ray 501. In a same way, the one or more spatial samples 52 selected using the second ray 502 corresponds to the one or more spatial samples intersected by the second ray 502 and located at a determined distance from the second reference position 53 along the second ray 502.
[0130] The determined distance may correspond to a fixed distance that is for example a function of the size of the image representative of the second environment 50. In a variant, the determined distance is a function of the distance comprised between the first reference position Oi and the point representing the considered lighting device 1 1 or 12. According to this variant, the determined distance is obtained by scaling the distance comprised between the first reference position Oi and the point representing the considered lighting device 1 1 or 12 according to the dimensions of the first and second environments or of the images generated to represent the first and second environments.
[0131] In a fourth operation of the process, the lighting device 1 1 , 12, 21 is controlled according to color data corresponding to the color information associated with the one or more spatial sample determined at the third operation for the considered lighting device 1 1 , 12, 21 .
[0132] The lighting device 1 1 is controlled with color data determined from the color information associated with the one or more spatial samples 41 or 51 .
[0133] The lighting device 12 is controlled with color data determined from the color information associated with the one or more spatial samples 42 or 52.
[0134] When a single spatial sample is determined, the lighting device is controlled with the color information associated with this single spatial sample. When a plurality of spatial samples is determined, the lighting device is controlled with the plurality of spatial samples, the color data corresponding for example to the average of the color information associated with the plurality of spatial samples.
[0135] The control device determines the color data from the color information and transmits the color data to the considered lighting device 1 1 , 12, 21 , wirelessly or via a wired connection depending on the type of the connection between the control device and the lighting device 1 1 , 12, 21 .
[0136] When the lighting device corresponds to a LED strip (i.e., a lighting device comprising a plurality of light-emitting devices) as illustrated on Figure 2, one or more spatial samples is determined for each orientation of the plurality of orientations determined for the LED strip, e.g., the first orientation associated with the first LED 21 1 , the second orientation associated with the middle LED 215 and the third orientation associated with the last LED 21 n. The first information is thus representative of a plurality of orientations each associated with a different light-emitting device (e.g., a LED) of the plurality of lightemitting devices comprised in the lighting device (e.g., the LED strip).
[0137] When an orientation has been determined for each LED, the color data used to control each LED is determined from the color information associated with the one or more spatial samples determined for each orientation, the plurality of light-emitting devices is thus controlled according to the color data corresponding to color information associated with the one or more spatial samples determined for each ray.
[0138] When an orientation has been determined for only a part of the LEDs, as in the example of Figure 2, the color data used to control each LED associated with an orientation, i.e., the first LED 211 , the middle LED 215 and the last LED 21 n, is determined from the color information obtained from the one or more spatial samples determined using each orientation. The other LEDs, i.e., the LEDs for which no orientation is associated with (e.g., the LEDs 212, 213 and 214 arranged between the first LED 21 1 and the middle LED 215) are controlled using color data determined for the LEDs associated with an orientation. The plurality of orientations being associated with a different lightemitting device of only a part of the plurality of light-emitting devices comprised in the lighting device, each light-emitting device of the part of the plurality of light-emitting devices is thus controlled according to color data corresponding to color information associated with the one or more spatial samples intersected by the ray casted according to the orientation associated with each light-emitting device.
[0139] The color data for the other LEDs 212 to 214 is for example determined or computed according to the color data of the LED 21 1 , 215 surrounding the other LEDs 212 to 215. The other light-emitting devices of the plurality of lightemitting devices is thus controlled according to the color data determined for the light-emitting devices for which a ray has been casted.
[0140] The color data to control each other LED 212, 213 and 214 is determined by interpolating the color data determined for the first LED 211 and for the middle LED. The interpolation may correspond to a weighted interpolation, a first weight being applied to the color data of the first LED 21 1 and a second weight being applied to the color data of the middle LED 212. The first weight is for example a function of the distance (or of the number of LEDs) between the first LED 211 and the considered other LED 212, 213 or 214, and the second weight is for example a function of the distance (or of the number of LEDs) between the middle LED 215 and the considered other LED 212, 213 or 214.
[0141] According to another example, the same color data is determined for every other LED 212 to 214, the color data corresponding for example to the average of the color data of first LED 21 1 and the color data of the middle LED 215.
[0142] According to a further example, the LEDs of the Led strip are grouped to form a plurality of groups comprising adjacent LEDs. An orientation is determined for one LED of each group and color data is determined for this one LED as described hereinabove, this color data being then used to control every LED of the group.
[0143] According to an embodiment, the color data determined for the lighting device, and for each LED or group of LEDs of the lighting device when applicable, is further determined according to lighting characteristics of the lighting device. The lighting characteristics are for example received as additional data with the first data, as described previously. The lighting characteristics comprise for example the color or range of color that a lighting device is configured to render and / or the color temperature or range of color temperature the lighting device is configured to render.
[0144] Such a process enables to control the lighting of a space into which a user is consuming a video content by increasing the consistency between the location of the lighting devices relative to the user and corresponding parts of the video content. This enables to increase the feeling of immersion while consuming the video content.
[0145] Such a process enables a dynamic control of the lighting of every space the user is moving to while consuming the video content on a mobile device, especially when the first data is received automatically by the control device (corresponding to or implemented in the mobile device) from the lighting devices of the space the user is moving to.
[0146] Figure 6 shows a schematic block diagram of steps of a method of controlling a lighting device, in accordance with at least one exemplary embodiment.
[0147] In a first step 61 , first data representative of a position of the lighting device in a first environment is received.
[0148] In a second step 62, a first information representative of an orientation of the lighting device with respect to (or relative to) a first reference position in the first environment is determined according to the first data and second data representative of position of the first reference position.
[0149] In a third step 63, at least a spatial sample of the set of spatial samples of a second environment intersected by a ray casted in the second environment from a second reference position of the second environment is determined according to the first information, color information being associated with each spatial sample of the set of spatial samples.
[0150] In a fourth step 64, the lighting device is controlled according to color data corresponding to color information associated with the at least a spatial sample. According to exemplary embodiments, the variants and examples of operations described in relation to one of Figures 1 to 5 apply to the method steps of Figure 6.
[0151] Figure 7 shows a schematic block diagram illustrating an example of an apparatus or system 7 in which various aspects and exemplary embodiments are implemented.
[0152] System 7 may be embedded as one or more devices including the various components described below. In various embodiments, the system 7 may be configured to implement one or more of the aspects described in the present application.
[0153] Examples of equipment that may form all or part of the system 7 include personal computers, laptops, smartphones, tablet computers, digital multimedia set top boxes and their associated processing systems, display devices, light-emitting devices, servers, chroma encoders, chroma decoders, video encoders, video decoders, post-processors processing output from a chroma and / or video decoder, pre-processors providing input to chroma and / or video encoder, web servers, set-top boxes, wireless (e.g., Bluetooth®) connected wearable devices, game controller, mouse, mousepad, keyboard, palm rest, chairs, desk, XR headset, headphones, bracelet, head and / or lumbar support device or chair, any other device for processing chroma (lighting) data or signals, and / or video data or signals, or other communication devices. Elements of system 7, singly or in combination, may be embodied in a single integrated circuit (IC), multiple ICs, and / or discrete components. For example, in at least one embodiment, the processing and encoder / decoder elements of system 7 may be distributed across multiple ICs and / or discrete components. In various embodiments, the system 7 may be communicatively coupled to other similar systems, or to other electronic devices, via, for example, a communications bus or through dedicated input and / or output ports.
[0154] The system 7 may include at least one processor 71 configured to execute instructions loaded therein for implementing, for example, the various aspects described in the present application. Processor 71 may include embedded memory, input output interface, and various other circuitries as known in the art. The system 7 may include at least one memory 72 (for example a volatile memory device and / or a non-volatile memory device). System 7 may include a storage device 74, which may include non-volatile memory and / or volatile memory, including, but not limited to, Electrically Erasable Programmable Read-Only Memory (EEPROM), Read-Only Memory (ROM), Programmable Read-Only Memory (PROM), Random Access Memory (RAM), Dynamic Random-Access Memory (DRAM), Static Random-Access Memory (SRAM), flash, magnetic disk drive, and / or optical disk drive. The storage device 74 may include an internal storage device, an attached storage device, and / or a network accessible storage device, as non-limiting examples.
[0155] The system 7 may include an encoder / decoder module 73 configured, for example, to process data to provide encoded / decoded chroma (lighting) signal data and / or encoded / decoded video signal or data, and the encoder / decoder module 73 may include its own processor and memory. The encoder / decoder module 73 may represent module(s) that may be included in a device to perform the encoding and / or decoding functions. As is known, a device may include one or both of the encoding and decoding modules. Additionally, encoder / decoder module 73 may be implemented as a separate element of system 73 or may be incorporated within processor 71 as a combination of hardware and software as known to those skilled in the art.
[0156] Program code to be loaded onto processor 71 or encoder / decoder 73 to perform the various aspects described in the present application may be stored in storage device 74 and subsequently loaded onto memory 72 for execution by processor 71. In accordance with various embodiments, one or more of processor 71 , memory 72, storage device 74, and encoder / decoder module 73 may store one or more of various items during the performance of the processes described in the present application. Such stored items may include, but are not limited to, data representative of chroma / lighting content, data representative of video content, a bitstream, matrices, variables, and intermediate or final results from the processing of equations, formulas, operations, and operational logic.
[0157] In several embodiments, memory inside of the processor 71 and / or the encoder / decoder module 73 may be used to store instructions and to provide working memory for processing that may be performed during data processing, encoding or decoding.
[0158] In other embodiments, however, a memory external to the processing device (for example, the processing device may be the processor) may be used for one or more of these functions. The external memory may be the memory 72 and / or the storage device 74, for example, a dynamic volatile memory and / or a non-volatile flash memory. In at least one embodiment, a fast external dynamic volatile memory such as a RAM may be used as working memory for data processing.
[0159] The input to the elements of system 7 may be provided through various input devices as indicated in block 75. Such input devices include, but are not limited to, (i) an RF portion that may receive an RF signal transmitted, for example, over the air by a broadcaster, (ii) a Composite input terminal, (iii) a USB input terminal, (iv) a phone connector (also known as phone jack, audio jack, headphone jack or jack plug) input terminal and / or (v) an HDMI input terminal.
[0160] In various embodiments, the input devices of block 75 may have associated respective input processing elements as known in the art. For example, the RF portion may be associated with elements necessary for (i) selecting a desired frequency (also referred to as selecting a signal, or band-limiting a signal to a band of frequencies), (ii) down-converting the selected signal, (iii) band-limiting again to a narrower band of frequencies to select (for example) a signal frequency band which may be referred to as a channel in certain embodiments, (iv) demodulating the down-converted and band-limited signal, (v) performing error correction, and (vi) demultiplexing to select the desired stream of data packets. The RF portion of various embodiments may include one or more elements to perform these functions, for example, frequency selectors, signal selectors, band-limiters, channel selectors, filters, downconverters, demodulators, error correctors, and de-multiplexers. The RF portion may include a tuner that performs various of these functions, including, for example, down-converting the received signal to a lower frequency (for example, an intermediate frequency or a near-baseband frequency) or to baseband.
[0161] Various embodiments rearrange the order of the above-described (and other) elements, remove some of these elements, and / or add other elements performing similar or different functions.
[0162] Adding elements may include inserting elements in between existing elements, such as, for example, inserting amplifiers and an analog-to-digital converter. In various embodiments, the RF portion may include an antenna.
[0163] Additionally, the USB and / or HDMI terminals may include respective interface processors for connecting system 7 to other electronic devices across USB and / or HDMI connections. It is to be understood that various aspects of input processing, for example, analog to digital conversion, time domain to frequency domain conversion, down sampling, band pass or low pass filtering, Reed-Solomon error correction, may be implemented, for example, within a separate input processing IC or within processor 71 as necessary. Similarly, aspects of USB or HDMI interface processing may be implemented within separate interface ICs or within processor 71 as necessary. The processed stream may be provided to various processing elements, including, for example, processor 71 , and encoder / decoder 73 operating in combination with the memory and storage elements to process the data stream as necessary for presentation on an output device.
[0164] Various elements of system 7 may be provided within an integrated housing. Within the integrated housing, the various elements may be interconnected and transmit data therebetween using suitable connection arrangement, for example, an internal bus as known in the art, including the I2C bus, wiring, and printed circuit boards.
[0165] The system 7 may include communication interface 76 that enables communication with other devices via communication channel 760. The communication interface 76 may include, but is not limited to, a transceiver configured to transmit and to receive data over communication channel 760. The communication interface 76 may include, but is not limited to, a modem or network card and the communication channel 760 may be implemented, for example, within a wired and / or a wireless medium.
[0166] Data may be streamed to the system 7, in various embodiments, using a WiFi network such as IEEE 802.1 1 . The Wi-Fi signal of these embodiments may be received over the communications channel 760 and the communications interface 76 which are adapted for Wi-Fi communications. The communications channel 760 of these embodiments may be typically connected to an access point or router that provides access to outside networks including the Internet for allowing streaming applications and other over-the-top communications.
[0167] Other embodiments may provide streamed data to the system 7 using a set- top box or a computer that delivers the data over the HDMI connection of the block 75.
[0168] Still other embodiments may provide streamed data to the system 7 using the RF connection of the block 75.
[0169] The streamed data may be used as a way for signaling information used by the system 7. The signaling information may comprise the data encoded in a container such as a binary stream for example.
[0170] It is to be appreciated that signaling may be accomplished in a variety of ways. For example, one or more syntax elements, flags, and so forth may be used to signal information to a corresponding data processing device in various embodiments.
[0171] The system 7 may provide an output signal to various output devices, including a display 770, lighting devices or light sources 780, and other peripheral devices 790 like haptic devices / actuators.
[0172] In various embodiments, control signals may be communicated between the system 7 and the display 770, light-emitting devices or light sources 780, or other peripheral devices 790 using signaling such as AV.Link (Audio / Video Link), CEC (Consumer Electronics Control), Audio protocols, USB (Universal Serial Bus), HID (Human Interface Design) for USB, HIF UHP (Haptics Industry Forum - Universal Haptic Protocol) or other communications protocols that enable device-to-device control with or without user intervention.
[0173] The output devices may be communicatively coupled to system 7 via dedicated connections through respective interfaces 77, 78, and 79.
[0174] Alternatively, the output devices may be connected to system 7 using the communications channel 760 via the communications interface 76. The display 770, lighting devices or light sources 780 and / or peripheral devices 790 such as haptic device(s) (actuators) may be integrated in a single unit with the other components of system 7 in an electronic device such as, for example, a television.
[0175] In various embodiments, the display interface may include a display driver, such as, for example, a timing controller (T Con) chip.
[0176] The display 770, lighting devices or light sources 780 and / or peripheral devices 790 such as haptic device(s) (actuators) may alternatively be separate from one or more of the other components. In various embodiments in which the display 770, lighting devices or light sources 780 and / or peripheral devices 790 such as haptic device(s) (actuators) may be external components, the output signal may be provided via dedicated output connections, including, for example, HDMI ports, USB ports, or COMP outputs.
[0177] In Figures 1 to 7, various methods are described herein, and each of the methods includes one or more steps or actions for achieving the described method. Unless a specific order of steps or actions is required for proper operation of the method, the order and / or use of specific steps and / or actions may be modified or combined.
[0178] Some examples are described with regard to block diagrams and / or operational flowcharts. Each block represents a circuit element, module, or portion of code which includes one or more executable instructions for implementing the specified logical function(s). It should also be noted that in other implementations, the function(s) noted in the blocks may occur out of the indicated order. For example, two blocks shown in succession may, in fact, be executed substantially concurrently or the blocks may sometimes be executed in the reverse order, depending on the functionality involved.
[0179] The implementations and aspects described herein may be implemented in, for example, a method or a process, an apparatus, a computer program, a data stream, a bitstream, or a signal. Even if only discussed in the context of a single form of implementation (for example, discussed only as a method), the implementation of features discussed may also be implemented in other forms (for example, an apparatus or computer program).
[0180] The methods may be implemented in, for example, a processor, which refers to processing devices in general, including, for example, a computer, a microprocessor, an integrated circuit, or a programmable logic device. Processors also include communication devices.
[0181] Additionally, the methods may be implemented by instructions being performed by a processor, and such instructions (and / or data values produced by an implementation) may be stored on a computer readable storage medium. A computer readable storage medium may take the form of a computer readable program product embodied in one or more computer readable medium(s) and having computer readable program code embodied thereon that is executable by a computer. A computer readable storage medium as used herein may be considered a non-transitory storage medium given the inherent capability to store the information therein as well as the inherent capability to provide retrieval of the information therefrom. A computer readable storage medium may be, for example, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. It is to be appreciated that the following, while providing more specific examples of computer readable storage mediums to which the present embodiments may be applied, is merely an illustrative and not an exhaustive listing as is readily appreciated by one of ordinary skill in the art: a portable computer diskette; a hard disk; a read-only memory (ROM); an erasable programmable read-only memory (EPROM or Flash memory); a portable compact disc readonly memory (CD-ROM); an optical storage device; a magnetic storage device; or any suitable combination of the foregoing.
[0182] The instructions may form an application program tangibly embodied on a processor-readable medium.
[0183] Instructions may be, for example, in hardware, firmware, software, or a combination. Instructions may be found in, for example, an operating system, a separate application, or a combination of the two. A processor may be characterized, therefore, as, for example, both a device configured to carry out a process and a device that includes a processor-readable medium (such as a storage device) having instructions for carrying out a process. Further, a processor-readable medium may store, in addition to or in lieu of instructions, data values produced by an implementation.
[0184] An apparatus may be implemented in, for example, appropriate hardware, software, and firmware. Examples of such apparatus include personal computers, laptops, smartphones, tablet computers, digital multimedia set top boxes, digital television receivers, personal video recording systems, connected home appliances, head mounted display devices (HMD, see- through glasses), projectors (beamers), “caves” (system including multiple displays), servers, video and / or haptic and / or chroma encoders, video and / or haptic and / or chroma decoders, haptic engine, chroma engine, postprocessors processing output from a video decoder, pre-processors providing input to a video encoder, web servers, set-top boxes, wireless connected wearable haptic devices, e.g., Bluetooth® connected wearable haptic devices, game controller, mouse, mousepad, keyboard, palm rest, chairs, desk, XR headset, headphones, bracelet, head and / or lumbar support device or chair, any light source, and any other device for processing haptic data or signals representative of one or more haptic feedback or effect and / or for processing lighting / chroma data or signals representative of one or more lighting mode or effect, or other communication devices. As should be clear, the equipment may be mobile.
[0185] Computer software may be implemented by the processor 71 or by hardware, or by a combination of hardware and software. As a non-limiting example, the embodiments may be also implemented by one or more integrated circuits. The memory 72 may be of any type appropriate to the technical environment and may be implemented using any appropriate data storage technology, such as optical memory devices, magnetic memory devices, semiconductor-based memory devices, fixed memory, and removable memory, as non-limiting examples. The processor 71 may be of any type appropriate to the technical environment, and may encompass one or more of microprocessors, general purpose computers, special purpose computers, and processors based on a multi-core architecture, as non-limiting examples.
[0186] As will be evident to one of ordinary skill in the art, implementations may produce a variety of signals formatted to carry information that may be, for example, stored or transmitted. The information may include, for example, instructions for performing a method, or data produced by one of the described implementations. For example, a signal may be formatted to carry the bitstream of a described embodiment. Such a signal may be formatted, for example, as an electromagnetic wave (for example, using a radio frequency portion of spectrum) or as a baseband signal. The formatting may include, for example, encoding a data stream and modulating a carrier with the encoded data stream. The information that the signal carries may be, for example, analog or digital information. The signal may be transmitted over a variety of different wired or wireless links, as is known. The signal may be stored on a processor-readable medium.
[0187] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting. As used herein, the singular forms "a", "an", and "the" may be intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms "includes / comprises" and / or "including / comprising" when used in this specification, may specify the presence of stated, for example, features, integers, steps, operations, elements, and / or components but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof. Moreover, when an element is referred to as being "responsive" or "connected" to another element, it may be directly responsive or connected to the other element, or intervening elements may be present. In contrast, when an element is referred to as being "directly responsive" or "directly connected" to other element, there are no intervening elements present.
[0188] It is to be appreciated that the use of any of the symbol / term “ / ”, “and / or”, and “at least one of”, for example, in the cases of “A / B”, “A and / or B” and “at least one of A and B”, may be intended to encompass the selection of the first listed option (A) only, or the selection of the second listed option (B) only, or the selection of both options (A and B). As a further example, in the cases of “A, B, and / or C” and “at least one of A, B, and C”, such phrasing is intended to encompass the selection of the first listed option (A) only, or the selection of the second listed option (B) only, or the selection of the third listed option (C) only, or the selection of the first and the second listed options (A and B) only, or the selection of the first and third listed options (A and C) only, or the selection of the second and third listed options (B and C) only, or the selection of all three options (A and B and C). This may be extended, as is clear to one of ordinary skill in this and related arts, for as many items as are listed.
[0189] Various numeric values may be used in the present application. The specific values may be for example purposes and the aspects described are not limited to these specific values.
[0190] It will be understood that, although the terms first, second, etc. may be used herein to describe various elements, these elements are not limited by these terms. These terms are only used to distinguish one element from another. For example, a first element could be termed a second element, and, similarly, a second element could be termed a first element without departing from the teachings of this application. No ordering is implied between a first element and a second element.
[0191] Reference to “one exemplary embodiment” or “an exemplary embodiment” or “one implementation” or “an implementation”, as well as other variations thereof, is frequently used to convey that a particular feature, structure, characteristic, and so forth (described in connection with the embodiment / implementation) is included in at least one embodiment / implementation. Thus, the appearances of the phrase “in one exemplary embodiment” or “in an exemplary embodiment” or “in one implementation” or “in an implementation”, as well any other variations, appearing in various places throughout this application are not necessarily all referring to the same embodiment.
[0192] Similarly, reference herein to “in accordance with an exemplary embodiment I example I implementation” or “in an exemplary embodiment I example I implementation”, as well as other variations thereof, is frequently used to convey that a particular feature, structure, or characteristic (described in connection with the exemplary embodiment I example I implementation) may be included in at least one exemplary embodiment I example I implementation. Thus, the appearances of the expression “in accordance with an exemplary embodiment I example I implementation” or “in an exemplary embodiment I example I implementation” in various places in the specification are not necessarily all referring to the same exemplary embodiment I example I implementation, nor are separate or alternative exemplary embodiment I examples I implementation necessarily mutually exclusive of other exemplary embodiments I examples I implementation.
[0193] Reference numerals appearing in the claims are by way of illustration only and shall have no limiting effect on the scope of the claims. Although not explicitly described, the present embodiments I examples and variants may be employed in any combination or sub-combination.
[0194] When a figure is presented as a flow diagram, it should be understood that it also provides a block diagram of a corresponding apparatus. Similarly, when a figure is presented as a block diagram, it should be understood that it also provides a flow diagram of a corresponding method / process.
[0195] Although some of the diagrams include arrows on communication paths to show a primary direction of communication, it is to be understood that communication may occur in the opposite direction to the depicted arrows.
[0196] Additionally, this application may refer to “obtaining” various pieces of information. Obtaining the information may include one or more of, for example, receiving the information, determining the information, estimating the information, calculating the information, or retrieving the information from memory.
[0197] Further, this application may refer to “accessing” various pieces of information. Accessing the information may include one or more of, for example, receiving the information, retrieving the information (for example, from memory), storing the information, moving the information, copying the information, calculating the information, determining the information, or estimating the information.
[0198] Additionally, this application may refer to “receiving” various pieces of information. Receiving is, as with “accessing”, intended to be a broad term. Receiving the information may include one or more of, for example, accessing the information, or retrieving the information (for example, from memory). Further, “receiving” is typically involved, in one way or another, during operations such as, for example, storing the information, processing the information, transmitting the information, moving the information, copying the information, erasing the information, calculating the information, determining the information, or estimating the information.
[0199] A number of implementations have been described. Nevertheless, it will be understood that various modifications may be made. For example, elements of different implementations may be combined, supplemented, modified, or removed to produce other implementations. Additionally, one of ordinary skill will understand that other structures and processes may be substituted for those disclosed and the resulting implementations will perform at least substantially the same function(s), in at least substantially the same way(s), to achieve at least substantially the same result(s) as the implementations disclosed. Accordingly, these and other implementations are contemplated by this application.
Claims
1. 39CLAIMS1 . A method of controlling a lighting device (1 1 , 12; 21 ), the method comprising:- receiving (61 ) first data representative of a position of the lighting device (1 1 , 12; 21 ) in a first environment (10);- determining (62) first information representative of orientation of said lighting device (1 1 , 12; 21 ) with respect to a first reference position (O-i) in said first environment (10) according to said first data and second data representative of position of said first reference position (Oi);- determining (63), in a second environment (40) comprising a set of spatial samples, at least a spatial sample (41 , 42) of said set of spatial samples intersected by at least a ray (401 , 402) casted in said second environment (40) from a second reference position (43) of said second environment (40) according to said first information, color information being associated with each spatial sample of said set of spatial samples; and- controlling (64) said lighting device (1 1 , 12; 21 ) according to color data corresponding to color information associated with said at least a spatial sample (41 , 42).
2. The method according to claim 1 , wherein said lighting device (21 ) comprising a plurality of light-emitting devices (21 1 to 21 n), said first information being representative of a plurality of orientations (201 , 202, 203) each associated with a different light-emitting device (21 1 , 215, 21 n) of said plurality of light-emitting devices (21 1 to 21 n), a ray being casted in said second environment (40) from the second reference position (43) according to said each orientation of the plurality of orientations (201 , 202, 203), the plurality of light-emitting devices (21 1 to 21 n) being controlled according to color data corresponding to color information associated with the at least a spatial sample determined for each ray.
3. The method according to claim 2, wherein said plurality of orientations being associated with a different light-emitting device of only a part of said plurality of light-emitting devices, each light-emitting device (21 1 , 215, 21 n) of said part40 of the plurality of light-emitting devices (21 1 to 21 n) being controlled according to color data corresponding to color information associated with the at least a spatial sample intersected by the ray casted according to the orientation associated with said each light-emitting device (21 1 , 215, 21 n), the other lightemitting devices (212, 213, 214) of said plurality of light-emitting devices (211 to 21 n) being controlled according to said color data.
4. The method according to any one of claims 1 to 3, wherein, said first and second environment (10; 40) each corresponding to a three-dimensional environment, called 3D environment, said first information comprises a first angle representative of latitude and a second angle representative of longitude.
5. The method according to any one of claims 1 to 3, wherein, said first environment (10) corresponding to a three-dimensional environment, called 3D environment and said second environment corresponding to a two- dimensional environment, called 2D environment, said first information comprises a first angle representative of latitude, said at least a sample being further determined according to a second information representative of a determined distance from said second reference position.
6. The method according to claim 5, wherein said determined distance is determined according to a distance between said first reference position (O-i) and said lighting device (1 1 , 12) in said first environment.
7. The method according to any one of claims 1 to 6, wherein said first reference position (Oi) belongs to a set of positions comprising:- a position of a display device in said first environment (10), said display device being configured to display images of said second environment (40);- a position of a rendering device in said first environment (10), said rendering device being configured to control the displaying of said images of said second environment (40) on said display device; and- a position of a user in said first environment (10), said user watching said display device.
418. The method according to claim 7, wherein said second reference position (43) belongs to a set of positions comprising:- a position of an avatar comprised in the second environment (40), said avatar being associated with said user;- a position associated with a point of view according to which each image of the second environment (40) is rendered.
9. The method according to any one of claims 1 to 8, wherein when a single spatial sample (41 , 42) is intersected by said ray (401 , 402), said color data corresponds to color information associated with said single spatial sample (41 , 42).
10. The method according to any one of claims 1 to 8, wherein when a plurality of spatial samples is intersected by said ray, said color data corresponds to an average of color information associated with said plurality of spatial samples.1 1 . The method according to any one of claims 1 to 9, wherein said first data is received wirelessly from said lighting device (1 1 , 12).
12. The method according to any one of claims 1 to 11 , further comprising receiving data representative of lighting characteristics of said lighting device (1 1 , 12), said color data being further determined according to said lighting characteristics.
13. The method according to any one of claims 1 to 12, further comprising transmitting said color data to said lighting device (1 1 , 12).
14. A device (7) comprising a memory (72) associated with at least a processor (71 ) configured to implement the method according to any one of claims 1 to 13.
15. A computer program product comprising instructions of program code for executing the method according to any one of claims 1 to 13, when said program is executed on a computer.
Citation Information
Patent Citations
Method and apparatus for generating a depth cue
US20150208054A1
Spatial light effects based on lamp location
US20180249554A1
Methods and Systems for an Automated Design, Fulfillment, Deployment and Operation Platform for Lighting Installations
US20200057828A1