EP4349002A1 - Method for processing pixel data, corresponding device and program - Google Patents

Method for processing pixel data, corresponding device and program

Info

Publication number
EP4349002A1
EP4349002A1 EP22734211.0A EP22734211A EP4349002A1 EP 4349002 A1 EP4349002 A1 EP 4349002A1 EP 22734211 A EP22734211 A EP 22734211A EP 4349002 A1 EP4349002 A1 EP 4349002A1
Authority
EP
European Patent Office
Prior art keywords
image
images
sensors
exposure time
time
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.)
Pending
Application number
EP22734211.0A
Other languages
German (de)
French (fr)
Inventor
Dominique GINHAC
Barthélémy HEYRMAN
Steven TEL
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.)
Universite de Bourgogne
Original Assignee
Universite de Bourgogne
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 Universite de Bourgogne filed Critical Universite de Bourgogne
Publication of EP4349002A1 publication Critical patent/EP4349002A1/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/70Circuitry for compensating brightness variation in the scene
    • H04N23/741Circuitry for compensating brightness variation in the scene by increasing the dynamic range of the image compared to the dynamic range of the electronic image sensors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/45Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from two or more image sensors being of different type or operating in different modes, e.g. with a CMOS sensor for moving images in combination with a charge-coupled device [CCD] for still images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/70Circuitry for compensating brightness variation in the scene
    • H04N23/73Circuitry for compensating brightness variation in the scene by influencing the exposure time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/50Control of the SSIS exposure
    • H04N25/57Control of the dynamic range
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/50Control of the SSIS exposure
    • H04N25/57Control of the dynamic range
    • H04N25/58Control of the dynamic range involving two or more exposures
    • H04N25/581Control of the dynamic range involving two or more exposures acquired simultaneously
    • H04N25/583Control of the dynamic range involving two or more exposures acquired simultaneously with different integration times

Definitions

  • the field of the disclosure is that of the acquisition of images by means of capture devices such as mobile communication terminals, digital cameras, cameras, microscopes, etc. More specifically, the disclosure relates to a method for acquiring images with high dynamic range, or HDR (for “High Dynamic Range”).
  • HDR for “High Dynamic Range”.
  • HDR images high dynamic range images
  • LDR Low Dynamic Range
  • the scene to be rendered is captured several times, by the same capture device, with different exposure times: short exposure times make it possible not to saturate the areas of the image with high luminosity, and long exposure times make it possible to to detect a useful signal in low light areas.
  • the different LDR images obtained are then processed to extract from each of them the best represented parts of the image, and these different parts are combined to construct an HDR image of the scene. It is generally accepted that this method of generating HDR images is costly in terms of time and the number of exposures to be made.
  • Non-destructive Read Out the electrical charges accumulated by the photoelectric conversion elements of the sensor can be read, without it being necessary to reset them: it is therefore possible, during the time the sensor is exposed, to take several readings pixel signals, allowing electrical charges to continue to build up as the sensor is exposed to light.
  • the exploitation of this non-destructive reading mode which makes it possible to carry out several readings of the signals associated with the pixels of the sensor during a single exposure time, offers an interesting solution, both to the problem of the cost in time of the previous methods of generation of HDR images, only to the problem of the appearance of artefacts. Indeed, it is possible to generate a high dynamic image of a scene from several images obtained by several successive non-destructive readings of the sensor during the same exposure time.
  • patent document US 7,868,938 proposes a new type of image capture device, in which a first reader operates in destructive reading mode to read the charges accumulated by the photoelectric conversion elements of the sensor, by reinitializing the signals of the pixels after each read, at the end of a standard exposure time, and a second reader operates in non-destructive read mode to obtain multiple NDRO images associated with different short exposure times, i.e. more shorter than the standard exposure time.
  • the different NDRO images associated with short exposure times are used to predict whether some pixels of the image obtained by the first reader will be saturated, due to an overexposure of the corresponding parts of the scene to be photographed during the exposure time. standard exposure.
  • an HDR image is generated in which the saturated pixels of the image obtained by the first reader at the standard exposure time are replaced by the corresponding unsaturated pixels extracted from an NDRO image associated with a time d shorter exposure.
  • This solution partially solves exposure problems, especially in the sense that overexposed pixels can be replaced by less exposed pixels, and the dynamic range of the resulting image is somewhat extended. But this method remains too computationally intensive, does not correct the problems of underexposure and above all requires at least two readings: one destructive and the other non-destructive. Furthermore, the artifact presence problem is not resolved.
  • the document FR3062009A1 proposes a technique which would make it possible to generate a less expensive wide dynamic range image, both in time and in computing power and which would have the advantage of to be adaptive.
  • it is proposed to carry out several non-destructive readings of a single and same sensor, and to adapt the replacement of the pixels of a current image by pixels of a following image according to quality criteria.
  • This method is actually more efficient in terms of dynamic range width.
  • this method does not make it possible to carry out a restitution of the flow in real time and all the same implements relatively significant resources, in particular at the level of the calculations of signal/noise ratios for the determination of the exposure times.
  • this method requires the use of a sensor allowing non-destructive reading, a sensor which is not widely available on the market and which is considerably more expensive.
  • the method implemented in the patent document FR3062009A1 requires the use of an NSC1201 sensor from New Imaging Technologies, and is therefore reserved for particular uses.
  • the disclosure responds to this need by proposing a method for generating a video stream comprising a set of high dynamic range images, called FIDR video stream, from a plurality of standard dynamic range images obtained by reading at least two image sensors each having an image production rate, each sensor comprising a plurality of pixels arranged in matrix form, and each associated with a photoelectric conversion element for converting received light into electrical charges and accumulating said electrical charges during a light exposure time, the method comprising a plurality of high dynamic range image creation iterations comprising determining exposure times, reading optical sensors and combining data from of these sensors in an iterative mode of operation involving temporary memory zone management.
  • a method for generating a video stream comprising a set of high dynamic range images, called HDR video stream, from a plurality of standard dynamic range images obtained by reading at least two image sensors each having an image production rate, each sensor comprising a plurality of pixels arranged in matrix form, and each associated with a photoelectric conversion element for converting received light into electrical charges and accumulating said electrical charges for a time of exposure to light,.
  • HDR video stream a set of high dynamic range images
  • such a method comprises a plurality of iterations for creating high dynamic range images comprising: determining at least three sensor exposure times comprising: a short exposure time TC, a long exposure TL and an intermediate exposure time T1, such that TC ⁇ TI ⁇ TL; at least one iteration of a sensor reading, among said at least two sensors, delivering at least three successive images, as a function of said at least three sensor exposure times; a recording, within at least three dedicated memory areas, of said at least three successive images, each memory area being dedicated to one sensor exposure time among said at least three sensor exposure times; generation of a high dynamic range image from information extracted from said at least three successive images recorded respectively within said at least three dedicated memory zones; adding said high dynamic range image to said HDR video stream.
  • said determination of said at least three sensor exposure times comprises a determination of the intermediate exposure time T1 as a function of said short exposure time TC and of the long exposure time TL.
  • the short exposure time is calculated so that it produces, when reading a sensor among said at least two sensors, an image with range standard dynamic whose percentage of pixels saturated in white is lower than a predetermined threshold.
  • the long exposure time is calculated so that it produces, when reading a sensor among said at least two sensors, a standard dynamic range image of which a percentage of pixels saturated in black is below a predetermined threshold.
  • the intermediate exposure time is obtained as the square root of the product of the short exposure time and the long exposure time.
  • the exposure time the long exposure time is less than the rate of production of images of at least of said sensors among said at least two sensors.
  • the generation of a high dynamic range image of a current iteration of creation of a high dynamic range image is implemented on the basis of information extracted from at least three successive images currents is implemented parallel to said at least three iterations of a reading of sensors, among said at least two sensors, delivering at least three successive images of the following iteration of creation of a high dynamic range image.
  • the frame rate of the HDR stream is at least equal to the frame rate of at least one image sensor among the said at least two image sensors.
  • the disclosure takes the form of a device, or a system, for generating a video stream comprising a set of high dynamic range images, called HDR video stream, from of a plurality of standard dynamic range images obtained by reading from at least two image sensors each having an image production rate, each sensor comprising a plurality of pixels arranged in matrix form, and each associated with a photoelectric conversion element making it possible to convert a light received into electric charges and to accumulate the said electric charges during a time of exposure to the light, characterized in that it comprises a calculation unit adapted to the implementation of the steps of the method HDR video stream generation according to the method previously described.
  • the various steps of the methods according to the disclosure are implemented by one or more software or computer programs, comprising software instructions intended to be executed by a data processor of an execution device according to the disclosure and being designed to control the execution of the various steps of the methods, implemented at the level of a communication terminal, of an electronic execution device and/or of a control device, within the framework of a distribution of the processing to be performed and determined by a scripted source code and/or a compiled code.
  • the disclosure also covers programs capable of being executed by a computer or by a data processor, these programs comprising instructions for controlling the execution of the steps of the methods as mentioned above.
  • a program may use any programming language, and be in the form of source code, object code, or intermediate code between source code and object code, such as in partially compiled form, or in any other desirable form.
  • the disclosure also relates to an information medium readable by a data processor, and comprising instructions of a program as mentioned above.
  • the information carrier can be any entity or device capable of storing the program.
  • the medium may include a storage medium, such as a ROM, for example a CD ROM or a microelectronic circuit ROM, or else a magnetic recording medium, for example a mobile medium (memory card) or a hard drive or SSD.
  • the information medium can be a transmissible medium such as an electrical or optical signal, which can be conveyed via an electrical or optical cable, by radio or by other means.
  • the program according to the disclosure can in particular be downloaded from a network of the Internet type.
  • the information carrier may be an integrated circuit in which the program is incorporated, the circuit being adapted to execute or to be used in the execution of the method in question.
  • the disclosure is implemented by means of software and/or hardware components.
  • the term "module” may correspond in this document to a software component, a hardware component or a set of hardware and software components.
  • a software component corresponds to one or more computer programs, one or more sub-programs of a program, or more generally to any element of a program or software capable of implementing a function or a set of functions, as described below for the module concerned.
  • Such a software component is executed by a data processor of a physical entity (terminal, server, gateway, set-top-box, router, etc.) and is likely to access the hardware resources of this physical entity (memories, recording media, communication bus, electronic input/output cards, user interfaces, etc.).
  • a hardware component corresponds to any element of a hardware assembly (or hardware) able to implement a function or a set of functions, according to what is described below for the module concerned. It can be a hardware component that can be programmed or has an integrated processor for executing software, for example an integrated circuit, a smart card, a memory card, an electronic card for executing firmware ( firmware), etc
  • FIG. 1 figure 1 schematically describes the method implemented
  • FIG. 2 describes two situations for processing pixel data from the sensors to produce an HDR stream with a rate equivalent to the rate of the SDR sensors;
  • FIG. 3 illustrates an architecture of a device capable of implementing a method which is the subject of the disclosure;
  • FIG. 4 figure 4 illustrates the implementation in parallel of the method that is the subject of the disclosure.
  • the method of producing an HDR video stream of the disclosure comprises combining, from at least three SDR video streams, the images composing these SDR streams. Indeed, since an SDR camera is not able to capture the full dynamic range of the scene, it inevitably loses detail in areas that are dimly lit (pixels saturated in black) and brightly lit (pixels saturated in white). The data thus acquired are then more difficult to use by artificial vision applications. There is therefore a strong need for wide dynamic range cameras that can be used in various application fields (e.g. video surveillance, autonomous vehicle or industrial vision), at a lower cost than existing solutions and which can produce a Real-time HDR.
  • various application fields e.g. video surveillance, autonomous vehicle or industrial vision
  • the method developed by the inventors aims to respond to this problem. It is more particularly based on the use of standard, inexpensive sensors, and on the implementation of suitable management of a memory for temporary storage of pixel data from these sensors, this memory playing a pivotal role synchronization between real-time acquisition and production, also real-time.
  • at least two sensors are used in parallel, these two sensors making it possible to generate, simultaneously, two images, which are recorded within a temporary storage space, comprising at least three storage locations.
  • the generation of the images and the recording thereof within the temporary storage space are carried out at a minimum at the speed of generation of the images originating from the sensors.
  • the plurality of sensors is embedded within a plurality of cameras (a sensor within a camera).
  • these cameras are for example all of the same type.
  • the cameras are for example configured to produce a stream of images at 60 images/second. In doing so, each image produced by a camera is exposed for a maximum time (ie integration time) before the sensor is read, by destructive reading.
  • each image produced by a camera is exposed for a maximum time (ie integration time), before the sensor is read, by destructive reading.
  • the integration time is directly related to the brightness of the scene and can be less than a millisecond for sufficiently bright scenes.
  • the reading time is related to the sensor reading circuit technology.
  • T 1/60 th of a second.
  • the addition of the integration and reading time ⁇ l/ 60th of a second and a waiting time occurs (up to max l/60th of a second).
  • the integration time is too long then we are obliged to reduce the reading speed and we go to 1/30 th of a second for example so as not to truncate the acquisitions. So in the end, the sensor can have a speed of l/60 th of a second and consequently, to preserve the rate, the integration time is between 0 and (l/60 th of a second - reading_time). The same logic applies for sensors at 1/30 th of a second.
  • the image production speed determines a maximum exposure time of each image before being produced.
  • One objective of the proposed method being to deliver an HDR stream which is produced at the same speed as that of the cameras, it is therefore necessary to produce HDR images at the speed at which the images are produced by the cameras: the time of maximum exposure of the images is therefore lower than the speed of production of these images by the sensor.
  • the exposure time of each image is configured throughout the execution of the HDR stream production method to ensure that it matches the exposure time. needed for each image.
  • the method implemented comprises a plurality of iterations, overall, for the creation of high dynamic range images comprising: a determination (D1) of at least three exposure times of sensors comprising: a short exposure time TC, a long exposure time TL and an intermediate exposure time T1, such that TC ⁇ TI ⁇ TL; at least one iteration of a reading (D2) of sensors, among said at least two sensors, delivering at least three successive images (IC, II, IL), as a function of said at least three exposure times (TC, T1, TL) of sensors; the number of iterations of this step (D2) depends on the number of sensors available: two sensors for three images implies at least two iterations, three sensors for three images implies one iteration for each sensor; other configurations are explained below; a recording (D3), within at least three dedicated memory areas (ZM#1, ZM#2, ZM#3), of said at least three successive images (IC, II, IL), each memory area being dedicated to a sensor exposure time among said at least
  • the method can be implemented so that the method being implemented so that at any instant an image acquired at short time (IC), an image acquired at intermediate time (II) and an image acquired at long time ( IL) are respectively present within said at least three dedicated memory zones (ZM#1, ZM#2, ZM#3).
  • the method can be implemented via two processes operating in parallel: a production process, comprising the iterations of steps D1 to D3, which ensure continuous production of images in the dedicated memory zones and a generation process stream which indifferently and continuously uses the images present in the dedicated memory areas to implement the iterations of steps D4 and D5.
  • step D2 For example by carrying out a different number of iterations in step D2: instead of three iterations, only two captures can be carried out (one capture on each sensor), allowing to fill the memory zones corresponding to each of the two captures (for example ZM#1, ZM#2), then at the following global iteration, again only two captures are carried out making it possible to fill the memory zones corresponding to each of the two captures (for example ZM#2, ZM#3).
  • Other modes of implementation can also be envisaged depending on the number of cameras available in particular, as explained below.
  • the system for implementing this combination technique comprises at least two cameras, each camera being equipped with a sensor capable of capturing a scene at a given speed and resolution.
  • the system includes a processing unit, which is configured to extract, from these at least two cameras, the at least three SDR video streams.
  • the processing unit also comprises at least three memory zones, intended to receive at least three different images, each image coming from one of the three SDR video streams.
  • the processing unit performs a combination of the three images of the three different memory areas to produce an HDR image from the three SDR images of the three memory areas.
  • Each of the three images recorded in the three different memory areas comes from a different exposure time of a camera sensor.
  • dl when two cameras are used, one first image 11 is obtained for an exposure time dl, a first image 12 is obtained for an exposure time d2 and a third image 13 is obtained for an exposure time d3, so that dl ⁇ d2 ⁇ d3.
  • d3 it is ensured that d3 is lower than the image production rate of the cameras. For example, if the camera produces 60 images/second, it is ensured that: dl ⁇ d2 ⁇ d3 “—s.
  • the proposed production method makes it possible to obtain at least three images from the same scene to be captured and to provide three streams, which are processed in real-time to deliver a single HDR video stream.
  • two cameras is also possible with three or more cameras, as will be described below.
  • the principle of the proposed method being to have, at each instant, within the three memory zones, an image (one image per memory zone), each of these three images having been captured with a different exposure time (a "short” time, a "long” time and an "intermediate” time, which is determined from the "short” time and the "long” time).
  • At least two ways of determining the exposure times by performing a calculation of short times and long times to minimize the black and white saturations and then by determining an intermediate time (for example in the form sqrt(TC*TL)); or by performing a calculation of the intermediate time with for example the "self-exposure" of the camera or by another self-exposure method to be implemented and then "empirical" determination of the TC (short times) and TL (long times ) by removing/adding one or more EVs (“exposure values”).
  • the exposure times of each of the images are determined at least partially at each capture iteration.
  • “short”, “long” and “intermediate” exposure times are set, an image is obtained by at least two cameras at each of these times (“short” , “long” and “intermediate") and recorded in the three memory areas: a first memory area for the image captured at the "short” exposure time, a first memory area for the image captured at the time d "intermediate” exposure and a third first memory area for the image captured at the “long” exposure time.
  • These three images are processed to provide an HDR image and this HDR image is added to the HDR stream.
  • the values of the acquisition times are estimated at each new acquisition from statistical analyzes carried out on the previous acquisitions. For three acquisitions, an estimate is made: the short time is estimated by minimizing the number of pixels saturated in white ( ⁇ 10% for example); the long time is estimated by minimizing the number of pixels saturated in black ( ⁇ 10% for example).
  • the intermediate exposure time is then estimated by calculation: it can for example be a simple calculation: square root of the product of the long time and the short time.
  • the long and short times are estimated based on several factors, including that of the frame rate of the HDR stream.
  • the creation of an HDR video stream requires continuous adaptation to variations in scene brightness that need to be quickly assessed and taken into account. Therefore, the prior techniques in which the best images are selected from a plurality of available images (as in the patent document FR3062009) are not applicable to the creation of an HDR video stream, since they require the availability of 'an excess number of images, on which the selection of the images to be kept takes place.
  • a rapid evaluation of short and long exposure times is carried out.
  • the step of evaluating these exposure times is based on the histograms of the images IC (short exposure time) and IL (long exposure time) previously acquired.
  • the histograms make it possible to have a precise estimate of the distribution of the pixels. If the number of pixels saturated in white (pixels with a value greater than 240 for 8-bit images for example) of the IC image is too large (more than 10 to 15% for example), then the exposure time of the The IC image at the next iteration should be decreased to be able to capture more information in brightly lit areas.
  • the exposure time can be increased to avoid too great a difference with the intermediate image, which would cause an information “hole” in the dynamic range.
  • the exposure time of the IL image at the next iteration should be increased.
  • the exposure time of the IL image at the next iteration must be reduced.
  • Variations in exposure times from one iteration to another can be expressed in the form of exposure value (EV): an increase (respectively decrease) of one unit of exposure index (1 EV) results in a multiplication (respectively division) by two of the exposure time. If the number of saturated pixels is very high, it is possible to increase or decrease by 2EV (a factor of 4 on the exposure time) and on the contrary, if you want to refine the number of saturated pixels around chosen thresholds, it is possible to limit the variations to 1/2 EV (one half), or even 1/3 EV (one third).
  • the long exposure time is adjusted according to the number of cameras (and therefore of sensors) used to supply the three memory zones. For example, if six sensors are available at 1/30 sec, the acquisitions of which are time-shifted, it is possible to increase the output rate.
  • the principle being that as soon as we have three images, we can do the processing in parallel with the other acquisitions.
  • the operational implementation conditions determine the strategy to adopt, in particular according to the cost of high-performance sensors and having a better acquisition speed (but more expensive) vs. a greater number of sensors (four, five or six) but individually less expensive.
  • Each processing follows an identical implementation (pixel registration, combination of SDR images) and identical processing times are illustrated for simplicity.
  • the times t1, t2 and t3 represent the maximum frame rate of SDR cameras (for example 60 imgs/sec, 30 imgs/sec, etc.).
  • an HDR image is obtained from the first iteration, at the end of the time period from 0 to t1, and so on.
  • an HDR image is only obtained from time t'2, then t'3 and so on. So there is a slight lag when producing the first HDR image. This lag at start-up ultimately makes it possible to take advantage of a longer time to perform the HDR image creation processing without reducing the image production rate.
  • the offset between t1 and t'1 corresponds to the HDR image processing time which initially exceeds the image production rate of the camera (ie “frame rate”).
  • Such an HDR stream acquisition device also called an HDR camera, comprises an acquisition subassembly (SSACQ) which firstly comprises N sensors (Cl, . . . CN).
  • the sensors are connected to an acquisition module (MACQ) comprising two sub-modules: an exposure time programming sub-module (CtrIEC), which is used to set the exposure time of each sensor and a acquisition (AcQ) itself which is in charge of reading, for each sensor, the matrix of pixels of this sensor and of transmitting, to the storage unit management module (MMU), sets of pixel data acquired.
  • MACQ acquisition module
  • CtrIEC exposure time programming sub-module
  • AcQ acquisition
  • MMU storage unit management module
  • the acquisition sub-module can program the sensor(s), launch the acquisition and then recover the image thus acquired by the corresponding sensor.
  • the storage unit management module receives the sets of pixel data from the acquisition module.
  • Each set of pixel data relates to an image acquired by a sensor.
  • the pixel data is provided by the acquisition module with an identifier, making it possible to determine the sensor of origin or even the exposure time or these two data at the same time.
  • the storage unit management module (MMU) stores the obtained pixel data sets in the memory areas (ZM1, ..., ZMN) according to the exposure time, the source sensor or these two information combined . More particularly, regardless of the number of sensors, the inventors have developed a specific memory management device which makes it possible to permanently have at least three images stored in the memory, each of them having a short, intermediate or long exposure.
  • image 1 (short time) is acquired in memory 1.
  • Image 2 (intermediate time) in memory 2
  • image 3 (long time) in memory 2.
  • the MMU module At the next iteration, for the storage of image 4 (short time), the MMU module overwrites the oldest image (image 1 - short time).
  • image 5 (intermediate time), it is image 2 that is overwritten.
  • the MMU module reads back the images in order to feed the processing sub-assembly (SSTRT) (see below).
  • SSTRT processing sub-assembly
  • the MMU module is implemented to synchronize the different acquisitions made in parallel. At each new acquisition, at least one of the three memories is refreshed with a new image, so that as in the previous case, the HDR generation is carried out at the acquisition speed.
  • the inventors have chosen to work in real time on the flow of data acquired by the sensors.
  • the processing operations carried out can be carried out in the acquisition stream, that is to say simultaneously with the reading of the new image and the rereading of the images already recorded.
  • the new image acquired by the sensor is transferred from the sensor to the MM U line by line.
  • the SSTRT processing module is capable of processing in parallel all the pixels of the row read with the pixels of the corresponding rows in the two other stored images.
  • the processing time for each pixel is much lower than the rate for supplying a complete line of pixels, which makes it possible to produce a new line of HDR pixels for each new line of pixels acquired.
  • the HDR stream acquisition device also includes a processing subassembly (SSTRT).
  • This processing sub-assembly performs the processing of the images recorded in the memory zones, in a continuous manner, at the theoretical speed of capture of the frames by the sensors (e.g. 60images/sec, 30images/sec, etc.), in order to produce an HDR stream having the same rate as the production rate of the sensors.
  • This processing subassembly comprises, in this example embodiment, a registration module (DEG), the function of which is to carry out a possible registration ("deghosting") of pixels corresponding to moving objects, when such objects exist in the scene to be captured.
  • the registration module (DEG) uses the N (eg three) acquired images to estimate the movement of the objects within these N images. This estimate is made for all the pixels. There is necessarily more movement in the case of acquisition with two sensors since the acquisitions are made sequentially (generally speaking, when one wishes to obtain n acquisitions and one only has at most n- 1 sensors, there are sequential acquisitions). In the multi-sensor case (more than two), movements are minimized (mainly motion blur, increasing with exposure time) due to simultaneous acquisition.
  • the N sets of raw pixels are transmitted directly to the HDR creation module (HDRC).
  • the HDR creation module uses the N streams in parallel to evaluate the HDR value of each of the pixels.
  • the method used uses the “Debevec and Malik” algorithm, which is adapted to the device so that it is more efficient in terms of processing time.
  • the Debevec method is based on the fact that a pixel of a visual scene has a constant irradiance value and that it is possible to estimate this irradiance from the values of the pixels obtained with different acquisition times and the transfer curve of the camera used.
  • the mathematical equations of Debevec's method require calculating the logarithm of the inverse of the camera's transfer function. According to the disclosure, in a real-time context, for reasons of efficiency, all the values of this logarithm have been precalculated for all possible pixel values (between 0 and 255 for an 8-bit sensor, between 0 and 1023 for a 10-bit sensor) and stored in a memory of the system, the calculation then being limited to a simple re-reading of a memory cell. Such an implementation makes it possible to ensure real-time processing of streams.
  • On-screen display (using an AFF display module);
  • Raw output (to a communication network, using a suitable ETH module).
  • the global algorithms use a processing common to all the pixels, which simplifies their implementation in real time but to the detriment of the overall quality of the result obtained.
  • the inventors have selected an algorithm of the type described in Duan et al (2010), which they have adapted to the implementation conditions previously described.
  • an Ethernet network controller allowing output of uncompressed HDR streams at the speed at which they are produced is implemented.
  • Such a controller makes it possible in particular to be able to evaluate the quality of the production algorithms of the HDR stream with metrics.
  • FIG. 4 illustrates another example of implementation, in which the pivot function of the memory areas is diverted to produce an HDR stream at a higher rate substantially close to that of the sensor of the SDR camera.
  • the memory zones storing the different images are used in a desynchronized manner, according to the programming carried out on the exposure times of the camera by the exposure time programming sub-module (CtrIEC) which has been presented previously. This technique can also be used with two cameras, as explained previously.
  • a single sensor (a single sensor) is used to produce three SDR streams, each stream having a speed of 20 images per second (ie 60 frames per second divided by three). Each exposure of each image is therefore less than 1/ 60th of a second.
  • an HDR video comprising at least 60 images per second is produced.
  • the images are recorded in the memory zone and the pixel registration and HDR image combination processing is carried out in real time as the images are read in the zones.
  • ZM#1 to ZM#3 memories It should be noted that this mode of use of the memory zone pivot function is well suited to the implementation of the production processing of an HDR stream in a use case where a single and unique SDR sensor is present for perform flow sensor
  • an image l[l] at short time is captured by the sensor of the SSACQ acquisition subassembly. This image is stored in the ZM#1 memory area by the MMU module.
  • an image I [2] at intermediate time is captured by the sensor. This image is stored in the memory area
  • This image is stored in memory area ZM#3.
  • the three memory zones each having an image (short time, intermediate time and long time), the processing subassembly recovers these three images in memory and performs the conversion into an HDR image (IHDR[123]).
  • the first HDR image is stored in memory area ZM#3.
  • the sensor of the SSACQ acquisition subassembly performs a capture of a new image l[4], at short time, which is stored in the memory area ZM#1 by the MMU module.
  • the three memory zones having once again each an image (short time I [4], intermediate time I [2] and long time I [3]), the processing subassembly recovers these three images in memory and again performs conversion to HDR image (IHDR[423]).
  • the second HDR image was therefore obtained by recording “at 1/ 60th of a second.
  • the sensor of the SSACQ acquisition subassembly performs a capture of a new image l[5], at the intermediate time, which is stored in the memory zone ZM#2 by the module MMU.
  • the three memory zones having once again each an image (short time l[4], intermediate time I [5] and long time l[3]), the processing subassembly recovers these three images in memory and again performs conversion to HDR image (IHDR[453]).
  • the third HDR image was therefore again obtained by recording “at 1/ 60th of a second.
  • the sensor of the SSACQ acquisition subassembly performs a capture of a new image l[6], at long time, which is stored in the memory zone ZM#2 by the module MMU.
  • the three memory zones having once again each an image (short time I [4], intermediate time I [5] and long time I [6]), the processing subassembly recovers these three images in memory and again performs conversion to HDR image (IHDR[456]).
  • the third HDR image was therefore again obtained by recording “at 1/ 60th of a second. This process is continued throughout the process of capturing and transforming into an HDR stream and it does deliver an HDR stream at 60 frames per second.
  • a problem that may arise is the presence of artifact. It is therefore often necessary to perform pixel registration, which is not the case or less the case when two or more sensors are used.
  • At least two identical sensors are used to implement the technique described. These at least two sensors, although identical, are each programmed to operate at different capture speeds. More particularly, it was explained above that the exposure time programming sub-module (CtrIEC) performs programming of the maximum exposure time of the sensors to obtain a short time, a long time and an intermediate depending on the long time. These exposure times are lower (if not much lower) than the production rate of the camera. For example, in the case of a production rate of 120 images per second, the short time can be 1/500 th of a second, the intermediate time 1/260 th of a second and the long time 1/140 th of a second. second).
  • CtrIEC exposure time programming sub-module
  • the at least two sensors are configured so that they produce SDR images at different production rates. More particularly, one of the sensors is configured to produce images at the rate of 120 images per second, while the other sensor is configured to produce images at the rate of 60 images per second. The second sensor produces images at a lower speed, but benefits from a longer exposure time.
  • the counterpart is that it can then more efficiently produce images in which the quantity of pixels saturated in black is less than the predetermined value (for example 10%).
  • the predetermined value for example 10%
  • the advantage of this solution is that there are fewer pixel registration processings due to the presence of artefacts.
  • the advantage also is to be able to use only two sensors: the sensor operating at a rate of 120 images per second makes it possible to perform two captures during the long-time capture time; the first sensor obtains the image at short time and the image at intermediate time while the second sensor obtains the image at long time.
  • the processing subassembly When the three images are present in the three areas of memory considered, these are obtained and processed by the processing subassembly to produce a single HDR image, according to one or other of the situations in Figure 4.
  • the second type of HDR stream is clocked at 120 frames per second, that is to say the "highest” value possible, by setting the production rate of the sensor configured to be the fastest. In which case, the method as described in FIG. 4 is implemented. Each new image obtained by the sensor whose production rate is 120 images per second is used immediately to calculate a new HDR image. In this situation, a common sensor image clocked at 60 frames per second will be used to produce two HDR flow sensor images.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Studio Devices (AREA)
  • Transforming Light Signals Into Electric Signals (AREA)

Abstract

The invention relates to a method for generating a video stream comprising a set of high dynamic range images, called HDR video stream, from a plurality of standard dynamic range images that are obtained by reading at least two image sensors each having an image production rate, each sensor comprising a plurality of pixels arranged in a matrix, and each associated with a photoelectric conversion element for converting received light into electric charge and accumulating said electric charge over a light exposure time, said method comprising a plurality of iterations of creating high dynamic range images comprising determining exposure times, reading optical sensors and combining the data from these sensors in an iterative operating mode involving temporary memory area management.

Description

DESCRIPTION DESCRIPTION
Titre : Procédé de traitement de données de pixels, dispositif et programme correspondantTitle: Pixel data processing method, device and corresponding program
1. Domaine 1. Domain
Le domaine de la divulgation est celui de l'acquisition d'images au moyen de dispositifs de captures tels que des terminaux de communication mobiles, des appareils photos numériques, des caméras, des microscopes, etc. Plus précisément, la divulgation concerne une méthode d'acquisition d'images à grande gamme dynamique, ou HDR (pour l'anglais « High Dynamic Range »). The field of the disclosure is that of the acquisition of images by means of capture devices such as mobile communication terminals, digital cameras, cameras, microscopes, etc. More specifically, the disclosure relates to a method for acquiring images with high dynamic range, or HDR (for “High Dynamic Range”).
Elle trouve des applications notamment, mais non exclusivement, dans le domaine du cinéma, de la vidéo-surveillance, du transport aérien ou routier, du contrôle non-destructif, dans le domaine médical, ou encore dans celui des sciences fondamentales comme la physique, l'astronomie, etc. It finds applications in particular, but not exclusively, in the field of cinema, video surveillance, air or road transport, non-destructive testing, in the medical field, or even in that of fundamental sciences such as physics, astronomy, etc
2. Art antérieur 2. Prior Art
Les performances de restitution des dispositifs de capture d'images existants sont, pour des raisons économiques principalement, limitées par leur gamme dynamique étroite. En conséquence, lorsqu'une scène à capturer, sous forme d'image fixe ou vidéo, présente de forts contrastes, l'image restituée par le dispositif de capture peut présenter des zones surexposées, dans lesquelles les pixels de l'image sont saturés, correspondant aux zones très lumineuses de la scène, et des zones sombres, avec peu ou pas de détails visibles, correspondant aux zones peu éclairées de la scène. The restitution performances of existing image capture devices are, mainly for economic reasons, limited by their narrow dynamic range. Consequently, when a scene to be captured, in the form of a still or video image, presents strong contrasts, the image restored by the capture device may present overexposed zones, in which the pixels of the image are saturated, corresponding to very bright areas of the scene, and dark areas, with little or no visible detail, corresponding to poorly lit areas of the scene.
Pour résoudre ce problème et générer, à partir des dispositifs de capture existants, des images à haute gamme dynamique, dites images HDR, une technique classique consiste à combiner plusieurs images traditionnelles, dites LDR (« Low Dynamic Range »), associées à des temps d'exposition différents. La scène à restituer est capturée plusieurs fois, par le même dispositif de capture, avec des temps de pose différents : des temps de pose courts permettent de ne pas saturer les zones de l'image à forte luminosité, et des temps de pose longs permettent de détecter un signal utile dans les zones à faible luminosité. Les différentes images LDR obtenues sont ensuite traitées pour extraire de chacune d'elles les parties les mieux représentées de l'image, et ces différentes parties sont combinées pour construire une image HDR de la scène. Il est généralement admis que cette méthode de génération d'images HDR est coûteuse en temps et en nombre d'expositions à réaliser. Il est donc admis qu'elle ne convient pas non plus à la génération d'une séquence vidéo HDR, en raison de sa nature non « temps réel » : les temps de traitement seraient tels qu'ils ne permettraient pas de restituer une image HDR en temps réel. En outre, il est également admis que lorsque la scène à photographier comprend des éléments mobiles, ces derniers peuvent occuper des positions différentes dans les diverses images LDR capturées, ce qui peut entraîner l'apparition d'artefacts lors de la génération d'images HDR. Ces effets fantômes peuvent être corrigés avant la reconstruction de l'image HDR, mais au prix d'un traitement électronique complexe et coûteux. Un algorithme permettant de supprimer ces artefacts est présenté, par exemple, par Mustapha Bouderbane et al. dans l'article "Ghost artifact removal for real-time HDR video génération", Compas'2016 : Parallelism/Architecture/System, Lorient, France, 5-8 juillet 2016. To solve this problem and generate, from existing capture devices, high dynamic range images, called HDR images, a classic technique consists in combining several traditional images, called LDR ("Low Dynamic Range"), associated with times different exposures. The scene to be rendered is captured several times, by the same capture device, with different exposure times: short exposure times make it possible not to saturate the areas of the image with high luminosity, and long exposure times make it possible to to detect a useful signal in low light areas. The different LDR images obtained are then processed to extract from each of them the best represented parts of the image, and these different parts are combined to construct an HDR image of the scene. It is generally accepted that this method of generating HDR images is costly in terms of time and the number of exposures to be made. It is therefore admitted that it is not suitable for the generation of an HDR video sequence either, due to its non-"real time" nature: the processing times would be such that they would not allow an HDR image to be restored. in real time. In addition, it is also accepted that when the scene to be photographed includes moving elements, these can occupy different positions in the various LDR images captured, which can lead to the appearance of artifacts during the generation of HDR images. . These ghosting effects can be corrected before the reconstruction of the HDR image, but at the cost of complex and expensive electronic processing. An algorithm making it possible to remove these artefacts is presented, for example, by Mustapha Bouderbane et al. in the article "Ghost artifact removal for real-time HDR video generation", Compas'2016: Parallelism/Architecture/System, Lorient, France, July 5-8, 2016.
Cependant, l'évolution des capteurs embarqués sur les appareils de capture d'images leur permet désormais de fonctionner en mode de lecture non destructive, ou NDRO pour « Non Destructive Read Out ». Dans ce mode de fonctionnement, les charges électriques accumulées par les éléments de conversion photoélectrique du capteur peuvent être lues, sans qu'il soit nécessaire de les réinitialiser : il est donc possible, pendant la durée d'exposition du capteur, de faire plusieurs lectures des signaux des pixels, en laissant les charges électriques continuer à s'accumuler, sous l'effet de l'exposition du capteur à la lumière. L'exploitation de ce mode de lecture non destructif, qui permet d'effectuer plusieurs lectures des signaux associés aux pixels du capteur pendant un seul temps d'exposition, offre une solution intéressante, tant au problème du coût en temps des méthodes précédentes de génération d'images HDR, qu'au problème de l'apparition d'artefacts. En effet, il est possible de générer une image à haute dynamique d'une scène à partir de plusieurs images obtenues par plusieurs lectures successives non destructives du capteur pendant le même temps d'exposition. However, the evolution of sensors embedded in image capture devices now allows them to operate in non-destructive reading mode, or NDRO for “Non Destructive Read Out”. In this operating mode, the electrical charges accumulated by the photoelectric conversion elements of the sensor can be read, without it being necessary to reset them: it is therefore possible, during the time the sensor is exposed, to take several readings pixel signals, allowing electrical charges to continue to build up as the sensor is exposed to light. The exploitation of this non-destructive reading mode, which makes it possible to carry out several readings of the signals associated with the pixels of the sensor during a single exposure time, offers an interesting solution, both to the problem of the cost in time of the previous methods of generation of HDR images, only to the problem of the appearance of artefacts. Indeed, it is possible to generate a high dynamic image of a scene from several images obtained by several successive non-destructive readings of the sensor during the same exposure time.
Ainsi, le document de brevet US 7,868,938 propose un nouveau type de dispositif de capture d'images, dans lequel un premier lecteur fonctionne en mode de lecture destructive pour lire les charges accumulées par les éléments de conversion photoélectrique du capteur, en réinitialisant les signaux des pixels après chaque lecture, à la fin d'un temps d'exposition standard, et un second lecteur fonctionne en mode de lecture non destructive pour obtenir plusieurs images NDRO associées à différents temps d'exposition courts, c'est-à-dire plus courts que le temps d'exposition standard. Les différentes images NDRO associées à des temps d'exposition courts sont utilisées pour prédire si certains pixels de l'image obtenue par le premier lecteur seront saturés, en raison d'une surexposition des parties correspondantes de la scène à photographier pendant le temps d'exposition standard. Si tel est le cas, une image HDR est générée dans laquelle les pixels saturés de l'image obtenue par le premier lecteur au temps d'exposition standard sont remplacés par les pixels non saturés correspondants extraits d'une image NDRO associée à un temps d'exposition plus court. Cette solution résout partiellement les problèmes d'exposition, notamment dans le sens ou les pixels surexposés peuvent être remplacés par des pixels moins exposés, et la gamme dynamique de l'image obtenue est un peu étendue. Mais, cette méthode reste trop gourmande en calcul, ne corrige pas les problèmes de sous exposition et surtout nécessite au moins deux lectures : une destructrice et les autres non destructrices. Par ailleurs, le problème de présence d'artefact n'est pas résolu. Thus, patent document US 7,868,938 proposes a new type of image capture device, in which a first reader operates in destructive reading mode to read the charges accumulated by the photoelectric conversion elements of the sensor, by reinitializing the signals of the pixels after each read, at the end of a standard exposure time, and a second reader operates in non-destructive read mode to obtain multiple NDRO images associated with different short exposure times, i.e. more shorter than the standard exposure time. The different NDRO images associated with short exposure times are used to predict whether some pixels of the image obtained by the first reader will be saturated, due to an overexposure of the corresponding parts of the scene to be photographed during the exposure time. standard exposure. If so, an HDR image is generated in which the saturated pixels of the image obtained by the first reader at the standard exposure time are replaced by the corresponding unsaturated pixels extracted from an NDRO image associated with a time d shorter exposure. This solution partially solves exposure problems, especially in the sense that overexposed pixels can be replaced by less exposed pixels, and the dynamic range of the resulting image is somewhat extended. But this method remains too computationally intensive, does not correct the problems of underexposure and above all requires at least two readings: one destructive and the other non-destructive. Furthermore, the artifact presence problem is not resolved.
Pour résoudre notamment les problèmes de sous exposition du document de brevet US 7,868,938, le document FR3062009A1 propose une technique qui permettrait de générer une image à large gamme dynamique moins coûteuse, tant en temps qu'en puissance de calcul et qui présenterait l'avantage d'être adaptative. Dans ce document, il est proposé de réaliser plusieurs lectures non destructrices d'un seul et même capteur, et d'adapter le remplacement des pixels d'une image courante par des pixels d'une image suivante en fonction de critères de qualité. Cette méthode est effectivement plus efficace en termes de largeur de gamme dynamique. En revanche, cette méthode ne permet pas d'effectuer une restitution du flux en temps réel et met tout de même en oeuvre des ressources relativement importantes, notamment au niveau des calculs de rapports signal/bruit pour la détermination des temps d'exposition. Par ailleurs, cette méthode nécessite l'utilisation d'un capteur permettant une lecture non destructrice, capteur qui n'est pas largement disponible sur le marché et qui est nettement plus coûteux. Par exemple, la méthode mise en oeuvre dans le document de brevet FR3062009A1 nécessite l'utilisation d'un capteur NSC1201 de New Imaging Technologies, et est donc réservé à des usages particuliers. To solve in particular the problems of underexposure of the patent document US 7,868,938, the document FR3062009A1 proposes a technique which would make it possible to generate a less expensive wide dynamic range image, both in time and in computing power and which would have the advantage of to be adaptive. In this document, it is proposed to carry out several non-destructive readings of a single and same sensor, and to adapt the replacement of the pixels of a current image by pixels of a following image according to quality criteria. This method is actually more efficient in terms of dynamic range width. On the other hand, this method does not make it possible to carry out a restitution of the flow in real time and all the same implements relatively significant resources, in particular at the level of the calculations of signal/noise ratios for the determination of the exposure times. Furthermore, this method requires the use of a sensor allowing non-destructive reading, a sensor which is not widely available on the market and which is considerably more expensive. For example, the method implemented in the patent document FR3062009A1 requires the use of an NSC1201 sensor from New Imaging Technologies, and is therefore reserved for particular uses.
3. Résumé 3. Summary
La divulgation répond à ce besoin en proposant un procédé de génération d'un flux vidéo comprenant un ensemble d'images à grande gamme dynamique, dit flux vidéo FIDR, à partir d'une pluralité d'images à gamme dynamique standard obtenues par lecture d'au moins deux capteurs d'images ayant chacun une cadence de production d'images, chaque capteur comprenant une pluralité de pixels agencés sous forme matricielle, et associés chacun à un élément de conversion photoélectrique permettant de convertir une lumière reçue en charges électriques et d'accumuler lesdites charges électriques pendant un temps d'exposition à la lumière, procédé comprenant une pluralité d'itérations de création d'images grande gamme dynamique comprenant la détermination de temps d'exposition, la lecture de capteurs optiques et la combinaison des données issues de ces capteurs dans un mode de fonctionnement itératif impliquant la gestion de zone mémoire temporaire. Plus particulièrement, il est proposé un procédé de génération d'un flux vidéo comprenant un ensemble d'images à grande gamme dynamique, dit flux vidéo HDR, à partir d'une pluralité d'images à gamme dynamique standard obtenues par lecture d'au moins deux capteurs d'images ayant chacun une cadence de production d'images, chaque capteur comprenant une pluralité de pixels agencés sous forme matricielle, et associés chacun à un élément de conversion photoélectrique permettant de convertir une lumière reçue en charges électriques et d'accumuler lesdites charges électriques pendant un temps d'exposition à la lumière,. Selon la divulgation, un tel procédé comprend une pluralité d'itérations de création d'images grande gamme dynamique comprenant : une détermination d'au moins trois temps d'exposition de capteurs comprenant : un temps d'exposition court TC, un temps d'exposition long TL et un temps d'exposition intermédiaire Tl, tels que TC<TI<TL ; au moins une itération d'une lecture de capteurs, parmi lesdits au moins deux capteurs, délivrant au moins trois images successives, en fonction desdits au moins trois temps d'exposition de capteurs ; un enregistrement, au sein d'au moins trois zones de mémoires dédiées, desdites au moins trois images successives, chaque zone de mémoire étant dédiée à un temps d'exposition de capteur parmi lesdits au moins trois temps d'exposition de capteurs ; une génération d'une image à grande gamme dynamique à partir d'informations extraites desdites au moins trois images successives enregistrées respectivement au sein desdites au moins trois zones de mémoires dédiées ; ajout de ladite image à grande gamme dynamique audit flux vidéo HDR. The disclosure responds to this need by proposing a method for generating a video stream comprising a set of high dynamic range images, called FIDR video stream, from a plurality of standard dynamic range images obtained by reading at least two image sensors each having an image production rate, each sensor comprising a plurality of pixels arranged in matrix form, and each associated with a photoelectric conversion element for converting received light into electrical charges and accumulating said electrical charges during a light exposure time, the method comprising a plurality of high dynamic range image creation iterations comprising determining exposure times, reading optical sensors and combining data from of these sensors in an iterative mode of operation involving temporary memory zone management. More particularly, a method is proposed for generating a video stream comprising a set of high dynamic range images, called HDR video stream, from a plurality of standard dynamic range images obtained by reading at least two image sensors each having an image production rate, each sensor comprising a plurality of pixels arranged in matrix form, and each associated with a photoelectric conversion element for converting received light into electrical charges and accumulating said electrical charges for a time of exposure to light,. According to the disclosure, such a method comprises a plurality of iterations for creating high dynamic range images comprising: determining at least three sensor exposure times comprising: a short exposure time TC, a long exposure TL and an intermediate exposure time T1, such that TC<TI<TL; at least one iteration of a sensor reading, among said at least two sensors, delivering at least three successive images, as a function of said at least three sensor exposure times; a recording, within at least three dedicated memory areas, of said at least three successive images, each memory area being dedicated to one sensor exposure time among said at least three sensor exposure times; generation of a high dynamic range image from information extracted from said at least three successive images recorded respectively within said at least three dedicated memory zones; adding said high dynamic range image to said HDR video stream.
Ainsi, à l'aide d'un nombre réduit de capteurs il est possible de créer efficacement un flux d'images HDR de grande qualité, et ce en conservant intact la fréquence initiale de production des images des capteurs utilisés. Thus, using a reduced number of sensors, it is possible to efficiently create a stream of high-quality HDR images, while keeping intact the initial frequency of production of the images of the sensors used.
Selon une caractéristique particulière, que ladite détermination desdits au moins trois temps d'exposition de capteurs comprend une détermination du temps d'exposition intermédiaire Tl en fonction dudit un temps d'exposition court TC et du temps d'exposition long TL. According to one particular characteristic, said determination of said at least three sensor exposure times comprises a determination of the intermediate exposure time T1 as a function of said short exposure time TC and of the long exposure time TL.
Ainsi, pour chaque image, il est possible d'affecter rapidement un temps d'exposition satisfaisant pour la production du flux HDR. Thus, for each image, it is possible to quickly assign a satisfactory exposure time for the production of the HDR stream.
Selon une caractéristique particulière, le temps d'exposition court est calculé de sorte qu'il produit, lors de la lecture d'un capteur parmi lesdits au moins deux capteurs, une image à gamme dynamique standard dont un pourcentage de pixels saturés en blancs est inférieur à un seuil prédéterminé. According to a particular characteristic, the short exposure time is calculated so that it produces, when reading a sensor among said at least two sensors, an image with range standard dynamic whose percentage of pixels saturated in white is lower than a predetermined threshold.
Selon une caractéristique particulière, le temps d'exposition long est calculé de sorte qu'il produit, lors de la lecture d'un capteur parmi lesdits au moins deux capteurs, une image à gamme dynamique standard dont un pourcentage de pixels saturés en noir est inférieur à un seuil prédéterminé. According to a particular characteristic, the long exposure time is calculated so that it produces, when reading a sensor among said at least two sensors, a standard dynamic range image of which a percentage of pixels saturated in black is below a predetermined threshold.
Selon une caractéristique particulière le temps d'exposition intermédiaire est obtenu comme la racine carrée du produit du temps d'exposition court et du temps d'exposition long. According to a particular characteristic, the intermediate exposure time is obtained as the square root of the product of the short exposure time and the long exposure time.
Selon une caractéristique particulière, le temps d'exposition le temps d'exposition long est inférieur à la cadence de production d'images d'au moins desdits capteurs parmi lesdits au moins deux capteurs. According to a particular characteristic, the exposure time the long exposure time is less than the rate of production of images of at least of said sensors among said at least two sensors.
Ainsi, on assure que la cadence d'image produite reste constante, quel que soit le temps d'exposition. Thus, it is ensured that the frame rate produced remains constant, whatever the exposure time.
Selon une caractéristique particulière, la génération d'une image à grande gamme dynamique d'une itération courante de création d'une image à grande gamme dynamique est mise en oeuvre d'une à partir d'informations extraites d'au moins trois images successives courantes est mise en oeuvre parallèlement auxdites au moins trois itérations d'une lecture de capteurs, parmi lesdits au moins deux capteurs, délivrant au moins trois images successives de l'itération suivante de création d'une image à grande gamme dynamique. According to a particular characteristic, the generation of a high dynamic range image of a current iteration of creation of a high dynamic range image is implemented on the basis of information extracted from at least three successive images currents is implemented parallel to said at least three iterations of a reading of sensors, among said at least two sensors, delivering at least three successive images of the following iteration of creation of a high dynamic range image.
Selon une caractéristique particulière, la cadence d'images du flux HDR est au moins égale à la cadence d'images d'au moins un capteur d'images parmi les dits au moins deux capteurs d'images. According to a particular characteristic, the frame rate of the HDR stream is at least equal to the frame rate of at least one image sensor among the said at least two image sensors.
Selon un exemple de réalisation particulier, la divulgation se présente sous la forme d'un dispositif, ou d'un système, de génération d'un flux vidéo comprenant un ensemble d'images à grande gamme dynamique, dit flux vidéo HDR, à partir d'une pluralité d'images à gamme dynamique standard obtenues par lecture d'au moins deux capteurs d'images ayant chacun une cadence de production d'images, chaque capteur comprenant une pluralité de pixels agencés sous forme matricielle, et associés chacun à un élément de conversion photoélectrique permettant de convertir une lumière reçue en charges électriques et d'accumuler lesdites charges électriques pendant un temps d'exposition à la lumière, caractérisé en ce que il comprend une unité de calcul adaptée à la mise en oeuvre des étapes du procédé de génération flux vidéo HDR selon le procédé précédemment décrit. Selon une implémentation préférée, les différentes étapes des procédés selon la divulgation sont mises en oeuvre par un ou plusieurs logiciels ou programmes d'ordinateur, comprenant des instructions logicielles destinées à être exécutées par un processeur de données d'un dispositif d'exécution selon la divulgation et étant conçu pour commander l'exécution des différentes étapes des procédés, mis en oeuvre au niveau d'un terminal de communication, d'un dispositif électronique d'exécution et/ou d'un dispositif de contrôle, dans le cadre d'une répartition des traitements à effectuer et déterminés par un code source scripté et/ou un code compilé. According to a particular embodiment, the disclosure takes the form of a device, or a system, for generating a video stream comprising a set of high dynamic range images, called HDR video stream, from of a plurality of standard dynamic range images obtained by reading from at least two image sensors each having an image production rate, each sensor comprising a plurality of pixels arranged in matrix form, and each associated with a photoelectric conversion element making it possible to convert a light received into electric charges and to accumulate the said electric charges during a time of exposure to the light, characterized in that it comprises a calculation unit adapted to the implementation of the steps of the method HDR video stream generation according to the method previously described. According to a preferred implementation, the various steps of the methods according to the disclosure are implemented by one or more software or computer programs, comprising software instructions intended to be executed by a data processor of an execution device according to the disclosure and being designed to control the execution of the various steps of the methods, implemented at the level of a communication terminal, of an electronic execution device and/or of a control device, within the framework of a distribution of the processing to be performed and determined by a scripted source code and/or a compiled code.
En conséquence, la divulgation vise aussi des programmes, susceptibles d'être exécutés par un ordinateur ou par un processeur de données, ces programmes comportant des instructions pour commander l'exécution des étapes des procédés tel que mentionnés ci-dessus. Consequently, the disclosure also covers programs capable of being executed by a computer or by a data processor, these programs comprising instructions for controlling the execution of the steps of the methods as mentioned above.
Un programme peut utiliser n'importe quel langage de programmation, et être sous la forme de code source, code objet, ou de code intermédiaire entre code source et code objet, tel que dans une forme partiellement compilée, ou dans n'importe quelle autre forme souhaitable. A program may use any programming language, and be in the form of source code, object code, or intermediate code between source code and object code, such as in partially compiled form, or in any other desirable form.
La divulgation vise aussi un support d'informations lisible par un processeur de données, et comportant des instructions d'un programme tel que mentionné ci-dessus. The disclosure also relates to an information medium readable by a data processor, and comprising instructions of a program as mentioned above.
Le support d'informations peut être n'importe quelle entité ou dispositif capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel qu'une ROM, par exemple un CD ROM ou une ROM de circuit microélectronique, ou encore un moyen d'enregistrement magnétique, par exemple un support mobile (carte mémoire) ou un disque dur ou un SSD. The information carrier can be any entity or device capable of storing the program. For example, the medium may include a storage medium, such as a ROM, for example a CD ROM or a microelectronic circuit ROM, or else a magnetic recording medium, for example a mobile medium (memory card) or a hard drive or SSD.
D'autre part, le support d'informations peut être un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par radio ou par d'autres moyens. Le programme selon la divulgation peut être en particulier téléchargé sur un réseau de type Internet. On the other hand, the information medium can be a transmissible medium such as an electrical or optical signal, which can be conveyed via an electrical or optical cable, by radio or by other means. The program according to the disclosure can in particular be downloaded from a network of the Internet type.
Alternativement, le support d'informations peut être un circuit intégré dans lequel le programme est incorporé, le circuit étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé en question. Alternatively, the information carrier may be an integrated circuit in which the program is incorporated, the circuit being adapted to execute or to be used in the execution of the method in question.
Selon un exemple de réalisation, la divulgation est mise en oeuvre au moyen de composants logiciels et/ou matériels. Dans cette optique, le terme "module" peut correspondre dans ce document aussi bien à un composant logiciel, qu'à un composant matériel ou à un ensemble de composants matériels et logiciels. Un composant logiciel correspond à un ou plusieurs programmes d'ordinateur, un ou plusieurs sous-programmes d'un programme, ou de manière plus générale à tout élément d'un programme ou d'un logiciel apte à mettre en oeuvre une fonction ou un ensemble de fonctions, selon ce qui est décrit ci-dessous pour le module concerné. Un tel composant logiciel est exécuté par un processeur de données d'une entité physique (terminal, serveur, passerelle, set-top-box, routeur, etc.) et est susceptible d'accéder aux ressources matérielles de cette entité physique (mémoires, supports d'enregistrement, bus de communication, cartes électroniques d'entrées/sorties, interfaces utilisateur, etc.). According to an exemplary embodiment, the disclosure is implemented by means of software and/or hardware components. From this perspective, the term "module" may correspond in this document to a software component, a hardware component or a set of hardware and software components. A software component corresponds to one or more computer programs, one or more sub-programs of a program, or more generally to any element of a program or software capable of implementing a function or a set of functions, as described below for the module concerned. Such a software component is executed by a data processor of a physical entity (terminal, server, gateway, set-top-box, router, etc.) and is likely to access the hardware resources of this physical entity (memories, recording media, communication bus, electronic input/output cards, user interfaces, etc.).
De la même manière, un composant matériel correspond à tout élément d'un ensemble matériel (ou hardware) apte à mettre en oeuvre une fonction ou un ensemble de fonctions, selon ce qui est décrit ci-dessous pour le module concerné. Il peut s'agir d'un composant matériel programmable ou avec processeur intégré pour l'exécution de logiciel, par exemple un circuit intégré, une carte à puce, une carte à mémoire, une carte électronique pour l'exécution d'un micrologiciel (firmware), etc. In the same way, a hardware component corresponds to any element of a hardware assembly (or hardware) able to implement a function or a set of functions, according to what is described below for the module concerned. It can be a hardware component that can be programmed or has an integrated processor for executing software, for example an integrated circuit, a smart card, a memory card, an electronic card for executing firmware ( firmware), etc
Chaque composante du système précédemment décrit met bien entendu en oeuvre ses propres modules logiciels. Each component of the system described above naturally implements its own software modules.
Les différents exemples d'implémentation mentionnés ci-dessus sont combinables entre eux pour la mise en oeuvre de la divulgation. The various examples of implementation mentioned above can be combined with each other for the implementation of the disclosure.
4. Dessins 4. Drawings
D'autres caractéristiques et avantages de la divulgation apparaîtront plus clairement à la lecture de la description suivante d'un exemple de réalisation préférentiel, donné à titre de simple exemple illustratif et non limitatif, et des dessins annexés, parmi lesquels : Other characteristics and advantages of the disclosure will appear more clearly on reading the following description of a preferred embodiment, given by way of a simple illustrative and non-limiting example, and the appended drawings, among which:
[fig 1] la figure 1 décrit schématiquement le procédé mis en oeuvre ; [fig 1] figure 1 schematically describes the method implemented;
[fig 2] la figure 2 décrit deux situations de traitement des données de pixels issues des capteurs pour produire un flux HDR de cadence équivalente à la cadence des capteurs SDR ; [fig 3] la figure 3 illustre une architecture d'un dispositif apte à mettre en oeuvre un procédé objet de la divulgation ; [fig 2] FIG. 2 describes two situations for processing pixel data from the sensors to produce an HDR stream with a rate equivalent to the rate of the SDR sensors; [fig 3] FIG. 3 illustrates an architecture of a device capable of implementing a method which is the subject of the disclosure;
[fig 4] la figure 4 illustre la mise en oeuvre en parallèle du procédé objet de la divulgation. [fig 4] figure 4 illustrates the implementation in parallel of the method that is the subject of the disclosure.
5. Description Comme exposé précédemment, la méthode de production d'un flux vidéo HDR de la divulgation comprend la combinaison, à partir d'au moins trois flux vidéo SDR, des images composant ces flux SDR. En effet, comme une caméra SDR n'est pas capable de capturer toute la gamme dynamique de la scène, elle perd inévitablement des détails dans les zones faiblement éclairées (pixels saturés dans le noir) et fortement éclairées (pixels saturés dans le blanc). Les données ainsi acquises sont alors plus difficilement exploitables par des applications de vision artificielle. Il existe donc un besoin fort de caméras à gamme dynamique étendue pouvant être utilisées dans des champs applicatifs variés (p. ex. vidéo-surveillance, véhicule autonome ou vision industrielle), a un coût moindre que les solutions existantes et qui puisse produire un flux HDR en temps réel. 5. Description As explained previously, the method of producing an HDR video stream of the disclosure comprises combining, from at least three SDR video streams, the images composing these SDR streams. Indeed, since an SDR camera is not able to capture the full dynamic range of the scene, it inevitably loses detail in areas that are dimly lit (pixels saturated in black) and brightly lit (pixels saturated in white). The data thus acquired are then more difficult to use by artificial vision applications. There is therefore a strong need for wide dynamic range cameras that can be used in various application fields (e.g. video surveillance, autonomous vehicle or industrial vision), at a lower cost than existing solutions and which can produce a Real-time HDR.
La méthode développée par les inventeurs vise à répondre à cette problématique. Elle est plus particulièrement basée sur l'utilisation de capteurs standards, peu onéreux, et sur la mise en oeuvre d'une gestion adaptée d'une mémoire de stockage temporaire de données de pixels issues de ces capteurs, cette mémoire jouant un rôle de pivot de synchronisation entre l'acquisition temps réel et la production, également temps réel. Plus particulièrement, selon la divulgation, on utilise au moins deux capteurs en parallèle, ces deux capteurs permettant de générer, simultanément, deux images, qui sont enregistrées au sein d'un espace de stockage temporaire, comprenant au moins trois emplacements de stockage. Selon la divulgation, la génération des images et l'enregistrement de celles-ci au sein de l'espace de stockage temporaire sont effectués à minima à la vitesse de génération des images en provenance des capteurs. Plus spécifiquement encore, la pluralité de capteurs est embarquée au sein d'une pluralité de caméras (un capteur au sein d'une caméra). Selon la divulgation, ces caméras sont par exemple toutes de même type. Les caméras sont par exemple configurées pour produire un flux d'images à 60 images/seconde. Ce faisant, chaque image produite par une caméra est exposée pendant un temps maximum (i.e. temps d'intégration) avant que le capteur ne soit lu, par lecture destructrice. Lorsque les caméras sont configurées pour produire un flux d'images à 30 images/seconde chaque image produite par une caméra est exposée pendant un temps maximum (i.e. temps d'intégration), avant que le capteur ne soit lu, par lecture destructrice. Ainsi, la période T = l/60eme de seconde comprend un temps d'intégration auquel s'ajoute un temps de lecture de capteur et éventuellement un temps d'attente. Le temps d'intégration est directement lié à la luminosité de la scène et peut être inférieure à la milliseconde pour des scènes suffisamment lumineuses. Le temps de lecture est lié à la technologie du circuit de lecture du capteur. La lecture se fait pendant la période T = l/60eme de seconde. Lorsque le temps d'intégration est suffisamment court, alors l'addition des temps d'intégration et lecture < l/60eme de seconde et un temps d'attente se produit (jusqu'à max l/60eme de seconde). Si le temps d'intégration est trop long alors on est obligé de diminuer la vitesse de lecture et on passe à l/30eme de seconde par exemple pour ne pas tronquer les acquisitions. Donc au final, le capteur peut avois une vitesse de l/60eme de seconde et par voie de conséquence, pour préserver la cadence le temps d'intégration est compris entre 0 et (l/60eme de seconde - temps_de_lecture). La même logique s'applique pour des capteurs à l/30eme de seconde. The method developed by the inventors aims to respond to this problem. It is more particularly based on the use of standard, inexpensive sensors, and on the implementation of suitable management of a memory for temporary storage of pixel data from these sensors, this memory playing a pivotal role synchronization between real-time acquisition and production, also real-time. More particularly, according to the disclosure, at least two sensors are used in parallel, these two sensors making it possible to generate, simultaneously, two images, which are recorded within a temporary storage space, comprising at least three storage locations. According to the disclosure, the generation of the images and the recording thereof within the temporary storage space are carried out at a minimum at the speed of generation of the images originating from the sensors. More specifically still, the plurality of sensors is embedded within a plurality of cameras (a sensor within a camera). According to the disclosure, these cameras are for example all of the same type. The cameras are for example configured to produce a stream of images at 60 images/second. In doing so, each image produced by a camera is exposed for a maximum time (ie integration time) before the sensor is read, by destructive reading. When the cameras are configured to produce a stream of images at 30 images/second, each image produced by a camera is exposed for a maximum time (ie integration time), before the sensor is read, by destructive reading. Thus, the period T=1/60 th of a second comprises an integration time to which is added a sensor reading time and possibly a waiting time. The integration time is directly related to the brightness of the scene and can be less than a millisecond for sufficiently bright scenes. The reading time is related to the sensor reading circuit technology. The reading is done during the period T=1/60 th of a second. When the integration time is sufficiently short, then the addition of the integration and reading time < l/ 60th of a second and a waiting time occurs (up to max l/60th of a second). If the integration time is too long then we are obliged to reduce the reading speed and we go to 1/30 th of a second for example so as not to truncate the acquisitions. So in the end, the sensor can have a speed of l/60 th of a second and consequently, to preserve the rate, the integration time is between 0 and (l/60 th of a second - reading_time). The same logic applies for sensors at 1/30 th of a second.
Quelle que soit la vitesse de production d'images, celle-ci détermine un temps d'exposition maximum de chaque image avant d'être produite. Un objectif de la méthode proposée étant de délivrer un flux HDR qui soit produit à la même vitesse que celle des caméras, il est donc nécessaire de produire des images HDR à la vitesse à laquelle les images sont produites par les caméras : le temps d'exposition maximum des images est donc inférieur à la vitesse de production de ces images par le capteur. Comme cela est décrit par la suite, le temps d'exposition de chaque image est configuré tout au long de l'exécution de la méthode de production du flux HDR pour faire en sorte que celui-ci soit en adéquation avec le temps d'exposition nécessaire relativement à chaque image. Whatever the image production speed, it determines a maximum exposure time of each image before being produced. One objective of the proposed method being to deliver an HDR stream which is produced at the same speed as that of the cameras, it is therefore necessary to produce HDR images at the speed at which the images are produced by the cameras: the time of maximum exposure of the images is therefore lower than the speed of production of these images by the sensor. As described below, the exposure time of each image is configured throughout the execution of the HDR stream production method to ensure that it matches the exposure time. needed for each image.
Le procédé mis en oeuvre est décrit en relation avec la figure 1. Il comprend une pluralité d'itérations, globales, de création d'images grande gamme dynamique comprenant : une détermination (Dl) d'au moins trois temps d'exposition de capteurs comprenant : un temps d'exposition court TC, un temps d'exposition long TL et un temps d'exposition intermédiaire Tl, tels que TC<TI<TL ; au moins une itération d'une lecture (D2) de capteurs, parmi lesdits au moins deux capteurs, délivrant au moins trois images successives (IC, II, IL), en fonction desdits au moins trois temps d'exposition (TC, Tl, TL) de capteurs ; le nombre d'itérations de cette étape (D2) dépend du nombre de capteurs disponibles : deux capteurs pour trois images implique deux itérations au moins, trois capteurs pour trois images implique une itération pour chaque capteur ; d'autres configurations sont explicitées par la suite ; un enregistrement (D3), au sein d'au moins trois zones de mémoires dédiées (ZM#1, ZM#2, ZM#3), desdites au moins trois images successives (IC, II, IL), chaque zone de mémoire étant dédiée à un temps d'exposition de capteur parmi lesdits au moins trois temps d'exposition de capteurs ; une génération (D4) d'une image à grande gamme dynamique à partir d'informations extraites desdites au moins trois images successives (IC, II, IL) enregistrées respectivement au sein desdites au moins trois zones de mémoires dédiées (ZM#1, ZM#2, ZM#3) ; ajout (D5) de ladite image à grande gamme dynamique audit flux vidéo HDR. The method implemented is described in relation to FIG. 1. It comprises a plurality of iterations, overall, for the creation of high dynamic range images comprising: a determination (D1) of at least three exposure times of sensors comprising: a short exposure time TC, a long exposure time TL and an intermediate exposure time T1, such that TC<TI<TL; at least one iteration of a reading (D2) of sensors, among said at least two sensors, delivering at least three successive images (IC, II, IL), as a function of said at least three exposure times (TC, T1, TL) of sensors; the number of iterations of this step (D2) depends on the number of sensors available: two sensors for three images implies at least two iterations, three sensors for three images implies one iteration for each sensor; other configurations are explained below; a recording (D3), within at least three dedicated memory areas (ZM#1, ZM#2, ZM#3), of said at least three successive images (IC, II, IL), each memory area being dedicated to a sensor exposure time among said at least three sensor exposure times; a generation (D4) of a high dynamic range image from information extracted from said at least three successive images (IC, II, IL) recorded respectively within said at least three dedicated memory zones (ZM#1, ZM #2, ZM#3); adding (D5) said high dynamic range image to said HDR video stream.
Le procédé peut être mis en oeuvre de sorte que le procédé étant mis en oeuvre de sorte qu'à tout instant une image acquise au temps court (IC), une image acquise au temps intermédiaire (II) et une image acquise au temps long (IL) sont respectivement présentes au sein desdites au moins trois zones de mémoires dédiées (ZM#1, ZM#2, ZM#3). Le procédé peut être mis en oeuvre par l'intermédiaire de deux processus fonctionnant en parallèle : un processus de production, comprenant les itérations des étapes DI à D3, qui assurer une production continue d'images dans les zones mémoires dédiées et un processus de génération de flux qui utilise indifféremment et en continu les images présentes dans les zones mémoire dédiées pour mettre en oeuvre les itérations des étapes D4 et D5. D'autres possibilités de mise en oeuvre sont également envisageables, par exemple en réalisant un nombre différent d'itérations dans l'étape D2 : à la place de trois itérations, seulement deux captures peuvent être effectuées (une capture sur chaque capteur), permettant de remplir les zones mémoire correspondant à chacune des deux captures (par exemple ZM#1, ZM#2), puis à l'itération globale suivante, à nouveau deux captures uniquement sont réalisées permettant de remplir les zones mémoire correspondant à chacune des deux captures (par exemple ZM#2, ZM#3). D'autres modes de mise en oeuvre sont également envisageables en fonction du nombre de caméras disponibles notamment, comme cela est explicité par la suite. The method can be implemented so that the method being implemented so that at any instant an image acquired at short time (IC), an image acquired at intermediate time (II) and an image acquired at long time ( IL) are respectively present within said at least three dedicated memory zones (ZM#1, ZM#2, ZM#3). The method can be implemented via two processes operating in parallel: a production process, comprising the iterations of steps D1 to D3, which ensure continuous production of images in the dedicated memory zones and a generation process stream which indifferently and continuously uses the images present in the dedicated memory areas to implement the iterations of steps D4 and D5. Other implementation possibilities are also possible, for example by carrying out a different number of iterations in step D2: instead of three iterations, only two captures can be carried out (one capture on each sensor), allowing to fill the memory zones corresponding to each of the two captures (for example ZM#1, ZM#2), then at the following global iteration, again only two captures are carried out making it possible to fill the memory zones corresponding to each of the two captures (for example ZM#2, ZM#3). Other modes of implementation can also be envisaged depending on the number of cameras available in particular, as explained below.
Plus particulièrement, la combinaison des images acquise est réalisée en temps réel, au fur et à mesure de la production de celles-ci. Le système pour mettre en oeuvre cette technique de combinaison comprend au moins deux caméras, chaque caméra étant équipée d'un capteur pouvant capturer une scène à une vitesse et une résolution donnée. Le système comprend une unité de traitement, qui est configurée pour extraire, à partir de ces au moins deux caméras, les au moins trois flux vidéo SDR. L'unité de traitement comprend également au moins trois zones de mémoire, destinées à recevoir au moins trois images différentes, chaque image étant issue d'un des trois flux vidéo SDR. L'unité de traitement effectue une combinaison des trois images des trois zones de mémoire différentes pour produire une image HDR à partir des trois images SDR des trois zones de mémoire. Chacune des trois images enregistrées dans les trois zones de mémoire différentes est issue d'un temps d'exposition différent d'un capteur de caméra. Par exemple lorsque deux caméras sont utilisées, une première image 11 est obtenue pour une durée d'exposition dl, une première image 12 est obtenue pour une durée d'exposition d2 et une troisième image 13 est obtenue pour une durée d'exposition d3, de sorte que dl<d2<d3. Selon la présente divulgation, on s'assure que d3 est inférieur à la cadence de production d'images des caméras. Par exemple, si la caméra produit 60 images/seconde, on s'assure que : dl < d2 < d3 « —s. More particularly, the combination of the acquired images is carried out in real time, as they are produced. The system for implementing this combination technique comprises at least two cameras, each camera being equipped with a sensor capable of capturing a scene at a given speed and resolution. The system includes a processing unit, which is configured to extract, from these at least two cameras, the at least three SDR video streams. The processing unit also comprises at least three memory zones, intended to receive at least three different images, each image coming from one of the three SDR video streams. The processing unit performs a combination of the three images of the three different memory areas to produce an HDR image from the three SDR images of the three memory areas. Each of the three images recorded in the three different memory areas comes from a different exposure time of a camera sensor. For example, when two cameras are used, one first image 11 is obtained for an exposure time dl, a first image 12 is obtained for an exposure time d2 and a third image 13 is obtained for an exposure time d3, so that dl<d2<d3. According to the present disclosure, it is ensured that d3 is lower than the image production rate of the cameras. For example, if the camera produces 60 images/second, it is ensured that: dl < d2 < d3 “—s.
De plus, on s'assure également, dans ce cas d'utilisation de deux caméras et donc de deux capteurs, que (dl + d2) « —s. Cette deuxième condition permettant d'assurer que l'on est en mesure de produire trois images avec au moins deux caméras, les trois images étant produites au maximum à la vitesse de production des images de la caméra. Moreover, it is also ensured, in this case of use of two cameras and therefore of two sensors, that (d1+d2) “—s. This second condition makes it possible to ensure that it is possible to produce three images with at least two cameras, the three images being produced at the maximum at the speed of production of the images of the camera.
Ainsi, à l'aide de deux (au moins) caméras standard (non HDR), la méthode de production proposée permet d'obtenir au moins trois images issues d'une même scène à capturer et de fournir trois flux, qui sont traités en temps réel pour fournir un seul flux vidéo HDR. Bien entendu, ce qui est possible avec deux caméras l'est également avec trois caméras ou plus, comme cela est décrit par la suite. Le principe de la méthode proposée étant de disposer, à chaque instant, au sein des trois zones mémoire, d'une image (une image par zone mémoire), chacune de ces trois images ayant été capturée avec un temps d'exposition différent (un temps « court », un temps « long » et un temps « intermédiaire », lequel est déterminé à partir du temps « court » et du temps « long »). Thus, using two (at least) standard (non-HDR) cameras, the proposed production method makes it possible to obtain at least three images from the same scene to be captured and to provide three streams, which are processed in real-time to deliver a single HDR video stream. Of course, what is possible with two cameras is also possible with three or more cameras, as will be described below. The principle of the proposed method being to have, at each instant, within the three memory zones, an image (one image per memory zone), each of these three images having been captured with a different exposure time (a "short" time, a "long" time and an "intermediate" time, which is determined from the "short" time and the "long" time).
Il y a, selon la divulgation, au moins deux manières de déterminer les temps d'exposition : en effectuant un calcul des temps courts et temps longs pour minimiser les saturations noires et blanches et ensuite en déterminant un temps intermédiaire (par exemple sous la forme sqrt(TC*TL)) ; ou en effectuant un calcul du temps intermédiaire avec par exemple « l'auto-exposition » de la caméra ou par une autre méthode d'auto-exposition à implémenter et ensuite détermination "empirique" des TC (temps courts) et TL (temps longs) en enlevant/ajoutant une ou plusieurs EV (« exposure values », valeurs d'exposition). There are, according to the disclosure, at least two ways of determining the exposure times: by performing a calculation of short times and long times to minimize the black and white saturations and then by determining an intermediate time (for example in the form sqrt(TC*TL)); or by performing a calculation of the intermediate time with for example the "self-exposure" of the camera or by another self-exposure method to be implemented and then "empirical" determination of the TC (short times) and TL (long times ) by removing/adding one or more EVs (“exposure values”).
Selon la divulgation, les temps d'exposition de chacune des images sont déterminés au moins partiellement à chaque itération de capture. En d'autres termes, à la nième itération de capture, des temps d'exposition « court », « long » et « intermédiaire » sont paramétrés, une image est obtenue par au moins deux caméras à chacun de ces temps (« court », « long » et « intermédiaire ») et enregistrées dans les trois zones de mémoire : une première zone de mémoire pour l'image capturée au temps d'exposition « court », une première zone de mémoire pour l'image capturée au temps d'exposition « intermédiaire » et une troisième première zone de mémoire pour l'image capturée au temps d'exposition « long ». Ces trois images sont traitées pour fournir une image HDR et cette image HDR est ajoutée au flux HDR. Lors du traitement de ces trois images, une nouvelle évaluation des temps d'exposition « court », « long » et « intermédiaire » est réalisée en fonction du contenu des trois images de cette nième itération et ces nouveaux temps d'exposition « court », « long » et « intermédiaire » sont utilisés pour paramétrer les temps d'exposition « court », « long » et « intermédiaire » de l'itération suivante (n+1), et ainsi de suite, tout au long du traitement de capture du flux HDR. According to the disclosure, the exposure times of each of the images are determined at least partially at each capture iteration. In other words, at the nth capture iteration, “short”, “long” and “intermediate” exposure times are set, an image is obtained by at least two cameras at each of these times (“short” , "long" and "intermediate") and recorded in the three memory areas: a first memory area for the image captured at the "short" exposure time, a first memory area for the image captured at the time d "intermediate" exposure and a third first memory area for the image captured at the “long” exposure time. These three images are processed to provide an HDR image and this HDR image is added to the HDR stream. During the processing of these three images, a new evaluation of the "short", "long" and "intermediate" exposure times is carried out according to the content of the three images of this nth iteration and these new "short" exposure times. , "long" and "intermediate" are used to set the "short", "long" and "intermediate" exposure times of the next iteration (n+1), and so on, throughout the processing of HDR stream capture.
Ainsi, selon la divulgation, les valeurs des temps d'acquisition sont estimées à chaque nouvelle acquisition à partir d'analyses statistiques effectuées sur les acquisitions précédentes. Pour trois acquisitions, une estimation est réalisée : le temps court est estimé en minimisant le nombre de pixels saturés en blanc (< à 10% par exemple) ; le temps long est estimé en minimisant le nombre de pixels saturés en noir (< à 10% par exemple). Le temps d'exposition intermédiaire est ensuite estimé de manière calculatoire : il peut par exemple s'agir d'un calcul simple : racine carrée du produit du temps long et du temps court. Thus, according to the disclosure, the values of the acquisition times are estimated at each new acquisition from statistical analyzes carried out on the previous acquisitions. For three acquisitions, an estimate is made: the short time is estimated by minimizing the number of pixels saturated in white (<10% for example); the long time is estimated by minimizing the number of pixels saturated in black (< 10% for example). The intermediate exposure time is then estimated by calculation: it can for example be a simple calculation: square root of the product of the long time and the short time.
Selon la divulgation, les temps longs et courts sont estimés en fonction de plusieurs facteurs, notamment celui de la fréquence d'images du flux HDR. En effet, à la différence des techniques portant sur la production de clichés HDR, dans lesquelles de multiples images peuvent être obtenues et sélectionnées en fonction de la qualité recherchée, la création d'un flux vidéo HDR nécessite de s'adapter en continu à des variations de luminosité de la scène qu'il est nécessaire d'évaluer et de prendre en compte rapidement. De ce fait, les techniques antérieures dans lesquelles on sélectionne les meilleures images parmi une pluralité d'images disponibles (comme dans le document de brevet FR3062009) ne sont pas applicables à la création d'un flux vidéo HDR, car elles nécessitent de disposer d'un nombre excédentaire d'images, sur lequel s'opère la sélection des images à conserver. Ainsi, selon la divulgation, une évaluation rapide des temps d'exposition courts et long est effectuée. Plus particulièrement, l'étape d'évaluation de ces temps d'exposition (court et long) repose sur les histogrammes des images IC (temps d'exposition court) et IL (temps d'exposition long) précédemment acquises. Les histogrammes permettent d'avoir une estimation précise de la répartition des pixels. Si le nombre de pixels saturés en blanc (pixels de valeur supérieure à 240 pour des images 8 bits par exemple) de l'image IC est trop important (plus de 10 à 15% par exemple), alors le temps d'exposition de l'image IC à la prochaine itération doit être diminué pour pouvoir capturer plus d'information dans les zones fortement éclairées. À contrario, si le nombre de pixels saturés en blanc est très faible (moins de 2% par exemple), alors le temps d'exposition peut être augmenté pour éviter un écart trop important avec l'image intermédiaire, ce qui entraînerait un « trou » d'information dans la dynamique. De manière similaire, si le nombre de pixels saturés en noir (pixels de valeur inférieure à 16 pour des images 8 bits par exemple) de l'image IL est trop important, alors le temps d'exposition de l'image IL à la prochaine itération doit être augmenté. Enfin, si le nombre de pixels saturés en noir de l'image IL est trop faible, alors le temps d'exposition de l'image IL à la prochaine itération doit être diminué. Les variations des temps d'exposition d'une itération à l'autre peuvent s'exprimer sous la forme d'indice de lumination (EV, « exposure value » en anglais) : une augmentation (respectivement diminution) d'une unité d'indice de lumination (1 EV) se traduit par une multiplication (respectivement division) par deux du temps d'exposition. Dans le cas où le nombre de pixels saturés est très important, il est possible d'augmenter ou diminuer de 2EV (facteur 4 sur le temps d'exposition) et au contraire, dans le cas où on veut affiner le nombre de pixels saturés autour des seuils choisis, il est possible de limiter les variations à 1/2 EV (un demi), voire 1/3 EV (un tiers). According to the disclosure, the long and short times are estimated based on several factors, including that of the frame rate of the HDR stream. Indeed, unlike techniques relating to the production of HDR shots, in which multiple images can be obtained and selected according to the desired quality, the creation of an HDR video stream requires continuous adaptation to variations in scene brightness that need to be quickly assessed and taken into account. Therefore, the prior techniques in which the best images are selected from a plurality of available images (as in the patent document FR3062009) are not applicable to the creation of an HDR video stream, since they require the availability of 'an excess number of images, on which the selection of the images to be kept takes place. Thus, according to the disclosure, a rapid evaluation of short and long exposure times is carried out. More particularly, the step of evaluating these exposure times (short and long) is based on the histograms of the images IC (short exposure time) and IL (long exposure time) previously acquired. The histograms make it possible to have a precise estimate of the distribution of the pixels. If the number of pixels saturated in white (pixels with a value greater than 240 for 8-bit images for example) of the IC image is too large (more than 10 to 15% for example), then the exposure time of the The IC image at the next iteration should be decreased to be able to capture more information in brightly lit areas. Conversely, if the number of pixels saturated in white is very low (less of 2% for example), then the exposure time can be increased to avoid too great a difference with the intermediate image, which would cause an information “hole” in the dynamic range. Similarly, if the number of pixels saturated in black (pixels with a value less than 16 for 8-bit images for example) of the IL image is too large, then the exposure time of the IL image at the next iteration should be increased. Finally, if the number of pixels saturated in black of the IL image is too low, then the exposure time of the IL image at the next iteration must be reduced. Variations in exposure times from one iteration to another can be expressed in the form of exposure value (EV): an increase (respectively decrease) of one unit of exposure index (1 EV) results in a multiplication (respectively division) by two of the exposure time. If the number of saturated pixels is very high, it is possible to increase or decrease by 2EV (a factor of 4 on the exposure time) and on the contrary, if you want to refine the number of saturated pixels around chosen thresholds, it is possible to limit the variations to 1/2 EV (one half), or even 1/3 EV (one third).
Ces calculs faits à chaque acquisition permettent de prendre en compte très rapidement tous les changements d'éclairage de la scène. Selon la divulgation, le temps d'exposition long est ajusté en fonction du nombre de caméras (et donc de capteurs) utilisés pour alimenter les trois zones mémoires. Par exemple, si l'on dispose de six capteurs à 1/30 sec dont les acquisitions sont décalées dans le temps, il est possible d'augmenter la cadence en sortie. Le principe étant que dès que l'on dispose de trois images, on peut faire les traitements en parallèle des autres acquisitions. These calculations made at each acquisition make it possible to take into account very quickly all the changes in lighting of the scene. According to the disclosure, the long exposure time is adjusted according to the number of cameras (and therefore of sensors) used to supply the three memory zones. For example, if six sensors are available at 1/30 sec, the acquisitions of which are time-shifted, it is possible to increase the output rate. The principle being that as soon as we have three images, we can do the processing in parallel with the other acquisitions.
On présente, en relation avec la figure 2, deux situations de traitement des images SDR pour produire des images HDR, comme exposé dans la figure 1. Dans cet exemple la largeur des barres représentant les images est représentative, approximativement, des temps courts, intermédiaires et longs pour l'exposition de chaque image. We present, in relation to figure 2, two situations of processing of SDR images to produce HDR images, as exposed in figure 1. In this example the width of the bars representing the images is representative, approximately, of the short, intermediate times and long for the exposure of each image.
Dans la première situation S#l, on présente la mise en oeuvre du procédé de création d'un flux HDR, à partir de trois flux SDR. On suppose dans cette première situation que les trois flux SDR sont respectivement obtenus par trois capteurs (trois caméras) différentes. Les images 111, 121, 131 et 141 sont des images obtenues à des temps d'intégration courts, les images 112, 122, 132 et 142 sont des images obtenues à des temps d'intégration intermédiaires et les images 113, 123, 133 et 143 sont des images obtenues à des temps d'intégration longs. Dans cette première situation, les traitements de création d'une image HDR à partir de trois images SDR (Trtl, Trt2, Trt3) sont mis en oeuvre postérieurement et séquentiellement à l'acquisition des images. Chaque traitement (Trtl, Trt2, Trt3) suit une mise en œuvre identique (recalage de pixels, combinaison des images SDR) et on illustre des temps de traitement identiques pour plus de simplicité. Les temps tl, t2 et t3 représente le frame rate maximal des caméras SDR (par exemple 60 imgs/sec, 30 imgs/sec, etc.). In the first situation S#1, the implementation of the method for creating an HDR stream is presented, from three SDR streams. It is assumed in this first situation that the three SDR streams are respectively obtained by three different sensors (three cameras). Images 111, 121, 131 and 141 are images obtained at short integration times, images 112, 122, 132 and 142 are images obtained at intermediate integration times and images 113, 123, 133 and 143 are images obtained at long integration times. In this first situation, the processing operations for creating an HDR image from three SDR images (Trt1, Trt2, Trt3) are implemented subsequent and sequentially to the acquisition of the images. Each treatment (Trtl, Trt2, Trt3) An identical implementation follows (pixel registration, combination of SDR images) and identical processing times are illustrated for simplicity. The times t1, t2 and t3 represent the maximum frame rate of SDR cameras (for example 60 imgs/sec, 30 imgs/sec, etc.).
Dans la deuxième situation S#2, on suppose toujours que les trois flux SDR sont respectivement obtenus par trois capteurs (trois caméras) différentes. Les traitements de création d'une image HDR à partir de trois images SDR (Trtl, Trt2, Trt3) sont mis en œuvre postérieurement et en parallèle de l'acquisition des images. Il s'agit de la principale différence avec la situation #1. Les traitements sont désynchronisés de l'acquisition. La seule contrainte est de s'assurer que les traitements sur les images acquises à t soient plus courts en temps que l'acquisition de t+1. Ainsi, en utilisant autant de capteurs que d'images à acquérir (typiquement trois), le temps de cycle est au minimum égal au temps d'acquisition de l'image avec le temps d'intégration long. En utilisant plus de capteurs (par exemple quatre au lieu de trois), il est envisageable de dédier deux de ces quatre capteurs à l'acquisition des images a temps longs dont les débuts d'acquisition seraient décalés d'une demi période. Par exemple, avec une période de 1/30, le premier capteur fournirait des images tous les l/30sec, en commençant à t=l/60, tandis que le deuxième capteur pourrait fournir des images à t=n*l/30+l/60 : il est ainsi possible de produire des images tous les soixantièmes de seconde. Les conditions de mises en œuvre opérationnelles déterminent la stratégie à adopter, notamment en fonction du coût de capteurs performants et ayant une meilleure vitesse d'acquisition (mais plus chers) vs. un nombre de capteurs plus important (quatre, cinq ou six) mais individuellement moins onéreux. In the second situation S#2, it is always assumed that the three SDR streams are respectively obtained by three different sensors (three cameras). The processing operations for creating an HDR image from three SDR images (Trt1, Trt2, Trt3) are implemented after and in parallel with the acquisition of the images. This is the main difference with situation #1. Processing is desynchronized from acquisition. The only constraint is to ensure that the processing on the images acquired at t is shorter in time than the acquisition of t+1. Thus, by using as many sensors as images to be acquired (typically three), the cycle time is at least equal to the image acquisition time with the long integration time. By using more sensors (for example four instead of three), it is possible to dedicate two of these four sensors to the acquisition of long-time images, the beginnings of acquisition of which would be shifted by a half period. For example, with a period of 1/30, the first sensor would provide images every l/30sec, starting at t=l/60, while the second sensor could provide images at t=n*l/30+ l/60: it is thus possible to produce images every sixtieth of a second. The operational implementation conditions determine the strategy to adopt, in particular according to the cost of high-performance sensors and having a better acquisition speed (but more expensive) vs. a greater number of sensors (four, five or six) but individually less expensive.
Chaque traitement (Trtl, Trt2, Trt3) suit une mise en œuvre identique (recalage de pixels, combinaison des images SDR) et on illustre des temps de traitement identiques pour plus de simplicité. Les temps tl, t2 et t3 représente le frame rate maximal des caméras SDR (par exemple 60 imgs/sec, 30 imgs/sec, etc.). Each processing (Trt1, Trt2, Trt3) follows an identical implementation (pixel registration, combination of SDR images) and identical processing times are illustrated for simplicity. The times t1, t2 and t3 represent the maximum frame rate of SDR cameras (for example 60 imgs/sec, 30 imgs/sec, etc.).
Dans la première situation S#l, une image HDR est obtenue dès la première itération, à l'issue de la période temporelle de 0 à tl, et ainsi de suite. Dans la deuxième situation S#2, une image HDR n'est obtenu qu'à partir du temps t'2, puis t'3 et ainsi de suite. Il y a donc un léger décalage lors de la production de la première image HDR. Ce décalage au démarrage permet in fine de profiter d'un temps plus long pour effectuer le traitement de création de l'image HDR sans réduire le taux de production d'images. Concrètement, le décalage entre tl et t'1 correspond au temps de traitement de l'image HDR qui dépasse initialement le taux de production des images de la caméra (i.e. « frame rate »). Ainsi, sans changer la fréquence de production des images, il est possible d'avoir un temps de traitement égal au taux de production des images des caméras en entrée : au maximum le temps séparant tl et t'I sera égal à un cycle. In the first situation S#1, an HDR image is obtained from the first iteration, at the end of the time period from 0 to t1, and so on. In the second situation S#2, an HDR image is only obtained from time t'2, then t'3 and so on. So there is a slight lag when producing the first HDR image. This lag at start-up ultimately makes it possible to take advantage of a longer time to perform the HDR image creation processing without reducing the image production rate. Concretely, the offset between t1 and t'1 corresponds to the HDR image processing time which initially exceeds the image production rate of the camera (ie “frame rate”). Thus, without changing the frequency of production of the images, it is possible to have a processing time equal to the rate of production of the images of the input cameras: at most the time separating t1 and t'I will be equal to one cycle.
On présente en relation avec la figure 3, un exemple de mise en oeuvre d'un dispositif (DISP) de mise en oeuvre de la méthode de création d'un flux HDR selon un exemple de réalisation. Un tel dispositif d'acquisition de flux HDR, également appelé caméra HDR, comprend un sous-ensemble d'acquisition (SSACQ) qui comprend en premier lieu N capteurs (Cl,... CN). Les capteurs sont connectés à un module d'acquisition (MACQ) comprenant deux sous modules : un sous module de programmation de temps d'exposition (CtrIEC), qui est utilisé pour paramétrer le temps d'exposition de chaque capteur et un sous module d'acquisition (AcQ) proprement dit qui est en charge de la lecture, pour chaque capteur, de la matrice de pixels de ce capteur et de la transmission, au module de gestion des unités de mémorisation (MMU), des ensembles de données de pixels acquises. Comme indiqué précédemment, il est nécessaire de changer le temps d'exposition à chaque nouvelle acquisition par une caméra, et ce afin de s'adapter rapidement aux conditions changeantes d'exposition de la scène qui est filmée. Typiquement, pour trois images, on dispose d'une Image 1 avec temps court, d'une Image 2 avec temps intermédiaire, d'une Image 3 avec temps long, puis ensuite d'une Image 4 avec temps court, d'une Image 5 avec temps intermédiaire, d'une Image 6 avec temps long, etc. Les valeurs des temps d'acquisition sont estimées à chaque nouvelle acquisition à partir d'analyses statistiques effectuées sur les acquisitions précédentes, comme explicité précédemment. Ces calculs faits à chaque acquisition permettent de prendre en compte très rapidement tous les changements d'éclairage de la scène. Une fois les temps d'exposition déterminé, le sous module d'acquisition (ACQ) peut programmer le ou les capteurs, lancer l'acquisition et ensuite récupérer l'image ainsi acquise par le capteur correspondant. In relation to FIG. 3, an example of implementation of a device (DISP) for implementing the method for creating an HDR stream according to an example embodiment is presented. Such an HDR stream acquisition device, also called an HDR camera, comprises an acquisition subassembly (SSACQ) which firstly comprises N sensors (Cl, . . . CN). The sensors are connected to an acquisition module (MACQ) comprising two sub-modules: an exposure time programming sub-module (CtrIEC), which is used to set the exposure time of each sensor and a acquisition (AcQ) itself which is in charge of reading, for each sensor, the matrix of pixels of this sensor and of transmitting, to the storage unit management module (MMU), sets of pixel data acquired. As indicated above, it is necessary to change the exposure time with each new acquisition by a camera, in order to adapt quickly to the changing exposure conditions of the scene being filmed. Typically, for three images, we have an Image 1 with short time, an Image 2 with intermediate time, an Image 3 with long time, then an Image 4 with short time, an Image 5 with split time, an Image 6 with long time, etc. The values of the acquisition times are estimated at each new acquisition from statistical analyzes carried out on the previous acquisitions, as explained above. These calculations made at each acquisition make it possible to take into account very quickly all the changes in lighting of the scene. Once the exposure times have been determined, the acquisition sub-module (ACQ) can program the sensor(s), launch the acquisition and then recover the image thus acquired by the corresponding sensor.
Le module de gestion des unités de mémorisation (MMU), pour sa part, réceptionne, en provenance du module d'acquisition, les ensembles de données de pixel. Chaque ensemble de données de pixel se rapporte à une image acquise par un capteur. Les données de pixels sont fournies par le module d'acquisition avec un identifiant, permettant de déterminer le capteur de provenance ou encore le temps d'exposition ou ces deux données à la fois. Le module de gestion des unités de mémorisation (MMU) enregistre les ensembles de données de pixel obtenus dans les zones de mémoire (ZM1, ..., ZMN) en fonction du temps d'exposition, du capteur source ou de ces deux informations combinées. Plus particulièrement, quel que soit le nombre de capteurs, les inventeurs ont développé un dispositif spécifique de gestion de la mémoire qui permet de disposer en permanence d'au moins trois images stockées dans la mémoire, chacune d'entre elles ayant un temps d'exposition court, intermédiaire ou long. Au démarrage (itération initiale), on effectue l'acquisition de l'image 1 (temps court) dans la mémoire 1. L'image 2 (temps intermédiaire) dans la mémoire 2, puis l'image 3 (temps long) dans la mémoire 3. À l'itération suivante, pour le stockage de l'image 4 (temps court), le module MMU écrase l'image la plus ancienne (image 1 - temps court). Pour l'image 5 (temps intermédiaire), c'est l'image 2 qui est écrasée. Avec ce dispositif, après chaque nouvelle acquisition de capteur (quel que soit le capteur utilisé pour l'acquisition), on dispose en mémoire des trois dernières images acquises avec un temps court, intermédiaire et long. The storage unit management module (MMU), for its part, receives the sets of pixel data from the acquisition module. Each set of pixel data relates to an image acquired by a sensor. The pixel data is provided by the acquisition module with an identifier, making it possible to determine the sensor of origin or even the exposure time or these two data at the same time. The storage unit management module (MMU) stores the obtained pixel data sets in the memory areas (ZM1, ..., ZMN) according to the exposure time, the source sensor or these two information combined . More particularly, regardless of the number of sensors, the inventors have developed a specific memory management device which makes it possible to permanently have at least three images stored in the memory, each of them having a short, intermediate or long exposure. At start-up (initial iteration), image 1 (short time) is acquired in memory 1. Image 2 (intermediate time) in memory 2, then image 3 (long time) in memory 2. memory 3. At the next iteration, for the storage of image 4 (short time), the MMU module overwrites the oldest image (image 1 - short time). For image 5 (intermediate time), it is image 2 that is overwritten. With this device, after each new sensor acquisition (regardless of the sensor used for the acquisition), the last three images acquired with a short, intermediate and long time are available in memory.
En parallèle de l'acquisition, le module MMU effectue la relecture des images afin d'alimenter sous-ensemble de traitement (SSTRT) (voir par la suite). L'avantage de cette approche d'écriture/lecture dans plusieurs mémoires circulaires est de pouvoir générer des images HDR à la même cadence que le capteur : à chaque nouvelle acquisition, quel que soit le capteur de provenance, il y a suffisamment de données en mémoire pour générer une nouvelle image HDR dans le flux vidéo HDR. In parallel with the acquisition, the MMU module reads back the images in order to feed the processing sub-assembly (SSTRT) (see below). The advantage of this write/read approach in several circular memories is to be able to generate HDR images at the same rate as the sensor: at each new acquisition, regardless of the sensor from which it comes, there is enough data in memory to generate a new HDR image in the HDR video stream.
Dans le cas d'un dispositif avec de nombreux capteurs, le module MMU est mis en oeuvre pour synchroniser les différentes acquisitions faites en parallèle. À chaque nouvelle acquisition, au moins une des trois mémoires est actualisée avec une nouvelle image, afin que comme dans le cas précédent, la génération HDR soit effectuée à la vitesse d'acquisition. In the case of a device with many sensors, the MMU module is implemented to synchronize the different acquisitions made in parallel. At each new acquisition, at least one of the three memories is refreshed with a new image, so that as in the previous case, the HDR generation is carried out at the acquisition speed.
Dans tous les cas, les inventeurs ont choisi de travailler en temps réel sur le flux de données acquis par les capteurs. In all cases, the inventors have chosen to work in real time on the flow of data acquired by the sensors.
Il est également possible de désynchroniser (situation #2, figure 2) les deux flux (flux d'acquisition et flux de traitement) en utilisant deux fois plus de mémoire. La première partie de la mémoire servant à stocker les images à acquérir et la deuxième à traiter les images déjà acquises. Dès que les traitements faits sur la deuxième partie de la mémoire sont finis, il est possible de permuter les mémoires et de débuter les traitements sur la première partie de la mémoire (contenant les acquisitions d'images les plus récentes) alors que la deuxième partie de la mémoire est utilisée pour faire l'acquisition suivante. Cette solution n'a pas été retenue, dans cet exemple de mise en oeuvre, car les traitements réalisés sont possibles temporellement avec l'acquisition (cependant, avec des fréquences d'acquisition plus importante, cette solution pourrait présenter un intérêt). En effet, dans cet exemple de mise en œuvre, les traitements exécutés sont réalisables dans le flux d'acquisition, c'est à dire simultanément avec la lecture de la nouvelle image et la relecture des images déjà enregistrées. La nouvelle image acquise par le capteur est transférée du capteur vers la MM U ligne par ligne. Le module de traitement SSTRT est capable de traiter en parallèle tous les pixels de la ligne lue avec les pixels des lignes correspondantes dans les deux autres images stockées. Le temps de traitement de chaque pixel est très inférieur à la cadence de fourniture d'une ligne complète de pixels, ce qui permet de produire une nouvelle de ligne de pixels HDR pour chaque nouvelle ligne de pixels acquis. It is also possible to desynchronize (situation #2, figure 2) the two streams (acquisition stream and processing stream) by using twice as much memory. The first part of the memory is used to store the images to be acquired and the second to process the images already acquired. As soon as the processing done on the second part of the memory is finished, it is possible to swap the memories and start the processing on the first part of the memory (containing the most recent image acquisitions) while the second part memory is used to make the next acquisition. This solution has not been retained, in this example of implementation, because the processing carried out is possible temporally with the acquisition (however, with higher acquisition frequencies, this solution could be of interest). Indeed, in In this example of implementation, the processing operations carried out can be carried out in the acquisition stream, that is to say simultaneously with the reading of the new image and the rereading of the images already recorded. The new image acquired by the sensor is transferred from the sensor to the MM U line by line. The SSTRT processing module is capable of processing in parallel all the pixels of the row read with the pixels of the corresponding rows in the two other stored images. The processing time for each pixel is much lower than the rate for supplying a complete line of pixels, which makes it possible to produce a new line of HDR pixels for each new line of pixels acquired.
Si on envisage de réaliser des traitements plus complexes (pour améliorer la qualité des images HDR ou pour effectuer des traitements en post-processing sur le flux HDR, comme de la détection/reconnaissance d'objets par exemple), un système à double mémoire pourrait être envisagé. If more complex processing is planned (to improve the quality of HDR images or to perform post-processing processing on the HDR stream, such as object detection/recognition for example), a dual memory system could be considered.
Le dispositif d'acquisition de flux HDR comprend également un sous-ensemble de traitement (SSTRT). Ce sous-ensemble de traitement effectue les traitements des images enregistrées dans les zones de mémoire, de manière continue, à la vitesse théorique de capture des trames par les capteurs (e.g. 60images/secs, 30images/sec, etc.), afin de produire un flux HDR ayant la même cadence que la cadence de production des capteurs. The HDR stream acquisition device also includes a processing subassembly (SSTRT). This processing sub-assembly performs the processing of the images recorded in the memory zones, in a continuous manner, at the theoretical speed of capture of the frames by the sensors (e.g. 60images/sec, 30images/sec, etc.), in order to produce an HDR stream having the same rate as the production rate of the sensors.
Ce sous-ensemble de traitement (SSTRT) comprend, dans cet exemple de réalisation, un module de recalage (DEG), dont la fonction est de réaliser un éventuel recalage (« deghosting ») de pixels correspondant à des objets en mouvement, lorsque de tels objets existent dans la scène à capturer. Le module de recalage (DEG) utilise les N (e.g. trois) images acquises pour estimer le mouvement des objets au sein de ces N images. Cette estimation est faite pour l'ensemble des pixels. Il y a nécessairement plus de mouvement dans le cas de l'acquisition avec deux capteurs puisque les acquisitions sont faites séquentiellement (de manière générale, lorsque l'on souhaite obtenir n acquisitions et que l'on ne dispose que d'au plus n-1 capteurs, il y a des acquisitions séquentielles). Dans le cas multi-capteur (plus de deux), les mouvements sont minimisés (principalement du flou de bougé, augmentant avec le temps d'exposition) du fait de l'acquisition simultanée. Dans tous les cas, lorsqu'un mouvement est détecté, un algorithme de correction de ce mouvement est exécuté sur les pixels concernés avant de les transmettre au module de création HDR. Les inventeurs ont évalué plusieurs algorithmes possibles. Cependant, afin de permettre une production HDR en temps réel (i.e. au frame rate des N capteurs utilisés pour capturer les images) deux algorithmes sont implantés sur le dispositif : la méthode de l'ordre des pixels et la méthode de la fonction de pondération : ces deux méthodes donnent des résultats satisfaisant tout en limitant les temps de traitement. La sélection de ces méthodes est lié au fait qu'elles sont compatibles avec les exigences de calcul rapide afin d'être capable de détecter et corriger les artefacts de mouvement à une cadence supérieure à celle de l'acquisition. This processing subassembly (SSTRT) comprises, in this example embodiment, a registration module (DEG), the function of which is to carry out a possible registration ("deghosting") of pixels corresponding to moving objects, when such objects exist in the scene to be captured. The registration module (DEG) uses the N (eg three) acquired images to estimate the movement of the objects within these N images. This estimate is made for all the pixels. There is necessarily more movement in the case of acquisition with two sensors since the acquisitions are made sequentially (generally speaking, when one wishes to obtain n acquisitions and one only has at most n- 1 sensors, there are sequential acquisitions). In the multi-sensor case (more than two), movements are minimized (mainly motion blur, increasing with exposure time) due to simultaneous acquisition. In all cases, when a movement is detected, an algorithm for correcting this movement is executed on the pixels concerned before transmitting them to the HDR creation module. The inventors evaluated several possible algorithms. However, in order to allow HDR production in real time (ie at the frame rate of the N sensors used to capture the images) two algorithms are implemented on the device: the pixel order method and the weighting function method: these two methods give satisfactory results while limiting processing times. The selection of these methods is related to the fact that they are compatible with fast computation requirements in order to be able to detect and correct motion artefacts at a rate higher than that of acquisition.
Lorsqu'aucun mouvement n'est détecté, alors les N ensembles de pixels bruts (correspondant aux N images) sont transmis directement au module de création HDR (HDRC). Le module de création HDR (HDRC) utilise les N flux en parallèle pour évaluer la valeur HDR de chacun des pixels. La méthode utilisée reprend l'algorithme de « Debevec et Malik », qui est adapté au dispositif pour qu'il soit plus efficace en temps de traitement. When no movement is detected, then the N sets of raw pixels (corresponding to the N images) are transmitted directly to the HDR creation module (HDRC). The HDR creation module (HDRC) uses the N streams in parallel to evaluate the HDR value of each of the pixels. The method used uses the “Debevec and Malik” algorithm, which is adapted to the device so that it is more efficient in terms of processing time.
La méthode de Debevec repose sur le fait qu'un pixel d'une scène visuelle possède une valeur d'irradiance constante et qu'il est possible d'estimer cette irradiance à partir des valeurs des pixels obtenus avec des temps d'acquisitions différents et de la courbe de transfert de la caméra utilisée. Les équations mathématiques de la méthode de Debevec nécessitent de calculer le logarithme de l'inverse de la fonction de transfert de la caméra. Selon la divulgation, dans un contexte temps réel, pour des questions d'efficacité, toutes les valeurs de ce logarithme ont été précalculées pour toutes les valeurs possibles de pixels (entre 0 et 255 pour un capteur 8 bits, entre 0 et 1023 pour un capteur 10 bits) et stockées dans une mémoire du système, le calcul se limitant ensuite à une simple relecture d'une case mémoire. Une telle implémentation permet d'assurer un traitement temps réel des flux. The Debevec method is based on the fact that a pixel of a visual scene has a constant irradiance value and that it is possible to estimate this irradiance from the values of the pixels obtained with different acquisition times and the transfer curve of the camera used. The mathematical equations of Debevec's method require calculating the logarithm of the inverse of the camera's transfer function. According to the disclosure, in a real-time context, for reasons of efficiency, all the values of this logarithm have been precalculated for all possible pixel values (between 0 and 255 for an 8-bit sensor, between 0 and 1023 for a 10-bit sensor) and stored in a memory of the system, the calculation then being limited to a simple re-reading of a memory cell. Such an implementation makes it possible to ensure real-time processing of streams.
Une fois l'image HDR produite, il faut pouvoir l'exploiter. Cela peut se faire de deux manières :Once the HDR image has been produced, you need to be able to use it. This can be done in two ways:
Affichage sur écran (à l'aide d'un module d'affichage AFF) ; On-screen display (using an AFF display module);
Sortie brute (vers un réseau de communication, à l'aide d'un module idoine ETH). Raw output (to a communication network, using a suitable ETH module).
Concernant l'affichage sur écran, il n'est pas possible d'afficher des données HDR sur un écran traditionnel. En effet, un écran traditionnel accepte des valeurs de pixels entières généralement codées sur 8 à 10 bits pour chacun des canaux RVB. Dans le cas de la production HDR, un flux vidéo réel codé sur 32 bits est produit. Il est donc nécessaire de « compresser » le format pour qu'il soit acceptable par un écran. C'est ce que fait le module d'affichage AFF (Tone mapping). L'algorithme implanté est spécifiquement sélectionné par les inventeurs. Il existe deux grandes familles d'algorithmes de « tone mapping » (de l'anglais pour « mise en correspondance tonale ») : premièrement, les algorithmes locaux exploitent le voisinage local de chaque pixel pour adapter leur traitement et produire un « tone mapping » de grande qualité. Les algorithmes locaux nécessitent des calculs complexes entraînant des besoins importants en ressources matérielles et souvent incompatibles avec les contraintes de temps réel. Deuxièmement, les algorithmes globaux utilisent un traitement commun à tous les pixels, ce qui simplifie leur mise en oeuvre en temps réel mais au détriment de la qualité globale du résultat obtenu. Ainsi, au regard de l'exigence de traitement en temps réel, les inventeurs ont sélectionné un algorithme de type de celui décrit dans Duan et al (2010), qu'ils ont adaptés aux conditions de mises en oeuvre précédemment décrites. Regarding screen display, it is not possible to display HDR data on a traditional screen. Indeed, a traditional screen accepts integer pixel values generally coded on 8 to 10 bits for each of the RGB channels. In the case of HDR production, an actual 32-bit encoded video stream is produced. It is therefore necessary to “compress” the format so that it is acceptable by a screen. This is what the AFF (Tone mapping) display module does. The implemented algorithm is specifically selected by the inventors. There are two main families of "tone mapping" algorithms: first, local algorithms exploit the local neighborhood of each pixel to adapt their processing and produce a "tone mapping" of great quality. Local algorithms require complex calculations requiring significant hardware resources and often incompatible with real-time constraints. Secondly, the global algorithms use a processing common to all the pixels, which simplifies their implementation in real time but to the detriment of the overall quality of the result obtained. Thus, with regard to the real-time processing requirement, the inventors have selected an algorithm of the type described in Duan et al (2010), which they have adapted to the implementation conditions previously described.
Concernant la sortie réseau (ETH), un contrôleur réseau Ethernet permettant de sortir les flux HDR non compressés à la vitesse où ils sont produits est mis en oeuvre. Un tel contrôleur permet notamment de pouvoir évaluer la qualité des algorithmes de productions du flux HDR avec des métriques. Concerning the network output (ETH), an Ethernet network controller allowing output of uncompressed HDR streams at the speed at which they are produced is implemented. Such a controller makes it possible in particular to be able to evaluate the quality of the production algorithms of the HDR stream with metrics.
La figure 4 illustre un autre exemple de mise en oeuvre, dans lequel la fonction pivot des zones de mémoire est détournée pour produire un flux HDR à une cadence plus élevée sensiblement proche de celle du capteur de la caméra SDR. En d'autres termes, dans cet exemple de réalisation, il est possible de produire un flux HDR à une cadence supérieure (en nombre d'images par seconde) à celles de la caméra SDR utilisée pour filmer la scène. Pour ce faire, les zones de mémoires stockant les différentes images sont utilisées de manière désynchronisée, en fonction de la programmation effectuée sur les temps d'exposition de la caméra par le sous module de programmation de temps d'exposition (CtrIEC) qui a été présenté précédemment. Cette technique est également utilisable avec deux caméras, comme cela a été exposé précédemment. FIG. 4 illustrates another example of implementation, in which the pivot function of the memory areas is diverted to produce an HDR stream at a higher rate substantially close to that of the sensor of the SDR camera. In other words, in this exemplary embodiment, it is possible to produce an HDR stream at a higher rate (in number of images per second) than those of the SDR camera used to film the scene. To do this, the memory zones storing the different images are used in a desynchronized manner, according to the programming carried out on the exposure times of the camera by the exposure time programming sub-module (CtrIEC) which has been presented previously. This technique can also be used with two cameras, as explained previously.
À titre d'exemple pour l'explication fournie en relation avec la figure 4, on considère qu'un seul capteur (un unique capteur) est utilisé pour produire trois flux SDR, chaque flux ayant une vitesse de 20 images par seconde (i.e. 60 images par seconde divisé par trois). Chaque exposition de chaque image est donc inférieure à l/60ieme de seconde. Dans cet exemple on produit cependant une vidéo HDR comprenant au minimum 60 images par seconde. Pour ce faire, comme explicité dans le cas général, les images sont enregistrées en zone mémoire et les traitements de recalage de pixels et de combinaison d'images HDR sont effectués en temps réel au fur et à mesure de la lecture des images dans les zones de mémoires ZM#1 à ZM#3. On notera que ce mode d'utilisation de la fonction de pivot des zones de mémoires est bien adapté à la mise en oeuvre du traitement de production d'un flux HDR dans un cas d'utilisation où un seul et unique capteur SDR est présent pour effectuer le capteur du fluxBy way of example for the explanation provided in relation to FIG. 4, it is considered that a single sensor (a single sensor) is used to produce three SDR streams, each stream having a speed of 20 images per second (ie 60 frames per second divided by three). Each exposure of each image is therefore less than 1/ 60th of a second. In this example, however, an HDR video comprising at least 60 images per second is produced. To do this, as explained in the general case, the images are recorded in the memory zone and the pixel registration and HDR image combination processing is carried out in real time as the images are read in the zones. ZM#1 to ZM#3 memories. It should be noted that this mode of use of the memory zone pivot function is well suited to the implementation of the production processing of an HDR stream in a use case where a single and unique SDR sensor is present for perform flow sensor
SDR. Dans cet exemple de la figure 4, à la première itération de capture, une image l[l], au temps court, est capturée par le capteur du sous-ensemble d'acquisition SSACQ. Cette image est stockée dans la zone de mémoire ZM#1 par le module MMU. A la deuxième itération de capture, une image I [2], au temps intermédiaire, est capturée par le capteur. Cette image est stockée dans la zone de mémoireSDR. In this example of FIG. 4, at the first capture iteration, an image l[l], at short time, is captured by the sensor of the SSACQ acquisition subassembly. This image is stored in the ZM#1 memory area by the MMU module. At the second capture iteration, an image I [2], at intermediate time, is captured by the sensor. This image is stored in the memory area
ZM#2. A la troisième itération de capture, une image I [3], au temps long, est capturée par le capteur.ZM#2. At the third capture iteration, an image I [3], at long time, is captured by the sensor.
Cette image est stockée dans la zone de mémoire ZM#3. Les trois zones mémoire ayant chacune une image (temps court, temps intermédiaire et temps long), le sous-ensemble de traitement récupère ces trois images en mémoire et effectuer la conversion en image HDR (IHDR[123]). La première image HDRThis image is stored in memory area ZM#3. The three memory zones each having an image (short time, intermediate time and long time), the processing subassembly recovers these three images in memory and performs the conversion into an HDR image (IHDR[123]). The first HDR image
1 1 a donc été obtenue en une captation de 3 x — 5 = —s, auquel on additionne le temps de traitement par le sous-ensemble de traitement (« à l/60eme de seconde) pour la conversion en image HDR. 1 1 was therefore obtained in a capture of 3 x — 5 = —s, to which we add the processing time by the processing sub-assembly (“at 1/ 60th of a second) for conversion into an HDR image.
En parallèle, le capteur du sous-ensemble d'acquisition SSACQ effectue une capture d'une nouvelle image l[4], au temps court, qui est stockée dans la zone de mémoire ZM#1 par le module MMU. Les trois zones de mémoire ayant à nouveau chacune une image (temps court I [4], temps intermédiaire I [2] et temps long I [3]), le sous-ensemble de traitement récupère ces trois images en mémoire et effectue à nouveau la conversion en image HDR (IHDR[423]). La deuxième image HDR a donc été obtenue en une captation « à l/60eme de seconde. In parallel, the sensor of the SSACQ acquisition subassembly performs a capture of a new image l[4], at short time, which is stored in the memory area ZM#1 by the MMU module. The three memory zones having once again each an image (short time I [4], intermediate time I [2] and long time I [3]), the processing subassembly recovers these three images in memory and again performs conversion to HDR image (IHDR[423]). The second HDR image was therefore obtained by recording “at 1/ 60th of a second.
En parallèle, le capteur du sous-ensemble d'acquisition SSACQ effectue une capture d'une nouvelle image l[5], au temps intermédiaire, qui est stockée dans la zone de mémoire ZM#2 par le module MMU. Les trois zones de mémoire ayant à nouveau chacune une image (temps court l[4], temps intermédiaire I [5] et temps long l[3]), le sous-ensemble de traitement récupère ces trois images en mémoire et effectue à nouveau la conversion en image HDR (IHDR[453]). La troisième image HDR a donc à nouveau été obtenue en une captation « à l/60eme de seconde. In parallel, the sensor of the SSACQ acquisition subassembly performs a capture of a new image l[5], at the intermediate time, which is stored in the memory zone ZM#2 by the module MMU. The three memory zones having once again each an image (short time l[4], intermediate time I [5] and long time l[3]), the processing subassembly recovers these three images in memory and again performs conversion to HDR image (IHDR[453]). The third HDR image was therefore again obtained by recording “at 1/ 60th of a second.
En parallèle, le capteur du sous-ensemble d'acquisition SSACQ effectue une capture d'une nouvelle image l[6], au temps long, qui est stockée dans la zone de mémoire ZM#2 par le module MMU. Les trois zones de mémoire ayant à nouveau chacune une image (temps court I [4], temps intermédiaire I [5] et temps long I [6]), le sous-ensemble de traitement récupère ces trois images en mémoire et effectue à nouveau la conversion en image HDR (IHDR[456]). La troisième image HDR a donc à nouveau été obtenue en une captation « à l/60eme de seconde. Ce processus est poursuivi tout au long du processus de captation et de transformation en flux HDR et il délivre bien un flux HDR à 60 images par seconde. Dans cet exemple de réalisation, une problématique qui peut se poser est la présence d'artefact. Il est donc souvent nécessaire d'effectuer un recalage de pixels, ce qui n'est pas le cas ou moins le cas lorsque deux ou plus capteurs sont utilisés. In parallel, the sensor of the SSACQ acquisition subassembly performs a capture of a new image l[6], at long time, which is stored in the memory zone ZM#2 by the module MMU. The three memory zones having once again each an image (short time I [4], intermediate time I [5] and long time I [6]), the processing subassembly recovers these three images in memory and again performs conversion to HDR image (IHDR[456]). The third HDR image was therefore again obtained by recording “at 1/ 60th of a second. This process is continued throughout the process of capturing and transforming into an HDR stream and it does deliver an HDR stream at 60 frames per second. In this embodiment, a problem that may arise is the presence of artifact. It is therefore often necessary to perform pixel registration, which is not the case or less the case when two or more sensors are used.
Dans un autre exemple de réalisation, au moins deux capteurs identiques sont utilisés pour la mise en oeuvre de la technique exposée. Ces au moins deux capteurs, bien qu'identiques, sont chacun programmés pour fonctionner à des vitesses de capture différentes. Plus particulièrement, il a été exposé précédemment que le sous module de programmation de temps d'exposition (CtrIEC) effectuait une programmation du temps d'exposition maximum des capteurs pour obtenir un temps court, un temps long et un intermédiaire dépendant du temps long. Ces temps d'exposition sont inférieurs (voire très inférieurs) à la cadence de production de la caméra. Par exemple dans le cas d'une cadence de production à 120 images par seconde, le temps court peut être de l/500eme de seconde, le temps intermédiaire à l/260ieme de seconde et le temps long à l/140ieme de seconde). Or il a été indiqué précédemment que les temps courts et longs avaient tous deux pour objectif de minimiser la présence de pixels saturés en blancs et en noirs respectivement (nombre de pixels inférieurs à un pourcentage donné de l'ensemble des pixels de l'image). Or, il peut advenir que dans certaines situations, le temps d'exposition maximum de l/120ieme de seconde ne soit pas suffisant pour minimiser les pixels saturés en noirs. Ainsi, dans un exemple de réalisation complémentaire, on configure les au moins deux capteurs pour qu'ils produisent des images SDR à des cadences de production différentes. Plus particulièrement, un des capteurs est configuré pour produire des images à la cadence de 120 images par seconde, tandis que l'autre capteur est configuré pour produire des images à la cadence de 60 images par seconde. Le deuxième capteur produit des images à une vitesse inférieure, mais bénéficie d'un temps d'exposition plus long. La contrepartie est qu'il peut alors plus efficacement produire des images dans lesquelles la quantité de pixels saturés en noir est inférieur à la valeur prédéterminée (par exemple 10%). Dans cette situation, il est alors possible de produire deux types de flux HDR, en fonction des ressources de calcul disponibles : le premier type de flux HDR est cadencé à 60 images par seconde, c'est-à-dire la plus « faible » valeur possible, en se calant sur la cadence de production du capteur configuré pour être le moins rapide. L'avantage de cette solution est que les traitements de recalage de pixels dus à la présence d'artefacts sont moins nombreux. L'avantage également est de pouvoir utiliser deux capteurs uniquement : le capteur fonctionnant à cadence de 120 images par seconde permet d'effectuer deux captures pendant le temps de capture au temps long ; le premier capteur obtient l'image au temps court et l'image au temps intermédiaire pendant que le deuxième capteur obtient l'image au temps long. Lorsque les trois images sont présentes dans les trois zones de mémoire considérées, celles-ci sont obtenues et traitées par le sous-ensemble de traitement pour produire une seule image HDR, selon l'une ou l'autre des situations de la figure 4. In another exemplary embodiment, at least two identical sensors are used to implement the technique described. These at least two sensors, although identical, are each programmed to operate at different capture speeds. More particularly, it was explained above that the exposure time programming sub-module (CtrIEC) performs programming of the maximum exposure time of the sensors to obtain a short time, a long time and an intermediate depending on the long time. These exposure times are lower (if not much lower) than the production rate of the camera. For example, in the case of a production rate of 120 images per second, the short time can be 1/500 th of a second, the intermediate time 1/260 th of a second and the long time 1/140 th of a second. second). However, it was previously indicated that the short and long times both had the objective of minimizing the presence of saturated pixels in white and black respectively (number of pixels less than a given percentage of all the pixels of the image) . However, it may happen that in certain situations, the maximum exposure time of 1 /120th of a second is not sufficient to minimize the pixels saturated in black. Thus, in a complementary exemplary embodiment, the at least two sensors are configured so that they produce SDR images at different production rates. More particularly, one of the sensors is configured to produce images at the rate of 120 images per second, while the other sensor is configured to produce images at the rate of 60 images per second. The second sensor produces images at a lower speed, but benefits from a longer exposure time. The counterpart is that it can then more efficiently produce images in which the quantity of pixels saturated in black is less than the predetermined value (for example 10%). In this situation, it is then possible to produce two types of HDR streams, depending on the computing resources available: the first type of HDR stream is clocked at 60 frames per second, i.e. the "lowest" possible value, based on the production rate of the sensor configured to be the slowest. The advantage of this solution is that there are fewer pixel registration processings due to the presence of artefacts. The advantage also is to be able to use only two sensors: the sensor operating at a rate of 120 images per second makes it possible to perform two captures during the long-time capture time; the first sensor obtains the image at short time and the image at intermediate time while the second sensor obtains the image at long time. When the three images are present in the three areas of memory considered, these are obtained and processed by the processing subassembly to produce a single HDR image, according to one or other of the situations in Figure 4.
Le deuxième type de flux HDR est cadencé à 120 images par seconde, c'est-à-dire la plus « haute » valeur possible, en se calant sur la cadence de production du capteur configuré pour être le plus rapide. Auquel cas, le procédé tel que décrit dans la figure 4 est mis en oeuvre. Chaque nouvelle image obtenue par le capteur dont la cadence de production est de cadence de 120 images par seconde est utilisée, immédiatement, pour effectuer le calcul d'une nouvelle image HDR. Dans cette situation, une image courante du capteur cadencé à 60 images par seconde sera utilisée pour produire deux images du capteur flux HDR. The second type of HDR stream is clocked at 120 frames per second, that is to say the "highest" value possible, by setting the production rate of the sensor configured to be the fastest. In which case, the method as described in FIG. 4 is implemented. Each new image obtained by the sensor whose production rate is 120 images per second is used immediately to calculate a new HDR image. In this situation, a common sensor image clocked at 60 frames per second will be used to produce two HDR flow sensor images.

Claims

REVENDICATIONS
1. Procédé de génération d'un flux vidéo comprenant un ensemble d'images à grande gamme dynamique, dit flux vidéo HDR, à partir d'une pluralité d'images à gamme dynamique standard obtenues par lecture d'au moins deux capteurs d'images ayant chacun une cadence de production d'images, chaque capteur comprenant une pluralité de pixels agencés sous forme matricielle, et associés chacun à un élément de conversion photoélectrique permettant de convertir une lumière reçue en charges électriques et d'accumuler lesdites charges électriques pendant un temps d'exposition à la lumière, procédé comprenant une pluralité d'itérations de création d'images grande gamme dynamique comprenant : une détermination (Dl) d'au moins trois temps d'exposition de capteurs comprenant : un temps d'exposition court TC, un temps d'exposition long TL et un temps d'exposition intermédiaire Tl, tels que TC<TI<TL ; au moins une itération d'une lecture (D2) de capteurs, parmi lesdits au moins deux capteurs, délivrant au moins trois images successives (IC, II, IL), en fonction desdits au moins trois temps d'exposition (TC, Tl, TL) de capteurs ; un enregistrement (D3), au sein d'au moins trois zones de mémoires dédiées (ZM#1, ZM#2, ZM#3), desdites au moins trois images successives (IC, II, IL), chaque zone de mémoire étant dédiée à un temps d'exposition de capteur parmi lesdits au moins trois temps d'exposition de capteurs ; une génération (D4) d'une image à grande gamme dynamique à partir d'informations extraites desdites au moins trois images successives (IC, II, IL) enregistrées respectivement au sein desdites au moins trois zones de mémoires dédiées (ZM#1, ZM#2, ZM#3) ; ajout (D5) de ladite image à grande gamme dynamique audit flux vidéo HDR, le procédé étant mis en oeuvre de sorte qu'à tout instant une image acquise au temps court (IC), une image acquise au temps intermédiaire (II) et une image acquise au temps long (IL) sont respectivement présentes au sein desdites au moins trois zones de mémoires dédiées (ZM#1, ZM#2, ZM#3). 1. Method for generating a video stream comprising a set of high dynamic range images, called HDR video stream, from a plurality of standard dynamic range images obtained by reading from at least two sensors of images each having an image production rate, each sensor comprising a plurality of pixels arranged in matrix form, and each associated with a photoelectric conversion element making it possible to convert received light into electric charges and to accumulate said electric charges for a light exposure time, method comprising a plurality of high dynamic range image creation iterations comprising: determining (D1) at least three sensor exposure times comprising: a short exposure time TC , a long exposure time TL and an intermediate exposure time T1, such that TC<TI<TL; at least one iteration of a reading (D2) of sensors, among said at least two sensors, delivering at least three successive images (IC, II, IL), as a function of said at least three exposure times (TC, T1, TL) of sensors; a recording (D3), within at least three dedicated memory areas (ZM#1, ZM#2, ZM#3), of said at least three successive images (IC, II, IL), each memory area being dedicated to a sensor exposure time among said at least three sensor exposure times; a generation (D4) of a high dynamic range image from information extracted from said at least three successive images (IC, II, IL) recorded respectively within said at least three dedicated memory zones (ZM#1, ZM #2, ZM#3); adding (D5) said high dynamic range image to said HDR video stream, the method being implemented so that at any instant an image acquired at short time (IC), an image acquired at intermediate time (II) and an image acquired at long time (IL) are respectively present within said at least three dedicated memory zones (ZM#1, ZM#2, ZM#3).
2. Procédé de génération flux vidéo HDR selon la revendication 1, caractérisé en ce que ladite détermination desdits au moins trois temps d'exposition (TC, Tl, TL) de capteurs comprend une détermination du temps d'exposition intermédiaire Tl en fonction dudit un temps d'exposition court TC et du temps d'exposition long TL 2. HDR video stream generation method according to claim 1, characterized in that said determination of said at least three exposure times (TC, Tl, TL) of sensors comprises a determination of the intermediate exposure time T1 as a function of said short exposure time TC and of the long exposure time TL
3. Procédé de génération flux vidéo HDR selon la revendication 1, caractérisé en ce que le temps d'exposition court (TC) est calculé de sorte qu'il produit, lors de la lecture d'un capteur parmi lesdits au moins deux capteurs, une image à gamme dynamique standard dont un pourcentage de pixels saturés en blancs est inférieur à un seuil prédéterminé. 3. HDR video stream generation method according to claim 1, characterized in that the short exposure time (TC) is calculated so that it produces, when reading a sensor among said at least two sensors, a standard dynamic range image with a percentage of white saturated pixels below a predetermined threshold.
4. Procédé de génération flux vidéo HDR selon la revendication 1, caractérisé en ce que le temps d'exposition long (TL) est calculé de sorte qu'il produit, lors de la lecture d'un capteur parmi lesdits au moins deux capteurs, une image à gamme dynamique standard dont un pourcentage de pixels saturés en noir est inférieur à un seuil prédéterminé. 4. HDR video stream generation method according to claim 1, characterized in that the long exposure time (TL) is calculated so that it produces, when reading a sensor among said at least two sensors, a standard dynamic range image with a percentage of black saturated pixels below a predetermined threshold.
5. Procédé de génération flux vidéo HDR selon la revendication 1, caractérisé en ce que le temps d'exposition intermédiaire (Tl) est obtenu comme la racine carrée du produit du temps d'exposition court (TC) et du temps d'exposition long (TL). 5. HDR video stream generation method according to claim 1, characterized in that the intermediate exposure time (Tl) is obtained as the square root of the product of the short exposure time (TC) and the long exposure time (TL).
6. Procédé de génération flux vidéo HDR selon la revendication 1, caractérisé en ce que le temps d'exposition le temps d'exposition long (TL) est inférieur à la cadence de production d'images d'au moins desdits capteurs parmi lesdits au moins deux capteurs. 6. HDR video stream generation method according to claim 1, characterized in that the exposure time the long exposure time (TL) is less than the image production rate of at least said sensors among said at least least two sensors.
7. Procédé de génération flux vidéo HDR selon la revendication 1, caractérisé en ce que la génération d'une image à grande gamme dynamique d'une itération courante de création d'une image à grande gamme dynamique est mise en oeuvre d'une à partir d'informations extraites d'au moins trois images successives courantes (IC, II, IL) et est mise en oeuvre parallèlement auxdites itérations d'une lecture de capteurs, parmi lesdits au moins deux capteurs, délivrant au moins trois images successives (IC, II, IL) de l'itération suivante de création d'une image à grande gamme dynamique. 7. HDR video stream generation method according to claim 1, characterized in that the generation of a high dynamic range image of a current iteration of creation of a high dynamic range image is implemented from one to from information extracted from at least three current successive images (IC, II, IL) and is implemented in parallel with said iterations of a reading of sensors, among said at least two sensors, delivering at least three successive images (IC , II, IL) of the next iteration of creating a high dynamic range image.
8. Procédé de génération flux vidéo HDR selon la revendication 1, caractérisé en ce que la cadence d'images du flux HDR est au moins égale à la cadence d'images d'au moins un capteur d'images parmi les dits au moins deux capteurs d'images. 8. HDR video stream generation method according to claim 1, characterized in that the frame rate of the HDR stream is at least equal to the frame rate of at least one image sensor among the said at least two image sensors.
9. Produit programme d'ordinateur comprenant des instructions de code de programme pour la mise en oeuvre d'un procédé selon l'une quelconque des revendications 1 à 8, lorsqu'il est exécuté par un processeur. 9. Computer program product comprising program code instructions for implementing a method according to any one of claims 1 to 8, when it is executed by a processor.
10. Dispositif de génération d'un flux vidéo comprenant un ensemble d'images à grande gamme dynamique, dit flux vidéo HDR, à partir d'une pluralité d'images à gamme dynamique standard obtenues par lecture d'au moins deux capteurs d'images ayant chacun une cadence de production d'images, chaque capteur comprenant une pluralité de pixels agencés sous forme matricielle, et associés chacun à un élément de conversion photoélectrique permettant de convertir une lumière reçue en charges électriques et d'accumuler lesdites charges électriques pendant un temps d'exposition à la lumière, caractérisé en ce que il comprend une unité de calcul adaptée à la mise en oeuvre des étapes du procédé de génération flux vidéo HDR selon l'une quelconque des revendications 1 à 8. 10. Device for generating a video stream comprising a set of high dynamic range images, called HDR video stream, from a plurality of standard dynamic range images obtained by reading from at least two sensors of images each having an image production rate, each sensor comprising a plurality of pixels arranged in matrix form, and each associated with a photoelectric conversion element making it possible to convert received light into electric charges and to accumulate said electric charges for a exposure time to light, characterized in that it comprises a calculation unit suitable for implementing the steps of the HDR video stream generation method according to any one of Claims 1 to 8.
EP22734211.0A 2021-06-02 2022-06-01 Method for processing pixel data, corresponding device and program Pending EP4349002A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR2105800A FR3123734A1 (en) 2021-06-02 2021-06-02 Pixel data processing method, device and corresponding program
PCT/EP2022/064985 WO2022253932A1 (en) 2021-06-02 2022-06-01 Method for processing pixel data, corresponding device and program

Publications (1)

Publication Number Publication Date
EP4349002A1 true EP4349002A1 (en) 2024-04-10

Family

ID=77021502

Family Applications (1)

Application Number Title Priority Date Filing Date
EP22734211.0A Pending EP4349002A1 (en) 2021-06-02 2022-06-01 Method for processing pixel data, corresponding device and program

Country Status (6)

Country Link
EP (1) EP4349002A1 (en)
JP (1) JP2024521366A (en)
KR (1) KR20240016331A (en)
CN (1) CN117795970A (en)
FR (1) FR3123734A1 (en)
WO (1) WO2022253932A1 (en)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4998056B2 (en) 2006-05-11 2012-08-15 セイコーエプソン株式会社 Imaging apparatus, imaging system, and imaging method
US9578223B2 (en) * 2013-08-21 2017-02-21 Qualcomm Incorporated System and method for capturing images with multiple image sensing elements
CA3016428C (en) * 2016-02-12 2024-01-09 Contrast Optical Design & Engineering, Inc. Devices and methods for high dynamic range video
US9918018B2 (en) * 2016-04-04 2018-03-13 Illinois Tool Works Inc. Dynamic range enhancement systems and methods for use in welding applications
US9979906B2 (en) * 2016-08-03 2018-05-22 Waymo Llc Beam split extended dynamic range image capture system
FR3062009B1 (en) 2017-01-17 2019-08-16 Centre National De La Recherche Scientifique ADAPTIVE GENERATION OF A DYNAMICALLY ENHANCED SCENE IMAGE OF A SCENE FROM A PLURALITY OF IMAGES OBTAINED BY NON-DESTRUCTIVE READING OF AN IMAGE SENSOR

Also Published As

Publication number Publication date
FR3123734A1 (en) 2022-12-09
KR20240016331A (en) 2024-02-06
JP2024521366A (en) 2024-05-31
WO2022253932A1 (en) 2022-12-08
CN117795970A (en) 2024-03-29

Similar Documents

Publication Publication Date Title
US11854167B2 (en) Photographic underexposure correction using a neural network
US9077911B2 (en) Multi-exposure video
FR2882160A1 (en) Video image capturing method for e.g. portable telephone, involves measuring local movements on edges of images and estimating parameters of global movement model in utilizing result of measurement of local movements
EP0347984A1 (en) System for processing television pictures with a motion estimator and reduced data rate
EP3571834B1 (en) Adaptive generation of a high dynamic range image of a scene, on the basis of a plurality of images obtained by non-destructive reading of an image sensor
CA2889811A1 (en) Method and device for capturing and constructing a stream of panoramic or stereoscopic images
JP2023548748A (en) Frame processing and/or capture instruction systems and techniques
FR3037756A1 (en) METHOD AND DEVICE FOR PRODUCING A DIGITAL IMAGE
Loke Astronomical image acquisition using an improved track and accumulate method
WO2022253932A1 (en) Method for processing pixel data, corresponding device and program
EP3473000A1 (en) Image capture method and system using a virtual sensor
FR2881599A1 (en) METHOD AND DEVICE FOR REPLACING DEFECTIVE PIXELS IN FPA CAMERAS
EP2221727B1 (en) System and method for processing digital data
EP3918576A1 (en) Dynamic three-dimensional imaging method
FR3078427A1 (en) DYNAMIC DETECTION OF LIGHT PARASITE IN A DIGITAL IMAGE
CN113347490B (en) Video processing method, terminal and storage medium
US20230370727A1 (en) High dynamic range (hdr) image generation using a combined short exposure image
EP0561674B1 (en) Pixel non uniformity correction method for a solid-state sensor and device thereof
FR2968878A1 (en) METHOD AND DEVICE FOR GENERATING IMAGES COMPRISING KINETIC FLOU
WO2014131726A1 (en) Method of producing images and linear-sensor camera
FR3006500A1 (en) CMOS SENSOR WITH STANDARD PHOTOSITES
FR3140234A1 (en) parameter processing method, device, system and corresponding program
TW202416719A (en) Compression of images for generating combined images
FR2858087A1 (en) Exposure/shooting film representation simulating method for e.g. cinema field, involves digitizing images captured on silver halide film and sensitometry reference, establishing initial sensitometry relation and new digital codes
FR3138230A1 (en) Device and method for forming a low-noise image from a burst of images

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

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

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

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

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

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20231124

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