WO2024194544A1 - Procede de traitement d'une image brute, produit programme d'ordinateur et dispositif de traitement associes - Google Patents
Procede de traitement d'une image brute, produit programme d'ordinateur et dispositif de traitement associes Download PDFInfo
- Publication number
- WO2024194544A1 WO2024194544A1 PCT/FR2023/050406 FR2023050406W WO2024194544A1 WO 2024194544 A1 WO2024194544 A1 WO 2024194544A1 FR 2023050406 W FR2023050406 W FR 2023050406W WO 2024194544 A1 WO2024194544 A1 WO 2024194544A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- image
- transfer function
- optical transfer
- camera module
- estimated
- Prior art date
Links
- 238000012545 processing Methods 0.000 title claims abstract description 92
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000004590 computer program Methods 0.000 title claims description 8
- 230000003287 optical effect Effects 0.000 claims abstract description 73
- 238000012546 transfer Methods 0.000 claims abstract description 53
- 238000004364 calculation method Methods 0.000 claims description 35
- 230000008569 process Effects 0.000 claims description 5
- 238000003672 processing method Methods 0.000 claims description 4
- 230000000873 masking effect Effects 0.000 claims description 2
- 230000006870 function Effects 0.000 description 63
- 239000011159 matrix material Substances 0.000 description 10
- 230000008901 benefit Effects 0.000 description 5
- 238000005259 measurement Methods 0.000 description 3
- 241000283984 Rodentia Species 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000000137 annealing Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000002059 diagnostic imaging Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000000386 microscopy Methods 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 238000003325 tomography Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4015—Image demosaicing, e.g. colour filter arrays [CFA] or Bayer patterns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
Definitions
- the present invention relates to a method for processing a raw image from a camera module.
- the invention also relates to a computer program, a processing device configured to implement such a method, and an electronic apparatus comprising such a processing device.
- the invention applies to the field of digital image sensors, in particular digital photographic devices and digital cameras, for example for telephones, tablets or laptops.
- color filter array image sensors More precisely, in such a sensor, a mosaic of color filters is arranged on a matrix of photosites forming a detector, each color filter being placed opposite a respective photosite.
- the mosaic of colored filters is a regular mosaic whose elementary pattern forms a Bayer matrix.
- a Bayer matrix comprises four filters arranged in two rows of two filters: two green filters (i.e. rejecting photons outside of green) form the diagonal of the matrix, while the other two locations are respectively occupied by a blue filter (rejecting photons outside of blue) and a red filter (rejecting photons outside of red).
- Such sensors have the advantage of detecting several color bands through a single optical system that projects the observed scene onto the same image plane, namely the detector plane. Consequently, due to their optical simplicity, such sensors are commonly used in the camera modules of smart phones (or "smartphones" in English).
- each color is detected only at a fraction of the photosites (namely those associated with the corresponding filter).
- the raw image thus obtained is called “mosaiced”, and can be decomposed into three images R (red), G (green), B (blue), aligned with each other to the first order, corresponding to the nested lattices of colored filters.
- the value of the missing channels is obtained by interpolation, called “demosaicing", from the value of said channels in the neighboring pixels.
- Other image processing algorithms such as noise reduction (for dark areas of the image) or enhancement of high spatial frequencies (to compensate for losses due to noise reduction), are also likely to be implemented.
- each pixel is associated with a photosite and includes a value for each red, green and blue channel.
- the focal point of the optical system does not always have a dimension less than or equal to the size of the pixels of the detector (or the size of a Bayer matrix). Consequently, the zoomed image is likely to include areas with insufficient sharpness.
- An aim of the present invention is to remedy at least one of the drawbacks of the state of the art.
- Another object of the invention is to provide a method which, when applying a digital zoom, provides an output image of satisfactory quality.
- an aim of the invention is to propose a method which does not lead, when applying the digital zoom, to the appearance of artifacts, and/or for which the image provided at the output presents fewer sharpness problems than in the method of the state of the art.
- Another aim of the invention is to propose a method which has these advantages while being fast and requiring little computing resources.
- the invention relates to a method of the aforementioned type, in which the raw image is representative of a scene acquired by a sensor of the camera module through an optical system of the camera module, the camera module being associated with an optical transfer function between the scene and the sensor, the method being implemented by computer and comprising the steps:
- the use of the optical transfer function makes it possible to overcome, to the first order, the defects introduced by the optical system of the camera module. Then, thanks to the iterative implementation of the calculation loop, a convergence towards an image which is the most faithful to the captured scene is acquired.
- the method according to the invention has one or more of the following characteristics, taken in isolation or in any technically possible combination(s): [0023] the enlargement instruction is also indicative of a desired size of the rendered image;
- the determination of the cost function includes:
- the difference term is a function of differences between the values of the pixels of the current simulated image and the input image
- the penalty term includes at least one of:
- an intensity component which is an increasing function of the intensity variations of at least one channel between neighboring pixels of the estimated image
- updating the estimated image includes minimizing the determined cost function
- the initial calculation step of the estimated image comprises:
- a first calculation comprising: o determination of an intermediate frequency image, equal to the result of a multiplication of a Fourier transform of the input image by the inverse frequency optical transfer function; and o calculation of an inverse Fourier transform of the intermediate frequency image to obtain the estimated image, or
- a second calculation comprising: o determining an inverse optical transfer function equal to an inverse Fourier transform of the frequency inverse optical transfer function; and o convolving the input image with the determined inverse optical transfer function to obtain the estimated image;
- the method further comprises receiving distance information representative of distances between objects in the scene and the sensor, the optical transfer function implemented in the calculation of the current simulated image depending on the distance information;
- the senor comprises a matrix of photosites associated with a matrix of colored filters, each colored filter masking an input surface of a respective photosite.
- the computer program may be in any computer language, such as for example machine language, C, C++, JAVA, Python, etc.
- a device for processing a raw image from a camera module the raw image being representative of a scene acquired by a sensor of the camera module through an optical system of the camera module, the camera module being associated with an optical transfer function between the scene and the sensor, the processing device being configured to:
- the device according to the invention may be any type of device such as a server, a computer, a tablet, a calculator, a processor, a computer chip, programmed to implement the method according to the invention, for example by executing the computer program according to the invention.
- an electronic device comprising a processing device as defined above, a user interface and a camera module configured to acquire at least one raw image, the processing device being connected to the camera module to receive, as input, all or part of the raw images acquired by the camera module, and being configured to process each raw image received from an enlargement instruction received from the user interface.
- the electronic device is a smart mobile phone (or “smartphone” in English), also called an ordiphone or multifunction mobile phone.
- the invention also relates to a use of a processing device according to the invention and/or a processing method according to the invention, within the smart mobile telephone, for processing at least one raw image acquired by the camera module of the smart mobile telephone.
- the electronic device is a touch pad.
- the invention also relates to a use of a treatment device according to the invention and/or of a treatment method. according to the invention, within the touch pad, to process at least one raw image acquired by the camera module of the touch pad.
- Figure 1 is a schematic representation of an image processing system comprising a magnification device according to the invention.
- Figure 2 is a flow chart of an enlargement method according to the invention, implemented by the device of Figure 1.
- FIG. 1 An image processing device 2 (or “processing device”) according to the invention is illustrated in FIG. 1.
- the processing device 2 is configured to calculate a restored image, determined from a raw image representative of a scene 3 and acquired by a camera module 4, and from an enlargement instruction relating to a part of the raw image to be enlarged.
- a restored image advantageously has better sharpness and/or better resolution and/or less noise than said part of the raw image simply enlarged.
- the processing device 2 and the camera module 4 are, for example, both integrated into the same electronic device 6.
- the processing device 2 is connected to the camera module 4 to receive, as input, each raw image acquired by the camera module 4.
- the electronic device is, for example, a smartphone, a touch pad, or a digital camera.
- the electronic device 6 is a video surveillance device, a vehicle, a drone, a satellite, a microscopy device, or a medical imaging device (such as a tomography imaging device).
- the electronic apparatus 6 also comprises a user interface 8 for the input, by a user, of the aforementioned enlargement instruction.
- a user interface 8 for the input, by a user, of the aforementioned enlargement instruction.
- Such an instruction is representative of the portion of the raw image that the user wishes to see enlarged.
- the portion of the raw image that the user wishes to enlarge will be referred to as the "input image.”
- the electronic device 6 also comprises a distance measurement module 10, configured to deliver distance information representative of distances between all or part of the objects of the scene 3 and a sensor (described later) of the camera module 4.
- the measuring module 10 is, in particular, a rangefinder, for example an optical rangefinder.
- the camera module 4 comprises at least one assembly comprising an optical system 12 associated with a sensor 14.
- the senor 14 comprises a matrix of photosites associated with a matrix of colored filters.
- each colored filter is arranged to mask an input surface of a respective photosite.
- the camera module 4 is associated with an optical transfer function between the scene 3 and the sensor 14.
- Such an optical transfer function establishes a relationship between the characteristics (spatial and spectral, in particular) of the light coming from the scene 3 and the characteristics of the light reaching the sensor 14, in particular due to the influence of the optical system 12.
- the optical transfer function of the camera module 4 is described by means of a point spread function of said camera module 4.
- optical transfer function is, for example, a function of at least one of:
- the processing device 2 is configured to implement a processing method 20 (FIG. 2) to calculate the restored image from the raw image and the enlargement instruction.
- Such a processing method 20 comprises a reception step 22, an initialization step 24, an iterative processing loop 26 and a restitution step 28.
- the processing device 2 is likely to be in a hardware form, such as a computer, a server, a processor, an electronic chip, etc. Alternatively, or additionally, the processing device 2 is likely to be in a software form such as a computer program, or an application, for example an application for a user device of the tablet or smartphone type.
- the processing device 2 is configured to receive, during the reception step 22, the raw image from the camera module 4.
- the raw image is already stored in a memory of the processing device 2.
- the raw image has been acquired by another electronic device, then transmitted to the processing device 2 for its processing.
- the processing device 2 is configured to receive, during the reception step 22, the enlargement instruction entered through the user interface 8.
- the enlargement instruction is indicative of the input image concerned by the processing, i.e. the part of the raw image that the user wishes to enlarge.
- Such an input image is strictly smaller than the raw image from which it is extracted.
- the enlargement instruction is also indicative of a desired size of the rendered image.
- This is, for example, the size of a window in which the rendered image will be displayed, or the size of a file in which the rendered image will be stored.
- This is advantageous, insofar as such an indication conditions the number of pixels of the rendered image, for example to match the number of pixels on a screen on which the rendered image will be displayed.
- the processing device 2 is also configured to implement, during the initialization step 24, an initial calculation of an estimated image. Said initially calculated estimated image is intended to be subsequently updated iteratively by the implementation of the iterative processing loop 26 (described later).
- the processing device 2 is configured to calculate the initial estimated image from the input image, by deconvolution of the optical transfer function of the input image.
- the distance information from the measurement module 8 is taken into account in the choice of the optical transfer function.
- the processing device 2 is configured to perform a deconvolution of the optical transfer function for the distance of the point of the scene imaged by said photosite, obtained through the distance information from the measurement module 10.
- the value of the optical transfer function for the photosites which image the tree 30 in the background is likely to differ from its value for the photosites which image the rodent 32 in the foreground.
- the processing device 2 is configured to perform a deconvolution of the optical transfer function corresponding to the current state of the optical system 12 (optical zoom, numerical aperture, etc.).
- the processing device 2 is configured to determine a Fourier transform of the optical transfer function.
- the Fourier transforms as well as the corresponding inverse Fourier transforms, are understood in the sense of spatial frequencies, in particular in the plane of the photosite matrix.
- the processing device 2 is further configured to then determine a frequency inverse optical transfer function.
- the processing device 2 is configured to invert each of the coefficients of the previously determined Fourier transform.
- the processing device 2 is also configured to modify the value of at least a portion of the inverses obtained.
- the processing device 2 is configured to reduce the value of the coefficients corresponding to the highest frequencies, for example by implementing a Wiener filter.
- the processing device 2 is configured to implement either a first calculation or a second calculation.
- the processing device 2 is configured to, when implementing the first calculation:
- the processing device 2 is configured to, when implementing the second calculation: - determine an inverse optical transfer function, equal to an inverse Fourier transform of the frequency inverse optical transfer function;
- Such a second calculation although conceptually simpler, is generally more resource-intensive than the first calculation, particularly if the optical transfer function is uniform.
- the input image is increased by a band of pixels neighboring the raw image, during the first or second calculation.
- the size of the estimated image is a function of the desired size included in the enlargement instruction.
- the initial estimated image is obtained.
- processing device 2 is configured to implement, during step 26, an iterative processing loop.
- the iterative processing loop comprises a phase of calculating a current simulated image, a subsequent phase of determining a cost function, and a phase of determining whether or not a predetermined stopping criterion has been reached.
- the processing device 2 is configured to first calculate the current simulated image. More precisely, the processing device 2 is configured to calculate the current simulated image from the current estimated image and the optical transfer function. In particular, at the first iteration of the iterative processing loop, the current estimated image is the initial estimated image obtained at the end of the initialization step 24.
- the current simulated image is equal to a result of the convolution of the current estimated image and the optical transfer function.
- the processing device 2 is configured to then determine the cost function E from at least one of the current simulated image and the current estimated image.
- the processing device 2 is configured to:
- the difference term D includes a component equal to the sum of the squares of the deviations, pixel by pixel, between the input image and the current simulated image.
- the difference term D comprises a component equal to the sum of the absolute values of the differences, pixel by pixel, between the input image and the current simulated image.
- other components are also possible, provided that their value decreases when the difference, in absolute value, between the value of a pixel of the current simulated image and the value of the corresponding pixel of the input image decreases.
- pixel value it is understood, for the purposes of the present invention, the values R, G, B, or even brightness, hue, saturation. Conventionally, the brightness, hue and saturation are obtained by a linear combination of the components R, G, B.
- the penalty term P comprises an intensity component which is an increasing function of the intensity variations of at least one channel between neighboring pixels of the estimated image.
- the penalty term is all the greater as the value of the intensity jumps between a pixel and one of the neighboring pixels is large.
- the penalty term P comprises a color component which is an increasing function of the variations in hue and/or saturation and/or brightness between neighboring pixels of the estimated image. In this way, the penalty term is all the greater as the value of the jumps in hue and/or saturation and/or brightness between a pixel and one of the neighboring pixels is large.
- the penalty term P includes a regularity component whose value is all the lower as the contours of the objects present in the image are regular, that is to say present few changes of direction. This is advantageous in the case where a pixel density required for the rendered image is greater than that of the sensor. Consequently, a minimization of the regularity component results in contours of the objects, on the rendered image, which are more regular than the slots corresponding to the pixels of the sensor which would have been obtained at equal density between the rendered image and the input image.
- the processing device 2 is configured to then determine whether the predetermined stopping criterion is reached.
- Such a predetermined criterion is, for example, the achievement of a predetermined number of iterations of the iterative processing loop, or even a variation (absolute or relative) of the cost function, compared to the previous iteration, less than a predetermined threshold.
- the processing device 2 is configured to, when the loop exit criterion is not reached, update the estimated image from the determined cost function E.
- the processing device 2 is configured to update the estimated image so as to minimize the cost function E.
- the estimated image converges towards the image which would have been acquired with an optical system 12 allowing focusing of the light coming from each point of the scene 3 on an area of the order of the dimensions of a photosite of the sensor 14, or even smaller.
- the processing device 2 is configured to calculate a gradient of the cost function E as a function of parameters of the estimated image.
- parameters are, in particular, the parameters on which the difference term D and/or the penalty term P depend.
- the processing device 2 is configured to perform such calculations on the basis of objects represented on the estimated image, and not on the basis of the pixels of the estimated image.
- the processing device 2 is configured to identify such objects on the basis, for example, of the value of certain properties R, G, B and/or of variations, in the image, of these properties (for example spatial gradient of the values R, G, B), and/or on the basis of the position and/or the shape of said objects.
- the processing device 2 is, for example, configured to calculate the gradient of the cost function E with respect to the parameters of these objects, rather than directly in relation to the pixels they contain. This potentially has some advantages, such as faster convergence, or even better definition of the contours of the resulting objects.
- the shape to be rendered is a circle
- the contours of the objects obtained in the image may be more regular than their representation by pixels
- the processing device 2 is configured to modify the estimated image with respect to the calculated gradient, in particular in a direction opposite to the calculated gradient.
- the processing device 2 is configured to update the image estimated by a Newton gradient method or an annealing method, on the basis of the calculated cost function E.
- the processing device 2 is configured to, when the stopping criterion is reached, provide, as output, a restored image equal to the current estimated image, i.e. the estimated image calculated during the last implementation of the processing loop.
- the rendered image is displayed on a screen, or stored in a memory, for display or subsequent processing or use.
- the processing device 2 receives the raw image previously acquired by the camera module 4, as well as the enlargement instruction entered through the user interface 8. [0112] Then, during the initialization step 24, the processing device 2 implements the initial calculation of the estimated image, by deconvolving the optical transfer function of the input image.
- step 26 the processing device 2 implements the iterative processing loop.
- the processing device 2 More precisely, at each iteration of the processing loop, the processing device 2:
- the processing device 2 provides, as output, the restored image, equal to the estimated image calculated during the last implementation of the processing loop 26.
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
Abstract
L'invention concerne un procédé (20) de traitement d'une image brute acquise par un module caméra présentant une fonction de transfert optique, le procédé comprenant les étapes : - réception (20) d'une instruction d'agrandissement indicative d'une partie de l'image brute à agrandir formant une image d'entrée; - calcul initial (24) d'une image estimée, par déconvolution de la fonction de transfert optique de l'image d'entrée; - mise en œuvre itérative d'une boucle de traitement (26) comprenant : - calcul d'une image simulée courante à partir de l'image estimée courante et de la fonction de transfert optique; - détermination d'une fonction de coût; - si un critère d'arrêt prédéterminé est atteint, sortie de la boucle de traitement, sinon, mise à jour de l'image estimée à partir de la fonction de coût déterminée; - fourniture (28), en sortie, d'une image restituée égale à l'image estimée courante.
Description
Titre : Procédé de traitement d'une image brute, produit programme d'ordinateur et dispositif de traitement associés
DESCRIPTION
Domaine de l'invention
[0001] La présente invention concerne un procédé de traitement d'une image brute issue d'un module caméra.
[0002] L'invention concerne également un programme d'ordinateur, un dispositif de traitement configuré pour mettre en œuvre un tel procédé, et un appareil électronique comprenant un tel dispositif de traitement.
[0003] L'invention s'applique au domaine des capteurs numériques d'images, en particulier les appareils photographiques numériques et les caméras numériques, par exemple pour téléphone, tablette ou ordinateur portable.
État de la technique
[0004] Il est connu de concevoir des capteurs d'image dits à matrice de filtres colorés (ou « Color Filter Array »). Plus précisément, dans un tel capteur, une mosaïque de filtres colorés est disposée sur une matrice de photosites formant un détecteur, chaque filtre coloré étant en placé en regard d'un photosite respectif.
[0005] À titre d'exemple, la mosaïque de filtres colorés est une mosaïque régulière dont le motif élémentaire forme une matrice de Bayer. Une telle matrice de Bayer comprend quatre filtres agencés en deux lignes de deux filtres : deux filtres verts (c'est-à-dire rejetant les photons en dehors du vert) forment la diagonale de la matrice, tandis que les deux autres emplacements sont respectivement occupés par une filtre bleu (rejetant les photons en dehors du bleu) et un filtre rouge (rejetant les photons en dehors du rouge).
[0006] De tels capteurs présentent l'avantage de détecter plusieurs bandes de couleur à travers un seul et même système optique qui projette la scène observée sur un même plan image, à savoir le plan du détecteur. Par conséquent, en raison de leur simplicité optique, de tels capteurs sont couramment employés dans les modules caméras des téléphones intelligents (ou « smartphones » en anglais).
[0007] Du fait de la présence de la mosaïque de filtres colorés, chaque couleur n'est détectée qu'au niveau d'une fraction des photosites (à savoir ceux associés au filtre correspondant). L'image brute ainsi obtenue est dite « mosaïquée », et peut être décomposée en trois images R (rouge), V (vert), B (bleu), alignées entre elles au premier ordre, correspondant aux treillis imbriqués de filtres colorés.
[0008] Puis, pour chaque pixel de l'image brute, la valeur des canaux manquants (rouge et vert, vert et bleu, ou rouge et bleu) est obtenue par interpolation, dite « dématriçage », à partir de la valeur desdits canaux dans les pixels voisins. D'autres algorithmes de traitement d'image, telles qu'une réduction de bruit (pour les zones sombres de l'image) ou un rehaussement des hautes fréquences spatiales (pour compenser les pertes dues à la réduction de bruit), sont également susceptibles d'être mis en œuvre.
[0009] De cette façon, une image finale est obtenue, dans laquelle chaque pixel est associé à un photosite et comprend une valeur pour chaque canal rouge, vert et bleu.
[0010] Néanmoins, un tel procédé ne donne pas entière satisfaction.
[0011] En effet, lorsque l'on réalise un zoom numérique sur l'image finale ainsi obtenue, il est fréquent d'observer des artefacts, tels que des franges colorées de part et d'autre d'un objet de la scène imagée, par exemple rouges d'un côté, bleues de l'autre. En outre, à l'issue d'un tel zoom numérique, la netteté est souvent insuffisante, et même en deçà du pas de pixellisation de l'image.
[0012] Ceci résulte, en partie, des aberrations chromatiques du système optique, qui conduisent à des décalages des points de focalisation des trois
composantes R, V, B de la lumière provenant de la scène, introduisant des erreurs lors de l'opération de dématriçage.
[0013] En outre, le point focal du système optique ne présente pas toujours une dimension inférieure ou égale à la taille des pixels du détecteur (ou à la taille d'une matrice de Bayer). Par conséquent, l'image zoomée est susceptible de comporter des zones présentant une netteté insuffisante.
[0014] Un but de la présente invention est de remédier à au moins un des inconvénients de l'état de la technique.
[0015] Un autre but de l'invention est de proposer un procédé qui, lors de l'application d'un zoom numérique, fournisse en sortie une image de qualité satisfaisante.
[0016] En particulier, un but de l'invention est de proposer un procédé qui ne conduise pas, lors de l'application du zoom numérique, à l'apparition d'artefacts, et/ou pour lequel l'image fournie en sortie présente moins de problèmes de netteté que dans le procédé de l'état de l'art.
[0017] Un autre but de l'invention est de proposer un procédé qui présente ces avantages tout en étant rapide et peu gourmand en ressources de calcul.
Exposé de l'invention
[0018] À cet effet, l'invention concerne un procédé du type précité, dans lequel l'image brute est représentative d'une scène acquise par un capteur du module caméra à travers un système optique du module caméra, le module caméra étant associé à une fonction de transfert optique entre la scène et le capteur, le procédé étant mis en œuvre par ordinateur et comprenant les étapes :
- réception d'une instruction d'agrandissement indicative d'une partie de l'image brute, strictement plus petite que l'image brute et formant une image d'entrée, à agrandir ;
- calcul initial d'une image estimée, par déconvolution de la fonction de transfert optique de l'image d'entrée ;
- mise en œuvre itérative d'une boucle de traitement comprenant :
• calcul d'une image simulée courante à partir de l'image estimée courante et de la fonction de transfert optique ;
• détermination d'une fonction de coût à partir d'au moins une parmi l'image simulée courante et l'image estimée courante ;
• si un critère d'arrêt prédéterminé est atteint, sortie de la boucle de traitement, sinon, mise à jour de l'image estimée à partir de la fonction de coût déterminée ;
- fourniture, en sortie, d'une image restituée égale à l'image estimée courante.
[0019] En effet, grâce à un tel procédé, le recours à la fonction de transfert optique permet de s'affranchir, au premier ordre, des défauts introduits par le système optique du module caméra. Puis, grâce à la mise en œuvre itérative de la boucle de calcul, une convergence vers une image qui est la plus fidèle à la scène capturée est acquise.
[0020] En outre, la prise en compte de l'instruction d'agrandissement conduit à ne mettre en œuvre la boucle de calcul que sur une partie de l'image, ce qui réduit le nombre de calculs à réaliser, par exemple pour la déconvolution ou la mise à jour de l'image estimée.
[0021] Enfin, grâce à la prise en compte de l'instruction d'agrandissement, il est plus probable que la partie de l'image considérée contienne un objet situé à une seule distance du capteur, comparé à la situation où toute la scène capturée est considérée. Dans ce cas, il est probable que la fonction de transfert optique soit uniforme sur la totalité de la partie considérée, ou au moins sur une fraction non négligeable de celle-ci. Il en résulte que le besoin en ressources de calcul est davantage réduit.
[0022] De façon avantageuse, le procédé selon l'invention présente une ou plusieurs des caractéristiques suivantes, prises isolément ou selon toute(s) combinaison(s) techniquement possible(s) :
[0023] l'instruction d'agrandissement est également indicative d'une taille souhaitée de l'image restituée ;
[0024] la détermination de la fonction de coût comprend :
- le calcul d'un terme de différence à partir d'une comparaison entre l'image simulée courante et l'image d'entrée ; et/ou
- le calcul d'un terme de pénalité à partir de caractéristiques de l'image estimée courante ;
[0025] le terme de différence est fonction de différences entre les valeurs des pixels de l'image simulée courante et de l'image d'entrée ;
[0026] le terme de pénalité comprend au moins une parmi :
- une composante d'intensité qui est une fonction croissante des variations d'intensité d'au moins un canal entre pixels voisins de l'image estimée ; et/ou
- une composante de couleur qui est une fonction croissante des variations de teinte et/ou de saturation et/ou de luminosité entre pixels voisins de l'image estimée ;
[0027] la mise à jour de l'image estimée comprend une minimisation de la fonction de coût déterminée ;
[0028] l'étape de calcul initial de l'image estimée comprend :
- détermination d'une transformée de Fourier de la fonction de transfert optique ;
- détermination d'une fonction de transfert optique inverse fréquentielle par inversion des coefficients de la transformée de Fourier déterminée ;
- mise en œuvre :
• d'un premier calcul comportant : o détermination d'une image fréquentielle intermédiaire, égale au résultat d'une multiplication d'une transformée de Fourier de l'image d'entrée par la fonction de transfert optique inverse fréquentielle ; et o calcul d'une transformée de Fourier inverse de l'image fréquentielle intermédiaire pour obtenir l'image estimée, ou
• d'un deuxième calcul comportant :
o détermination d'une fonction de transfert optique inverse égale à une transformée de Fourier inverse de la fonction de transfert optique inverse fréquentielle ; et o convolution de l'image d'entrée avec la fonction de transfert optique inverse déterminée pour obtenir l'image estimée ;
[0029] le procédé comprend, en outre, la réception d'une information de distance représentative de distances entre des objets de la scène et le capteur, la fonction de transfert optique mise en œuvre dans le calcul de l'image simulée courante dépendant de l'information de distance ;
[0030] le capteur comprend une matrice de photosites associée à une matrice de filtres colorés, chaque filtre coloré masquant une surface d'entrée d'un photosite respectif.
[0031] Selon un autre aspect de l'invention, il est proposé un programme d'ordinateur comprenant des instructions exécutables qui, lorsqu'elles sont exécutées par ordinateur, mettent en œuvre les étapes du procédé tel que défini ci-dessus.
[0032] Le programme d'ordinateur peut être en tout langage informatique, tel que par exemple en langage machine, en C, C+ + , JAVA, Python, etc.
[0033] Selon un autre aspect de l'invention, il est proposé un dispositif de traitement d'une image brute issue d'un module caméra, l'image brute étant représentative d'une scène acquise par un capteur du module caméra à travers un système optique du module caméra, le module caméra étant associé à une fonction de transfert optique entre la scène et le capteur, le dispositif de traitement étant configuré pour :
- recevoir une instruction d'agrandissement indicative d'une partie de l'image brute, strictement plus petite que l'image brute et formant une image d'entrée, à agrandir ;
- réaliser un calcul initial d'une image estimée, par déconvolution de la fonction de transfert optique de l'image d'entrée ;
- mettre en œuvre itérativement une boucle de traitement comprenant :
• calcul d'une image simulée courante à partir de l'image estimée courante et de la fonction de transfert optique ;
• détermination d'une fonction de coût à partir d'au moins une parmi l'image simulée courante et l'image estimée courante ;
• si un critère d'arrêt prédéterminé est atteint, sortie de la boucle de traitement, sinon, mise à jour de l'image estimée à partir de la fonction de coût déterminée ;
- fournir, en sortie, une image restituée égale à l'image estimée courante.
[0034] Le dispositif selon l'invention peut être tout type d'appareil tel qu'un serveur, un ordinateur, une tablette, un calculateur, un processeur, une puce informatique, programmé pour mettre en œuvre le procédé selon l'invention, par exemple en exécutant le programme d'ordinateur selon l'invention.
[0035] Selon un autre aspect de l'invention, il est proposé un appareil électronique comprenant un dispositif de traitement tel que défini ci-dessus, une interface utilisateur et un module caméra configuré pour acquérir au moins une image brute, le dispositif de traitement étant relié au module caméra pour recevoir, en entrée, tout ou partie des images brutes acquises par le module caméra, et étant configuré pour traiter chaque image brute reçue à partir d'une instruction d'agrandissement reçue issue de l'interface utilisateur.
[0036] De préférence, l'appareil électronique est un téléphone mobile intelligent (ou « smartphone » en anglais), également appelé ordiphone ou téléphone mobile multifonction).
[0037] Dans ce cas, l'invention concerne également une utilisation d'un dispositif de traitement selon l'invention et/ou d'un procédé de traitement selon l'invention, au sein du téléphone mobile intelligent, pour traiter au moins une image brute acquise par le module caméra du téléphone mobile intelligent.
[0038] En variante, l'appareil électronique est une tablette tactile.
[0039] Dans ce cas, l'invention concerne également une utilisation d'un dispositif de traitement selon l'invention et/ou d'un procédé de traitement
selon l'invention, au sein de la tablette tactile, pour traiter au moins une image brute acquise par le module caméra de la tablette tactile.
Brève description des figures
[0040] L'invention sera mieux comprise à la lecture de la description qui va suivre, donnée uniquement à titre d'exemple non limitatif et faite en se référant aux dessins annexés sur lesquels :
[0041] la figure 1 est une représentation schématique d'un système de traitement d'image comprenant un dispositif d'agrandissement selon l'invention ; et
[0042] la figure 2 est un ordinogramme d'un procédé d'agrandissement selon l'invention, mis en œuvre par le dispositif de la figure 1.
[0043] Il est bien entendu que les modes de réalisation qui seront décrits dans la suite ne sont nullement limitatifs. On pourra notamment imaginer des variantes de l'invention ne comprenant qu'une sélection de caractéristiques décrites par la suite isolées des autres caractéristiques décrites, si cette sélection de caractéristiques est suffisante pour conférer un avantage technique ou pour différencier l'invention par rapport à l'état de la technique antérieure. Cette sélection comprend au moins une caractéristique de préférence fonctionnelle sans détails structurels, ou avec seulement une partie des détails structurels si c’est cette partie qui est uniquement suffisante pour conférer un avantage technique ou pour différencier l'invention par rapport à l'état de la technique antérieure.
[0044] En particulier toutes les variantes et tous les modes de réalisation décrits sont combinables entre eux si rien ne s'oppose à cette combinaison sur le plan technique.
[0045] Sur les figures et dans la suite de la description, les éléments communs à plusieurs figures conservent la même référence.
Description détaillée
[0046] Un dispositif 2 de traitement d'image (ou « dispositif de traitement ») selon l'invention est illustré par la figure 1.
[0047] Le dispositif de traitement 2 est configuré pour calculer une image restituée, déterminée à partir d'une image brute représentative d'une scène 3 et acquise par un module caméra 4, et d'une instruction d'agrandissement relative à une partie de l'image brute à agrandir. Une telle image restituée présente avantageusement une meilleure netteté et/ou une meilleure résolution et/ou moins de bruit que ladite partie de l'image brute simplement agrandie.
[0048] Le dispositif de traitement 2 et le module caméra 4 sont, par exemple, tous deux intégrés dans un même appareil électronique 6. Dans ce cas, le dispositif le dispositif de traitement 2 est relié au module caméra 4 pour recevoir, en entrée, chaque image brute acquise par le module caméra 4.
[0049] L'appareil électronique est, par exemple, un téléphone intelligent (« smartphone », en anglais), une tablette tactile, ou encore un appareil photo numérique. Alternativement, l'appareil électronique 6 est un dispositif de vidéosurveillance, un véhicule, un drone, un satellite, un appareil de microscopie, ou encore un dispositif d'imagerie médicale (tel qu'un dispositif d'imagerie par tomographie).
[0050] De préférence, l'appareil électronique 6 comprend également une interface utilisateur 8 pour la saisie, par un utilisateur, de l'instruction d'agrandissement mentionnée précédemment. Une telle instruction est représentative de la partie de l'image brute que l'utilisateur souhaite voir agrandie.
[0051] Par la suite, la partie de l'image brute que l'utilisateur souhaite voir agrandie sera désignée par l'expression « image d'entrée ».
[0052] De façon optionnelle, l'appareil électronique 6 comprend également un module 10 de mesure de distance, configuré pour délivrer une information de distance représentative de distances entre tout ou partie des objets de la
scène 3 et un capteur (décrit ultérieurement) du module caméra 4. Le module de mesure 10 est, en particulier, un télémètre, par exemple un télémètre optique.
Module caméra
[0053] Le module caméra 4 comporte au moins un ensemble comprenant un système optique 12 associé à un capteur 14.
[0054] En particulier, le capteur 14 comprend une matrice de photosites associée à une matrice de filtres colorés. Dans ce cas, chaque filtre coloré est agencé pour masquer une surface d'entrée d'un photosite respectif.
[0055] Le module caméra 4 est associé à une fonction de transfert optique entre la scène 3 et le capteur 14. Une telle fonction de transfert optique établit une relation entre les caractéristiques (spatiale et spectrale, notamment) de la lumière provenant de la scène 3 et les caractéristiques de la lumière parvenant au capteur 14, notamment du fait de l'influence du système optique 12.
[0056] Par exemple, la fonction de transfert optique du module caméra 4 est décrite au moyen d'une fonction d’étalement du point dudit module caméra 4.
[0057] La fonction de transfert optique est, par exemple, fonction de l'un au moins parmi :
- une distance entre le capteur 14 et un objet de la scène 3 imagé par le capteur 14 ;
- une distance entre le système optique 12 et le capteur 14 ;
- une distance entre le système optique 12 et un objet de la scène 3 imagé par le capteur 12 ;
- un état du système optique 12, tel qu'un réglage de zoom, de distance focale et/ou d'ouverture numérique ;
- le photosite considéré du capteur ; et
- un ou plusieurs angle(s) entre le capteur 14 et le système optique 12.
[0058] Le dispositif de traitement 2 est configuré pour mettre en œuvre un procédé de traitement 20 (figure 2) pour calculer l'image restituée à partir de l'image brute et de l'instruction d'agrandissement.
[0059] Un tel procédé de traitement 20 comprend une étape de réception 22, une étape d'initialisation 24, une boucle de traitement itérative 26 et une étape de restitution 28.
[0060] Le dispositif de traitement 2 est susceptible de se présenter sous une forme matérielle, tel qu'un ordinateur, un serveur, un processeur, une puce électronique, etc. Alternativement, ou de façon additionnelle, le dispositif de traitement 2 est susceptible de se présenter sous une forme logicielle tel qu'un programme d'ordinateur, ou une application, par exemple une application pour un appareil utilisateur de type tablette ou smartphone.
Etape de réception
[0061] Plus précisément, le dispositif de traitement 2 est configuré pour recevoir, au cours de l'étape de réception 22, l'image brute issue du module caméra 4. Alternativement, l'image brute est déjà stockée dans une mémoire du dispositif de traitement 2. En variante, l'image brute a été acquise par un autre appareil électronique, puis transmise au dispositif de traitement 2 pour son traitement.
[0062] En outre, le dispositif de traitement 2 est configuré pour recevoir, au cours de l'étape de réception 22, l'instruction d'agrandissement saisie à travers l'interface utilisateur 8.
[0063] Comme indiqué précédemment, l'instruction d'agrandissement est indicative de l'image d'entrée concernée par le traitement, c'est-à-dire la partie de l'image brute que l'utilisateur souhaite agrandir. Une telle image d'entrée est strictement plus petite que l'image brute dont elle est extraite.
[0064] Avantageusement, l'instruction d'agrandissement est également indicative d'une taille souhaitée de l'image restituée. Il s'agit, par exemple, de la taille d'une fenêtre où s'affichera l'image restituée, ou encore de la taille d'un fichier dans lequel sera stockée l'image restituée. Ceci est avantageux, dans la mesure où une telle indication conditionne le nombre de pixels de
l'image restituée, par exemple pour correspondre au nombre de pixels d'un écran sur lequel l'image restituée devra être affichée.
Etape d'initialisation
[0065] Le dispositif de traitement 2 est également configuré pour mettre en œuvre, au cours de l'étape d'initialisation 24, un calcul initial d'une image estimée. Ladite image estimée initialement calculée est destinée à être ensuite mise à jour itérativement par la mise en œuvre de la boucle de traitement itérative 26 (décrite ultérieurement).
[0066] Plus précisément, le dispositif de traitement 2 est configuré pour calculer l'image estimée initiale à partir de l'image d'entrée, par déconvolution de la fonction de transfert optique de l'image d'entrée.
[0067] Avantageusement, lors d'un tel calcul, l'information de distance issue du module de mesure 8 est prise en compte dans le choix de la fonction de transfert optique.
[0068] En particulier, pour chaque photosite du capteur 14, le dispositif de traitement 2 est configuré pour réaliser une déconvolution de la fonction de transfert optique pour la distance du point de la scène imagé par ledit photosite, obtenue à travers l'information de distance issue du module de mesure 10. Par exemple, dans l'exemple de la figure 1, la valeur de la fonction de transfert optique pour les photosites qui imagent l'arbre 30 à l'arrière-plan est susceptible de différer de sa valeur pour les photosites qui imagent le rongeur 32 au premier plan.
[0069] Ceci est avantageux dans la mesure où la mise en œuvre, pour chaque élément de la scène 3, d'une fonction de transfert optique représentative de sa distance au capteur conduit à une image estimée présentant une netteté améliorée sur plusieurs de plans de vue dans la même image. Ceci est particulièrement avantageux étant donné que les éléments en dehors du plan focal sont généralement flous, notamment lorsque la profondeur de champ est réduite.
[0070] De préférence, le dispositif de traitement 2 est configuré pour réaliser une déconvolution de la fonction de transfert optique correspondant à l'état courant du système optique 12 (zoom optique, ouverture numérique, etc.).
[0071] De préférence, pour calculer l'image estimée initiale, le dispositif de traitement 2 est configuré pour déterminer une transformée de Fourier de la fonction de transfert optique.
[0072] Dans le cas de la présente demande, les transformées de Fourier, ainsi que les transformées de Fourier inverses correspondantes, s'entendent au sens des fréquences spatiales, en particulier dans le plan de la matrice de photosites.
[0073] Le dispositif de traitement 2 est, en outre, configuré pour ensuite déterminer une fonction de transfert optique inverse fréquentielle.
[0074] Plus précisément, pour déterminer la fonction de transfert optique inverse fréquentielle, le dispositif de traitement 2 est configuré pour inverser chacun des coefficients de la transformée de Fourier précédemment déterminée.
[0075] De préférence, le dispositif de traitement 2 est également configuré pour modifier la valeur d'au moins une partie des inverses obtenus. En particulier, le dispositif de traitement 2 est configuré pour réduire la valeur des coefficients correspondant aux plus hautes fréquences, par exemple par la mise en œuvre d'un filtre de Wiener.
[0076] Le dispositif de traitement 2 est configuré pour mettre en œuvre soit un premier calcul, soit un deuxième calcul.
[0077] Plus précisément, le dispositif de traitement 2 est configuré pour, lors de la mise en œuvre du premier calcul :
- déterminer une image fréquentielle intermédiaire, égale au résultat d'une multiplication d'une transformée de Fourier de l'image d'entrée par la fonction de transfert optique inverse fréquentielle obtenue ; et
- calculer une transformée de Fourier inverse de l'image fréquentielle intermédiaire : le résultat d'un tel calcul forme l'image estimée initiale.
[0078] Par ailleurs, le dispositif de traitement 2 est configuré pour, lors de la mise en œuvre du deuxième calcul :
- déterminer une fonction de transfert optique inverse, égale à une transformée de Fourier inverse de la fonction de transfert optique inverse fréquentielle ; et
- convoluer l'image d'entrée avec la fonction de transfert optique inverse déterminée : le résultat d'un tel calcul forme l'image estimée initiale.
[0079] Un tel deuxième calcul, bien que conceptuellement plus simple, est généralement plus coûteux en ressources que le premier calcul, en particulier si la fonction de transfert optique est uniforme.
[0080] Avantageusement, pour tenir compte de l'étalement spatial du point optique (c'est-à-dire du point focal), l'image d'entrée est augmentée d'une bande de pixels voisins de l'image brute, lors du premier ou du deuxième calcul.
[0081] Selon un autre aspect avantageux, la taille de l'image estimée est fonction de la taille souhaitée incluse dans l'instruction d'agrandissement.
[0082] Comme indiqué précédemment, à l'issue de l'étape d'initialisation 24, l'image estimée initiale est obtenue.
Boucle de traitement itérative
[0083] En outre, le dispositif de traitement 2 est configuré pour mettre en œuvre, au cours de l'étape 26, une boucle de traitement itérative.
[0084] La boucle de traitement itérative comprend une phase de calcul d'une image simulée courante, une phase ultérieure de détermination d'une fonction de coût, et une phase de détermination de l'atteinte ou non d'un critère d'arrêt prédéterminé.
[0085] Plus précisément, lors d'une itération donnée de la boucle de traitement, le dispositif de traitement 2 est configuré pour d'abord calculer l'image simulée courante.
[0086] Plus précisément, le dispositif de traitement 2 est configuré pour calculer l'image simulée courante à partir de l'image estimée courante et de la fonction de transfert optique. En particulier, à la première itération de la boucle de traitement itérative, l'image estimée courante est l'image estimée initiale obtenue à l'issue de l'étape d'initialisation 24.
[0087] Par exemple, l'image simulée courante est égale à un résultat de la convolution de l'image estimée courante et de la fonction de transfert optique.
[0088] En outre, le dispositif de traitement 2 est configuré pour ensuite déterminer la fonction de coût E à partir d'au moins une parmi l'image simulée courante et l'image estimée courante.
[0089] De préférence, pour déterminer la fonction de coût E, le dispositif de traitement 2 est configuré pour :
- calculer un terme de différence D, à partir d'une comparaison entre l'image simulée courante et l'image d'entrée ; et/ou
- calculer un terme de pénalité P à partir de caractéristiques de l'image estimée courante.
[0090] De préférence, le terme de différence D dépend de différences entre les valeurs des pixels de l'image simulée courante et de l'image d'entrée.
[0091] Par « différence entre les valeurs des pixels de l'image simulée courante et de l'image d'entrée », il est entendu la différence, pour au moins un pixel de l'image d'entrée, entre la valeur dudit pixel et la valeur du pixel correspondant de l'image simulée courante.
[0092] Par exemple, le terme de différence D comprend une composante égale à la somme des carrés des écarts, pixel par pixel, entre l'image d'entrée et l'image simulée courante.
[0093] Alternativement, ou de façon additionnelle, le terme de différence D comprend une composante égale à la somme des valeurs absolues des différences, pixel par pixel, entre l'image d'entrée et l'image simulée courante.
[0094] Alternativement, ou de façon additionnelle, d'autres composantes sont également possibles, à condition que leur valeur diminue lorsque la différence, en valeur absolue, entre la valeur d'un pixel de l'image simulée courante et la valeur du pixel correspondant de l'image d'entrée diminue.
[0095] Par « valeur du pixel », il est entendu, au sens de la présente invention, les valeurs R, V, B, ou encore luminosité, teinte, saturation. De façon classique, la luminosité, la teinte et la saturation sont obtenues par une combinaison linéaire des composantes R, V, B.
[0096] De préférence, le terme de pénalité P comprend une composante d'intensité qui est une fonction croissante des variations d'intensité d'au moins un canal entre pixels voisins de l'image estimée. De cette façon, pour chaque canal parmi les canaux rouge, vert et bleu de l'image estimée, le terme de pénalité est d'autant plus grand que la valeur des sauts d'intensité entre un pixel et l'un des pixels voisins est grande.
[0097] Alternativement, ou de façon complémentaire, le terme de pénalité P comprend une composante de couleur qui est une fonction croissante des variations de teinte et/ou de saturation et/ou de luminosité entre pixels voisins de l'image estimée. De cette façon, le terme de pénalité est d'autant plus grand que la valeur des sauts de teinte et/ou de saturation et/ou de luminosité entre un pixel et l'un des pixels voisins est grande.
[0098] Alternativement, ou de façon complémentaire, le terme de pénalité P comprend une composante de régularité dont la valeur est d'autant plus faible que les contours des objets présents dans l'image sont réguliers, c'est- à-dire présent peu de changements de direction. Ceci est avantageux dans le cas où une densité de pixels requise pour l'image restituée est supérieure à celle du capteur. Par conséquent, une minimisation de la composante de régularité résulte en des contours des objets, sur l'image restituée, qui sont plus réguliers que les créneaux correspondants aux pixels du capteur qui auraient été obtenus à densité égale entre image restituée et image d'entrée.
[0099] Enfin, le dispositif de traitement 2 est configuré pour ensuite déterminer si le critère d'arrêt prédéterminé est atteint.
[0100] Un tel critère prédéterminé est, par exemple, l'atteinte d'un nombre prédéterminé d'itérations de la boucle de traitement itérative, ou encore une variation (absolue ou relative) de la fonction de coût, par rapport à l'itération précédente, inférieure à un seuil prédéterminé.
[0101] En outre, le dispositif de traitement 2 est configuré pour, lorsque le critère de sortie de la boucle n'est pas atteint, mettre à jour l'image estimée à partir de la fonction de coût E déterminée.
[0102] Avantageusement, le dispositif de traitement 2 est configuré pour mettre à jour l'image estimée de façon à minimiser la fonction de coût E. De cette façon, l'image estimée converge vers l'image qui aurait été acquise avec un système optique 12 permettant une focalisation de la lumière issue de chaque point de la scène 3 sur une zone de l'ordre des dimensions d'un photosite du capteur 14, voire plus petite.
[0103] Aussi, en particulier, du fait de la prise en compte de la distance dans la fonction de transfert optique, une netteté est progressivement atteinte aussi bien pour les objets proches (par exemple, le rongeur 32) que lointains (par exemple, l'arbre 30), situation dans laquelle la fonction de coût E est minimale.
[0104] Par exemple, le dispositif de traitement 2 est configuré pour calculer un gradient de la fonction de coût E en fonction de paramètres de l'image estimée. De tels paramètres sont, notamment, les paramètres dont dépendent le terme de différence D et/ou le terme de pénalité P.
[0105] Alternativement, ou de façon additionnelle, le dispositif de traitement 2 est configuré pour réaliser de tels calculs sur la base d'objets représentés sur l'image estimée, et non pas sur la base des pixels de l'image estimée. Dans ce cas, le dispositif de traitement 2 est configuré pour identifier de tels objets sur la base, par exemple, de la valeur de certaines propriétés R, V, B et/ou de variations, dans l'image, de ces propriétés (par exemple gradient spatial des valeurs R, V, B), et/ou sur la base de la position et/ou de la forme desdits objets. Dans ce cas, le dispositif de traitement 2 est, par exemple, configuré pour calculer le gradient de la fonction de coût E par rapport aux
paramètres de ces objets, plutôt que directement par rapport aux pixels qu'ils contiennent. Ceci présente potentiellement certains avantages, tels qu'une convergence plus rapide, ou encore une meilleure définition des contours des objets obtenus. À titre d'exemple illustratif, si la forme à restituer est un cercle, il peut être plus rapide et moins calculatoire de calculer la valeur de couleur du cercle, et de le déplacer et changer son diamètre. En outre, les contours des objets obtenus dans l'image peuvent être plus réguliers que leur représentation par des pixels
[0106] Dans ces deux cas, le dispositif de traitement 2 est configuré pour modifier l'image estimée par rapport au gradient calculé, en particulier dans un sens opposé au gradient calculé.
[0107] Alternativement, le dispositif de traitement 2 est configuré pour mettre à jour l’image estimée par une méthode de gradient de Newton ou une méthode de recuit, sur la base de la fonction de coût E calculée.
Etape de restitution
[0108] Enfin, le dispositif de traitement 2 est configuré pour, lorsque le critère d'arrêt est atteint, fournir, en sortie, une image restituée égale à l'image estimée courante, c'est-à-dire l'image estimée calculée lors de la dernière mise en œuvre de la boucle de traitement.
[0109] Par exemple, l'image restituée est affichée sur un écran, ou encore stockée dans une mémoire, en vue d'un affichage ou de traitements ou utilisations ultérieurs.
Fonctionnement
[0110] Le fonctionnement du dispositif de traitement 2 va maintenant être décrit en référence à la figure 2.
[0111] Au cours de l'étape de réception 22, le dispositif de traitement 2 reçoit l'image brute préalablement acquise par le module caméra 4, ainsi que l'instruction d'agrandissement saisie à travers l'interface utilisateur 8.
[0112] Puis, au cours de l'étape d'initialisation 24, le dispositif de traitement 2 met en œuvre le calcul initial de l'image estimée, en déconvoluant la fonction de transfert optique de l'image d'entrée.
[0113] Puis, au cours de l'étape 26, le dispositif de traitement 2 met en œuvre la boucle de traitement itérative.
[0114] Plus précisément, à chaque itération de la boucle de traitement, le dispositif de traitement 2 :
- calcule l'image simulée courante ;
- détermine la fonction de coût E ; et - met à jour l'image estimée, si le critère d'arrêt prédéterminé n'est pas atteint.
[0115] Enfin, lorsque le critère d'arrêt est atteint, le dispositif de traitement 2 fournit, en sortie, l'image restituée, égale à l'image estimée calculée lors de la dernière mise en œuvre de la boucle de traitement 26.
Claims
1. Procédé (20) de traitement d'une image brute issue d'un module caméra (4), l'image brute étant représentative d'une scène (3) acquise par un capteur (14) du module caméra (4) à travers un système optique (12) du module caméra (4), le module caméra (4) étant associé à une fonction de transfert optique entre la scène (3) et le capteur (14), le procédé étant mis en œuvre par ordinateur et comprenant les étapes :
- réception (20) d'une instruction d'agrandissement indicative d'une partie de l'image brute, strictement plus petite que l'image brute et formant une image d'entrée, à agrandir ;
- calcul initial (24) d'une image estimée, par déconvolution de la fonction de transfert optique de l'image d'entrée ;
- mise en œuvre itérative d'une boucle de traitement (26) comprenant :
• calcul d'une image simulée courante à partir de l'image estimée courante et de la fonction de transfert optique ;
• détermination d'une fonction de coût à partir d'au moins une parmi l'image simulée courante et l'image estimée courante ;
• si un critère d'arrêt prédéterminé est atteint, sortie de la boucle de traitement, sinon, mise à jour de l'image estimée à partir de la fonction de coût déterminée ;
- fourniture (28), en sortie, d'une image restituée égale à l'image estimée courante.
2. Procédé selon la revendication 1, dans lequel l'instruction d'agrandissement est également indicative d'une taille souhaitée de l'image restituée.
3. Procédé selon la revendication 1 ou 2, dans lequel la détermination de la fonction de coût comprend :
- le calcul d'un terme de différence à partir d'une comparaison entre l'image simulée courante et l'image d'entrée ; et/ou
le calcul d'un terme de pénalité à partir de caractéristiques de l'image estimée courante.
4. Procédé selon la revendication 3, dans lequel le terme de différence est fonction de différences entre les valeurs des pixels de l'image simulée courante et de l'image d'entrée.
5. Procédé selon la revendication 3 ou 4, dans lequel le terme de pénalité comprend au moins une parmi :
- une composante d'intensité qui est une fonction croissante des variations d'intensité d'au moins un canal entre pixels voisins de l'image estimée ; et/ou
- une composante de couleur qui est une fonction croissante des variations de teinte et/ou de saturation et/ou de luminosité entre pixels voisins de l'image estimée.
6. Procédé selon l'une quelconque des revendications 1 à 5, dans lequel la mise à jour de l'image estimée comprend une minimisation de la fonction de coût déterminée.
7. Procédé selon l'une quelconque des revendications 1 à 6, dans lequel l'étape de calcul initial de l'image estimée comprend :
- détermination d'une transformée de Fourier de la fonction de transfert optique ;
- détermination d'une fonction de transfert optique inverse fréquentielle par inversion des coefficients de la transformée de Fourier déterminée ;
- mise en œuvre :
• d'un premier calcul comportant : o détermination d'une image fréquentielle intermédiaire, égale au résultat d'une multiplication d'une transformée de Fourier de l'image d'entrée par la fonction de transfert optique inverse fréquentielle ; et
o calcul d'une transformée de Fourier inverse de l'image fréquentielle intermédiaire pour obtenir l'image estimée, ou • d'un deuxième calcul comportant : o détermination d'une fonction de transfert optique inverse égale à une transformée de Fourier inverse de la fonction de transfert optique inverse fréquentielle ; et o convolution de l'image d'entrée avec la fonction de transfert optique inverse déterminée pour obtenir l'image estimée.
8. Procédé selon l'une quelconque des revendications 1 à 7, comprenant, en outre, la réception d'une information de distance représentative de distances entre des objets (30, 32) de la scène et le capteur (14), la fonction de transfert optique mise en œuvre dans le calcul de l'image simulée courante dépendant de l'information de distance.
9. Procédé selon l'une quelconque des revendications 1 à 8, dans lequel le capteur (14) comprend une matrice de photosites associée à une matrice de filtres colorés, chaque filtre coloré masquant une surface d'entrée d'un photosite respectif.
10. Programme d'ordinateur comprenant des instructions exécutables qui, lorsqu'elles sont exécutées par ordinateur, mettent en en œuvre les étapes du procédé selon l'une quelconque des 1 à 9.
11. Dispositif (2) de traitement d'une image brute issue d'un module caméra (4), l'image brute étant représentative d'une scène acquise par un capteur (14) du module caméra (4) à travers un système optique (12) du module caméra (4), le module caméra (4) étant associé à une fonction de transfert optique entre la scène (3) et le capteur (14), le dispositif de traitement (2) étant configuré pour :
- recevoir une instruction d'agrandissement indicative d'une partie de l'image brute, strictement plus petite que l'image brute et formant une image d'entrée, à agrandir ;
- réaliser un calcul initial d'une image estimée, par déconvolution de la fonction de transfert optique de l'image d'entrée ;
- mettre en œuvre itérativement une boucle de traitement comprenant :
• calcul d'une image simulée courante à partir de l'image estimée courante et de la fonction de transfert optique ;
• détermination d'une fonction de coût à partir d'au moins une parmi l'image simulée courante et l'image estimée courante ;
• si un critère d'arrêt prédéterminé est atteint, sortie de la boucle de traitement, sinon, mise à jour de l'image estimée à partir de la fonction de coût déterminée ;
- fournir, en sortie, une image restituée égale à l'image estimée courante.
12. Appareil électronique (6) comprenant un dispositif de traitement (2) selon la revendication 11, une interface utilisateur (8) et un module caméra (4) configuré pour acquérir au moins une image brute, le dispositif de traitement (2) étant relié au module caméra (4) pour recevoir, en entrée, tout ou partie des images brutes acquises par le module caméra (4), et étant configuré pour traiter chaque image brute reçue à partir d'une instruction d'agrandissement reçue issue de l'interface utilisateur (8).
13. Appareil électronique (6) selon la revendication 12, l'appareil électronique (6) étant un téléphone mobile intelligent ou une tablette tactile.
14. Utilisation d'un procédé de traitement selon l'une quelconque des revendications 1 à 9, ou d'un dispositif de traitement (2) selon la revendication 11, dans un appareil électronique (6) selon la revendication 12 ou 13, pour traiter au moins une image brute acquise par le module caméra (4) de l'appareil électronique (6).
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/FR2023/050406 WO2024194544A1 (fr) | 2023-03-21 | 2023-03-21 | Procede de traitement d'une image brute, produit programme d'ordinateur et dispositif de traitement associes |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/FR2023/050406 WO2024194544A1 (fr) | 2023-03-21 | 2023-03-21 | Procede de traitement d'une image brute, produit programme d'ordinateur et dispositif de traitement associes |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024194544A1 true WO2024194544A1 (fr) | 2024-09-26 |
Family
ID=87070999
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/FR2023/050406 WO2024194544A1 (fr) | 2023-03-21 | 2023-03-21 | Procede de traitement d'une image brute, produit programme d'ordinateur et dispositif de traitement associes |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2024194544A1 (fr) |
-
2023
- 2023-03-21 WO PCT/FR2023/050406 patent/WO2024194544A1/fr unknown
Non-Patent Citations (2)
Title |
---|
BARDSLEY JOHN ET AL: "BLIND ITERATIVE RESTORATION OF IMAGES WITH SPATIALLY-VARYING BLUR", 2005 AMOS TECHNICAL CONFERENCE (ADVANCED MAUI OPTICAL AND OPTICAL AND SPACE SURVEILLANCE TECHNOLOGIES CONFERENCE), 1 January 2005 (2005-01-01), pages 1 - 9, XP093087820, Retrieved from the Internet <URL:https://www.researchgate.net/publication/240428158_Blind_iterative_restoration_of_images_with_spatially_-_varying_blur> [retrieved on 20231002] * |
VANKAWALA FAGUN ET AL: "A Survey on different Image Deblurring Techniques", INTERNATIONAL JOURNAL OF COMPUTER APPLICATIONS, vol. 116, no. 13, 13 April 2015 (2015-04-13), pages 1 - 4, XP093087929, Retrieved from the Internet <URL:https://citeseerx.ist.psu.edu/document?repid=rep1&type=pdf&doi=04f5736bf290bc0255304378637d86896725975f> * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1523730B1 (fr) | Procede et systeme pour calculer une image transformee a partir d'une image numerique | |
CA2834883C (fr) | Procede pour commander une action, notamment une modification de nettete, a partir d'une image numerique en couleurs | |
US8395696B2 (en) | Imaging arrangements and methods therefor | |
EP2465255B1 (fr) | Système et procédé de capture d'images avec deux modes de fonctionnement | |
EP2174289B1 (fr) | Procede de traitement d'objet numerique et systeme associe. | |
EP3657784B1 (fr) | Procédé d'estimation d'un défaut d'un système de capture d'images et systèmes associés | |
KR20190089922A (ko) | 광학 시스템 수차들의 디지털 보정 | |
EP3114831B1 (fr) | Débruitage vidéo optimisé pour système multicapteur hétérogène | |
FR3060180A1 (fr) | Procede de traitement d’image numerique | |
FR2831753A1 (fr) | Procede d'adaptation de contraste de plusieurs images sur une image de reference commune | |
FR2899696A1 (fr) | Procede de traitement d'un phenomene d'eclairement relatif sur une image numerique et systeme de traitement associe | |
EP3301644B1 (fr) | Procédé de construction d'une carte de profondeur d'une scène et/ou d'une image entièrement focalisée | |
WO2024194544A1 (fr) | Procede de traitement d'une image brute, produit programme d'ordinateur et dispositif de traitement associes | |
FR3078427A1 (fr) | Detection dynamique de lumiere parasite dans une image numerique | |
WO2023218072A1 (fr) | Procédé de correction globale d' une image, et système associe | |
WO2024194541A1 (fr) | Procede de correction d'images, au sein d'un appareil utilisateur | |
WO2024194540A1 (fr) | Procede de correction d'images | |
FR3143162A1 (fr) | Procédé et dispositif de dématriçage | |
FR3136926A1 (fr) | Appareil photo couleur et monochrome |